configuration testing tutorial with examples
Úvod do testování konfigurace softwaru:
Tento článek vám přináší diskusi o speciálním typu testování softwaru, který je pro podnikání velmi důležitý.
Budeme diskutovat o základech testování konfigurace, jeho potřebě, důležitosti, cílech a typech. Jak budeme v článku pokračovat, naučíme se podrobně, jak provést toto testování.
Nech nás začít!!
Tento výukový program vám poskytne kompletní přehled o testování konfigurace a bude sloužit jako dokonalý průvodce pro každého, kdo je v tomto konceptu testování nový, a prozkoumá znalosti těch, kteří v něm již mají zkušenosti.
Co se naučíte:
- Co je Testování konfigurace?
- Proč toto testování?
- Příprava na test konfigurace
- Microsoft VSTS - nástroj pro testování konfigurace
- Cíle
- Typy testování konfigurace
- Důležitost tohoto testování pro podnik
- Závěr
- Doporučené čtení
Co je Testování konfigurace?
Testování konfigurace je metoda testování vyvíjeného systému na více počítačích, které mají různé kombinace nebo konfigurace hardwaru a softwaru. Výkon systému nebo aplikace je testován proti každé z podporovaných konfigurací hardwaru a softwaru.
Když řekneme různé konfigurace hardwaru a softwaru, připisuje se to několika verzím operačních systémů, prohlížečům, podporovaným ovladačům, velikostem paměti, typům pevných disků, procesorům atd.
Proč toto testování?
Jak bylo diskutováno výše, toto testování je technika, která hodnotí výkon softwaru, systému / aplikace s ohledem na různé konfigurace systému.
Toto testování se provádí k určení optimálních konfigurací, ve kterých může systém nebo aplikace fungovat dobře bez jakýchkoli chyb, problémů nebo nedostatků ve výkonu. Nejúčinnější konfigurace, která přinese požadované výkonnostní charakteristiky, je tedy pomocí tohoto testování odhalena.
Druhým hlavním důvodem tohoto testování je ověření kompatibility systému s ostatním softwarem nebo vybavením označeným v SRS (specifikace softwarového požadavku).
Příklad
Uvažujme, že váš podnik vyvinul desktopovou aplikaci v jazyce C # a tato aplikace je postavena na rozhraní .NET.
A tato aplikace je založena na třívrstvé architektuře, která má tři vrstvy - front-end (klient), aplikační vrstvu (server) a databázovou vrstvu. Každá z vrstev bude odpovídajícím způsobem podporovat určité platformy.
java zkopíruje 2d pole do jiného pole
Předpokládejme, že každá vrstva podporuje níže uvedené platformy:
Klient - Windows 10 OS, Windows 7, Windows XP, Linux OS.
Server - Ubuntu Server, Windows Server 2016 , Novell Open Enterprise Server .
Databáze - Microsoft SQL Server, IBM DB2, MySQL.
Nyní, jako tester softwaru, budete muset otestovat aplikaci v rámci každé z různých kombinací výše uvedených klientských, serverových a databázových platforem, abyste zajistili, že aplikace funguje dobře s každou z možných konfigurací.
Například , zkontrolujete, jak aplikace funguje s kombinací operačních systémů Windows 10 OS, Windows Server 2016 a MySQL, poté provedete další test, který zkontroluje, jak aplikace funguje s kombinací Windows 10 OS, Windows Server 2016 a databáze IBM DB2.
A tak dále, dokud nevyzkoušíte všechny možné konfigurace.
Naše testování by se neomezovalo pouze na software, ale bude pokrývat i hardware, kde budeme muset zkontrolovat každou z kombinací různých hardwarových zařízení. Proto se někdy toto testování označuje také jako Testování hardwarové konfigurace.
Příprava na test konfigurace
Toto testování má určité předpoklady, které je třeba splnit, než provedeme testy konfigurace.
Níže jsou uvedeny předpoklady:
# 1) Příprava matice pokrytí
Vzhledem k velkému počtu možných konfigurací hardwaru a softwaru se stává velmi časově náročné a téměř nemožné efektivně otestovat každou z konfigurací.
Například , v příkladu, který jsme diskutovali výše, budeme mít celkem 3 * 3 * 3, tj. 27 softwarových konfigurací. Předpokládejme, že máme 5 různých pevných disků a 6 různých velikostí paměti. Počet nyní přejde na 27 * 5 * 9, tj. 810 konfigurací.
To se bude stále zvyšovat, pokud do obrázku přidáme další komponenty. Stává se tedy zásadní naplánovat úsilí o testování softwaru a jasně určit, které platformy budou podporovány.
Poté musíme přijít s maticí pokrytí, která bude obsahovat různé kombinace hardwarových a softwarových konfigurací. Někdy je tato matice pokrytí známá také jako BCM (Basic Configuration Matrix).
Výše uvedený obrázek ukazuje ukázkovou schematickou matici konfigurací, které byste chtěli otestovat.
# 2) Upřednostnění konfigurací
Jakmile je konfigurační matice připravena, dalším krokem je upřednostnění konfigurací.
Tento krok je nutný, protože je nemožné otestovat celou obrovskou škálu konfigurací. Na základě zpětné vazby od klientů jsou tedy zařazeny nejkritičtější konfigurace a je třeba je nejprve důkladně otestovat.
Jakmile jsme dokončili výše uvedené dva kroky, můžeme pokračovat v testování různých konfigurací na základě jejich priority.
Microsoft VSTS - nástroj pro testování konfigurace
Microsoft Visual Studio Team Services (VSTS) je nástroj, který výrazně pomáhá při testování vaší aplikace v různých konfiguracích na základě vašeho testovacího plánu.
Měli byste mít plán testů, abyste se mohli rozhodnout, které testy chcete provést a na kterých konfiguracích. Musíte se ujistit, že máte nastaveno správné prostředí pro požadované konfigurace. Jakmile budete mít matici kombinací, musíte ji otestovat.
Při provádění tohoto testování můžete postupovat podle následujících kroků:
# 1) Nastavte konfigurace a vytvořte proměnné. Proměnná je jednou ze součástí vaší konfigurace.
Například , může existovat proměnná „Prohlížeč“, která může mít více hodnot, jako je Chrome, Firefox, IE10 atd.
#dva) Přiřaďte konfigurace testovacím plánům / testovacím sadám nebo jednotlivým testovacím případům.
# 3) Proveďte testy proti každé konfiguraci.
# 4) Sledujte výsledky testů pro každou z konfigurací.
Podrobný průvodce krok za krokem k provedení tohoto testování s VSTS lze zobrazit zde: VSTS - Otestujte různé konfigurace
Cíle
Níže jsou uvedeny různé cíle tohoto testování:
- Chcete-li určit optimální konfiguraci AUT (testovaná aplikace).
- Zjistit skryté chyby zabezpečení obsažené v hardwaru.
- Zajistit kontinuitu podnikání detekcí a opravením problémů dříve, než budou brzdit obchodní operace.
- Vyloučení driftu konfigurace.
- Minimalizovat počet poruch v důsledku chyb konfigurace hostitele.
- Ověření aplikace k ověření, že splňuje konfigurovatelnost.
- Chcete-li analyzovat výkon systému přidáním, odebráním nebo úpravou hardwarových komponent ( Např . Různé velikosti paměti, přidávání balancerů zátěže atd.).
- Chcete-li ověřit, zda systém funguje dobře v geograficky distribuovaném prostředí (servery a klienti se nacházejí na různých místech).
- Ověření, jak snadno lze chyby replikovat bez ohledu na změny konfigurace.
- Chcete-li ověřit, jak jsou sledovatelné a spravovatelné položky aplikace.
Typy testování konfigurace
Můžeme mít dvě různé řádky divizí pro toto testování.
Na první řada , lze jej rozdělit na dvě části:
- Testování konfigurace softwaru
- Testování konfigurace hardwaru
Na druhý řádek , lze jej opět rozdělit na dvě části - 1. Testování na úrovni klienta & 2. Testování na úrovni serveru
Nejprve se podívejme na konfiguraci hardwaru a softwaru.
# 1) Testování konfigurace softwaru:
Toto testování se provádí přes AUT (testovaná aplikace) s několika verzemi OS, aktualizacemi softwaru atd. Jedná se o zdlouhavé testování, protože instalace a odinstalování různého softwaru, který má být použit k testování, vyžaduje obrovské množství času.
Jedním z přístupů, jak ušetřit čas, je zaměstnat virtuální stroje pro testování konfigurace softwaru. Virtuální počítač simuluje konfigurace v reálném čase a poskytuje stejný pocit jako fyzický stroj.
Takže místo instalace a odinstalace více softwaru na jednom fyzickém stroji můžeme mít několik virtuálních strojů simulujících každou jinou konfiguraci, proti které musíme provést testování.
Testování konfigurace softwaru začíná po uvolnění sestavení po absolvování testu jednotky a testu integrace.
# 2) Testování konfigurace hardwaru:
Testování konfigurace hardwaru se obvykle provádí v laboratořích, kde máme připojeny fyzické stroje s různým hardwarem.
Pokaždé, když je vydáno sestavení, je nutné nainstalovat software na všechny fyzické stroje, ke kterým je hardware připojen, a na každém stroji je nutné provést testovací sadu, aby se potvrdilo, že aplikace funguje dobře.
K provedení výše uvedeného úkolu je zapotřebí značné úsilí k nastavení softwaru na každém počítači, připojení hardwaru k němu a následnému ručnímu provedení testovacích sad. I když tento úkol zautomatizujeme a spustíme testovací sadu, bude i tak zapotřebí značné úsilí.
Jak jsme již zmínili v předchozí části tohoto článku, během testování konfigurace hardwaru vysvětlíme druh hardwaru, který má být testován, a existuje mnoho počítačového hardwaru a periferních zařízení, které znemožňují spuštění všech testy.
Tester tedy analyzuje, který hardware používá hlavně zákazník, a poté provede testování na základě stanovení priorit.
Nyní pojďme diskutovat o testování konfigurace na úrovni klienta a serveru.
# 1) Testování na úrovni klienta : Má shodnost s testováním použitelnosti a funkčnosti. Toto testování se provádí z hlediska přímých zájmů uživatele.
# 2) Testování na úrovni serveru : Tento typ testování se provádí za účelem prozkoumání interakce mezi softwarem a externím prostředím, pokud je plánováno jeho integrování po vydání.
Důležitost tohoto testování pro podnik
Toto testování je pro podnik velmi důležité, aby přišlo a udržovalo se s vysoce výkonnými, škálovatelnými a dostupnými aplikacemi.
Toto testování by mělo být prováděno průběžně a nejlépe automatizovaným způsobem (jinak je velmi časově náročné, je-li prováděno ručně) se záměrem rychle identifikovat a opravit faktory, které přispívají k neefektivnosti.
11 NEJLEPŠÍCH nástrojů pro správu konfigurace softwaru (nástroje SCM v roce 2020)
Závěr
Testování konfigurace je stejně důležité jako jakýkoli jiný typ testování softwaru, protože zjišťuje optimální konfiguraci systému, pod nímž aplikace funguje nejlépe. Pomáhá také při identifikaci a nápravě problémů s kompatibilitou.
V tomto článku jsme se dozvěděli o tom, co je testování konfigurace, proč toto testování provádíme, jaké jsou jeho cíle, jaké jsou jeho typy, jaké jsou předpoklady tohoto testování, jak je to třeba udělat, jak důležité je to pro podnik atd. podrobně.
Doufám, že tento článek byl poučný a přinesl by vám spravedlivou představu o testování konfigurace.
Doporučené čtení
- Nejlepší nástroje pro testování softwaru 2021 (QA Test Automation Tools)
- Funkční testování vs. nefunkční testování
- Výukový program pro testování párů nebo testování všech párů s nástroji a příklady
- Úloha pomocníka QA při testování softwaru
- Výukový program pro testování hlasitosti: Příklady a nástroje pro testování hlasitosti
- Výukový program pro destruktivní testování a nedestruktivní testování
- Výukové programy pro zatmění do hloubky pro začátečníky
- Co je testování vytrvalosti při testování softwaru (příklady)