如何通过main()和TestNG在IDE中编写Selenium Java应用程序代码

问题描述 投票:1回答:2

我面对以下问题在谷歌搜索无法找到明确的答案如何解决这个问题。

错误:

org.apache.bcel.verifier.exc.AssertionViolatedException.main(AssertionViolatedException.java:102)

import org.openqa.selenium.chrome.ChromeDriver;

public class Newtours 
{ 
     public static ChromeDriver driver; 
     public void chrome() 
    {
         System.setProperty("webdriver.chrome.driver","C:\\Users\\imper\\Downloads\\chro‌​medriver_win32\\chro‌​medriver.exe"); // objects and variables instantiation 
         driver = new ChromeDriver(); 
         driver.get("newtours.demoaut.com/");
    }
}
java selenium selenium-webdriver webdriver testng
2个回答
0
投票

这个错误源于org.apache.bcel.verifier

你必须按照以下方式处理某些事情:

而不是使用ChromeDriver实现使用WebDriver接口。 chrome是保留的关键字。为该方法使用一些其他用户定义的名称,例如my_function() {}简单地定义public void chrome()将不会执行你的Test。您必须将public void chrome()转换为以下任一项:

  • 转换为main()函数如下: public class Newtours { public static void main(String[] args) { System.setProperty("webdriver.chrome.driver", "C:\\path\\to\\chromedriver.exe"); WebDriver driver = new ChromeDriver(); driver.get("http://newtours.demoaut.com/"); } }
  • 整合TestNG并添加@Test注释如下: import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; import org.testng.annotations.Test; public class Newtours { @Test public void my_function() { System.setProperty("webdriver.chrome.driver", "C:\\path\\to\\chromedriver.exe"); WebDriver driver = new ChromeDriver(); driver.get("http://newtours.demoaut.com/"); } }

0
投票
System.setProperty("webdriver.chrome.driver", "chromedriver");
driver = new ChromeDriver(); 
driver.get("http://newtours.demoaut.com/");

试试这个代码它运行正常。我查了一遍,它运行正常。您需要为您的网址提供http或https。

© www.soinside.com 2019 - 2024. All rights reserved.