我正在使用带有 Selenium RC 的 Soda (node.js) 来自动化浏览器测试。
如果我有一个 AngularJS 指令 -> 说一个带有微调器的按钮 -> 并且它在页面上出现多次,我如何确保单击该特定按钮...当它没有 DOM ID 或唯一类时?在我的例子中,“登录”和“其他按钮”是动态的,并且对于ng-view
.
<my-requesting-button text="Login" class="ng-isolate-scope ng-scope">
<button type="submit" class="btn btn-large">
<img src="/img/progress.gif" style="display: none;">
<span>Login</span>
</button>
</requesting-button>
<my-requesting-button text="Some Other Button" class="ng-isolate-scope ng-scope">
<button type="submit" class="btn btn-large">
<img src="/img/progress.gif" style="display: none;">
<span>Some Other Button</span>
</button>
</requesting-button>
苏打水(基本上直接来自示例):
browser
.chain
.session()
.open('/')
.clickAndWait('...LOGIN BUTTON REF?')
.waitForPageToLoad(2 * 1000)
.clickAndWait('...SOMEOTHER BUTTON REF?')
.waitForPageToLoad(2 * 1000)