问题标签 [webdriver-io]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
selenium-webdriver - 基于标签值在 WebdriverIO 中选择元素
考虑以下HTML
示例:
如何选择值作为MR
,或Second Lieutenant
使用 WebdriverIO?
我试过使用.selectByValue([ng-model="form.fields[\'ReportingParty.Contact.Title.Text\'].value "], "MR" )
,但没有用。
javascript - Leadfoot vs webdriver.io - selenium WebDriver API 的 javascript 客户端库
实习生的leadfoot和webdriver.io有什么区别?如果有人可以列出两者的优缺点,将不胜感激?
Leadfoot - https://github.com/theintern/leadfoot webdriver.io - http://webdriver.io/
selenium - 使用 grunt-webdriver、mocha 和 chai-as-promised 进行功能测试
我正在尝试构建一个功能测试系统来验证我们的网站对我们的用户来说是否正确。我拼凑了一堆 Node.js 模块和帮助程序,试图获得一个框架,该框架提供简单、简洁的测试而没有大量嵌套函数回调,我相信 Promise 可以提供这一点,所以我的package.json
文件如下所示:
我的Gruntfile.js
样子是这样的:
最后我的测试用例chrome/login.js
看起来像这样:
当我grunt webdriver:chrome
在命令行上运行时,我看到它启动了 Chrome 并登录到网站。'auth-user-id' 跨度在登录后正确显示用户的 id,但由于某种原因browser.getText()
没有返回它,因此测试失败。我尝试在.pause(100)
之后添加一个.submitForm()
,让我有时间与 Chrome 中的页面进行交互,所以我知道这是测试用例中的一个问题。
我究竟做错了什么?
javascript - 使用 webdriver 和 selenium 验证元素不存在
我正在使用WebdriverIO并selenium-standalone
编写自动化测试来验证我们用户界面的各个部分是否正常工作。
我需要验证页面上不存在元素。例如,我们的系统允许员工跟踪我们向客户推荐的各种类型的资源。如果工作人员不小心添加了错误的资源,他们可以将其删除,我想验证该资源是否实际被删除并且不在页面上。
WebdriverIO 有一个.isExisting()
属性,但无法检查某些东西是否不存在(或不可见/不存在)。我也可以使用Chai断言来解决这个问题,但还没有深入研究这个世界。
这是我的代码片段:
有什么建议吗?如果您需要更多信息,请与我们联系。
javascript - 如何将 Gruntfile.js 中的参数传递给 webdriverio 规范?
我想从 Gruntfile.js 参数化我的 webdriverio 规范。目标是在 Grunt 中指定主机、端口、用户名和密码以及可能的其他参数,并从规范文件中读取它们。
从https://www.npmjs.com/package/grunt-webdriver#overview阅读 Source Labs 示例,我在选项中设置了主机和端口。但是在配置端口时出现以下错误:
这就是为什么我认为必须有其他方法来做到这一点。我的 Gruntfile.js 看起来像这样:
提前感谢您的任何提示!
更新:我使用以下版本:
咕噜声:v0.1.13
咕噜声:v0.4.5
网络驱动程序管理器:3.0.0
咕噜-webdriver:0.4.8
javascript - 使用 webdriver-io 在可滚动元素内滚动?
如何使用 webdriver-io 在可滚动元素内滚动?我尝试了以下代码:
或者
但它们都没有任何效果。
debugging - 检查 WebdriverIO 规范变量
我发现,我可以用它browser.pause();
来停止浏览器的执行并检查它的当前变量,但是如何检查我的 WebdriverIO 测试源的变量呢?
当然,console.log()
如果我想知道一个值,我可以打电话。但是对于每次尝试,我都必须重新启动完整的测试套件,或者我需要对其他所有测试进行评论。
相反,理想情况下,我希望在一行中停止执行并检查所有可用变量。
有人对此有解决方案或其他想法吗?
meteor - Xolvio Cucumber - 在控制台中出现错误,但所有测试都通过
我有以下代码。看起来我的测试通过了,但我的控制台中有大量错误。这是怎么回事?我的测试是否具有不确定性并正在重新运行?如果是这样,我该如何防止错误?
登录功能:
step_definitions.js
node.js - Selenium Standalone with CORS
I am currently using webdriver io via nodejs with selenium standalone, which all works fine until I try to do CORS based requests. I am currently using firefox as the test browser and it throws an error due to the CORS request to another domain.
The server is configured to return the correct headers for CORS and the XHR object is configured to allow CORS. I know these work as when I am manually using the site via firefox/chrome it works as expected, however when I am testing it just seems to blow up, which baffles me as the server and client are configured for CORS, and there is no HTTPS involved in the current tests.
So is there anything special I have to do to get CORS working in the test browsers? I know Selenium boots the browsers up in its own profile but I cannot find any details relating to cors in the configuration for the browser settings, nor can I find any dependentFeatures related to the CORS implementations.
I am happy to provide more information if it would help yield an answer.
node.js - 如何通过带有 webdriver.io 的 nodejs 使用 phantomjs 在 selenium 中保持会话活动?
我通过 webdriver.io 在 node.js 环境中使用 selenium + phantomjs。由于某种原因,会话会在一段时间后结束。Selenium 仍在运行,但在其资源中心,没有更多的活动会话。我怎样才能防止这种情况?