Documentation - aqua cloud
🇬🇧 English
🇬🇧 English
  • 💻Web client
    • Getting started
    • General
      • Home page
      • App language
      • User account
      • Change password
      • Shortcuts & Accessibility
    • How to Contact Our Support
  • 👩‍🔧Administration
  • User administration
    • Adding and editing user profile
    • Roles and permissions
    • Assign, unassign or change licenses
      • Comparison of Licenses
    • Assign/unassign projects and roles
    • Licenses statistics
    • Statistics
  • Project configuration
    • [NEW] Project template configuration (fields)
      • Shared value sets
    • [OLD] Project template configuration (fields)
      • Shared value sets
      • Creating field groups
    • Field rules
    • [NEW] Workflow configuration
      • Global rules
      • Status and transitions
    • [OLD] Workflow configuration
    • Additional project settings
    • Project integrations
    • System log
    • Email notifications
      • Project default notifications
      • My notifications
      • Configuration of the project notification templates
      • Troubleshooting
  • Projects and folders
    • Project wizard
    • Projects
      • Export project
      • Import project
        • Migration from Testrail
      • Archive project
    • Folders
      • Export project folder
      • Import project folder
  • 🧩Modules
  • Navigation page
    • Project tree
    • Items grid
    • Filtering and grouping
    • Views
    • Search
    • Preview item details
  • Items
    • Requirements management
      • Requirements
      • Subrequirements
      • Requirements coverage
    • Test cases management
      • Test cases
      • Nested test cases (shared test cases/steps)
      • Manual testing
      • Test data or Variables manager
      • Test environment tracking with labels (tags)
      • Test execution results
      • Test automation
      • Capture: Test recorder/bug reporter
      • Test it: easy way to start run
      • Quick run: test execution of multiple test cases at once
    • Test scenarios management
      • Test scenarios
      • Adding test cases to a test scenario
      • Executing test scenarios
    • Defects management
      • Defects
      • Creating a defect from a test execution
      • Review found or linked defects to the test execution
      • Creating a defect with Capture
    • General item capabilities
      • Creating and Editing Items
      • Copy item to a target project or duplicate within a project
      • Taking over field values between items
      • Item template (defaults)
      • Dependencies
      • Add links to a description
      • Take screenshots
      • Watch item and notify other users
      • Attachments (files)
      • History of changes
      • Discussions (comments)
      • Print item data
  • Reporting
    • Creating a new report template
    • Basic report elements
    • Element tree structure
    • Element properties
    • Diagrams
    • Pivot table
    • 'Sum' function
    • Creating custom report script
    • Parametrization of reports
    • Exclude empty items from a report
    • Adding table of contents to a report
    • How to filter executions based on custom added fields?
  • Dashboards
    • Creating a dashbord
    • Publishing the dashboard
    • Creating a chart
    • KPI alerts
    • Drilldown to details from a chart
    • Burndown chart template
  • Agile
    • Backlog
    • Sprint board
    • Preview
  • 🖥️Desktop client
    • Getting started
      • Important notice: Deprecation of the desktop client in June 2025 [updated]
      • FAQ: Transitioning from the desktop client to the web Client
      • Desktop installation
      • Home screen configuration
      • Views
      • Grid
    • Agile board
      • Burn Down Chart
    • Dashboard
    • User Administration
      • Adding and managing users
      • Roles and permissions
      • Assigning licenses projects and roles
      • Statistics
    • Project configuration
      • Configuration of Fields and Workflows
      • Email Notification
      • Change company logo in printout
      • Import Project Configuration
    • Import / Export Wizard
    • Project Planner
      • Creating and editing a new project plan
      • Adding and syncing items to project plan
      • Resource planning
      • Gates and Stages
    • Requirements Management
      • Dependency
      • Subrequirements
      • Mind map
      • Comments
      • Documents
    • Test Management
      • Step Designer
      • Test Execution
        • Autosave of a test execution
      • Variable Manager
      • Nested Testcases
      • Disable manual test execution time
    • Test Scenarios
      • Test Scenarios
      • Scheduled Executions of Test Scenarios
      • Run Dependency
    • Defect Management
    • Reporting
      • Creating a Report
      • Creating a new report template
      • The Report Wizard
      • Basic Report Elements
      • Element tree structure
      • Element Properties
      • Diagrams
      • Pivot Table
      • Sum Function
      • Script Development
      • Parametrization
      • Performance Improvements for Report Creation
      • Remove empty elements
      • Table of Contents
      • Invalid References
    • Agile Board
      • Configuring the Agile Component
      • Planning board
      • Scrum board
      • Burn Down Chart
    • Versioning
  • 💿Installation for on premise
    • System Requirements
      • Server
      • Desktop Client
      • Web Client
      • Agents
    • Server Installation
    • Server parameters
    • Web Client Installation
    • Getting Agents
    • Connection to MSSQL Database
    • Connection to Oracle Database 12.2c
    • Licenses
    • Monitoring
    • SSL-Configuration
    • Content Security Policy (CSP) Settings
  • 🪄AI Copilot
    • Transform your testing and project management with aqua's AI Copilot
    • Enable and manage AI Copilot options
    • Create documents with ease with AI Copilot
    • AI Copilot: generate a comprehensive description for the test cases in just one click
    • AI Copilot - create test cases out of requirements or based on context in seconds
      • Create test cases from the navigation page
      • Create test cases from a requirement
      • Create a test case from a test case page
    • Generate test data with AI Copilot
    • Generate test case based on a file
    • Generate test cases in BDD format
    • Generate test cases with AI Copilot using test design techniques
    • Create user stories, BDDs, or PRDs based on a file
    • Create multiple user stories or BDDs with AI Copilot
    • Split or convert requirements
    • AI Copilot chat
  • 🔗Integrations
    • Jira sync: synchronize items between aqua and Jira projects
      • Before you begin: key steps for synchronization
      • Sync configurator set up
        • Sync Configurator options
      • Log in to the Sync Configurator
      • Sync of the projects between aqua and Jira
      • Fields mapping
        • Supported default Jira fields
        • General aqua and Jira fields compatibility
        • Special compatibility for aqua and Jira fields
      • Additional settings
        • Allow mapping of only selected values and ignore other field values for the sync
        • Automatic creation and mapping of field values
      • Troubleshooting
      • Synchronisaton of subtasks with aqua
      • Formatting support
    • Azure Devops sync
    • Jira link: create and/or link Jira issues to aqua tickets
    • aqua4Jira plugin: Cover Jira issue with aqua test cases
      • Installation of the plugin
        • aqua4Jira Plugin - Now Compatible with Jira Data Center!
      • Configuration in Jira
      • Configuration in aqua
    • Automatic display of test cases or test scenarios in Jira tickets
    • Confluence integration
    • Capture: record tests or create comprehensive bug reports
    • Testlink: importer tool for migrating test cases to aqua
    • SSO
      • LDAP
      • SAML Configuration
        • Installation
        • Sample
  • 🌀Automation
    • Desktop Client
      • Creating an Automation Agent
      • Configure Automation
      • Ranorex
      • UFT
      • JMeter
      • SoapUI
      • Database
      • UnixShell
      • PowerShell
      • Automation Library
    • Web Client
      • Automation Agent
        • Creation & Configuration
        • Agent pools
        • Running task
      • Powershell
      • Unix Shell
      • Jenkins integration
      • Selenium
    • REST API
    • Automation: CI/CD tools and aqua REST API
      • Gitlab CI/CD: JAVA/Playwright
      • Gitlab CI/CD: TypeScript/Cypress
      • Gitlab CI/CD: TypeScript/Playwright
      • Gitlab CI/CD: TypeScript/Cypress/Cucumber
  • 🚀Product updates for on premise customers
    • Product updates
      • 25.47.0 - On Premise
      • 25.36.0 - On Premise
      • 25.31.0 - On Premise
      • 25.18.0 - On premise
      • 25.10.0 - On Premise
      • 24.135.0 - On Premise
      • 24.130.0 - On Premise
      • 24.126.0 - On Premise
      • 24.108.0 - On Premise
      • 24.101.0 - On Premise
      • 24.93.0 - On Premise
      • 24.83.0 - On Premise
      • 24.71.0 - On Premise
      • 24.53.0 - On Premise
      • 24.8.0 - On Premise
      • 23.140 - On Premise
      • 23.126.0 - On Premise
      • 23.102.0 - On Premise
      • 23.70.0 - On Premise
      • 23.22.0 - On Premise
      • 22.132.0 - On Premise
      • 22.123.0 - On Premise
    • Release Notes
      • 25.47.0 - On Premise
      • 25.36.0 - On Premise
      • 25.31.0 and 25.33.0 - On Premise
      • 25.26.0 - On Premise
      • 25.18.0 - On Premise
      • 25.10.0 - On Premise
      • 24.135.0 - On Premise
      • 24.130.0 - On Premise
      • 24.126.0 - On Premise
      • 24.114.0 - On Premise
      • 24.108.0 - On Premise
      • 24.101.0 - On Premise
      • 24.93.0 - On Premise
      • 24.83.0 - On Premise
      • 24.71.0 - On Premise
      • 24.53.0 - On Premise
      • 24.8.0 - On Premise
      • 23.140.0 - On Premise
      • 23.126.0 - On Premise
      • 23.102.0 - On Premise
      • 23.70.0 - On Premise
      • 23.22.0 - On Premise
      • 22.132.0 - On Premise
      • 22.123.0 - On Premise
  • 🚀Product updates for public and private clouds customers
    • Product updates
      • 25.47.0 - public and private cloud
      • 25.36.0 - public and private cloud
      • 25.33.0 - public and private cloud
      • 25.18.0 - public and private cloud
      • 25.10.0 - public and private cloud
      • 24.135 - public and private clouds
      • 24.130 - public and private clouds
      • 24.126.0 - public and private clouds
      • 24.108.0 - public and private clouds
      • 24.101.0 - public and private clouds
      • 24.93.0 - public and private clouds
      • 24.88.0 - public and private clouds
      • 24.83.0 - public and private clouds
      • 24.71.0 - public and private clouds
      • 24.63.0 - public and private clouds
      • 24.50.0 - public and private clouds
      • 24.33.0 - public and private clouds
      • 24.8.0 - public and private clouds
      • 23.140 - public and private clouds
      • 23.126.0 - public and private clouds
      • 23.107.0 - public and private clouds
      • 23.92.0 - public and private clouds
      • 23.70.0 - public and private clouds
      • 23.46.0 - public and private clouds 1/3
      • 23.46.0 - public and private clouds 2/3
      • 23.46.0 - public and private clouds 3/3
      • 23.22.0 - public and private clouds
      • 22.132.0 - public and private clouds
    • Release notes
      • 25.47.0 - public and private cloud
      • 25.36.0 - public and private cloud
      • 25.33.0 - public and private cloud
      • 25.31.0 - public and private cloud
      • 25.24.0 - public and private cloud
      • 25.18.0 - public and private cloud
      • 25.10.0 - public and private cloud
      • 24.135.0 - public and private clouds
      • 24.130 - public and private clouds
      • 24.126.0 - public and private clouds
      • 24.114.0 - public and private clouds
      • 24.108.0 - public and private clouds
      • 24.101.0 - public and private clouds
      • 24.93.0 - public and private clouds
      • 24.88.0 - public and private clouds
      • 24.83.0 - public and private clouds
      • 24.71.0 - public and private clouds
      • 24.63.0 - public and private clouds
      • 24.50.0 - public and private clouds
      • 24.33.0 - public and private clouds
      • 24.8.0 - public and private clouds
      • 23.140.0 - public and private clouds
      • 23.126.0 - public and private clouds
      • 23.107.0 - public and private clouds
      • 23.92.0 - public and private clouds
      • 23.70.0 - public and private clouds
      • 23.46.0 - public and private clouds
      • 23.22.0 - public and private clouds
      • 22.132.0 - public and private clouds
      • 22.123.0 - public and private clouds
    • 📢AQUA NEWS
      • 🔒 Rate Limits for Public Cloud Users
      • Preview of aqua's public API
      • aqua is now ISO 27001 certified and DORA Compliant
      • Upcoming changes to aqua API
      • AI Copilot launching for All public clouds users on January 27th!
  • 📹Capture
    • What is Capture?
    • Chrome extension installation
    • Capturing in Incognito mode
    • Using Capture with Edge
    • Capturing with video
      • Option to enable mic when capturing a screen and adding voice notes
      • Option to pause/resume while capturing the video
        • Masking sensitive information while capturing
    • Capturing with screenshot
    • Running a test execution
    • Last minute session replay
    • Masked inputs while creating captures
Powered by GitBook
On this page

Was this helpful?

  1. Automation
  2. Automation: CI/CD tools and aqua REST API

Gitlab CI/CD: TypeScript/Playwright

Updating aqua Test Case Execution based on Test Case run in GitLab

PreviousGitlab CI/CD: TypeScript/CypressNextGitlab CI/CD: TypeScript/Cypress/Cucumber

Last updated 1 year ago

Was this helpful?

First, generate a new project in your workspace.

Then make sure that Node.js is installed.

Install Playwright (choose TypeScript during installation process):

“npm init playwright@latest”

Create a Playwright Test Case. In this example we will use basic steps to exercise website:

For automation purpose let's assume that the Test title is based on the actual aqua Test Case Id: e.g in the case above we will update aqua Test Case with Id=270.

Now we need to update Aqua Test Case Execution based on the result of the Playwright Test Case run. To make it general and executable for all cases in identical manner we will add “AfterEach” hook in TestBase class “testBase.ts”. Each new test will inherit it. TestBase class looks as follows:

import { test } from '@playwright/test';
import { EnvAquaRestConfig } from '../aquaAPI/envAquaRestConfig';
import { ApiTestExecutionNew,
        ApiTestStepExecutionStepType,
        ApiTestStepExecutionUpdateStatus,
        TestExecutionClient } from '../aquaAPI/src/api/aqua';




export class TestBase{}


test.afterEach(async ({ page }) => {
 console.log(`Finished ${test.info().title} with status ${test.info().status}`);


 if (test.info().status !== test.info().expectedStatus)
   console.log(`Did not run as expected, ended up at ${page.url()}`);


    const restConfig = new EnvAquaRestConfig();
   const client = new TestExecutionClient(restConfig.url, { fetch });
   const testCaseId = Number(test.info().title);


   let stepStatus = ApiTestStepExecutionUpdateStatus.Pass;
   if (test.info().status === 'failed') {
     stepStatus = ApiTestStepExecutionUpdateStatus.Failed;
   } else if (test.info().status != 'passed') {
     throw new Error('no such status for test case execution');
   }
  
   const executionData = {
     Guid: undefined,
     TestCaseId: testCaseId,
     TestCaseName: undefined,
     Finalize: false,
     ValueSetName: undefined,
     TestScenarioInfo: undefined,
     Steps: [
       {
         Index: 1,
         Name: 'Step 1',
         StepType: ApiTestStepExecutionStepType.Step,
         Status: stepStatus,
       },
     ],
     TestedVersion: undefined,
     ExecutionDuration: undefined,
     AttachedLabels: undefined,
     CustomFields: undefined,
     Attachments: undefined
   } as unknown as ApiTestExecutionNew;
    await client.create([executionData]);
  
});

For the above API request we need to know test case execution status from Playwright. This is being done by “test.info().status”.

To update aqua with Test Case Execution info we also need to provide aqua Test Case Id: in the above example test case id is extracted from “Number(test.info().title)”.

After successful Playwright test execution we should see corresponding single Test Case execution in aqua

To be able to run the above Playwright Project using GitLab CI/CD we need to create workflow file .gitlab-ci.yml. An example of .gitlab-ci.yml script is shown below:

stages:
 - test


tests:
 stage: test
 image: mcr.microsoft.com/playwright:v1.42.0-jammy
 script:
   - npm ci
   - npx playwright test

Once a GitLab test runner is configured and connected to your GitLab projects we can Run GitLab Pipeline using the above workflow:

Link to GitLab Repository - https://gitlab.com/aqua3191704/playwright-typescript-gitlab.git

Classes we use for API calls can be generated from JSON schema available here:

🌀
https://app.aqua-cloud.io/aquaWebNG/swagger/v1/swagger.json
https://playwright.dev