This is an archive of the discontinued LLVM Phabricator instance.

[lit] Don't include tests skipped due to sharding in reports
ClosedPublic

Authored by arichardson on Jul 21 2020, 5:46 AM.

Details

Summary

When running multiple shards, don't include skipped tests in the xunit
output since merging the files will result in duplicates.
In our CHERI Jenkins CI, I configured the libc++ tests to run using sharding
(since we are testing using a single-CPU QEMU). We then merge the generated
XUnit xml files to produce a final result, but if the individual XMLs
report tests excluded due to sharding each test is included N times in the
final result. This also makes it difficult to find the tests that were
skipped due to missing REQUIRES: etc.

Diff Detail

Event Timeline

arichardson created this revision.Jul 21 2020, 5:46 AM
Herald added a project: Restricted Project. · View Herald TranscriptJul 21 2020, 5:46 AM

fix tests and remove debug output

yln added a comment.Jul 22 2020, 11:56 AM

Thanks for working on this! I forgot to consider the interaction with sharding.

llvm/utils/lit/lit/main.py
109

Can we filter the list of tests here (if sharding is active)? Other report types are also affected by this.

arichardson marked an inline comment as done.

Simplify by moving logic into main.py

arichardson retitled this revision from [lit][xunit output] Don't include tests skipped due to sharding to [lit]Don't include tests skipped due to sharding in reports.Jul 23 2020, 3:18 AM
arichardson edited the summary of this revision. (Show Details)
arichardson retitled this revision from [lit]Don't include tests skipped due to sharding in reports to [lit] Don't include tests skipped due to sharding in reports.
yln accepted this revision.Jul 23 2020, 11:30 AM

Thanks! It would be super awesome to have a test for this, but I won't block on it.

This revision is now accepted and ready to land.Jul 23 2020, 11:30 AM
This revision was automatically updated to reflect the committed changes.