citrusframework / citrusframework/citrus
selenium stop() does not close custom Chrome
- Dominant language
- Java
- Stars
- 485
- Forks
- 155
- Avg merge
- 4d 22h
- Merged PRs (30d)
- 6
Description
**Citrus Version**
2.8.0
**Expected behavior**
```
@Bean
@DependsOn({"browser"})
public SequenceAfterSuite afterSuite(SeleniumBrowser browser) {
return new TestRunnerAfterSuiteSupport() {
@Override
public void afterSuite(TestRunner runner) {
runner.selenium(builder -> builder.browser(browser).stop());
}
};
}
```
Closes the opened custom browser
**Actual behavior**
The Chrome instance is left open after the test has been run.
**Test case sample**
I have a config with
```
public WebDriver getDriver() {
WebDriverManager.chromedriver().setup();
ChromeOptions options = new ChromeOptions();
options.addArguments("--headless");
options.addArguments("--disable-gpu");
return new ChromeDriver(options);
}
@Bean
@DependsOn("setEnvironments")
public SeleniumBrowser browser() {
return CitrusEndpoints
.selenium()
.browser()
.type("custom")
.webDriver(getDriver())
.build();
}
@Bean
@DependsOn({"browser"})
public SequenceAfterSuite afterSuite(SeleniumBrowser browser) {
return new TestRunnerAfterSuiteSupport() {
@Override
public void afterSuite(TestRunner runner) {
runner.selenium(builder -> builder.browser(browser).stop());
}
};
}
```
Chrome opens when getDriver() is called (here it's called from the browser() Bean). I want to close it in the afterSuite, but I'm not succeeding
Contributor guide
Assessment
This issue has not been assessed yet.