angular / protractor

E2E test framework for Angular apps
http://www.protractortest.org
MIT License
8.75k stars 2.31k forks source link

Failed: java.io.FileNotFoundException exception on running test on safari #4545

Open no5419595 opened 6 years ago

no5419595 commented 6 years ago

My protractor configuration file has browser capability like this :

 multiCapabilities: [
    {
      'browserName': 'safari'
    }]
[safari #51]     Failed: java.io.FileNotFoundException: http://localhost:29917/session/658663C8-1A53-44CE-804E-F6A17E4675AB/element/node-CA121C93-F696-41AA-903C-270872F8F920/displayed
[safari #51]   Stack:
[safari #51]     WebDriverError: java.io.FileNotFoundException: http://localhost:29917/session/658663C8-1A53-44CE-804E-F6A17E4675AB/element/node-CA121C93-F696-41AA-903C-270872F8F920/displayed
[safari #51]         at WebDriverError (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/error.js:27:5)
[safari #51]         at Object.checkLegacyResponse (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/error.js:505:15)
[safari #51]         at parseHttpResponse (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/http.js:509:13)
[safari #51]         at doSend.then.response (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/http.js:440:13)
[safari #51]         at process._tickCallback (internal/process/next_tick.js:109:7)
[safari #51]     From: Task: WebElement.isDisplayed()
[safari #51]         at WebDriver.schedule (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver.js:816:17)
[safari #51]         at WebElement.schedule_ (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver.js:1921:25)
[safari #51]         at WebElement.isDisplayed (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver.js:2270:17)
[safari #51]         at actionFn (/usr/local/lib/node_modules/protractor/lib/element.ts:94:34)
[safari #51]         at Array.map (native)
[safari #51]         at actionResults.getWebElements.then (/usr/local/lib/node_modules/protractor/lib/element.ts:484:67)
[safari #51]         at ManagedPromise.invokeCallback_ (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:1366:14)
[safari #51]         at TaskQueue.execute_ (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2970:14)
[safari #51]         at TaskQueue.executeNext_ (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2953:27)
[safari #51]         at asyncRun (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2813:27)Error
[safari #51]         at ElementArrayFinder.applyAction_ (/usr/local/lib/node_modules/protractor/lib/element.ts:482:23)
[safari #51]         at ElementArrayFinder.(anonymous function) [as isDisplayed] (/usr/local/lib/node_modules/protractor/lib/element.ts:96:21)
[safari #51]         at ElementFinder.(anonymous function) [as isDisplayed] (/usr/local/lib/node_modules/protractor/lib/element.ts:873:14)
....

The problematic part of the spec file is the following:

      banner.button1.isDisplayed().then(function(result) {
          if ( result ) {
            banner.button1.click();
          }
      });

Is there a way I can workaround this problem or solve this?

wswebcreation commented 6 years ago

Hi @no5419595

Which version of Safari are you using? When I look at the error and you explanation it more looks like a Safari Webdriver error instead of a problem with Protractor. Have you also tried the Safari Webdriver page?