У меня есть скрипт автоматизации Java.У меня есть метод настройки, который работает, но мой tearDown по какой-то причине не читается.
Когда я запускаю тест автоматизации, у меня возникают две проблемы
- В случае неудачитест запускается несколько раз, и окно браузера остается открытым.
- , даже если тест пройден, окно браузера никогда не закрывается, что очень усложняет ситуацию.
Я не добавил ни одногофайлы функций кода для реального теста, так как я думаю, что проблема в настройке, но более чем рада.
Я подозреваю, что обе проблемы связаны, но я не могу понять, где и как.
Вот мой класс SeleniumSetUp
public class SeleniumSetup {
protected WebDriver driver;
public SeleniumSetup(WebDriver driver)
{
}
public SeleniumSetup() {
}
public void prepareBrowserForSelenium() {
// setup();
if(DriverSingleton.getDriver() == null)
{
setup();
}
else
{
driver = DriverSingleton.getDriver();
}
}
public void setup() {
System.setProperty("webdriver.chrome.driver", "C:\\Users\\Selenium and drivers\\chromedriver.exe");
driver = new ChromeDriver();
driver.get("http://the-internet.herokuapp.com/");
driver.manage().window().maximize();
System.out.println("Set up running");
}
public void tearDown() {
driver.quit();
System.out.println("Tear down running");
}
}
Я добавил Println и вижу, что он никогда не возвращается, когда я запускаю свой скрипт.
Вот моя базовая страница;
package pages;
import org.openqa.selenium.WebDriver;
public class BasePage {
protected WebDriver driver;
public BasePage(WebDriver driver) {
this.driver = driver;
}
}
И мой водитель
package support;
import org.openqa.selenium.WebDriver;
public class DriverSingleton {
private static WebDriver driver;
public DriverSingleton () {
}
public static WebDriver getDriver() {
return driver;
}
public static void setDriver (WebDriver driver) {
DriverSingleton.driver = driver;
}
}
Любая помощь будет наиболее ценной.