【发布时间】:2016-05-18 06:53:16
【问题描述】:
我有以下使用用户名和密码登录 Facebook 的示例代码,
@Test
public void fb() {
FirefoxProfile ffprofile = new FirefoxProfile();
ffprofile.setPreference("general.useragent.override", "iPhone"); //this will change the user agent which will open mobile browser
WebDriver driver = new FirefoxDriver(ffprofile);
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
driver.manage().window().setSize(new Dimension(400, 800)); //just to change the window size so that it will look like mobile ;)
driver.get("http://www.fb.com/");
driver.findElement(By.name("email")).sendKeys("user1");
driver.findElement(By.name("pass")).sendKeys("password");
driver.findElement(By.name("login")).click();
}
接下来我还有 5 个 Facebook 个人资料,分别是 user2、user3、user4、user5 和 user6。我也想使用这些个人资料登录 Facebook 进行一些自动化测试。
我的问题是我应该为不同的用户名重新编写上面的代码 5 次,还是有其他优雅的方法来实现这一点?
提前致谢!
【问题讨论】:
-
基于关键字的测试。 en.wikipedia.org/wiki/Keyword-driven_testing 您将对一组给定的关键字(在本例中为用户/密码对)重复测试。您的函数需要将值作为参数:
public void fb(String user, String password) {... .sendKeys(user).... sendKeys(password)....