我正在为带有 Primefaces 6.1 组件的 Java EE Web 客户端编写 Arquillian+Graphene 功能测试,并希望从一开始就以最便携的方式编写它们。
我注意到不可能像WebElement.click
在任何可点击的 PrimeFaces 组件上执行操作(例如,不能打开,p:selectBooleanCheckbox
因为它WebElement
是一个div
包含另一个div
包含一个的input
),所以我必须
- 找出每个组件的可点击组件的结构并通过 XPath 访问它
- 在我更改 PrimeFaces 版本后,为每个组件计算以上内容
类似的问题是 access by 的情况id
:可点击元素似乎以 为后缀_input
,但这可能与上述元素层次结构一样不可移植。
如何尽可能避免上面列出的问题?或者更抽象:人们如何测试 PrimeFaces 组件?
使用 Selenium WebDriver 进行 PrimeFaces fileUpload 测试的唯一答案是提出我的问题作为解决方案。