Javascript 这是链接chai.js';他在守夜

Javascript 这是链接chai.js';他在守夜,javascript,testing,chai,nightwatch.js,e2e-testing,Javascript,Testing,Chai,Nightwatch.js,E2e Testing,我想使用断言bdd库 它的作品!我的代码如下所示: var expect = require('chai').expect module.exports = { 'Login' : function (browser) { var login = browser.page.login() login.expect.element('@login').to.not.be.enabled login.setValue('@email', 'some@some.com')

我想使用断言bdd库

它的作品!我的代码如下所示:

var expect = require('chai').expect

module.exports = {
  'Login' : function (browser) {
    var login = browser.page.login()
    login.expect.element('@login').to.not.be.enabled
    login.setValue('@email', 'some@some.com')
    login.setValue('@password', 'pass')
    login.expect.element('@login').to.be.enabled
    login.click('@login')
    login.end()
  }
}
但是。Nightwatch为自己的方法提供了非常流畅的界面,使您能够链接像
browser.setValue(“…”,“…”)这样的方法。单击(“…”).end()

问题:如果我使用chaijs,我可以实现方法链接吗

解释,我想要的是:

module.exports = {
  'Login' : function (browser) {
    var login = browser.page.login()

    login.expect.element('@login').to.not.be.enabled
    .setValue('@email', 'some@some.com')
    .setValue('@password', 'pass')
    .expect.element('@login').to.be.enabled
    .click('@login')
    .end()
  }
}

我可以让我的测试看起来像上面的代码吗?

为了使用多个预期,您必须执行以下操作:

module.exports = {
'Login' : function (browser) {
    var login = browser.page.login()

    login.expect.element('@login').to.not.be.enabled
    login
        .setValue('@email', 'some@some.com')
        .setValue('@password', 'pass')
        .expect.element('@login').to.be.enabled
    login    
        .click('@login')
    .end()
    }
}
当您在测试中使用.expect(…)或在页面对象中的自定义函数时,会发生这种情况,您必须再次使用browser/client/page object变量来重新开始链接