OSDN Git Service

ART Test Runner
authorShubham Ajmera <shubhamajmera@google.com>
Wed, 7 Dec 2016 19:39:29 +0000 (19:39 +0000)
committerShubham Ajmera <shubhamajmera@google.com>
Sat, 4 Feb 2017 19:37:10 +0000 (19:37 +0000)
commitb5a77b91f3b52ff7de5bb3be2fb8c420f6968cb6
tree1acdcb362a6207ed4b87fbfd6b392e785f65ac87
parent4ec69e576f304410686af081f605b7c8456d28a4
ART Test Runner

The testrunner runs the ART run-tests by simply invoking the script.
It fetches the list of eligible tests from art/test directory, and list of
disabled tests from art/test/knownfailures.json. It runs the tests by
invoking art/test/run-test script and parses it output to check if the test
passed or failed.

Before invoking the script, first build all the tests dependencies by
building 'test-art-host-run-test-dependencies' for host tests,
'test-art-target-run-test-dependencies' for target tests, and
'test-art-run-test-dependencies' for building dependencies for both.
There are various options to invoke the script which are:
-t: Either the test name as in art/test or the test name including the variant
    information. Eg, "-t 001-HelloWorld",
    "-t test-art-host-run-test-debug-prebuild-optimizing-relocate-ntrace-cms-checkjni-picimage-npictest-ndebuggable-001-HelloWorld32"
-j: Number of thread workers to be used. Eg - "-j64"
--dry-run: Instead of running the test name, just print its name.
--verbose
-b To build the dependencies before running the test.

To specify any specific variants for the test, use --<<variant-name>>.
For eg, for compiler type as optimizing, use --optimizing.

In the end, the script will print the failed and skipped tests if any.

Changes in the Android.run-test.mk

1) Test targets like
"test-art-host-run-test-debug-prebuild-jit-relocate-ntrace-cms-checkjni-picimage-npictest-ndebuggable-055-enum-performance64"
2) New targets - test-art-host-run-test-dependencies and
test-art-target-run-test-dependencies have been added. The targets build
dependencies for host and target respectively.
3) Old targets like test-art-host-run-test-optimizing, test-art-host-run-test
build the dependencies using the above targets and then invokes the testrunner
to run the tests.

Test: No tests
Change-Id: I1823aa1cbfe3637a3c6ae8eb5843709fa77cee09
test/Android.run-test.mk
test/knownfailures.json [new file with mode: 0644]
test/testrunner/env.py [new file with mode: 0644]
test/testrunner/testrunner.py [new file with mode: 0755]