Uruchamianie testów e2e na Sauce Labs od Protractor na Travisie
Więc mam swój projekt open source (https://github.com/ahmednuaman/radian) i mam kilka testów e2e, które działają dobrze lokalnieKątomierz.
ŚledziłemDokumenty Sauce Labs i ustaw moje.travis.yml
odpowiednio. Testy przebiegają do punktu, w którym Kątomierz próbuje połączyć się z serwerem selenu w Sauce Labs, jest to krótki obraz błędu:
Running "exec:e2e" (exec) task
Using the selenium server at ahmednuaman-radian:06dd4e07-0f52-4fdf-be5e-389f2117bbf5@localhost:4445
>>
>> timers.js:103
>> if (!process.listeners('uncaughtException').length) throw e;
>> ^
>> TypeError: Cannot read property 'length' of undefined
>> at HttpClient.send (/home/travis/.nvm/v0.8.26/lib/node_modules/protractor/node_modules/selenium-webdriver/http/index.js:62:16)
Oto pełny dziennik pracy:https://travis-ci.org/ahmednuaman/radian/jobs/16250460
Następną rzeczą, którą zrobiłem, było naśladowanie tego lokalnie. CzytamSauce Labs Połącz dokumenty i ostatecznie uruchomiłem to w moim terminalu:
java -jar ~/bin/Sauce-Connect.jar USERNAME PASSWORD
Wszystko zaczęło się dobrze,dokładnie tak samo jak w Travisie ale jak ja wtedy prowadziłemgrunt e2e
zadanie (po aktualizacjiprotractor.conf.coffee
aby dopasować lokalnie konfigurację Travisa i otrzymał ten sam błąd, co Travis, oto migawka:
Running "exec:e2e" (exec) task
Using the selenium server at ahmednuaman-radian:06dd4e07-0f52-4fdf-be5e-389f2117bbf5@localhost:4445
>>
>> /Users/ahmed/bin/node/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:1542
>> throw error;
>> ^
>> TypeError: Cannot read property 'length' of null
>> at HttpClient.send (/Users/ahmed/bin/node/lib/node_modules/protractor/node_modules/selenium-webdriver/http/index.js:62:16)
Miałem google, ale nie mogłem znaleźć nikogo innego z tym problemem. Czy to moja konfiguracja? Czy jest to kwestia kątomierza / webdrivera? Chcesz rzucić na to jakieś światło?