公共类LogIntoapp {
@Test
public static void main() {
Login();
AddAccountData();
}
在我的登录方法中,我有: System.setProperty(" webdriver.chrome.driver"" C:/drivers/chromedriver.exe"); WebDriver driver = new ChromeDriver();
因此,当我调用AddAccountData时,我需要保持该驱动程序继续导航。我不想在第二种方法中创建新的网络驱动器。希望我并没有完全偏离这种方法。
答案 0 :(得分:1)
我真的建议你查看关于如何构建测试的页面对象模式,它会使你的内容更加可扩展,我会建议像:http://code.google.com/p/selenium/wiki/PageObjects但是如果你google for那个名字,你会发现很多优秀的资源。
您可能想忽略我的建议,让测试继续有效。最简单的方法是让您的登录方法返回您创建的驱动程序。
public WebDriver Login(){
//your current code here
return driver;
}
然后在你的测试中你会得到:
WebDriver driver = Login();
AddAccountData(driver);
基本上你会将驱动程序传递给每个方法。
我真的建议使用第一种方法来处理页面对象。
虽然我在这里有一些值得注意的事情,但你的测试是公共静态void main,虽然它是应用程序的正常入口点,但这通常不是测试结构的方式,它应该只是是一个公共的无效方法,名称不一定是主要的(事实上它被称为混乱)。
其次,按照惯例,Java中的方法名称以小写字母开头,遵循这些约定将有助于人们更容易地遵循代码,因为它变得更复杂。