Teszt, mint a Google: Az ipari óriások legjobb gyakorlatai (04.27.24)
Sokat tanulhatunk az ipari óriásoktól, ha megfigyeljük módszereiket és megközelítésüket a munkafolyamatokban.
Hogyan tudják fenntartani a szoftver tesztelési folyamatát több millió kódsorban?
Hogyan szervezik meg a munkafolyamatot minőségbiztosítási mérnökök ezreivel?
Hogyan tudnak megbirkózni a projektbővítéssel?
Az olyan cégek tapasztalata segíthet a kisvállalkozások tesztelési folyamatainak fejlesztésében, mint a Google vagy a Spotify. csapatok.
Vizsgáljuk meg közelebbről, hogyan tesztelik az óriások.
Google: a kód lefedettségének fontosságaEnnek ellenére sok mérnök vitatkozik a szoftver tesztelés hatékonyságának ilyen mértékű fontosságáról mint kód lefedettség. A Google szakemberei ragaszkodnak ahhoz, hogy a kód lefedettségi adatok értékes információk lehetnek a kockázatok és a tesztelési tevékenység szűk keresztmetszeteinek értékeléséhez. Carlos Arguelles, Marko Ivanković és Adam Bender megosztják a kód lefedettségével kapcsolatos legjobb gyakorlatokat:
- A kódfedés segíthet a hibák és hibák csökkentésében. A Google minőségbiztosítási mérnökeinek tapasztalata azt mutatta, hogy a kód lefedettségének növekedése megváltoztatja a teszteléshez való hozzáállást és hozzáállást. Azok a csapatok, amelyek elsődleges célként kód lefedettséggel rendelkeznek, hajlamosak jobb tesztelhetőséget biztosítani termékeik számára. Hatékonyabb kódot írnak a teszteléshez, hogy könnyebben és kevésbé időigényesen érhessék el a tesztelési célokat.
- Használjon mutációs tesztet a magas tesztfedettség biztosításához. A teljes kód lefedettség pazarló lehet, és nem garantálja a kiváló minőségű teszt lefedettséget. A kód lefedettségének magas százaléka nem jelenti azt, hogy minden funkciót helyesen teszteltek volna. Ez azt jelenti, hogy a kódot összességében tesztelték. A tesztek magas színvonalának biztosítása érdekében a Google szakértői javasolják a mutációs teszt alkalmazását. Ez a módszer magában foglalja a kis kódmódosítások végrehajtását és annak ellenőrzését, hogy a tesztkészletek hogyan azonosítják őket.
- A kód lefedettségének százaléka sok tényezőtől függ. Nem szabad a magas kód lefedettségre törekednünk, de az alacsony lefedettség sok hibához is vezet. És a kérdés az, hogy mi az a speciális kód lefedettség egy adott rendszer számára? A kérdés megválaszolásához figyelembe kell vennünk a kódváltás kritikusságát, összetettségét és gyakoriságát. A kódfedés üzleti döntés, és a terméktulajdonosoknak meg kell határozniuk ezt.
- Elemezze, hogy mit fedjen le. Nem tudunk 100% -ban kódfedést kapni, ezért a minőségbiztosítási mérnököknek ezt be kell tartaniuk. a kód legértékesebb részeire terjed ki. A fejlesztői csapatnak nem arról kell megvitatnia és gondolkodnia, hogy hány kódsor van lefedve, hanem arról, hogy pontosan mit fed le.
A Spotify gyorsan növekvő vállalat. 2008-ban hozták létre 150 alkalmazottal. 2019-ben az alkalmazottak száma 4 405-re nőtt. Ma a Spotify mintegy 300 millió felhasználót szolgál ki világszerte, ezzel a világ legnépszerűbb streaming szolgáltatásának számít. fejlesztési folyamatok.
- Termékcélok kitűzése a minőségbiztosítási csapat számára. A Spotify-nak keresztfunkcionális csapatai vannak. Minden csapatnak vannak céljai és egy sor speciális képessége, hogy elérje ezeket a célokat. A csapat felépítése a céloktól függ. Ezért egyes csapatok csak fejlesztőkből állnak, és vannak fejlesztők és tesztelők. Így a tesztelők szorosan együttműködnek a fejlesztői csapattal, és a termék elsődleges céljaira összpontosítanak. Egy ilyen megközelítés lehetővé teszi a Spotify számára a fejlesztési folyamat hatékony méretezését.
- Az automatizálás tesztelése eszköz, de nem csodaszer. A Spotify tesztelési és fejlesztési menedzsere Kristian Karl azt állítja, hogy a szoftveres tesztelőket nem lehet helyettesíteni az automatizálással. A teszteléshez emberi tapasztalat és tudás szükséges. Az automatizálási teszt robusztus eszköz a folyamat felgyorsítására, de az emberek döntéseket hoznak és automatizált jelentéseket elemeznek. A Spotify az automatizálást használja az egyik skálaeszközként. Lehetővé teszi a tesztelők számára, hogy otthagyják az algoritmusokat, és a termékcélokra összpontosíthassanak.
A SpaceX egy innovatív vállalat, amely kereskedelmi űrszállításról, újrafelhasználható hordozórendszerről és nagy hatékonyság.
Nicholas Chaillan, a légierő szoftvervezetője elmondta, hogy a SpaceX fejlesztési részleg rendszere ötször hatékonyabb, mint a klasszikus munkafolyamatot kínáló vállalatok. Hogyan birkózik meg a SpaceX ilyen teszteléssel a teszteléssel?
A DevOps és az Agile megközelítések lehetővé teszik a SpaceX QA-mérnökeinek, hogy tömeges automatizálási teszteket végezzenek. A fejlesztők a tesztelési folyamat során folyamatosan tesztelnek azonnali visszajelzés és a meglévő kockázatok kiküszöbölése érdekében. Ezáltal proaktív módon dolgoznak, gyakran és korán tesztelnek.
A vállalat stratégiát dolgozott ki a folyamatos tesztelés megvalósításának a fejlesztési folyamatban.
Youtube videó: Teszt, mint a Google: Az ipari óriások legjobb gyakorlatai
04, 2024