使用以下语法查找用户名输入文本框,
browser.findElement(By.id('username'));
在 Chrome 和 Firefox 中工作正常,但在 IE 11 中出现以下错误:
[internet explorer #3] Message:
[internet explorer #3] Failed: Finding elements with id ==usernamereturned an unexpected error (WARNING: The server did not provide any stacktrace information)
[internet explorer #3] Command duration or timeout: 970 milliseconds
[internet explorer #3] For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
[internet explorer #3] Build info: version: '2.45.0', revision: '5017cb8', time: '2015-02-26 23:59:50'
[internet explorer #3] System info: host: 'dev-web-01', ip: '10.126.1.32', os.name: 'Windows Server 2012 R2', os.arch: 'amd64', os.version: '6.3', java.version: '1.8.0_45'
[internet explorer #3] Driver info: org.openqa.selenium.ie.InternetExplorerDriver
[internet explorer #3] Capabilities [{browserAttachTimeout=0, enablePersistentHover=true, ie.forceCreateProcessApi=false, pageLoadStrategy=normal, ie.usePerProcessProxy=false
expectedAlertBehaviour=dismiss}]
[internet explorer #3] Session ID: d593cfc5-74a5-445a-b1b8-fcdf7c372786
[internet explorer #3] *** Element info: {Using=id, value=username}
我按照以下两个站点配置了 IE: seleniumQuery Run Protractor Against Internet Explorer VM
最佳答案
我知道这篇文章是 2 年前发布的,但我想发布这篇文章,以便它对有类似问题的人有用。我在云服务器上工作,使用2012窗口服务器、IE11、3.12 IEdriver、5.3 Protractor、8.0.1 Promise、.9.5 Cucumber。
脚本正在打开 IE,但无法识别任何对象,直到我进行以下更改。
- IE11 不能直接连接使用。端口 4444 对我不起作用。
- 更改以下设置: 2.1 启用保护模式 - 在 IE11 的所有区域中打开或关闭 2.2 区域 -> Internet -> 自定义 -> 脚本 -> 事件脚本 -> 启用
Cucumber 框架的配置文件
exports.config = { getPageTimeout: 60 * 1000, allScriptsTimeout: 100 * 60 * 1000, restartBrowserBetweenTests: false, capabilities: { browserName:'internet explorer', version: 'ANY', restartBrowserBetweenTests: true, shardTestFiles: false, maxInstances: 1, enableElementCacheCleanup: true, javascriptEnabled: true, ignoreProtectedModeSettings: true }, framework: 'custom', frameworkPath: require.resolve('protractor-cucumber-framework'), ignoreUncaughtExceptions: true, specs: [ '../SystemStatus/*.feature' ], cucumberOpts: { require: ['../SystemStatus/SystemStatus.steps.js'], format: 'json:../../report/SystemStatus'+ timeStamp + '/report.json', //format: ['pretty'], //tags: [], strict: true, dryRun: false, compiler: [], tags: '@Login' }, plugins: [{ package: require.resolve('protractor-multiple-cucumber-html-reporter-plugin'), options:{ automaticallyGenerateReport: true, removeExistingJsonReportFile: true } }] };
关于javascript - Protractor IE 11 错误 - 找不到元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31174972/