Skip to main content
There are two starting points. Either the test doesn’t exist yet and Peeps writes the script, or you already have Playwright tests and want them in Peeps.

Create new test cases

Three ways in, one engine. Cover a gap your agent found. After a coverage check, approve the gaps you want covered.
Create tests for the gaps you found.
Cover what you are building. Start from your branch at a natural milestone.
Cover what I’ve changed on this branch.
These cases carry where they came from — the repository, the commits and the PR — so the team can see which change each test came from. Add one specific test. For a gap you already know about.
Add a test that verifies expired password-reset links are rejected.
Your agent searches first and reports anything similar. Then it drafts the steps for your approval and creates the case.

What a new test case is

  • It is active, attributed to you, and filed in the folder you approve, if any.
  • It belongs to no suite and no schedule. Add it to those in the Peeps web app.
  • It has no script yet, so it can’t run. The next section gets it one.
Your agent creates up to 50 cases per call, and continues in another call if there are more. If a call is retried, Peeps returns the cases it already created rather than duplicating them.

Get a script for a new test case

You have two options. Let Peeps generate it. Peeps drives your app in a hosted browser and writes a Playwright TypeScript script.
1

Pick an environment

One of your stored Peeps environments. It needs a BASE_URL, which your agent can set once you approve the value.
2

Approve the generation plan

Your agent shows you which scripts will be created, and the host Peeps will drive. A test it depends on with no script gets one too. An existing script of a test it depends on is never replaced.
3

Peeps generates the script

Generation runs in the background and its time varies. Your agent follows it until it finishes.
4

Check publication, then run it

Peeps publishes a generated script automatically, but a script can still end up as a draft. Your agent checks each one. Then it can run the new test with your approval.
You approve three times: the proposed cases, the generation plan, and the run plan. Each is its own decision.
Add a script you wrote. If your agent wrote the test with you, or converted one from another framework, it adds that script to the test case. Your agent shows you each file first. See manage scripts.

Import your existing Playwright tests

Bring my existing Playwright tests into Peeps.
You have two ways in, and your agent asks which you want.

Keep your scripts as they are

This is the peeps-import workflow. Peeps keeps each file’s code exactly as written.
  • New test cases only. Each test in a file becomes its own test case. A file with three tests becomes three cases that share the one file.
  • Files as they are in your checkout. Import is for test files that already existed, unchanged, before this session. A test your agent wrote or changed with you is added as a script instead.
  • Three approvals. You approve the exact files to send, the review of each case, and publishing them.
  • Credentials are moved, not copied. If a file contains a password or API key, Peeps replaces it with a named variable in your default non-production environment. If there is none, your agent asks before creating an environment for the import. Peeps never overwrites an existing variable.
  • Your files on disk never change.
  • Nothing runs until you ask. A published import is not yet validated. Run it to find out whether it passes in Peeps.
Each file must stand on its own: A Python test is imported as a draft. Publishing it is a separate step you approve afterwards. Other frameworks, such as Cypress or Selenium, need converting to Playwright first. Your agent can do that with you, and then adds the result as a new script. You can ask your agent to cancel an import at any time. Cancelling stops the work that hasn’t happened yet. Test cases already created and scripts already published stay.

Convert them into Peeps steps

Your agent reads each test locally and keeps the intent, the assertions and the user flow. It drafts plain-English steps without your selectors — which is where hand-written flakiness usually lives. Peeps stores exactly the steps you approve, so read them first. Then Peeps generates a fresh script from them.

Worked example: importing a Playwright folder

You: Import the tests in e2e/checkout/ into Peeps. Keep my scripts.
Your agent lists the four files in that folder, with one line on each. It explains that any credential it finds will become a variable in your non-production environment, and asks you to approve sending those four files.
You: Approved.
Peeps reports that one file contains a hard-coded password. Your agent moves it into a CHECKOUT_TEST_PASSWORD variable in STAGING and puts {{CHECKOUT_TEST_PASSWORD}} in its place in the copy it sends. Peeps then analyzes the files and finds five tests across them. Your agent shows you the review: one row per test case, with its plain-English steps and what the import will create. You approve the five cases.
You: Those look right.
Your agent then asks separately whether to publish the five scripts, so future runs use them.
You: Publish them.
Five new test cases are created, each with its script published. Your agent then offers to run one of them, which starts with a run plan for you to approve.