Hi
user
Admin Login:
Username:
Password:
Name:
NovaProva, a new generation unit test framework for C programs
--client
lca
--show
lca2013
--room MCC3 1664 --force
Next: 1 Graphics from Gamepads, Guitars, and Gadgets Galore
show more...
Marks
Author(s):
Gregory Banks
Location
MCC3
Date
feb Fri 01
Days Raw Files
Start
11:35
First Raw Start
error-in-template
Duration
0:45:00
Offset
None
End
12:20
Last Raw End
Chapters
Total cuts_time
None min.
http://lca2013.linux.org.au/schedule/30171/view_talk
raw-playlist
raw-mp4-playlist
encoded-files-playlist
mp4
svg
png
assets
release.pdf
NovaProva_a_new_generation_unit_test_framework_for_C_programs.json
logs
Admin:
episode
episode list
cut list
raw files day
marks day
marks day
image_files
State:
---------
borked
edit
encode
push to queue
post
richard
review 1
email
review 2
make public
tweet
to-miror
conf
done
Locked:
clear this to unlock
Locked by:
user/process that locked.
Start:
initially scheduled time from master, adjusted to match reality
Duration:
length in hh:mm:ss
Name:
Video Title (shows in video search results)
Emails:
email(s) of the presenter(s)
Released:
Unknown
Yes
No
has someone authorised pubication
Normalise:
Channelcopy:
m=mono, 01=copy left to right, 10=right to left, 00=ignore.
Thumbnail:
filename.png
Description:
This talk will introduce NovaProva, a new generation unit test framework for C programs. I wrote NovaProva because I was sick of writing unit tests using the venerable but clunky CUnit library. CUnit looked easy when I started writing unit tests but I soon discovered it's limitations and ended up screaming in frustration. Meanwhile over 18 months the Cyrus IMAP server project has gone from 0 unit tests to 461, of which 277 are written in C with CUnit. So that's a big itch! NovaProva starts with the same basic xUnit paradigm for testing, but extends some concepts in new directions (for example, NovaProva organises tests into trees rather than xUnit's two-level "suite and test" approach). Most importantly, NovaProva is designed using real world experience and modern technologies to make it much easier to write tests, and much easier to discover subtle bugs in the System Under Test, bugs that unit other test frameworks miss. Ideally NovaProva should make testing C code as easy as possible. To make writing tests easy, I had to do some things in NovaProva which were so hard they seemed impossible. As a result NovaProva now does six things which I believe make it unique amongst C/C++ unit test frameworks: - NovaProva is a library which Valgrinds the program which calls it - NovaProva implements true reflection in C/C++ (not using magic macros) - NovaProva discovers test functions automatically, no configuration needed, just by test function name - NovaProva lets the test writer do fully dynamic function interception (mocking, in xUnit speak) at runtime and on a per-test basis (i.e. not using linker tricks) - NovaProva provides good reporting and isolation for the many ugly ways C code can fail: memory overruns, uninitialised variables, memory leaks, deadlocks and loops, SEGV, calling exit(), calling syslog(). - NovaProva's project name is neither silly nor dangerous The talk will cover some of the features of NovaProva, how to use NovaProva in your projects, and describe in technical detail how the impossible was accomplished. The audience is anyone who works on C programs for a living, whether willingly or not.
markdown
Comment:
production notes
Rf filename:
root is .../show/dv/location/, example: 2013-03-13/13:13:30.dv
Sequence:
get this:
check and save to add this
Veyepar
Video Eyeball Processor and Review