-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve code coverage #101
Comments
Do we know which parts are the most under-tested? different code sections may have different reasons for that. JIC templates may also add subtle distortions in coverage measurement, an so do inline functions:
|
For
And for
So, most of the untested code is in
That's useful to know, thanks! |
We can make an integration test like is make in nav2, which will be similar to the beluga example, but with a node which validate that
|
Created a new ticket for system level tests: #127 |
Related to #101, this adds tests for the AMCL node up to 95% line coverage. It also fixes a couple of issues with lifecycle management and removes the read_only property for parameters that can change at runtime. Signed-off-by: Nahuel Espinosa <nespinosa@ekumenlabs.com>
Related to #101. GCC records branch information for each line where a scope exit due to some thrown exception is possible. This sets too high a standard for us to meet. C++ templates may also add subtle distortions in coverage measurement, an so do inline functions. This patch keeps only line coverage data collection while disabling branch and function coverage. Signed-off-by: Nahuel Espinosa <nespinosa@ekumenlabs.com>
Description
In the latest version of
beluga
(fb8294d at the time of this post), the code coverage report shows:We should start working towards improving these metrics for existing code. In particular,
beluga_amcl
does not have any tests for the ROS 2 node implementation.Definition of done
Branch rate coverage greater than 90%.Additional considerations
Reference: https://testing.googleblog.com/2020/08/code-coverage-best-practices.html
The text was updated successfully, but these errors were encountered: