-
Notifications
You must be signed in to change notification settings - Fork 247
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
Feature/gdb backtrace with params #740
Feature/gdb backtrace with params #740
Conversation
I'll dig into this as soon as I can. At the moment, I'm focusing most of my attention on the 0.32 release candidate branch, which contains your previous work on this. :) |
Sure, fully understand. No worries and please let me know if you need any helping hand. One more time, thank you for your time. :) |
74fd2fb
to
9aace8c
Compare
This PR is an proposal of fixing issue described in : #185 |
9aace8c
to
d455d0f
Compare
I read the description and it would be better if:
would be:
In that way it covers also the issue #185 completely and it does not require another run from developer (helps when failure is in CI and you dont need to do another run). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I reviewed non-ruby part, as I am not really a Ruby developer, but it might be helpful for starting a discussion.
1057959
to
28431a1
Compare
28431a1
to
a1c79c2
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's looking really great. Thanks for doing all of this work. This is an excellent feature!
I left some comments. When you're feeling like this is ready, I'm going to cherry-pick the changes to test/ceedling_0_32_rc
. I'm getting close to merging all of this to the main branch and releasing 0.32 and I'd like this to be part of it... but you'll see it's diverged a bit (primarily because of the multitasking support).
bfb73ca
to
7875cf8
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, this is looking great. Anyone else have anything else to say before I start merging?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fine for me.
…g cmdline_args Add possibility to run separatelly test cases from the test file runner which crash with segmentation fault. Add possibility to collect gcov report from test file which crash with segmentaiton fault during test execution Update CeedlingPacket.md with information about extended functionality.
Add UT to cover: - collect test_case results from crashing file and other files - collect test_case result filtered by --test_case from crashing file - collect test_case result filtered by --exclude_test_case from crashing file
7875cf8
to
40f5c0a
Compare
Merged into PR #739 |
FEATURE
Extend collecting backtrace data from crashing test_runner executable file.
After setting up project.yml:
Ceedling engine is executing test separatelly in the test file, which is crashing.
What that means?
PR includes
Updated code :
Updated CeedlingPacket.md with new ceedling functionality.
Added 5 UT to cover new functionality. ( rubocop describe problems with to long name description)
Short description
This PR contains extension for backtrace collector which enable possibility to collect test results from crashing test_runner file and creating test report files.
As well enable running separate test cases form crashing test runner. This logic enables creation of *.gcda and *.gcno files required by GCOV to generate coverage data
and updating project.yml after adding:
Limitations and problems:
** How it works in real life **
If test file contains three test cases:
test_gpio.c
if we run ceedling on it with enabled in project.yml:
project.yml after adding:
after discovering segmentation fault, thanks to enabled by cmdline_args Unity functionality, all test names will be collected from crashing test_runner file.
Each test will be executed separately in gdb (which will produce backtrace on segmentation fault) and test results (and log - keep in mind xunit has possibility of failure description) will be save and computed in one test report as Ceedling is producing during normal test execution flow. This will extend the execution time for test files with many test_cases only in case of segmentation faulted test case, but it will end up producing a valuable report about the failure.
As well the end developer receive possibility to run and get backtrace data from failing test case running:
which will produce backtrace to help engineer to investigate segmentation fault reason.
@mvandervoord : Can I ask you for a looking at this in your free time? I have hope that this feature will help other people as helped me in my day work.