SeleniumのためのXPath入門

SeleniumでテストターゲットのHTMLElementを指定する方法は多彩ですが、既存アプリケーションのテストを書く場合、テストしたいHTMLElementにid属性が埋まっていることはあまりないので、大抵はname(name属性が付いていて一意に特定できるElementの場合)かXPathではないでしょうか。複雑なHTMLだとDOMではちょっと大変です。
XPathであれば、そのほんの少しの機能しか使わなくても、大抵のフォーム要素や画像ファイルを、簡単に捕捉できます(機能テストはオンサイト顧客が書くので、この「簡単に」がとても重要なのです)。
いくつか使用例をメモっておきます。


■フォームfのITEM_CDチェックボックスの2番目にチェックを付ける

click //form[@name="f"]/input[@type="checkbox"][@name="ITEM_CD"][2]  


■画像リンクmenu.gifをクリックする。

click //img[@src="menu.gif"]  


■画像ボタンalt「送信する」をクリックする。

click //input[@alt="送信する"]  


ん〜、簡単ですねぇ。