Тесты e2e не выполняются в Docker, но проходят локально - PullRequest
1 голос
/ 03 мая 2019

Я пытаюсь запустить свои тесты e2e в образе докера с помощью круга ci.

Из 7 тестов 6 не пройдены и 1 тест пройден. Но когда я запускаю их локально, все тесты проходят.

Это ошибка, которую я получаю

✗ Should Display Dashboard Header and Loan Information
      - Failed: No element found using locator: By(css selector, h3[class="sprk-b-TypeDisplayFour sprk-o-Stack__item sprk-u-Color--white"])
          at elementArrayFinder.getWebElements.then (/home/circleci/project/node_modules/protractor/built/element.js:814:27)
          at ManagedPromise.invokeCallback_ (/home/circleci/project/node_modules/selenium-webdriver/lib/promise.js:1376:14)
          at TaskQueue.execute_ (/home/circleci/project/node_modules/selenium-webdriver/lib/promise.js:3084:14)
          at TaskQueue.executeNext_ (/home/circleci/project/node_modules/selenium-webdriver/lib/promise.js:3067:27)
          at asyncRun (/home/circleci/project/node_modules/selenium-webdriver/lib/promise.js:2927:27)
          at /home/circleci/project/node_modules/selenium-webdriver/lib/promise.js:668:7
          at <anonymous>
          at process._tickCallback (internal/process/next_tick.js:189:7)Error
          at ElementArrayFinder.applyAction_ (/home/circleci/project/node_modules/protractor/built/element.js:459:27)
          at ElementArrayFinder.(anonymous function).args [as getText] (/home/circleci/project/node_modules/protractor/built/element.js:91:29)
          at ElementFinder.(anonymous function).args [as getText] (/home/circleci/project/node_modules/protractor/built/element.js:831:22)
          at Dashboard.getDashboardHeaderText (/home/circleci/project/e2e/app/loan/dashboard/dashboard.po.ts:47:41)
          at Object.<anonymous> (/home/circleci/project/e2e/app/loan/dashboard/dashboard.e2e-spec.ts:18:30)
          at step (/home/circleci/project/node_modules/tslib/tslib.js:133:27)
          at Object.next (/home/circleci/project/node_modules/tslib/tslib.js:114:57)
          at /home/circleci/project/node_modules/tslib/tslib.js:107:75
          at new Promise (<anonymous>)
          at Object.__awaiter (/home/circleci/project/node_modules/tslib/tslib.js:103:16)
      From: Task: Run it("Should Display Dashboard Header and Loan Information") in control flow
          at UserContext.<anonymous> (/home/circleci/project/node_modules/jasminewd2/index.js:94:19)
          at 

все остальные тесты также не выполняются с тем же элементом ошибки, который не найден.

enter image description here

1 Ответ

0 голосов
/ 03 мая 2019

Возможно, ваши тесты выполняются, пока контейнеры не готовы.Чистое решение состоит в том, чтобы внедрить команду HEALTHCHECK в вашем образе и дождаться исправного состояния перед выполнением ваших тестов.Более простое решение - запустить контейнеры, поспать (должно хватить нескольких секунд), а затем выполнить тесты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...