Make-based project for Unit Testing

Sysprogs forums Forums VisualGDB Make-based project for Unit Testing

Viewing 4 posts - 1 through 4 (of 4 total)
  • Author
    Posts
  • #36791
    Waleed
    Participant

    I’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.
    #36794
    support
    Keymaster

    Hi,

    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.

    #36816
    Waleed
    Participant

    The 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.trx

    Attachments:
    You must be logged in to view attached files.
    #36819
    support
    Keymaster

    Hi,

    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.

Viewing 4 posts - 1 through 4 (of 4 total)
  • You must be logged in to reply to this topic.