Titulació | Tipus | Curs |
---|---|---|
2502441 Enginyeria Informątica | OB | 3 |
2502441 Enginyeria Informątica | OT | 4 |
Podeu consultar aquesta informació al final del document.
No és obligatori, però es recomana cursar en paral·lel l'assignatura "Requisits del Software" i "Disseny de Software".
En aquesta assignatura s'introdueixen els conceptes bàsics per planificar proves del software i les tècniques per implementar-les, així com estimacions de la seva qualitat.
L'ordre temporal dels següents continguts al llarg del curs no ha de seguir necessariament aquest ordre.
Introducció a la prova del software
Objectiu de la prova. Tipus de proves: caixa blanca, caixa negra, de validació, regressió, càrrega etc. Nivells de prova: unitat, integració, sistema, acceptació.
Proves d'unitat i proves d'integració
Objectiu i metodologia. Perquè fer proves d'unitat i integració? Proves d'unitat i Test Driven Development. "Mock" objects.
Proves de caixa negra
Classes d'equivalència. Anàlisi de valors límit. Taules de decisió. Pairwise testing. Transició d'estats. Disseny de casos de prova a partir de casos d'ús. Exemple ATM.
Prova a partir de casos d'ús.
Proves de caixa blanca
Control de flux (complexitat ciclomàtica). Cadenes definició-us. Prova de cobertura envers prova de control de flux.
Prova exploratòria
Proves senzilles i ràpides. Interès pràctic i efectivitat.
Automatització de les proves
Creació de proves “automàtiques”. Eines scrpiting i recording web (Selenium).
Proves de sistema o proves End-to-End
Objectiu i metodologia. Perquè fer proves de sistema? Behaviour Driven Development (BDD). Revisió de Test Reports.
Test Frameworks
Definció i exemples. Implementació d'un test framework i proves de sistema utilitzant Cucumber (BDD).
Planificació i documentació de la prova
Anàlisi del risc. Mastertestplan. Exemples de pla de proves i de documentació.
Quality control, Quality Assurance i Quality Engineering
Revisions formals, mètriques, estàndards de desenvolupament.
Definició de bug i informes de bugs. Eines de Bug Tracking: Bugzilla i Jira. Com s'integra un Quality Engineer a un equip de desenvolupament. Revisions tècniques formals.
Ecosistema d'un Quality Engineer
Definició del cicle DevOps. Continuous Integration, Continuous Testing, Continuous Delivery, Continuous Feedback. Eines més conegudes (Jenkins, GitHub/GitLab i revisions de peticions de canvi, Grafana).
Tķtol | Hores | ECTS | Resultats d'aprenentatge |
---|---|---|---|
Tipus: Dirigides | |||
Classes de teoria | 22 | 0,88 | 1 |
Tipus: Supervisades | |||
Laboratoris | 12 | 0,48 | 1, 2, 3, 4, 5 |
Seminaris | 12 | 0,48 | 1, 3, 4, 5 |
Tipus: Autņnomes | |||
Estudi proves d'avaluació | 60 | 2,4 | 1 |
Preparació laboratoris | 24 | 0,96 | 1, 4, 5 |
Preparació seminaris | 14 | 0,56 | 1, 4 |
Aquesta assignatura té un equilibri entre la part teòrica i la part pràctica. No és una assignatura totalment ABP ja que els conceptes teòrics són importants, i la part pràctica es realitzarà amb sessions de tutories, sessions d'entregues i avaluació dels problemes planetjats i treball autònom per part de l'alumne.
Classes de teoria: Són classes de tipus magistral on s'introdueixen els conceptes teòrics de l'assignatura. Tot i ser classes de teoria, una bona part de la sessió (aproximadament la meitat) es destinarà a solucionar en grup senzills problemes plantejats pel professor.
Seminaris: Són classes on es plantejaran casos pràctics que requeriran l'aplicació dels conceptes explicats a les classes de teoria. Al final de la classe de seminaris es plantejarà algun problema que l'alumne haurà de solucionar de forma autònoma i que entregarà voluntàriament al començar la següent sessió de seminaris.
Laboratoris: Són sessions en les que elprofessor realitzara tutories amb els alumnes per tal de guiar la seva feina al desenvolupar la solució a pràctica un problema real d'una certa complexitat. Abans d'aquestes sessions, l'alumne haurà de realitzar una serie de tasques de forma autònoma que seran mostreades al començar la sessió de laboratoris.
La competència transversal assignada, T02.08 - Avaluar de manera crítica el treball dut a terme, s'avaluarà de manera automàtica en les pràctiques, ja que aquesta és una capacitat necessària per tal de poder realitzar una pràctica de manera autònoma.
Nota: es reservaran 15 minuts d'una classe, dins del calendari establert pel centre/titulació, per a la complementació per part de l'alumnat de les enquestes d'avaluació de l'actuació del professorat i d'avaluació de l'assignatura/mņdul.
Tķtol | Pes | Hores | ECTS | Resultats d'aprenentatge |
---|---|---|---|---|
Avaluació Laboratoris | 0.55 | 0 | 0 | 1, 2, 3, 4, 5 |
Avaluació continuada individual Teoria 1 | 0.225 | 3 | 0,12 | 1 |
Avaluació continuada individual Teoria 2 | 0.225 | 3 | 0,12 | 1 |
Aquesta assignatura no preveu el sistema d’avaluació única.
La nota final de l'assignatura ve donada per la fórmula: Nota = 0.45*NTeo + 0.55*NLab,
NTeo és la nota de Teoria, i NLab la nota de laboratoris. Cadascuna de les notes NTeo i NLab han de ser superiors a 5, en cas contrari la qualificació final de l'assignatura serà el valor mínim d'aquestes dues. El valor de Nota només es calcularà en cas que NTeo i NLab siguin ambdues superiors a 5. En cas que no sigui així, el valor de Nota serà el valor mínim de NTeo i NLab.
La nota NTeo és
NTeo = 0.5*NTeo1 + 0.5*NTeo2
on NTeo1 i NTeo2 són dos activitats d'avaluació que es realitzaran al llarg del curs en horaris de sessions de teoria. El valor de NTeo només es calcularà en cas que NTeo1 i NTeo2 siguin ambdues superiors a 4. En cas que no sigui així, es considera que el valor de NTeo és el valor mínim de NTeo1 i NTeo2. Si NTeo no és superior a 5 després de realitzar les dues proves NTeo1 i NTeo2, l'alumne es podrà tornar a avaluar de NTeo1 i/o NTeo2 durant les proves d'avaluació final. En les proves d'avaluació final, cadascuna de les notes NTeo1 i NTeo2 es saturaran en un valor de 6
En el mateix moment de publicació de cada avaluació es donarà un període per a revisar la nota. Es respectaran escrupolosament els períodes de revisió de qualificacions, és a dir, no es revisarà cap qualificació fora d’aquest període de revisió de nota.
La nota NLab serà una mitja ponderada de les diferents sessions de laboratori NLab(i).
NLab = w1*NEntr1 + w2* NEntr2
on NEntr(i) és la nota individual de cada una de les dues entregues de pràctiques (previsiblement a les sessions de laboratori 3i 6 del curs, respectivament), i w1 i w2 son els pesos de cada entrega (els valors s'anunciaran a principi de curs). El càlcul d’aquestes notes està especificat en l’enunciat de cada pràctica (que es publicarà a les aules Moodle)
No hi ha segona convocatòria per a la nota NLab ni per cap de les notes NLab(i). El valor de NLab només es calcularà en cas que totes i cadascuna deNLab(i) siguin iguals o superiors a 0,1. En cas contrari NLab serà el valor mínim d'entre tots els valors NLab(i).
L'ordre d'assignació als grups de pràctiques es realitzarà segons la nota de l'expedient acadèmic.
Es convalidarà la nota NLab o NTeo d'aquells alumnes que hagin cursat l'assignatura en un màxim d'un curs anterior. No es convalidarà cap altra nota. La nota de convalidació serà un 5.
Un alumne obtindrà un "No Avaluable" com a qualificació final de l'assignatura únicament en el cas que no obtingui cap qualificació en cap de les variables que apareixen en les fórmules matemàtiques anteriors. Si un alumne presenta algun treball per avaluar o realitza alguna de les activitats d'avaluació que es contemplen en les fórmules anteriors, ja no podrà obtenir un "No Avaluable".
Per obenir una Matrícula d'Honor cal, com a requisit obligatori, obtenir una qualificació final de Excel·lent.
Les dates d'avaluació continuada i lliurament de treballs es publicaran al campus virtual (CV) o aules Moodle (MO) i poden estar subjectes a canvis de programació per motius d'adaptació a possibles incidències. Sempre s'informarà al CV/MO sobre aquests canvis ja que s'entén que el CV/MO és el mecanisme habitual d'intercanvi d'informació entre professor i estudiants.
Sense perjudici d'altres mesures disciplinàries ques'estimin oportunes, i d'acord amb la normativaacadèmica vigent, les irregularitats comeses per un estudiant que puguin conduir a una variacióde la qualificació es qualificaran amb un zero (0). Per exemple, plagiar, copiar, deixar copiar, ..., una activitat d'avaluació, implicarà suspendre aquesta activitat d'avaluació amb un zero (0). Les activitats d'avaluació qualificades d'aquesta forma i per aquest procediment no seran recuperables. Siés necessari superar qualsevol d'aquestes activitats d'avaluació peraprovar l'assignatura, aquesta assignatura quedarà suspesa directament amb una qualficació de zero (0), sense oportunitat de recuperar-la en el mateix curs.
Aquestes irregularitats inclouen, entre d'altres:
A un estudiant que hagi comès irregularitats en un acte d'avaluació no se li convalidarà cap de les activitats d'avaluació realitzades. En resum: copiar, deixar copiar o plagiar (o l'intent de) en qualsevol de les activitats d'avaluació equival a un SUSPENS, no compensable i sense convalidacionsde parts de l’assignatura en cursos posteriors.
Entre [ ] els temes que cobreixen.
[1] A Software Testing Primer: an Introduction to Software Testing. Nick Jenkins. http://www.nickjenkins.net Lectura obligada!
[1,2,3,5,6] Manage Software Testing. Peter Farrell-Vinay. Auerbach Publications, 2008.
Esta bé la part ded ocumentació i planning, però la de tècniques de prova no gaire potser.
[1,3,4] A practitioner's guide to software testing. Lee Copeland, 2004.
Llibret molt senzill i breu (potser massa), enfoc pràctic.
[4] How to break software: a practical guideto testing. James A. Whittaker. Addison Wesley, 2003.
El llibre sobre prova exploratòria.
[5] Pragmatic Unit Testingin Java with Junit. Andy Hunt, Dave Thomas.The Pragmatic Programmer, 2003.
[6] IEEE Standard for Software and System Test Documentation IEEE Std82-2008. IEEE Computer Society, 2008.
[6] Systematic Software Testing by. RickD. Craig, Stefan P.Jaskiel. ArtechHouse, 2002.
El millor llibre que he trobat sobre planificació de proves. Inclou una explicació de l'estàndard IEEE de documentació.
[8] Why the Vasa sank: 10 problems and some antidotes for software projects. Richard E. Fairley, Mary Jane Willshire. IEEE Software, març-abril 2003.
Lectura molt interessant i divertida.
[9]Video “Scenes of software inspections. Video dramatizations for the classroom.” L.Deimel.Software Engineering Institute,CMU/SEI-91-EM-5-0,1991.
[10]Thinking i Java, 3rd edition. B. Eckel. Versió electrònica a http://www.planetpdf.com/ . Versió impresa en castellà de Pearson Educación, 2002.
Llibre de referència per programació en Java (pràctica).
[11] The Way of the Web Tester: A Begginer's Guide to Automating Tests, J. Rasmusson, 2016
[12] Software Testing: A Craftman's Approach, 4th edition. Paul C. Jorgensen, 2017
[13] https://testautomationu.applitools.com/junit5-tutorial/Tutorial sobre JUnit.
[14] https://testautomationu.applitools.com/unit-testing/index.html Introducció al Unit Testing.
[15] https://site.mockito.org/Paquet per implementar mock object.
[16] https://testautomationu.applitools.com/codeless-test-automation-with-selenium-ide/ Tutorial sobre selenium
[17] https://testautomationu.applitools.com/cucumber-java-tutorial/ Tutorial sobre cucumber.
JUnit (https://junit.org/junit5/)
Bugzilla (https://www.bugzilla.org/)
Jira (https://www.atlassian.com/software/jira)
Selenium (https://www.selenium.dev/)
Cucumber (https://cucumber.io/)
GitHub/GitLab (https://github.com/) (https://about.gitlab.com/)
Nom | Grup | Idioma | Semestre | Torn |
---|---|---|---|---|
(PAUL) Prąctiques d'aula | 421 | Catalą | primer quadrimestre | matķ-mixt |
(PAUL) Prąctiques d'aula | 422 | Catalą | primer quadrimestre | matķ-mixt |
(PLAB) Prąctiques de laboratori | 421 | Catalą | primer quadrimestre | matķ-mixt |
(PLAB) Prąctiques de laboratori | 422 | Catalą | primer quadrimestre | matķ-mixt |
(PLAB) Prąctiques de laboratori | 423 | Catalą | primer quadrimestre | tarda |
(PLAB) Prąctiques de laboratori | 424 | Catalą | primer quadrimestre | matķ-mixt |
(PLAB) Prąctiques de laboratori | 425 | Catalą | primer quadrimestre | tarda |
(TE) Teoria | 420 | Catalą | primer quadrimestre | matķ-mixt |