Testování výkonu vs. zatížení
V kontextu softwarového inženýrství se provádí testování výkonu, aby se zjistila úzká místa systému. Testy výkonu lze také použít k ověření atributů, jako je spolehlivost, využití zdrojů a škálovatelnost, a stanovit základní linii pro výkon systému. Zátěžové testování je jedním z podžánrů testování výkonu. Provádí se k měření chování systému při zadaném pracovním zatížení. Testování zátěže je relevantnější pro víceuživatelské systémy založené na modelu klient-server, ale testovat lze i další softwarové systémy, jako jsou textové procesory nebo grafické editory..
Testování výkonu
Jak je uvedeno výše, testování výkonu se provádí za účelem určení a odstranění úzkých míst softwarového systému a stanovení základní hodnoty jeho výkonu, které by byly užitečné pro další testování. Testování výkonu zahrnuje testy, jako jsou zátěžové testy, vytrvalostní testy (namáčecí testy), testy hrotů, testy konfigurace a testy izolace. Testování výkonu vyžaduje získání pečlivě kontrolované sady měření systému. Chcete-li získat nejlepší výsledky z testování výkonu, mělo by být dobře naplánováno a mělo by být provedeno na stabilním systému, kde proces testování může probíhat hladce. Při testování výkonu je důležité jasně porozumět tomu, co skutečně chcete měřit z hlediska výkonu systému. Pokud například testujete výkon webové aplikace, možná budete chtít znát přijatelnou dobu odezvy a počet souběžných uživatelů, které systém může zpracovat. Při zachování těchto dvou aspektů můžete test zahájit neustálým zvyšováním počtu uživatelů a identifikováním úzkého hrdla.
Zátěžové testování
Jak již bylo zmíněno, testování zátěže je součástí testování výkonu a často se provádí zvýšením zátěže softwarového systému pomocí automatizovaných nástrojů. Zátěžové testování je někdy známé jako objemové testování. Příkladem zátěžových testů by mohlo být testování poštovního serveru s velkým počtem uživatelských poštovních schránek nebo testování úpravy velmi velkého dokumentu pomocí textového procesoru. Zátěžové testy se provádějí pomocí předdefinované úrovně zátěže obvykle pomocí maximálního zatížení, které systém dokáže zvládnout bez selhání. Cílem testování zátěže je obvykle odhalit chyby, které nejsou vystaveny běžným testům, jako jsou problémy se správou paměti, úniky paměti, přetečení vyrovnávací paměti atd. Testování zátěže také slouží jako prostředek k zajištění toho, aby systém splňoval základní výkonnost stanovenou během testování výkonu..
Rozdíl mezi testováním výkonu a zátěže
Přestože se pojmy testování výkonu a testování zatížení používají zaměnitelně, testování zatížení je pouze jedním aspektem testování výkonu. Cíle obou testů jsou také odlišné. Testování výkonu využívá techniku testování zátěže za účelem získání měření a benchmarkingu a používá několik úrovní zátěže. Testování zátěže však funguje na jedné předdefinované úrovni zátěže, obvykle nejvyšší zátěže, kterou systém dokáže zvládnout bez selhání. V praxi se testy výkonu provádějí s cílem nalézt úzká místa systému a odstranit je. A když už systém nelze optimalizovat, spustí se testování zátěže, aby se zjistilo, co je třeba do systému přidat (nejčastěji hardwarová rozšíření, jako je počet webových serverů nebo databázových serverů), aby byly dodrženy požadavky předem definované zákazníkem..