我有一个文本框和按钮,我在其中使用了knockout js绑定,如下所示
<textarea id="txtSite" cols="40" rows="5" data-bind="value: cellSite" data-required-msg="required" required="required" class="k-valid"></textarea>
<button id="btnSubmit" value="Submit" data-bind="click: SubmitCell">Submit</button>
我试图通过在文本框中输入一些所需的文本并提交来自动使用Selenium,但它总是触发验证,即使值存在。如何使按钮理解文本框中输入的值
driver = new EdgeDriver(@"C:\Tools\EdgeDriver");
driver.Url = "myurl";
driver.Manage().Window.Maximize();
Thread.Sleep(3000);
Helper.SendKeys(driver, By.Id("txtSite"), "xyz");
WebElement submitBtn = (WebElement)driver.FindElement(By.Id("btnSubmit"));
Helper.JavaScriptClick(driver, submitBtn);
我一直收到提示,要求在文本框字段中输入值,有办法处理此问题吗
2条答案
按热度按时间hgc7kmma1#
好的,这是我发现的,它和预期的一样工作
tkclm6bt2#
无法使用Selenium进行测试,但我建议尝试textInput绑定,与值绑定不同,textInput提供来自DOM的即时更新。
看起来您正在手动切换该更改事件,这相当于作为用户单击退出输入(触发更改事件)-单击提交按钮。
https://knockoutjs.com/documentation/textinput-binding.html