Anem a explorar algunes tècniques de testing per a webs implementades en llenguatge PHP.
Requisits: conèixer les bases de programació web i del llenguatge PHP.
Referències:
El testing és una part imprescindible del desenvolupament. Fins-i-tot hi ha metodologies de desenvolupament com la TDD (Test Driven Developmenet) en què primer es generen els tests que el software ha de passar en base a les especificacions i user stories establertes, i després es desenvolupa el software necessari.
Sovint, la quantitat de codi generat per la part de testing pot arribar a superar a la quantitat de codi funcional. Això és natural, ja que si volem ser exhaustius amb les comprovacions, sovint cal comprovar una gran quantitat de possibles casos per assegurar que el software funciona com cal.
Hi ha una ampla classificació de tests possibles per al software segons diversitat de criteris. En destaquem alguns conceptes (no son una classificació per sí, només alguns conceptes importants):
Utilitza aquest repo i segueix les seves instruccions per a un primer apropament als tests:
https://github.com/emieza/selenium-php
Es tracta d'un codi molt senzill d'una botiga.
En aquest exemple no hi ha el codi del què s'ha de fer, sinó que és una plantilla per a testejar els exercicis indicats a l'article PHP MySQL d'aquesta mateixa wiki.
Per executar els tests llegiu el README del repo:
https://github.com/AWS2/php-mysql-world-test-template
Està pensat per ser utilitzat com a plantilla per a Github Classroom Autograde.
Per accedir als elements del DOM HTML és habitual utilitzar XPath.
Per exemple, al AddCityTest.php trobem:
$element = self::$driver->findElement(WebDriverBy::xpath( "//option[contains(text(),'$countryName')]")); $element->click();
Per mes info consulta l'article XPath.