Concluzia articolului anterior "Testare continuă = Testare automată++" este că în prezent, nu există un instrument sau o tehnologie care să ofere instantaneu testarea continuă. Dar există, din fericire, tooluri care oferă sprijin puternic pentru testarea continuă.
Pentru prezentarea acestor instrumente actuale de testare continuă, am folosit raportul Gartner "Critical Capabilities for Software Test Automation". Acesta se concentrează pe instrumente de automatizare a testelor software care pot rula teste funcționale automate, interacționând cu aplicația printr-o interfață de programare a aplicației (API) sau controlând interfața de utilizator a aplicației (UI).
Cercetarea diferențiază 13 instrumente de automatizare a testelor de la 12 furnizori de top de pe piață.
Cercetarea evaluează eficiența produselor de automatizare a testelor software pentru a răspunde nevoilor de testare continuă, mai exact capacitatea de a obține calitate continuă și de a atenua riscurile înainte de a trece la etapele ulterioare ale ciclului de viață a dezvoltării software, oferind suport pentru automatizarea activităților în fiecare etapă.
Iată instrumentele de testare continuă evaluate, grupate în funcție de compania producătoare, și de ordinea scorului obținut:
CA suportă integrarea în ciclul de dezvoltare prin produsele sale Application Test și BlazeMeter prin API-urile publicate. CA asigură instrumente de integrare continuă/livrare continuă, cum ar fi Jenkins și oferă, de asemenea, un tool pentru livrare continuă: Continuous Delivery Director. Abordarea CA de a obține teste pornind de la cerințe și acoperirea pentru straturile de API și UI (inclusiv UI-uri non-native prin parteneriate) ajută la începerea testării cât mai devreme a testelor în ciclul de dezvoltare a produsului (shift-left).
Tricentis Tosca acordă un suport puternic pentru testarea continuă, realizând o execuție completă, automatizată a testelor, testarea API și virtualizarea serviciilor, ca parte a unei conducte de integrare/livrare continuă. Oferă pluginuri la instrumente de integrare continuă (cum ar fi Jenkins) pentru a rula colecții de teste. Integrările în sistemele de versionare permit ramificarea și îmbinarea scripturilor de testare.
Microsoft are instrumente puternice pentru dezvoltatori pentru examinarea codului, recenzii și dezvoltare bazată pe testare, precum și suport pentru integrarea continuă. Testele pot fi efectuate la scară pe suita Azure și în multe medii de testare diferite, utilizând un proces de livrare continuă care poate fi configurat rapid. Microsoft deține un suport puternic pentru integrare/livrare continuă prin Azure DevOps, precum și alte instrumente CI, cum ar fi Jenkins. HockeyApp Microsoft permite, de asemenea, raportarea îmbunătățită a defectelor pentru aplicațiile mobile.
SmartBear se integrează cu o gamă largă de instrumente de control a buildurilor și versiunilor pentru a urmări schimbările într-un mediu de integrare continuă. Utilizatorii pot primi feedback imediat, accesând informații relevante direct în instrumentele de dezvoltare, inclusiv IDE, instrumente de urmărire a defectelor și alte instrumente de gestionare. Testele pot fi efectuate pe mai multe medii diferite, inclusiv laboratorul de dispozitive CrossBrowserTesting, imagini Docker sau mașini virtuale. Capacitatea de a crea teste mock și la nivel de API, precum și suport pentru BDD, ajută într-o abordare continuă a calității.
IBM are suport pentru integrarea continuă în Rational Test Workbench, consolidându-și poziția. Deoarece RTW folosește Eclipse, există suport pentru multe pluginuri. IBM Cloud oferă o platformă de livrare continuă, iar pentru clienții care utilizează în prezent sisteme mainframe și caută să se modernizeze cu DevOps, ecosistemul tehnologic IBM este potrivit pentru a ajuta la nevoile de automatizare a testelor.
Eggplant se concentrează pe abordarea nevoii de performanță a produsului prin experiențe reale ale utilizatorilor. Deoarece testele Eggplant sunt bazate pe imagini și au calitatea de a fi neinvazive, acestea pot fi utilizate pentru tranzacții sintetice.
SOAtest de la Parasoft oferă un sprijin puternic pentru testarea continuă, realizând executarea completă a testelor automatizate, ca parte a unei conducte continue de livrare/integrare. Testele pot fi executate local sau folosind imagini Docker, mașini virtuale (VM-uri) Microsoft Azure sau AWS. Suportul pentru virtualizarea serviciului permite testarea timpurie (shift-left), iar instrumentele de unit-test permit analiza acoperirii.
Micro Focus UFT ajută testarea timpurie prin instrumentul său de virtualizare a serviciilor și suportul BDD de la LeanFT. Micro Focus UFT oferă integrări cu instrumente de integrare continuă, precum și control sursa și sisteme de gestionare a testelor. Testele UFT pot fi rulate local sau în cloud folosind funcția StormRunner, precum și Amazon Web Services.
Micro Focus Silk Test se integrează cu instrumente populare de integrare continuă open-source sau comerciale și cu propriile instrumente Release Control și Deployment Automation, pentru livrarea în staging sau în producție. De asemenea, realizează integrări cu instrumentele SCCM ale Micro Focus, precum și cu soluții ale unor terțe părți, cum ar fi SVN sau Git.
Ranorex Studio deține calitatea de a fi utilizat în combinație cu o serie de instrumente de integrare continuă (cum ar fi Jenkins, Bamboo sau TeamCity). Motorul de testare Ranorex poate fi implementat cu scripturi de testare pe VM-uri sau containere pentru execuții distribuite.
SeeTest are capacitatea de a rula teste în paralel pe dispozitive mobile, browsere și dispozitive IoT, fie fizice, fie prin emulare. În general, SeeTest este deosebit de puternic din perspectiva execuției continue, dar nu are suport pentru generarea automată și regenerarea testelor bazată pe modificări ale cerințelor, user story-urilor sau ale codului.
Froglogic suportă testarea pentru DevOps prin produsele sale Coco și Squish, integrându-le cu tehnologii Git comune, instrumente de build și CI (cum ar fi Ant, Maven, Bamboo sau TeamCity). Această combinație de integrări - alături de suportul pentru BDD, unit-testing și testare UI - creează o bază bună pentru o calitate continuă.
Worksoft încearcă să aducă DevOps în pachetele de aplicații, abordând unele dintre cele mai comune provocări asociate elaborării de teste UI ca parte a ciclurilor de testare continuă. Worksoft Execution Manager permite integrarea continuă și instrumentelor de gestionare a ciclului de viață a aplicației să facă solicitări în rețea pentru a rula teste automate, la cerere, în paralel pe diferite laboratoare de testare remote.
Cadranul testării automate care împarte furnizorii de top evaluați de către Gartner în patru categorii ( lideri, challengeri, jucători de nișă și vizionari), este prezentat în imaginea de mai jos:
Gartner recomandă liderilor responsabili de strategiile de dezvoltare să implementeze o abordare de testare continuă, ca parte a unui proces de livrare complet automatizat și să utilizeze practicile "shift-left" pentru a insufla o abordare cât mai timpurie în ceea ce privește asigurarea calității produsului software.
de Ovidiu Mățan