What is the difference between assert, expect and should in Chai?
What is the difference between assert , expect and should , and when to use what? assert.equal(3, '3', '== coerces values to strings'); var foo = 'bar'; expect(foo).to.equal('bar'); foo.should.equal('bar'); Louis The differences are documented there . The three interfaces present different styles of performing assertions. Ultimately, they perform the same task. Some users prefer one style over the other. This being said, there are also a couple technical considerations worth highlighting: The assert and expect interfaces do not modify Object.prototype , whereas should does. So they are a