小编Geo*_*old的帖子

selenium webdriver在sendKeys之前填充后清除字段

我正在测试的网页正在使用淘汰赛.在我们网站上目前没有使用淘汰赛的其他网页上我没有遇到同样的问题.我的方案是页面打开的位置,我输入各种必填字段并单击保存按钮.在它输入最后一个文本字段中的值和单击保存按钮之间的某个时刻之前,先前具有值的字段将被清除,因此脚本无法继续.这是我正在运行的代码示例:

driver.findElement(By.id("sku")).clear();
driver.findElement(By.id("sku")).sendKeys(itemNo);
driver.findElement(By.id("desktopThankYouPage")).clear();
driver.findElement(By.id("desktopThankYouPage")).sendKeys(downloadUrl);
driver.findElement(By.id("mobileThankYouPage")).clear();
driver.findElement(By.id("mobileThankYouPage")).sendKeys(mobileDownloadUrl);
driver.findElement(By.id("initialPrice")).clear();
driver.findElement(By.id("initialPrice")).sendKeys(initialPrice);
driver.findElement(By.id("submitSiteChanges")).click();
Run Code Online (Sandbox Code Playgroud)

就像我说的那样,在它输入最后一个字段中的文本和它点击的时间之间保存之前有文本的字段被清除掉,因此我的测试失败了.问题是它并不总是发生.有时测试运行正常,有时则没有.

我试过把Thread.sleep(x); 到处查看是否暂停某些点可以解决问题.我也尝试使用javascript在后台等待可能正在运行的任何ajax.还有driver.manage().timeouts().implicitlyWait(10,TimeUnit.SECONDS)的隐式等待.它们似乎都没有任何区别.

我正在运行selenium服务器的2.13版本,我的所有测试都在Firefox 8上运行.

任何有关这方面的帮助将不胜感激!

selenium webdriver knockout.js

5
推荐指数
2
解决办法
1万
查看次数

标签 统计

knockout.js ×1

selenium ×1

webdriver ×1