Interaction of Automatics Orchestration with CDRouter


Following diagram shows interaction of Orchestration tool with CD Router Automation Engine via CD Router Service. (Trigger execution steps is explained below)

No Jenkins resources are needed for triggering test execution.

 


 CDRouter and Automatics in CI/CD Pipeline

  • User Triggers CDRouter test from Automatics CI environment.
  • Then Automatics Orchestration gets the required details from Automatics DB and device details from Device manager and then sends trigger request to CDRouter microservice which again sends the request to device manager.
  • Then device manager sends the response to CDRouter microservice and then the microservice sends the trigger request to CDRouter device, where execution of the testcase happens.
  • Then CDRouter sends the test results response to CDRouter microservice.
  • Then CDRouter microservice updates the result in the CI environment where user can see the end results from Job manager page.



CDRouter in CI Pipeline Use Cases


Execution from Automatics Orchestration

Following diagram shows the interaction among Automatics CD Router service and CD Router Automation Engine

CDRouter Support in UI Pages Screens


Existing PagesPurposeChanges Expected
Trigger Execution Manually PageUser can select CDRouter packages trigger executions

New Drop Down for selecting CD Router Tests

via Test Source

Job Manager PageUser can view the progress of CD Router package executions - Each job will show the status of single packageNo change in UI
Execution Results PageTo view overall execution results like Total script count, and its pass and fail countNo change in UI
Detailed Execution Results PageTo view the execution results of each test script (in cd router each test case contains only one step)No change in UI
Manage script pageTo map cdrouter package with automatics automation idNo change in UI


CDRouter Rest APIs 

Following Rest APIs from CDRouter side are used in service

Test Configuration side

APIs available

  1. To get the list of packages configured in CDRouter,  we can use webAPI mentioned in below link

https://support.qacafe.com/cdrouter/cdrouter-web-api/packages#list-packages

       2. To get the list of test scripts/test names in a package, we can use webAPI mentioned in below link

https://support.qacafe.com/cdrouter/cdrouter-web-api/packages#get-a-package

       3.To get the device configs, we can use webAPI mentioned in below link

https://support.qacafe.com/cdrouter/cdrouter-web-api/devices#list-devices

       4.To get the test configs, we can use webAPI mentioned in below link

https://support.qacafe.com/cdrouter/cdrouter-web-api/configs#list-configs


Execution side

APIs available

  1. To trigger an execution job in CDRouter, we can use webAPI mentioned in below link.  

           Inputs to be passed are package name, device config and test config

               On success, it will return 200 response code and status of execution will be Pending initially.

  1. To get the status of job, we can use the below rest endpoint

             We can think of background thread checking for updates of running jobs from cdrouter.

              https://support.qacafe.com/cdrouter/cdrouter-web-api/jobs#get-a-job

      3. To get execution result of job, we can use webAPI mentioned in below link. The input to the restapi result id and in output we overall status count of all test cases.

     "loops": 5, "tests": 2552, "pass": 0, "fail": 1150
  • No labels