TYPO3 und PHPUnit: Code Testen (+ Hello World)
Das automatisierte Testen von Code wird immer wie beliebter. Deshalb habe ich diese Woche bei 4eyes die Aufgabe erhalten, mir das ganze mal anzusehen und gleich Tests in TYPO3 zu schreiben um eine Extension zu testen.
Anders als mit Selenium, wird hier jedoch direkt der (PHP) Code getestet, also bevor schon die fertigen Resultate da sind, testet man was zwischen Start und ende passiert. So kann man mit PHPUnit z.B. testen ob eine bestimmte Funktion im Code ein bestimmtes Resultat zurück liefert.
Nachdem ich die Funktionsweise dann auch verstanden habe und das Testen möglich war (nach ein paar Startschwierigkeiten), schrieb ich zuerst mal einen kleinen Hello World Test. Doch bevor wir zum Test kommen, zeige ich euch wie ihr alles richtig einrichtet.
Installation
Die Extension PHPUnit (extkey: phpunit) herunterladen und installieren. Hier findet ihr die Extension auf Typo3.org, klick.
Nach der Installation erstellt ihr in einer eurer Extensions einen Ordner namens “Tests”. Der Pfad wäre also:
typo3conf/ext/deineExtension/Tests
Nun erstellt ihr im gerade erstellten Ordner ein neues PHP File mit folgendem Namensschema:
tx-extKey_HelloWorld_testcase.php
Wichtig ist hierbei eigentlich nur das “_testcase” am ende, da dies PHPUnit sagt, dass es sich hier im ein Test File handelt (PHPUnit scannt alle ext Verzeichnise automatisch).
Nun füllen wir das PHP File mit dem standardmässig benötigten Code:
<?php
require_once 'PHPUnit/Framework.php';
class tx_extKey_HelloWorld_testcase extends tx_phpunit_testcase {
}
?>