Arten von Tests

Es gibt mehrere Arten oder auch Kategorien von Tests, die alle auf bestimmte Bedürfnisse zugeschnitten sind:

Unit-Tests

Hier werden einzelne kleine Einheiten - Units - getestet. Wenn man Erweiterungen zu komplexen Systemen, zum Beispiel Joomla, programmiert, dann ist hier einiges an Mocking und Stubbing angesagt. Dann ist der Unterschied zu den Funktionstests auch nicht immer wirklich erkennbar. Getestet wird mit phpUnit.

Funktionstests

Hier werden größere Funktionseinheiten getestet. Bei Joomla ist da viel Mocking und Stubbing nötig.

Akzeptanztests

Hier wird die Erweiterung auf seine Funktionalität im Gesamten getestet. Ich verwende dafür Codeception.

Integrationstests

Da die Erweiterung ja in einem größeren System, hier Joomla, laufen soll, muss natürlich sichergestellt sein, dass sie sich installieren, aktualisieren und deinstallieren lässt. Weiter hat man sicher zu stellen, dass der Rest des Systems nicht negativ beeinflusst wird. Auch hierfür kommt bei mir Codeception zum Einsatz.

UI-Tests

Hier wird die Bedienoberfläche getestet. Vor allem die Tests in verschiedenen Browsern und Fenstergrößen sind hier angesagt. Aber auch die Anordnung und Sichtbarkeit der Elemente muss geprüft werden.