RDK Resources
[*RDK Preferred*]
Code Management Facility
RDK Forums
[RDK Conferences]
RDK Support
Archives
Papers & Presentations Archive
User can login into Automatics through any one of the two authentication modes - Self-Authentication or LDAP Authentication.
By giving the respective credentials such as username & password and selecting either of the Self Authentication/LDAP Authentication modes from the drop down, user can login to Automatics Tool.
User will be able to see the below Homepage after a successful login.
User can see the Builds Processed Details for a default time period of 30 days. User can change the date and click on filter to see the required details.
User can also see the Execution Details of Last 4.
For user to execute the test cases on the devices need to have permissions to access the device group. Admin user can map device groups to users so that only those users mapped to device group can execute tests on device.
To perform test execution, user needs to add test details to Automatics system. This can be done from Manage Scripts page.
Script Details
To add a new script, user can click on “Add New” link on the right top of page. Field “Automation Id” should be unique name that identifies an automated test. This id should match with the automation id in automated test case. Automatics considers RDK builds in any of the 3 categories ‘Sprint’, “Stable” and “Release”. A test case can be mapped to execute in any or all of the build types.
On Next page, Environment can be selected. In the screen shown below, the test is RDKV device related. So mapping the test against RDKV environment. Next applicable device model/s can be selected. End point “RACK_DEVICE” refers to devices managed by rack system and “DESK DEVICE” refers to desk devices. Head end field refers to device head end. If head end is provided, then during execution, Automatics can request for devices from given head end.
On Next page, user can select the feature required by device during execution of test. Here, as we are adding MOCA related test case, feature “MOCA” is selected. During execution of this test, Automatics will request for device with feature “MOCA” from inventory. If a test case can mapped to a particular RDK component testing, then it can be mapped with Field “RDK Component”. Then Click on “Save”.
Script Steps
Using filter option, display the newly added test case and click on “Update Step Details“.
We can add test steps from here and to add new step click on “Add Row” button.
After adding test steps, the scripts should be enabled. Only enabled scripts will be considered for execution by Automatics.
Tick mark shows that the script is enabled.
To edit the script details, click on 'Edit Option'.
User can edit the script details from here.
To update the step details, click on 'Update Step Details' option.
User can update the step details from below page.
To delete script details and test steps configured, please click on 'Delete Script Details' option.
To reduce the effort for user to add new script details, user can clone existing test script and update required details as required.
An export feature is added to Automatics to help user to export the existing test script and its steps in bulk, which could be used to add the test cases to new or a different server of Automatics. The excel sheet with the test cases could be exported from Manage scripts page using Export/Import options menu. There is an option to export all Test cases or Filter the Test cases to be exported using the Filter option. Please see the below image for details
To reduce the effort for user to add new test script and its steps in bulk, user can import the existing excel sheet with required details. The template for the excel sheet to be used for importing the test case can be downloaded from Manage scripts page from Export/Import options menu. File picker from the Managed scripts page can be used to choose the excel sheet from the local PC and upload it to Automatics to import all the test cases and its steps in bulk
User can trigger a test execution from “Trigger Execution Manually” page.
Service Name “FUNCTIONAL VERIFICATION” refers to functional testing. “CI_VERIFICATION” refers to CI testing. In Build Name field, user can provide the build name that is currently loaded in device. End Point “RACK_DEVICE” and “DESK_DEVICE” which indicates Rack device and Desk device. From Environment Type, user can select values like “RDKV” or “RDKB” and test type like “1HOUR”, “4HOUR” etc.
When “Is Quick Test Required”, it means before executing tests like 1HOUR or others, an image upgrade is to be done on device. QT refers to “Quick Test” which is a special test that will load the device with image mentioned in Build Name field. Only if QT is success, other type of tests will be executed by Automatics. If QT box is unchecked, then image upgrade is not performed.
Navigate to next page. In 2nd page, user can select test cases to be executed.
Next, navigate to 3rd page Device Details. User can provide device details from here. Automatics gets devices for execution either from user or via pool based mechanism.
Select the option, ‘Specify Device MAC Address’ for user to provide the mac address. If option ‘Take Boxes from pool’ is selected, then devices will be fetched by Automatics from partner’s inventory. The device needed for execution are identified from test script features added in Manage Script page.
‘Build Appender’ field has different functions in job execution. It is used in 2 different ways.
During execution, when user provides a custom appender value, then in job manager page the jobs are displayed in separate tab with appender name. In results page, the results will be displayed in against buildname with appender so that execution results for the same build with and without appender are displayed as 2 entries.
Partner can configure pre-defined appender values in orchestration via System config. If user selects any of the pre-defined appender, then partner can add support at partner side implementation to perform device initialization based on appender value. The Automatics core sends appender to partner during initialization. This helps user to enable specific configurations in device before test execution.
When execution is triggered successfully, below pop message will be displayed.
User can verify the status of the job executions from Job Manager page. Also, user can cancel or re-trigger a job, view child jobs, navigate to Jenkins executions are other features provided by Job Manager.
Navigate to Manage Test Trigger, click on Job Manager under RDKV/RDKB.
Here, user can find the status of job executions. Quick Test(QT) is always the parent job of any other jobs. All other job types will be created under QT as child jobs. If user selected QT, then QT will be executed first on all selected devices and only when QT execution status is “COMPLETED” child jobs will start executing. If QT job status is “FAILURE”, then all child jobs become “CANCELLED”. Click on Action to view child jobs.
In scenario where user skips QT, then QT job with dummy QT test will be created and child jobs will be added under it. User can find the details of job by hovering on the job name.
Details of JOB status are
Job Status |
Description |
QUEUED |
Job is created and waiting for free Jenkins job for execution |
SCHEDULED |
Found free Jenkins job and it is scheduled for execution |
IN PROGRESS |
Jenkins job execution in progress |
CANCELLED |
Jenkins job cancelled |
COMPLETED |
Jenkins job execution completed successfully. The job has executed the tests. |
FAILURE |
Jenkins job execution was not completed. The job has failed to executed tests. |
ALREADY_LOCKED |
Device provided for execution is locked by some other execution. Execution cannot proceed. |
INVENTORY_DOWN |
Device inventory is down. Automatics couldn’t get devices for execution. |
BOXES_UNUSABLE |
Jenkins job execution could not be completed due to device issue |
BUILD_CHANGED_BEFORE_TEST |
As pre-test verification, Automatics core will check if the build in device is same as user provided. If it is not same, then execution will fail with this status |
BUILD_CHANGED_AFTER_TEST |
As post-test verification, Automatics core will check if the build in device is same as user provided. If it is not same, then execution will fail with this status |
SSH_FAIL |
Automatics core will check the accessibility of device before starting test execution. If device is not accessible, then execution fails with this status |
Initially, the status will be QUEUED. When the job is triggered in Jenkins it changes to SCHEDULED and when job execution is going on, then status will become IN PROGRESS. Once, it is completed you can see the status as COMPLETED.
Action tab on the page supports features in the order as “Go To Jenkins Job”, “Re-trigger”, “View Execution Results”, “View Child Jobs” and “More Options”. User can cancel a job from “More Options”.
User will be to view and download the various reports of Build Execution Results, Device Usage, Script Health & Script Execution Time reports from the Reports section.
From execution results page, user can view the results of the triggered build executions. It shows the total count of test steps and its Pass, Fail, NT(Not Tested), NR(Not Run) and NA(Not Applicable) counts.
Now, click on Reports and go to Execution Results under RDKV/RDKB.
Following details will be displayed as shown below:
Now, click on the Build name under the Image Name column to see the Test Case Results as below.
You can verify the required information from the Execution Result Details for that particular build.
User can get an idea on the execution results from test case count via this page.
Now, click on Reports and go to Execution Results - TC under RDKV/RDKB.
Select the date for the required result details.
Following details will be displayed as shown below:
User can export test cases level execution results using 'Download Reports' button located in Execution Results – TC page.
Follow the steps mentioned in Execution Results – TC section to navigate to Execution Results – TC page.
Select required date and below filter options for the required test result details:
Regular Test Types, CI Test Types and Execution Mode
Now, click on 'Download Reports' button highlighted below:
Test cases results available in the tabular format will be exported to excel document.
User will be able to generate the usage reports of a particular device within the required dates.
Now, click on Reports and go to Device Usage Report.
Enter the following details of Device Mac Address, Date and Time as shown below.
After the entering the details click on Generate.
The following data/details of that particular device will be generated as shown below.
User can generate the Health Report of the test scripts.
Click on Reports and go to Script Health Report.
Now, enter the following required details of Select Start Date & End Date followed by Select Category Type as shown below and click on Generate.
After clicking on Generate the following data/details will be generated as show below.
Also, by clicking on Download Report you can download the report to your local in order to see the data offline.
User can generate the Execution Time Report of the test scripts for the required dates.
Click on Reports and go to Script Execution Time Report.
Now, enter the following details of Select Category Type, Select Start Date, End Date followed by Select Test Type as shown below and click on Generate.
After clicking on Generate the following data/details will be generated as show below.
Also, by clicking on Download Report you can download the report to your local in order to see the data offline.
RDK/CI portal sends execution requests to Automatics orchestration. Automatics based on filters configured decides if execution to be performed or not.
RDK E2E Manager has 2 sections.
User will be able to see the incoming RDK Requests from the RDK Portal from this page.
Navigate to RDK E2E Manager and click on E2E RDK Request under RDKV/RDKB.
If the request status is accepted, then execution will be triggered by Jenkins. Or else if the status is REJECTED, then no execution will be triggered.
User can configure RDK filters so that when request comes from RDK portal, Automatics can decide based on it, if execution should trigger or not.
Now, navigate to RDK E2E Manager and click on E2E RDK Request Filter under RDKV/RDKB.
User will be able to see the existing RDK Request Filters, if any present already like the above screen having.
We can Enable/Disable the Request Filters by clicking on the below Enable Selected Records/ Disable Selected Records. Only enabled filters will be considered by Automatics.
Also, we can show/hide the params of the request filter by clicking on Show/Hide Filter Params button above.
Edit Request Filter Details
We can Edit the Request Filter, by clicking on Edit Request Filter Details under the Action column.
Edit the required details of the request filter and click on Save Results.
Add new Request Filter Details
We can add a new Request Filter, by clicking on Add Request Filter Details button above.
Now, enter the required Settings details & Automation ID details of the filter and click on Save Results.
User needs to configure all device models that is going to execute from Automatics.
Automatics identifies a device model from its build name. For this, admin user has to configure device model and its corresponding build name. It requires only to map the device model and initial starting sub string of build name. The starting few letters(image prefix) in build name should be unique to a device model and this should be added in 'Image Name Prefix' text.
For Automatics to use devices from partner's inventory, device groups have to be configured. The device group name in inventory should be added here so that user can execute tests on devices within these groups only. Admin user can map device groups to users so that only those users mapped to device group can execute tests on device.
For each test type in Automatics, job will be created during test execution. The jobs are created based on job templates. For each test type, a job template need to be created.
Eg: AUTO_1HOUR_JOB. Quick Test is configured as parent of all other jobs. Child jobs are executed in the order of priority set for the job.
Automatics orchestration has the functionality to send email notifications. For sending an email notification an SMTP server is required. One an SMTP server is available the below are the configuration which need to be configured for sending email notification's from Automatics Orchestration. The configuration can be added via "System Configuration" page under "Settings" menu
Configuration Name | Description |
---|---|
SMTP_PROTOCOL | It is the protocol used for sending email. The value can either be SMTP or SMTPS. If the SMTP server connection should SSL enabled but not TLS then the value should be configured as SMTPS. In all other scenarios SMTP should be configured. |
SMTP_HOST | It is the IP address or domain of the SMTP server. |
SMTP_PORT | It is the PORT of SMTP server. |
SMTP_AUTHENTICATION | A Boolean field, this needs to be configured as true when the SMTP server has authentication. If the SMTP server do not have an authentication then this needs to be configured as false and there is no need to configure SMTP_USERNAME and SMTP_PASSWORD. |
SMTP_USERNAME | Username of the SMTP server which is used to login and send email from an application |
SMTP_PASSWORD | Password of the SMTP server. |
SMTP_AUTH_TYPE | The value of this configuration can either be "SSL" or "TLS". If the SMTP server is enabled with STARTTLS then it should be configured as TLS or else it should be configured as SSL |
Apart from the above configurations if any other properties are required for connecting to a SMTP server then those SMTP mail properties can be added as JAVA_OPTS in the server. For doing the same follow the below steps.
The above are the configurations which should be available in Automatics for sending emails.
New Pages are added as a part of scriptless executions Details for the following pages is provided below
User can get to know the API's information such as API category, Class name, API name, Applicable for, description and parameter details.
Please refer Automatics 3.0 User Manual#APIExplorer for more details.
Build Test Utility is creating the set of steps frequently used in test cases which helps in reducing the user efforts while creating test cases.
Please refer Automatics 3.0 User Manual#BuildTestUtility for more details.
Tests Constants in automatics 3.0 is used to provide a feasible option for test developer to add a key value pair where the value can accessed any where in the test case by providing the key value.
Please refer Automatics 3.0 User Manual#TestConstants for more details on how to create and use test constants in test cases.
Scriptless test cases can be build in Build test case page.
Please refer Automatics 3.0 User Manual#BuildTestCase for more details on how to build 3.0 test cases.
1 Comment
vignesh
How do I add build name in automatics orchestration ?