Ложка и эспрессо - Успешная сборка. Вот и все?

Я запускаю тест Espresso через Spoon. Часто я получаю build successful, а тесты не выполняются. Я предполагаю, что причина в том, что в код рассматриваемого приложения не было внесено никаких изменений. Я понимаю, почему они это сделали — зачем тестировать приложение, которое только что выполнило тот же тест и прошло его? Однако моя ситуация отличается; тестирование приложения — это не моя основная задача, а проверка того, что приложение контролирует.

Мой вопрос: мой тест будет выполняться в непрерывном цикле, и приложение не будет изменено или изменено. Так есть ли способ обойти это?


person Chad Bingham    schedule 03.02.2014    source источник


Ответы (2)


Я предполагаю, что причина в том, что в код рассматриваемого приложения не было внесено никаких изменений.

Это неправда. Вы можете запускать один и тот же тест тысячи раз с Espresso, не меняя ни строчки кода.

Убедитесь, что вы используете его правильно:

java -jar spoon-runner-1.1.0-jar-with-dependencies.jar \
    --apk example-app.apk \
    --test-apk example-tests.apk

Также имейте в виду, что устройства, на которых запущен тест, должны быть видны в adb (запустите adb devices для проверки).

person Androiderson    schedule 08.02.2014
comment
Вы не приняли во внимание набор тестов с ложкой. - person Chad Bingham; 08.02.2014

С помощью Spoon тест не будет выполняться дважды, если первый тест пройден. Это потому, что он считает, что если он снова запустит тест, он пройдет, и для этого нет причин. Плохой дизайн со стороны Square, если вы спросите меня.

Решение: gradle clean spoon. clean восстановит файлы res (среди прочего) и заставит ложку поверить, что это, по сути, другой тест. Из-за этого выполнение тестов занимает больше времени, чем должно. Но это работает.

person Chad Bingham    schedule 09.02.2014