Merge pull request #8067 from bridadan/icetea_test_docs

Spelling fixes and general readability improvements for TEST_APPS documentation
pull/8156/head
Martin Kojtal 2018-09-17 14:48:20 +02:00 committed by GitHub
commit d02cd70433
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 37 additions and 27 deletions

View File

@ -2,57 +2,66 @@
### Structure
mbed-os has a folder called TEST_APPS that contains everything related to Icetea testing.
There are currently 3 folders:
Mbed OS has a folder called `TEST_APPS` that contains everything related to Icetea testing.
- device - contains all the different test applications you can flash to your board
- icetea-plugins - contains plugins that are being used by some of the testcases, needed for the test execution
- testcases - contains Icetea testcases written in Python
There are currently three folders:
The testcases depends on test applications
- `device` - contains all the different test applications you can flash to your board.
- `icetea_plugins` - contains plugins that are being used by some of the testcases, needed for the test execution.
- `testcases` - contains Icetea testcases written in Python.
The testcases depend on test applications.
### Preparing your work environment
#### Prerequisities
#### Prerequisites
You need Icetea and mbed-cli that supports Icetea, installed.
You need Icetea and version 1.8.0 or higher of Mbed CLI installed.
#### Selecting the network interface to use
Depending on a device, there might be a default network interface type defined in the mbed-os/targets/targets.json, which is used to locate a test-config file by default.
If there is not, or you want to use a different interface than the default, you need to provide a relevant test-config -file to the mbed test with --test-config option.
The test-config file contains the necessary information for the test application, there are some test-config files located under mbed-os/tools/test_configs.
Devices which have their network drivers residing inside mbed-os can use generic test_configs like HeapBlockDeviceAndEthernetInterface.json and HeapBlockDeviceAndWifiInterface.json. Otherwise you need to use a device specific test-config.
Depending on the device, there might be a default network interface type defined in `mbed-os/targets/targets.json`, which you can use to locate a default test-config file.
If the default network interface type is not defined or you want to use a different interface than the default, you need to provide a test-config file to the mbed test with `--test-config` option.
The test-config file contains the necessary information for the test application. There are some test-config files located under `mbed-os/tools/test_configs`.
Devices that have their network drivers residing inside `mbed-os` can use generic `test_configs`, such as `HeapBlockDeviceAndEthernetInterface.json` and `HeapBlockDeviceAndWifiInterface.json`. Otherwise, you need to use a device-specific test-config.
### Running the tests
Now that the interface has been selected you can run the icetea tests from the mbed-os root on your command line by
Now that you have selected the interface, you can run the Icetea tests from the `mbed-os` root on your command-line by running the following command:
`>mbed test -m <target> -t <toolchain> --icetea`
`mbed test -m <target> -t <toolchain> --icetea`
This command will compile the mbed-os, then compiles the test applications, creates a test suite and then starts running the tests.
This command compiles the OS, compiles the test applications, creates a test suite and then starts running the tests.
If you want only to run some specific tests, you can use the -n -option. You can list multiple tests by separating them by comma (,).
If you only want to run some specific tests, you can use the `-n` option. You can choose multiple tests by separating them with a comma (`,`):
`>mbed test -m <target> -t <toolchain> --icetea -n test1,test2`
`mbed test -m <target> -t <toolchain> --icetea -n test1,test2`
#### Running the tests with specifig test-config
#### Running the tests with a specific test-config
Some devices may offer multiple network interfaces to operate with. For example, `UBLOX_EVK_ODIN_W2` offers ethernet and Wi-Fi capabilities.
Some devices may offer multiple network interfaces to operate with. For example, UBLOX_EVK_ODIN_W2 offers ethernet and Wi-Fi capabilities.
The tests can be run for either one of those using already existing test-config -files.
To run the tests with Wi-Fi interface:
`>mbed test -m UBLOX_EVK_ODIN_W2 -t <toolchain> --icetea --test-config tools/test_configs/HeapBlockDeviceAndWifiInterface.json`
To run the tests with the Wi-Fi interface:
To run the tests with ethernet interface:
`>mbed test -m UBLOX_EVK_ODIN_W2 -t <toolchain> --icetea --test-config tools/test_configs/HeapBlockDeviceAndEthernetInterface.json`
`mbed test -m UBLOX_EVK_ODIN_W2 -t <toolchain> --icetea --test-config tools/test_configs/HeapBlockDeviceAndWifiInterface.json`
To run the tests with the ethernet interface:
`mbed test -m UBLOX_EVK_ODIN_W2 -t <toolchain> --icetea --test-config tools/test_configs/HeapBlockDeviceAndEthernetInterface.json`
#### Providing Wi-Fi access point information
If you are using Wi-Fi interface for running the tests, you need to provide also information about the used access point.
If you are using the Wi-Fi interface for running the tests, you need to also provide information about the used access point.
The information can be provided in the used test-config file.
Example of access point information:
```
"target_overrides": {
"*": {
@ -66,7 +75,7 @@ Example of access point information:
### Test results
Icetea prints the results from the test run to the command line, and the final result looks similar to this.
Icetea prints the results from the test run to the command-line, and the final result looks similar to this:
```
+--------------------------------+---------+-------------+-------------+-----------+----------+
@ -89,5 +98,6 @@ Icetea prints the results from the test run to the command line, and the final r
+---------------+----------------+
```
The results from the tests can also be found in the mbed-os/log folder.
You probably want to add the log folder to your .mbedignore file to prevent issues with build commands becoming too long over the time.
You can also find the results from the tests in the `mbed-os/log` folder.
You probably want to add the log folder to your `.mbedignore` file to prevent issues with build commands becoming too long over the time.