-
Notifications
You must be signed in to change notification settings - Fork 270
Open
Description
Version
1.58.0
Steps to reproduce
Jenkinsfile
agent {
docker {
label 'allure'
image 'mcr.microsoft.com/playwright/java:v1.58.0-noble'
alwaysPull true
}
}
environment {
MAVEN_OPTS = '-XX:+UseParallelGC -XX:MaxRAMPercentage=60 -XX:+ExitOnOutOfMemoryError -XX:+TieredCompilation -XX:TieredStopAtLevel=1 -XX:+UnlockExperimentalVMOptions'
}
test run step
sh "mvn -s settings/maven-settings.xml --no-transfer-progress clean -U -Pjenkins test"
Log with error
org.junit.jupiter.api.extension.ParameterResolutionException:
Failed to resolve parameter [com.microsoft.playwright.Page page] in method [void com.test.ExampleTest.setupPlaywright(com.microsoft.playwright.Page,com.microsoft.playwright.BrowserContext)]: Error {
message='Target page, context or browser has been closed
Browser logs:
<launching> /ms-playwright/chromium-1155/chrome-linux/chrome --disable-field-trial-config --disable-background-networking --disable-background-timer-throttling --disable-backgrounding-occluded-windows --disable-back-forward-cache --disable-breakpad --disable-client-side-phishing-detection --disable-component-extensions-with-background-pages --disable-component-update --no-default-browser-check --disable-default-apps --disable-dev-shm-usage --disable-extensions --disable-features=ImprovedCookieControls,LazyFrameLoading,GlobalMediaControls,DestroyProfileOnBrowserClose,MediaRouter,DialMediaRouteProvider,AcceptCHFrame,AutoExpandDetailsElement,CertificateTransparencyComponentUpdater,AvoidUnnecessaryBeforeUnloadCheckSync,Translate,HttpsUpgrades,PaintHolding,ThirdPartyStoragePartitioning,LensOverlay,PlzDedicatedWorker --allow-pre-commit-input --disable-hang-monitor --disable-ipc-flooding-protection --disable-popup-blocking --disable-prompt-on-repost --disable-renderer-backgrounding --force-color-profile=srgb --metrics-recording-only --no-first-run --enable-automation --password-store=basic --use-mock-keychain --no-service-autorun --export-tagged-pdf --disable-search-engine-choice-screen --unsafely-disable-devtools-self-xss-warnings --headless --hide-scrollbars --mute-audio --blink-settings=primaryHoverType=2,availableHoverTypes=2,primaryPointerType=4,availablePointerTypes=4 --no-sandbox --no-sandbox --disable-dev-shm-usage --disable-gpu --disable-blink-features=AutomationControlled --no-first-run --no-default-browser-check --disable-first-run-ui --disable-notifications --disable-popup-blocking --disable-search-engine-choice-screen --ignore-certificate-errors --font-render-hinting=none --password-store=basic --user-data-dir=/tmp/playwright_chromiumdev_profile-nIYB6g --remote-debugging-pipe --no-startup-window
<launched> pid=1149
[pid=1149][err] chrome_crashpad_handler: --database is required
[pid=1149][err] Try 'chrome_crashpad_handler --help' for more information.
name='TargetClosedError
stack='TargetClosedError: Target page, context or browser has been closed
PlaywrightOptions
public class SpringPlaywrightOptions implements OptionsFactory {
@Override
public Options getOptions() {
Config config = SpringContextAccessor.getBean(Config.class);
return new Options()
.setHeadless(config.getPlaywrightHeadless())
.setChannel(config.getPlaywrightBrowser())
.setContextOptions(new Browser.NewContextOptions()
.setViewportSize(config.getPlaywrightViewportWidth(), config.getPlaywrightViewportHeight())
.setServiceWorkers(ServiceWorkerPolicy.BLOCK)
.setUserAgent(
"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36"))
.setLaunchOptions(new LaunchOptions()
.setSlowMo(config.getPlaywrightSlowMo())
.setArgs(getArguments()));
}
private List<String> getArguments() {
List<String> arguments = new ArrayList<>();
arguments.add("--no-sandbox");
arguments.add("--disable-dev-shm-usage");
arguments.add("--disable-gpu");
arguments.add("--disable-blink-features=AutomationControlled");
arguments.add("--no-first-run");
arguments.add("--no-default-browser-check");
arguments.add("--disable-first-run-ui");
arguments.add("--disable-notifications");
arguments.add("--disable-popup-blocking");
arguments.add("--disable-search-engine-choice-screen");
arguments.add("--ignore-certificate-errors");
arguments.add("--font-render-hinting=none");
arguments.add("--password-store=basic");
return arguments;
}
}
test method
@BeforeEach
void setupPlaywright(Page page, BrowserContext browserContext) {
browserContext.addInitScript("Object.defineProperty(navigator, 'webdriver', {get: () => undefined});");
playwrightNetworkRecorder.startRecording(browserContext);
devToolsRecorder.startRecording(browserContext);
browserContext.tracing().start(new Tracing.StartOptions()
.setScreenshots(true)
.setSnapshots(true)
.setSources(true));
}
Expected behavior
I expected chrome to run successfully without errors
Actual behavior
Chrome failed to start with error
[pid=1149][err] chrome_crashpad_handler: --database is required
[pid=1149][err] Try 'chrome_crashpad_handler --help' for more information.
Additional context
No response
Environment
Java version: 21
Maven: 3.9.6
Browser: Chrome
Docker Image: mcr.microsoft.com/playwright/java:v1.58.0-noble
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels