假设我有input一个表单(看起来像一个按钮并像按钮一样交互),它生成一些数据(好吧,服务器根据表单参数生成数据,但对于用户,按钮就是:) :)基于关于表格中的参数.
当我使用时click(),整个过程挂起(它实际上冻结,没有异常或错误).
来自Selenium网站:
// Now submit the form. WebDriver will find the form for us from the element
element.submit();
Run Code Online (Sandbox Code Playgroud)
所以WebDriver有一个submit()方法.在使用click()按钮或submit()?之间,逻辑上是否有任何区别?
我有这个页面,其中有一个文本框,每个文本框都有一个保存按钮.我需要单击"保存"按钮,以便将值保存在文本框中.它正在手动工作并使用硒.但是当运行Selenium WebDriver时,它不会保存文本框值.但是没有抛出错误异常.输入,点击正在运行.savetextvalue()不会被触发.有类似的问题Selenium click事件不会触发angularjs事件
<pp-save-control fn-save-text="saveText();" btn-class="btn btn-default btn-mtl" button-id="btnkbaemailauthsub" place-holder-text="" input-class="tb-mtl" input-id="txtkbaemailauthsub" config-name="40" title-text="KBA email authentication subject" outer-container-class="div-mtl-header" class="ng-isolate-scope"><div class="div-mtl-header">
<span class="label-mtl ng-binding">KBA email authentication subject</span><img ng-hide="(isHelpHidden != null && isHelpHidden != 'true') ? false : true" class="help-mtl ng-hide" src="/Images/help.png">
<div class="div-mtl-tb-holder">
<input type="text" placeholder="" class="tb-mtl" name="txtkbaemailauthsub" id="txtkbaemailauthsub">
<button ng-click="saveTextValue();" ng-hide="false" class="btn btn-default btn-mtl btn-mtl-alignment" name="btnkbaemailauthsub" id="btnkbaemailauthsub" type="button">save</button>
</div>
</div>
</pp-save-control>
Run Code Online (Sandbox Code Playgroud)
有多个文本框和关联的保存按钮.根据'config-value'(您可以在顶部看到),值将被保存.
我如何单击给定HTML上的Submit按钮
<span class="sbt-btn-wrap relative">
<input class="submit icon" type="submit" onclick="submitmnLogin($(this), 'testPrepLogin');trackGaEvent('Content Hub Home','Login Popup','Login Button');">
Run Code Online (Sandbox Code Playgroud)
我试过了
driver.findElement(By.className("sbt-btn-wrap relative")).click();
Run Code Online (Sandbox Code Playgroud)
和
driver.findElement(By.className("submit icon")).click();
Run Code Online (Sandbox Code Playgroud)
但它不起作用。