testeiya 0.2.0 → 0.3.9
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/LICENSE +21 -0
- package/README.md +37 -175
- package/dist/prompt/context.js +79 -0
- package/dist/prompt/context.js.map +1 -0
- package/dist/prompt/index.js +56 -0
- package/dist/prompt/index.js.map +1 -0
- package/dist/prompt/print.js +22 -0
- package/dist/prompt/print.js.map +1 -0
- package/dist/prompt/project-info.js +2 -0
- package/dist/prompt/project-info.js.map +1 -0
- package/{src/prompt/system-prompt.ts → dist/prompt/system-prompt.js} +24 -21
- package/dist/prompt/system-prompt.js.map +1 -0
- package/dist/prompt/testomatio.js +264 -0
- package/dist/prompt/testomatio.js.map +1 -0
- package/dist/prompt/tools.js +49 -0
- package/dist/prompt/tools.js.map +1 -0
- package/dist/prompt/vocab.js +8 -0
- package/dist/prompt/vocab.js.map +1 -0
- package/dist/src/args.js +72 -0
- package/dist/src/args.js.map +1 -0
- package/dist/src/cli.js +61 -0
- package/dist/src/cli.js.map +1 -0
- package/dist/src/env.js +69 -0
- package/dist/src/env.js.map +1 -0
- package/dist/src/mcp-extension.js +9 -0
- package/dist/src/mcp-extension.js.map +1 -0
- package/dist/src/mcp.js +139 -0
- package/dist/src/mcp.js.map +1 -0
- package/dist/src/model.js +66 -0
- package/dist/src/model.js.map +1 -0
- package/dist/src/result.js +41 -0
- package/dist/src/result.js.map +1 -0
- package/dist/src/run.js +199 -0
- package/dist/src/run.js.map +1 -0
- package/dist/src/session.js +77 -0
- package/dist/src/session.js.map +1 -0
- package/dist/vendor/mcp.js +14801 -0
- package/mcp-tools.json +2967 -0
- package/package.json +29 -41
- package/prompt/context.ts +101 -0
- package/prompt/index.ts +93 -0
- package/prompt/print.ts +23 -0
- package/prompt/project-info.ts +30 -0
- package/prompt/system-prompt.ts +173 -0
- package/{src/prompt → prompt}/testomatio.ts +119 -8
- package/{src/prompt → prompt}/tools.ts +30 -8
- package/prompt/vocab.ts +7 -0
- package/{skills.lock.json → skills/skills.lock.json} +11 -7
- package/skills/skills.yaml +34 -0
- package/models.catalog.json +0 -6963
- package/skills/codeceptjs/ci-fix-tests/SKILL.md +0 -120
- package/skills/codeceptjs/codeceptjs-auth/SKILL.md +0 -158
- package/skills/codeceptjs/codeceptjs-exploration/SKILL.md +0 -91
- package/skills/codeceptjs/codeceptjs-fundamentals/SKILL.md +0 -158
- package/skills/codeceptjs/codeceptjs-run-analysis/SKILL.md +0 -90
- package/skills/codeceptjs/debugging-codeceptjs-tests/SKILL.md +0 -234
- package/skills/codeceptjs/migrate-codeceptjs-4/SKILL.md +0 -110
- package/skills/codeceptjs/migrate-cypress-to-codeceptjs/SKILL.md +0 -306
- package/skills/codeceptjs/migrate-protractor-to-codeceptjs/SKILL.md +0 -352
- package/skills/codeceptjs/migrate-selenium-java-to-codeceptjs/SKILL.md +0 -472
- package/skills/codeceptjs/migrate-testcafe-to-codeceptjs/SKILL.md +0 -350
- package/skills/codeceptjs/refactoring-codeceptjs-tests/SKILL.md +0 -81
- package/skills/codeceptjs/writing-codeceptjs-tests/SKILL.md +0 -206
- package/skills/playwright-best-practices-skill/LICENSE.md +0 -7
- package/skills/playwright-best-practices-skill/README.md +0 -147
- package/skills/playwright-best-practices-skill/SKILL.md +0 -303
- package/skills/playwright-best-practices-skill/advanced/authentication-flows.md +0 -360
- package/skills/playwright-best-practices-skill/advanced/authentication.md +0 -871
- package/skills/playwright-best-practices-skill/advanced/clock-mocking.md +0 -364
- package/skills/playwright-best-practices-skill/advanced/mobile-testing.md +0 -409
- package/skills/playwright-best-practices-skill/advanced/multi-context.md +0 -288
- package/skills/playwright-best-practices-skill/advanced/multi-user.md +0 -393
- package/skills/playwright-best-practices-skill/advanced/network-advanced.md +0 -452
- package/skills/playwright-best-practices-skill/advanced/third-party.md +0 -464
- package/skills/playwright-best-practices-skill/architecture/pom-vs-fixtures.md +0 -363
- package/skills/playwright-best-practices-skill/architecture/test-architecture.md +0 -369
- package/skills/playwright-best-practices-skill/architecture/when-to-mock.md +0 -383
- package/skills/playwright-best-practices-skill/browser-apis/browser-apis.md +0 -391
- package/skills/playwright-best-practices-skill/browser-apis/iframes.md +0 -403
- package/skills/playwright-best-practices-skill/browser-apis/service-workers.md +0 -504
- package/skills/playwright-best-practices-skill/browser-apis/websockets.md +0 -403
- package/skills/playwright-best-practices-skill/core/annotations.md +0 -424
- package/skills/playwright-best-practices-skill/core/assertions-waiting.md +0 -361
- package/skills/playwright-best-practices-skill/core/configuration.md +0 -452
- package/skills/playwright-best-practices-skill/core/fixtures-hooks.md +0 -417
- package/skills/playwright-best-practices-skill/core/global-setup.md +0 -434
- package/skills/playwright-best-practices-skill/core/locators.md +0 -242
- package/skills/playwright-best-practices-skill/core/page-object-model.md +0 -315
- package/skills/playwright-best-practices-skill/core/projects-dependencies.md +0 -453
- package/skills/playwright-best-practices-skill/core/test-data.md +0 -492
- package/skills/playwright-best-practices-skill/core/test-suite-structure.md +0 -361
- package/skills/playwright-best-practices-skill/core/test-tags.md +0 -298
- package/skills/playwright-best-practices-skill/debugging/console-errors.md +0 -420
- package/skills/playwright-best-practices-skill/debugging/debugging.md +0 -504
- package/skills/playwright-best-practices-skill/debugging/error-testing.md +0 -360
- package/skills/playwright-best-practices-skill/debugging/flaky-tests.md +0 -496
- package/skills/playwright-best-practices-skill/frameworks/angular.md +0 -530
- package/skills/playwright-best-practices-skill/frameworks/nextjs.md +0 -469
- package/skills/playwright-best-practices-skill/frameworks/react.md +0 -531
- package/skills/playwright-best-practices-skill/frameworks/vue.md +0 -574
- package/skills/playwright-best-practices-skill/infrastructure-ci-cd/ci-cd.md +0 -468
- package/skills/playwright-best-practices-skill/infrastructure-ci-cd/docker.md +0 -283
- package/skills/playwright-best-practices-skill/infrastructure-ci-cd/github-actions.md +0 -546
- package/skills/playwright-best-practices-skill/infrastructure-ci-cd/gitlab.md +0 -397
- package/skills/playwright-best-practices-skill/infrastructure-ci-cd/other-providers.md +0 -521
- package/skills/playwright-best-practices-skill/infrastructure-ci-cd/parallel-sharding.md +0 -371
- package/skills/playwright-best-practices-skill/infrastructure-ci-cd/performance.md +0 -453
- package/skills/playwright-best-practices-skill/infrastructure-ci-cd/reporting.md +0 -424
- package/skills/playwright-best-practices-skill/infrastructure-ci-cd/test-coverage.md +0 -497
- package/skills/playwright-best-practices-skill/testing-patterns/accessibility.md +0 -359
- package/skills/playwright-best-practices-skill/testing-patterns/api-testing.md +0 -719
- package/skills/playwright-best-practices-skill/testing-patterns/browser-extensions.md +0 -506
- package/skills/playwright-best-practices-skill/testing-patterns/canvas-webgl.md +0 -493
- package/skills/playwright-best-practices-skill/testing-patterns/component-testing.md +0 -500
- package/skills/playwright-best-practices-skill/testing-patterns/drag-drop.md +0 -576
- package/skills/playwright-best-practices-skill/testing-patterns/electron.md +0 -509
- package/skills/playwright-best-practices-skill/testing-patterns/file-operations.md +0 -377
- package/skills/playwright-best-practices-skill/testing-patterns/file-upload-download.md +0 -562
- package/skills/playwright-best-practices-skill/testing-patterns/forms-validation.md +0 -561
- package/skills/playwright-best-practices-skill/testing-patterns/graphql-testing.md +0 -331
- package/skills/playwright-best-practices-skill/testing-patterns/i18n.md +0 -508
- package/skills/playwright-best-practices-skill/testing-patterns/performance-testing.md +0 -476
- package/skills/playwright-best-practices-skill/testing-patterns/security-testing.md +0 -430
- package/skills/playwright-best-practices-skill/testing-patterns/visual-regression.md +0 -634
- package/skills/playwright-cli/SKILL.md +0 -420
- package/skills/playwright-cli/references/element-attributes.md +0 -23
- package/skills/playwright-cli/references/playwright-tests.md +0 -39
- package/skills/playwright-cli/references/request-mocking.md +0 -87
- package/skills/playwright-cli/references/running-code.md +0 -241
- package/skills/playwright-cli/references/session-management.md +0 -225
- package/skills/playwright-cli/references/storage-state.md +0 -275
- package/skills/playwright-cli/references/test-generation.md +0 -433
- package/skills/playwright-cli/references/tracing.md +0 -139
- package/skills/playwright-cli/references/video-recording.md +0 -143
- package/skills/testeiya/README.md +0 -29
- package/skills/testeiya/answer-formatting/SKILL.md +0 -30
- package/skills/testeiya/check-cucumber/SKILL.md +0 -200
- package/skills/testeiya/check-tests/SKILL.md +0 -260
- package/skills/testeiya/manual-run-assistant/SKILL.md +0 -61
- package/skills/testeiya/testomatio-docs/INDEX.md +0 -175
- package/skills/testeiya/testomatio-docs/SKILL.md +0 -102
- package/skills/testeiya/testomatio-docs/docs/advanced/ai-powered-features/ai-agents.md +0 -144
- package/skills/testeiya/testomatio-docs/docs/advanced/ai-powered-features/ai-powered-features.md +0 -531
- package/skills/testeiya/testomatio-docs/docs/advanced/ai-powered-features/ai-requirements.md +0 -437
- package/skills/testeiya/testomatio-docs/docs/advanced/api-access/index.md +0 -191
- package/skills/testeiya/testomatio-docs/docs/advanced/branches-folder/index.md +0 -277
- package/skills/testeiya/testomatio-docs/docs/advanced/bulk-edit-folder/bulk-edit-demos.mdx +0 -39
- package/skills/testeiya/testomatio-docs/docs/advanced/bulk-edit-folder/bulk-edit-on-suite-and-test-level.md +0 -122
- package/skills/testeiya/testomatio-docs/docs/advanced/bulk-edit-folder/what-is-bulk-edit.md +0 -170
- package/skills/testeiya/testomatio-docs/docs/advanced/jira-plugin/branches.md +0 -53
- package/skills/testeiya/testomatio-docs/docs/advanced/jira-plugin/index.mdx +0 -98
- package/skills/testeiya/testomatio-docs/docs/advanced/jira-plugin/jira-issue.md +0 -151
- package/skills/testeiya/testomatio-docs/docs/advanced/jira-plugin/runs-and-reports.md +0 -377
- package/skills/testeiya/testomatio-docs/docs/advanced/jira-plugin/work-in-jira.md +0 -267
- package/skills/testeiya/testomatio-docs/docs/advanced/living-doc/index.md +0 -138
- package/skills/testeiya/testomatio-docs/docs/advanced/milestones/index.md +0 -220
- package/skills/testeiya/testomatio-docs/docs/advanced/shortcuts/index.md +0 -48
- package/skills/testeiya/testomatio-docs/docs/advanced/tags-labels/labels-and-custom-fields.md +0 -201
- package/skills/testeiya/testomatio-docs/docs/advanced/tags-labels/tags-or-labels.md +0 -94
- package/skills/testeiya/testomatio-docs/docs/advanced/tags-labels/tags.md +0 -243
- package/skills/testeiya/testomatio-docs/docs/advanced/test-artifacts/index.md +0 -135
- package/skills/testeiya/testomatio-docs/docs/advanced/tql/index.md +0 -394
- package/skills/testeiya/testomatio-docs/docs/getting-started/index.md +0 -290
- package/skills/testeiya/testomatio-docs/docs/integrations/continuous-integration/azure.md +0 -96
- package/skills/testeiya/testomatio-docs/docs/integrations/continuous-integration/bamboo.md +0 -94
- package/skills/testeiya/testomatio-docs/docs/integrations/continuous-integration/bitbucket.md +0 -106
- package/skills/testeiya/testomatio-docs/docs/integrations/continuous-integration/circle.md +0 -115
- package/skills/testeiya/testomatio-docs/docs/integrations/continuous-integration/github.md +0 -120
- package/skills/testeiya/testomatio-docs/docs/integrations/continuous-integration/gitlab.md +0 -88
- package/skills/testeiya/testomatio-docs/docs/integrations/continuous-integration/index.mdx +0 -151
- package/skills/testeiya/testomatio-docs/docs/integrations/continuous-integration/jenkins.md +0 -121
- package/skills/testeiya/testomatio-docs/docs/integrations/continuous-integration/teamcity.md +0 -96
- package/skills/testeiya/testomatio-docs/docs/integrations/issues-management/azure.md +0 -31
- package/skills/testeiya/testomatio-docs/docs/integrations/issues-management/clickup.md +0 -54
- package/skills/testeiya/testomatio-docs/docs/integrations/issues-management/confluence.md +0 -34
- package/skills/testeiya/testomatio-docs/docs/integrations/issues-management/github.md +0 -31
- package/skills/testeiya/testomatio-docs/docs/integrations/issues-management/gitlab.md +0 -93
- package/skills/testeiya/testomatio-docs/docs/integrations/issues-management/index.md +0 -131
- package/skills/testeiya/testomatio-docs/docs/integrations/issues-management/jira.md +0 -164
- package/skills/testeiya/testomatio-docs/docs/integrations/issues-management/linear.md +0 -29
- package/skills/testeiya/testomatio-docs/docs/integrations/issues-management/shortcut.md +0 -67
- package/skills/testeiya/testomatio-docs/docs/integrations/issues-management/youtrack.md +0 -94
- package/skills/testeiya/testomatio-docs/docs/integrations/report-notifications/azure-devops.md +0 -53
- package/skills/testeiya/testomatio-docs/docs/integrations/report-notifications/email.md +0 -71
- package/skills/testeiya/testomatio-docs/docs/integrations/report-notifications/jira.md +0 -52
- package/skills/testeiya/testomatio-docs/docs/integrations/report-notifications/ms-teams.md +0 -60
- package/skills/testeiya/testomatio-docs/docs/integrations/report-notifications/rules.md +0 -267
- package/skills/testeiya/testomatio-docs/docs/integrations/report-notifications/slack.md +0 -82
- package/skills/testeiya/testomatio-docs/docs/integrations/report-notifications/telegram.md +0 -73
- package/skills/testeiya/testomatio-docs/docs/integrations/scim-provisioning/index.mdx +0 -207
- package/skills/testeiya/testomatio-docs/docs/integrations/scim-provisioning/okta.md +0 -204
- package/skills/testeiya/testomatio-docs/docs/integrations/single-sign-on/azure.md +0 -95
- package/skills/testeiya/testomatio-docs/docs/integrations/single-sign-on/google.md +0 -75
- package/skills/testeiya/testomatio-docs/docs/integrations/single-sign-on/index.mdx +0 -33
- package/skills/testeiya/testomatio-docs/docs/integrations/single-sign-on/okta.md +0 -108
- package/skills/testeiya/testomatio-docs/docs/integrations/single-sign-on/saml.md +0 -66
- package/skills/testeiya/testomatio-docs/docs/legal/compliance/gdpr.md +0 -95
- package/skills/testeiya/testomatio-docs/docs/legal/compliance/index.mdx +0 -94
- package/skills/testeiya/testomatio-docs/docs/legal/compliance/privacy.md +0 -26
- package/skills/testeiya/testomatio-docs/docs/legal/compliance/terms.md +0 -32
- package/skills/testeiya/testomatio-docs/docs/legal/security/index.mdx +0 -242
- package/skills/testeiya/testomatio-docs/docs/legal/security/jira.md +0 -140
- package/skills/testeiya/testomatio-docs/docs/legal/security/subprocessors.md +0 -76
- package/skills/testeiya/testomatio-docs/docs/management/company/administration.md +0 -363
- package/skills/testeiya/testomatio-docs/docs/management/company/audit-log.md +0 -41
- package/skills/testeiya/testomatio-docs/docs/management/company/plan-features-comparison.md +0 -240
- package/skills/testeiya/testomatio-docs/docs/management/company/subscriptions.md +0 -326
- package/skills/testeiya/testomatio-docs/docs/management/company/trials.md +0 -75
- package/skills/testeiya/testomatio-docs/docs/management/company/users-and-permissions/accountant.md +0 -49
- package/skills/testeiya/testomatio-docs/docs/management/company/users-and-permissions/index.mdx +0 -285
- package/skills/testeiya/testomatio-docs/docs/management/company/users-and-permissions/read-only-user.md +0 -67
- package/skills/testeiya/testomatio-docs/docs/management/company/users-and-permissions/teams.md +0 -138
- package/skills/testeiya/testomatio-docs/docs/management/project/settings.md +0 -87
- package/skills/testeiya/testomatio-docs/docs/management/project/templates.md +0 -546
- package/skills/testeiya/testomatio-docs/docs/project/analytics/index.md +0 -326
- package/skills/testeiya/testomatio-docs/docs/project/import-export/export-tests/classical-tests-markdown-format.md +0 -386
- package/skills/testeiya/testomatio-docs/docs/project/import-export/export-tests/download-manual-tests-as-files.md +0 -378
- package/skills/testeiya/testomatio-docs/docs/project/import-export/export-tests/export-to-obsidian.md +0 -112
- package/skills/testeiya/testomatio-docs/docs/project/import-export/export-tests/export-to-spreadsheet.md +0 -127
- package/skills/testeiya/testomatio-docs/docs/project/import-export/import/auto-import.md +0 -63
- package/skills/testeiya/testomatio-docs/docs/project/import-export/import/import-tests-from-Allure-TestOps.md +0 -49
- package/skills/testeiya/testomatio-docs/docs/project/import-export/import/import-tests-from-QTest.md +0 -41
- package/skills/testeiya/testomatio-docs/docs/project/import-export/import/import-tests-from-Qase.md +0 -39
- package/skills/testeiya/testomatio-docs/docs/project/import-export/import/import-tests-from-Zephyr.md +0 -37
- package/skills/testeiya/testomatio-docs/docs/project/import-export/import/import-tests-from-csv-xlsx.md +0 -117
- package/skills/testeiya/testomatio-docs/docs/project/import-export/import/import-tests-from-cucumber.md +0 -93
- package/skills/testeiya/testomatio-docs/docs/project/import-export/import/import-tests-from-qmetry.md +0 -44
- package/skills/testeiya/testomatio-docs/docs/project/import-export/import/import-tests-from-source-code.md +0 -117
- package/skills/testeiya/testomatio-docs/docs/project/import-export/import/import-tests-from-testcaselabs.md +0 -44
- package/skills/testeiya/testomatio-docs/docs/project/import-export/import/import-tests-from-testmo.md +0 -47
- package/skills/testeiya/testomatio-docs/docs/project/import-export/import/import-tests-from-testrail.md +0 -82
- package/skills/testeiya/testomatio-docs/docs/project/import-export/import/import-tests-from-xray.md +0 -55
- package/skills/testeiya/testomatio-docs/docs/project/plans/index.md +0 -334
- package/skills/testeiya/testomatio-docs/docs/project/pulse/index.md +0 -104
- package/skills/testeiya/testomatio-docs/docs/project/runs/archive-runs-and-groups.md +0 -176
- package/skills/testeiya/testomatio-docs/docs/project/runs/custom-statuses.md +0 -195
- package/skills/testeiya/testomatio-docs/docs/project/runs/environments.md +0 -203
- package/skills/testeiya/testomatio-docs/docs/project/runs/managing-runs.md +0 -455
- package/skills/testeiya/testomatio-docs/docs/project/runs/merge-strategies.md +0 -137
- package/skills/testeiya/testomatio-docs/docs/project/runs/reports.md +0 -329
- package/skills/testeiya/testomatio-docs/docs/project/runs/rungroups.md +0 -342
- package/skills/testeiya/testomatio-docs/docs/project/runs/running-automated-tests.md +0 -256
- package/skills/testeiya/testomatio-docs/docs/project/runs/running-manual-and-automated-tests.md +0 -331
- package/skills/testeiya/testomatio-docs/docs/project/runs/running-tests-manually.md +0 -633
- package/skills/testeiya/testomatio-docs/docs/project/runs/temporary-tests-notes.md +0 -223
- package/skills/testeiya/testomatio-docs/docs/project/steps-snippets/snippets.md +0 -68
- package/skills/testeiya/testomatio-docs/docs/project/steps-snippets/steps.md +0 -181
- package/skills/testeiya/testomatio-docs/docs/project/tests/bdd-test-case-editor.md +0 -98
- package/skills/testeiya/testomatio-docs/docs/project/tests/classical-test-case-editor.md +0 -354
- package/skills/testeiya/testomatio-docs/docs/project/tests/classical-vs-bdd.md +0 -169
- package/skills/testeiya/testomatio-docs/docs/project/tests/copy-and-move-your-tests.md +0 -156
- package/skills/testeiya/testomatio-docs/docs/project/tests/other-features-for-test-case-design.md +0 -412
- package/skills/testeiya/testomatio-docs/docs/project/tests/test-case-creation-and-editing.md +0 -527
- package/skills/testeiya/testomatio-docs/docs/support/index.md +0 -75
- package/skills/testeiya/testomatio-docs/docs/test-reporting/artifacts.md +0 -388
- package/skills/testeiya/testomatio-docs/docs/test-reporting/cli.md +0 -215
- package/skills/testeiya/testomatio-docs/docs/test-reporting/configuration.md +0 -247
- package/skills/testeiya/testomatio-docs/docs/test-reporting/frameworks.md +0 -490
- package/skills/testeiya/testomatio-docs/docs/test-reporting/functions.md +0 -144
- package/skills/testeiya/testomatio-docs/docs/test-reporting/index.mdx +0 -48
- package/skills/testeiya/testomatio-docs/docs/test-reporting/junit.md +0 -248
- package/skills/testeiya/testomatio-docs/docs/test-reporting/logger.md +0 -138
- package/skills/testeiya/testomatio-docs/docs/test-reporting/php.md +0 -77
- package/skills/testeiya/testomatio-docs/docs/test-reporting/pipes/bitbucket.md +0 -72
- package/skills/testeiya/testomatio-docs/docs/test-reporting/pipes/csv.md +0 -23
- package/skills/testeiya/testomatio-docs/docs/test-reporting/pipes/debug.md +0 -18
- package/skills/testeiya/testomatio-docs/docs/test-reporting/pipes/github.md +0 -63
- package/skills/testeiya/testomatio-docs/docs/test-reporting/pipes/gitlab.md +0 -29
- package/skills/testeiya/testomatio-docs/docs/test-reporting/pipes/html.md +0 -80
- package/skills/testeiya/testomatio-docs/docs/test-reporting/pipes/index.mdx +0 -57
- package/skills/testeiya/testomatio-docs/docs/test-reporting/pipes/testomatio.md +0 -331
- package/skills/testeiya/testomatio-docs/docs/test-reporting/python.md +0 -229
- package/skills/testeiya/testomatio-docs/docs/test-reporting/workflows.md +0 -325
- package/skills/testeiya/testomatio-docs/docs/tutorials/Interacting-via-API.md +0 -159
- package/skills/testeiya/testomatio-docs/docs/tutorials/Manual-Testing-Classic.md +0 -164
- package/skills/testeiya/testomatio-docs/docs/tutorials/Set-Up-Read-Only-Access.md +0 -85
- package/skills/testeiya/testomatio-docs/docs/tutorials/Using-AI-in-Testing.md +0 -163
- package/skills/testeiya/testomatio-docs/docs/tutorials/Working-with-Jira.md +0 -125
- package/skills/testeiya/testomatio-docs/docs/tutorials/java.md +0 -478
- package/skills/testeiya/testomatio-docs/docs/tutorials/playwright.md +0 -207
- package/skills/testeiya/testomatio-docs/docs/tutorials/webdriver.md +0 -218
- package/skills/testeiya/testomatio-docs/docs.lock.json +0 -6
- package/skills/testeiya/testomatio-reporter/SKILL.md +0 -307
- package/skills/testomatio/explorbot/explorbot-fundamentals/SKILL.md +0 -88
- package/skills/testomatio/explorbot/explorbot-plan/SKILL.md +0 -95
- package/skills/testomatio/explorbot/explorbot-setup/SKILL.md +0 -334
- package/skills/testomatio/test-automation/automate-manual-test-cases/CLAUDE.md +0 -56
- package/skills/testomatio/test-automation/automate-manual-test-cases/SKILL.md +0 -242
- package/skills/testomatio/test-automation/automate-manual-test-cases/references/CODECEPTJS_BEST_PRACTICES.md +0 -182
- package/skills/testomatio/test-automation/automate-manual-test-cases/references/FINAL_SUMMARY_TEMPLATE.md +0 -22
- package/skills/testomatio/test-automation/automate-manual-test-cases/references/PLAYWRIGHT_BEST_PRACTICES.md +0 -90
- package/skills/testomatio/test-automation/automate-manual-test-cases/references/POM_BEST_PRACTICES.md +0 -53
- package/skills/testomatio/test-automation/automate-manual-test-cases/references/TEST_DATA_MANAGEMENT.md +0 -52
- package/skills/testomatio/test-automation/debug-fix-failed-flaky-autotests/SKILL.md +0 -107
- package/skills/testomatio/test-automation/debug-fix-failed-flaky-autotests/references/DEBUGGING_QUICK_REFERENCE.md +0 -113
- package/skills/testomatio/test-automation/qa-automation-test-consolidation/SKILL.md +0 -29
- package/skills/testomatio/test-automation/run-tests-with-testomatio-reporter/SKILL.md +0 -151
- package/skills/testomatio/test-automation/setup-pr-testing/SKILL.md +0 -199
- package/skills/testomatio/test-automation/testomat-allure-adapter/SKILL.md +0 -289
- package/skills/testomatio/test-management/detect-duplicate-test-cases/SKILL.md +0 -86
- package/skills/testomatio/test-management/detect-duplicate-test-cases/references/DUPLICATE_INSTRUCTIONS.md +0 -54
- package/skills/testomatio/test-management/improve-test-cases/SKILL.md +0 -114
- package/skills/testomatio/test-management/improve-test-cases/references/TESTOMAT_MARKDOWN_EXAMPLE.md +0 -66
- package/skills/testomatio/test-management/pull-request-diff-analyzer/SKILL.md +0 -141
- package/skills/testomatio/test-management/qa-e2e-tests-reporting/SKILL.md +0 -354
- package/skills/testomatio/test-management/qa-e2e-tests-reporting/references/TESTOMATIO_ARTIFACTS.md +0 -82
- package/skills/testomatio/test-management/qa-e2e-tests-reporting/references/TESTOMATIO_HTML_REPORT.md +0 -37
- package/skills/testomatio/test-management/qa-e2e-tests-reporting/references/TESTOMATIO_REPORTERS_CONFIG.md +0 -118
- package/skills/testomatio/test-management/qa-pr-requirements-analyzer/SKILL.md +0 -149
- package/skills/testomatio/test-management/qa-pr-requirements-analyzer/references/summary-example.md +0 -54
- package/skills/testomatio/test-management/qa-requirement-reviewer/SKILL.md +0 -126
- package/skills/testomatio/test-management/qa-requirement-reviewer/references/requirements_reviewer_examples.md +0 -128
- package/skills/testomatio/test-management/qa-test-code-coverage/SKILL.md +0 -174
- package/skills/testomatio/test-management/qa-test-code-coverage/references/COVERAGE_FILE_FORMAT.md +0 -138
- package/skills/testomatio/test-management/qa-test-code-coverage/references/E2E_FRAMEWORKS.md +0 -65
- package/skills/testomatio/test-management/qa-test-code-coverage/scripts/check-coverage.mjs +0 -40
- package/skills/testomatio/test-management/qa-thinking/SKILL.md +0 -36
- package/skills/testomatio/test-management/qa-write-test-cases/SKILL.md +0 -267
- package/skills/testomatio/test-management/qa-write-test-cases/references/test-case-format.md +0 -387
- package/skills/testomatio/test-management/qa-write-test-cases/references/testomat-tms-guide.md +0 -72
- package/skills/testomatio/test-management/qa-write-test-cases/references/writing-rule.md +0 -159
- package/skills/testomatio/test-management/scan-automation-project/SKILL.md +0 -152
- package/skills/testomatio/test-management/sync-test-cases-with-tms/SKILL.md +0 -107
- package/skills/testomatio/test-management/sync-test-cases-with-tms/references/TESTOMATIO_CLI.md +0 -140
- package/skills/testomatio/test-management/testomatio-mcp/SKILL.md +0 -182
- package/skills/testomatio/test-management/testomatio-mcp/references/MCP_SETUP.md +0 -169
- package/skills.yaml +0 -21
- package/src/ai-debug.ts +0 -188
- package/src/api/agent-get.ts +0 -22
- package/src/api/agent-start.ts +0 -384
- package/src/api/client-log.ts +0 -29
- package/src/api/context.ts +0 -332
- package/src/api/debug-layout.ts +0 -47
- package/src/api/debug-report.ts +0 -29
- package/src/api/debug-snapshot.ts +0 -30
- package/src/api/debug-stream.ts +0 -52
- package/src/api/files-delete.ts +0 -184
- package/src/api/files-read.ts +0 -41
- package/src/api/files-rename.ts +0 -99
- package/src/api/files-tree.ts +0 -292
- package/src/api/files-write.ts +0 -41
- package/src/api/mcp.ts +0 -603
- package/src/api/memory.ts +0 -69
- package/src/api/open-external.ts +0 -39
- package/src/api/playwright-cli.ts +0 -606
- package/src/api/providers.ts +0 -457
- package/src/api/read-env-token.ts +0 -33
- package/src/api/sessions.ts +0 -79
- package/src/api/settings.ts +0 -120
- package/src/api/skills.ts +0 -58
- package/src/api/testomatio-attachment.ts +0 -89
- package/src/api/testomatio-auth.ts +0 -284
- package/src/api/testomatio-proxy.ts +0 -197
- package/src/api/testomatio-run-stats.ts +0 -81
- package/src/api/testomatio-target.ts +0 -225
- package/src/api/testomatio-transcription.ts +0 -82
- package/src/api/workspace-search.ts +0 -96
- package/src/api/workspace-sync.ts +0 -151
- package/src/api/workspace.ts +0 -165
- package/src/app-server.ts +0 -556
- package/src/bridge.ts +0 -251
- package/src/check-tests.ts +0 -156
- package/src/cli.ts +0 -17
- package/src/commands.ts +0 -244
- package/src/config.ts +0 -183
- package/src/connection.ts +0 -658
- package/src/context-store.ts +0 -265
- package/src/debug-bus.ts +0 -405
- package/src/extensions/tool-gate.ts +0 -220
- package/src/extensions/webui/ask-channel.ts +0 -52
- package/src/extensions/webui/index.ts +0 -184
- package/src/extensions/webui/tools/ask-question.ts +0 -88
- package/src/extensions/webui/tools/query-result.ts +0 -79
- package/src/extensions/webui/tools/render-chart.ts +0 -53
- package/src/extensions/webui/tools/render-item.ts +0 -61
- package/src/extensions/webui/tools/render-list.ts +0 -170
- package/src/extensions/webui/tools/render-result.ts +0 -85
- package/src/extensions/webui/tools/render-tree.ts +0 -71
- package/src/extensions/webui/tools/ui-widget.ts +0 -54
- package/src/extensions/webui/tools/widget-result.ts +0 -13
- package/src/extensions/webui/widget-channel.ts +0 -50
- package/src/file-log.ts +0 -196
- package/src/git-tracked.ts +0 -68
- package/src/gitignore.ts +0 -53
- package/src/json-store.ts +0 -43
- package/src/load-env.ts +0 -70
- package/src/loader-style.ts +0 -96
- package/src/main.ts +0 -140
- package/src/mcp-catalog.ts +0 -96
- package/src/models-catalog.ts +0 -72
- package/src/permissions.ts +0 -120
- package/src/project-dir.ts +0 -189
- package/src/project-info.ts +0 -108
- package/src/prompt/app-ui.ts +0 -59
- package/src/prompt/browser.ts +0 -27
- package/src/prompt/index.ts +0 -62
- package/src/server-info.ts +0 -62
- package/src/session-factory.ts +0 -442
- package/src/session-store.ts +0 -115
- package/src/shell-env.ts +0 -45
- package/src/skills.ts +0 -163
- package/src/sync-snapshot.ts +0 -140
- package/src/telemetry.ts +0 -239
- package/src/testomatio-auth.ts +0 -299
- package/src/testomatio.ts +0 -98
- package/src/theme.ts +0 -30
- package/src/user-env.ts +0 -94
- package/src/welcome.ts +0 -127
- package/src/workspace/safe-path.ts +0 -85
- package/src/workspace/test-md.ts +0 -70
- package/src/workspace-model.ts +0 -440
- package/testeiya.config.json +0 -14
|
@@ -1,218 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: WebdriverIO
|
|
3
|
-
description: Learn how to integrate WebdriverIO with Testomat.io for efficient test management and reporting. This guide covers importing WebdriverIO tests, managing parametrized tests, reporting artifacts like screenshots and logs, enabling detailed reporting features, and configuring parallel execution reporting for CI workflows.
|
|
4
|
-
type: article
|
|
5
|
-
url: https://docs.testomat.io/tutorials/webdriverio
|
|
6
|
-
head:
|
|
7
|
-
- tag: meta
|
|
8
|
-
attrs:
|
|
9
|
-
name: og:image
|
|
10
|
-
content: https://docs.testomat.io/_astro/New_b1BS3EKN_2024-08-29.DGrFkMLR_ZOOgn1.webp
|
|
11
|
-
|
|
12
|
-
- tag: meta
|
|
13
|
-
attrs:
|
|
14
|
-
name: keywords
|
|
15
|
-
content: WebdriverIO, Testomat.io, test reporting, automation, test management, artifacts, parallel execution, detailed reporting, parametrized tests, S3 integration, test import, browser automation
|
|
16
|
-
---
|
|
17
|
-
|
|
18
|
-
<!--
|
|
19
|
-
## Importing WebdriverIO Tests
|
|
20
|
-
- import WebdriverIO tests
|
|
21
|
-
- TS tests (link to example project)
|
|
22
|
-
- TypeScript tests (link to example project)
|
|
23
|
-
- BDD tests
|
|
24
|
-
- parametrized tests importing
|
|
25
|
-
- add IDs to tests
|
|
26
|
-
|
|
27
|
-
## Reporting WebdriverIO Tests
|
|
28
|
-
- timeline
|
|
29
|
-
- visual testing
|
|
30
|
-
- capture screenshots
|
|
31
|
-
- artifacts (link to artifacts page)
|
|
32
|
-
- videos
|
|
33
|
-
- logs
|
|
34
|
-
|
|
35
|
-
## Advanced
|
|
36
|
-
- parallel execution (link to parallel page)
|
|
37
|
-
- custom commands
|
|
38
|
-
- page objects
|
|
39
|
-
-->
|
|
40
|
-
|
|
41
|
-
# WebdriverIO Integration with Testomat.io
|
|
42
|
-
|
|
43
|
-
WebdriverIO is an all in one framework for your web app development. It enables you to run small and lightweight component tests as well as running e2e test scenarios in the browser or on a mobile device. This guarantees that you to do the testing in an environment used by your users.
|
|
44
|
-
|
|
45
|
-
This guide demonstrates how to integrate WebdriverIO with [Testomat.io](https://app.testomat.io) for efficient test management and detailed reporting.
|
|
46
|
-
|
|
47
|
-
---
|
|
48
|
-
|
|
49
|
-
## Importing WebdriverIO Tests
|
|
50
|
-
|
|
51
|
-
You can easily import your WebdriverIO tests into Testomat.io on the **Imports** page.
|
|
52
|
-
|
|
53
|
-

|
|
54
|
-
|
|
55
|
-
### Steps to Import Your Tests
|
|
56
|
-
|
|
57
|
-
1. **Select Framework**: In the `Project Framework` field, choose `WebDriver`.
|
|
58
|
-
2. **Choose Language**: Select your project’s language from the `Project Language` field: `JavaScript`, `TypeScript`.
|
|
59
|
-
3. **Select OS**: Choose your device’s OS (`Mac`, `Linux`, or `Windows`) under `Import tests`.
|
|
60
|
-
|
|
61
|
-
#### Additional options to customize your import:
|
|
62
|
-
|
|
63
|
-
- **Auto-assign IDs**: Automatically assigns unique IDs to each test.
|
|
64
|
-
- **Purge Old IDs**: Removes previously set IDs from tests.
|
|
65
|
-
- **Disable Detached Tests**: Disables tests marked as detached.
|
|
66
|
-
- **Prefer Source Code Structure**: Maintains your project’s source code structure in the test hierarchy.
|
|
67
|
-
|
|
68
|
-

|
|
69
|
-
|
|
70
|
-
After setting up, copy the generated command and run it in your project’s terminal. Your tests will then appear on the Tests page in Testomat.io.
|
|
71
|
-
|
|
72
|
-
**Example**: Try importing using the [Testomat.io WebdriverIO example project](https://github.com/testomatio/examples/tree/master/wdio/v8).
|
|
73
|
-
|
|
74
|
-
For more details, refer to the [Import Tests from Source Code documentation](https://docs.testomat.io/getting-started/import-tests-from-source-code/).
|
|
75
|
-
|
|
76
|
-
---
|
|
77
|
-
|
|
78
|
-
## Importing Parametrized Tests
|
|
79
|
-
|
|
80
|
-
When importing parametrized tests, include variable parameters in test names using template literals for better clarity in Testomat.io.
|
|
81
|
-
|
|
82
|
-
**Example Code**:
|
|
83
|
-
|
|
84
|
-
```typescript
|
|
85
|
-
const people = ['Alice', 'Bob'];
|
|
86
|
-
describe('my tests', () => {
|
|
87
|
-
for (const name of people) {
|
|
88
|
-
it(`testing with ${name}`, async () => {
|
|
89
|
-
// ...
|
|
90
|
-
});
|
|
91
|
-
}
|
|
92
|
-
});
|
|
93
|
-
```
|
|
94
|
-
|
|
95
|
-
Avoid string concatenation like `title + name`. Instead, use template literals to make test names dynamic and clear.
|
|
96
|
-
|
|
97
|
-
> This test will be imported with its placeholder in the name, and results will display parameter values in Testomat.io reports.
|
|
98
|
-
|
|
99
|
-

|
|
100
|
-
|
|
101
|
-

|
|
102
|
-
|
|
103
|
-
---
|
|
104
|
-
|
|
105
|
-
## Auto-assigning Test IDs
|
|
106
|
-
|
|
107
|
-
When importing tests, enable **Auto-assign Ids** (`--update-ids`) to track changes without duplicating tests when scaling your project. Without this, CI processes may not launch correctly.
|
|
108
|
-
|
|
109
|
-
```diff
|
|
110
|
-
+ it('user should be fine @T12345678', () => {
|
|
111
|
-
- it('user should be fine', () => {
|
|
112
|
-
expect(user).toBe('fine');
|
|
113
|
-
});
|
|
114
|
-
```
|
|
115
|
-
|
|
116
|
-
IDs will be automatically assigned in your code and appear in Testomat.io.
|
|
117
|
-
|
|
118
|
-

|
|
119
|
-
|
|
120
|
-

|
|
121
|
-
|
|
122
|
-
---
|
|
123
|
-
|
|
124
|
-
## Reporting WebdriverIO Tests
|
|
125
|
-
|
|
126
|
-
WebdriverIO allows you to leverage various types of reports, including screenshots, to improve error detection and debugging. Here's how you can enhance your testing workflow:
|
|
127
|
-
|
|
128
|
-
### Visual Reports with Timeline Reporter
|
|
129
|
-
|
|
130
|
-
Tools like **Timeline Reporter** provide a visual representation of your test results. These reports can include screenshots, which help analyze failures and identify issues quickly.
|
|
131
|
-
[Learn more about Timeline Reporter](https://webdriver.io/docs/wdio-timeline-reporter/)
|
|
132
|
-
|
|
133
|
-
### Visual Testing with @wdio/visual-service
|
|
134
|
-
|
|
135
|
-
WebdriverIO supports visual testing via the **@wdio/visual-service** plugin. This enables you to capture, save, and compare screenshots of elements, pages, or screens with baseline images. It is an excellent way to detect visual regressions in your application.
|
|
136
|
-
[Learn more about Visual Testing](https://webdriver.io/docs/visual-testing/)
|
|
137
|
-
|
|
138
|
-
### Capturing Screenshots
|
|
139
|
-
|
|
140
|
-
WebdriverIO provides built-in methods such as `browser.saveScreenshot()` to capture the current state of a webpage or specific elements. These screenshots can be incorporated into your reporting tools for a comprehensive debugging experience.
|
|
141
|
-
[Learn more about Screenshot](https://webdriver.io/docs/wdio-light-reporter/#screenshots)
|
|
142
|
-
|
|
143
|
-
```typescript
|
|
144
|
-
afterTest: async function (test, context, { error, result, duration, passed, retries }) {
|
|
145
|
-
if (error) {
|
|
146
|
-
await browser.takeScreenshot();
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
```
|
|
150
|
-
|
|
151
|
-
By integrating these features into your WebdriverIO setup, you can enhance the efficiency of error detection and resolution, leading to more robust and reliable tests.
|
|
152
|
-
|
|
153
|
-
### Artifacts in WebdriverIO with Testomat.io Reporter and S3
|
|
154
|
-
|
|
155
|
-
Artifacts like screenshots, videos, and logs are essential for debugging. With the Testomat.io reporter, these artifacts can be automatically uploaded to an S3 bucket and linked to test cases in the Testomat.io dashboard. [Read more about Artifacts](https://docs.testomat.io/usage/test-artifacts/)
|
|
156
|
-
|
|
157
|
-

|
|
158
|
-
|
|
159
|
-
- **Configure Artifacts**: Enable options in Playwright (e.g., recordVideo, screenshot, logs).
|
|
160
|
-
- **Setup S3 and Testomat.io Reporter**: Link your S3 bucket with Testomat.io for smooth integration.
|
|
161
|
-
- **View and Debug**: Access artifacts in Testomat.io for easy downloading and analysis.
|
|
162
|
-
|
|
163
|
-
#### Steps to Configure Artifacts:
|
|
164
|
-
|
|
165
|
-
1. Enable options in WebdriverIO (e.g., `takeScreenshot`, `captureLogs`).
|
|
166
|
-
2. Link your S3 bucket with Testomat.io.
|
|
167
|
-
3. Access artifacts in Testomat.io for easy debugging.
|
|
168
|
-
|
|
169
|
-
**Code Example for Screenshots**:
|
|
170
|
-
|
|
171
|
-
```typescript
|
|
172
|
-
await driver.takeScreenshot().then((image) => {
|
|
173
|
-
require('fs').writeFileSync('screenshot.png', image, 'base64');
|
|
174
|
-
});
|
|
175
|
-
```
|
|
176
|
-
|
|
177
|
-
### Steps to Enable:
|
|
178
|
-
|
|
179
|
-
1. Set up an S3 Bucket ([See Documentation](https://docs.testomat.io/)).
|
|
180
|
-
2. Enable third-party cookies in your browser.
|
|
181
|
-
3. Run your tests.
|
|
182
|
-
4. In `Test Run`, click the test, then select the trace log to open.
|
|
183
|
-
|
|
184
|
-
---
|
|
185
|
-
|
|
186
|
-
## Parallel Execution Reporting
|
|
187
|
-
|
|
188
|
-
Report parallel test executions to the same Testomat.io run by assigning a shared title and setting the `TESTOMATIO_SHARED_RUN` environment variable.
|
|
189
|
-
|
|
190
|
-
**Example**:
|
|
191
|
-
|
|
192
|
-
```bash
|
|
193
|
-
TESTOMATIO_TITLE="Parallel Test Run ${GIT_COMMIT}" TESTOMATIO_SHARED_RUN=1 <actual run command>
|
|
194
|
-
```
|
|
195
|
-
|
|
196
|
-
To extend the shared run timeout (default: 20 minutes), use the `TESTOMATIO_SHARED_RUN_TIMEOUT` variable.
|
|
197
|
-
|
|
198
|
-
**Example**:
|
|
199
|
-
|
|
200
|
-
```bash
|
|
201
|
-
TESTOMATIO_SHARED_RUN_TIMEOUT=120 TESTOMATIO_SHARED_RUN=1 <actual run command>
|
|
202
|
-
```
|
|
203
|
-
|
|
204
|
-
We strongly recommend to use Testomat.io `cli` to run your WebdriverIO tests in parallel mode, it will handle each worker/process automatically.
|
|
205
|
-
|
|
206
|
-
`npx @testomatio/reporter run 'npx wdio wdio.conf.js'`
|
|
207
|
-
|
|
208
|
-
For more details, refer to the [Testomat.io cli docs][1] and the [WebdriverIO guide][2].
|
|
209
|
-
|
|
210
|
-
[1]: https://github.com/testomatio/reporter/blob/2.x/docs/cli.md#3-run
|
|
211
|
-
[2]: https://github.com/testomatio/reporter/blob/2.x/docs/frameworks.md#webdriverio
|
|
212
|
-
|
|
213
|
-
```bash
|
|
214
|
-
|
|
215
|
-
---
|
|
216
|
-
|
|
217
|
-
This guide outlines the process of integrating WebdriverIO with Testomat.io for effective test management and reporting. For more information, visit the [Testomat.io Documentation](https://docs.testomat.io/).
|
|
218
|
-
```
|
|
@@ -1,307 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: testomatio-reporter
|
|
3
|
-
description: Report automated test RESULTS to Testomat.io with @testomatio/reporter. Create and finish runs, merge parallel CI shards into one run, filter tests by tag/plan/label or coverage map, launch remote CI profiles, ingest JUnit XML and Allure, and upload S3 artifacts. Wired into Playwright, CodeceptJS, Cypress, Jest, Vitest, Mocha, WebdriverIO, Cucumber. Use to report results, create or finish a run, run tests with reporting, import JUnit/Allure, or debug missing results or artifacts.
|
|
4
|
-
license: MIT
|
|
5
|
-
metadata:
|
|
6
|
-
author: Testomat.io
|
|
7
|
-
version: 1.0.0
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# Testomatio Reporter
|
|
11
|
-
|
|
12
|
-
`@testomatio/reporter` (npm, v2.x) reports automated test results to Testomat.io. It:
|
|
13
|
-
|
|
14
|
-
- creates runs and streams per-test statuses, steps, stack traces, and logs;
|
|
15
|
-
- uploads artifacts to the user's own S3 bucket;
|
|
16
|
-
- posts PR comments and writes local HTML/Markdown/CSV reports.
|
|
17
|
-
|
|
18
|
-
It targets the project identified by the `TESTOMATIO` key (`tstmt_*`).
|
|
19
|
-
|
|
20
|
-
The reporter writes RESULTS. `check-tests` and `check-cucumber` write test DEFINITIONS. "Report my results" or "create a run" is this tool; "sync my tests" is not.
|
|
21
|
-
|
|
22
|
-
## Use cases
|
|
23
|
-
|
|
24
|
-
- Report a Playwright/CodeceptJS/Cypress/Jest/… run's results to Testomat.io.
|
|
25
|
-
- Merge parallel CI shards into one run.
|
|
26
|
-
- Create a run now and finish it later, or launch its automated part on a CI profile.
|
|
27
|
-
- Run only the tests impacted by a diff via a coverage map.
|
|
28
|
-
- Ingest JUnit XML or Allure results from non-JS stacks.
|
|
29
|
-
- Upload screenshots/videos/traces as artifacts to S3.
|
|
30
|
-
- Debug missing results, duplicate runs, or missing artifacts.
|
|
31
|
-
|
|
32
|
-
## When NOT to use it
|
|
33
|
-
|
|
34
|
-
- **Running the reporter with a real key CREATES RUNS visible to the whole team.** Never run it "just to see if it works" — any create/finish/launch needs explicit authorization. Verify safely with the dry-run recipes below.
|
|
35
|
-
- **Never run the reporter over `*.test.md` files.** Nothing there is executable — markdown tests tagged `type: automated` are references, and the real code lives in a separate automation repo (executed via a CI profile, `run --remote`).
|
|
36
|
-
- Right tool only when the workspace IS an automation repo (a playwright/codecept/cypress/wdio config or dependency — Testeiya's `hasAutomationConfig`). Otherwise results come from CI or the automation repo.
|
|
37
|
-
- Setup/wiring → `qa-e2e-tests-reporting`. PR-driven CI pipelines → `setup-pr-testing`. Post-run analysis (history, flakiness) → `testomatio-mcp`. Coverage maps → `qa-test-code-coverage`. Test definitions → `check-tests`/`check-cucumber`.
|
|
38
|
-
|
|
39
|
-
## Testeiya workspace context
|
|
40
|
-
|
|
41
|
-
A workspace is a cwd representing one project (`.testeiya/testeiya.json` holds `{projectId, baseUrl, title}`). Three shapes:
|
|
42
|
-
|
|
43
|
-
| Workspace shape | Recognize by | Reporter applies? |
|
|
44
|
-
|---|---|---|
|
|
45
|
-
| Managed project workspace | `~/.testeiya/workspaces/<id>/`, `*.test.md` at root | Never — markdown only |
|
|
46
|
-
| Code repo with manual-tests overlay | `.testeiya/manual-tests/` holds `*.test.md` | Only if the repo itself is an automation repo; the overlay is never a target |
|
|
47
|
-
| Automation repo | playwright/codecept/cypress/wdio config or dep | Yes — the spec files are the automated tests |
|
|
48
|
-
|
|
49
|
-
Token resolution (mirror Testeiya's order): 1) the managed session's token for the slug; 2) else the linked project's `apiKey`; 3) else the folder's `.env` `TESTOMATIO`; 4) when `baseUrl` isn't `https://app.testomat.io`, also set `TESTOMATIO_URL`.
|
|
50
|
-
|
|
51
|
-
## Two usage modes
|
|
52
|
-
|
|
53
|
-
1. Framework reporter/plugin — wired into the runner's config. The runner executes tests; the adapter streams results whenever `TESTOMATIO` is set. Without the key the adapter stays inert, so committing the wiring is safe.
|
|
54
|
-
2. Standalone CLI — `npx @testomatio/reporter <command>`: manage the run lifecycle, wrap a runner so parallel workers report into one run, trigger remote CI profiles, or ingest XML/Allure.
|
|
55
|
-
|
|
56
|
-
- Both modes read the same `TESTOMATIO_*` env vars.
|
|
57
|
-
- Legacy bin aliases still work: `npx report-xml` (= `xml`), `npx start-test-run`.
|
|
58
|
-
- Yarn 4 (Berry) can't run scoped bins — install `testomatio-reporter-cli` and call `npx testomatio-reporter <command>`.
|
|
59
|
-
- **Truthy env vars are enabled by ANY value, including `false` and `0`.** To disable, unset the variable.
|
|
60
|
-
|
|
61
|
-
## CLI commands
|
|
62
|
-
|
|
63
|
-
`npx @testomatio/reporter <command> [options]`. Every command accepts `--env-file <file>` (default `.env`).
|
|
64
|
-
|
|
65
|
-
| Command | Purpose | Own options |
|
|
66
|
-
|---|---|---|
|
|
67
|
-
| `start` | Create a run, print its ID; non-zero if creation failed | `--kind`, `--filter`, `--format id` |
|
|
68
|
-
| `finish` | Finish a run (`TESTOMATIO_RUN`, else the stored latest) | — |
|
|
69
|
-
| `run` (alias `test`) | Create a run, execute `[command]` with `TESTOMATIO_RUN`/`TESTOMATIO_PROCEED` injected, finish by exit code; propagates the runner's exit code | `[command]`, `--filter`, `--filter-list`, `--format`, `--kind`, `--remote`, `--remote-param` |
|
|
70
|
-
| `xml <glob>` | Parse and upload JUnit/NUnit/xUnit/TRX reports | `-d`, `--lang <c#\|java\|ruby\|python\|php>`, `--java-tests [path]` (default `src/test/java`), `--timelimit <sec>` |
|
|
71
|
-
| `allure <glob>` | Parse and upload Allure results | `-d`, `--lang`, `--java-tests [path]` (default `src/test`), `--with-package`, `--timelimit <sec>` |
|
|
72
|
-
| `upload-artifacts` | Upload artifacts skipped/failed during the run (needs S3) | `--force` (re-upload done ones) |
|
|
73
|
-
| `replay [debug-file]` | Re-send from a debug file (default `./testomatio.debug.json`) | `--dry-run` (preview, no network) |
|
|
74
|
-
|
|
75
|
-
Shared option meanings (see sections below): `--kind` → [run kinds](#run-kinds); `--filter`/`--filter-list` → [filters](#filters); `--remote`/`--remote-param` → [remote launches](#remote-ci-launches); `--format` → machine-readable stdout.
|
|
76
|
-
|
|
77
|
-
### Machine-readable output (`--format`)
|
|
78
|
-
|
|
79
|
-
- With `--format`, stdout carries only the payload; the banner is skipped, logs go to stderr (`TESTOMATIO_LOG_LEVEL=INFO` brings progress back).
|
|
80
|
-
- `start --format id` → stdout is the run id: `RUN_ID=$(npx @testomatio/reporter start --format id)`.
|
|
81
|
-
- `run --filter-list … --format <v>` → matched IDs as `ids` (default), `grep` (`(T1|T2)`), `json`, or `newline`. Exit 0 if ≥1 matched, 1 if none — CI can branch on `$?`.
|
|
82
|
-
|
|
83
|
-
### Run kinds (`--kind`)
|
|
84
|
-
|
|
85
|
-
The flag follows which kinds of tests the project has:
|
|
86
|
-
|
|
87
|
-
| Project tests | `--kind` | Later launch |
|
|
88
|
-
|---|---|---|
|
|
89
|
-
| manual + automated | `mixed` | preview/merge launch the automated part |
|
|
90
|
-
| manual only | `manual` | none — complete at creation |
|
|
91
|
-
| automated only | *(omit)* | preview/merge launch the run |
|
|
92
|
-
|
|
93
|
-
### Filters
|
|
94
|
-
|
|
95
|
-
Only two filter pipes exist; any other prefix is rejected.
|
|
96
|
-
|
|
97
|
-
- `testomatio:` — `tag-name=smoke`, `plan=<id>`, `label=<name-or-id>` (`label=<id>:🔥 Major`), `jira-ticket=TC-123`. Execution filtering works for Playwright and CodeceptJS.
|
|
98
|
-
- `coverage:` — `file=<coverage.yml>[,diff=<git-ref>]`. Maps `git diff <ref> --name-only` (run in `process.cwd()`, default ref `master`) through a glob→ID map and returns impacted tests. The map is produced by `qa-test-code-coverage` (default `coverage.tests.yml`) — never hand-write one.
|
|
99
|
-
- A filter resolving to zero tests creates no run (`No tests found.`) — treat as success in CI.
|
|
100
|
-
|
|
101
|
-
### Remote CI launches (`run --remote`)
|
|
102
|
-
|
|
103
|
-
- `run --remote <profile>` asks Testomat.io to dispatch a CI profile (Settings → CI) instead of executing locally.
|
|
104
|
-
- The run is created, resolved filter IDs are joined with `|` as the workflow's grep, and the CLI exits 0 printing the run URL.
|
|
105
|
-
- With `TESTOMATIO_RUN` set, no new run is created — the profile triggers for the existing (prepared) run, reusing its stored scope unless a fresh `--filter` overrides it.
|
|
106
|
-
- `--remote-param <k=v>` forwards a parameter to the profile (repeatable) — the carrier for a preview URL.
|
|
107
|
-
- Guards: requires `TESTOMATIO` (exit 1); cannot combine with `--filter-list` (exit 1); a positional command is ignored with a warning; a missing profile fails `CI launch failed: <message>` (exit 1).
|
|
108
|
-
- Env equivalents: `TESTOMATIO_CI_PROFILE` (= `--remote`), `TESTOMATIO_CI_PARAMS="k=v,k2=v2"` (= `--remote-param`).
|
|
109
|
-
- Full CI phase model: `setup-pr-testing`.
|
|
110
|
-
|
|
111
|
-
## Environment variables
|
|
112
|
-
|
|
113
|
-
Confirmed against reporter v2.9.0. Reminder: boolean-style vars are enabled by any value, including `0`/`false`.
|
|
114
|
-
|
|
115
|
-
### Auth and target
|
|
116
|
-
|
|
117
|
-
| Variable | Meaning |
|
|
118
|
-
|---|---|
|
|
119
|
-
| `TESTOMATIO` | Project API key (`tstmt_*`). Aliases `TESTOMATIO_TOKEN`, `TESTOMATIO_API_KEY` are copied in when it's unset |
|
|
120
|
-
| `TESTOMATIO_URL` | Instance URL (default `https://app.testomat.io`). Set for self-hosted (match `.testeiya/testeiya.json` `baseUrl`) |
|
|
121
|
-
|
|
122
|
-
### Run identity
|
|
123
|
-
|
|
124
|
-
| Variable | Meaning |
|
|
125
|
-
|---|---|
|
|
126
|
-
| `TESTOMATIO_RUN` | Report into an existing run by ID |
|
|
127
|
-
| `TESTOMATIO_TITLE` | Run title |
|
|
128
|
-
| `TESTOMATIO_DESCRIPTION` | Run description; truncated to 1024 chars in PR comments |
|
|
129
|
-
| `TESTOMATIO_RUNGROUP_TITLE` | Attach to a RunGroup; `/` nests (`"Builds/${BUILD_ID}"`) |
|
|
130
|
-
| `TESTOMATIO_ENV` | Comma-separated environments (`"Windows, Chrome"`) |
|
|
131
|
-
| `TESTOMATIO_LABEL` | Run label(s); must exist with scope `runs`; `key:value`, comma-separated |
|
|
132
|
-
| `TESTOMATIO_JIRA_ID` | Link the run to a Jira issue (`TST-1`) |
|
|
133
|
-
| `TESTOMATIO_SHARED_RUN` | Parallel jobs report into one run matched by identical `TESTOMATIO_TITLE` |
|
|
134
|
-
| `TESTOMATIO_SHARED_RUN_TIMEOUT` | Minutes the shared-run title stays matchable (default 20) — after that a NEW run is created |
|
|
135
|
-
| `TESTOMATIO_PROCEED` | Keep the run Running; pair with an explicit `finish`. `run` sets it for its child automatically |
|
|
136
|
-
| `TESTOMATIO_PUBLISH` | Publish the run and get a public URL |
|
|
137
|
-
| `BUILD_URL` | Override the CI build URL (auto-detected on major CIs) |
|
|
138
|
-
|
|
139
|
-
### Reporting behavior
|
|
140
|
-
|
|
141
|
-
| Variable | Meaning |
|
|
142
|
-
|---|---|
|
|
143
|
-
| `TESTOMATIO_CREATE` | Create tests missing from the project (fallback — import first via `check-tests`) |
|
|
144
|
-
| `TESTOMATIO_WORKDIR` | Base dir for relative paths of created tests |
|
|
145
|
-
| `TESTOMATIO_SUITE` | Put created tests into a suite by ID (`@S12345678`); also on XML import |
|
|
146
|
-
| `TESTOMATIO_UPDATE_CODE` | Send test source with each run (off by default — code is pushed by `check-tests`) |
|
|
147
|
-
| `TESTOMATIO_MARK_DETACHED` | XML only: mark project tests absent from this run as detached; pass a tag to limit |
|
|
148
|
-
| `IGNORE_NEW_TESTS` | XML only: don't create unmatched tests |
|
|
149
|
-
| `TESTOMATIO_EXCLUDE_FILES_FROM_REPORT_GLOB_PATTERN` | Exclude report files by glob; `;`-separated |
|
|
150
|
-
| `TESTOMATIO_EXCLUDE_SKIPPED` | Drop skipped tests from the report |
|
|
151
|
-
| `TESTOMATIO_NO_TIMESTAMP` | Disable auto timestamps (unsynced parallel clocks) |
|
|
152
|
-
| `TESTOMATIO_INTERCEPT_CONSOLE_LOGS` | Capture console output into test logs |
|
|
153
|
-
| `TESTOMATIO_STACK_PASSED` | Include stacks/logs for passed tests |
|
|
154
|
-
| `TESTOMATIO_STACK_IGNORE` | Glob of files to omit from stack traces |
|
|
155
|
-
| `TESTOMATIO_STACK_ARTIFACTS` | Store oversized stacks (>5000) and steps (>10000) as artifact files |
|
|
156
|
-
| `TESTOMATIO_STEPS_PASSED` | Include step details for passed tests |
|
|
157
|
-
| `TESTOMATIO_NO_STEPS` | Report no steps at all |
|
|
158
|
-
| `TESTOMATIO_SCREENSHOTS_ON_STEPS` | Step-screenshot upload (on where available; set `false` to disable — this one parses the value) |
|
|
159
|
-
| `TESTOMATIO_DISABLE_BATCH_UPLOAD` | One request per result instead of batches |
|
|
160
|
-
| `TESTOMATIO_REQUEST_TIMEOUT` | API timeout in ms (default 20000) |
|
|
161
|
-
| `TESTOMATIO_MAX_REQUEST_FAILURES` | Stop reporting after N failed requests |
|
|
162
|
-
| `TESTOMATIO_MAX_REQUEST_FAILURES_COUNT` | Max total retries (default 10) |
|
|
163
|
-
| `TESTOMATIO_MAX_REQUEST_RETRIES_WITHIN_TIME_SECONDS` | Retry window in seconds (default 60) |
|
|
164
|
-
| `TESTOMATIO_MAX_ENTITY_EXPANSIONS` | XML entity-expansion cap (default 10000); raise only for trusted reports |
|
|
165
|
-
| `TESTOMATIO_LOG_LEVEL` | `ERROR` / `WARN` / `INFO` (default) |
|
|
166
|
-
| `TESTOMATIO_DEBUG` | Debug pipe: full request logging + a replayable `testomatio.debug.json` (plain `DEBUG` also triggers it) |
|
|
167
|
-
| `HTTP_PROXY` / `HTTPS_PROXY` | Route API requests through a proxy |
|
|
168
|
-
|
|
169
|
-
### Artifacts (S3)
|
|
170
|
-
|
|
171
|
-
Artifacts upload to the user's own S3-compatible bucket, never to Testomat.io. Uploads activate when `S3_BUCKET` is set (env or Project Settings → Artifacts). Public `public-read` by default; private mode uses 10-minute pre-signed links.
|
|
172
|
-
|
|
173
|
-
| Variable | Meaning |
|
|
174
|
-
|---|---|
|
|
175
|
-
| `S3_ACCESS_KEY_ID` / `S3_SECRET_ACCESS_KEY` | Bucket credentials |
|
|
176
|
-
| `S3_BUCKET` / `S3_REGION` | Bucket name and region |
|
|
177
|
-
| `S3_ENDPOINT` | Endpoint URL — required for non-AWS (DigitalOcean, Minio, R2, GCS) |
|
|
178
|
-
| `S3_FORCE_PATH_STYLE` | Path-style URLs — `true` for Minio/R2; keep off on AWS or pre-signed private links break |
|
|
179
|
-
| `S3_SESSION_TOKEN` | Temporary-credentials session token |
|
|
180
|
-
| `TESTOMATIO_PRIVATE_ARTIFACTS` | Private upload mode; mirror S3 creds in Project Settings → Artifacts so the app can pre-sign |
|
|
181
|
-
| `TESTOMATIO_DISABLE_ARTIFACTS` | Skip uploads during the run; recover later with `upload-artifacts` |
|
|
182
|
-
| `TESTOMATIO_ARTIFACT_MAX_SIZE_MB` | Skip files over N MB during the run; upload them afterwards |
|
|
183
|
-
|
|
184
|
-
For non-JS stacks, artifacts attach by printing `file://<path>` to output (picked up from JUnit `system-out`). `tid://@T<id>` links a result to an existing test.
|
|
185
|
-
|
|
186
|
-
### CI pipes and local reports
|
|
187
|
-
|
|
188
|
-
Each pipe activates on its env var alone. HTML/Markdown/CSV pipes need NO key — useful for local-only reports. PR comments always come from these pipes; never script a PR-comment API call.
|
|
189
|
-
|
|
190
|
-
| Variable | Meaning |
|
|
191
|
-
|---|---|
|
|
192
|
-
| `GH_PAT` | GitHub PR comment (in Actions, `${{ github.token }}` works; needs `issues: write`, `pull-requests: write`) |
|
|
193
|
-
| `GH_KEEP_OUTDATED_REPORTS` / `GITHUB_REMOVE_ALL_OUTDATED_REPORTS` | Keep / delete previous PR comments (note the asymmetric prefixes — both real) |
|
|
194
|
-
| `GITLAB_PAT` | GitLab MR comment (`api` scope; MR pipeline context) |
|
|
195
|
-
| `GITLAB_KEEP_OUTDATED_REPORTS` / `GITLAB_REMOVE_ALL_OUTDATED_REPORTS` | Same for GitLab |
|
|
196
|
-
| `BITBUCKET_ACCESS_TOKEN` | Bitbucket PR comment (repo token; only in `pull-requests:` pipelines — needs `BITBUCKET_PR_ID`) |
|
|
197
|
-
| `BITBUCKET_KEEP_OUTDATED_REPORTS` / `BITBUCKET_REMOVE_ALL_OUTDATED_REPORTS` | Same for Bitbucket |
|
|
198
|
-
| `TESTOMATIO_HTML_REPORT_SAVE` / `_FOLDER` / `TESTOMATIO_HTML_FILENAME` | Local HTML report (default `html-report/testomatio-report.html`) |
|
|
199
|
-
| `TESTOMATIO_MARKDOWN_REPORT_SAVE` / `_FOLDER` / `TESTOMATIO_MARKDOWN_FILENAME` | Local Markdown report (default `md-report/…`; feed `$GITHUB_STEP_SUMMARY`) |
|
|
200
|
-
| `TESTOMATIO_CSV_FILENAME` | Local CSV report |
|
|
201
|
-
|
|
202
|
-
## Framework wiring
|
|
203
|
-
|
|
204
|
-
Full setup (detection, install, credentials) lives in `qa-e2e-tests-reporting`. The wiring surface for reference:
|
|
205
|
-
|
|
206
|
-
| Framework | Wiring |
|
|
207
|
-
|---|---|
|
|
208
|
-
| Playwright | `reporter: [['list'], ['@testomatio/reporter/playwright', { apiKey: process.env.TESTOMATIO }]]` |
|
|
209
|
-
| CodeceptJS | plugin `testomatio: { enabled: true, require: '@testomatio/reporter/codecept' }`; local reports via `html`/`markdown`/`csv`/`reportDir` |
|
|
210
|
-
| Cypress ≥10 | `setupNodeEvents(on, config) { return require('@testomatio/reporter/cypress')(on, config) }`; filtering needs `@cypress/grep` |
|
|
211
|
-
| Jest | `reporters: ['default', ['@testomatio/reporter/jest', { apiKey: process.env.TESTOMATIO }]]`; never use `bail` |
|
|
212
|
-
| Vitest | `reporters: ['verbose', new TestomatioReporter()]` (from `@testomatio/reporter/vitest`); sent after the run ends |
|
|
213
|
-
| Mocha | `mocha --reporter @testomatio/reporter/mocha --reporter-options apiKey=$TESTOMATIO` |
|
|
214
|
-
| WebdriverIO | `reporters: [[testomatio, { apiKey: process.env.TESTOMATIO }]]` (`@testomatio/reporter/wdio`); wrap with `reporter run` for parallel |
|
|
215
|
-
| Cucumber-js | `npx cucumber-js --format @testomatio/reporter/cucumber` (features imported first via `check-cucumber`) |
|
|
216
|
-
| Jasmine / Protractor | `new JasmineReporter({ apiKey })` from `@testomatio/reporter/jasmine` |
|
|
217
|
-
| Nightwatch | `npx nightwatch --reporter @testomatio/reporter/nightwatch` |
|
|
218
|
-
| TestCafe | `npx testcafe chrome -r testomatio` |
|
|
219
|
-
| Newman | `newman-reporter-testomatio`, then `newman run … -r testomatio` |
|
|
220
|
-
| Java/Python/Ruby/PHP/C#/Go | generate JUnit XML → `xml`; or Allure results → `allure` |
|
|
221
|
-
|
|
222
|
-
```bash
|
|
223
|
-
# Playwright, reporter wired in config
|
|
224
|
-
TESTOMATIO=tstmt_*** npx playwright test
|
|
225
|
-
|
|
226
|
-
# CodeceptJS with parallel workers — wrap so all workers hit one run
|
|
227
|
-
TESTOMATIO=tstmt_*** npx @testomatio/reporter run 'npx codeceptjs run-workers 2'
|
|
228
|
-
|
|
229
|
-
# Pytest via JUnit XML
|
|
230
|
-
pytest --junit-xml report.xml
|
|
231
|
-
TESTOMATIO=tstmt_*** npx report-xml report.xml --lang=python
|
|
232
|
-
```
|
|
233
|
-
|
|
234
|
-
## Run lifecycle recipes
|
|
235
|
-
|
|
236
|
-
All of these create or mutate runs — authorized use only.
|
|
237
|
-
|
|
238
|
-
Plain report — reporter wired into the runner, `TESTOMATIO` set, run the tests. The run is created on the fly and finalized when the runner exits.
|
|
239
|
-
|
|
240
|
-
```bash
|
|
241
|
-
# Parallel CI shards into one run — same unique title on every shard + shared-run matching
|
|
242
|
-
TESTOMATIO=tstmt_*** TESTOMATIO_TITLE="report for ${GIT_COMMIT}" \
|
|
243
|
-
TESTOMATIO_SHARED_RUN=1 TESTOMATIO_SHARED_RUN_TIMEOUT=120 npx playwright test --shard=1/4
|
|
244
|
-
|
|
245
|
-
# Prepared run, launched later (the setup-pr-testing two-phase contract)
|
|
246
|
-
RUN_ID=$(npx @testomatio/reporter start --kind mixed \
|
|
247
|
-
--filter "coverage:file=coverage.tests.yml,diff=origin/main" --format id)
|
|
248
|
-
TESTOMATIO_RUN=$RUN_ID npx @testomatio/reporter run --remote github
|
|
249
|
-
|
|
250
|
-
# Selective execution from a coverage map
|
|
251
|
-
npx @testomatio/reporter run "npx playwright test" --filter "coverage:file=coverage.tests.yml,diff=develop"
|
|
252
|
-
# or resolve IDs yourself:
|
|
253
|
-
GREP=$(npx @testomatio/reporter run --filter-list "coverage:file=coverage.tests.yml" --format grep)
|
|
254
|
-
[ -n "$GREP" ] && npx playwright test --grep "$GREP"
|
|
255
|
-
|
|
256
|
-
# JUnit / Allure ingestion
|
|
257
|
-
TESTOMATIO=tstmt_*** npx @testomatio/reporter xml "target/surefire-reports/**.xml" --java-tests
|
|
258
|
-
TESTOMATIO=tstmt_*** npx @testomatio/reporter allure allure-results
|
|
259
|
-
|
|
260
|
-
# Deferred artifact upload (slow uplinks, or big files only)
|
|
261
|
-
TESTOMATIO=tstmt_*** TESTOMATIO_ARTIFACT_MAX_SIZE_MB=10 npx playwright test
|
|
262
|
-
TESTOMATIO=tstmt_*** npx @testomatio/reporter upload-artifacts
|
|
263
|
-
```
|
|
264
|
-
|
|
265
|
-
- Shard alternative without title matching: one job runs `start --format id`, exports the id, every shard runs with `TESTOMATIO_RUN=$RUN_ID TESTOMATIO_PROCEED=1`, a final job runs `finish`.
|
|
266
|
-
- `xml` links results via `@T<id>` in test names, `// @T<id>` in reachable source, or `tid://@T<id>` in output. `allure` also maps `@TmsLink` annotations.
|
|
267
|
-
|
|
268
|
-
Safe verification without touching the project (allowed without authorization — no network writes):
|
|
269
|
-
|
|
270
|
-
```bash
|
|
271
|
-
# local-only report: no key, markdown pipe on
|
|
272
|
-
TESTOMATIO_MARKDOWN_REPORT_SAVE=1 npx playwright test
|
|
273
|
-
# or capture what WOULD be sent, then preview
|
|
274
|
-
TESTOMATIO_DEBUG=1 npx playwright test # writes ./testomatio.debug.json
|
|
275
|
-
npx @testomatio/reporter replay --dry-run # previews, sends nothing
|
|
276
|
-
```
|
|
277
|
-
|
|
278
|
-
## Troubleshooting
|
|
279
|
-
|
|
280
|
-
| Symptom | Cause and fix |
|
|
281
|
-
|---|---|
|
|
282
|
-
| No run appears, no errors | `TESTOMATIO` not visible to the runner (subshell, missing dotenv load, unmapped CI secret). Check with `DEBUG=@testomatio/reporter:*`. Resolve the token per the order above |
|
|
283
|
-
| `TESTOMATIO is "undefined"` | The literal string `undefined` was interpolated — fix the shell/CI expansion |
|
|
284
|
-
| Two runs instead of one on parallel | Shard titles differ, `TESTOMATIO_SHARED_RUN` unset, or the window (default 20 min) elapsed — align `TESTOMATIO_TITLE`, raise the timeout. For runner-spawned workers, wrap with `reporter run` |
|
|
285
|
-
| A "disable" var didn't disable | Boolean vars enable on any value including `false`/`0` — unset them |
|
|
286
|
-
| Run stuck as Running | `TESTOMATIO_PROCEED` set without a `finish` — run `TESTOMATIO_RUN=<id> npx @testomatio/reporter finish` |
|
|
287
|
-
| `$(...)` output polluted by the banner | Add `--format` — only then is stdout clean |
|
|
288
|
-
| `--filter` rejected | Only `testomatio:` and `coverage:` pipes exist; check the prefix |
|
|
289
|
-
| `Coverage file not found` / `Git command failed` / `Missing required parameter: "file"` | The pipe reads the map with `fs` and runs `git diff` in the cwd — run from inside the repo, verify path/ref (shallow clones need full history) |
|
|
290
|
-
| `CI launch failed: No settings for <profile>` | The `--remote` profile doesn't exist — check Settings → CI (or `/api/v2/<project>/info` `ci_profiles`) |
|
|
291
|
-
| Artifacts missing | S3 env not set where tests ran (Docker: pass `-e`), `TESTOMATIO_DISABLE_ARTIFACTS` on, or files over the size cap — recover with `upload-artifacts --force` |
|
|
292
|
-
| Private artifacts upload but don't display | `S3_FORCE_PATH_STYLE=true` on AWS breaks pre-signed URLs — set `false`; avoid dots in bucket names; mirror creds in Project Settings |
|
|
293
|
-
| XML: `Entity expansion limit exceeded` | Trusted report with heavy entities — raise `TESTOMATIO_MAX_ENTITY_EXPANSIONS` |
|
|
294
|
-
| XML/Allure import hangs in CI | Network stall — add `--timelimit <sec>`; it kills with exit 0 so the pipeline isn't failed |
|
|
295
|
-
| Bitbucket comment hits `/pullrequests//comments` | Not a PR pipeline — `BITBUCKET_PR_ID` absent; only under `pipelines: pull-requests:` |
|
|
296
|
-
| Jest run status never updates | `bail` is set in the Jest config — remove it |
|
|
297
|
-
| Results lost after a flaky upload | Rerun with `TESTOMATIO_DEBUG=1`; recover a debug file with `replay` (history in `/tmp/testomatio.debug.<datetime>.json`) |
|
|
298
|
-
|
|
299
|
-
## Related skills
|
|
300
|
-
|
|
301
|
-
- `check-tests` / `check-cucumber` — import and sync test DEFINITIONS (the other side of the boundary).
|
|
302
|
-
- `qa-e2e-tests-reporting` — the setup workflow that installs and wires this reporter.
|
|
303
|
-
- `setup-pr-testing` — PR-driven CI pipelines built on prepared runs and `--remote`.
|
|
304
|
-
- `qa-test-code-coverage` — produces the `coverage.tests.yml` consumed by `--filter "coverage:…"`.
|
|
305
|
-
- `scan-automation-project` — discovers whether a workspace is an automation repo.
|
|
306
|
-
- `debug-fix-failed-flaky-autotests` — acting on the failures a run reports.
|
|
307
|
-
- `testomatio-mcp` — reading and analyzing runs after they exist.
|
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: explorbot-fundamentals
|
|
3
|
-
description: Use whenever the user runs, configures, or debugs Explorbot from the command line — choosing freesail/explore/test/plan/research, asking what a flag does, asking where an artifact lives, or troubleshooting a failed run. Guide-only — you present the commands/paths and the user runs them.
|
|
4
|
-
license: MIT
|
|
5
|
-
metadata:
|
|
6
|
-
author: Testomat.io
|
|
7
|
-
version: 0.1.0
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# Explorbot Fundamentals
|
|
11
|
-
|
|
12
|
-
Explorbot is an autonomous AI web-testing CLI. It drives its own browser (CodeceptJS → Playwright) and works in cycles of **research → plan → test**.
|
|
13
|
-
|
|
14
|
-
**The installed CLI and the installed package's `docs/` tree are the source of truth — do not paraphrase them from memory.** Discover commands and read docs at the moment of use.
|
|
15
|
-
|
|
16
|
-
## Where the docs actually live
|
|
17
|
-
|
|
18
|
-
Docs ship inside the npm package. After `npm i explorbot`, they're at:
|
|
19
|
-
|
|
20
|
-
```
|
|
21
|
-
<project root>/node_modules/explorbot/docs/
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
That's the *only* place to read them from in a typical user project. Do **not** look in the skill's own folder, do **not** look in a project-level `docs/` (that belongs to the user's app), do **not** fetch from the web. If `node_modules/explorbot/docs/` doesn't exist, Explorbot isn't installed → route the user to **`explorbot-setup`**.
|
|
25
|
-
|
|
26
|
-
(For an Explorbot contributor working in the explorbot repo itself, docs are at `<repo root>/docs/`. Detect this by checking for `package.json` with `"name": "explorbot"` at the project root. Everyone else: `node_modules/explorbot/docs/`.)
|
|
27
|
-
|
|
28
|
-
## Rule 1 — Discover commands via the CLI
|
|
29
|
-
|
|
30
|
-
Always run the CLI's own help before answering a "how do I…" or "what flag…" question:
|
|
31
|
-
|
|
32
|
-
```bash
|
|
33
|
-
npx explorbot --help # list every command
|
|
34
|
-
npx explorbot <command> --help # flags and options for one command
|
|
35
|
-
```
|
|
36
|
-
|
|
37
|
-
These outputs match the installed version. Any hardcoded list (in skills, blog posts, or your own memory) can be stale.
|
|
38
|
-
|
|
39
|
-
## Rule 2 — Read docs on demand, do not summarize ahead
|
|
40
|
-
|
|
41
|
-
Pick the file that matches the topic *when the question comes up* — do not pre-load summaries. All paths below are relative to `node_modules/explorbot/docs/` (or the repo's `docs/` for contributors).
|
|
42
|
-
|
|
43
|
-
| Topic the user is asking about | Open |
|
|
44
|
-
|---|---|
|
|
45
|
-
| Is this app even suitable for explorbot? | `prerequisites.md` |
|
|
46
|
-
| Full list of CLI + TUI commands and flags | `commands.md` |
|
|
47
|
-
| Config file shape, `dirs:`, rules wiring | `configuration.md` |
|
|
48
|
-
| AI providers (OpenRouter / OpenAI / Anthropic / Groq / Cerebras / Azure) | `providers.md` |
|
|
49
|
-
| Knowledge files (URL patterns, frontmatter, interpolation) | `knowledge.md` |
|
|
50
|
-
| Planner, planning styles, plan markdown format | `planner.md`, `test-plans.md` |
|
|
51
|
-
| Researcher (page analysis) | `researcher.md` |
|
|
52
|
-
| Page interaction model (locators, ARIA, iframes) | `page-interaction.md` |
|
|
53
|
-
| Re-running generated tests with healing | `rerun.md` |
|
|
54
|
-
| Generated test code (Playwright / CodeceptJS) | `automated-tests.md` |
|
|
55
|
-
| Hooks | `hooks.md` |
|
|
56
|
-
| Reporting (HTML/MD/Testomat.io) | `reporting.md` |
|
|
57
|
-
| Tracing / Langfuse / observability | `observability.md` |
|
|
58
|
-
| Library / programmatic use | `scripting.md`, `npm-package.md` |
|
|
59
|
-
| API testing | `api-testing.md` |
|
|
60
|
-
| Doc collector | `doc-collector.md` |
|
|
61
|
-
|
|
62
|
-
If the topic isn't in this table, `ls node_modules/explorbot/docs/` and pick the matching file by name.
|
|
63
|
-
|
|
64
|
-
## Rule 3 — CLI only; never drive the TUI
|
|
65
|
-
|
|
66
|
-
An agent can run only the non-interactive CLI (`explorbot explore`, `explorbot test`, `explorbot plan`, `explorbot research`, `explorbot navigate`, etc.). These run headless and exit.
|
|
67
|
-
|
|
68
|
-
**`explorbot start` launches an interactive terminal UI (TUI). An agent cannot operate a TUI — never try to launch or drive it.** If the user wants interactive mode, tell them to run `explorbot start [path]` themselves.
|
|
69
|
-
|
|
70
|
-
## Order of operations for every question
|
|
71
|
-
|
|
72
|
-
1. Verify `node_modules/explorbot/` exists. If not → route to **`explorbot-setup`**.
|
|
73
|
-
2. Identify whether the user is asking about a **command/flag** (→ run `npx explorbot … --help`) or a **concept/config/feature** (→ open the matching file in `node_modules/explorbot/docs/`).
|
|
74
|
-
3. Read the relevant source.
|
|
75
|
-
4. Answer using what you just read, and cite it (`node_modules/explorbot/docs/knowledge.md`, `npx explorbot explore --help`).
|
|
76
|
-
|
|
77
|
-
## Related skills
|
|
78
|
-
|
|
79
|
-
- [[explorbot-setup]] — install + config + verify reachability of one page (curl → navigate → credentials). Use this when `node_modules/explorbot/` is missing.
|
|
80
|
-
- [[explorbot-plan]] — write a test plan markdown by hand without exploring a live page.
|
|
81
|
-
- [[explorbot-debug]] — diagnose a failed session from `output/explorbot.log` + Langfuse traces.
|
|
82
|
-
- [[explorbot-fix-session]] — once a session is diagnosed, propose a single minimal fix.
|
|
83
|
-
|
|
84
|
-
## Anti-patterns
|
|
85
|
-
|
|
86
|
-
- ❌ Pasting big config snippets without opening `node_modules/explorbot/docs/configuration.md` first.
|
|
87
|
-
- ❌ Inventing a command that "should exist" — if `--help` doesn't show it, it doesn't exist.
|
|
88
|
-
- ❌ Telling the user to use explorbot for a landing page / blog / CMS — `node_modules/explorbot/docs/prerequisites.md` says it's for CRUD-heavy apps.
|