All of lore.kernel.org
 help / color / mirror / Atom feed
From: Heinrich Schuchardt <xypron.glpk@gmx.de>
To: u-boot@lists.denx.de
Subject: [PATCH 2/3] doc: move test/README to HTML documentation
Date: Mon, 18 Jan 2021 20:24:02 +0100	[thread overview]
Message-ID: <20210118192403.31126-3-xypron.glpk@gmx.de> (raw)
In-Reply-To: <20210118192403.31126-1-xypron.glpk@gmx.de>

Move test/README to the 'Develop U-Boot' chapter of the HTML documentation.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
---
 doc/develop/index.rst   |  1 +
 doc/develop/testing.rst | 96 +++++++++++++++++++++++++++++++++++++++++
 test/README             | 96 -----------------------------------------
 3 files changed, 97 insertions(+), 96 deletions(-)
 create mode 100644 doc/develop/testing.rst
 delete mode 100644 test/README

diff --git a/doc/develop/index.rst b/doc/develop/index.rst
index b108df8e1b..ed2e73bf56 100644
--- a/doc/develop/index.rst
+++ b/doc/develop/index.rst
@@ -29,3 +29,4 @@ Testing
    :maxdepth: 1

    coccinelle
+   testing
diff --git a/doc/develop/testing.rst b/doc/develop/testing.rst
new file mode 100644
index 0000000000..4bc9ca3a6a
--- /dev/null
+++ b/doc/develop/testing.rst
@@ -0,0 +1,96 @@
+Testing in U-Boot
+=================
+
+U-Boot has a large amount of code. This file describes how this code is
+tested and what tests you should write when adding a new feature.
+
+
+Running tests
+-------------
+
+To run most tests on sandbox, type this:
+
+    make check
+
+in the U-Boot directory. Note that only the pytest suite is run using this
+command.
+
+Some tests take ages to run. To run just the quick ones, type this:
+
+    make qcheck
+
+
+Sandbox
+-------
+U-Boot can be built as a user-space application (e.g. for Linux). This
+allows test to be executed without needing target hardware. The 'sandbox'
+target provides this feature and it is widely used in tests.
+
+
+Pytest Suite
+------------
+
+Many tests are available using the pytest suite, in test/py. This can run
+either on sandbox or on real hardware. It relies on the U-Boot console to
+inject test commands and check the result. It is slower to run than C code,
+but provides the ability to unify lots of tests and summarise their results.
+
+You can run the tests on sandbox with:
+
+	./test/py/test.py --bd sandbox --build
+
+This will produce HTML output in build-sandbox/test-log.html
+
+See test/py/README.md for more information about the pytest suite.
+
+
+tbot
+----
+
+Tbot provides a way to execute tests on target hardware. It is intended for
+trying out both U-Boot and Linux (and potentially other software) on a
+number of boards automatically. It can be used to create a continuous test
+environment. See http://www.tbot.tools for more information.
+
+
+Ad-hoc tests
+------------
+
+There are several ad-hoc tests which run outside the pytest environment:
+
+   test/fs	- File system test (shell script)
+   test/image	- FIT and legacy image tests (shell script and Python)
+   test/stdint	- A test that stdint.h can be used in U-Boot (shell script)
+   trace	- Test for the tracing feature (shell script)
+
+TODO: Move these into pytest.
+
+
+When to write tests
+-------------------
+
+If you add code to U-Boot without a test you are taking a risk. Even if you
+perform thorough manual testing at the time of submission, it may break when
+future changes are made to U-Boot. It may even break when applied to mainline,
+if other changes interact with it. A good mindset is that untested code
+probably doesn't work and should be deleted.
+
+You can assume that the Pytest suite will be run before patches are accepted
+to mainline, so this provides protection against future breakage.
+
+On the other hand there is quite a bit of code that is not covered with tests,
+or is covered sparingly. So here are some suggestions:
+
+- If you are adding a new uclass, add a sandbox driver and a test that uses it
+- If you are modifying code covered by an existing test, add a new test case
+  to cover your changes
+- If the code you are modifying has not tests, consider writing one. Even a
+  very basic test is useful, and may be picked up and enhanced by others. It
+  is much easier to add onto a test - writing a new large test can seem
+  daunting to most contributors.
+
+
+Future work
+-----------
+
+Converting existing shell scripts into pytest tests.
diff --git a/test/README b/test/README
deleted file mode 100644
index 4bc9ca3a6a..0000000000
--- a/test/README
+++ /dev/null
@@ -1,96 +0,0 @@
-Testing in U-Boot
-=================
-
-U-Boot has a large amount of code. This file describes how this code is
-tested and what tests you should write when adding a new feature.
-
-
-Running tests
--------------
-
-To run most tests on sandbox, type this:
-
-    make check
-
-in the U-Boot directory. Note that only the pytest suite is run using this
-command.
-
-Some tests take ages to run. To run just the quick ones, type this:
-
-    make qcheck
-
-
-Sandbox
--------
-U-Boot can be built as a user-space application (e.g. for Linux). This
-allows test to be executed without needing target hardware. The 'sandbox'
-target provides this feature and it is widely used in tests.
-
-
-Pytest Suite
-------------
-
-Many tests are available using the pytest suite, in test/py. This can run
-either on sandbox or on real hardware. It relies on the U-Boot console to
-inject test commands and check the result. It is slower to run than C code,
-but provides the ability to unify lots of tests and summarise their results.
-
-You can run the tests on sandbox with:
-
-	./test/py/test.py --bd sandbox --build
-
-This will produce HTML output in build-sandbox/test-log.html
-
-See test/py/README.md for more information about the pytest suite.
-
-
-tbot
-----
-
-Tbot provides a way to execute tests on target hardware. It is intended for
-trying out both U-Boot and Linux (and potentially other software) on a
-number of boards automatically. It can be used to create a continuous test
-environment. See http://www.tbot.tools for more information.
-
-
-Ad-hoc tests
-------------
-
-There are several ad-hoc tests which run outside the pytest environment:
-
-   test/fs	- File system test (shell script)
-   test/image	- FIT and legacy image tests (shell script and Python)
-   test/stdint	- A test that stdint.h can be used in U-Boot (shell script)
-   trace	- Test for the tracing feature (shell script)
-
-TODO: Move these into pytest.
-
-
-When to write tests
--------------------
-
-If you add code to U-Boot without a test you are taking a risk. Even if you
-perform thorough manual testing at the time of submission, it may break when
-future changes are made to U-Boot. It may even break when applied to mainline,
-if other changes interact with it. A good mindset is that untested code
-probably doesn't work and should be deleted.
-
-You can assume that the Pytest suite will be run before patches are accepted
-to mainline, so this provides protection against future breakage.
-
-On the other hand there is quite a bit of code that is not covered with tests,
-or is covered sparingly. So here are some suggestions:
-
-- If you are adding a new uclass, add a sandbox driver and a test that uses it
-- If you are modifying code covered by an existing test, add a new test case
-  to cover your changes
-- If the code you are modifying has not tests, consider writing one. Even a
-  very basic test is useful, and may be picked up and enhanced by others. It
-  is much easier to add onto a test - writing a new large test can seem
-  daunting to most contributors.
-
-
-Future work
------------
-
-Converting existing shell scripts into pytest tests.
--
2.29.2

  parent reply	other threads:[~2021-01-18 19:24 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-18 19:24 [PATCH 0/3] move test related documentation to HTML Heinrich Schuchardt
2021-01-18 19:24 ` [PATCH 1/3] doc: structure doc/develop/index.rst Heinrich Schuchardt
2021-01-19 18:06   ` Simon Glass
2021-01-23 17:46   ` Tom Rini
2021-01-18 19:24 ` Heinrich Schuchardt [this message]
2021-01-19 18:06   ` [PATCH 2/3] doc: move test/README to HTML documentation Simon Glass
2021-01-23 17:46   ` Tom Rini
2021-01-18 19:24 ` [PATCH 3/3] doc: move test/py/README.md " Heinrich Schuchardt
2021-01-19 18:06   ` Simon Glass
2021-01-23 17:46   ` Tom Rini

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210118192403.31126-3-xypron.glpk@gmx.de \
    --to=xypron.glpk@gmx.de \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.