Rogoit Webdesign Duisburg

Webdevelopmet Blog

Clean Code, PhpStorm Tricks, TYPO3, Codeception, Command Line Interface, Software-Qualität und vieles mehr.
Webdevelopment Blog
 

Codeception mit Yii2

Codeception YII2 PHP-Framework - http://jeromenicholas.blogspot.nl

Mit automatisierten Tests machen sich Webentwickler das Leben leichter und stellen die Weichen für eine bessere Software-Qualität. Hier zeigen wir dir die ersten Schritte mit Codeception.

Als Webentwickler möchte man sicherstellen, dass seine Software immer einen gleichen Stand beibehält und man sich stets mit einem bestimmten Benutzer einloggen kann. Wenn ich dann beispielsweise eine ungültige E-Mail eingebe, soll immer dieselbe Fehlermeldung erscheinen. Solche Fehler werden immer wahrscheinlicher, je größer ein Team ist. Um dies zu verhindern, deckt man seine Software mit Tests ab. Wie man hierfür Codeception installiert, seine ersten Test schreibt und sie ausführt, erläutere ich in diesem Tutorial.

Die Installation

Um mit Codeception zu starten, muss zunächst die Installation durchgeführt werden. Hierzu gibt es zwei Möglichkeiten, welche wir jeweils über die Kommandozeile (CMD) ausführen.

 

  1. Global:                                                                                                                                                                                                              
  2. Projekt bezogen                                                                                                                                                                                              

 

Nach der Installation muss der Pfad zu den Systemvariablen in PATH hinzugefügt werden.

Dies geht über Erweiterte Systemeinstellungen > TAB Erweitert > Umgebungsvariablen.

Dann den Wert PATH auswählen und auf Bearbeiten drücken. Je nach Windows Version 7, 8, 8.1 oder 10 kann der Wert unterschiedlich hinzugefügt werden. Bis zu Version Windows 10 muss man für das Hinzufügen des Wertes Folgendes beachten: Gehe bis an das Ende der Textbox und füge den Wert ein.

2016-06-02
Solltest du bereits das Betriebssystem Windows 10 nutzen, kann man den Wert ganz bequem über
Neu hinzufügen.

Nachdem du die vorgenannten Schritte durchgeführt hast,  kannst du von überall das Kommando “codecept” in der Kommandozeile (CMD) ausführen.

IMG_3246

Nun muss für das Yii2-Projekt noch die Codeception Extension für Yii2 installiert werden.

 

Dies können wir wieder über Composer erledigen.

Hierzu gibt es zwei Möglichkeiten:

 

  1. Wir öffnen die Kommandozeile (CMD)                                                                                                                                                

 

oder du fügst diesen Teil manuell in deine composer.json in den “require” Teil ein.

 

danach musst du nur noch “composer install” ausführen.

Unser erster Test

Für unseren ersten Test müssen wir in der Kommandozeile (CMD) innerhalb unseres Projektes in den Ordner “tests” wechseln. Dort erstellen wir dann mit dem Kommando “codecept generate:cept acceptance Welcome” unseren ersten Test.

Mit diesem Kommando wird dann unterhalb des Ordners Tests -> codeception -> acceptance die Datei WelcomeCept.php erstellt.

 

 

Starten wir nun die erste Testphase:

Dies machen wir einfach mit dem Kommando “codecept run”.

Wenn alles funktioniert hat, bekommt du Folgendes zu sehen:

IMG_3245

Im nachfolgenden Schritt schreiben wir einen Test, um unseren Login zu testen.

Dazu erstellen wir über “codecept generate:cept functional Login” unseren Login-Test.

 

Nun öffnen wir die LoginCept-Klasse in dem Ordner “functional” und füllen sie mit unserem Login-Test.

 

Evtl. musst du hier die Function login entsprechend deines Loginform anpassen.

Wenn die Input-Boxen z. B. einen anderen “name” haben, müssen diese entsprechend hier

 angepasst werden:  z. B. so 

.
Hinweis:

Falls dir die Datei LoginPage fehlt (die sollte schon standardmäßig im Yii-Testordner vorhanden sein), findest du hier deren Inhalt:

So, nun wollen wir unsere beiden Tests auch noch mal ausführen. Dies machen wir wieder mit dem Kommando “codecept run”.

Wenn alles gut gelaufen ist, sehen wir dieses Ergebnis:

IMG_3248

Wenn dir das kleine Tutorial gefallen hat, wird es bald einen zweiten Teil geben. In diesem werden wir die Materie tiefer behandeln.

Hast du noch ergänzende Tipps oder Fragen? Dann nur her damit!

Julian Böhnke

Softwareentwickler bei weluse GmbH. Wollt ihr noch mehr über Yii2 erfahren dann schaut doch auch mal auf meinem Blog vorbei https://julianb.de

No Comments

Post a Comment

Comment
Name
Email
Website