mirror of
https://github.com/apache/nuttx.git
synced 2026-05-10 07:18:49 +08:00
14cb309e68
Build Documentation / build-html (push) Has been cancelled
The citests.rst now documents how to run the CI test suites locally (the same way they are done in NuttX GitHub CI). Other pages are created for different parts of NuttX testing. Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
60 lines
1.8 KiB
ReStructuredText
60 lines
1.8 KiB
ReStructuredText
.. include:: /substitutions.rst
|
|
.. _citests:
|
|
|
|
======================================
|
|
Running CI Runtime Test Suites Locally
|
|
======================================
|
|
|
|
NuttX automatically runs continuous integration (CI) tests on
|
|
`simulator <https://nuttx.apache.org/docs/latest/guides/simulator.html>`__
|
|
and QEMU targets when a new pull request is submitted. To avoid the tests failing
|
|
you can also run them locally on your computer prior to submitting a new pull request.
|
|
This page describes the step by step manual to do so.
|
|
|
|
Configuring NuttX
|
|
=================
|
|
|
|
NuttX has a simulator target that allows the user to run NuttX as a regular
|
|
program on a computer. The simulator target with CI test is configured and
|
|
compiled followingly.
|
|
|
|
.. code-block:: console
|
|
|
|
$ cd nuttx
|
|
$ ./tools/configure.sh sim:citest
|
|
$ make
|
|
|
|
You should see NuttX shell with built in test applications. Now you can exit
|
|
the simulator.
|
|
|
|
.. code-block:: console
|
|
|
|
nsh> poweroff
|
|
$
|
|
$ # we're back at the Linux prompt.
|
|
|
|
|
|
Running CI Tests with ``tools/ci/testrun``
|
|
==========================================
|
|
|
|
Running CI tests locally requires Minicom and Python 3.6 or newer to be
|
|
installed on the system. Other requirements can be installed with following
|
|
set of commands.
|
|
|
|
.. code-block:: console
|
|
|
|
$ cd tools/ci/testrun/env
|
|
$ pip3 install -r requirements.txt
|
|
$ cd ..
|
|
$ cd script
|
|
|
|
Now you have everything prepared to run CI tests. The tests themselves are run
|
|
by following command.
|
|
|
|
.. code-block:: console
|
|
|
|
$ python3 -m pytest -m 'common or sim' ./ -B sim -P <nuttx-path> -L <log-path> -R sim -C --json=<log-path>/pytest.json
|
|
|
|
Where nuttx-path is an absolute path to NuttX root directory and log-path is
|
|
a user defined directory to which tests log are saved.
|