Eoghan Buckley
Eoghan Buckley

Reputation: 155

ChromeDriver cannot navigate to URL in eclipse

I am very new to Cucumber and get the following error using ChromeDriver to request a URL:

java.lang.IllegalStateException: The path to the driver executable must be set by the webdriver.chrome.driver system property; for more information, see http://code.google.com/p/selenium/wiki/ChromeDriver. The latest version can be downloaded from http://chromedriver.storage.googleapis.com/index.html at com.google.common.base.Preconditions.checkState(Preconditions.java:177)

My code:

package cucumber.features;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;

import cucumber.api.java.en.Given;
import cucumber.api.java.en.Then;
import cucumber.api.java.en.When;

public class AddToList {

    WebDriver driver = null;

    @Given("^I am on Todo site$")
    public void onSite() throws Throwable {
        driver = new ChromeDriver();
        driver.navigate().to("http://localhost");
        System.out.println("on todo site");

    }

    @When("^Enter a task in todo textbox$")
    public void enterTask() throws Throwable {
        driver = new ChromeDriver();
        driver.findElement(By.name("task")).sendKeys("Test Unit Using Cucumber");
        ;
        System.out.println("task entered");
    }

    @Then("^I click on add to todo$")
    public void clickAddToTodo() throws Throwable {
        driver = new ChromeDriver();
        driver.findElement(By.xpath("//input[@value='Add to Todo' and @type='button']"));
        System.out.println("add button clicked");

    }

}

Upvotes: 1

Views: 1849

Answers (2)

rrayas
rrayas

Reputation: 53

this.driver.get(URL);

Also, I don't think your When and Then should create new ChromeDrivers. Only the Given. I use the setUp method to instantiate it

@Before
public void setUp() {       
    System.setProperty("webdriver.chrome.driver", "..//..//files//drivers//chromedriver.exe");
    this.driver = new ChromeDriver();       
}

Upvotes: 0

Bautista
Bautista

Reputation: 72

I had a similar problem when using selenium library. I found this line before creating my driver fixed it.

System.setProperty("webdriver.chrome.driver", PATH_TO_CHROME_DRIVER);

Here is simple project that could help you.

Upvotes: 2

Related Questions