Taula de continguts

Testing amb PHP

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:

, , , , , , , , , , ,


Introducció

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):


Exemples

Botiga

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.


Exercicis MySQL

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.


XPath

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.