如何让Selenium等待用户输入?

时间:2014-05-22 08:57:44

标签: user-interface selenium automated-tests

我正在对软件进行一些测试自动化。基本上我有很多表格要填写,还有一些最终的计算结果要检查。我希望Selenium转到某个页面,然后等待用户填写表单并通过专用输入通知Selenium。那么Selenium会读取这些值并将用户带到下一页吗?

如何让Selenium等待用户的输入?我不能在任意时间等待,也不能在我正在测试的Ihm的预期条件上等待。

1 个答案:

答案 0 :(得分:1)

当我需要传递特定于Selenium测试的内容时,我会这样做:

1)使测试中的runnable jar文件 - 所以测试可以通过简单的命令java -jar mytest.jar

运行

2)在Java中,您可以传递命令行参数。好老了

public static void main(String args[])

是你的朋友

所以,如果您运行java -jar mytest.jar Hello World

之类的测试

然后在你的代码中

args[0] = "Hello"
args[1] = "World"

实施例

java -jar mytest.jar Pavel mysecretpassword

并在代码中

public static void main(String args[]){
  loginasUser(args[0], args[1])
}


public void loginasUser(String username, String password){
  driver.findElement(By.id("username")).sendKeys(username);
  driver.findElement(By.id("password")).sendKeys(password);
  driver.findElement(By.id("loginButton")).click();
}

当然,我遗漏了WebDriver初始化,但我希望你有了这个想法