what is software testing
Kompletní průvodce testováním softwaru s více než 100 výukami pro ruční testování s definicí, typy, metodami a podrobnostmi testování:
Co je Testování softwaru?
Testování softwaru je proces ověřování a ověřování funkčnosti aplikace, aby se zjistilo, zda splňuje stanovené požadavky. Jedná se o proces hledání defektů v aplikaci a ověření, zda aplikace funguje podle požadavků koncového uživatele.
Co je ruční testování?
Ruční testování je proces, při kterém porovnáváte chování vyvinutého kódu (software, modul, API, funkce atd.) S očekávaným chováním (požadavky).
Co se naučíte:
Seznam výukových programů pro ruční testování softwaru
Toto je nejpodrobnější řada výukových programů o testování softwaru. Pečlivě projděte témata uvedená v této sérii, abyste se naučili základní a pokročilé testovací techniky.
Tato řada výukových programů by obohatila vaše znalosti a posílila by vaše testovací dovednosti.
Procvičte si kompletní manuální testování bezplatného tréninku na živém projektu:
Výukový program č. 1: Základy ručního testování softwaru
Výukový program č. 2: Živý představení projektu
Výukový program č. 3: Testovací scénář psaní
Výukový program č. 4: Napište dokument s testovacím plánem od začátku
Výukový program č. 5: Psaní testovacích případů z dokumentu SRS
Výukový program č. 6: Provedení testu
Výukový program č. 7: Sledování chyb a odhlášení z testu
Výukový program č. 8: Kurz testování softwaru
Životní cyklus testování softwaru:
Výukový program č. 1: natluču
Testování webu:
Výukový program č. 1: Testování webových aplikací
Výukový program č. 2: Testování mezi prohlížeči
Správa testovacích případů:
devops rozhovor otázky a odpovědi pro zkušené
Výukový program č. 1: Testovací případy
Výukový program č. 2: Ukázková šablona testovacího případu
Výukový program č. 3: Matice sledovatelnosti požadavků (RTM)
Výukový program č. 4: Pokrytí testu
Výukový program č. 5: Testování správy dat
Správa testů:
Výukový program č. 1: Testovací strategie
Výukový program č. 2: Šablona testovacího plánu
Výukový program č. 3: Odhad testu
Výukový program č. 4: Nástroje pro správu testů
Výukový program č. 5: Výukový program HP ALM
Výukový program č. 6: Jira
Výukový program č. 7: Výukový program TestLink
Technické zkoušky:
Výukový program č. 1: Použijte testování případů
Výukový program č. 2: Státní přechodové testování
Výukový program č. 3: Analýza hraničních hodnot
Výukový program č. 4: Rozdělení ekvivalence
Výukový program č. 5: Metodiky testování softwaru
Výukový program č. 6: Agilní metodika
Správa defektů:
Výukový program č. 1: Životní cyklus chyb
Výukový program č. 2: Hlášení chyb
Výukový program č. 3: Priorita defektu
Výukový program č. 4: Výukový program Bugzilla
Funkční testování
Výukový program č. 1: Testování jednotek
Výukový program č. 2: Zdravý rozum a kouřové zkoušky
Výukový program č. 3: Regresní testování
Výukový program č. 4: Testování systému
Výukový program č. 5: Přijímací zkoušky
Výukový program č. 6: Testování integrace
Výukový program č. 7: UAT uživatelské akceptační testy
Nefunkční testování:
Výukový program č. 1: Nefunkční testování
Výukový program č. 2: Testování výkonu
Výukový program č. 3: Testování zabezpečení
Výukový program č. 4: Testování zabezpečení webových aplikací
Výukový program č. 5: Testování použitelnosti
Výukový program č. 6: Testování kompatibility
Výukový program č. 7: Testování instalace
Výukový program č. 8: Testování dokumentace
Typy testování softwaru:
Výukový program č. 1: Druhy testování
Výukový program č. 2 : Testování černé skříňky
Výukový program č. 3: Testování databáze
Výukový program č. 4: End to end Testing
Výukový program č. 5: Průzkumné testování
Výukový program č. 6: Přírůstkové testování
Výukový program č. 7: Testování přístupnosti
Výukový program č. 8: Negativní testování
Výukový program č. 9: Testování backendu
Výukový program č. 10: Alfa testování
Výukový program č. 11: Beta testování
Výukový program č. 12: Alfa vs Beta testování
Výukový program č. 13: Testování gama
Výukový program č. 14: Testování ERP
Výukový program č. 15: Statické a dynamické testování
Výukový program č. 16: Adhoc testování
Výukový program č. 17: Testování lokalizace a internacionalizace
Výukový program č. 18: Testování automatizace
Výukový program č. 19: Bílé pole testování
Kariéra v testování softwaru:
Výukový program č. 1: Výběr kariéry při testování softwaru
Výukový program č. 2: Jak získat úlohu testování kvality - Kompletní průvodce
Výukový program č. 3: Možnosti kariéry pro testery
Výukový program č. 4: Přepínač testování jiných než IT na software
Výukový program č. 5: Nastartujte svou kariéru v ručním testování
Výukový program č. 6: Poučení z 10 let testování
Výukový program č. 7: Přežít a postupovat v testovacím poli
Příprava rozhovoru:
Výukový program č. 1: QA Pokračovat v přípravě
Výukový program č. 2: Ruční testování dotazů na rozhovor
Výukový program č. 3: Dotazy na rozhovor s automatizačním testováním
Výukový program č. 4: QA Interview Otázky
Výukový program č. 5: Zpracovat jakýkoli pracovní pohovor
Výukový program č. 6: Získejte testovací práci jako svěžest
Testování různých doménových aplikací:
Výukový program č. 1 : Testování bankovních aplikací
Výukový program č. 2: Testování aplikací zdravotní péče
Výukový program č. 3: Testování platební brány
Výukový program č. 4: Testovací systém prodeje (POS)
Výukový program č. 5: Testování webových stránek eCommerce
Testování certifikace QA:
Výukový program č. 1: Průvodce certifikací testování softwaru
Výukový program č. 2: Průvodce certifikací CSTE
Výukový program č. 3: Průvodce certifikací CSQA
Výukový program č. 4: Průvodce ISTQB
Výukový program č. 5: ISTQB Advanced
Pokročilá témata ručního testování:
Výukový program č. 1: Cyklomatická složitost
Výukový program č. 2: Testování migrace
Výukový program č. 3: Cloudové testování
Výukový program č. 4: Testování ETL
Výukový program č. 5: Metriky testování softwaru
Výukový program č. 6: Webové služby
Připravte se podívat se na 1. tutoriál v této sérii ručních testů !!!
Úvod do manuálního testování softwaru
Ruční testování je proces, při kterém porovnáváte chování vyvinutého kódu (software, modul, API, funkce atd.) S očekávaným chováním (požadavky).
A jak budete vědět, jaké je očekávané chování?
Poznáte to tak, že si pozorně přečtete nebo poslechnete požadavky a zcela jim porozumíte. Nezapomeňte, že úplné pochopení požadavků je velmi důležité.
java základní otázky a odpovědi na rozhovor
Přemýšlejte o sobě jako o konečném uživateli toho, co budete testovat. Poté již nejste vázáni na dokument nebo požadavky na softwarový požadavek v něm. Poté můžete pochopit základní požadavek a nejen zkontrolovat chování systému podle toho, co je napsáno nebo řečeno, ale také podle vašeho vlastního porozumění a proti věcem, které nejsou napsány nebo řečeny.
Někdy to může být zmeškaný požadavek (neúplný požadavek) nebo implicitní požadavek (něco, co nepotřebuje samostatnou zmínku, ale mělo by to být splněno), a také si to musíte otestovat.
Dále nemusí být nutně dokumentovaný požadavek. Můžete velmi dobře znát softwarovou funkčnost, nebo dokonce uhodnout a poté otestovat jeden krok po druhém. Obecně tomu říkáme ad-hoc testování nebo průzkumné testování.
Podívejme se do hloubky:
Nejprve pochopme skutečnost - Ať už porovnáváte testování softwarové aplikace nebo něčeho jiného (řekněme vozidla), koncept zůstává stejný. Přístup, nástroje a priority se mohou lišit, ale hlavním cílem zůstává STEJNÝ a je JEDNODUCHÝ, tj. Porovnání skutečného chování s očekávaným chováním.
Zadruhé - Testování je jako postoj nebo myšlení, které by mělo vycházet zevnitř. Dovednosti se dají naučit, ale úspěšným testerem se stanete, pouze pokud máte ve výchozím nastavení několik kvalit. Když říkám, že testovacím dovednostem se lze naučit, mám na mysli soustředěné a formální vzdělávání v procesu testování softwaru.
Jaké jsou však vlastnosti úspěšného testera? Můžete si o nich přečíst na níže uvedeném odkazu:
Přečtěte si jej zde => Vlastnosti vysoce efektivních testerů
Před pokračováním v tomto kurzu velmi doporučuji projít si výše uvedený článek. Pomůže vám porovnat vaše vlastnosti s těmi, které se očekávají v roli testovacího softwaru.
Pro ty, kteří nemají čas projít si článek, je zde shrnutí:
'Tvoje zvědavost, pozornost, disciplína, logické myšlení, vášeň pro práci a schopnost pitvat věci jsou hodně důležité, aby mohl být destruktivním a úspěšným testerem.' Fungovalo to pro mě a pevně věřím, že to bude fungovat i pro vás. Pokud tyto vlastnosti již máte, pak to skutečně musí fungovat i pro vás. “
Mluvili jsme o základních předpokladech stát se testerem softwaru. Pojďme nyní pochopit, proč ruční testování má a vždy by mělo svou nezávislou existenci s růstem automatizovaného testování nebo bez něj.
Proč je vyžadováno ruční testování?
Víte, co je nejlepší na tom být Testerem, to taky Manuálním Testerem?
Je to tím, že se zde nemůžete spolehnout jen na sadu dovedností. Musíte mít / rozvíjet a vylepšovat svůj myšlenkový proces. To je něco, co si opravdu nemůžete koupit za pár babek. Vy sami na tom musíte pracovat.
Budeš muset rozvíjet zvyk klást otázky a budete se na ně muset každou minutu ptát, když budete testovat. Většinou byste měli klást tyto otázky sami sobě než ostatním.
Doufám, že jste prošli článkem, který jsem doporučil v předchozí části (tj. Vlastnosti vysoce efektivních testerů). Pokud ano, pak byste věděli, že testování je považováno za myšlenkový proces a to, jak úspěšný budete jako tester, zcela závisí na vlastnostech, které jako člověk máte.
Podívejme se na tento jednoduchý postup:
- Něco děláš ( provádět akce ), zatímco jej sledujete s určitým záměrem (ve srovnání s očekávaným). Nyní vaše pozorování dovednosti a disciplína hrát věci přijde na obrázek zde.
- Voila! Co to bylo? Něco jste si všimli. Všimli jste si toho, protože jste dávali perfektní pozornost k detailům před tebou. Nenecháte to jít, protože jste zvědavý . Ve vašem plánu nebylo, že se stane něco neočekávaného / zvláštního, všimnete si toho a budete to dále zkoumat. Ale teď to děláte. Můžete to nechat jít. Ale neměli byste to nechat jít.
- Jste šťastní, zjistili jste příčinu, kroky a scénář. Nyní to budete správně a konstruktivně komunikovat s vývojovým týmem a dalšími zúčastněnými stranami ve vašem týmu. Můžete to udělat pomocí nějakého nástroje pro sledování defektů nebo ústně, ale musíte se ujistit, že jste komunikovat to konstruktivně .
- Jejda! Co když to udělám tak? Co když zadám správné celé číslo jako vstup, ale s úvodními bílými mezerami? Co když? … Co když? … Co když? Neskončí to snadno, nemělo by to skončit snadno. Budeš představit si mnoho situací a scénářů a opravdu budete v pokušení je také provést.
Níže uvedený diagram představuje životnost testeru:
Přečtěte si výše zmíněné čtyři odrážky. Všimli jste si, že jsem to udržel velmi krátký, ale přesto jsem zdůraznil nejbohatší část toho, že jsem manuální tester? A všimli jste si tučného zvýraznění několika slovy? To jsou přesně ty nejdůležitější vlastnosti, které ruční tester potřebuje.
Skutečně si nyní myslíte, že tyto činy lze zcela nahradit něčím jiným? A aktuální trend dnes - může být někdy nahrazen automatizací?
V SDLC s jakoukoli vývojovou metodologií zůstává vždy jen málo věcí konstantní. Jako tester spotřebujete požadavky, převádíte je do testovacích scénářů / testovacích případů. Tyto testovací případy poté provedete nebo přímo zautomatizujete (vím, že to dělá několik společností).
Když to automatizujete, vaše zaměření je stabilní, což automatizuje zapsané kroky.
Vraťme se k formální části, tj. K ručnímu provedení testovacích případů.
Zde se zaměřujete nejen na provádění písemných testovacích případů, ale při tom také provádíte mnoho průzkumných testů. Pamatujete, jste zvědaví? A budete si to představovat. A nebudete schopni odolat, budete opravdu dělat, co jste si představovali.
Obrázek níže ukazuje, jak je psaní testovacích případů zjednodušeno:
Vyplňuji formulář a vyplněním prvního pole jsem skončil. Jsem příliš líný na to, abych přesunul kurzor na další pole. Stiskl jsem klávesu „tab“. Také jsem skončil s vyplněním dalšího a posledního pole, nyní musím kliknout na tlačítko Odeslat, fokus je stále na posledním poli.
Jejda, omylem jsem stiskl klávesu „Enter“. Podívám se, co se stalo. NEBO je tlačítko Odeslat, dvakrát na něj kliknu. Nespokojený. Kliknu na to několikrát, příliš rychle.
Všiml sis? Existuje tolik možných akcí uživatelů, a to jak zamýšlených, tak nezamýšlených.
Neuspějete při psaní všech testovacích případů, které pokrývají testovanou aplikaci na 100%. To se musí stát průzkumným způsobem.
Při testování aplikace budete pokračovat v přidávání nových testovacích případů. Budou to testovací případy chyb, se kterými jste se setkali, pro které dříve nebyl žádný testovací případ napsán. Nebo během testování něco spustilo váš myšlenkový proces a vy jste dostali několik dalších testovacích případů, které byste rádi přidali do sady testovacích případů a provedli.
I po tom všem neexistuje záruka, že neexistují skryté chyby . Software s nulovými chybami je mýtus. Můžete se zaměřit pouze na to, abyste se dostali blízko k nule, ale to se prostě nemůže stát, aniž by lidská mysl neustále cílila na to samé, podobně jako v příkladu, který jsme viděli výše.
Přinejmenším od dnešního dne neexistuje žádný software, který bude myslet jako lidská mysl, pozorovat jako lidské oko, klást otázky a odpovídat jako člověk a poté provádět zamýšlené a nezamýšlené akce. I kdyby se něco takového stalo, čí mysl, myšlenky a oko to napodobí? Vaše nebo moje? My, lidé, také nemáme stejné právo. Všichni jsme jiní. Pak?
Potřeba ručního testování, když je automatizace kolem:
Automation Testing má v dnešní době svůj vlastní podíl na slávě a v nadcházejících letech jich bude ještě více, ale jednoduše nemůže nahradit manuální testování QA (čtěte lidské / průzkumné testování).
Určitě jste už slyšeli - „ Neautomatizujete testování, automatizujete kontrolu “. Tato věta hovoří hodně o tom, kde stojí ruční testování QA s automatizovaným testováním. O tomto tématu psalo a hovořilo mnoho velkých jmen po celém světě, takže se tím nebudu příliš zabývat.
Automatizace nemůže nahradit lidské testování, protože:
- Vyžaduje runtime úsudky o všem, co se děje před vašimi očima (při testování) a v několika případech také v zákulisí.
- Vyžaduje jasné a neustálé pozorování.
- Vyžaduje to výslech.
- Vyžaduje vyšetřování.
- Vyžaduje to uvažování.
- Vyžaduje neplánované akce podle potřeby během testování.
Testování může být nahrazeno nástrojem / strojem, který bude schopen absorbovat podrobnosti, zpracovat je, ovládat akce a provádět je jako lidská mysl a člověk, a to vše za běhu a ve všech možných kontextech. Tento nástroj musí znovu být jako všichni možní lidé.
Stručně řečeno, lidské testování nelze nahradit. Možná, že nějaký hollywoodský sci-fi film za pár let bude vypadat blízko, ale ve skutečném životě nevidím, že to přijde na několik set let, jak si dovedu představit. Nebudu to odepisovat navždy, protože věřím v nekonečné možnosti.
Na zvláštní poznámku, i když se to opravdu stane po několika stovkách let, obraz, který si dokážu představit, je určitě děsivý svět. Věk transformátorů. :)
= >> Doporučené čtení - Nejlepší společnosti poskytující ruční testování
Jak automatizace doplňuje ruční testování?
Už jsem řekl a znovu opakuji, že automatizaci již nelze ignorovat. Ve světě, kde se nepřetržitá integrace, nepřetržité doručování a nepřetržité nasazování stávají povinnými věcmi, nemusí nepřetržité testování zůstat nečinné. Musíme najít způsoby, jak na to.
Většinou nasazení více a více pracovních sil z dlouhodobého hlediska pro tento úkol nepomůže. Tester (testovací vedoucí / architekt / manažer) proto musí opatrně rozhodovat o tom, co má automatizovat a co by mělo být ještě provedeno ručně.
Stává se nesmírně důležité nechat si vypracovat velmi přesné testy / kontroly, aby je bylo možné automatizovat bez odchylek od původního očekávání a bylo možné je použít při regresi produktu jako součást ‚průběžného testování '.
Poznámka: Slovo spojitý z pojmu ‚průběžné testování 'podléhá podmíněným a logickým voláním podobným ostatním pojmům, které jsme použili výše se stejnou předponou. Kontinuální v tomto kontextu znamená stále častěji, rychleji než včera. I když to má význam, může to velmi dobře znamenat každou sekundu nebo nanosekundu.
Bez perfektní shody lidských testerů a automatických kontrol (zdokumentovány testy s přesnými kroky, očekávaný výsledek a výstupní kritéria zmíněného testu) je dosažení průběžného testování velmi obtížné, což zase zajistí nepřetržitou integraci, nepřetržité doručování a nepřetržité nasazení obtížnější.
Úmyslně jsem použil termín kritéria ukončení testu výše. Naše automatizační obleky již nemohou být podobné těm tradičním. Musíme se ujistit, že pokud selžou, měli by selhat rychle. A aby nedocházelo k jejich rychlému selhání, měla by být automatizována i kritéria ukončení.
Příklad:
Řekněme, že existuje blokovací vada, při které se nemohu přihlásit na Facebook.
Funkce přihlášení poté musí být vaší první automatizovanou kontrolou a vaše automatizační sada by neměla spouštět další kontrolu, kde je přihlášení nezbytnou podmínkou, jako je zveřejnění stavu. Vy velmi dobře víte, že to určitě selže. Aby to selhalo rychleji, publikujte výsledky rychleji, aby bylo možné závadu rychleji vyřešit.
Další věc je opět něco, co jste už určitě slyšeli - Nemůžete a neměli byste se snažit všechno automatizovat.
Vyberte testovací případy, které, pokud budou automatizované, budou mít značný přínos na lidské testery a má dobrou návratnost investic. Ostatně existuje obecné pravidlo, které říká, že byste se měli pokusit automatizovat všechny vaše testovací případy priority 1 a pokud možno pak prioritu 2.
Automatizaci není snadné implementovat a je časově náročná, proto se doporučuje vyhnout se automatizaci případů s nízkou prioritou alespoň do doby, než budete hotovi s těmi vysokými. Výběr toho, co se má automatizovat, a zaměření se na to zlepšuje kvalitu aplikace, když se používá a udržuje nepřetržitě.
Závěr
Doufám, že jste již pochopili, proč a jak špatně je pro testování kvalitních produktů vyžadováno ruční / lidské testování a jak to automatizace doplňuje.
Přijetí důležitosti ručního testování QA a znalost toho, proč je zvláštní, je prvním krokem k tomu, aby byl vynikajícím ručním testerem.
V našich připravovaných výukových programech ručního testování se budeme zabývat obecným přístupem k provádění ručního testování, jak bude koexistovat s automatizací a mnoha dalšími důležitými aspekty.
Jsem si jistý, že získáte obrovské znalosti o testování softwaru, jakmile projdete celým seznamem tutoriálů v této sérii.
nejlepší mp3 přehrávač downloader pro Android
Rádi bychom vás slyšeli. Neváhejte vyjádřit své myšlenky / návrhy v sekci komentáře níže.
Doporučené čtení
- Nejlepší nástroje pro testování softwaru 2021 (QA Test Automation Tools)
- Úloha pomocníka QA při testování softwaru
- Alfa testování a beta testování (kompletní průvodce)
- Funkční testování vs. nefunkční testování
- Nejlepší služby testování softwaru QA od SoftwareTestingHelp
- Kurz testování softwaru: Ke kterému institutu pro testování softwaru bych se měl připojit?
- Typy testování softwaru: Různé typy testování s podrobnostmi
- Výběr testování softwaru jako vaší kariéry