Test plan for "Open Web Terminal from attached CI runner in Web IDE"

Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.

  • Close this issue

Test Plan

Introduction

This test plan is for #5426 (closed). The feature allows a user to open a web terminal from the Web IDE and execute commands against the latest committed version of their code.

Scope

  • EE-only (Ultimate)
  • The terminal will include only the latest commit, not any uncommited changes. A new commit will destroy the current web terminal instance and replace it.
  • The web terminal is displayed as a vertical panel. It can be resized but not moved.

ACC Matrix

Simple Secure Responsive Intuitive Reliable
Web IDE
CI/CD

For more information see the Google Testing Blog article about the 10 minute test plan and this wiki page from an open-source tool that implements the ACC model.

Capabilities

Web IDE is:

  • Intuitive

    • When a new commit is made and the web terminal is already open the change in the web terminal is clear.
    • If a runner it not available the user is appropriately informed.
    • The terminal behaves as a typical terminal
  • Reliable

    • All code up to the latest commit can be accessed via the web terminal.
  • Responsive

    • The web terminal can be resized.

CI/CD is:

  • Secure
    • The web terminal should allow access only to the code for the project. If a runner is reused or shared there should be no trace of any previous code or code from another project.
    • Only applicable runners are used for the web terminal.

Test Plan

End-to-end tests:

  • Add and configure a runner, push a change to a project, and then
    • start the web terminal and cat the changed file
    • make a change to a project via the Web IDE, commit it and cat the changed file
  • Start the web terminal while there are no runners available. Check that there is an appropriate message.
  • Check that the web terminal can't be started if there is no web-ide job defined in .gitlab-ci.yml.
  • Check that the web terminal can be stopped and restarted and that there is appropriate feedback.

Test Coverage sheet

Edited Jun 25, 2025 by 🤖 GitLab Bot 🤖
Assignee Loading
Time tracking Loading