2017-05-15 8 views
0

Ich habe versucht, läuft Selen Test (Node Js) auf der Maschine Docker, aber es sagt "TypeError: module.exports.browser.isElementPresent is not a function".Selen Testausführung in Docker mit UI

Hinweis:

  • ich diesen gleichen Selen Test auf meinem lokalen Rechner erfolgreich ausgeführt werden kann
  • ich auf Docker den gleichen Test versucht, läuft dann ich oben
  • den Fehler aufgetreten

[email protected]:/usr/src# npm run kongaezv2 
npm info it worked if it ends with ok 
npm info using [email protected] 
npm info using [email protected] 
npm info lifecycle [email protected]~prekongaezv2: [email protected] 
npm info lifecycle [email protected]~kongaezv2: [email protected] 

> [email protected] kongaezv2 /usr/src 
> mocha --recursive tests/kongaezv2 -t 9000000 --reporter mochawesome 

execFile: tests/kongaezv2 
execFilename: tests/kongaezv2.json 


    Konga EZ V2 Sanity Test 
validating pagetitle 
title = Konga Ez | Home 
Title = Konga Ez | Home 
Validation == PASS :: Page :Konga Ez | Home is displayed successfully 
    1) Log in with Email and Password 
ready to close browser 
validating pagetitle 
title = Konga Ez | Home 
Title = Konga Ez | Home 
Validation == PASS :: Page :Konga Ez | Home is displayed successfully 
    2) Serach for an item 
ready to close browser 
validating pagetitle 
title = Konga Ez | Home 
Title = Konga Ez | Home 
Validation == PASS :: Page :Konga Ez | Home is displayed successfully 
    3) Add an item to cart 
ready to close browser 
validating pagetitle 
title = Konga Ez | Home 
Title = Konga Ez | Home 
Validation == PASS :: Page :Konga Ez | Home is displayed successfully 
    4) Checkout with POD 
ready to close browser 


    0 passing (48s) 
    4 failing 

    1) Konga EZ V2 Sanity Test Log in with Email and Password: 
    TypeError: module.exports.browser.isElementPresent is not a function 
     at Object.elementpresent (helpers.js:25:47) 
     at Object.validateelementpresent (validations.js:57:13) 
     at Object.clickbutton (actions.js:74:13) 
     at frameworks/kongaezv2.js:67:19 
     at node_modules/async/dist/async.js:3830:24 
     at replenish (node_modules/async/dist/async.js:946:17) 
     at node_modules/async/dist/async.js:950:9 
     at eachOfLimit (node_modules/async/dist/async.js:975:24) 
     at node_modules/async/dist/async.js:980:16 
     at _parallel (node_modules/async/dist/async.js:3829:5) 
     at Object.series (node_modules/async/dist/async.js:4684:5) 
     at Object.login_with_email (frameworks/kongaezv2.js:65:15) 
     at Context.<anonymous> (tests/kongaezv2/kongaezv2.js:20:19) 
     at runTest (node_modules/selenium-webdriver/testing/index.js:164:22) 
     at node_modules/selenium-webdriver/testing/index.js:185:16 
     at new ManagedPromise (node_modules/selenium-webdriver/lib/promise.js:1085 
:7) 
     at controlFlowExecute (node_modules/selenium-webdriver/testing/index.js:18 
4:14) 
     at TaskQueue.execute_ (node_modules/selenium-webdriver/lib/promise.js:3092 
:14) 
     at TaskQueue.executeNext_ (node_modules/selenium-webdriver/lib/promise.js: 
3075:27) 
     at asyncRun (node_modules/selenium-webdriver/lib/promise.js:2982:25) 
     at node_modules/selenium-webdriver/lib/promise.js:676:7 
     at process._tickCallback (internal/process/next_tick.js:103:7) 
    From: Task: Konga EZ V2 Sanity Test Log in with Email and Password 
     at Context.ret (node_modules/selenium-webdriver/testing/index.js:183:10) 
     at node_modules/selenium-webdriver/testing/index.js:102:5 
     at ManagedPromise.invokeCallback_ (node_modules/selenium-webdriver/lib/pro 
mise.js:1384:14) 
     at TaskQueue.execute_ (node_modules/selenium-webdriver/lib/promise.js:3092 
:14) 
     at TaskQueue.executeNext_ (node_modules/selenium-webdriver/lib/promise.js: 
3075:27) 
     at asyncRun (node_modules/selenium-webdriver/lib/promise.js:2935:27) 
     at node_modules/selenium-webdriver/lib/promise.js:676:7 
     at process._tickCallback (internal/process/next_tick.js:103:7) 

    2) Konga EZ V2 Sanity Test Serach for an item: 
    TypeError: module.exports.browser.isElementPresent is not a function 
     at Object.elementpresent (helpers.js:25:47) 
     at Object.validateelementpresent (validations.js:57:13) 
     at Object.sendkeys (actions.js:116:13) 
     at frameworks/kongaezv2.js:104:19 
     at node_modules/async/dist/async.js:3830:24 
     at replenish (node_modules/async/dist/async.js:946:17) 
     at node_modules/async/dist/async.js:950:9 
     at eachOfLimit (node_modules/async/dist/async.js:975:24) 
     at node_modules/async/dist/async.js:980:16 
     at _parallel (node_modules/async/dist/async.js:3829:5) 
     at Object.series (node_modules/async/dist/async.js:4684:5) 
     at Object.search (frameworks/kongaezv2.js:98:15) 
+0

Haben Sie installieren virtuelle Anzeige für Docker-Container mit Selen Tests installieren sollte? –

+0

Nicht sicher, aber was ich getan habe, war die Installation von Chrome mit meiner Docker-Datei ## Installieren Sie Google Chrome # RUN cd/tmp && \ # wget https://dl.google.com/linux/direct/google-chrome -stable_current_amd64.deb && \ # dpkg -i google-chrome-stable_current_amd64.deb && \ # apt-get -y -f install RUN \ wget -q -O - https://dl-ssl.google .com/linux/linux_signing_key.pub | apt-key add - && \ echo "deb http://dl.google.com/linux/chrome/deb/ stabil main"> /etc/apt/sources.list.d/google.list && \ apt- Aktualisiere && \ apt-get install -y google-chrome-stable && \ rm -rf/var/lib/apt/lists/* – TobyFagboh

+0

Du solltest etwas installieren wie [Xvfb] (https: //en.wikipedia. org/wiki/Xvfb). Dann starte es und danach. Mehr Infos [hier] (http://stackoverflow.com/questions/6183276/how-do-i-run-selenium-in-xvfb) Das ist aber nur für Fall, wenn Sie nicht die tatsächlichen UI sehen wollen. –

Antwort

0

Sie verfügbar Xvfb weitere Informationen hier here

Verwandte Themen