1

Selenium IDE を使用して、Firefox でテスト ケースの記録と自動化を実行しています。現在のテスト ケースでは、特定のメニュー項目をクリックする必要があります。このメニュー項目の ID は動的に生成されるため、それを確実に使用してメニュー項目を識別することはできません。

以下は、私が使用している HTML コードの抜粋です (かなり大きいので短くするようにしています)。

<div class="mmenu-column last-child">
    <ul>
        <li id="liemx1271284633044.5005" class="submenu" menuuid="emx1271284633044.5005">
        <ul>
            <li id="liemx573969930099.0066" class="link" menuuid="emx573969930099.0066">
            <li id="liemx72897755668.1767" class="link" menuuid="emx72897755668.1767">
            <li id="liemx1355170643142.7795" class="link" menuuid="emx1355170643142.7795">
                <span class="icon">
                <span>Create Drawing Print...</span>
            </li>
            <li id="liemx1032692905053.1085" class="link" menuuid="emx1032692905053.1085">
        </ul>
        <li id="liemx625746376608.6172" class="submenu" menuuid="emx625746376608.6172">
        <ul>
        <li id="liemx696193179020.1482" class="submenu" menuuid="emx696193179020.1482">
        <ul>
    </ul>
</div>`

「Create Drawing Print...」要素を取得しようとしています。私は Firebug を使用して、次の XPath を取得しました。

html/body/div[20]/div/div/div/div/div[2]/ul/ul[1]/li[3]/span[2]

機能しますが、ブラウザーの幅と高さに大きく依存します (幅または高さを変更すると、メニューが折りたたまれ、構成メニュー項目の位置が変更されます)。私の Selenium テスト ケースで使用する特定のメニュー項目要素 (XPath またはその他) を取得するための良い方法を見つけるには、助けが必要です。

ありがとう!

4

2 に答える 2