У меня есть набор автоматизированных тестовых примеров, созданных в инструментах, использующих tuneup.js для тестирования приложения. Я решил использовать tuneup.js, поскольку он позволял мне отделять мои тесты в отдельных тестовых случаях и запускать весь набор из одного индивидуального скрипта, это отлично работает, если все тесты работают нормально, однако если один из них не работает, все тесты терпят неудачу, поскольку симулятор остается в неизвестном состоянии (я написал свои тесты, чтобы все они начинались и заканчивались на одном экране входа в систему) Есть ли способ сбросить симулятор или перезапустить приложение между тестовыми примерами?Сброс iOS-симулятора между тестами
ответ
Попробуйте запустить тесты из командной строки. Автоматизация пользовательского интерфейса позволяет выполнить только один тест за один проход. После того, как тест будет завершен (не имеет значения, если он был провален или прошел), приложение будет выбито системой (UIAutomation). По крайней мере, он работает с реальными устройствами.
Ваш сценарий запуска командной строки будет работать следующим образом: 1. Считывает файл конфигурации (может быть любым файлом txt или xml) с указанием пути к вашим тестам. На этом этапе у вас будет массив с контуром к вашим тестам и общим количеством тестов. 2. Затем, используя простой цикл «for» (от 1 до «testcount»), он запустит UIAutomation с требуемыми параметрами. Одним из параметров будет путь к вашему тестовому скрипту, который был прочитан из файла конфигурации.
Вы также можете поместить путь к «файлу конфигурации» в качестве параметра для сценария запуска командной строки. Это позволит вам запускать любой тестовый набор, просто вызывая сценарий запуска с требуемым конфигурационным файлом.
Я написал сценарий, который сбросит содержимое & настроек всех версий и устройств для iOS Simulator. Он захватывает имена устройств и номера версий из меню, поэтому он будет включать в себя любые новые устройства или версии iOS, для которых Apple выпускает симуляторы.
Его легко запустить вручную или использовать в скрипте сборки. Я хотел бы предложить добавить его в качестве предварительного скрипта запуска перед сборкой.
Потерпев неудачу испытания оставить ваше приложение в неизвестном состоянии является одной из основных проблем, с помощью инструмента инструментов Apple, как есть. Мы решили это в рамках под названием Illuminator (on GitHub, and inspired by tuneup.js) двумя способами.
Во-первых, мы написали automation bridge - канал для RPC с тестируемым приложением, которое позволяет нам сбрасывать наше приложение перед каждым тестом.
В тех случаях, когда этого недостаточно, испытательный бегун иллюминатора имеет возможность повторно запускать каждый неудавшийся тест в своем собственном первоначальном запуске симулятора (например, с --retest 1x,solo
).
- 1. Обмен данными между тестами
- 2. данные django между тестами
- 3. Как сбросить между тестами
- 4. reset react.js между тестами
- 5. Передача данных JUnit между тестами
- 6. Автоматически удалять MEDIA_ROOT между тестами
- 7. Поделитесь ресурсом между мокковыми тестами
- 8. Geb: Ожидание/сон между тестами
- 9. Витая проверка зависает между тестами
- 10. Значения пропусков между тестами TestNG
- 11. Страница PHPUnit Selenium между тестами
- 12. В чем разница между модульными тестами и обычными тестами?
- 13. как сбросить модуль requirejs между модульными тестами
- 14. Очищенный общий кэш между интеграционными тестами
- 15. Rspec - включение/отключение класса макро между тестами
- 16. MyClass остается посмеянным между двумя тестами
- 17. Персистская переменная изменяется между тестами в unittest?
- 18. разница между тестами файлов в Bash
- 19. JMockit MockUp, сохраняющийся между тестами Spock
- 20. JPA - Как урезать таблицы между модульными тестами
- 21. Unit-тестирование с зависимостями между тестами
- 22. Как обмениваться документами между тестами в PHPUnit
- 23. Состояние объекта, протекающего между тестами Mocha
- 24. Персистент DB между тестами в Codeception
- 25. Как сбросить службы между тестами в AngularJS
- 26. Хранить куки между тестами nightwatch selenium
- 27. CppUtest разделяемые ресурсы между тестами, неопределенная ссылка
- 28. Selenium Тесты очень медленные между отдельными тестами
- 29. Откат многих транзакций между тестами в Flask
- 30. Appium: Храните сеанс активным между тестами
Не могли бы вы найти решение? –
Нет, к сожалению, нет, все еще смотря, но на самом деле не надеялся найти решение - задал вопрос Apple прямо, так что обновится, если я получу ответ – ChrisH
Получил ответ от Apple? – RaffAl