Experiència de tests unitaris amb automatització via VectorCAST i Jenkins
Visualitza/Obre
Estadístiques de LA Referencia / Recolecta
Inclou dades d'ús des de 2022
Cita com:
hdl:2117/131076
Tipus de documentTreball Final de Grau
Data2018-10
Condicions d'accésAccés obert
Tots els drets reservats. Aquesta obra està protegida pels drets de propietat intel·lectual i
industrial corresponents. Sense perjudici de les exempcions legals existents, queda prohibida la seva
reproducció, distribució, comunicació pública o transformació sense l'autorització del titular dels drets
Abstract
Quan es desenvolupa programari, a part de la tasca bàsica d’escriure codi, la detecció i prevenció d’errors és un punt clau si volem que l’eina que es crea funcioni com és degut. Aquesta meta l’aconseguim mitjançant el test del codi resultant de cada fase clau del projecte.
Avui en dia hi ha eines que ens proveeixen del necessari per cobrir aquesta necessitat: JUnit, Unittest, CppUnit… Tot depèn del llenguatge en què es programi i les preferències de la plantilla. Tot i això, cap de les utilitzades per la majoria del públic té característiques diferencials que els separin de la resta.
És per això que he decidit aprofundir en una eina anomenada VectorCAST, que és revolucionària en certs aspectes:
- Introdueix el test i el seguiment de codi per interfície gràfica.
- Ofereix solucions que automatitzen parts del procés i ajuden a cobrir tots els casos dotant de flexibilitat per certs canvis en el programa.
- Suport per Test Driven Development (TDD), per tal de poder crear els tests abans de tenir codi per poder anar comparant cada mòdul de codi que sorgeixi.
Malgrat tot el que ofereix, s’ha d’adaptar amb altres parts del projecte. Aquestes poden ser el control de versions per gestionar cada actualització que rep el codi font (.hpp, .inl i .cpp), documentar tots els resultats de cada passada dels tests (els valors esperats es compleixen, nombre de condicions i línies dins d’una funció cobertes, complexitat ciclomàtica, on hi ha errors, entre d’altres) que es fan més sovint que els canvis en el codi, instal·lació…
Per això, parlaré del programari d’integració contínua Jenkins que ajuda al següent:
- Automatitza l’execució dels tests (ja sigui disparant una actualització d’una eina de control de versions, cada cert temps, etc).
- Organitza i mostra la documentació en qualsevol plataforma que tingui accés a un cercador d’internet.
- S’integra amb les altres facetes del projecte de software: el control de versions, els tests i el procés d’instal·lació a màquines remotes o virtuals.
- Permet l’accés a la documentació creada i la visualització de resultats si s’instal·la finalment a tothom qui tingui el permís pertinent .
MatèriesComputer software -- Development, C++ (Computer program language), Programari -- Desenvolupament, C++ (Llenguatge de programació)
TitulacióGRAU EN ENGINYERIA DE SISTEMES TIC (Pla 2010)
Fitxers | Descripció | Mida | Format | Visualitza |
---|---|---|---|---|
TFG Adrian Gil.pdf | Memòria | 8,858Mb | Visualitza/Obre |