Różnice między wybraną wersją a wersją aktualną.
Both sides previous revision Previous revision Next revision | Previous revision | ||
boosttest [2008/04/16 22:52] twroniak |
boosttest [2008/04/16 23:00] (aktualna) twroniak |
||
---|---|---|---|
Linia 1: | Linia 1: | ||
- | The acceptance test makes the customer satisfied that the | + | The acceptance test makes the customer satisfied that the\\ |
- | software provides the business value that makes them willing | + | software provides the business value that makes them willing\\ |
- | to pay for it. The unit test makes the programmer satisfied | + | to pay for it. The unit test makes the programmer satisfied\\ |
- | that the software does what the programmer thinks it does. | + | that the software does what the programmer thinks it does.\\ |
===== Opis biblioteki ===== | ===== Opis biblioteki ===== | ||
Linia 201: | Linia 201: | ||
====Unit test framework ==== | ====Unit test framework ==== | ||
- | Unit test framework jest narzędziem oferującym programiście prosty i przystępny sposób na testowanie jego programów. Jest moim zdaniem najprzydatniejszym elementem biblioteki. Umożliwia tworzenie przypadków testowych testujących zarówno niezwiązane funkcje, jak i metody klas. Przypadki testowe (test cases) można grupować w zestawy testowe (test suites) tak, aby np. testy metod jednej klasy były zgrupowane w jednym zestawie. | + | Unit test framework jest narzędziem oferującym programiście prosty i przystępny sposób na testowanie jego programów. Jest moim zdaniem najprzydatniejszym elementem biblioteki. Umożliwia tworzenie przypadków testowych testujących zarówno niezwiązane funkcje, jak i metody klas. Przypadki testowe (test cases) można grupować w zestawy testowe (test suites) tak, aby np. testy metod jednej klasy były zgrupowane w jednym zestawie.\\ |
+ | \\ | ||
+ | |||
+ | Funkcja main nie jest dostarczana przez programistę, robi to za niego unit test framework. Programista musi zdefiniować funkcje o nagłówku boost::unit_test::test_suite* init_unit_test_suite ( int argc, char* argv[] ) | ||
+ | (argc i argv są parametrami wywołania, nie można ich pominąć przy deklaracji, można je zignorować pisząc init_unit_test_suite ( int, char* [] ) ). Zadaniem tej funkcji jest inicjalizacja drzewa testowego, wartością zwracaną powinien być master test suite, czyli zbiór wszystkich przypadków testowych. | ||
<code cpp> | <code cpp> | ||
Linia 211: | Linia 215: | ||
#include <boost/shared_ptr.hpp> | #include <boost/shared_ptr.hpp> | ||
using namespace boost::unit_test; | using namespace boost::unit_test; | ||
- | |||
- | /******************************************************************************* | ||
- | // funkcja main nie jest dostarczana przez programiste, robi to za niego unit | ||
- | // test framework. Programista musi zdefiniowac funkcje o naglowku | ||
- | // boost::unit_test::test_suite* init_unit_test_suite ( int argc, char* argv[] ) | ||
- | // (argc i argv sa parametrami wywolania, nie mozna ich pominac przy deklaracj, | ||
- | // mozna je zignorowac piszac init_unit_test_suite ( int, char* [] ) ). | ||
- | // Zadaniem tej funkcji jest inicjalizacja drzewa testowego, wartoscia zwracana | ||
- | // powinien byc master test suite, czyli zbior wszystkich przypadkow tesotwych. | ||
- | // w przypadku zwrocenia wartosci NULL testy nie beda wykonane, a program | ||
- | // zakonczy sie zwroceniem boost::exit_test_failure | ||
- | *******************************************************************************/ | ||
/****************************************************************************** | /****************************************************************************** |