39 top automation testing interview questions
Nejčastější dotazy týkající se dotazů na automatizační testování pro začátečníky a pokročilé:
Automatizace testů hraje velmi důležitou roli v celém životním cyklu softwaru. Většinu času, kdy se chceme připravit na pohovor o testování automatizace, se zaměřujeme pouze na otázky týkající se konkrétních nástrojů.
Měli bychom však také vzít v úvahu skutečnost, že učení a znalost nástroje je jen průměr a není to konečný cíl.
Kdykoli se tedy připravujeme na pohovor s automatizačním testerem, musíme zvážit „Automatizaci“ jako celek a zaměřit se na rámec a příslušné kroky.
Všichni víme, že testování softwaru je velmi důležitou součástí vývoje softwaru. Ale s rychle rostoucími metodikami a prostředími pro vývoj softwaru je obtížné ručně otestovat vše pro aplikaci v omezeném čase spolu s omezeními nákladů.
Testování automatizace tedy na trhu rychle roste, aby se zrychlilo na vývojové tempo. Tento výukový program obsahuje nejčastější dotazy týkající se testování automatizace. Snažil jsem se zmínit krátké a rychlé otázky, které jsou velmi specifické pro automatizaci jako celek a nejsou specifické pro žádný „nástroj“.
Nejlepších 39 dotazů na rozhovor s automatizačním testováním
Pokryli jsme základní otázky automatizace testů i některé pokročilé otázky pro kandidáty na střední až odborné úrovni s praxí do 2 až 5 let.
Otázka č. 1) Co je automatizace?
Odpovědět: Automatizace je jakákoli akce, která může snížit lidské úsilí.
Otázka č. 2) Co je testování automatizace?
Odpovědět: Proces používání speciálních softwarových nástrojů nebo skriptů k provádění testovacích úkolů, jako je zadávání dat, provádění testovacích kroků a porovnávání výsledků atd., Se nazývá testování automatizace.
Otázka č. 3) Co všechno můžete automatizovat?
Odpovědět:
- Sada regresních testů
- Sada pro testování kouře / duševního zdraví
- Vytvoření nasazení
- Vytvoření testovacích dat
- Automatizace za grafickým uživatelským rozhraním, jako je testování API a metod.
Otázka č. 4) Kdy je testování automatizace užitečné?
Odpovědět: Testování automatizace je užitečné v následujících scénářích:
a) Regresní testování: V případě opravy chyby nebo implementace nového modulu musíme zajistit, aby nebyla ovlivněna již implementovaná nebo nezměněná funkce. V tomto případě skončíme několikrát spuštěním regresního testovacího případu.
Například: Po každém požadavku na změnu nebo opravě chyby, po každé iteraci v případě přístupu postupného vývoje atd.
b) Nefunkční testování: Testování nefunkčních aspektů aplikace.
Například, Sledování zátěže nebo testování výkonu atd. Je pro lidi velmi obtížné sledovat a analyzovat.
c) Složitý výpočet kontroluje nebo testuje scénáře, které jsou náchylné k lidským chybám.
d) Opakované provádění stejných testů: Někdy musíme spustit stejnou sadu testovacích případů pro jinou sadu dat nebo po každém vydání sestavení nebo na více hardwaru, softwaru nebo kombinaci obou.
Automatizace testovacích případů ve výše uvedených scénářích pomáhá dosáhnout rychlosti testování a minimalizovat lidské chyby.
Otázka č. 5) Jak identifikujete testovací případy, které jsou vhodné pro automatizaci?
Odpovědět: Identifikace vhodných testovacích případů pro automatizaci je nejdůležitějším krokem k automatizaci.
Otázka č. 6) Můžete dosáhnout 100% automatizace?
Odpovědět: 100% automatizace by bylo obtížné dosáhnout, protože by existovalo mnoho testovacích případů edge a některé případy, které by byly provedeny zřídka. Automatizace těchto případů, které se často nevykonávají, nepřidá automatizované sadě hodnotu.
Otázka č. 7) Jak se rozhodnout pro nástroj, který by měl člověk používat pro testování automatizace ve svých projektech?
Odpověď: Za účelem identifikace nástroje pro testování automatizace ve vašem projektu:
na) Pochopte důkladně své požadavky na projekt a určete scénáře testování, které chcete automatizovat.
b) Vyhledejte seznam nástrojů, které podporují požadavky vašeho projektu.
C) Určete svůj rozpočet pro automatizační nástroj. Vyberte nástroje v rámci svého rozpočtu.
d) Zjistěte, zda pro tyto nástroje již máte kvalifikované zdroje. Pokud nemáte potřebné kvalifikované zdroje, určete náklady na školení stávajících zdrojů nebo pronájem nových zdrojů.
je) Nyní porovnejte každý nástroj s klíčovými kritérii, jako jsou:
- Jak snadné je vyvíjet a udržovat skripty pro tento nástroj?
- Může netechnická osoba provést testovací případy s malým tréninkem?
- Podporuje tento nástroj různé typy platforem, jako je web, mobil, desktop atd., Na základě vašich požadavků na projekt?
- Má nástroj funkci protokolování testů? Pokud ne, je to pro nástroj snadno konfigurovatelné?
- Jaký je nástroj pro podporu různých webových aplikací pro různé prohlížeče?
- Kolik různých typů testování může tento nástroj podporovat?
- Kolik jazyků nástroj podporuje?
F) Po porovnání nástrojů vyberte nástroj, který je v rámci vašeho rozpočtu a podpoří vaše požadavky na projekt, a poskytne vám další výhody na základě výše uvedených klíčových kritérií.
Otázka č. 8) V současné době nemám ve svém projektu zavedenou žádnou automatizaci, ale teď chci implementovat automatizaci, jaké by byly moje kroky?
Odpovědět:
- Nejprve určete, jaký typ testování / testovacích případů chcete automatizovat.
- Určete nástroj
- Navrhněte rámec
- Vytvářejte soubory obslužných programů a soubory prostředí.
- Začněte psát
- Identifikujte hlášení a pracujte na něm.
- Přidělení času pro vylepšení a údržbu skriptů.
Kroky potřebné k zavedení automatizačního testování pro projekt zahrnují:
- Pochopte výhody a nevýhody testování automatizace a určete scénáře testování, které jsou vhodné pro automatizaci.
- Vyberte automatizační nástroj, který se nejlépe hodí pro automatizaci identifikovaných scénářů
- Vyhledejte odborníka na nástroje, který vám pomůže s nastavením nástroje a požadovaného prostředí pro provádění testovacích případů pomocí nástroje.
- Trénujte tým, aby mohl psát skripty v programovacím jazyce, který nástroj podporuje.
- Vytvořte testovací framework nebo identifikujte ten již existující, který splňuje vaše požadavky.
- Napište plán spuštění pro OS, prohlížeče, mobilní zařízení atd.
- Napište programovací skripty pro ruční testovací případy a převeďte je na automatizované testovací případy.
- Nahlaste stav testovacího případu pomocí funkce hlášení nástroje.
- Udržujte skripty pro probíhající změny nebo nové funkce.
Otázka č. 9) Jak se rozhodnete, který nástroj musíte použít?
Odpovědět: Závěrečné který nástroj je nejvhodnější projekt vyžaduje hodně brainstormingu a diskusí.
Otázka č. 10) Jakmile identifikujete nástroj, jaké by byly vaše další kroky?
Odpovědět: Jakmile nástroj dokončíme, dalším krokem bude návrh rámce.
Otázka č. 11) Co je to framework?
Odpovědět: Rámec je sada struktury celé automatizační sady. Je to také vodítko, jehož dodržování může vést ke struktuře, která se snadno udržuje a vylepšuje.
Mezi tyto pokyny patří:
- Standardy kódování
- Manipulace s daty testu
- Údržba a manipulace s prvky (úložiště objektů v QTP)
- Zpracování souborů prostředí a souboru vlastností
- Hlášení údajů
- Manipulace s protokoly
Otázka č. 12) Jaké jsou atributy dobrého rámce?
Odpověď: Mezi vlastnosti patří:
- Modulární: Rámec by měl být přizpůsobitelný změnám. Testeři by měli být schopni upravit skripty podle změny prostředí nebo přihlašovacích údajů.
- Znovu použitelný: Běžně používané metody nebo nástroje by měly být zapsány do společného souboru, který je přístupný všem skriptům.
- Konzistentní: Sada by měla být napsána v konzistentním formátu podle všech přijatých postupů kódování.
- Nezávislý: Skripty by měly být psány tak, aby byly navzájem nezávislé. V případě, že jeden test selže, neměl by zadržet zbývající testovací případy (pokud se nejedná o přihlašovací stránku)
- Protokoly: Je dobré implementovat funkci protokolování v rámci. To by pomohlo v případě, že by naše skripty běžely delší hodiny (řekněme v nočním režimu), pokud by skript kdykoli selhal, soubor protokolu nám pomůže zjistit polohu spolu s typem chyby.
- Hlášení: Je dobré mít funkci hlášení automaticky zabudovanou do rámce. Po dokončení skriptů můžeme nechat poslat výsledky a zprávy e-mailem.
- Integrace: Automatizační rámec by měl být takový, aby se dal snadno integrovat s jinými aplikacemi, jako je nepřetržitá integrace nebo spouštění automatizovaného skriptu, jakmile se nasadí sestavení.
Otázka č. 13) Obejdete se bez rámce?
Odpovědět: Rámečky jsou pokyny a nikoli povinná pravidla, takže se můžeme obejít bez rámce, ale pokud ho vytvoříme a budeme se jím řídit, jeho vylepšení a údržba by se snadno implementovaly.
Otázka č. 14) Jaké jsou různé typy automatizačního nástroje, o kterých víte?
Odpovědět: Nástroj s otevřeným zdrojovým kódem, jako je selen, JMeter atd.
Placené nástroje jako QTP, Load Runner, Ranorex, RFT a Rational Robot.
Otázka č. 15) Jaká je obecně struktura rámce?
Odpovědět: Normálně by struktura měla mít - (lišilo by se to od projektu k projektu)
- Složka „src“ (zdroj) obsahující skutečné testovací skripty.
- Složka „lib“ (knihovna) obsahující všechny knihovny a běžné metody.
- Složka „třídy“ obsahující celý soubor třídy (pro případ použití Java).
- Složka „log“ obsahující soubory protokolu.
- Soubor / složka se všemi ID webových prvků.
- Soubor obsahující adresu URL, prostředí a přihlašovací údaje.
Otázka č. 16) Kde budete udržovat informace jako URL, přihlašovací jméno, heslo?
Odpovědět: Tyto informace by měly být vždy uchovávány v samostatném souboru.
Otázka č. 17) Proč chcete uchovávat tento druh informací v samostatném souboru a ne přímo v kódu?
Odpovědět: URL, přihlášení a hesla jsou druh polí, která se používají velmi často a mění se podle prostředí a autorizace. V případě, že to napevno zakódujeme do našeho kódu, musíme to změnit v každém souboru, který má svůj odkaz.
V případě, že existuje více než 100 souborů, je velmi obtížné změnit všech 100 souborů, což může vést k chybám. Takže tento druh informací je udržován v samostatném souboru, takže aktualizace je snadná.
Otázka č. 18) Jaké jsou různé typy rámců?
Odpovědět: Mezi různé typy rámců patří:
- Rámec založený na klíčových slovech
- Rámec založený na datech
- Hybridní rámec
- Lineární skriptování
Otázka č. 19) Můžete říct některé dobré postupy kódování při automatizaci?
Odpovědět: Mezi dobré postupy kódování patří:
- Přidejte příslušné komentáře.
- Určete opakovaně použitelné metody a zapište je do samostatného souboru.
- Dodržujte konvence kódování specifické pro jazyk.
- Udržujte testovací data v samostatném souboru.
- Spouštějte své skripty pravidelně.
Otázka č. 20) Nějaký druh testu, který by podle vás neměl být automatizován?
Odpovědět:
- Testy, které se provádějí zřídka.
- Průzkumné testování
- Testování použitelnosti
- Test, který se provede rychle, když se provede ručně.
Otázka č. 21) Myslíte si, že testování lze provést pouze na úrovni uživatelského rozhraní?
bezplatné stažení softwaru pro hodiny zaměstnanců
Odpovědět: Dnes, když přecházíme do agilního režimu, se testování neomezuje pouze na vrstvu uživatelského rozhraní. Včasná zpětná vazba je pro agilní projekt imperiální. Pokud se soustředíme pouze na vrstvu uživatelského rozhraní, ve skutečnosti čekáme, než bude uživatelské rozhraní vyvinuté a dostupné k testování.
Spíše můžeme testovat ještě předtím, než je uživatelské rozhraní skutečně vyvinuto. Můžeme přímo otestovat API nebo metody pomocí nástrojů jako Cucumber a FitNesse .
Tímto způsobem poskytujeme zpětnou vazbu mnohem dříve a testujeme ještě před vývojem uživatelského rozhraní. Dodržení tohoto přístupu nám pomůže otestovat pouze GUI aspekt malých kosmetických změn nebo některých validací v uživatelském rozhraní a pomůže vývojářům tím, že poskytne více času na opravu chyb.
Otázka č. 22) Jak si vyberete, který automatizační nástroj je pro vás nejvhodnější?
Odpovědět: Výběr automatizačního nástroje závisí na různých faktorech, jako jsou:
- Rozsah aplikace, kterou chceme automatizovat.
- Režijní náklady jako náklady a rozpočet.
- Je čas se učit a implementovat nástroj.
- Typ podpory dostupné pro nástroj.
- Omezení nástroje
Otázka č. 23) Co si myslíte, že drží testery zpět v automatizaci? Existuje způsob, jak to překonat?
Odpovědět: Hlavní překážkou pro testery je naučit se programovat / kódovat, když chtějí automatizovat. Protože testeři nekódují, přizpůsobení se kódování je pro testery trochu náročné.
Můžeme to překonat:
- Spolupráce s vývojáři při automatizaci.
- Vzhledem k tomu, že automatizace je odpovědností celého týmu a nejen testerů.
- Poskytnutí vyhrazeného času a zaměření na automatizaci.
- Získání správné podpory pro správu.
Tyto otázky týkající se automatizačního testování můžete uložit jako soubor PDF a vytisknout pro další čtení.
Otázka č. 24) Co je to rámec testování automatizace?
Odpovědět: Rámec je obecně soubor pokynů. Sada pokynů, předpokladů, konceptů a postupů kódování pro vytvoření prováděcího prostředí, ve kterém budou testy automatizovány, je známá jako Automation testing framework.
Rámec testování automatizace je zodpovědný za vytvoření testovacího svazku s mechanismem pro připojení k testované aplikaci, převzetí vstupu ze souboru, provedení testovacích případů a generování sestav pro provedení testu. Rámec pro testování automatizace by měl být nezávislý na aplikaci a měl by být snadno použitelný, upravitelný nebo rozšířitelný.
Otázka č. 25) Jaké jsou důležité moduly rámce pro testování automatizace?
Odpovědět: Důležité moduly testovacího rozhraní Automation jsou:
- Nástroj pro testování testu: Tento nástroj poskytne tvrzení pro testování očekávaných hodnot v testované aplikaci. Například. TestNG, Junit atd.
- Nastavení dat: Každý testovací případ musí převzít uživatelská data buď z databáze, nebo ze souboru nebo vloženého do testovacího skriptu. Datový modul Frameworks by se měl postarat o příjem dat pro testovací skripty a globální proměnné.
- Nástroj pro správu sestavení: Rámec je třeba vytvořit a nasadit pro použití při vytváření testovacích skriptů.
- Kontinuální integrační nástroj: Se zavedeným CICD (Continuous Integration and Continuous Development) je pro integraci a nasazení změn provedených v rámci při každé iteraci vyžadován nástroj pro nepřetržitou integraci.
- Nástroj pro podávání zpráv: K vygenerování čitelné zprávy po provedení testovacích případů je nutný nástroj pro vytváření přehledů, aby bylo možné lépe zobrazit kroky, výsledky a selhání.
- Nástroj protokolování: Nástroj protokolování v rámci pomáhá při lepším ladění chyby a chyb.
Otázka č. 26) Vysvětlete některé nástroje pro testování automatizace.
Odpovědět: Níže jsou vysvětleny některé slavné nástroje pro testování automatizace:
i) selen : Selenium je testovací rámec pro testování automatizace webových aplikací. Podporuje více prohlížečů a je nezávislý na operačním systému. Selenium také podporuje různé programovací jazyky jako Java, C #, PHP, Ruby a Perl atd.
Selen je sada open-source knihoven, kterou lze použít k vývoji dalších testovacích frameworků nebo testovacích skriptů pro testování webových aplikací.
ii) UFT : Unified Functional Testing je licencovaný nástroj pro funkční testování. Poskytuje širokou škálu funkcí, jako jsou API, webové služby atd., A také podporuje více platforem, jako jsou stolní počítače, web a mobilní zařízení. Skripty UFT jsou psány ve skriptovacím jazyce jazyka Visual Basic.
(II) epochy : Appium je open-source nástroj pro testování mobilních aplikací. Používá se k automatizaci testování na multiplatformních, nativních, hybridních a webových mobilních aplikacích. Appium automatizuje jakoukoli mobilní aplikaci z jakéhokoli jazyka s plným přístupem k API a DB z testovacího kódu.
Appium je založeno na architektuře klient-server a vyvinulo se ze selenu.
(iv) Okurka : Okurka je vývojový nástroj založený na chování založeném na chování open-source. Používá se pro testování automatizace webových aplikací a podporuje jazyky jako ruby, java, scala, groovy atd. Okurka čte spustitelnou specifikaci napsanou v prostém textu a testuje testovanou aplikaci podle těchto specifikací.
Aby okurka porozuměla scénářům v prostém textu, musíme dodržovat některá základní pravidla syntaxe, která jsou známá jako Gherkin.
(V) TestComplete : TestComplete je licencovaný automatizovaný nástroj pro testování uživatelského rozhraní pro testování aplikace na různých platformách, jako jsou stolní počítače, web, mobilní zařízení atd. Poskytuje flexibilitu pro záznam testovacího případu v jednom prohlížeči a jeho spuštění ve více prohlížečích, a podporuje tak testování napříč prohlížeči.
TestComplete má vestavěný algoritmus rozpoznávání objektů, který jednoznačně identifikuje objekt a ukládá jej do úložiště.
Otázka č. 27) Jaké jsou různé typy technik testování rámce?
Odpovědět: Existují čtyři typy technik rámce pro testování automatizace.
Oni jsou:
i) Modulární testovací rámec:
Tento rámec je postaven na konceptu abstrakce. V tomto rámci tester vytváří skripty pro každý modul testované aplikace jednotlivě a poté jsou tyto skripty kombinovány v hierarchickém pořadí k vytvoření velkých testovacích případů.
Vytváří mezi moduly abstrakční vrstvu, takže jakékoli úpravy testovacích skriptů pro jeden modul neovlivní žádné další moduly.
Výhody tohoto rámce:
- Snadnější údržba a škálovatelnost testovacích případů.
- Vytváření testovacích případů pomocí již skriptovaných modulů je jednodušší a rychlejší.
Nevýhody:
- Testovací případy mají v sobě vložená data. Spuštění stejného testovacího skriptu s různými daty je tedy velkou změnou na úrovni skriptu.
ii) Rámec testování na základě dat:
V rámci testování založeného na datech jsou vstupní data a očekávaná výstupní data odpovídající vstupním datům uložena v souboru nebo databázi a automatický skript spustí stejnou sadu testovacích kroků pro více sad dat. S tímto frameworkem můžeme spustit více testovacích případů, kde se liší pouze vstupní data a kroky provedení jsou stejné.
Výhody:
- Snižuje počet testovacích skriptů, které je třeba provést. Stejný skript provádíme několikrát s různými daty.
- Méně kódování pro testování automatizace.
- Větší flexibilita při údržbě a opravování chyb nebo vylepšování funkčnosti.
- Testovací data lze vytvářet ještě předtím, než je připraven automatizovaný systém pro testování.
Nevýhody:
- Pro více sad dat lze kombinovat pouze podobné testovací případy se stejnou sadou kroků provádění. Různá sada prováděcích kroků vyžaduje jiný testovací případ.
(iii) Rámec testování na základě klíčových slov:
Jedná se o aplikačně nezávislý testovací rámec, který používá datové tabulky a samovysvětlující klíčová slova. Klíčová slova vysvětlují akce, které je třeba provést u testované aplikace, a datová tabulka poskytuje vstupní a očekávaná výstupní data.
Testování na základě klíčových slov je přírůstkem testování založeného na datech.
Výhody:
- Pro více souborů dat lze použít méně kódování a stejný skript.
- Pro vytvoření testovacího případu pomocí již existujících klíčových slov pro akce není vyžadována odbornost v automatizaci.
- Stejná klíčová slova lze použít ve více testovacích případech.
Nevýhody:
- Tento rámec je složitější, protože se musí postarat o akce klíčových slov a také o zadávání dat.
- Testovací případy jsou delší a složitější, což ovlivňuje jejich udržovatelnost.
(iv) Rámec pro hybridní testování:
Tento rámec je kombinací všech výše uvedených testovacích rámců (modulární, na základě dat a na základě klíčových slov).
V tomto rámci jsou testovací případy vyvíjeny z modulárních skriptů jejich kombinací v modulárním testovacím rámci. Každý z testovacích případů používá skript ovladače, který používá datový soubor jako v rámci řízeném daty a akční soubor založený na klíčových slovech.
Výhody:
- Modulární a snadno se udržuje.
- Méně kódování se může postarat o více testovacích případů.
- Jeden testovací případ lze provést s více sadami dat.
Nevýhody:
- Složité na čtení, údržbu a vylepšování.
Otázka č. 28) Kdy upřednostňujete ruční testování před automatizačním?
Odpovědět: Preferujeme ruční testování před automatizačním v následujících případech:
- Projekt je krátkodobý a psaní skriptů bude časově náročné a nákladné ve srovnání s manuálním testováním.
- Je vyžadována flexibilita. Automatizované testovací případy jsou programovány a spouštěny specifickým způsobem konfigurací.
- Je třeba provést testování použitelnosti.
- Aplikace / modul je nově vyvinut a nemá žádné předchozí testovací případy.
- Je třeba provést ad hoc nebo průzkumné testování.
Otázka č. 29) Je testování automatizace v agilní metodice užitečné nebo ne?
Odpovědět: Automatizační testování je užitečné pro regresní, kouřové nebo zdravé testy. Všechny tyto typy testování v tradičním modelu vodopádu probíhají na konci cyklu a někdy, pokud aplikace nemá mnoho vylepšení, možná ani nebudeme muset dělat regresní testování .
Vzhledem k tomu, že v agilní metodologie , každá iterace vyžaduje provedení případu regresního testu, protože jsou přidány některé nové funkce.
Samotná regresní sada také po každém sprintu stále roste, protože je třeba do regresní sady pro další sprint přidat funkční testovací případy aktuálního modulu sprintu.
Proto je testování automatizace v agilní metodice velmi užitečné a pomáhá dosáhnout maximálního pokrytí testu za kratší dobu sprintu.
Otázka č. 30) Seznam některých výhod a nevýhod testování automatizace.
Odpovědět:
Výhody:
- Méně lidských zdrojů
- Opakovaná použitelnost
- Více pokrytí testu za kratší dobu
- Spolehlivost
- Paralelní provádění testovacích případů
- Rychle
Nevýhody:
jak mohu otevřít soubor json
- Doba vývoje a údržby je více.
- Náklady na nástroj
- Vyžadují se kvalifikované zdroje.
- Nastavení prostředí
- Ladění testovacích skriptů je problém.
Otázka č. 31) Seznam některých výhod a nevýhod ručního testování.
Odpovědět:
Výhody:
- Není potřeba žádné nastavení prostředí.
- Znalosti o programování nejsou nutné.
- Doporučeno pro dynamicky se měnící požadavky.
- Umožněte lidské pozorovací síle detekovat více chyb.
- U krátkodobých projektů jsou náklady nižší.
- Flexibilita
Nevýhody:
- Je obtížné provádět složité výpočty.
- Opakovaná použitelnost
- Trvání času
- Vysoké riziko lidských chyb nebo omylů.
- Je zapotřebí více lidských zdrojů.
Otázka č. 32) Můžeme provádět automatizační testování bez rámce? Pokud ano, tak proč potřebujeme rámec?
Odpovědět: Ano, můžeme provádět testování automatizace i bez použití rámce. Můžeme pochopit nástroj, který používáme pro automatizaci, a programovat kroky v programovacím jazyce, které nástroje podporují.
Pokud automatizujeme testovací případy bez rámce, nebude programovací skripty testovacích případů konzistentní.
Rámec je vyžadován, aby poskytl soubor pokynů, které musí každý dodržovat, aby udržoval čitelnost, opakovanou použitelnost a konzistenci testovacích skriptů. Rámec také poskytuje jednu společnou základnu pro funkce hlášení a protokolování.
Otázka č. 33) Jak budete automatizovat základní testovací případy funkce „přihlášení“ pro aplikaci?
Odpovědět: Za předpokladu, že automatizační nástroj a framework jsou již na místě testovacího prostředí.
Testování základní funkce „Přihlášení“:
- Pochopte požadavek projektu : Funkce přihlášení bude mít textové pole pro uživatelské jméno, textové pole pro heslo a tlačítko pro přihlášení.
- Určete scénáře testu: Pro přihlašovací funkce jsou možné testovací scénáře:
- Prázdné uživatelské jméno a heslo
- Neplatné uživatelské jméno a heslo
- Platné uživatelské jméno a neplatné heslo
- Platné uživatelské jméno a heslo
- Připravte a Soubor pro zadávání dat s daty odpovídajícími každému scénáři.
- Spusťte nástroj z programu.
- Určete pole pro uživatelské jméno, heslo a přihlašovací tlačítko.
- Pro každý testovací scénář získejte data z datového souboru a zadejte do příslušných polí. Po zadání údajů klikněte na tlačítko přihlášení.
- Ověřit chybová zpráva pro negativní scénáře a zpráva o úspěchu pro pozitivní scénáře v testovacím skriptu pomocí tvrzení.
- Běh testovací sadu a vygenerujte zprávu.
Otázka č. 34) Testuje Automation testování černé skříňky nebo testování bílé skříňky?
Odpovědět: Automatizační testování je většinou a testování černé skříňky protože právě programujeme kroky, které ruční tester provádí pro testovanou aplikaci, aniž by znal nízkoúrovňový design nebo kód aplikace.
Automatizované testovací skripty někdy potřebují přístup k podrobnostem databáze, které se používají v testované aplikaci, nebo k některým dalším podrobnostem kódování, a proto mohou být typem testování bílé schránky.
Automatizované testování tedy může být typem testování v černé nebo bílé krabici v závislosti na scénářích, ve kterých se automatizace provádí.
Otázka č. 35) Kolik testovacích případů jste automatizovali denně?
Odpovědět: Počet závisí na složitosti testovacích případů. Když byla složitost omezená, dokázal jsem automatizovat 5 až 6 testovacích případů denně. Někdy jsem byl schopen automatizovat pouze jeden testovací případ pro složité scénáře.
Také jsem rozdělil své testovací případy na různé komponenty, jako je vstup, provedení výpočtu, ověření výstupu atd. V případě velmi složitých scénářů a trvalo 2 nebo více dní.
Otázka č. 36) Jaké faktory určují účinnost testování automatizace?
Odpověď: Některé z faktorů, které určují účinnost testování automatizace, jsou:
- Úspora času spuštěním skriptů při ručním provádění testovacích případů.
- Zjištěné závady
- Vyzkoušejte pokrytí nebo pokrytí kódu
- Doba údržby nebo doba vývoje
- Stabilita skriptů
- Test opakované použitelnosti
- Kvalita testovaného softwaru
Otázka č. 37) Které testovací případy lze automatizovat?
Odpovědět: Typy testovacích případů, které lze automatizovat, jsou:
i) Případy kouřového testu: Testování kouře je také známé jako testování ověření sestavení. Testovací kouřové případy se spustí pokaždé, když se vydá nové sestavení, aby se zkontrolovalo, zda je stav sestavení přijatelný k provedení testování.
(ii) Případy regresního testu : Regresní testování je testování, které má zajistit, aby dříve vyvinuté moduly fungovaly podle očekávání po přidání nového modulu nebo opravě chyby.
Regresní testovací případy jsou velmi důležité v přírůstkovém softwarovém přístupu, kdy je v každé fázi přírůstku přidána nová funkce. V tomto případě se regresní testování provádí v každé přírůstkové fázi.
(iii) Testovací případy komplexního výpočtu: Do této kategorie spadají testovací případy, které zahrnují některé složité výpočty k ověření pole pro aplikaci. Složité výsledky výpočtu jsou náchylnější k lidským chybám, a proto při automatizaci poskytují přesné výsledky.
iv) Testovací případy založené na datech: Testovací případy, které mají stejnou sadu kroků a běží vícekrát se změnou dat, se nazývají testovací případy založené na datech. Automatizované testování pro tyto druhy testovacích případů je rychlé a nákladově efektivní.
v) Nefunkční testovací případy : Testovací případy, jako jsou zátěžové testy a testy výkonu, vyžadují simulované prostředí s více uživateli a více kombinacemi hardwaru nebo softwaru.
Ruční nastavení více prostředí je nemožné pro každou kombinaci nebo počet uživatelů. Automatizované nástroje mohou snadno vytvořit toto prostředí a snadno provádět nefunkční testování.
Otázka č. 38) Jaké jsou fáze životního cyklu testování automatizace?
Odpověď: Fáze životního cyklu testování automatizace zahrnují:
- Rozhodnutí provést testování automatizace.
- Identifikujte a dozvíte se o automatizačním nástroji.
- Určete rozsah testování automatizace.
- Navrhnout a vyvinout testovací sadu.
- Provedení testu
- Údržba testovacích skriptů.
Otázka č. 39) Co je to automatický testovací skript?
Odpovědět: Automatizovaný testovací skript je krátký program, který je napsán v programovacím jazyce, aby provedl sadu pokynů v testované aplikaci a ověřil, zda je aplikace podle požadavků.
Tento program při spuštění poskytuje výsledky testu jako vyhovující nebo neúspěšné podle toho, zda je aplikace podle očekávání.
Závěr
To jsou hlavní otázky, které jsou nezávislé na automatizačním nástroji nebo programovacím jazyce. Rozhovory týkající se testování automatizace také zahrnují otázky týkající se nástrojů a programovacích jazyků v závislosti na nástroji, se kterým jste pracovali.
Většina otázek týkajících se automatizace testů je zaměřena na rámec, který vyvíjíte, proto se doporučuje vytvořit a důkladně porozumět testovacímu rámci. Když pohovořím a kandidát odpověděl na moji otázku v rámci, také dávám přednost otázce specifické pro jazyk (v mém případě jádro java).
Otázky začínají od základů jazyka Java k napsání logiky některých základních scénářů, jako jsou:
- Jak byste extrahovali sadu textu z daného řádku?
- Jak byste extrahovali URL?
- Jak byste to zvládli na jakékoli webové stránce, v jakémkoli rámci, počet odkazů a jejich obsah se dynamicky mění?
- Jak zacházíte s obrázky a flash objekty?
- Jak najdete slovo v řádku?
Odpovědi na všechny tyto otázky týkající se automatizace testů jsou velmi specifické pro nástroj / jazyk, který používáte pro automatizaci. Než tedy půjdete na pohovor, oprášte své programátorské dovednosti.
Pokud jste neměli šanci vytvořit svůj rámec a vytvořil ho někdo jiný, udělejte si čas na důkladné pochopení, než budete sedět na pohovoru.
Některé tipy pro rozhovory s automatizačními testy by byly:
- Poznejte svůj nástroj důkladně.
- Naučte se techniky lokátoru používané vaším nástrojem.
- Procvičte si programování v jazyce, který používáte pro testování automatizace.
- Naučte se svůj framework a jeho komponenty.
- Je vždy výhodné, pokud jste se podíleli na vývoji vašeho rámce. Buďte tedy důkladní s moduly v rámci, na kterých jste pracovali.
Doufám, že by vám tyto otázky byly užitečné při přípravě na pohovor o automatizaci testů.
Doporučené čtení
- Dotazy a odpovědi na pohovor
- ETL Testing Interview Otázky a odpovědi
- Některé zajímavé otázky týkající se testování softwaru
- 25 nejlepších agilních testovacích otázek a odpovědí na rozhovor
- Top 20 nejdůležitějších API testů Interview Otázky a odpovědi
- Otázky a odpovědi k testování softwaru (1. část)
- Nejlepší nástroje pro testování softwaru 2021 (QA Test Automation Tools)
- Top 30 testů zabezpečení, otázky a odpovědi na pohovor