wiki:Projects/GSoC/TestingReview/Cmockery
Notice: We have migrated to GitLab launching 2024-05-01 see here: https://gitlab.rtems.org/

Version 9 (modified by Xiaochen Pan, on 07/08/12 at 08:52:22) (diff)

/* General Comparison */

TestingReview/Cmockery

General Comparison

Cmockery is a lightweight and highly portable unit testing framework with minimum conflicts with standard C library headers.

  • It is well suited to work for RTEMS based testing thanks its effort to avoid relying on new features of compilers, and also its lightweight and minimum-conflict headers. It also works well for Host based tests too.
  • Unlike CMock, Cmockery has a relatively less stringent format requirements, while it requires the tester to write the test runner and mock functions by hand, while both of which can be automatically generated by scripts in Cmock. To write mock functions, Cmock testers only need to define the expect input and output for certain functions in unit tests, where the mock functions are generated by ruby script according to the header files, which is more convenient and easier than Cmockery.
  • Cmockery provides convenient interface to test for memory leaks, buffer underflow and buffer overflow, all of which would cause fatal errors for single processed RTEMS system.
  • Cmockery provides a more detailed tests report than CMock by providing the reason for tests failures.

RTEMS based Test Results

sp01 test

File:Cmockery-sp01.png?

Because the test_rtems_task_delete test case kills itself, the test pass summary for that test case did not print.


deviceio01 test

File:Cmockery deviceio01.png?


psx01 test

File:Cmockery psx01.png?


=devfs02 test =

File:Cmockery devfs02.png?


==psxtmbarrier01 test==

[[File:Cmockery_psxtmbarrier01.png]]

---

===fsrofs01 test===

[[File:Cmockery_fsrofs01.png]]