Vyšlo v týdeníku Computerworld č. 38/92 v roce 1992
Vytištěno z adresy: http://www.earchiv.cz/a92/a238c120.php3

Beta test

Stará programátorská moudrost praví, že v každém programu je chyba. Pomineme-li několikařádkové triviality, platí tato poučka v neztenčené míře i pro programy, které mají za sebou i několikaletý rutinní provoz. Často totiž až náhoda, omyl, nezkušenost uživatele či jiná nestandardní situace dokáže odhalit chybu, která se při běžném rutinním provozu vůbec neprojevuje, a kterou tvůrce programu při nejlepší snaze nedokázal sám najít a včas odstranit.

Bylo by skutečně naivní domnívat se, že dnešní rozsáhlé a složité programové celky jsou zcela prosté jakýchkoli chyb. Otázkou je spíše jejich relativní četnost, dále míra, do jaké komplikují použití celého programového produktu, a v neposlední řadě také to, jak se k jejich existenci staví autor, resp. dodavatel programu.

Psát programy absolutně bez chyb je jistě snem každého programátora a o to více pak každého, kdo se jejich prodejem živí. Existuje dokonce disciplína teoretické informatiky, která se touto problematikou (tzv. verifikací programů) zabývá: snaží se dokázat, že daný program skutečně dělá to, co by dělat měl. Možnosti verifikace programů však zatím stačí jen na velmi krátké ukázkové příklady. Pro prakticky použitelný software tudy cesta (alespoň prozatím) nevede.

Dnešním tvůrcům softwaru proto zbývá pouze důkladné testování jejich produktů. To sice nedokáže zaručit absolutní bezchybovost, ale může zredukovat četnost chyb na rozumnou míru. I zde však platí staré známé: více očí více vidí. Vlastní testování nových programů se proto obvykle provádí ve dvou etapách. První si zajišťuje vlastními silami firma, která s novým programovým produktem přichází. Ve druhé etapě pak tato firma poskytuje nový produkt vybrané skupině svých zákazníků resp. uživatelů, kteří jej dále testují - v rámci tzv. beta testů (zatímco testům v první etapě, které si zajišťuje tvůrce programu, se říká alfa testy). Teprve poté, po absolvování beta testů, opravě zjištěných chyb a zapracování případných připomínek beta-testovatelů, bývá nový programový produkt uveden na trh a běžně prodáván všem zájemcům.

Termín "beta test", který je dnes hojně používaný, má svůj základ v původní terminologii firmy IBM, později převzaté i dalšími firmami. Alfa test představoval ve výrobním cyklu tu fázi, ve které byly testovány jednotlivé komponenty nějakého většího celku a beta test pak testování tohoto celku, jakmile již byl z jednotlivých komponent složen. Ani tyto termíny však nebyly původní, ale vycházely z ještě starších označení pro testy hardwaru. Tzv. A-test byl vlastně vyhodnocením toho, zda se nějaký systém vůbec dá realizovat a vyplatí se vyrábět. Teprve pak (v případě úspěchu) následovala fáze návrhu a vývoje, ze které vzešlo určité technické řešení. To pak muselo prokázat svou schopnost fungovat tak, jak to bylo na začátku požadována - v rámci tzv. B-testů. Jakmile pak byly vyrobeny první funkční vzorky, prováděly se tyto B-testy na nich. Teprve pak se rozjížděla sériová výroba, a mohl začít i odbyt nových výrobků.