Added philosophy & features, fixed formatting [ci skip]
This commit is contained in:
parent
5ec307339f
commit
b260fdca1b
1 changed files with 24 additions and 3 deletions
27
README.md
27
README.md
|
@ -2,6 +2,27 @@
|
|||
Criterion
|
||||
=========
|
||||
|
||||
A dead-simple, yet extensible, C test framework.
|
||||
|
||||
## Philosophy
|
||||
|
||||
Most test frameworks for C require a lot of boilerplate code to
|
||||
set up tests and test suites -- you need to create a main,
|
||||
then register new test suites, then register the tests within
|
||||
these suits, and finally call the right functions.
|
||||
|
||||
This gives the user great control, at the unfortunate cost of simplicity.
|
||||
|
||||
Criterion follows the KISS principle, while keeping the control
|
||||
the user would have with other frameworks:
|
||||
|
||||
* Tests are automatically registered when declared.
|
||||
* A default entry point is provided, no need to declare a main
|
||||
unless you want to do special handling.
|
||||
* Test are isolated in their own process, crashes and signals can be
|
||||
reported and tested.
|
||||
* Progress and statistics can be followed in real time with report hooks.
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
|
@ -29,7 +50,7 @@ Sample tests can be found in the [sample directory](https://github.com/Snaipe/Cr
|
|||
|
||||
## F.A.Q.
|
||||
|
||||
**Q. What's wrong with other test frameworks?**
|
||||
**Q. What's wrong with other test frameworks?**
|
||||
A. I worked with CUnit and Check, and I must say that they do their job
|
||||
very well -- the only thing that bugs me is that setting up a test
|
||||
suite from scratch is a pain, it should really be simpler. Most
|
||||
|
@ -38,11 +59,11 @@ A. I worked with CUnit and Check, and I must say that they do their job
|
|||
main, manually register suites, then tests. Criterion tries to
|
||||
fix these shortcomings.
|
||||
|
||||
**Q. Where has this been tested?**
|
||||
**Q. Where has this been tested?**
|
||||
A. Currently, on Linux 2.6.32 and Linux 3.15.7, although it should work on
|
||||
most \*nix systems. More tests will be added on the build matrix.
|
||||
|
||||
**Q. Will this work under Windows/MSVC?**
|
||||
**Q. Will this work under Windows/MSVC?**
|
||||
A. Windows support with MinGW is coming, but MSVC is a bit of a lost cause
|
||||
for the C language. The project internally uses c99 features and gnu
|
||||
extensions, and MSVC is stuck at supporting c89.
|
||||
|
|
Loading…
Add table
Reference in a new issue