fast-browser-with-jev
This commit is contained in:
@@ -0,0 +1,57 @@
|
||||
{
|
||||
"version": 1,
|
||||
"id": "local-form",
|
||||
"description": "Offline exact-name form smoke test against the disposable fixture.",
|
||||
"fixture": {
|
||||
"baseUrl": "http://127.0.0.1:8765",
|
||||
"server": {
|
||||
"mode": "managed",
|
||||
"start": { "command": "python3", "args": ["-m", "http.server", "8765", "--bind", "127.0.0.1", "--directory", "extensions/fast-browser/fixtures"], "cwd": "." },
|
||||
"readiness": { "url": "http://127.0.0.1:8765/form.html", "expectedStatus": 200 }
|
||||
}
|
||||
},
|
||||
"settings": {
|
||||
"allowedOrigins": ["http://127.0.0.1:8765"],
|
||||
"browser": {
|
||||
"mode": "launch",
|
||||
"product": "chromium",
|
||||
"headless": true,
|
||||
"startUrl": "http://127.0.0.1:8765/form.html"
|
||||
}
|
||||
},
|
||||
"hooks": {
|
||||
"reset": {
|
||||
"argv": ["node", "extensions/fast-browser/scenarios/examples/reset-local-fixture.mjs"],
|
||||
"cwd": ".",
|
||||
"env": {
|
||||
"FAST_BROWSER_FIXTURE_MODE": {"env": "FAST_BROWSER_FIXTURE_MODE"}
|
||||
},
|
||||
"timeoutMs": 2000
|
||||
}
|
||||
},
|
||||
"operations": [
|
||||
{
|
||||
"op": "step",
|
||||
"step": {
|
||||
"instruction": "Display name",
|
||||
"action": "fill",
|
||||
"text": "Ada"
|
||||
}
|
||||
},
|
||||
{
|
||||
"op": "step",
|
||||
"step": {
|
||||
"instruction": "Continue",
|
||||
"action": "click",
|
||||
"postcondition": {
|
||||
"kind": "text",
|
||||
"value": "Fixture complete"
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"evidence": {
|
||||
"onFailure": true,
|
||||
"onRequest": false
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,60 @@
|
||||
{
|
||||
"version": 1,
|
||||
"id": "local-login",
|
||||
"description": "Offline login fixture using a local environment credential reference.",
|
||||
"fixture": {
|
||||
"baseUrl": "http://127.0.0.1:8765",
|
||||
"server": {
|
||||
"mode": "managed",
|
||||
"start": { "command": "python3", "args": ["-m", "http.server", "8765", "--bind", "127.0.0.1", "--directory", "extensions/fast-browser/fixtures"], "cwd": "." },
|
||||
"readiness": { "url": "http://127.0.0.1:8765/login.html", "expectedStatus": 200 }
|
||||
}
|
||||
},
|
||||
"settings": {
|
||||
"allowedOrigins": ["http://127.0.0.1:8765"],
|
||||
"browser": {
|
||||
"mode": "launch",
|
||||
"product": "chromium",
|
||||
"headless": true,
|
||||
"startUrl": "http://127.0.0.1:8765/login.html"
|
||||
}
|
||||
},
|
||||
"credentials": {
|
||||
"fixturePassword": {
|
||||
"env": "FAST_BROWSER_TEST_PASSWORD"
|
||||
}
|
||||
},
|
||||
"operations": [
|
||||
{
|
||||
"op": "step",
|
||||
"step": {
|
||||
"instruction": "Username",
|
||||
"action": "fill",
|
||||
"text": "demo-user"
|
||||
}
|
||||
},
|
||||
{
|
||||
"op": "step",
|
||||
"step": {
|
||||
"instruction": "Password",
|
||||
"action": "fill",
|
||||
"credential": "fixturePassword"
|
||||
}
|
||||
},
|
||||
{
|
||||
"op": "step",
|
||||
"step": {
|
||||
"instruction": "Sign in",
|
||||
"action": "click",
|
||||
"postcondition": {
|
||||
"kind": "text",
|
||||
"value": "Test login complete"
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"evidence": {
|
||||
"onFailure": true,
|
||||
"onRequest": false
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
{
|
||||
"version": 1,
|
||||
"id": "local-popup",
|
||||
"description": "Open and inspect the bounded local popup fixture without exposing browser tab IDs.",
|
||||
"fixture": {
|
||||
"baseUrl": "http://127.0.0.1:8765",
|
||||
"server": {
|
||||
"mode": "managed",
|
||||
"start": { "command": "python3", "args": ["-m", "http.server", "8765", "--bind", "127.0.0.1", "--directory", "extensions/fast-browser/fixtures"], "cwd": "." },
|
||||
"readiness": { "url": "http://127.0.0.1:8765/scenario-suite.html", "expectedStatus": 200 }
|
||||
}
|
||||
},
|
||||
"settings": {
|
||||
"allowedOrigins": ["http://127.0.0.1:8765"],
|
||||
"browser": {
|
||||
"mode": "launch",
|
||||
"product": "chromium",
|
||||
"headless": true,
|
||||
"startUrl": "http://127.0.0.1:8765/scenario-suite.html"
|
||||
}
|
||||
},
|
||||
"operations": [
|
||||
{
|
||||
"op": "navigate",
|
||||
"request": { "url": "http://127.0.0.1:8765/scenario-suite.html" }
|
||||
},
|
||||
{
|
||||
"op": "step",
|
||||
"step": {
|
||||
"instruction": "Open local popup",
|
||||
"action": "click",
|
||||
"postcondition": { "kind": "text", "value": "Popup opened" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"op": "waitPopup",
|
||||
"id": "popup",
|
||||
"request": { "opener": { "source": "initial", "target": "selected" } }
|
||||
},
|
||||
{
|
||||
"op": "read",
|
||||
"request": {
|
||||
"tab": { "source": "operation", "operation": { "id": "popup" }, "result": "popup" }
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
// Trusted, disposable fixture reset hook. It intentionally does not touch a
|
||||
// database, accounts, named profiles, or any user-managed state.
|
||||
if (process.env.FAST_BROWSER_FIXTURE_MODE && process.env.FAST_BROWSER_FIXTURE_MODE !== "local") {
|
||||
process.exitCode = 2;
|
||||
}
|
||||
Reference in New Issue
Block a user