This page covers the following topics:
We recommend that you run Testrun on a stand-alone machine that has a fresh install of Ubuntu 20.04, 22.04, or 24.04 LTS (laptop or desktop).
Before you start, ensure you have the following hardware:
- PC running Ubuntu LTS (laptop or desktop)
- 2x USB Ethernet adapter (one may be a built-in Ethernet port)
- Internet connection
Note: If you're using Testrun in a virtual machine, follow the steps on the Virtual machine page.
Install Docker on your Ubuntu LTS PC using the installation guide. The following system dependencies install automatically when you install Testrun:
- Python3-dev
- Python3-venv
- Openvswitch Common
- Openvswitch Switch
- Build Essential
- Net Tools
- Ethtool
You can test any device with an Ethernet connection and support for IPv4 DHCP. However, to achieve a compliant test outcome, you must configure your device correctly and implement the required security features. The Application Security Requirements for IoT Devices outlines these standards. Additional details are available on the Test modules page.
Follow these steps to install Testrun:
- Download the latest version of the Testrun installer from the Releases page.
- Open a terminal and navigate to the location of the Testrun installer (most likely your Downloads folder).
- Install the package using
sudo apt install ./testrun*.deb
Testrun installs under the /usr/local/testrun
directory. Testing data is available in the local/devices/{device}/reports
folders.
Note: Local CA certificates should be uploaded within Testrun to run TLS server testing.
Follow these steps to start Testrun:
- Attach the network interfaces.
- Connect one USB Ethernet adapter to the internet source (e.g., router or switch) using an Ethernet cable.
- Connect the other USB Ethernet adapter directly to the IoT device you want to test using an Ethernet cable.
Notes:
- Disable both adapters in the host system (IPv4, IPv6, and general) by opening Settings, then Network.
- Keep the DUT powered off until prompted.
- Start Testrun with the command
sudo testrun
- To run Testrun in network-only mode (without running any tests), use the
--net-only
option. - To run Testrun with just one interface (connected to the device), use the
--single-intf
option.
- To run Testrun in network-only mode (without running any tests), use the
Follow these steps to test your IoT device:
-
Open Testrun by navigating to http://localhost:8080 in your browser.
-
Select the Settings menu in the top-right corner, then select your network interfaces. You can change the settings at any time.
-
Select the device repository icon on the left panel to add a new device for testing.
-
Select the Add Device button.
-
Enter the MAC address, manufacturer name, and model number.
-
Select the test modules you want to enable for this device.
Note: For qualification purposes, you must select all. -
Select Save.
-
Select the Testrun progress icon, then select the Testing button.
-
Select the device you want to test.
-
Enter the version number of the firmware running on the device.
-
Select Start Testrun.
- If you need to stop Testrun during testing, select Stop next to the test name.
- Once the Waiting for Device notification appears, power on the device under test. A report appears under the Reports icon once the test sequence is complete.
If you encounter any issues, try the following:
- Ensure that your computer meets all hardware and software prerequisites.
- Verify that the network interfaces are connected correctly.
- Check the configuration settings.
- Refer to the Testrun documentation.
If you still need assistance, ask a question on the Issues page.
Once you complete a test attempt, you can review the test report provided by Testrun. For more information on Testrun requirements and outputs, refer to the Testing documentation.
To uninstall Testrun correctly, use the built-in dpkg uninstall command: sudo apt-get remove testrun