当使用spock+geb时,你可以通过断言断言你在预期的页面上,例如:
assert title == 'Sign In'
,如果断言失败,您会得到一个很好的失败跟踪:
Condition not satisfied:
title == 'Sign In'
| |
Login false
5 differences (28% similarity)
(Lo)g(i--)n
(Si)g(n I)n
但是如果我尝试使用页面对象模式例如:
class LoginPage extends GebPage {
static at = { title == 'Sign In' }
}
Trace并不能很好地帮助解决问题:
Condition not satisfied:
at(LoginPage)
|
false
是否有办法使用页面对象模式并获得更多描述性失败跟踪?
根据geb邮件列表的响应,当前的解决方案是:
static at = { assert title == 'Sign In'; true }
感谢David &卢克。
我不确定我是否有你问题的答案。我相信我在某个时候也有类似的问题,但其他问题随着时间的推移变得更加重要(例如WebDriver是POS的事实)。当涉及到新的&新兴的库,如Geb。
你最好的选择是在Geb的邮件列表上发布消息。你可以在这里找到。
Luke Daley, Geb的创建者,通常每天都会回复消息&非常有帮助。邮件列表非常有用,尽管此时成员数量很少。