[[oktatas:programozás:c|< C]]
====== Egységteszt ======
===== assert =====
#include
#include
int maxi(int a, int b)
{
return (a > b) ? a : b;
}
void test_maxi()
{
assert(maxi(3,5) == 5);
assert(maxi(0,5) == 5);
assert(maxi(5,5) == 5);
assert(maxi(-5,0) == 0);
}
main()
{
test_maxi();
printf("%d\n", maxi(3,5));
}
Tulajdonképpen megnézzük, hogy adott bemenetre a megfelelő választ adja-e az általunk készített program.
Az alábbi sor például a maxi programot meghívja 3 és 5 értékekkel, majd megvizsgáljuk, hogy 5-ös
értékkel tér-e vissza. Ha nem akkor hibát jelzünk:
assert(maxi(3,5) == 5);
===== CUnit =====
Szofisztikáltabb egységtesztre ad lehetőséget a CUnit programozói könyvtár
#include
#include
...
CU_ASSERT(maxi(3,5) == 4);
CU_ASSERT(maxi(0,5) == 5);
Fordítás:
gcc -lcunit -o main main.c
Letölthető a következő weboldalról:
* http://cunit.sourceforge.net
Debian GNU/Linuxon:
apt-get install libcuint1-dev libcunit1-doc
===== Egységteszt más nyelvekhez =====
* CSharp [[http://www.nunit.org|(NUnit)]]
* C++ [[https://launchpad.net/cppunit2|(CPPUnit2)]]
* Fortran [[http://nasarb.rubyforge.org/funit/|(fUnit)]]
* Pascal [[http://camelos.sourceforge.net/fpcUnit.html|(FPCUnit)]]
* JavaScript [[http://www.jsunit.net|(JSUnit)]]
* Perl [[http://search.cpan.org/~adie/Test-Class-0.31/lib/Test/Class.pm|Test::Class)]] [[http://search.cpan.org/~mcast/Test-Unit-0.25/lib/Test/Unit.pm|(Test::Unit)]]
* PHP [[https://github.com/sebastianbergmann/phpunit/|(PHPUnit)]]
* Python [[http://pyunit.sourceforge.net|(PyUnit)]]