Test nagu Google: Tööstushiiglaste parimad tavad (08.01.25)
Me võime tööstushiiglastelt palju õppida, jälgides nende töövoogudes nende meetodeid ja lähenemisviise.
Kuidas nad suudavad tarkvara testimise protsessi säilitada miljonites koodiridades?
Kuidas nad korraldavad töövoogu tuhandete kvaliteedikontrolli inseneridega?
Kuidas nad projekti laiendamisega toime tulevad?
Selliste ettevõtete nagu Google või Spotify kogemused võivad aidata testimisprotsesse parandada väikeettevõtetes ja meeskonnad.
Uurime lähemalt, kuidas hiiglased testivad.
Google: koodide katvuse tähtsus Sellegipoolest vaidlevad paljud insenerid tarkvara testimise tõhususe sellise mõõtme olulisuse üle koodikattena. Google'i spetsialistid nõuavad, et koodide katvuse andmed võivad olla väärtuslikud andmed testimistegevuse riskide ja kitsaskohtade hindamiseks. Carlos Arguelles, Marko Ivanković ja Adam Bender jagavad koodikatvuse parimaid tavasid:
- Koodide katvus aitab vähendada vigu ja tõrkeid. Google'i kvaliteedikontrolli inseneride kogemused näitasid, et koodide katvuse suurenemine toob kaasa muutusi testimises ja suhtumises testimisse. Meeskonnad, mille peamine eesmärk on koodi katvus, muudavad oma tooted paremini testitavaks. Nad kirjutavad testimiseks tõhusama koodi, et testimiseesmärgid oleksid hõlpsamad ja vähem aeganõudvad.
- Kasutage mutatsioonide testimist, et tagada testide kõrge katvus. Koodide täielik katvus võib olla raiskav ja ei taga testide kvaliteetset katvust. Suur koodide katvuse protsent ei tähenda, et kõiki funktsioone oleks õigesti testitud. See tähendab, et koodi testiti üldiselt. Testkatvuse kõrge kvaliteedi tagamiseks soovitavad Google'i eksperdid kasutada mutatsioonitestimist. See meetod hõlmab väikeste koodimuudatuste rakendamist ja kontrollimist, kuidas testikomplektid neid tuvastavad.
- Koodi katvuse protsent sõltub paljudest teguritest. Me ei peaks püüdma kõrge koodikatvuse poole, kuid madal katvus toob kaasa ka palju rikkeid. Ja küsimus on, mis on konkreetse süsteemi konkreetne katvus? Sellele küsimusele vastamiseks peaksime kaaluma selliseid asju nagu koodi muutmise kriitilisus, keerukus ja sagedus. Koodi katvus on äriotsus ja toote omanikud peaksid selle määratlema.
- Analüüsige, mida katta. Me ei saa 100% koodi katvust, seega peaksid kvaliteedikontrolli insenerid seda jälgima. hõlmatud on koodi kõige väärtuslikumad osad. Arendajameeskond peaks arutama ja mõtlema mitte selle üle, kui palju koodiridu on kaetud, vaid seda, mida see täpselt hõlmab.
Spotify on kiiresti arenev ettevõte. See loodi 2008. aastal 150 töötajaga. Aastal 2019 kasvas töötajate arv 4 405-ni. Täna teenib Spotify kogu maailmas umbes 300 miljonit kasutajat, muutes selle maailma populaarseimaks voogedastusteenuseks.
Saame õppida õppetunde selle kohta, kuidas Spotify oma testimist laiendab arendusprotsessid.
- Määrake QA-meeskonna jaoks toote eesmärgid. Spotifys on ristfunktsionaalseid meeskondi. Igal meeskonnal on eesmärkidele lähenemine ja konkreetsed oskused. Meeskonna struktuur sõltub eesmärkidest. Seega koosnevad mõned meeskonnad ainult arendajatest ja mõnel on arendajad ja testijad. Seega teevad testijad tihedat koostööd arendustiimiga ja keskenduvad toote peamistele eesmärkidele. Selline lähenemine võimaldab Spotify-l arenguprotsessi tõhusalt skaleerida.
- Automaatika testimine on tööriist, kuid mitte imerohi. Spotify testimis- ja arendusjuht Kristian Karl väidab, et tarkvara testijaid ei saa automatiseerimisega asendada. Testimine nõuab inimese kogemusi ja teadmisi. Automaatika testimine on kindel vahend protsessi kiirendamiseks, kuid inimesed teevad otsuseid ja analüüsivad automatiseeritud aruandeid. Spotify kasutab automatiseerimist ühe skaalatööriistana. See võimaldab testijatel jätta rutiin algoritmide juurde ja keskenduda toote eesmärkidele.
SpaceX on uuenduslik ettevõte, mis on tuntud kaubandusliku kosmosetranspordi, korduvkasutatava stardisüsteemi ja kõrge efektiivsus.
Õhujõudude tarkvara juhtivdirektor Nicholas Chaillan ütles, et SpaceXi arendusosakonna süsteem on viis korda efektiivsem kui klassikalise töövooga ettevõtted. Kuidas SpaceX sellise jõudlusega testimisprotsessiga toime tuleb?
DevOps ja Agile lähenemisviisid võimaldavad SpaceX QA-inseneridel pakkuda massautomaatika testimist. Arendustsükli jooksul pakuvad testijad pidevat testimist, et saada kiiret tagasisidet ja kõrvaldada olemasolevad riskid. Seetõttu töötavad nad ennetavalt, testides sageli ja varakult.
Ettevõte töötas välja strateegia, kuidas arendusprotsessis pidevat testimist rakendada.
Igal ettevõttel on oma testimisstrateegia, protsess ja lähenemisviisid. Iga meeskond valib ja kohandab testimisprotsessi lähtuvalt lõppeesmärkidest ja toote võimalustest. Iga spetsialisti peamine ülesanne on mõelda kliendile ja lõppkasutajale, kohaneda uute nõuetega ja võtta kasutusele valdkonna parimate kogemused.
Youtube video: Test nagu Google: Tööstushiiglaste parimad tavad
08, 2025