I am facing a strange behaviour without any changes in setup or pipeline of the suite. Last I upgraded to latest versions 2 weeks back and it was running smooth on jenkins till 2 days back.
Some of my tests are failing at the suite setup New Browser keyword with following error:
`Suite setup failed:
TimeoutError: browserType.launch: Timeout 30000ms exceeded.
Call log:
My New Browser Keyword looks like this
New Browser
... headless=${HEADLESS_MODE}
... channel=${BROWSER_CHANNEL}
... args=["--start-maximized"]
Pipeline is docker based with following additional args executed
FROM ghcr.io/marketsquare/robotframework-browser/rfbrowser-stable:19.5
USER root
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update
&& apt-get install -y locales
&& sed -i -e 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen
&& dpkg-reconfigure --frontend=noninteractive locales
&& update-locale LANG=en_US.UTF-8
&& npx playwright install chrome
&& npx playwright install msedge
this is happening for both channel chrome as well and msedge
playwright logs showing following
{"level":30,"time":"2025-06-03T09:08:45.815Z","pid":1043,"hostname":"02f65cf25172","msg":"Listening on 127.0.0.1:52497"}
(node:1043) DeprecationWarning: Calling start() is no longer necessary. It can be safely omitted.
(Use node --trace-deprecation ... to show where the warning was created)
{"level":30,"time":"2025-06-03T09:08:45.874Z","pid":1043,"hostname":"02f65cf25172","msg":"Start of node method initializeExtension"}
{"level":30,"time":"2025-06-03T09:08:45.875Z","pid":1043,"hostname":"02f65cf25172","msg":"Initializing extension: /home/ubuntu/workspace/TestSuite/Common/GenericIntegrationTestSuite/dashboard-test-suite/scripts/jsextension/index.js"}
{"level":30,"time":"2025-06-03T09:08:45.877Z","pid":1043,"hostname":"02f65cf25172","msg":"End of node method initializeExtension"}
{"level":30,"time":"2025-06-03T09:08:45.876Z","pid":1043,"hostname":"02f65cf25172","msg":"Adding 2 keywords from JS Extension"}
{"level":30,"time":"2025-06-03T09:08:51.085Z","pid":1043,"hostname":"02f65cf25172","msg":"Start of node method getBrowserCatalog"}
{"level":30,"time":"2025-06-03T09:08:51.086Z","pid":1043,"hostname":"02f65cf25172","msg":"End of node method getBrowserCatalog"}
{"level":30,"time":"2025-06-03T09:08:51.107Z","pid":1043,"hostname":"02f65cf25172","msg":"Start of node method newBrowser"}
{"level":30,"time":"2025-06-03T09:09:21.135Z","pid":1043,"hostname":"02f65cf25172","msg":"Error of node method newBrowser"}
================= Original suppressed error =================
browserType.launch: Timeout 30000ms exceeded.
Call log:
/opt/google/chrome/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=AcceptCHFrame,AutoExpandDetailsElement,AvoidUnnecessaryBeforeUnloadCheckSync,CertificateTransparencyComponentUpdater,DeferRendererTasksAfterInput,DestroyProfileOnBrowserClose,DialMediaRouteProvider,ExtensionManifestV2Disabled,GlobalMediaControls,HttpsUpgrades,ImprovedCookieControls,LazyFrameLoading,LensOverlay,MediaRouter,PaintHolding,ThirdPartyStoragePartitioning,Translate --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 --start-maximized --user-data-dir=/tmp/playwright_chromiumdev_profile-lmfiCt --remote-debugging-pipe --no-startup-window
pid=1357
[pid=1357][err] [0603/090909.331180:WARNING:chrome/app/chrome_main_linux.cc:80] Read channel stable from /opt/google/chrome/CHROME_VERSION_EXTRA
at _newBrowser (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/index.js:12098:54)
at newBrowser (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/index.js:12618:33)
at PlaywrightServer.newBrowser (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/index.js:13135:34)
at Object.onReceiveHalfClose (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/node_modules/@grpc/grpc-js/build/src/server.js:1461:25)
at BaseServerInterceptingCall.maybePushNextMessage (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/node_modules/@grpc/grpc-js/build/src/server-interceptors.js:575:31)
at BaseServerInterceptingCall.handleEndEvent (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/node_modules/@grpc/grpc-js/build/src/server-interceptors.js:615:14)
at ServerHttp2Stream. (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/node_modules/@grpc/grpc-js/build/src/server-interceptors.js:382:18) {
name: 'TimeoutError'
}
=============================================================
{"level":30,"time":"2025-06-03T09:09:21.224Z","pid":1043,"hostname":"02f65cf25172","msg":"Start of node method takeScreenshot"}
================= Original suppressed error =================
Error: Tried to take screenshot, but no page was open.
at exists (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/index.js:10725:11)
at takeScreenshot (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/index.js:10769:3)
at PlaywrightServer.takeScreenshot (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/index.js:13135:34)
at Object.onReceiveHalfClose (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/node_modules/@grpc/grpc-js/build/src/server.js:1461:25)
at BaseServerInterceptingCall.maybePushNextMessage (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/node_modules/@grpc/grpc-js/build/src/server-interceptors.js:575:31)
at BaseServerInterceptingCall.handleEndEvent (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/node_modules/@grpc/grpc-js/build/src/server-interceptors.js:615:14)
at ServerHttp2Stream. (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/node_modules/@grpc/grpc-js/build/src/server-interceptors.js:382:18)
at ServerHttp2Stream.emit (node:events:530:35)
at endReadableNT (node:internal/streams/readable:1698:12)
at process.processTicksAndRejections (node:internal/process/task_queues:90:21)
=============================================================
{"level":30,"time":"2025-06-03T09:09:21.224Z","pid":1043,"hostname":"02f65cf25172","msg":"Error of node method takeScreenshot"}
{"level":30,"time":"2025-06-03T09:09:21.234Z","pid":1043,"hostname":"02f65cf25172","msg":"Start of node method getBrowserCatalog"}
{"level":30,"time":"2025-06-03T09:09:21.234Z","pid":1043,"hostname":"02f65cf25172","msg":"End of node method getBrowserCatalog"}
{"level":30,"time":"2025-06-03T09:09:21.237Z","pid":1043,"hostname":"02f65cf25172","msg":"Start of node method getErrorMessages"}
================= Original suppressed error =================
Error: Browser has been closed.
at PlaywrightState.getActiveBrowser (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/index.js:12226:15)
at getErrorMessages (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/index.js:12822:35)
at PlaywrightServer.getErrorMessages (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/index.js:13135:34)
at Object.onReceiveHalfClose (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/node_modules/@grpc/grpc-js/build/src/server.js:1461:25)
at BaseServerInterceptingCall.maybePushNextMessage (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/node_modules/@grpc/grpc-js/build/src/server-interceptors.js:575:31)
at BaseServerInterceptingCall.handleEndEvent (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/node_modules/@grpc/grpc-js/build/src/server-interceptors.js:615:14)
at ServerHttp2Stream. (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/node_modules/@grpc/grpc-js/build/src/server-interceptors.js:382:18)
at ServerHttp2Stream.emit (node:events:530:35)
at endReadableNT (node:internal/streams/readable:1698:12)
at process.processTicksAndRejections (node:internal/process/task_queues:90:21)
=============================================================
{"level":30,"time":"2025-06-03T09:09:21.237Z","pid":1043,"hostname":"02f65cf25172","msg":"Error of node method getErrorMessages"}
================= Original suppressed error =================
Error: Tried to take screenshot, but no page was open.
at exists (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/index.js:10725:11)
at takeScreenshot (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/index.js:10769:3)
at PlaywrightServer.takeScreenshot (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/index.js:13135:34)
at Object.onReceiveHalfClose (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/node_modules/@grpc/grpc-js/build/src/server.js:1461:25)
at BaseServerInterceptingCall.maybePushNextMessage (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/node_modules/@grpc/grpc-js/build/src/server-interceptors.js:575:31)
at BaseServerInterceptingCall.handleEndEvent (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/node_modules/@grpc/grpc-js/build/src/server-interceptors.js:615:14)
at ServerHttp2Stream. (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/node_modules/@grpc/grpc-js/build/src/server-interceptors.js:382:18)
at ServerHttp2Stream.emit (node:events:530:35)
at endReadableNT (node:internal/streams/readable:1698:12)
at process.processTicksAndRejections (node:internal/process/task_queues:90:21)
=============================================================
{"level":30,"time":"2025-06-03T09:09:21.362Z","pid":1043,"hostname":"02f65cf25172","msg":"Start of node method takeScreenshot"}
{"level":30,"time":"2025-06-03T09:09:21.363Z","pid":1043,"hostname":"02f65cf25172","msg":"Error of node method takeScreenshot"}
================= Original suppressed error =================
Error: Browser has been closed.
at PlaywrightState.getActiveBrowser (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/index.js:12226:15)
at PlaywrightServer.getActiveBrowser (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/index.js:13122:59)
at PlaywrightServer.setTimeout (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/index.js:13370:57)
at Object.onReceiveHalfClose (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/node_modules/@grpc/grpc-js/build/src/server.js:1461:25)
at BaseServerInterceptingCall.maybePushNextMessage (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/node_modules/@grpc/grpc-js/build/src/server-interceptors.js:575:31)
at BaseServerInterceptingCall.handleEndEvent (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/node_modules/@grpc/grpc-js/build/src/server-interceptors.js:615:14)
at ServerHttp2Stream. (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/node_modules/@grpc/grpc-js/build/src/server-interceptors.js:382:18)
at ServerHttp2Stream.emit (node:events:530:35)
at endReadableNT (node:internal/streams/readable:1698:12)
at process.processTicksAndRejections (node:internal/process/task_queues:90:21)
=============================================================
{"level":30,"time":"2025-06-03T09:09:21.373Z","pid":1043,"hostname":"02f65cf25172","msg":"Start of node method getBrowserCatalog"}
{"level":30,"time":"2025-06-03T09:09:21.373Z","pid":1043,"hostname":"02f65cf25172","msg":"End of node method getBrowserCatalog"}
{"level":30,"time":"2025-06-03T09:09:21.377Z","pid":1043,"hostname":"02f65cf25172","msg":"Start of node method getBrowserCatalog"}
{"level":30,"time":"2025-06-03T09:09:21.377Z","pid":1043,"hostname":"02f65cf25172","msg":"End of node method getBrowserCatalog"}
================= Original suppressed error =================
Error: Browser has been closed.
at PlaywrightState.getActiveBrowser (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/index.js:12226:15)
at PlaywrightServer.getActiveBrowser (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/index.js:13122:59)
at PlaywrightServer.setTimeout (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/index.js:13370:57)
at Object.onReceiveHalfClose (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/node_modules/@grpc/grpc-js/build/src/server.js:1461:25)
at BaseServerInterceptingCall.maybePushNextMessage (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/node_modules/@grpc/grpc-js/build/src/server-interceptors.js:575:31)
at BaseServerInterceptingCall.handleEndEvent (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/node_modules/@grpc/grpc-js/build/src/server-interceptors.js:615:14)
at ServerHttp2Stream. (/home/pwuser/.venv/lib/python3.12/site-packages/Browser/wrapper/node_modules/@grpc/grpc-js/build/src/server-interceptors.js:382:18)
at ServerHttp2Stream.emit (node:events:530:35)
at endReadableNT (node:internal/streams/readable:1698:12)
at process.processTicksAndRejections (node:internal/process/task_queues:90:21)
=============================================================
{"level":30,"time":"2025-06-03T09:09:21.379Z","pid":1043,"hostname":"02f65cf25172","msg":"Start of node method switchBrowser"}
{"level":30,"time":"2025-06-03T09:09:21.379Z","pid":1043,"hostname":"02f65cf25172","msg":"End of node method switchBrowser"}
{"level":30,"time":"2025-06-03T09:09:21.382Z","pid":1043,"hostname":"02f65cf25172","msg":"Start of node method closeBrowser"}
{"level":30,"time":"2025-06-03T09:09:21.382Z","pid":1043,"hostname":"02f65cf25172","msg":"End of node method closeBrowser"}
{"level":30,"time":"2025-06-03T09:09:21.386Z","pid":1043,"hostname":"02f65cf25172","msg":"Start of node method getBrowserCatalog"}
{"level":30,"time":"2025-06-03T09:09:21.386Z","pid":1043,"hostname":"02f65cf25172","msg":"End of node method getBrowserCatalog"}
{"level":30,"time":"2025-06-03T09:09:21.391Z","pid":1043,"hostname":"02f65cf25172","msg":"Start of node method closeAllBrowsers"}
Any guidance on how to resolve and debug this issue is helpful. Thanks!
--
You received this message because you are subscribed to the Google Groups "robotframework-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to robotframework-u...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/robotframework-users/f70d659c-235d-4135-b093-4133e932b78dn%40googlegroups.com.
New Browser
... headless=${HEADLESS_MODE}
... channel=${BROWSER_CHANNEL}
... args=["--start-maximized", "-headless=new"]
Please suggest.