单选按钮是个常见的html元素,在网页中往往提供一组单选按钮来做选项。
这样在自动化测试用例中需要判断当前选中的按钮是否与预期的一直。
可以这样来操作:
${value} Get Element Attribute xpath=//form[@id='xxx']/*/input[@value='yyy']@checked
上面的关键字Get Element Attribute是获取html元素的指定属性的属性值。该关键的字的参数是 元素定位符后加上@要获取的属性名
上面例子是获取 checked 属性,表示是否选中。
前面的元素定位符表示获取 id为xxx的form下的孙子节点为input元素(且该元素的value属性值为yyy)。
如果对该按钮的预期值为 true,则就可以通过should be equal关键字来判断。
should be equal ${value} true
注意:
在实际测试中我们发现利用input的其它属性可以定位到元素,如:
xpath=//form[@id='f204']/*/input[@type='radio']
但是,发现利用checked属性却无法定位,下面的三种写法都无法定位到被选中的按钮(实际是有选中的)。没有找到原因,也许是因为checked状态是通过js来设置的。所以,最终只能通过上面介绍的 Get Element Attribute 关键字来解决判断按钮是否被选中的问题。
xpath=//form[@id='f204']/*/input[@checked='true']
xpath=//form[@id='f204']/*/input[@checked=true]
xpath=//form[@id='f204']/*/input[@checked]