Изпълнението на тестове на UIAutomation от командния ред изглежда се поврежда често с новите версии на Xcode (съдейки по минали публикации). Тъй като никога не съм използвал скриптове от командния ред за това, намерих тази публикация от 2012 г.: Инструмент за автоматизация от командния ред.
Проблемът: Командата ми се връща без грешка, без изходни резултати и без нищо регистрирано в системната конзола. Симулаторът дори не се стартира!
Проверявайки някои от пътищата за актуализации (по-специално пътя на инструмента за проследяване на автоматизацията), измислих тази команда. Обърнете внимание на пътя в първия параметър (различен е от предишните версии на Xcode):
instruments -t "/Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns/AutomationInstrument.xrplugin/Contents/Resources/Automation.tracetemplate"
"/Users/sohail/Library/Developer/CoreSimulator/Devices/7232A640-A9D2-4626-A2AD-37AFFF706718/data/Containers/Bundle/Application/D07FEC4B-76AD-4844-8362-08E771B81053/MyAppName.app"
-e UIASCRIPT "/Users/sohail/source/MyAppName/MyAppNameAutomationTests/TestRunner.js"
-e UIARESULTSPATH "Users/sohail/source/MyAppName/MyAppNameAutomationTests/TestResults"
Това може да бъде по-лесно за четене, като изберете „суров“ от тази основна информация.
Разбира се:
- Потвърдих, че указаният път към моето .app действително съществува; възникна след успешно изграждане и изпълнение.
- Потвърдих това в моята посочена изходна папка („TestResults“), че всъщност нищо не е регистрирано.
- Потвърдих, че гореспоменатият
TestRunner.js
файл, който посочих, може да бъде намерен на посочения път и успешно се изпълнява в Инструмента за автоматизация интерактивно с приложението Инструменти. - Проверих Xcode6/iOS8 на Apple документация за предварителна версия (изисква се влизане; вижте заглавието на раздела „Изпълнение на скрипт на инструмент за автоматизация от командния ред“) и нищо не ми изскача като грешно, тъй като просто насочвам към симулатора.
- Липсва ми някакъв флаг или превключвател някъде.
Мисли ли някой?