1

我希望能够使我的测试尽可能干燥,并且在与 Dalek 一起导航时我会做很多多余的事情。

有没有办法从另一个测试中执行测试,更具体地说,让测试从前一个停止的地方开始?

例如:

test
   .runTestWithName("login") // opens url, fills out form, clicks submit
   .assert.exists("#create-new-todo-button")
   .done();

我已经修补了一些东西,但结果出乎意料。

提前致谢。

4

1 回答 1

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();
    }
}

还要检查这个网址,它有一些例子: https ://github.com/asciidisco/jsdays-workshop/tree/8-dry/test/dalek

于 2014-08-20T12:01:11.800 回答