このチェックボックスのリストを取得しました。特定のチェックボックスがチェックされているかどうかを確認したいのですが、チェックボックス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
ラベルに を使用して、入力用の ID を探すことを考えています。しかし、どうすればそれを行うことができますか?
入力には使用できませんid
。これは動的であるため値です。使用できるのはテキストだけです。
編集
テストケース:
- chkList に新しいアイテムを作成する
- 新しいアイテムを別のアイテムでチェックして割り当てます。(簡潔にするために表示されていません)
- 保存
- 新しいアイテムが別のアイテムに割り当てられているかどうかを確認します。