我使用的是Yadda BDD JavaScript库(https://github.com/acuminous/yadda)。
我想写一个返回值的步骤定义。我怎么能这样做,以便将值传递到下一步?
library.given('I get a value', function() {
// Get the value
var value = getValue();
//...
and supply to the next step - how?
});
用法:
Given I get a value
When I do something with this value # How can I refer to this value?
答案 0 :(得分:2)
在Yadda有两种方法可以做到这一点。
存储在" Given"中创建的值step作为步骤库中的变量,然后在"当"步。这种方法很简单,但缺点是库现在保持状态。它也仅在步骤保存在同一个库中时才有效
当您调用Yadda时,第二个(可选)参数可以是一个对象。这将被传递给所有步骤,而不管它们在哪个库中定义。这些步骤在执行时绑定到此对象。有关详细信息,请参阅https://github.com/acuminous/yadda/blob/master/examples/context/test.js和https://acuminous.gitbooks.io/yadda-user-guide/content/en/usage/managing-state.html