Squash DEVOPS

This guide presents the possibilities offered by Squash DEVOPS for executing automated tests from a CI/CD pipeline. The management of these tests and of the automation workflow in Squash TM is described in the documentation of that one.

Squash DEVOPS provides the following components (see diagram below):

  • Squash Orchestrator†
    Squash Orchestrator is composed of a set of micro-services to be used by launching automated tests in Squash TM or by sending an execution plan written in a specific format, the PEaC (Planned Execution "as Code").
    It enables you to run and coordinate the various components of the test execution chain (execution environments, automata, reporting…).
    It supports the following test technologies:

    • Cypress
    • Cucumber
    • JUnit
    • Postman
    • Robot Framework
    • SKF (Squash Keyword Framework)
    • SoapUI

    It is based on the OpenTestFactory Orchestrator and adds a set of micro-services to extend its possibilities, such as running Squash TM execution plan or reporting to Squash TM.

  • OpenTestFactory Agent†
    This agent allows HTTP communication between a Squash Orchestrator and a test execution environment.
    It is a process that runs on the execution environment. This process contacts the Squash Orchestrator at regular intervals, looking for orders to execute. Whenever there is a pending order, the agent will do as asked and send the result back to the orchestrator.

  • Orchestrator tools†
    These tools allow proper starting and stopping of the orchestrator.
    They also provide an online command (opentf-ctl) to easily launch execution plans, monitor their progress, list the execution environments…

  • Squash TM plugins

    • Test Plan Retriever allows the sending of details about a Squash TM execution plan to the Squash Orchestrator.
    • Result Publisher† allows the return of information towards Squash TM at the end of the execution of a Squash TM execution plan.
  • Squash DEVOPS Plugin for Jenkins
    This Jenkins plugin facilitates the sending of a PEaC to the Squash Orchestrator from a Jenkins pipeline.

Squash DEVOPS high level architecture diagram: Architecture diagram


† indicates a component which is common to Squash AUTOM and Squash DEVOPS.