- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
所以,我有一个 globals.js 文件,我在其中提到了 beforeEach 和 afterEach,但我可以从这个链接中理解 Nightwatch Globals ,beforeEach 和 afterEach 在测试套件(单个 Js 文件)之前和之后被调用一次。但是在我的框架中,我在单个 js 文件(或测试套件)中有多个测试用例,我想在每个测试用例之前和之后调用 beforeEach 和 afterEach。无论如何要实现这一目标?下面是我的 globals.js 文件:
module.exports = {
asyncHookTimeout: 40000,
beforeEach: function (browser, done) {
// browser.maximizeWindow();
// browser.deleteCookies();
browser.perform(function () {
console.log('Inside BeforeEach');
done();
});
}
afterEach: function (browser, done) {
browser.end(function () {
console.log("Inside After Each");
done();
});
},
};
最佳答案
当然有!只需使用臭名昭著的 Nightwatch test hooks .
示例(您的测试文件应如下所示):
module.exports = {
before(browser) {
// > this will get run only ONCE, before all the tests <
},
beforeEach(browser) {
// > this will get run before every test case <
}
tags: ['your', 'tags', 'go', 'here'],
'Test Case No.1': (browser) => {
// > this test does something here <
},
'Test Case No.2': (browser) => {
// > this test does something else here <
},
'Test Case No.3': (browser) => {
// > this test does something else here <
},
afterEach(browser) {
// > this will get run after every test case <
},
after(browser) {
// > this will get run ONCE, after all tests have run <
}
};
最后,引用文档:
The before and after will run before and after the execution of the test suite respectively (in our case, the test-file), while beforeEach and afterEach are ran before and after each test case (test step).
LE:@AlapanDas 想要的是定制 Nightwatch 测试运行器处理测试级 Hook 的方式。这当然是可行的,但是很脏。您必须从以下文件重写 Hook 逻辑:
守夜人@v0.9.x:
/nightwatch/lib/runner/testcase.js
);/nightwatch/lib/runner/testsuite.js
);守夜人@v1.0.x:
/hooks
文件夹中的每个 {hookName}.js 文件(路径:/nightwatch/lib/testsuite/hooks/*.js
);不过,还是可以在这里做出妥协!试着从你的之前
中找到常见的、重复的步骤/说明,after
等 Hook 并将该逻辑提取到 /custom_commands
文件中。这将压缩您的测试文件,并将登录与 Hook 分离。从长远来看,这还将在维护 Hook 时提供单点更改的优势。
关于javascript - 使用 Globals.js 的每个测试用例的 beforeEach 和 AfterEach,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53782850/
我最近购买了《C 编程语言》并尝试了 Ex 1-8这是代码 #include #include #include /* * */ int main() { int nl,nt,nb;
早上好!我有一个变量“var”,可能为 0。我检查该变量是否为空,如果不是,我将该变量保存在 php session 中,然后调用另一个页面。在这个新页面中,我检查我创建的 session 是否为空,
我正在努力完成 Learn Python the Hard Way ex.25,但我无法理解某些事情。这是脚本: def break_words(stuff): """this functio
我是一名优秀的程序员,十分优秀!