init-e2e
Scaffold Playwright e2e tests for Perspective views into an Ignition project. Usage — /ignition-scada:init-e2e [--force]
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Scaffold Playwright e2e tests for Perspective views into an Ignition project. Usage — /ignition-scada:init-e2e [--force]
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Ignition Perspective e2e testing reference — Playwright page objects, gateway API helpers, and Perspective DOM conventions. Use when writing or debugging Playwright browser tests for Perspective views.
Ignition testing framework reference — writing and running Jython gateway tests. Use when writing tests, debugging test failures, or working with the testing.* modules.
Run Jython gateway tests or Playwright e2e tests. Usage — /ignition-scada:test [module|package|ui|e2e|smoke]
Ignition system.* API reference — 14 modules, 239 functions. Use when writing Ignition Jython scripts.
Run ignition-lint on files or the whole project. Usage — /ignition-scada:ignition-lint [file|directory|profile]
Scaffold the Jython test framework, WebDev test endpoints, and type stubs into an Ignition project. Usage — /ignition-scada:init-testing [--all] [--force]
| name | init-e2e |
| description | Scaffold Playwright e2e tests for Perspective views into an Ignition project. Usage — /ignition-scada:init-e2e [--force] |
Scaffold a complete Playwright e2e test setup for Perspective views. This creates:
Run the detection script:
${CLAUDE_PLUGIN_ROOT}/scripts/detect-project.sh
Check project type and Perspective availability:
If is_parent == true AND has_perspective == false (inheritable parent project):
This project is an inheritable (parent) project — it provides shared scripts and resources to child projects but has no Perspective views of its own. E2E tests target Perspective views, so they should be set up in a child project.
Tell the user:
"This project ({project_title}) is an inheritable parent project — child projects inherit its scripts but it has no Perspective views of its own.
Child projects that inherit from this one: {for each child in children:}
- {child.name} — {child.has_perspective ? 'has Perspective views' : 'no Perspective views'} {child.has_e2e ? '(e2e already set up)' : ''}
Recommended: I can scaffold E2E tests in a child project that has Perspective views. Which child project should I set up?"
If the user picks a child project, run the scaffold steps below using the child's --project-root and --project-name instead of the current project's. The E2E setup lives in the child's directory.
If no children have Perspective views, explain that E2E tests need a project with com.inductiveautomation.perspective/ views. Jython gateway tests (/ignition-scada:init-testing, /ignition-scada:test) still work normally in this project.
Do not proceed with scaffolding in the parent project.
If is_parent == true AND has_perspective == true (parent with its own views):
Proceed normally. Note to the user that child projects also inherit from this project, but since it has its own Perspective views, E2E tests can be set up here.
If has_perspective == false AND is_parent == false (non-parent, no Perspective):
Warn the user: "No Perspective module found (com.inductiveautomation.perspective/ directory missing). E2E tests require Perspective views. Continue anyway?"
Otherwise (has_perspective == true, not a parent): Proceed normally.
Present findings and ask the user to confirm their tag provider.
Auto-detect the Perspective project name:
PERSPECTIVE_PROJECT variableAsk the user to confirm the Perspective project name.
Check if the Jython test framework exists (existing_testing.jython_framework). If not, inform the user and automatically run the testing scaffold first:
${CLAUDE_PLUGIN_ROOT}/scripts/scaffold-testing.sh \
--project-root <detected> \
--project-name <detected> \
--gateway-url <detected> \
--tag-provider <confirmed>
The e2e gateway-api helper depends on the WebDev testing/tags endpoint.
Run the e2e scaffold script:
${CLAUDE_PLUGIN_ROOT}/scripts/scaffold-e2e.sh \
--project-root <detected> \
--project-name <detected> \
--gateway-url <detected> \
--tag-provider <confirmed> \
--perspective-project <confirmed>
Install dependencies:
cd <project-root>/e2e && npm install && npx playwright install chromium
Set up the .env file:
parent.has_e2e_env. If the parent project has an existing e2e/.env:
e2e/.env at {parent.e2e_env_path}. Since both projects share the same gateway, I can copy it and just update the PERSPECTIVE_PROJECT name.".env to <project-root>/e2e/.envPERSPECTIVE_PROJECT to the confirmed value for this project.env exists:
e2e/.env.example to e2e/.envIGNITION_USER and IGNITION_PASSWORD.env — it's in the scaffolded .gitignoreExplain auth setup:
cd e2e && npx playwright test --project=setup to authenticatenpm test to run the smoke testsnpx playwright show-report to view results in a browser