From: Evan Hunt Date: Fri, 9 Mar 2018 00:53:16 +0000 (-0800) Subject: capture more information from unit tests X-Git-Tag: v9.13.0~102^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cba2b972bc029fe7f45728969b44b8f287107d9d;p=thirdparty%2Fbind9.git capture more information from unit tests - in unittest step, explicitly preserve kyua.log or atf.out - preserve kyua results database if present - generate HTML report from kyua results if available --- diff --git a/.gitignore b/.gitignore index ac40c4795ed..5359c1eb3ef 100644 --- a/.gitignore +++ b/.gitignore @@ -21,9 +21,10 @@ ans.run named.run named.memstats gen.dSYM/ -.libs/ +.ccache/ .deps/ .dirstamp +.libs/ unit/atf-src/atf-c++/atf-c++.pc unit/atf-src/atf-c/atf-c.pc unit/atf-src/atf-c/defs.h diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 34c39b5b110..9c14d9960ee 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -97,6 +97,7 @@ stages: .system_test: &system_test_job stage: test before_script: + - rm -rf .ccache - bash -x bin/tests/system/ifconfig.sh up script: - cd bin/tests && make -j${TEST_PARALLEL_JOBS:-1} -k test V=1 @@ -107,10 +108,18 @@ stages: .unit_test: &unit_test_job stage: test + before_script: + - export KYUA_RESULT="$CI_PROJECT_DIR/kyua.results" script: - make unit + after_script: + - kyua report-html --force --results-file kyua.results --results-filter "" --output kyua_html artifacts: - untracked: true + paths: + - atf.out + - kyua.log + - kyua.results + - kyua_html/ expire_in: '1 week' when: on_failure diff --git a/unit/unittest.sh.in b/unit/unittest.sh.in index 2ddbdb77039..bcbb89394ee 100755 --- a/unit/unittest.sh.in +++ b/unit/unittest.sh.in @@ -10,7 +10,7 @@ if [ -n "@UNITTESTS@" -a -x "$ATFRUN" -a -f Atffile ] then echo "S:unit:`date`" echo "T:unit:1:A" - echo "I: unit tests" + echo "I: unit tests (using atf-run)" atf-run > atf.out status=$? @@ -29,11 +29,11 @@ elif [ -n "@UNITTESTS@" -a -x "$KYUA" -a -f Kyuafile ] then echo "S:unit:`date`" echo "T:unit:1:A" - echo "I: unit tests" - kyua --logfile kyua.log test + echo "I: unit tests (using kyua)" + kyua --logfile kyua.log --loglevel debug test --results-file ${KYUA_RESULT:-NEW} status=$? - kyua report + kyua report --results-file ${KYUA_RESULT:-LATEST} if [ $status -eq 0 ] then