Kaj je neprekinjeno testiranje v DevOps? Opredelitev, prednosti, orodja

Kazalo:

Anonim

Neprekinjeno testiranje

Neprekinjeno testiranje v DevOps je vrsta preskušanja programske opreme, ki vključuje preizkušanje programske opreme na vseh stopnjah življenjskega cikla razvoja programske opreme. Cilj neprekinjenega testiranja je ovrednotiti kakovost programske opreme na vsakem koraku postopka neprekinjene dostave z zgodnjim in pogosto testiranjem.

Postopek neprekinjenega testiranja v DevOpsu vključuje zainteresirane strani, kot so Developer, DevOps, QA in Operacijski sistem.

V tej vadnici boste izvedeli

  • Kaj je neprekinjeno testiranje?
  • V čem se neprekinjeno testiranje razlikuje?
  • V čem se neprekinjeno testiranje razlikuje od avtomatizacije preskusov?
  • Kako narediti neprekinjeno testiranje
  • Orodja za neprekinjeno testiranje
  • Prednosti stalnega testiranja
  • Izzivi stalnega testiranja

V čem se neprekinjeno testiranje razlikuje?

Stari način testiranja je bil osredotočen. Programska oprema je bila predana eni ekipi drugi. Projekt bi imel določene razvojne in QA faze. Ekipe QA so si vedno želele več časa za zagotavljanje kakovosti. Cilj je bil, da kakovost prevlada nad projektnim načrtom.

Vendar si podjetje želi hitrejše dostave programske opreme končnemu uporabniku. Novejša je programska oprema, bolje jo je mogoče tržiti in povečati prihodkovni potencial podjetja. Zato se je razvil nov način testiranja.

Stalno pomeni neprekinjeno neprekinjeno testiranje. V postopku Neprekinjenega DevOpsa se sprememba programske opreme (kandidat za izdajo) nenehno premika iz razvoja v preizkušanje v uvajanje.

Koda se nenehno razvija, dostavlja, preizkuša in uvaja.

Na primer, vsakič, ko razvijalec preveri kodo v strežniku izvorne kode, kot je Jenkinsov avtomatiziran nabor preskusov enot, ki se izvajajo v neprekinjenem postopku. Če preskusi ne uspejo, se gradnja zavrne in o tem se obvesti razvijalca. Če zgradba prestane preizkus, se razporedi na zmogljive strežnike QA za izčrpne teste delovanja in obremenitve. Preizkusi potekajo vzporedno. Če testi prestanejo, se programska oprema uvede v proizvodnjo.

Neprekinjeno testiranje je majhen zobnik v ciklusu nenehnega razvoja, integracije in uvajanja.

Razvoj programske opreme ni enak kot v preteklosti, razvoj smo zmanjševali iz meseca v tedne. Trenutni niz preizkusov (glej sliko zgoraj) je naslovljen na preizkušanje uporabniškega vmesnika. Cilj pa je vedno več avtomatiziranih enotnih testov.

V čem se neprekinjeno testiranje razlikuje od avtomatizacije preskusov?

Avtomatizacija preskusov vs Neprekinjeno testiranje

Parameter Testna avtomatizacija Neprekinjeno testiranje
Definicija Testna avtomatizacija je postopek, pri katerem se orodje ali programska oprema uporablja za avtomatizacijo nalog. Gre za metodologijo testiranja programske opreme, ki se osredotoča na doseganje stalne kakovosti in izboljševanja.
Namen Nabor podobnih ali ponavljajočih se nalog lahko stroj izvede hitreje z manj napakami. Neprekinjen postopek testiranja pomaga najti tveganja, jih odpraviti in izboljšati kakovost izdelka.
Predpogoj Možna avtomatizacija pri testiranju brez vključevanja stalnega testiranja. Stalnega testiranja ni mogoče izvesti brez avtomatizacije preskusov.
Čas Izdaja programske opreme lahko traja od meseca do let. Izdaja programske opreme se lahko izdaja od tedna do ure.
Povratne informacije Redne povratne informacije po preizkusu vsake izdaje. Povratne informacije v vsaki fazi morajo biti takojšnje.
Zgodovina Avtomatizirano testiranje se izvaja že desetletja, da bi bil postopek testiranja hitrejši. Neprekinjeno testiranje je razmeroma novejši koncept.

Kako narediti neprekinjeno testiranje

  • Uporaba orodij za generiranje kompleta za avtomatizacijo testov iz uporabniških zgodb / zahtev
  • Ustvari testno okolje.
  • Kopirajte in anonimizirajte proizvodne podatke, da ustvarite preskusno posteljo
  • Za testiranje API-ja uporabite virtualizacijo storitve
  • Vzporedno preskušanje zmogljivosti

Orodja za neprekinjeno testiranje

Tu je urejen seznam najboljših orodij za neprekinjeno testiranje :

1) QuerySurge

QuerySurge je pametna rešitev za testiranje podatkov, ki je prva taka popolna rešitev DevOps za neprekinjeno testiranje podatkov. Ključne funkcije vključujejo Robust API s 60+ klici, podrobno podatkovno inteligenco in analitiko podatkov, brezhibno integracijo v cevovod DevOps za neprekinjeno testiranje in hitro preverjanje velikih količin podatkov.

Začnite testirati brezplačno

2) Jenkins

Jenkins je orodje za kontinuirano integracijo, ki je napisano v jeziku Java. To orodje je mogoče konfigurirati prek vmesnika GUI ali ukazov konzole.

Povezava za prenos: https://jenkins.io/

3) Travis

Travis je orodje za neprekinjeno testiranje, ki ga gosti GitHub. Ponuja gostujoče in krajevne različice. Ponuja različne jezike in dobro dokumentacijo.

Povezava za prenos: https://travis-ci.org/

4) Selen

Selen je odprtokodno orodje za testiranje programske opreme. Podpira vse vodilne brskalnike, kot so Firefox, Chrome, IE in Safari. Selenium WebDriver se uporablja za avtomatizacijo testiranja spletnih aplikacij.

Povezava za prenos: https://www.seleniumhq.org/

Prednosti neprekinjenega testiranja

  • Pospešite dostavo programske opreme
  • Neprekinjeno testiranje izboljšuje kakovost kode
  • Pomaga natančno oceniti pokritost poslovnega tveganja.
  • Brezhibno se integrira v proces DevOps
  • Pomaga ustvariti gibčen in zanesljiv postopek v samo nekaj urah namesto mesecev.
  • Pospešuje čas do prodaje z neprekinjenim mehanizmom povratnih informacij.
  • Združuje tradicionalno povezane ekipe, da zadovolji sodobne potrebe podjetij. Odpravlja nepovezanost med razvojnimi, preskusnimi in operativnimi skupinami.
  • Test Automation pomaga doseči doslednost z ohranjanjem enake konfiguracije za vse ustrezne teste.
  • Poudarja poslovna pričakovanja za ublažitev poslovnih tveganj
  • Zagotavljanje vseprisotnega dostopa do testnega okolja s storitvijo Virtualization

Izzivi stalnega testiranja

  • Tradicionalni postopek omejuje kulturni premik med strokovnjaki za razvoj in zagotavljanje kakovosti.
  • Pomanjkanje veščin DevOps in ustreznih orodij za testiranje v okoljih Agile & DevOps.
  • Heterogena testna okolja, ki nikoli ne bodo odražala proizvodnega okolja.
  • Konvencionalen postopek testiranja in ohlapno določeno upravljanje s testnimi podatki.
  • Daljši cikli integracije kode ustvarjajo težave z integracijo in pozne odprave napak
  • Nezadostni in neučinkoviti viri in testna okolja
  • Kompleksna arhitektura aplikacij in poslovna logika, ki omejuje sprejemanje DevOps.

Zaključek:

  • V programskem inženirstvu je neprekinjeno testiranje postopek zgodnjega testiranja, pogosto testiranje, testiranje povsod in avtomatizacija.
  • Stari način testiranja je bil osredotočen na primopredajo. Programska oprema se predaja eni ekipi drugi
  • Jenkins, Travis in Selenium so priljubljena orodja za neprekinjeno testiranje in integracijo.
  • Neprekinjeno testiranje daje povratne informacije glede na vsako fazo dovodnega cevovoda.
  • Neprekinjeno testiranje pomaga izboljšati kakovost kode
  • Tradicionalni postopek omejuje kulturni premik med strokovnjaki za razvoj in zagotavljanje kakovosti.
  • Daljši cikli integracije kode ustvarjajo težave z integracijo in pozne odprave napak