Skip to content

Browser/driver processes remain in Geb 8 after tests despite using CachingDriverFactory.clearCacheAndQuitDriver() #288

@martin-ober

Description

@martin-ober

e2e-test setup: gebish, cucumber, and webdrivermanager

I use e2e tests which contain several hundred scenarios, and there are technical requirements for the test cases that I need a “fresh” browser.

For this scenario I use CachingDriverFactory.clearCacheAndQuitDriver()

And there is obviously a different behavior in geb 8.0.0.

I did a random sample with a few selected tests and checked after each scenario how many processes there were for the WebDriver and the browser.
Therfore i use

ps -A -o pid,rss,comm | grep -i 'Google Chrome' | grep -v grep for the browser processes

and

ps -A -o pid,rss,comm | grep -i './cache/selenium' | grep -v grep for the WebDriver processes

With geb 7: everything runs as expected and after each browser restart there is only one browser and WebDriver process.
With geb 8: every created browser and driver process is still remaing also after calling CachingDriverFactory.clearCacheAndQuitDriver() which forces the ci-jobs to terminate in cause of a memory issue

ext {
	gebVersion 				= '7.0'
    seleniumVersion 		= '4.34.0'
    groovyVersion 			= '4.0.28'
    cucumberVersion 		= '6.10.4'
    cucumberCoreVersion 	= '7.28.2'
    webDriverManagerVersion = '6.3.2'
    logbackVersion 			= '1.5.18'
    jacksonCoreVersion 		= '2.20.0'
}

dependencies {
    testImplementation "org.gebish:geb-core:$gebVersion"

    testImplementation "org.apache.groovy:groovy-all:$groovyVersion"
    testImplementation "io.github.bonigarcia:webdrivermanager:$webDriverManagerVersion"
    testImplementation "org.seleniumhq.selenium:selenium-firefox-driver:$seleniumVersion"
    testImplementation "org.seleniumhq.selenium:selenium-chrome-driver:$seleniumVersion"
    testImplementation "org.seleniumhq.selenium:selenium-ie-driver:$seleniumVersion"
    testImplementation "org.seleniumhq.selenium:selenium-edge-driver:$seleniumVersion"
    testImplementation "org.seleniumhq.selenium:selenium-java:$seleniumVersion"
    testImplementation group: 'io.cucumber:'cucumber-groovy$cucumberVersion"
    testImplementation group: 'io.cucumber:'cucumber-core:$cucumberCoreVersion"
    testImplementation group: 'io.cucumber:'cucumber-junit:$cucumberCoreVersion"
    testImplementation group: 'ch.qos.logback:'logback-classic:$logbackVersion"
}

sample date here:

Gebish 7:

browswer-processes:

timestamp;scenario;env;pid;rssMB;command;status
2025-09-25 13:31:57;scenario 1;chromehl;21915;195.2;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;NEW

2025-09-25 13:31:58;scenario 2;chromehl;21915;203.9;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;CURRENT

2025-09-25 13:32:00;scenario 3;chromehl;21948;196.4;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;NEW

2025-09-25 13:32:03;scenario 4;chromehl;21971;200.6;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;NEW

2025-09-25 13:32:06;scenario 5;chromehl;21992;201.2;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;NEW

2025-09-25 13:32:09;scenario 6;chromehl;22018;204.8;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;NEW

2025-09-25 13:32:12;scenario 7;chromehl;22018;210.4;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;CURRENT

2025-09-25 13:32:15;scenario 8;chromehl;22048;204.6;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;NEW

driver-processes:

timestamp;scenario;pid;rssMB;command;status;
2025-09-25 13:31:57;scenario 1;21914;19.9;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;NEW

2025-09-25 13:31:58;scenario 2;21914;20.3;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;CURRENT

2025-09-25 13:32:00;scenario 3;21947;19.6;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;NEW

2025-09-25 13:32:03;scenario 4;21970;24.8;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;NEW

2025-09-25 13:32:06;scenario 5;21991;24.6;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;NEW

2025-09-25 13:32:09;scenario 6;22017;25.4;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;NEW

2025-09-25 13:32:12;scenario 7;22017;25.4;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;CURRENT

2025-09-25 13:32:15;scenario 8;22047;25.0;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;NEW

Gebish 8:

browswer-processes:

timestamp;scenario;env;pid;rssMB;command;status
2025-09-25 13:39:15;scenario 1;chromehl;22665;195.1;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;NEW

2025-09-25 13:39:17;scenario 2;chromehl;22665;204.0;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;CURRENT

2025-09-25 13:39:19;scenario 3;chromehl;22665;204.7;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;STALE
2025-09-25 13:39:19;scenario 3;chromehl;22703;193.9;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;NEW

2025-09-25 13:39:21;scenario 4;chromehl;22665;190.5;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;STALE
2025-09-25 13:39:21;scenario 4;chromehl;22703;200.3;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;STALE
2025-09-25 13:39:21;scenario 4;chromehl;22728;201.2;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;NEW

2025-09-25 13:39:24;scenario 5;chromehl;22665;178.4;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;STALE
2025-09-25 13:39:24;scenario 5;chromehl;22703;184.4;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;STALE
2025-09-25 13:39:24;scenario 5;chromehl;22728;206.8;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;STALE
2025-09-25 13:39:24;scenario 5;chromehl;22757;201.1;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;NEW

2025-09-25 13:39:27;scenario 6;chromehl;22665;180.2;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;STALE
2025-09-25 13:39:27;scenario 6;chromehl;22703;172.3;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;STALE
2025-09-25 13:39:27;scenario 6;chromehl;22728;189.2;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;STALE
2025-09-25 13:39:27;scenario 6;chromehl;22757;206.3;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;STALE
2025-09-25 13:39:27;scenario 6;chromehl;22777;207.8;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;NEW

2025-09-25 13:39:30;scenario 7;chromehl;22665;180.0;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;STALE
2025-09-25 13:39:30;scenario 7;chromehl;22703;174.6;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;STALE
2025-09-25 13:39:30;scenario 7;chromehl;22728;184.9;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;STALE
2025-09-25 13:39:30;scenario 7;chromehl;22757;204.2;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;STALE
2025-09-25 13:39:30;scenario 7;chromehl;22777;212.8;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;CURRENT

2025-09-25 13:39:34;scenario 8;chromehl;22665;180.6;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;STALE
2025-09-25 13:39:34;scenario 8;chromehl;22703;173.9;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;STALE
2025-09-25 13:39:34;scenario 8;chromehl;22728;178.3;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;STALE
2025-09-25 13:39:34;scenario 8;chromehl;22757;205.2;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;STALE
2025-09-25 13:39:34;scenario 8;chromehl;22777;218.3;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;STALE
2025-09-25 13:39:34;scenario 8;chromehl;22813;204.6;/Applications/Google Chrome.app/Contents/MacOS/Google Chrome;NEW

driver-processes:

timestamp;scenario;pid;rssMB;command;status;
2025-09-25 13:39:15;scenario 1;22664;19.6;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;NEW

2025-09-25 13:39:17;scenario 2;22664;19.9;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;CURRENT

2025-09-25 13:39:19;scenario 3;22664;19.9;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;STALE
2025-09-25 13:39:19;scenario 3;22702;19.7;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;NEW

2025-09-25 13:39:21;scenario 4;22664;18.2;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;STALE
2025-09-25 13:39:21;scenario 4;22702;19.7;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;STALE
2025-09-25 13:39:21;scenario 4;22723;24.9;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;NEW

2025-09-25 13:39:24;scenario 5;22664;16.1;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;STALE
2025-09-25 13:39:24;scenario 5;22702;17.8;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;STALE
2025-09-25 13:39:24;scenario 5;22723;24.9;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;STALE
2025-09-25 13:39:24;scenario 5;22756;24.9;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;NEW

2025-09-25 13:39:27;scenario 6;22664;16.2;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;STALE
2025-09-25 13:39:27;scenario 6;22702;15.7;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;STALE
2025-09-25 13:39:27;scenario 6;22723;23.8;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;STALE
2025-09-25 13:39:27;scenario 6;22756;24.9;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;STALE
2025-09-25 13:39:27;scenario 6;22776;24.6;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;NEW

2025-09-25 13:39:30;scenario 7;22664;16.2;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;STALE
2025-09-25 13:39:30;scenario 7;22702;15.7;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;STALE
2025-09-25 13:39:30;scenario 7;22723;23.1;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;STALE
2025-09-25 13:39:30;scenario 7;22756;24.9;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;STALE
2025-09-25 13:39:30;scenario 7;22776;24.7;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;NEW

2025-09-25 13:39:34;scenario 8;22664;16.2;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;STALE
2025-09-25 13:39:34;scenario 8;22702;15.7;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;STALE
2025-09-25 13:39:34;scenario 8;22723;21.4;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;STALE
2025-09-25 13:39:34;scenario 8;22756;24.9;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;STALE
2025-09-25 13:39:34;scenario 8;22776;24.7;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;STALE
2025-09-25 13:39:34;scenario 8;22812;24.8;~/.cache/selenium/chromedriver/mac-arm64/140.0.7339.207/chromedriver;NEW

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions