测试(mocha,chai)中的“可链接”是什么意思?
问题描述:
我是JavaScript新手,测试。直到最近,我还是在我的生活中第一次写了一个测试。我指的“Chai.js”文件和它说:测试(mocha,chai)中的“可链接”是什么意思?
断言风格非常类似的Node.js'包含断言模块, 有一些额外的糖。在三种风格选项中,断言是只有不可链接的一种。查看风格指南以了解 的比较。
BDD的风格是期待和应该的。两者都使用相同的可链接的 语言来构造断言,但它们在最初构造断言的方式上有所不同。查看风格指南以了解 的比较。
“可链式语言构造断言”是什么意思? 这是我写的测试文件的example。
谢谢!
答
期望/应该在chai
中断言可以彼此重叠,看起来像一个单独的陈述。在下面的例子中,首先在对象上执行断言,然后在其上成为第一个断言后链接的上下文对象的属性:
expect({ foo: 'baz' }).to.have.property('foo')
.and.not.equal('bar');
如果你想要做同样的断言你会必须在两个不同的断言中完成它,一个将在对象上执行,另一个将在对象的属性上执行:
var foo = { foo: 'baz' };
assert.property(foo, "foo", "object does not contain a foo property");
assert.notEqual(foo.foo, "bar", "The foo property is equal to 'bar'");