{
"config": {
"configFile": "D:\\Coding\\gymflow\\playwright.config.ts",
"rootDir": "D:/Coding/gymflow/tests",
"forbidOnly": false,
"fullyParallel": false,
"globalSetup": null,
"globalTeardown": null,
"globalTimeout": 0,
"grep": {},
"grepInvert": null,
"maxFailures": 0,
"metadata": {
"actualWorkers": 1
},
"preserveOutput": "always",
"reporter": [
[
"json"
]
],
"reportSlowTests": {
"max": 5,
"threshold": 300000
},
"quiet": false,
"projects": [
{
"outputDir": "D:/Coding/gymflow/test-results",
"repeatEach": 1,
"retries": 0,
"metadata": {
"actualWorkers": 1
},
"id": "chromium",
"name": "chromium",
"testDir": "D:/Coding/gymflow/tests",
"testIgnore": [],
"testMatch": [
"**/*.@(spec|test).?(c|m)[jt]s?(x)"
],
"timeout": 60000
}
],
"shard": null,
"tags": [],
"updateSnapshots": "missing",
"updateSourceMethod": "patch",
"version": "1.57.0",
"workers": 1,
"webServer": null
},
"suites": [
{
"title": "02_workout_management.spec.ts",
"file": "02_workout_management.spec.ts",
"column": 0,
"line": 0,
"specs": [],
"suites": [
{
"title": "II. Workout Management",
"file": "02_workout_management.spec.ts",
"line": 6,
"column": 6,
"specs": [],
"suites": [
{
"title": "B. Exercise Library",
"file": "02_workout_management.spec.ts",
"line": 386,
"column": 10,
"specs": [
{
"title": "2.15 B. Exercise Library - Edit to Unilateral & Verify Logger",
"ok": false,
"tags": [],
"tests": [
{
"timeout": 60000,
"annotations": [],
"expectedStatus": "passed",
"projectId": "chromium",
"projectName": "chromium",
"results": [
{
"workerIndex": 0,
"parallelIndex": 0,
"status": "failed",
"duration": 4082,
"error": {
"message": "Error: locator.click: Error: strict mode violation: getByRole('button', { name: 'Tracker' }) resolved to 2 elements:\n 1) aka getByRole('button', { name: 'Tracker', exact: true })\n 2) aka getByRole('button', { name: 'Weight Tracker' })\n\nCall log:\n\u001b[2m - waiting for getByRole('button', { name: 'Tracker' })\u001b[22m\n",
"stack": "Error: locator.click: Error: strict mode violation: getByRole('button', { name: 'Tracker' }) resolved to 2 elements:\n 1) aka getByRole('button', { name: 'Tracker', exact: true })\n 2) aka getByRole('button', { name: 'Weight Tracker' })\n\nCall log:\n\u001b[2m - waiting for getByRole('button', { name: 'Tracker' })\u001b[22m\n\n at D:\\Coding\\gymflow\\tests\\02_workout_management.spec.ts:601:65",
"location": {
"file": "D:\\Coding\\gymflow\\tests\\02_workout_management.spec.ts",
"column": 65,
"line": 601
},
"snippet": "\u001b[0m \u001b[90m 599 |\u001b[39m\n \u001b[90m 600 |\u001b[39m \u001b[90m// 4. Verify in Tracker\u001b[39m\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 601 |\u001b[39m \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgetByRole(\u001b[32m'button'\u001b[39m\u001b[33m,\u001b[39m { name\u001b[33m:\u001b[39m \u001b[32m'Tracker'\u001b[39m })\u001b[33m.\u001b[39mclick()\u001b[33m;\u001b[39m\n \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 602 |\u001b[39m\n \u001b[90m 603 |\u001b[39m \u001b[90m// Select the exercise\u001b[39m\n \u001b[90m 604 |\u001b[39m \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgetByRole(\u001b[32m'textbox'\u001b[39m\u001b[33m,\u001b[39m { name\u001b[33m:\u001b[39m \u001b[32m'Select Exercise'\u001b[39m })\u001b[33m.\u001b[39mfill(exName)\u001b[33m;\u001b[39m\u001b[0m"
},
"errors": [
{
"location": {
"file": "D:\\Coding\\gymflow\\tests\\02_workout_management.spec.ts",
"column": 65,
"line": 601
},
"message": "Error: locator.click: Error: strict mode violation: getByRole('button', { name: 'Tracker' }) resolved to 2 elements:\n 1) aka getByRole('button', { name: 'Tracker', exact: true })\n 2) aka getByRole('button', { name: 'Weight Tracker' })\n\nCall log:\n\u001b[2m - waiting for getByRole('button', { name: 'Tracker' })\u001b[22m\n\n\n 599 |\n 600 | // 4. Verify in Tracker\n> 601 | await page.getByRole('button', { name: 'Tracker' }).click();\n | ^\n 602 |\n 603 | // Select the exercise\n 604 | await page.getByRole('textbox', { name: 'Select Exercise' }).fill(exName);\n at D:\\Coding\\gymflow\\tests\\02_workout_management.spec.ts:601:65"
}
],
"stdout": [],
"stderr": [],
"retry": 0,
"startTime": "2025-12-17T16:44:41.551Z",
"annotations": [],
"attachments": [
{
"name": "error-context",
"contentType": "text/markdown",
"path": "D:\\Coding\\gymflow\\test-results\\02_workout_management-II-W-e70e4-to-Unilateral-Verify-Logger-chromium\\error-context.md"
}
],
"errorLocation": {
"file": "D:\\Coding\\gymflow\\tests\\02_workout_management.spec.ts",
"column": 65,
"line": 601
}
}
],
"status": "unexpected"
}
],
"id": "b0ff013673da5d0fc38f-f9a248c29340aa38080e",
"file": "02_workout_management.spec.ts",
"line": 573,
"column": 9
}
]
}
]
}
]
}
],
"errors": [],
"stats": {
"startTime": "2025-12-17T16:44:40.588Z",
"duration": 5268.128000000001,
"expected": 0,
"skipped": 0,
"unexpected": 1,
"flaky": 0
}
}