Za jakým účelem se v testech používá ORM a v jakých případech je lepší ho nepoužívat?
QA / QA Automation
Z čeho se skládá HTTP požadavek?
Co je to matice sledování a jak se vytváří?
Co je to cache, co jsou to cookies?
REST API: jak vytvořit mock službu? Uveďte příklady nástrojů.
Objektově orientované programování (OOP) je přístup k vývoji softwaru, při kterém je kód organizován ve formě objektů Zapouzdření Zapouzdření je spojení dat a metod, které s těmito daty pracují, uvnitř jedné třídy, a také omezení přímého přístupu k vnitřnímu stavu objektu. Jednoduše řečeno: objekt spravuje svá vlastní data a vnější kód s ním komunikuje prostřednictvím metod. Abstrakce Abstrakce je zvýraznění pouze důležitých vlastností objektu a skrytí detailů jeho implementace. Jednoduše řečeno: uživateli záleží na tom, co objekt dělá, ne jak přesně to dělá. Polymorfismus Polymorfismus je schopnost objektů s různou implementací používat stejnou rozhraní. V testování to pomáhá psát univerzální kód, který pracuje s různými typy dat nebo tříd. Příklad v Pythonu: class Animal: def make_sound(self): pass class Dog(Animal): def make_sound(self): return "Haf!" class Cat(Animal): def make_sound(self): return "Mňau!" def animal_sound(animal: Animal): print(animal.make_sound()) dog = Dog() cat = Cat() animal_sound(dog) # Haf! animal_sound(cat) # Mňau! V automatizovaných testech je polymorfismus užitečný pro: - Vytváření univerzálních metod kontroly - Implementaci různých testovacích strategií přes jedno rozhraní - Podporu různých verzí API/UI bez změny testů Dědičnost Dědičnost je mechanismus, který umožňuje nové třídě automaticky používat existující třídu, děděním jejích vlastností a metod. Jednoduše řečeno: nová třída znovu využívá kód rodičovské třídy a v případě potřeby jej rozšiřuje.
Na co se v SQL používají ORDER BY a GROUP BY? Jaké agregační funkce jste ve své práci použili?
Jaké informace jsou přenášeny v hlavičkách HTTP požadavku?
Jak se řeší problém závodu zpráv v Kafka?
Jaký je rozdíl mezi metodami PUT a PATCH a jaké jsou jejich vlastnosti při práci?
Povězte o životním cyklu chyby. Podle stavů to lze.
Co je to sledování zpráv a jak pomáhá lokalizovat chybu v architektuře mikroservisů?
Jaký je rozdíl mezi iterátorem a generátorem?
V jakých případech má smysl používat asynchronitu a v jakých ne? Jak implementujete asynchronitu v testech?
Jak implementovat soft assert v pytestu pro více kontrol v testu, aby test nespadl při první chybě, ale provedl všechny kontroly?
Jaký je rozdíl mezi Smoke, Sanity a Regression testy?
Jak zachytit a upravit odpověď API v Playwright pro testování UI?