【发布时间】:2018-04-08 05:25:10
【问题描述】:
全面披露:我对 Geb 和 Spock 都很陌生。
作为我正在开发的测试套件的一部分,我们必须在多个页面元素上运行相同的测试。我希望能够使用 Spock 数据表来抽象这种行为。但是,当我这样做时,Geb 抱怨它无法识别页面属性。
这是我正在谈论的一个简单示例:
when:
textBox = value
submit()
then:"value is updated"
at SuccessPage
textBox == value
where:
textBox | value
box1 | val1
box2 | val2
box3 | val3
在本例中,框 1-3 定义在 Page 的 content 对象中。
这些测试在我独立进行时有效,但在我使用数据表时无效。为什么没有正确替换 Geb 元素?
【问题讨论】:
-
添加@Stepwise 没有解决任何问题?此外,该问题的基础也非常不同。在这种情况下,需要混合 setup() 和 setupSpec() 方法。就我而言,这是一张数据表,未能如预期的那样替换值。
-
请阅读接受的答案,
@Stepwise不是它只是隐藏问题的解决方案。 -
好吧,我纠正了,答案确实埋在那里。话虽如此,解决这个问题的方法已经足够不同,以至于我认为将其称为重复是不公平的。另一种方法是“逐步执行此操作”,我的问题是“为什么数据表会执行此操作”。我无法从这个问题中推断出我的答案,而且我猜大多数人也不会。
-
我看到这个问题被否决了很多。它有什么问题? @erdi 很清楚地给了我一个成功的答案,我可以在我的工作中使用它。有人可以就如何使这个问题更好地给我反馈吗?