aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2018-11-18 08:14:29 -0700
committerSimon Glass <sjg@chromium.org>2018-11-29 09:30:05 -0700
commit499fde5c23921add3cf95fecfe0b03d717d5a33b (patch)
treee27d66a946453ab7095e5a917adb7ed21a443940 /test
parentc83c436de0f8f02b7626fdd9a55663845facb26f (diff)
downloadu-boot-499fde5c23921add3cf95fecfe0b03d717d5a33b.zip
u-boot-499fde5c23921add3cf95fecfe0b03d717d5a33b.tar.gz
u-boot-499fde5c23921add3cf95fecfe0b03d717d5a33b.tar.bz2
test: Add a 'make qcheck' target for quicker testing
At present tests are quite slow to run, over a minute on my machine. This presents a considerable barrier to bisecting for failures. The slowest tests are the filesystem ones and the buildman --fetch-arch test. Add a new 'qcheck' target that skips these tests. This reduces test time down to about 40 second, still too long, but bearable. Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'test')
-rw-r--r--test/README6
-rw-r--r--test/py/tests/test_fs/test_basic.py1
-rw-r--r--test/py/tests/test_fs/test_ext.py1
-rw-r--r--test/py/tests/test_fs/test_mkdir.py1
-rw-r--r--test/py/tests/test_fs/test_unlink.py1
-rwxr-xr-xtest/run10
6 files changed, 17 insertions, 3 deletions
diff --git a/test/README b/test/README
index 873a4e1..4bc9ca3 100644
--- a/test/README
+++ b/test/README
@@ -10,11 +10,15 @@ Running tests
To run most tests on sandbox, type this:
- test/run
+ 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
-------
diff --git a/test/py/tests/test_fs/test_basic.py b/test/py/tests/test_fs/test_basic.py
index c067cc9..140ca29 100644
--- a/test/py/tests/test_fs/test_basic.py
+++ b/test/py/tests/test_fs/test_basic.py
@@ -13,6 +13,7 @@ import re
from fstest_defs import *
@pytest.mark.boardspec('sandbox')
+@pytest.mark.slow
class TestFsBasic(object):
def test_fs1(self, u_boot_console, fs_obj_basic):
"""
diff --git a/test/py/tests/test_fs/test_ext.py b/test/py/tests/test_fs/test_ext.py
index 38217d0..06cad55 100644
--- a/test/py/tests/test_fs/test_ext.py
+++ b/test/py/tests/test_fs/test_ext.py
@@ -13,6 +13,7 @@ import re
from fstest_defs import *
@pytest.mark.boardspec('sandbox')
+@pytest.mark.slow
class TestFsExt(object):
def test_fs_ext1(self, u_boot_console, fs_obj_ext):
"""
diff --git a/test/py/tests/test_fs/test_mkdir.py b/test/py/tests/test_fs/test_mkdir.py
index d9da97b..b3fe11c 100644
--- a/test/py/tests/test_fs/test_mkdir.py
+++ b/test/py/tests/test_fs/test_mkdir.py
@@ -11,6 +11,7 @@ This test verifies mkdir operation on file system.
import pytest
@pytest.mark.boardspec('sandbox')
+@pytest.mark.slow
class TestMkdir(object):
def test_mkdir1(self, u_boot_console, fs_obj_mkdir):
"""
diff --git a/test/py/tests/test_fs/test_unlink.py b/test/py/tests/test_fs/test_unlink.py
index 69c1a6e..2b81746 100644
--- a/test/py/tests/test_fs/test_unlink.py
+++ b/test/py/tests/test_fs/test_unlink.py
@@ -12,6 +12,7 @@ on file system.
import pytest
@pytest.mark.boardspec('sandbox')
+@pytest.mark.slow
class TestUnlink(object):
def test_unlink1(self, u_boot_console, fs_obj_unlink):
"""
diff --git a/test/run b/test/run
index cd323b0..55a6649 100755
--- a/test/run
+++ b/test/run
@@ -1,6 +1,7 @@
#!/bin/bash
# Script to run all U-Boot tests that use sandbox.
+# $1: tests to run (empty for all, 'quick' for quick ones only)
# Runs a test and checks the exit code to decide if it passed
# $1: Test name
@@ -12,10 +13,13 @@ run_test() {
[ $? -ne 0 ] && failures=$((failures+1))
}
+# SKip slow tests if requested
+[ "$1" == "quick" ] && mark_expr="not slow"
+
failures=0
# Run all tests that the standard sandbox build can support
-run_test "sandbox" ./test/py/test.py --bd sandbox --build
+run_test "sandbox" ./test/py/test.py --bd sandbox --build -m "${mark_expr}"
# Run tests which require sandbox_spl
run_test "sandbox_spl" ./test/py/test.py --bd sandbox_spl --build \
@@ -36,7 +40,9 @@ export DTC=${DTC_DIR}/dtc
run_test "binman" ./tools/binman/binman -t
run_test "patman" ./tools/patman/patman --test
-run_test "buildman" ./tools/buildman/buildman -t
+
+[ "$1" == "quick" ] && skip=--skip-net-tests
+run_test "buildman" ./tools/buildman/buildman -t ${skip}
run_test "fdt" ./tools/dtoc/test_fdt -t
run_test "dtoc" ./tools/dtoc/dtoc -t