Тестирование приложения Nativescript устанавливает старую версию - PullRequest
2 голосов
/ 28 апреля 2020

Я занимаюсь разработкой мобильного приложения с использованием nativescript + angular и тестирую его с помощью Appium. Когда я запускаю appium end to end тесты следующей командой, она загружает предыдущую сборку моего приложения.

tns build android
npm run e2e -- --runType device.samsung

Если я запускаю приложение в эмуляторе с помощью следующей команды, я получаю последние изменения

tns run android

После запуска моего e2e приложение возвращается в старое состояние.

Я попытался удалить приложение из эмулятора, затем запустить e2e, но не удалось, так как приложение не установлено , После удаления приложения я обнаружил, что должен использовать команду 'tns run android', чтобы переустановить приложение на устройстве.

Обновление: проверка установки

Я проверил мои настройки, следуя инструкциям

Я проверил мои appium.capabilities. json file

"device.samsung": {
    "platformName": "Android",
    "platformVersion": "7.0",
    "deviceName": "samsung_galaxy_s8",
    "avd": "samsung_galaxy_s8",
    "lt": 60000,
    "newCommandTimeout": 720,
    "noReset": true,
    "fullReset": false,
    "app": ""
},

Обновление: попробуйте отключить devMode

При выполнении моих сквозных тестов он говорит, что devMode включен, но когда я пытаюсь выключить его, он все еще говорит, что он включен.

npm run e2e -- --devMode=false --runType device.samsung

Обновление: noReset, похоже, проблема

Проблема в том, что мы хотим использовать noReset, так как пытаемся проверить возможность автоматического входа в систему Запомнить меня, и это требует сохранения информации для приложения. Если это сбрасывается, то это не работает и не может быть проверено. Если для 'noReset' установлено значение true, то наши тесты работают, но приложение не обновляется при запуске e2e, оно также не использует запущенную версию.

Обновление: полный подробный вывод

Полный подробный вывод при запуске сквозных тестов https://gist.github.com/map7/9de70cb330d8864c58787a251d5ea128

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

1 Ответ

0 голосов
/ 05 мая 2020

Попробуйте запустить проект root:

rm -rf node_modules/ package-lock.json platforms/ hooks/
npm install

Это очистит весь кэш проекта.

Наконец, запустите снова

tns build android
npm run e2e -- --runType device.samsung
...