我得到了这个复选框列表,我想验证是否选中了特定的复选框,我不能使用复选框 ID,只能使用文本,但它是这样的。
<ul id="chkList">
<li>
<span>
<input id="CheckBox_1" type="checkbox" value="1" checked="checked" />
<label for="CheckBox_1">Cat</label>
</span>
</li>
<li>
<span>
<input id="CheckBox_2" type="checkbox" value="20" />
<label for="CheckBox_2">Dog</label>
</span>
</li>
<li>
<span>
<input id="CheckBox_2" type="checkbox" value="22" />
<label for="CheckBox_2">Alley</label>
</span>
</li>
</ul>
我想做类似的事情
driver.FindElement(By.XPath("//ul[@id='chkList']/li/span/label[./text()='Cat'])).Selected;
但我肯定不能这样做,因为 xpath 选择标签而不是输入。我正在考虑使用for
for 标签来查找输入的 id。但我该怎么做呢?
我不能使用id
for 输入和它的值,因为它是动态的,我唯一可以使用的是文本。
编辑
测试用例:
- 在 chkList 中创建一个新项目
- 通过与另一个项目检查来分配新项目。(为简洁起见未显示)
- 节省
- 验证是否将新项目分配给另一个项目。