我希望能够尽可能地将我的测试保持为DRY,并且在与Dalek一起导航时我会做很多冗余的事情。
有没有办法在另一个测试中执行测试,更具体地说,是否让测试从前一个测试开始?
例如:
test
.runTestWithName("login") // opens url, fills out form, clicks submit
.assert.exists("#create-new-todo-button")
.done();
我已经修改了一些东西,但它有意想不到的结果。
提前致谢。
答案 0 :(得分:1)
您可以将重复的代码保存在单独的文件中,我们将其称为helper.js:
module.exports = {
"login": function(test) {
test.open(some_url)
.assert.exists("some_selector", "verify that some_selector exists")
}
};
然后在你的主文件上,我们称之为index.js,你可以要求该模块:
var helper = require("./helper") // path is realtive, this is assuming that both files are in the same folder
module.exports = {
"my main test": function(test) {
helper.login(test);
** some more tests **
.done();
}
}
同时检查这个url,它有一些例子: https://github.com/asciidisco/jsdays-workshop/tree/8-dry/test/dalek