User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:85.0) Gecko/20100101 Firefox/85.0
Steps to reproduce:
When running the following test with geckodriver it fails with the "error":"no such window","message":"Browsing context has been discarded" message:
describe('Upload', () => {
it('Test', () => {
browser.execute(function setBody(): void {
document.documentElement.innerHTML = '<html><body><iframe src="https://mozilla.com/"></iframe></body></html>';
browser.switchToFrame($('iframe'));
// browser.pause(300); // if this is uncommented then everything works
$('#content').click(); // otherwise it fails here
Reproduction repository:
https://github.com/RafalSkorka/bug1677975
error log:
1612508368692 webdriver::server DEBUG -> POST /session/0145e224-841a-40ad-a87e-bb0f5236d4ec/execute/sync {"script":"return (function setBody() {\n document.documentElement.innerHTML = '<html><body><iframe src=\"https://mozilla.com/\"></iframe></body></html>';\n }).apply(null, arguments)","args":[]}
1612508368694 Marionette DEBUG 0 -> [0,2,"WebDriver:ExecuteScript",{"args":[],"script":"return (function setBody() {\n document.documentElement.innerHTML = '<html><body><iframe src=\"https://mozilla.com/\"></iframe></body></html>';\n }).apply(null, arguments)"}]
1612508368695 Marionette TRACE [15] MarionetteCommands actor created for window id 2147483649
1612508368699 Marionette DEBUG 0 <- [1,2,null,{"value":null}]
1612508368692 webdriver::server DEBUG <- 200 OK {"value":null}
1612508368692 webdriver::server DEBUG -> POST /session/0145e224-841a-40ad-a87e-bb0f5236d4ec/element {"using":"css selector","value":"iframe"}
1612508368704 Marionette DEBUG 0 -> [0,3,"WebDriver:FindElement",{"using":"css selector","value":"iframe"}]
1612508368708 Marionette DEBUG 0 <- [1,3,null,{"value":{"element-6066-11e4-a52e-4f735466cecf":"09020d9b-7e6a-4f59-b3f4-f5524b4149ef"}}]
1612508368708 webdriver::server DEBUG <- 200 OK {"value":{"element-6066-11e4-a52e-4f735466cecf":"09020d9b-7e6a-4f59-b3f4-f5524b4149ef"}}
1612508368708 webdriver::server DEBUG -> POST /session/0145e224-841a-40ad-a87e-bb0f5236d4ec/frame {"id":{"sessionId":"0145e224-841a-40ad-a87e-bb0f5236d4ec","elementId":"09020d9b-7e6a-4f59-b3f4-f5524b4149ef","element-6066-11e4-a52e-4f735466cecf":"09020d9b-7e6a-4f59-b3f4-f5524b4149ef","selector":"iframe","parent":{"sessionId":"0145e224-841a-40ad-a87e-bb0f5236d4ec","capabilities":{"acceptInsecureCerts":false,"browserName":"firefox","browserVersion":"85.0","moz:accessibilityChecks":false,"moz:buildID":"20210118153634","moz:geckodriverVersion":"0.29.0","moz:headless":true,"moz:processID":15896,"moz:profile":"C:\\PATH\\rust_mozprofileUfLd2y","moz:shutdownTimeout":60000,"moz:useNonSpecCompliantPointerOrigin":false,"moz:webdriverClick":true,"pageLoadStrategy":"normal","platformName":"windows","platformVersion":"10.0","rotatable":false,"setWindowRect":true,"strictFileInteractability":false,"timeouts":{"implicit":0,"pageLoad":300000,"script":30000},"unhandledPromptBehavior":"dismiss and notify"},"config":{"specs":["./test/specs/**/*.js"],"suites":{},"exclude":[],"outputDir":".","logLevel":"trace","logLevels":{},"excludeDriverLogs":[],"bail":0,"waitforInterval":500,"waitforTimeout":5000,"framework":"mocha","reporters":[],"services":[],"maxInstances":100,"maxInstancesPerCapability":100,"filesToWatch":[],"connectionRetryTimeout":120000,"connectionRetryCount":3,"execArgv":[],"runnerEnv":{},"runner":"local","mochaOpts":{"timeout":60000,"ui":"bdd"},"jasmineNodeOpts":{"defaultTimeoutInterval":10000},"cucumberOpts":{"timeout":10000},"onPrepare":[],"onWorkerStart":[],"before":[],"beforeSession":[],"beforeSuite":[],"beforeHook":[],"beforeTest":[],"beforeCommand":[],"afterCommand":[],"afterTest":[],"afterHook":[],"afterSuite":[],"afterSession":[],"after":[],"onComplete":[],"onReload":[],"beforeFeature":[],"beforeScenario":[],"beforeStep":[],"afterStep":[],"afterScenario":[],"afterFeature":[],"_":["wdio.conf.js"],"$0":"node_modules\\@wdio\\cli\\bin\\wdio.js","ignoredWorkerServices":[],"specFileRetryAttempts":0},"_NOT_FIBER":true},"isReactElement":false}}
1612508368716 Marionette DEBUG 0 -> [0,4,"WebDriver:SwitchToFrame",{"element":"09020d9b-7e6a-4f59-b3f4-f5524b4149ef"}]
1612508368717 Marionette DEBUG 0 <- [1,4,null,{"value":null}]
1612508368708 webdriver::server DEBUG <- 200 OK {"value":null}
1612508368708 webdriver::server DEBUG -> POST /session/0145e224-841a-40ad-a87e-bb0f5236d4ec/element {"using":"css selector","value":"#content"}
1612508368720 Marionette DEBUG 0 -> [0,5,"WebDriver:FindElement",{"using":"css selector","value":"#content"}]
1612508368720 Marionette DEBUG 0 <- [1,5,{"error":"no such window","message":"Browsing context has been discarded","stacktrace":"WebDriverError@chrome://marionet ... t@chrome://marionette/content/server.js:241:9\n_onJSONObjectReady/<@chrome://marionette/content/transport.js:504:20\n"},null]
1612508368708 webdriver::server DEBUG <- 404 Not Found {"value":{"error":"no such window","message":"Browsing context has been discarded","stacktrace":"WebDriverError@chrome://marionette/content/error.js:181:5\nNoSuchWindowError@chrome://marionette/content/error.js:415:5\nassert.that/<@chrome://marionette/content/assert.js:460:13\nassert.open@chrome://marionette/content/assert.js:168:4\nGeckoDriver.prototype.findElement@chrome://marionette/content/driver.js:2109:10\ndespatch@chrome://marionette/content/server.js:297:40\nexecute@chrome://marionette/content/server.js:267:16\nonPacket/<@chrome://marionette/content/server.js:240:20\nonPacket@chrome://marionette/content/server.js:241:9\n_onJSONObjectReady/<@chrome://marionette/content/transport.js:504:20\n"}}
Actual results:
When driver tries to find element it gets the error message.
Expected results:
no error is expected. it worked in previous version of Firefox (84).
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:85.0) Gecko/20100101 Firefox/85.0
Steps to reproduce:
When running the following test with geckodriver it fails with the "error":"no such window","message":"Browsing context has been discarded" message: