Безмятежность исключений нулевого указателя ведет себя root пакет - PullRequest
0 голосов
/ 14 февраля 2020

Я пытаюсь запустить простой bdd тест, используя поведение и спокойствие, но получаю ошибку инициализации. Кажется, что есть класс пакета, который является нулевым, но я не могу выяснить, какой из них или есть что-то не так с тем способом, которым я инициализирую свой код.

Я был спокойным bdd Документация онлайн https://serenity-bdd.github.io/theserenitybook/latest/jbehave.html

дерево каталогов новый вывод

Оцените помощь:)

Ниже приведена трассировка стека и код.

ava.lang.NullPointerException
    at net.serenitybdd.jbehave.RootPackage.forPackage(RootPackage.java:8)
    at net.serenitybdd.jbehave.SerenityStories.getRootPackage(SerenityStories.java:220)
    at net.serenitybdd.jbehave.SerenityStories.stepsFactory(SerenityStories.java:88)
    at org.jbehave.core.ConfigurableEmbedder.configuredEmbedder(ConfigurableEmbedder.java:130)
    at net.serenitybdd.jbehave.runners.SerenityReportingRunner.<init>(SerenityReportingRunner.java:68)
    at net.serenitybdd.jbehave.runners.SerenityReportingRunner.<init>(SerenityReportingRunner.java:62)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
    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:70)
    at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:37)
    at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
    at org.junit.internal.requests.ClassRequest.createRunner(ClassRequest.java:28)
    at org.junit.internal.requests.MemoizingRequest.getRunner(MemoizingRequest.java:19)
    at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:49)
    at com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)
    at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
    at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)

test.class

import net.thucydides.core.annotations.Managed;
import net.thucydides.core.annotations.Steps;
import org.jbehave.core.annotations.When;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.openqa.selenium.WebDriver;

public class test {
    @Managed()
    WebDriver webDriver;

 @Steps
    GoogleSteps googleSteps;


    @When("I open the page $value")
    public void itest(String value) {

        googleSteps.sendvalue(value);

    }


}

GooglePage.class

import net.serenitybdd.core.annotations.findby.By;
import net.thucydides.core.annotations.DefaultUrl;
import net.thucydides.core.annotations.Step;
import net.thucydides.core.pages.PageObject;
import org.openqa.selenium.Keys;


@DefaultUrl("http://www.google.com")
public class GooglePage extends PageObject {


 public void searchGoogle (String q) {
     find(By.name("q")).sendKeys(q, Keys.ENTER);


 }
}

GoogleSteps.class

import net.thucydides.core.annotations.Step;

public class GoogleSteps {

    GooglePage googlePage;


    @Step
    public void open_page() {

        googlePage.open();
    }

    @Step
    public void sendvalue (String value) {

        googlePage.searchGoogle(value);
    }
}

GoogleRunner.class

import net.serenitybdd.jbehave.SerenityStory;


public class GoogleRunner extends SerenityStory {

}

файл serenity.properties

webdriver.driver=chrome
webdriver.chrome.driver = /Users/aneesaiqbal/Downloads/chromedriver-2.exe

login.story

Narrative:
Testing google
Scenario: lets google

When I open the page hello
...