Quantcast
Channel: Active questions tagged selenium - Stack Overflow
Viewing all articles
Browse latest Browse all 97774

Initialization Error while executing TestRunner class

$
0
0

When I try to run the TestRunner.java then I see the following error:

initializationError(0.000s)

java.lang.IllegalArgumentException: baseDir must exist: C:\com\newtours\qa\features at io.cucumber.core.resource.PathScanner.findResourcesForPath(PathScanner.java:42) at io.cucumber.core.resource.PathScanner.findResourcesForUri(PathScanner.java:26) at io.cucumber.core.resource.ResourceScanner.findResourcesForUri(ResourceScanner.java:111) at io.cucumber.core.resource.ResourceScanner.scanForResourcesUri(ResourceScanner.java:88) at io.cucumber.core.runtime.FeaturePathFeatureSupplier.loadFeatures(FeaturePathFeatureSupplier.java:62) at io.cucumber.core.runtime.FeaturePathFeatureSupplier.get(FeaturePathFeatureSupplier.java:46) at io.cucumber.junit.Cucumber.(Cucumber.java:156) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500) at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:481) at org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:104) at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86) at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59) at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:26) at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59) at org.junit.internal.requests.ClassRequest.getRunner(ClassRequest.java:33) at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.createUnfilteredTest(JUnit4TestLoader.java:90) at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.createTest(JUnit4TestLoader.java:76) at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.loadTests(JUnit4TestLoader.java:49) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:525) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:763) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:463) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:209)

I tried giving the full path of both feature file as well as step definition but still same issue occur.

Following are the files which are in use:

1. Login.java

package com.newtours.qa.stepdefinition;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import io.cucumber.java.en.And;
import io.cucumber.java.en.Given;
import io.cucumber.java.en.When;

public class Login
{
    WebDriver driver;
    String expectedTitle = "ToolsQA – Demo Website to Practice Automation – Demo Website to Practice Automation";

    @Given("user is already on login page")
    public void user_is_already_on_login_page() throws Throwable
    {
        System.setProperty("webdriver.chrome.driver", "..\\CucumberMavenProject\\Drivers\\chromedriver.exe");
        driver = new ChromeDriver();
        driver.manage().window().maximize();
        driver.get("https://www.phptravels.org/clientarea.php");
        System.out.println("User navigates to URL");
        throw new io.cucumber.java.PendingException();
    }

    @And("username and password are entered")
    public void username_and_password_are_entered() throws Throwable
    {
        //String actualtitle = driver.getTitle();
        driver.findElement(By.cssSelector("#inputEmail")).sendKeys("abe");
        driver.findElement(By.cssSelector("#inputPassword")).sendKeys("aaa");
        System.out.println("User enters login details ");
        throw new io.cucumber.java.PendingException();  
    }
    @When("user clicks on signin button")
    public void user_clicks_on_signin_button() throws Throwable
    {

        driver.findElement(By.cssSelector("#login")).click();
        System.out.println("User clicks login button");
        throw new io.cucumber.java.PendingException();
    }
}

2. Login.feature

Feature: Demo Tours Test

@SmokeTest
Scenario: Demo Tours Login with valid credentials

Given user is already on login page
And username and password are entered
When user clicks on signin button
Then user should see home page

3. TestRunner.java

package com.newtours.qa.runner;

import org.junit.runner.RunWith;
import io.cucumber.junit.Cucumber;
import io.cucumber.junit.CucumberOptions;

@RunWith(Cucumber.class)

@CucumberOptions
(
        strict = true,
        dryRun = false,
        monochrome = true,
        features = "\\com\\newtours\\qa\\features",
        glue    = "\\com\\newtours\\qa\\stepdefinition"
)

public class TestRunner
{

}

Project Structure:

[]


Viewing all articles
Browse latest Browse all 97774

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>