NG CI: one unit test times out after test result log being shown (kdevplatform: test_projectmodel)
Closed, ResolvedPublic

Description

Currently on NG CI there is one test failing due to Timeout, which does not do that locally as well as on the old CI. And the log from the test shown includes the result lines as printed from the test_projectmodel executable, showing successful run in ~2s:

Totals: 26 passed, 0 failed, 0 skipped, 0 blacklisted, 2298ms
********* Finished testing of TestProjectModel *********

e.g. https://build-sandbox.kde.org/view/KDevelop/job/KDevelop%20kdevplatform%20kf5-qt5%20XenialQt5.7/13/testReport/junit/(root)/TestSuite/test_projectmodel/

So seems the execution hangs on something after that?

(if you look at the history at https://build-sandbox.kde.org/view/KDevelop/job/KDevelop%20kdevplatform%20kf5-qt5%20XenialQt5.7/1/testReport/(root)/TestSuite/test_projectmodel/history/ you will see that for the builds #2-#11 the test failed for another reason than the timeout, which was some regression in kdevplatform code. but before and after that it is the behaviour as reported here).

Same test on old CI: https://build.kde.org/job/kdevplatform%20master%20kf5-qt5/PLATFORM=Linux,compiler=gcc/lastCompletedBuild/testReport/(root)/TestSuite/test_projectmodel/history/

kossebau created this task.May 25 2017, 3:27 PM
Restricted Application added a subscriber: sysadmin. · View Herald TranscriptMay 25 2017, 3:27 PM
bcooksley closed this task as Resolved.May 27 2017, 12:09 PM
bcooksley claimed this task.
bcooksley added a subscriber: bcooksley.

I've now arranged for kdeinit to be launched, which should eliminate this as an issue.
In regards to the other kdevplatform test failures:

  1. test_filteringstrategy - it doesn't appear to like spaces in paths
  2. test_docker - no idea why this one is unhappy

I've now arranged for kdeinit to be launched, which should eliminate this as an issue.

Good, seems that solved the issue.

Curious (and for improved knowledge management :) ): what exactly was the problem and how does kdeinit being launched explicitly before solve things?

In regards to the other kdevplatform test failures:

  1. test_filteringstrategy - it doesn't appear to like spaces in paths

Indeed a white spaces issue, am already working on a fix, preparing right now for review, so should be gone soon.

  1. test_docker - no idea why this one is unhappy

Aleix already looked into that and fixed it, test unconditionally expected docker tools/binary to be around (same issue on old CI).

CTest is a bit finicky about processes hanging around after a given test has been run.
As this test was reliant on the services of kdeinit/klauncher it was causing them to be launched.

As a consequence because they didn't exit at the end of the test, CTest didn't deem the test completed - causing the "hang".
I also fixed XDG_RUNTIME_DIR support which may have helped some tests as well.