@testdriverai/agent 7.11.150-test → 7.11.151-canary
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ai/skills/testdriver-agent/SKILL.md +15 -15
- package/ai/skills/testdriver-aws-setup/SKILL.md +6 -6
- package/ai/skills/testdriver-cache/SKILL.md +8 -8
- package/ai/skills/testdriver-caching/SKILL.md +10 -9
- package/ai/skills/testdriver-captcha/SKILL.md +7 -7
- package/ai/skills/testdriver-ci-cd/SKILL.md +10 -10
- package/ai/skills/testdriver-claude-mcp-plugin/SKILL.md +37 -0
- package/ai/skills/testdriver-client/SKILL.md +3 -166
- package/ai/skills/testdriver-customizing-devices/SKILL.md +1 -1
- package/ai/skills/testdriver-dashcam/SKILL.md +3 -3
- package/ai/skills/testdriver-debugging-with-screenshots/SKILL.md +5 -5
- package/ai/skills/testdriver-elements/SKILL.md +5 -5
- package/ai/skills/testdriver-errors/SKILL.md +3 -3
- package/ai/skills/testdriver-events/SKILL.md +3 -3
- package/ai/skills/testdriver-extract/SKILL.md +5 -5
- package/ai/skills/testdriver-find/SKILL.md +1 -1
- package/ai/skills/testdriver-generating-tests/SKILL.md +6 -6
- package/ai/skills/testdriver-hosted/SKILL.md +4 -4
- package/ai/skills/testdriver-interacting-with-your-app/SKILL.md +197 -0
- package/ai/skills/testdriver-locating-elements/SKILL.md +390 -39
- package/ai/skills/testdriver-making-assertions/SKILL.md +4 -4
- package/ai/skills/testdriver-options/SKILL.md +319 -0
- package/ai/skills/testdriver-parse/SKILL.md +8 -8
- package/ai/skills/testdriver-performing-actions/SKILL.md +7 -7
- package/ai/skills/testdriver-provision/SKILL.md +7 -7
- package/ai/skills/testdriver-quickstart/SKILL.md +15 -441
- package/ai/skills/testdriver-quickstart-cli/SKILL.md +436 -0
- package/ai/skills/testdriver-quickstart-github/SKILL.md +53 -0
- package/ai/skills/testdriver-quickstart-manual/SKILL.md +134 -0
- package/ai/skills/testdriver-redraw/SKILL.md +6 -6
- package/ai/skills/testdriver-reusable-code/SKILL.md +3 -3
- package/ai/skills/testdriver-screenshots/SKILL.md +3 -3
- package/ai/skills/testdriver-secrets/SKILL.md +4 -4
- package/ai/skills/testdriver-self-hosted/SKILL.md +6 -6
- package/ai/skills/testdriver-test-results-json/SKILL.md +4 -4
- package/ai/skills/testdriver-variables/SKILL.md +2 -2
- package/ai/skills/testdriver-wait/SKILL.md +2 -2
- package/package.json +1 -1
|
@@ -6,11 +6,11 @@ description: Capture and manage screenshots during test execution
|
|
|
6
6
|
|
|
7
7
|
## Overview
|
|
8
8
|
|
|
9
|
-
TestDriver can capture screenshots
|
|
9
|
+
TestDriver can capture screenshots by hand at any point during a test. It can also capture them automatically before and after each command. TestDriver saves the screenshots to a structured directory. This makes debug easy.
|
|
10
10
|
|
|
11
11
|
## Manual Screenshots
|
|
12
12
|
|
|
13
|
-
Use `testdriver.screenshot()` to capture the
|
|
13
|
+
Use `testdriver.screenshot()` to capture the present screen:
|
|
14
14
|
|
|
15
15
|
```javascript
|
|
16
16
|
const path = await testdriver.screenshot();
|
|
@@ -25,7 +25,7 @@ await testdriver.screenshot(filename?)
|
|
|
25
25
|
```
|
|
26
26
|
|
|
27
27
|
<ParamField path="filename" type="string">
|
|
28
|
-
|
|
28
|
+
A custom filename for the screenshot. TestDriver adds `.png` automatically if it is not there. If you do not give this, the default is `screenshot-<timestamp>.png`.
|
|
29
29
|
</ParamField>
|
|
30
30
|
|
|
31
31
|
**Returns:** `Promise<string>` — the absolute file path of the saved screenshot.
|
|
@@ -4,11 +4,11 @@ description: Securely manage passwords and sensitive data in your tests
|
|
|
4
4
|
---
|
|
5
5
|
<!-- Generated from secrets.mdx. DO NOT EDIT. -->
|
|
6
6
|
|
|
7
|
-
Protect sensitive information
|
|
7
|
+
Protect sensitive information such as passwords, API keys, and tokens in your TestDriver tests.
|
|
8
8
|
|
|
9
9
|
## Typing Secrets Securely
|
|
10
10
|
|
|
11
|
-
When
|
|
11
|
+
When you type sensitive information such as passwords, use the `secret: true` option. This stops TestDriver from a log or a store of the value:
|
|
12
12
|
|
|
13
13
|
```javascript
|
|
14
14
|
import { test } from 'vitest';
|
|
@@ -32,12 +32,12 @@ test('login with secure password', async (context) => {
|
|
|
32
32
|
```
|
|
33
33
|
|
|
34
34
|
<Note>
|
|
35
|
-
When `secret: true
|
|
35
|
+
When you set `secret: true`, the typed text shows as `****` in all logs, recordings, and dashcam output.
|
|
36
36
|
</Note>
|
|
37
37
|
|
|
38
38
|
## Storing Secrets in GitHub
|
|
39
39
|
|
|
40
|
-
Store sensitive credentials as GitHub repository secrets
|
|
40
|
+
Store sensitive credentials as GitHub repository secrets. Then they are never in your code:
|
|
41
41
|
|
|
42
42
|
<Steps>
|
|
43
43
|
<Step title="Navigate to Repository Settings">
|
|
@@ -4,26 +4,26 @@ description: Our enterprise solution with unlimited test execution, assisted set
|
|
|
4
4
|
---
|
|
5
5
|
<!-- Generated from self-hosted.mdx. DO NOT EDIT. -->
|
|
6
6
|
|
|
7
|
-
Self-hosted is our enterprise solution for teams that need unlimited test
|
|
7
|
+
Self-hosted is our enterprise solution. Use it for teams that need unlimited test runs, infrastructure control, and dedicated support. The price uses **parallel test capacity** with a flat license fee. There is no per-second bill.
|
|
8
8
|
|
|
9
9
|
<CardGroup cols={2}>
|
|
10
10
|
<Card title="Unlimited Execution" icon="infinity">
|
|
11
|
-
Run as many tests as you want
|
|
11
|
+
Run as many tests as you want. There is no device-second count. The monthly costs are known.
|
|
12
12
|
</Card>
|
|
13
13
|
<Card title="Assisted Setup & Support" icon="headset">
|
|
14
|
-
Our team helps you deploy, configure, and optimize your infrastructure. Dedicated engineering support included.
|
|
14
|
+
Our team helps you to deploy, configure, and optimize your infrastructure. Dedicated engineering support is included.
|
|
15
15
|
</Card>
|
|
16
16
|
<Card title="Full Control" icon="gear">
|
|
17
|
-
Use your own AI keys, custom hardware, specific software, and network configurations. RDP into test machines for
|
|
17
|
+
Use your own AI keys, custom hardware, specific software, and network configurations. Use RDP into the test machines for debug.
|
|
18
18
|
</Card>
|
|
19
19
|
<Card title="Security & Compliance" icon="shield-check">
|
|
20
|
-
Keep data in your environment. Air-gapped deployment available for regulated industries.
|
|
20
|
+
Keep the data in your environment. Air-gapped deployment is available for regulated industries.
|
|
21
21
|
</Card>
|
|
22
22
|
</CardGroup>
|
|
23
23
|
|
|
24
24
|
## Deployment Options
|
|
25
25
|
|
|
26
|
-
|
|
26
|
+
Select the level of control that you need:
|
|
27
27
|
|
|
28
28
|
| Component | Standard | Air-Gapped |
|
|
29
29
|
|-----------|----------|------------|
|
|
@@ -6,9 +6,9 @@ description: Per-test JSON result files with metadata, versions, and infrastruct
|
|
|
6
6
|
|
|
7
7
|
## Overview
|
|
8
8
|
|
|
9
|
-
TestDriver
|
|
9
|
+
TestDriver writes a JSON result file for each test case after it finishes. These files have full metadata about the test run. This includes the SDK version, the runner version, infrastructure details, interaction statistics, and links to recordings.
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
TestDriver writes the result files to:
|
|
12
12
|
|
|
13
13
|
```
|
|
14
14
|
.testdriver/results/<testFile>/<testName>.json
|
|
@@ -21,12 +21,12 @@ For example, a test file `tests/login.test.mjs` with a test named `"should log i
|
|
|
21
21
|
```
|
|
22
22
|
|
|
23
23
|
<Note>
|
|
24
|
-
|
|
24
|
+
TestDriver makes the test names safe for the file system. It changes special characters to underscores. It cuts the names to 200 characters.
|
|
25
25
|
</Note>
|
|
26
26
|
|
|
27
27
|
## Enabling
|
|
28
28
|
|
|
29
|
-
|
|
29
|
+
You do not need configuration. The TestDriver Vitest reporter plugin writes the JSON files automatically each time the tests run.
|
|
30
30
|
|
|
31
31
|
## JSON Schema
|
|
32
32
|
|
|
@@ -4,11 +4,11 @@ description: Use dynamic data and secure secrets in your tests
|
|
|
4
4
|
---
|
|
5
5
|
<!-- Generated from variables.mdx. DO NOT EDIT. -->
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Make your tests larger with dynamic data and secure secrets. Select the correct method for your test needs.
|
|
8
8
|
|
|
9
9
|
## Environment Variables
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
Use environment variables for **configuration that changes between environments** (dev, staging, production). Also use them for **secrets that you must not commit to the code**. Use this method when you must run the same tests against different servers or with different credentials.
|
|
12
12
|
|
|
13
13
|
```javascript
|
|
14
14
|
import { test } from 'vitest';
|
|
@@ -36,8 +36,8 @@ await testdriver.wait();
|
|
|
36
36
|
|
|
37
37
|
## Best Practices
|
|
38
38
|
|
|
39
|
-
- **Use it for simple delays
|
|
40
|
-
- **Do not use it to wait for an element
|
|
39
|
+
- **Use it for simple delays**. Wait for animations, transitions, or state changes after an action.
|
|
40
|
+
- **Do not use it to wait for an element**. If you wait for a specific element to show, use `find()` with a `timeout` option:
|
|
41
41
|
```javascript
|
|
42
42
|
// ✅ Better for waiting for elements
|
|
43
43
|
const element = await testdriver.find('success message', { timeout: 30000 });
|