Getting started
Run your Playwright tests on real browsers we host, instead of on your own computer.
Playwright normally opens a browser on your own computer. Here it opens one of ours instead.
That is the only change. You point Playwright at an address, and everything else in your tests stays exactly as it is — there is nothing of ours to install.
const browser = await chromium.connect("wss://hub.testkase.com/playwright?capabilities=…");Two ways to do it
Way 1 — our command-line tool
Best if you already have tests.
You change nothing in them. Your test files and your playwright.config.ts stay exactly as they are, and one small file called testkase.yml says which browser to use. The tool also names each test and groups the run for you.
It only works with JavaScript and TypeScript.
Way 2 — write the address yourself
Best if you are starting a new script, or if you work in Python, Java or .NET, which the tool does not cover.
You add the connect address to your code, and you decide what to send with it.
→ JavaScript · Python · Java · .NET
What you need first
Your access key, from the Access key page. It goes in testkase:options.accessKey, or in accessKey in testkase.yml.
Where to go next
| Capabilities | Everything you can ask for, one line each |
| What each browser records | Video, console, network and driver — who gives you what |
| Marking tests | Report pass or fail, and split one session into many tests |
| Running tests in parallel | Workers, grouping, and the two ceilings |
| Coming from Selenium | The three differences that change behaviour silently |
Questions
▶Do I need a TestKase package installed?
Only for the CLI wrapper. Connecting yourself needs nothing but Playwright — the address carries everything.
▶Which browsers can I run?
Chrome, Edge, Firefox and Safari. Firefox and Safari are Playwright's own builds, which is why you may see them called pw-firefox and pw-webkit; you can write the ordinary names.
▶Does my Playwright version matter?
We read it from your connection and match it. Pin testkase:options.playwrightVersion only if your CI strips that header.
