- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我为 Nightwatch 中的 UI 测试创建了这个自定义命令。这是完整的:
exports.command = function(element, callback) {
var self = this;
try {
this.waitForElementVisible('body', 15000);
console.log("trying..");
window.addEventListener('load', function() {
var selects = document.getElementsByName("select");
console.log(selects);
}, false);
} catch (err) {
console.log("code failed, here's the problem..");
console.log(err);
}
this
.useXpath()
// click dropdowns
.waitForElementVisible(element, 15000)
.click(element)
.useCss()
.waitForElementVisible('option[value="02To0000000L1Hy"]', 15000)
// operation we want all select boxes to perform
.setValue('option[value="02To0000000L1Hy"]', "02To0000000L1Hy")
.useXpath()
.click(element + '/option[4]');
if (typeof callback === "function") {
callback.call(self);
}
return this; // allows the command to be chained.
};
我试图做的是在加载页面后,我想检索所有选择框并对它们执行相同的操作。除了 try/catch block 中的代码外,一切都正常工作。我不断收到“[ReferenceError: window is not defined]”,我不确定如何解决这个问题。
最佳答案
'window' 属性在全局范围内未定义,因为它是通过命令行 Node 运行的,而不是像最初假设的那样在浏览器中运行。
您可以尝试使用 Nightwatch API 中的 this.injectScript,但我建议使用 Selenium Protocol API 'elements'
关于javascript - 守夜人 : Using custom commands to iterate over all select tags,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25649589/
我正在使用 javascript 编写测试以在守夜人中执行。为了注册一个新帐户,我在同一张表格下有两个密码字段。我使用与 input[type=password] 连接的表单 ID 选择它们,然后使用
这是我用来运行测试的代码 this is my config file. { "src_folders" : ["tests"], "output_folder" : "reports",
我有一些带有“并行”标签的测试。 我想在两个浏览器中并行运行它,即第一个测试将在第一个浏览器中启动,第二个将同时在第二个浏览器中启动。 我尝试执行此命令: npm run nightwatch --
你知道如何向waitForElementPresent添加失败回调 我想做如下的事情: browser.url('http://google.com') .waitForElementP
在 Chrome 中的 CI 上运行 Nightwatch 测试。有时(大约每 5 个版本中有一次)我在其中一个测试中遇到以下错误。在此之前的每个测试都可以正常工作。 我有最新的 Chromedriv
我已经在 Nightwatch 中创建了一个页面对象模型,但我想覆盖一些自定义功能。我将如何实现这一目标? module.exports = { url: 'http://localhost:6391
所以我正在尝试让 Nightwatch.js 测试在 CircleCI 上运行。在 CircleCI 的配置过程中,我...将 Node 更新到最新版本(因为我们有 Node 服务器),npm 安装我
我创建了如下所示的 nightwatch.json 文件(具有用户名和 access_key 属性): "test_settings": { "default": {
如何将xpath分离成单独的文件并在nightwatch自动化测试中使用? 编辑:我运行一个页面对象模式示例并发现了一些错误。错误:类型错误:browser.page.url 不是函数 请帮忙解决这个
我的页面上有一个元素,当我将鼠标悬停在该元素上时,会显示带有文本的工具提示。如何获取文本值?我需要验证是否显示了正确的文本。 我们正在使用 Nightwatch.js 非常感谢! element wi
我正在使用 Nightwatch 编写浏览器自动化程序。我遇到 Nightwatch 命令的 executeAsync 函数问题。 executeAsync 的 Nightwatch 文档: Inje
在我的 React 项目中,我想使用 nightwatch 作为测试工具。我实际上在 Windows 上使用 Nightwatch v1.0.4 和 selenium-server-standalon
我使用 nighwatch 来测试 React 应用程序。 应用 CSS 类就像 .myClass__4RFGCG 我要测试 browser.assert.visible(".myClass", "T
对于产品的新版本,我决定尝试使用页面对象方法而不是使用 View ,而且我可能开始错误地使用它。 我们有一个自定义命令,它只是等待一个元素并点击 (waitAndClick.js): exports.
我为 Nightwatch 中的 UI 测试创建了这个自定义命令。这是完整的: exports.command = function(element, callback) { var self =
我是 Nightwatch 的初学者,但我遇到了以下问题: 我有一个表,其中有 和多个就在里面。我需要检查第一列的一个单元格中是否存在特定单词。 首先,我尝试使用 document.GetElemen
.pause(1000) 真的是等待表单提交的最佳实践吗?我正在寻找一种可靠地提交表单的方法,而无需知道作为表单提交结果出现的页面的详细信息。 例子来自 home page使用 .pause(1000
我是一名优秀的程序员,十分优秀!