Невозможно создать экземпляр объекта драйвера - PullRequest
1 голос
/ 04 июля 2019

Я написал настройку интеграции Spring Test для запуска тестов на селен. Не удалось создать экземпляр объекта драйвера с помощью spring

Я новичок в Spring.Пожалуйста, дайте мне знать, где я делаю неправильно.

Я пытаюсь вызвать объект драйвера селена, чтобы я мог использовать его в моих тестовых классах

// Этот класс для создания нового объекта драйвера

DriverFactory

@Configuration
public class DriverFactory {

    public DriverFactory() {
    }

    @Bean
    public WebDriver getDriver() {
        ChromeDriverManager.chromedriver().setup();
        return new ChromeDriver();
    }
}

// Этот класс для сканирования компонентов

TestCoreConfiguration

@Configuration
@ComponentScan(basePackages = { "com.cdm" })
public class TestCoreConfiguration {
    public TestCoreConfiguration() {
    }
}

// Этот класс для запуска драйвера

CoreBaseTest

@ContextConfiguration(
    classes = {TestCoreConfiguration.class,DriverFactory.class}
)

public class CoreBaseTest  extends AbstractTestNGSpringContextTests{

    @Autowired(required = true )
    public WebDriver cs;

    public CoreBaseTest() {
        System.out.println(cs +"&&&&&&&&&&&&&&");
        cs.get("https://www.google.com");
    }

}

Необходимо вызвать объект драйвера

// Этот класс для запуска реальных тестов

SanityTest

public class SanityTest extends CoreBaseTest{

@Test
public void sanityTest() {
}
}

Исключение

 Cannot instantiate class com.cdm.Login.SanityTest
    at org.testng.internal.ObjectFactoryImpl.newInstance(ObjectFactoryImpl.java:30)
    at org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:423)
    at org.testng.internal.ClassHelper.createInstance(ClassHelper.java:336)
    at org.testng.internal.ClassImpl.getDefaultInstance(ClassImpl.java:125)
    at org.testng.internal.ClassImpl.getInstances(ClassImpl.java:190)
    at org.testng.TestClass.getInstances(TestClass.java:95)
    at org.testng.TestClass.initTestClassesAndInstances(TestClass.java:81)
    at org.testng.TestClass.init(TestClass.java:73)
    at org.testng.TestClass.<init>(TestClass.java:38)
    at org.testng.TestRunner.initMethods(TestRunner.java:389)
    at org.testng.TestRunner.init(TestRunner.java:271)
    at org.testng.TestRunner.init(TestRunner.java:241)
    at org.testng.TestRunner.<init>(TestRunner.java:192)
    at org.testng.remote.support.RemoteTestNG6_12$1.newTestRunner(RemoteTestNG6_12.java:33)
    at org.testng.remote.support.RemoteTestNG6_12$DelegatingTestRunnerFactory.newTestRunner(RemoteTestNG6_12.java:66)
    at org.testng.SuiteRunner$ProxyTestRunnerFactory.newTestRunner(SuiteRunner.java:713)
    at org.testng.SuiteRunner.init(SuiteRunner.java:260)
    at org.testng.SuiteRunner.<init>(SuiteRunner.java:198)
    at org.testng.TestNG.createSuiteRunner(TestNG.java:1295)
    at org.testng.TestNG.createSuiteRunners(TestNG.java:1273)
    at org.testng.TestNG.runSuitesLocally(TestNG.java:1128)
    at org.testng.TestNG.runSuites(TestNG.java:1049)
    at org.testng.TestNG.run(TestNG.java:1017)
    at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:114)
    at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:251)
    at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:77)
Caused by: java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    at java.lang.reflect.Constructor.newInstance(Unknown Source)
    at org.testng.internal.ObjectFactoryImpl.newInstance(ObjectFactoryImpl.java:24)
    ... 25 more
Caused by: java.lang.NullPointerException
    at com.cdm.core.CoreBaseTest.<init>(CoreBaseTest.java:23)
    at com.cdm.Login.SanityTest.<init>(SanityTest.java:7)
    ... 30 more
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...