diff options
| -rw-r--r-- | meta/classes/testimage.bbclass | 24 | ||||
| -rw-r--r-- | meta/lib/oeqa/oetest.py | 9 | ||||
| -rw-r--r-- | meta/lib/oeqa/utils/decorators.py | 8 | ||||
| -rw-r--r-- | meta/lib/oeqa/utils/sshcontrol.py | 9 |
4 files changed, 50 insertions, 0 deletions
diff --git a/meta/classes/testimage.bbclass b/meta/classes/testimage.bbclass index 940520ffd6..903849d9d4 100644 --- a/meta/classes/testimage.bbclass +++ b/meta/classes/testimage.bbclass | |||
| @@ -1,3 +1,27 @@ | |||
| 1 | # Copyright (C) 2013 Intel Corporation | ||
| 2 | # | ||
| 3 | # Released under the MIT license (see COPYING.MIT) | ||
| 4 | |||
| 5 | |||
| 6 | # testimage.bbclass enables testing of qemu images using python unittests. | ||
| 7 | # Most of the tests are commands run on target image over ssh. | ||
| 8 | # To use it add testimage to global inherit and call your target image with -c testimage | ||
| 9 | # You can try it out like this: | ||
| 10 | # - first build a qemu core-image-sato | ||
| 11 | # - add INHERIT += "testimage" in local.conf | ||
| 12 | # - then bitbake core-image-sato -c testimage. That will run a standard suite of tests. | ||
| 13 | |||
| 14 | # You can set (or append to) TEST_SUITES in local.conf to select the tests | ||
| 15 | # which you want to run for your target. | ||
| 16 | # The test names are the module names in meta/lib/oeqa/runtime. | ||
| 17 | # Each name in TEST_SUITES represents a required test for the image. (no skipping allowed) | ||
| 18 | # Appending "auto" means that it will try to run all tests that are suitable for the image (each test decides that on it's own). | ||
| 19 | # Note that order in TEST_SUITES is important (it's the order tests run) and it influences tests dependencies. | ||
| 20 | |||
| 21 | # TEST_LOG_DIR contains a ssh log (what command is running, output and return codes) and a qemu boot log till login | ||
| 22 | # Booting is handled by this class, and it's not a test in itself. | ||
| 23 | # TEST_QEMUBOOT_TIMEOUT can be used to set the maximum time in seconds the launch code will wait for the login prompt. | ||
| 24 | |||
| 1 | TEST_LOG_DIR ?= "${WORKDIR}/testimage" | 25 | TEST_LOG_DIR ?= "${WORKDIR}/testimage" |
| 2 | 26 | ||
| 3 | DEFAULT_TEST_SUITES = "ping auto" | 27 | DEFAULT_TEST_SUITES = "ping auto" |
diff --git a/meta/lib/oeqa/oetest.py b/meta/lib/oeqa/oetest.py index 5777ff8852..7f6baa4038 100644 --- a/meta/lib/oeqa/oetest.py +++ b/meta/lib/oeqa/oetest.py | |||
| @@ -1,3 +1,12 @@ | |||
| 1 | # Copyright (C) 2013 Intel Corporation | ||
| 2 | # | ||
| 3 | # Released under the MIT license (see COPYING.MIT) | ||
| 4 | |||
| 5 | # Main unittest module used by testimage.bbclass | ||
| 6 | # This provides the oeRuntimeTest base class which is inherited by all tests in meta/lib/oeqa/runtime. | ||
| 7 | |||
| 8 | # It also has some helper functions and it's responsible for actually starting the tests | ||
| 9 | |||
| 1 | import os, re, mmap | 10 | import os, re, mmap |
| 2 | import unittest | 11 | import unittest |
| 3 | import inspect | 12 | import inspect |
diff --git a/meta/lib/oeqa/utils/decorators.py b/meta/lib/oeqa/utils/decorators.py index 21e6b22cb9..adec65eb44 100644 --- a/meta/lib/oeqa/utils/decorators.py +++ b/meta/lib/oeqa/utils/decorators.py | |||
| @@ -1,3 +1,11 @@ | |||
| 1 | # Copyright (C) 2013 Intel Corporation | ||
| 2 | # | ||
| 3 | # Released under the MIT license (see COPYING.MIT) | ||
| 4 | |||
| 5 | # Some custom decorators that can be used by unittests | ||
| 6 | # Most useful is skipUnlessPassed which can be used for | ||
| 7 | # creating dependecies between two test methods. | ||
| 8 | |||
| 1 | from oeqa.oetest import * | 9 | from oeqa.oetest import * |
| 2 | 10 | ||
| 3 | class skipIfFailure(object): | 11 | class skipIfFailure(object): |
diff --git a/meta/lib/oeqa/utils/sshcontrol.py b/meta/lib/oeqa/utils/sshcontrol.py index 6c61caa908..8f98c45354 100644 --- a/meta/lib/oeqa/utils/sshcontrol.py +++ b/meta/lib/oeqa/utils/sshcontrol.py | |||
| @@ -1,3 +1,12 @@ | |||
| 1 | # Copyright (C) 2013 Intel Corporation | ||
| 2 | # | ||
| 3 | # Released under the MIT license (see COPYING.MIT) | ||
| 4 | |||
| 5 | # Provides a class for setting up ssh connections, | ||
| 6 | # running commands and copying files to/from a target. | ||
| 7 | # It's used by testimage.bbclass and tests in lib/oeqa/runtime. | ||
| 8 | |||
| 9 | |||
| 1 | import subprocess | 10 | import subprocess |
| 2 | import time | 11 | import time |
| 3 | import os | 12 | import os |
