3
我想用Cucumber.JS來做我的自動化測試。如果我這樣做......如何使用「And」使用cucumber.js
var sharedSteps = module.exports = function(){
this.World = require("../support/world.js").World;
this.When(/^I click on the cart$/, function(next) {
this.client.click("#cartLink", function(err, res){
});
});
...
}
Scenario: Make sure clicking on the cart works
Given I go on the website "https://site.com/"
When I click on the cart
Then I should be on the cart page
一切正常,但是,如果我做以下使用而
var sharedSteps = module.exports = function(){
this.World = require("../support/world.js").World;
this.And(/^I click on the cart$/, function(next) {
this.client.click("#cartLink", function(err, res){
});
});
...
}
Scenario: Make sure clicking on the cart works
Given I go on the website "https://site.com/"
And I click on the cart
Then I should be on the cart page
我得到
TypeError: Object # has no method 'And'
那麼,什麼是正確的方式做到這一點(不用說你應該使用什麼時候,因爲我有其他的情況並不那麼簡單)
'和'只用於場景中,而不是作爲步驟定義方法。在語義上,它意味着「與上一步相同的關鍵字」;從技術上講,這只是另一個步驟。事實上,你可以在你的步驟定義中使用'Given()','When()'和'Then()',Cucumber不會強制step關鍵字和step定義函數之間的匹配。 – jbpros