Del*_*nja 3 bdd groovy cucumber geb
使用GEB我使用页面对象模式静态封装有关不同页面的信息.
然后,我重构了我的GEB代码,以便从一个单独的类中使用,因此我可以使用方法调用封装常用命令.
例如,我将有一个方法login(),它将调用相应的GEB代码登录我正在测试的网站.然后我会在TestHelper类上使用方法调用来使用其他常用函数.
我想将这些常用功能移动到他们所采用的页面上.例如,搜索页面将具有搜索方法,登录页面将具有登录方法.通过这种方式,我可以构建一个页面库,其中包含所有常用功能,以便在多个GEB项目中使用.现在要做到这一点,每个页面必须在geb.Browser上有一个句柄,因此我现在必须在测试设置中实例化每个页面.通过这样做,我不再能够使用标准页面对象模式.
to ReviewQueuePage
assert at(ReviewQueuePage)
Run Code Online (Sandbox Code Playgroud)
上面的代码将抛出一个空指针,因为对象不再能够以静态方式访问,这意味着我必须将代码更改为
go ReviewQueuePage.url
Run Code Online (Sandbox Code Playgroud)
这将删除将该类用作页面的所有功能.
有没有人有任何解决方案来封装每个页面的数据,因为它不会导致页面采取不同的行为.
| 归档时间: |
|
| 查看次数: |
1709 次 |
| 最近记录: |