// signin.test.js
...
this.Then(/^I should be redirected to my dashboard$/, function() {
var self = this;
return this.browser
.getUrl().then(function(eUrl) {
eUrl.should.be.equal(self.url);
})
.end();
});
...
这与注册功能完全相同。
// signup.test.js
...
this.Then(/^I should be redirected to my dashboard$/, function() {
var self = this;
return this.browser
.getUrl().then(function(eUrl) {
eUrl.should.be.equal(self.url);
})
.end();
});
...
运行测试时,sign-in
功能出现此错误:
但是,如果我
,测试将正常运行I should be redirected to my dashboard 12345
。这是cucumberjs
的错误吗?
无论如何都可以解决这个问题。
答案 0 :(得分:0)
您确定错误是否表示未定义的步骤定义?我似乎更有可能报告一个含糊不清的步骤定义。截至v0.9.0
,ambiguous step definitions are no longer allowed:
0.9.0
Breaking changes
* catch ambiguous step definitions (Charlie Rudolph)
* remove use of domain (Charlie Rudolph)
在任何情况下,实现相同的代码块都是一种不好的做法,您应该尽量避免。请参阅DRY Principle。我建议你选择选项1并完全删除重复的步骤定义。