我正在与 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>`
我正在尝试获取“创建绘图打印...”元素。我使用了 Firebug 并获得了以下 XPath:
html/body/div[20]/div/div/div/div/div[2]/ul/ul[1]/li[3]/span[2]
它可以工作,但它高度依赖于浏览器的宽度和高度(改变宽度或高度会导致菜单折叠,从而改变其组成菜单项的位置)。我需要帮助才能找到一种获得特定菜单项元素(XPath 或其他)以在我的 Selenium 测试用例中使用的好方法。
谢谢!