驱动程序给出空点异常

Driver giving Null point exception

下面的代码试图 运行 在 cucumber 中没有 example 关键字,但输出显示为空指针错误

WebDriver driver;
    @Given("^user is alredy in login page$")
    public void user_is_alredy_in_login_page() {
        System.setProperty("webdriver.chrome.driver", "C:\Users\swagatika.mohapatra\OneDrive - Qualitest Group\Desktop\selenium\DRIVER\D-v-88-chrome\chromedriver.exe");

        WebDriver driver = new ChromeDriver();
        driver.get("https://opensource-demo.orangehrmlive.com/");
        driver.manage().window().maximize();

    }


    @Given("^user enters \"(.*)\" and \"(.*)\"$")
    public void user_enters_valid_user_name(String username, String password) {

        this.driver = driver;
        driver.findElement(By.id("txtUsername")).sendKeys(username);
        driver.findElement(By.id("txtPassword")).sendKeys(password);


    }

调试模式下的控制台输出 -

this = {LoginStepDefination@3223} 
 driver = null
username = "Admin"
password = "admin123"
this.driver = null
driver = null
WebDriver driver = new ChromeDriver();

您在第一步中将驱动程序声明为局部变量:

WebDriver driver;
    @Given("^user is alredy in login page$")
    public void user_is_alredy_in_login_page() {
        System.setProperty("webdriver.chrome.driver", "C:\Users\swagatika.mohapatra\OneDrive - Qualitest Group\Desktop\selenium\DRIVER\D-v-88-chrome\chromedriver.exe");

        driver = new ChromeDriver();
        driver.get("https://opensource-demo.orangehrmlive.com/");
        driver.manage().window().maximize();

    }


    @Given("^user enters \"(.*)\" and \"(.*)\"$")
    public void user_enters_valid_user_name(String username, String password) {
        this.driver.findElement(By.id("txtUsername")).sendKeys(username);
        this.driver.findElement(By.id("txtPassword")).sendKeys(password);
    }