你好,我真的需要帮助使用Selenium WebDriver使用TestNG和Excel
我尝试从excel中获取数据,打开浏览器并浏览URL。它的工作成功,终端和测试报告显示测试通过,但它没有打开浏览器或做任何事情,它只是运行自己和显示报告。
Config文件
public void openBrowser(String browser){
try {
if (browser.equals("Mozilla")) {
driver = new FirefoxDriver();
} else if(browser.equals("IE")){
driver = new InternetExplorerDriver();
} else if(browser.equals("Chrome")){
System.setProperty("webdriver.chrome.driver", "\\Applications\\Google Chrome.app\\Contents\\MacOS\\Google Chrome ");
driver = new ChromeDriver();
}
} catch (Exception e) {
}
}
public void navigate(String baseUrl){
try {
driver.manage().window().maximize();
driver.manage().deleteAllCookies();
driver.navigate().to(baseUrl);
} catch (Exception e) {
}
}与测试执行文件
public class NewTest {
public String exPath = Config.filePath;
public String exName = Config.fileName;
public String exWrSheet = "Logiin Functional Test";
public Config config;
@BeforeTest
public void openBrowser() {
config = new Config();
Excel.setExcelFile(exPath+exName, exWrSheet);
String browser = Excel.getCellData(1, 2);
config.openBrowser(browser);
}
@BeforeMethod
public void navigate() {
config = new Config();
Excel.setExcelFile(exPath+exName, exWrSheet);
String baseUrl = Excel.getCellData(2, 2);
config.navigate(baseUrl);
}
@Test
public void test() {
System.out.println("Test");
}
@AfterTest
public void closeBroser() {
//Config.tearDown();
}发布于 2015-02-08 19:02:08
我没有足够的代表来发表评论,我在这里更喜欢这样做,但如果你没有得到任何例外,我怀疑你得到的浏览器变量的值与你的if --然后--在openBrowser中的任何东西不匹配。使用调试器执行代码,或者只添加:
String browser = Excel.getCellData(1, 2);
System.out.println("Browser value from Excel =" + browser);
config.openBrowser(browser);看看你从文件里读到了什么。
发布于 2015-02-09 06:28:47
1- TestNg总是被传递,因为您使用的是"void“方法,并且捕获"all”异常。
2-没有打开浏览器,因为在openBrowser(String )中,NullPointException抛出,而您已经捕捉到它。
-> --您需要插入一个WebDriver实例并通过测试来传递它。
https://stackoverflow.com/questions/28393914
复制相似问题