Sysprogs forums › Forums › VisualGDB › Make-based project for Unit Testing
- This topic has 3 replies, 2 voices, and was last updated 3 months, 2 weeks ago by
support.
-
AuthorPosts
-
July 10, 2025 at 05:32 #36791
Waleed
ParticipantI’m working on building a Make-based project for Unit-Testing that uses TinyEmbeddedTest as testing framework. The final .elf binary, which consists of all the source files (.C and .CPP), is supposed to be executed on target hardware i.e. nrf52840, connected in debug session through Segger J-Link. The Makefile I’m using is one I’ve developed myself and it is indeed compiling all the source files into final binary, but the problem is the function responsible for initializing the rest of the test functions is not included in it, as indicated by the VisualGDB output logs. The tests, being visible in Test Explorer, don’t even execute and are skipped while in debug session.
For your information, it’s not that the function in .CPP file is not being compiled along OR the file may not be linked because I’ve verified these steps already.
I’ve attached the screenshots that could be helpful in understanding the problem and finding solution. Thanks in advance!Attachments:
You must be logged in to view attached files.July 10, 2025 at 08:00 #36794support
KeymasterHi,
Sorry, it is hard to say why a particular project would not work. You can try creating a new similar project from scratch, make sure that it works as expected, and then compare projects side-by-side.
E.g. you can see the exact object files produced by both projects, symbols inside them (using objdump), or compare the verbose logs to see if any compiler arguments are different.
July 18, 2025 at 04:08 #36816Waleed
ParticipantThe issue was with test thread initialization, and I’ve moved on from this problem since. I’m now facing the issue of running tests on hardware. When I try to execute tests by entering into Debug mode in VisualGDB, it stops with a “Debugging Failed” popup, expecting an assembly manifest. I also tried it manually with the script below on CMD, yet it fails again to run any test. The tests are already being discovered, but the scheduled test vector isn’t being read.
VisualGDB.exe /runtests EmbeddedProject-Debug.vgdbsettings /platform:Hardware /config:Debug /targetPath:..\FW_FAM_W_RC-nrf52840ble-os.elf /vsoutput:report.trxAttachments:
You must be logged in to view attached files.July 19, 2025 at 20:12 #36819support
KeymasterHi,
This error means that the plugin for decoding the RTOS thread state is corrupt. Please try completely uninstalling VisualGDB, deleting the Program Files (x86)\VisualGDB directory, and installing it back.
If it doesn’t help, you can try disabling the RTOS-specific functionality via VisualGDB Project Properties -> Embedded Debug Tweaking -> Embedded RTOS Support = Disabled.
-
AuthorPosts
- You must be logged in to reply to this topic.