我试图找到一种在 Protractor 中创建自定义错误消息的好方法。我发现只有三种方法可以做到这一点:
使用“ Jasmine 自定义消息”。 但我不喜欢这种语法:(我认为如果错误消息写在expect之后,代码看起来会更好)
since(function(expected) { return 'Number =/=:' + expected +', it == :' + this.actual; }) .expect(column.get(0)).toEqual("7");
- 创建自定义匹配器并制作我自己的消息。我也不喜欢它,因为对于一种类型的匹配器我有很多不同的情况。另外,我不想重写旧的匹配器并增加我的代码。
- 使用语法:
expect().toBe().because('my message')
看起来棒极了!但是,如果我真正理解,如果我想使用这种语法,我应该在源 Jasmine 代码中进行更正。我觉得不太好。 也许有人知道解决我的问题的另一种方法?
最佳答案
您可以传递custom message as an extra argument to your matcher :
expect(column.get(0)).toEqual("7", "This is not something I've expected");
这将产生以下输出:
Expected something to equal 7, "This is not something I've expected".
关于angularjs - 如何编写自定义消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32227472/