Я могу написать и выполнить сценарий Selenium без какой-либо специальной среды тестирования, но я хотел использовать JUnit 5 (потому что у нас есть зависимость от других инструментов), и я никогда не видел такой ошибки org.junit.jupiter.api.extension.ParameterResolutionException при работе с JUnit 4.
В настоящее время это JUnit 5, и я погуглил, чтобы получить какое-то представление, но могу не решит проблему.
Тестовый сценарий с использованием JUnit 5, Eclipse 4.8 и Selenium:
import static org.junit.jupiter.api.Assertions.assertEquals;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
public class loginTest {
public WebDriver driver = null;
public loginTest(WebDriver driver) {
this.driver=driver;
}
@BeforeEach
public void setUp() throws Exception {
driver.get("google.com");
System.out.println("Page title is: " + driver.getTitle());
}
@Test
public void test() {
// some action here I have in original script
System.out.println("Page title is: " + driver.getTitle());
}
@AfterEach
public void tearDown() throws Exception {
driver.quit();
}
}
Трассировка стека:
org.junit.jupiter.api.extension.ParameterResolutionException: No ParameterResolver registered for parameter [org.openqa.selenium.WebDriver arg0] in executable [public login.loginTest(org.openqa.selenium.WebDriver)].
at org.junit.jupiter.engine.execution.ExecutableInvoker.resolveParameter(ExecutableInvoker.java:191)