Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Test Execution in Raspberry Pi device

There are generic test cases that can be executed on Raspberry Pi device loaded with RDKB stack. This helps partners to familiarize with the Automatics system and helps to validate basic features in RDKB in Raspberry Pi.

...

  • Automatics system (Includes Automatics Orchestration, Automatics Properties, Device Manager, Jenkins)
  • Automatics Core and RDKB Utils maven artifacts deployed in self hosted artifactory repository
  • Configure Raspberry Pi device in Device Manager, Automatics Orchestration and Automatics Properties
  • Configure the test scripts in Automatics Orchestration
  • Maven Deploy generic Raspberry Pi Provider Implementation provided by RDKM or partner specific Raspberry Pi Provider Implementation to self hosted artifactory repository.
  • Configure Raspberry Pi Provider Implementation artifact details in jenkins job.

Automatics Architecture

Automatics system involves Automatics Orchestration, Automatics Properties, Jenkins, Automatics Core, Test Utils, Test Scripts, Device Manager and Partner Provider implementations.

The details on how various components are linked is explained in Automatics Architecture.

Setting up Automatics for Test Execution in Raspberry Pi 

Partners can follow below steps for setting up Automatics for executing test cases in Raspberry Pi.

1. Raspberry Pi with RDKB Stack

Ensure that a Raspberry Pi device loaded with RDKB stack is available for test execution.

2. Setup Automatics

As the next step, partner can work on setting up Automatics system. This includes Automatics Orchestration, Automatics Properties, Device Manager, Jenkins and job configurations, Maven artifact deployment of Automatics Core and RDKB Test Utils.

...

3. Configure Raspberry Pi Partner Provider Artifact Details in Jenkins Test Execution Job

As part of executing RDKB tests in partner environment , partner has to update rdkb-test project pom file to point to the Raspberry Pi Provider implementation (it will vary for partners)
We have added a supporting shell script , which can be configured to the Jenkins Job, so it will add the RPi Provider dependency to the rdkb-test project pom.xml during run time. And, this can be done by configuring Build Step under Build Section in Test Execution Jenkins Job. 

Jenkins Job → Build Section → Shell Script. 

    • Update command with parameter values as below

/mnt/scripts/pre-test-config.sh -g 'com.automatics.providers' -a 'rpi-provider-impl' -v '0.0.1-SNAPSHOT'

3. Configure Device in Automatics

After the setup is ready, partner has to configure the device model and device details in Automatics and its details are available at Device Configuration in Automatics.

4. Validate Automatics Setup

After the system is ready, partner can validate the system by executing test script TC-QUICK-DUMMY-ALL-MODELS from Automatics Orchestration. From the execution, partner can verify communication between below components are working fine. After setup validation, partner can configure RDKB test scripts in Orchestration.

  • Communication between Orchestration and Device Manager.
  • Communication between Orchestration and Jenkins.
  • Communication between Jenkins and Automatics Properties.

5. Configure RDKB Test Scripts in Orchestration

To configure RDKB test scripts to Orchestration, please follow the steps below.

6. Configure Device Login Details in Jenkins VM

Some test scripts has to execute commands within device and verify its response. The DeviceConnection Provider implementation in rpi-provider/java-handler uses SSH connection to device and then executes the commands. So to create SSH connection, ssh login details are to be provided to Automatics. This can be done by configuring ssh login credentials in the format  and keep it in Jenkins VM. The location where this config file is kept should be configured in Automatics Properties for parameter ''.

7. Trigger Execution

After the test scripts are configured, partner can trigger test execution from Orchestration via Trigger Execution Manually page.

...