Support for the TAP log format
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 30/100
Research direction
No files, tests, or entry points are named. Start by reading Boost.Test's existing result-reporting behavior and the TAP protocol requirements described in the issue, then examine how Meson consumes TAP; done means Boost.Test output is recognized as a valid TAP test suite and its results can be included in Meson's JUnit XML.
Written by the indexing model from the issue text.
Description
TAP is a simple text-based protocol to communicate the results of unit tests. It's simple, old, and understood by lots of mainstream tools. Among the tools supporting TAP, there is CMake, Autotools, and Meson.
I'm currently using Meson as the build system and test harness for one of my projects. Meson will produce the JUnit XML file that I upload to the AppVeyor CI, and the results look like this: https://ci.appveyor.com/project/vinipsmaker/emilua/build/tests.
Boost.Test also can produce JUnit XML files, but then I'd have multiple XML files and I'd have to take care of them myself (possibly merging results, be careful to not clash with names already used by other test suites, etc).
Fortunately Meson is also a TAP consumer which means that any “unit test” that produces valid TAP output will be properly recognized as its own test suite and Meson will do the proper transformation to include these results in its own JUnit XML file. This is really ideal for my case as not every test is defined by C++ code, and it'd not be trivial to generate XML test output for shell commands, for instance.
So I think it'd be useful for Boost.Test to support the TAP protocol. It'd widen the ecosystem it already supports. Plus the TAP protocol is really simple, so it shouldn't be too difficult to implement.
- Dominant language
- C++
- Stars
- 213
- Forks
- 149
- Avg merge
- 18h 17m
- Merged PRs (30d)
- 2
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from boostorg/test
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
-
Difficulty 4/5 3-5 days Newbie friendliness 45/100
-
Difficulty 3/5 1-2 days Newbie friendliness 52/100
-
Conversion Warning with GCC15 when using operator<< within custom failure message and -WConversion Open
Difficulty 4/5 3-5 days Newbie friendliness 42/100
Similar issues
-
Difficulty 1/5 Under an hour Newbie friendliness 90/100
AXERA-TECH/ax-llm#77 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 90/100
games-on-whales/wolf#509 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
-
bug-unconfirmed
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
NVIDIA/cuda-samples#453 ·