vic*_*ass 5 selenium ui-automation selenium-webdriver
我注意到在Selenium Webdriver中不推荐使用pause()方法(http://selenium.googlecode.com/git/docs/api/java/index.html)
暂停确实是某种不好的做法,但那我怎么能模拟下面的场景呢?:
这里的问题是,如果我执行moveToElement().clickAndHold().moveToOffset()我得到的实际上是"swype",页面上有这样的功能.我想要的是点击并按住元素,稍微停顿一下模拟人类行为(100毫秒就足够了).没有暂停(),我没有看到另一种方法.有没有?
您还没有说明使用什么语言绑定来编写 WebDriver 测试,但在 C# 或 Java 中您可以只使用 Thread.Sleep(100)。我确信所有其他语言中都有等效的内容。或者我认为 WebDriverWait laterBy(longurationInMillis) 会执行与 Thread.Sleep 相同的操作。
我个人更喜欢尽快执行测试,因此我有一个自定义等待方法,该方法等待元素出现并可见,然后再允许下一步。
在下面的示例中,thread.sleep 插入到 sendKeys 和 assertEquals 步骤之间。
@Before
public void setUp() throws Exception {
driver = new FirefoxDriver();
baseUrl = "https://www.google.co.uk/";
}
@Test
public void test1() throws Exception {
driver.get(baseUrl + "/");
driver.findElement(By.id("gbqfq")).sendKeys("selenium");
thread.sleep(100);
assertEquals("selenium", driver.findElement(By.cssSelector("cite._Pd > b")).getText());
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1543 次 |
最近记录: |