【发布时间】:2017-02-21 06:50:54
【问题描述】:
通常,Vaadin 应用程序会为应用程序的每个用户界面组件设置一个顺序 ID。不幸的是,这些 ID 对于测试自动化的目的不是很有用,因为它们是动态生成的,并且可能在运行时(每个会话或添加新组件时等)发生变化。
对于测试自动化,每个组件都需要(至少每个应用程序)唯一的静态 ID。
A) 能否利用 Vaadin 的 setId() 方法 [1] 生成测试自动化友好的组件 ID?
B) Vaadin 的 addStyleName() 或 setStyleName() 是否可以通过生成自定义 CSS 样式(稍后可能被“滥用”为 ID)有用?
[3] 中讨论的一些设计理念:
- 将 ID 创建与 ID 分配分开
- 使用命名策略创建 id
- 在组件附加时分配 id
[1]https://vaadin.com/api/7.7.3/com/vaadin/ui/Component.html#setId-java.lang.String-
[2]https://vaadin.com/api/7.7.3/com/vaadin/ui/Component.html#setStyleName-java.lang.String-
【问题讨论】:
标签: java css selenium automated-tests vaadin