I am new to playwright and can someone help me how to resolve this error?
This is the browser initiation method in base test
public void initBrowser() {
playwright = Playwright.create();
String headless = config.headLess;
boolean isHeadless = Boolean.parseBoolean(headless);
browser = playwright.chromium().launch(new BrowserType.LaunchOptions().setHeadless(isHeadless));
System.out.println(browser);
context = browser.newContext();
System.out.println(context);
page = context.newPage();
}
This is the closeBrowser method in base test
public void closeBrowser() {
context.close();
browser.close();
playwright.close();
}
This is the hooks class
public class Hooks { BasePage basePage = new BasePage();
@Before
public void setup() {
basePage.initBrowser();
}
@After
public void tearDown() {
basePage.closeBrowser();
}
}
When run the code I see this error. Browser opens, but closes straightaway without running further steps. Framework is BDD(cucumber) with playwright and Java.This issue is only when run on the code using chromium on mac machine(we ran this code on windows and all looks good). This code also worked fine on Firefox and Webkit (mac/windows both).
com.microsoft.playwright.impl.BrowserImpl@28276e50
com.microsoft.playwright.impl.BrowserContextImpl@36b0fcd5
com.microsoft.playwright.PlaywrightException: Error {
message='Target page, context or browser has been closed
name='TargetClosedError
stack='TargetClosedError:Target page, context or browser has been closed
Error
at captureRawStack (/private/var/folders/y1/hjtdt91x4r55hpcdsg5v_2vh0000gp/T/playwright-java-15087204804003979156/package/lib/utils/stackTrace.js:50:17)
at LongStandingScope._race (/private/var/folders/y1/hjtdt91x4r55hpcdsg5v_2vh0000gp/T/playwright-java-15087204804003979156/package/lib/utils/manualPromise.js:91:52)
at LongStandingScope.race (/private/var/folders/y1/hjtdt91x4r55hpcdsg5v_2vh0000gp/T/playwright-java-15087204804003979156/package/lib/utils/manualPromise.js:84:17)
at BrowserContextDispatcher._handleCommand (/private/var/folders/y1/hjtdt91x4r55hpcdsg5v_2vh0000gp/T/playwright-java-15087204804003979156/package/lib/server/dispatchers/dispatcher.js:96:36)
at DispatcherConnection.dispatch (/private/var/folders/y1/hjtdt91x4r55hpcdsg5v_2vh0000gp/T/playwright-java-15087204804003979156/package/lib/server/dispatchers/dispatcher.js:362:39)
}
at com.microsoft.playwright.impl.WaitableResult.get(WaitableResult.java:54)
at com.microsoft.playwright.impl.ChannelOwner.runUntil(ChannelOwner.java:120)
at com.microsoft.playwright.impl.Connection.sendMessage(Connection.java:129)
at com.microsoft.playwright.impl.ChannelOwner.sendMessage(ChannelOwner.java:106)
at com.microsoft.playwright.impl.ChannelOwner.sendMessage(ChannelOwner.java:101)
at com.microsoft.playwright.impl.BrowserContextImpl.newPageImpl(BrowserContextImpl.java:419)
at com.microsoft.playwright.impl.BrowserContextImpl.lambda$newPage$13(BrowserContextImpl.java:412)
at com.microsoft.playwright.impl.LoggingSupport.withLogging(LoggingSupport.java:47)
at com.microsoft.playwright.impl.ChannelOwner.withLogging(ChannelOwner.java:89)
at com.microsoft.playwright.impl.BrowserContextImpl.newPage(BrowserContextImpl.java:412)
at com.microsoft.playwright.impl.BrowserContextImpl.newPage(BrowserContextImpl.java:44)
at pages.BasePage.initBrowser(BasePage.java:24)
at hooks.Hooks.setup(Hooks.java:12)
Caused by: com.microsoft.playwright.impl.TargetClosedError: Error {
message='Target page, context or browser has been closed
name='TargetClosedError
stack='TargetClosedError:Target page, context or browser has been closed
Error
I am new to playwright and can someone help me how to resolve this error?
This is the browser initiation method in base test
public void initBrowser() {
playwright = Playwright.create();
String headless = config.headLess;
boolean isHeadless = Boolean.parseBoolean(headless);
browser = playwright.chromium().launch(new BrowserType.LaunchOptions().setHeadless(isHeadless));
System.out.println(browser);
context = browser.newContext();
System.out.println(context);
page = context.newPage();
}
This is the closeBrowser method in base test
public void closeBrowser() {
context.close();
browser.close();
playwright.close();
}
This is the hooks class
public class Hooks { BasePage basePage = new BasePage();
@Before
public void setup() {
basePage.initBrowser();
}
@After
public void tearDown() {
basePage.closeBrowser();
}
}
When run the code I see this error. Browser opens, but closes straightaway without running further steps. Framework is BDD(cucumber) with playwright and Java.This issue is only when run on the code using chromium on mac machine(we ran this code on windows and all looks good). This code also worked fine on Firefox and Webkit (mac/windows both).
com.microsoft.playwright.impl.BrowserImpl@28276e50
com.microsoft.playwright.impl.BrowserContextImpl@36b0fcd5
com.microsoft.playwright.PlaywrightException: Error {
message='Target page, context or browser has been closed
name='TargetClosedError
stack='TargetClosedError:Target page, context or browser has been closed
Error
at captureRawStack (/private/var/folders/y1/hjtdt91x4r55hpcdsg5v_2vh0000gp/T/playwright-java-15087204804003979156/package/lib/utils/stackTrace.js:50:17)
at LongStandingScope._race (/private/var/folders/y1/hjtdt91x4r55hpcdsg5v_2vh0000gp/T/playwright-java-15087204804003979156/package/lib/utils/manualPromise.js:91:52)
at LongStandingScope.race (/private/var/folders/y1/hjtdt91x4r55hpcdsg5v_2vh0000gp/T/playwright-java-15087204804003979156/package/lib/utils/manualPromise.js:84:17)
at BrowserContextDispatcher._handleCommand (/private/var/folders/y1/hjtdt91x4r55hpcdsg5v_2vh0000gp/T/playwright-java-15087204804003979156/package/lib/server/dispatchers/dispatcher.js:96:36)
at DispatcherConnection.dispatch (/private/var/folders/y1/hjtdt91x4r55hpcdsg5v_2vh0000gp/T/playwright-java-15087204804003979156/package/lib/server/dispatchers/dispatcher.js:362:39)
}
at com.microsoft.playwright.impl.WaitableResult.get(WaitableResult.java:54)
at com.microsoft.playwright.impl.ChannelOwner.runUntil(ChannelOwner.java:120)
at com.microsoft.playwright.impl.Connection.sendMessage(Connection.java:129)
at com.microsoft.playwright.impl.ChannelOwner.sendMessage(ChannelOwner.java:106)
at com.microsoft.playwright.impl.ChannelOwner.sendMessage(ChannelOwner.java:101)
at com.microsoft.playwright.impl.BrowserContextImpl.newPageImpl(BrowserContextImpl.java:419)
at com.microsoft.playwright.impl.BrowserContextImpl.lambda$newPage$13(BrowserContextImpl.java:412)
at com.microsoft.playwright.impl.LoggingSupport.withLogging(LoggingSupport.java:47)
at com.microsoft.playwright.impl.ChannelOwner.withLogging(ChannelOwner.java:89)
at com.microsoft.playwright.impl.BrowserContextImpl.newPage(BrowserContextImpl.java:412)
at com.microsoft.playwright.impl.BrowserContextImpl.newPage(BrowserContextImpl.java:44)
at pages.BasePage.initBrowser(BasePage.java:24)
at hooks.Hooks.setup(Hooks.java:12)
Caused by: com.microsoft.playwright.impl.TargetClosedError: Error {
message='Target page, context or browser has been closed
name='TargetClosedError
stack='TargetClosedError:Target page, context or browser has been closed
Error
Share
Improve this question
edited Jan 21 at 14:45
ggorlen
56.9k8 gold badges110 silver badges150 bronze badges
asked Jan 20 at 16:13
PrasaPrasa
51 silver badge3 bronze badges
1
- This problem was solved by adding latest playwright dependancy 1.49.0 – Prasa Commented Jan 22 at 11:09
1 Answer
Reset to default 0Adding latest playwright dependancy solved this issue
<dependency>
<groupId>com.microsoft.playwright</groupId>
<artifactId>playwright</artifactId>
<version>1.49.0</version>
</dependency>