Apache Solr – DataImportHandler – Import von MySql

Wer eine eigene Apache Solr Instanz aufsetzt, sieht sich recht bald mit der Frage konfrontiert wie denn nun die Daten in den Solr kommen sollen. Da gäbe es zunächst die Möglichkeit das per Skript zu erledigen und die fertigen Datensätze an die /update API zu schicken. Solr bietet aber auch die Option über einen DataImportHandler den Datenimport direkt zu erledigen.

Wie das genau von statten geht, soll in diesem Beitrag erläutert werden. Apache Solr – DataImportHandler – Import von MySql weiterlesen

PHP Unittests: Wie teste ich mit Singletons?

Das Problem mit Singletons ist, dass sie eine statische Variable enthalten, die über verschiedene Tests hinweg erhalten bleibt. Dazu kommt, dass sie protected/private ist und somit nicht einfach zurück gesetzt werden kann. In diesem Beitrag werden wir sehen, wie wir der Sache beikommen können.

PHP Unittests: Wie teste ich mit Singletons? weiterlesen

PHP Unittests: Wie verwende ich getMock()?

Damit wir unseren Code sinnvoll testen können, müssen wir immer wieder Kopplungen zu anderen Klassen auflösen. Dies geschieht mit Mocks dieser Klassen. Um aber allen Ansprüchen gerecht zu werden, sind diese Mocks sehr mächtig und daher nicht immer einfach zu bedienen. Dieser Beitrag erklärt die Erstellung eines Mocks durch die Methode „getMock()“.

PHP Unittests: Wie verwende ich getMock()? weiterlesen

PHP UnitTests mit DB-Simulation

Testen ohne Datenbank ist zwar schon ganz nützlich, aber viele Funktionen basieren dann doch stark auf DB-Daten. Mocken wird oft sehr aufwendig wenn wir mit Frameworks arbeiten, die die Models für uns automatisch laden. Und es soll ja auch Funktionen geben, die erst ab 100 Datensätzen richtig warm laufen. Das will natürlich niemand mit einem Mock abbilden.
In diesem Beitrag beschäftigen wir uns also mit der Simulation einer Datenbank.

PHP UnitTests mit DB-Simulation weiterlesen

PHP und UnitTests wie fange ich an?

Wer schon mal ein System gepatcht hat und dann die Seite nur noch 500 sagen gesehen hat, wünscht sich, der Fehler wäre vorher aufgefallen. Also müssen jetzt sofort UnitTests her. Aber wo anfangen? Und wie bekomme ich nur die Kopplungen zur DB, zum Solr oder sonstigen Komponenten weg?

PHP und UnitTests wie fange ich an? weiterlesen