我们可以在When Block of Spock Spec中使用全局变量吗?

时间:2013-11-05 18:05:32

标签: functional-testing spock geb

我正在尝试利用全局变量在我的spock规范中存储一些数据但不确定实现。这样做的原因是利用用户配置文件中的值并在签出时进行验证。 确切地说,我登录并导航到用户配置文件。我需要能够在全局变量中存储地址详细信息和用户详细信息。 当我点菜时,我想在签出物品之前核实交货细节。

是否可以在阻止时使用全局变量。

以下编辑示例:

在Spock规范中声明了一个全局变量(称为“buyerNameValue”)

并尝试将元素的值存储在该变量中以供稍后使用:

def“存储用户详细信息”(){

when:
    assert at(UserProfilePage)
    buyerNameValue      << buyerName.text() 
    println(buyerNameValue) // To see if the value is being captured
    buyerAddressValue   << buyerAddress.text()
    println(buyerAddressValue)
    landingPage.click()
then:
    assert at(LandingPage)  

}

1 个答案:

答案 0 :(得分:0)

我声明了全局变量,但是当我尝试从元素中获取值时,它会抛出一个错误,指出在阻塞时不允许赋值运算符。

我也无法使用<<运算符。这些仅允许在Spock spec的where块中。