de.hideout-lastation.com
Paradies Für Designer Und Entwickler


10 beste automatisierte Testing Frameworks für PHP

Haben Sie schon lange Stunden damit verbracht, Ihren PHP-Code zu debuggen? Nun, für die meisten Programmierer ist es wahrscheinlich nicht die faszinierendste Herausforderung, aber es gibt eine Lösung, die uns dabei helfen kann, diese mühsame Aufgabe zu verkürzen. Automatisiertes Testen kann den Arbeitsablauf der PHP-Entwicklung erheblich verbessern , da vorab geschriebene Tests den Entwicklungsprozess vorantreiben können .

In diesem Beitrag werden wir versuchen zu verstehen, warum automatisiertes Testen so cool ist, wie es funktioniert und welches die besten Test-Frameworks sind, mit denen Sie beginnen können.

BILD: Codeception.com

Ein BDD-Test ist dem ähnlich, Nicht-Programmierer können auch einen Sinn daraus machen:

10 automatisierte PHP-Test-Frameworks

In diesem Sinne werfen wir einen Blick auf 10 leistungsfähige automatisierte Test-Frameworks für PHP, die Sie verwenden können.

1. PHPUnit

PHPUnit ist das bekannteste Testframework zum Schreiben von Komponententests für PHP-Anwendungen. Komponententests nehmen kleine Teile Code namens Einheiten und testen sie nacheinander. Mit Hilfe von PHPUnit können wir eine testgetriebene Entwicklung durchführen.

Es kann über die Befehlszeile verwendet werden und bietet uns eine praktische TestCase-Klasse, die wir entsprechend unseren Anforderungen erweitern können. PHPUnit ermöglicht es Entwicklern auch, vordefinierte Assertionsmethoden zu verwenden, um zu bestätigen, dass sich die App auf eine bestimmte Weise verhält .

2. Codeception

Die Codeception ermöglicht uns nicht nur Komponententests, sondern auch Funktions- und Akzeptanztests. Diese beiden letzteren testen die PHP-App als Ganzes mit allen Features, nicht als Einheiten. Codeception ermöglicht es uns, verschiedene Module gemäß unseren Entwicklungsanforderungen zu aktivieren und zu konfigurieren.

Es ist in viele PHP-Entwicklungsframeworks wie Symfony2, Laravel4, Yii, Phalcon und das Zend Framework integriert . Dies bedeutet, dass wir ein PHP-Automatisierungs-Testframework und ein PHP-Entwicklungsframework zusammen verwenden können, um einen supereffizienten Entwicklungsworkflow zu etablieren.

3. Behat

Behat ist ein beliebtes, verhaltensorientiertes PHP-Testframework. Die Tests, die wir mit Behat schreiben können, sehen eher wie Geschichten aus als Code . Behat verwendet den StoryBDD-Subtyp der verhaltensorientierten Entwicklung (der andere Subtyp ist SpecBDD).

Das Framework wurde vom Cucumber-Projekt inspiriert, das ein Test-Framework für die Ruby-Programmiersprache ist.

4. PHPSpec

PHPSpec folgt auch dem verhaltensorientierten Testansatz, aber seinem anderen Subtyp SpecBDD. Mit PHPSpec müssen wir zuerst die Spezifikationen schreiben, die beschreiben, wie sich der Anwendungscode verhält . Es wurde auch von einem Ruby-Test-Framework namens RSpec inspiriert.

5. SimpleTest

SimpleTest ist ein einfach zu bedienendes Framework für das Testen von PHP-Einheiten im Test-Driven Development-Stil. Es kann als eine Alternative für PHPUnit angesehen werden. SimpleTest unterstützt SSL, Formulare, Proxies, Frames und grundlegende Authentifizierung und ermöglicht es uns, gängige PHP-Aufgaben schnell zu testen. Für Beispieltests sehen Sie sich die Tutorials des Entwicklerteams an.

6. Geschichtenerzähler

Storyplayer ist ein Full-Stack-Testframework , mit dem End-to-End-Tests für eine ganze Plattform geschrieben werden können . Storyplayer unterstützt das Erstellen und Zerstören von Testumgebungen auf Anfrage . Es folgt dem TDD-Testansatz und ermöglicht es uns, Funktionstests zu schreiben, die eine Anwendung als Ganzes überprüfen können.

7. Peridot

Peridot ist ein leichtgewichtiges, erweiterbares Testframework für PHP. Es verfügt über eine ereignisgesteuerte Architektur, mit der Tester das Framework einfach über Plug-Ins und Reporter anpassen können .

Peridot verwendet die describe-it- Syntax, um eine klare und lesbare Testsprache zu erstellen, die klar beschreibt, wie sich unser Anwendungscode verhalten soll.

8. Atoum

Atoum ist ein intuitives und modernes PHP-Testframework, mit dem Unit-Tests durchgeführt werden können. Es vereinfacht die Testentwicklung und da es sich um ein junges Framework handelt, verwendet es einige neuere Funktionen, die in PHP 5.3 eingeführt wurden (es kann nicht mit älteren PHP-Versionen verwendet werden ), um uns einen schnellen und leicht verständlichen Testprozess zu bieten .

Atoum gewährleistet ein hohes Maß an Sicherheit während der Testausführung, da es jede Testmethode in einem eigenen PHP-Prozess isoliert.

9. Kahlan

Kahlan ist ein umfassendes BDD-Testframework, mit dem Komponententests mit der describe-it- Syntax geschrieben werden können . Es umfasst das KISS-Prinzip (Keep It Simple, Stupid). Kahlan benötigt mindestens PHP 5.5.

Es hat eine kleine Codebasis, es soll etwa 10 mal kleiner sein als PHPUnit, und es hat viele Funktionen, die uns einen erweiterbaren und anpassbaren Test-Workflow bieten.

10. Selen

Selenium ist ein ausgeklügeltes Testframework, das Browser automatisiert. Dies bedeutet, dass es möglich ist, Benutzerakzeptanztests zu schreiben, die die gesamte App als Ganzes untersuchen .

Selenium ist ein robustes Tool, das über eine eigene WebDriver-API verfügt, die einen Browser nativ so ansteuern kann, als würde ein echter Benutzer sie entweder lokal oder auf einem Remote-Computer verwenden . Selen ist ein ausgezeichnetes Werkzeug zum Testen reiferer Webanwendungen.

Abschließende Gedanken

Automatisierte Test-Frameworks befähigen uns, qualitativ hochwertigeren PHP-Code zu schreiben, und aufgrund der Beliebtheit der Sprache haben wir viele Möglichkeiten, so dass wir uns für das entscheiden können, das unsere Entwicklungsbedürfnisse am besten erfüllt.

Es gibt jedoch eine wichtige Sache, die wir immer im Auge behalten müssen. Automatisierte Tests mögen zwar leistungsfähig sein, aber sie können niemals Beta-Tests ersetzen - Tests, die von echten Menschen durchgeführt werden, die die zukünftigen Benutzer der Anwendung sein werden.

Ventil Steam Machine: Alles, was Sie wissen müssen

Ventil Steam Machine: Alles, was Sie wissen müssen

Wenn es um das Gaming-Duell zwischen PC- und Konsolenspielen geht, wurde PC-Gaming immer auf einem Schreibtisch mit einem kleinen Display mit Maus und Tastatur gespielt, während Spielkonsolen Controller haben und auf dem Fernseher in Ihrem Wohnzimmer gespielt werden. Nun, die Steam Machine von Valve verändert das alles.D

(Tech- und Design-Tipps)

Leben Designer in einer Blase?

Leben Designer in einer Blase?

Es ist eine provokante Frage, ich weiß. Die Frage, ob die Design-Community zu isoliert ist, hat sich viele der Design-Community schon seit einiger Zeit gefragt. Es gibt mehr Designer als jemals zuvor, und Design spielt eine sehr prominente Rolle in den heutigen Tech-Forward-Industrien. Persönlich glaube ich, dass Design nie demokratischer war als heute, und das ist insgesamt eine gute Sache.A

(Tech- und Design-Tipps)