尝试使用TestNG执行跨浏览器测试脚本但给出错误“FAILED CONFIGURATION:@BeforeTest Browser(null)”

时间:2018-02-20 05:08:44

标签: java testng

尝试使用TestNG执行跨浏览器测试脚本但提供错误

  

FAILED CONFIGURATION:@BeforeTest Browser(null):java.lang.NullPointerException"

这是我的代码:

public class CrossBrowserTestingFile {
WebDriver driver;
  @BeforeTest
  @Parameters("browser")
  public void Browser(@Optional String browser)throws Exception {
    //Check if parameter passed from TestNG is 'firefox'
            if(browser.equalsIgnoreCase("firefox")){
            //create firefox instance
                System.setProperty("webdriver.firefox.marionette", ".\\geckodriver.exe");
                driver = new FirefoxDriver();
            }
            //Check if parameter passed as 'chrome'
            else if(browser.equalsIgnoreCase("chrome")){
                //set path to chromedriver.exe
                System.setProperty("webdriver.chrome.driver",".\\chromedriver.exe");
                //create chrome instance
                driver = new ChromeDriver();
            }
            else
            {
                //If no browser passed throw exception
                throw new Exception("Browser is not correct");
            }
            }
  @Test
  public void testParameter() throws InterruptedException{
        driver.get("http://demo.guru99.com/V4/");
        //Find user name
        WebElement userName = driver.findElement(By.name("uid"));
        //Fill user name
        userName.sendKeys("guru99");
        //Find password
        WebElement password = driver.findElement(By.name("password"));
        //Fill password
        password.sendKeys("guru99");
  }
}

我的XML代码:

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">

<suite name="TestSuite" thread-count="2" parallel="tests" >

<test name="FirefoxTest">

<parameter name="browser" value="Firefox" />

<classes>

<class name="crossbrowsertesting.CrossBrowserTestingFile">

</class>

</classes>

</test>

<test name="ChromeTest">

<parameter name="browser" value="Chrome" />

<classes>

<class name="crossbrowsertesting.CrossBrowserTestingFile">

</class>

</classes>

</test>

<test name="EdgeTest">

<parameter name="browser" value="Edge" />

<classes>

<class name="crossbrowsertesting.CrossBrowserTestingFile">

</class>

</classes>

</test>

</suite>

请帮助这个,TIA。,这是一个重复的问题,加上我的XML文件代码。我认为xml代码可以帮助你们回答它。

0 个答案:

没有答案
相关问题