Dateien für automatisierte Tests bereit stellen

Die berühmten Unit Testing Frameworks werden nicht nur für Unit Tests genutzt, sondern auch für automatisierte Tests allgemein und damit auch für Integrationstests. In diesem Zusammenhang wird es dann schnell notwendig, dass auch eine Reihe von Dateien bereit gestellt werden müssen. Dies endet nicht selten darin, dass jene Dateien während des Tests nicht gefunden werden können weil mal wieder irgend etwas nicht funktioniert. Nachfolgend soll deshalb eine einfache Lösung für diesen Fall aufgezeigt werden.

Weiterlesen »

NCrunch beim Erstellen von Universal Apps verwenden

Ich nutze sehr gern NCrunch um meine Tests automatisch im Hintergrund ausführen zu lassen, hatte aber jüngst das Problem, dass es sich nicht beim Entwickeln einer Universal App nutzen lässt. Im Forum von NCrunch bin ich aber recht schnell auf eine Lösung gestoßen, die ich hier noch einmal zusammen fassen möchte um auch anderen eine schnelle Beseitigung ihres Problems zu ermöglichen. So scheint das Problem beim Linken der App.xaml Datei zu passieren. Diese liegt im Shared Projekt, welches nachträglich in die jeweiligen Projekte für Windows und Windows Phone eingebunden wird. Die einfachste Lösung scheint nun, diese App.Xaml in der *.projitems Datei des Shared Projekt so zu kennzeichnen, dass sie sauber gelinkt wird.

Weiterlesen »

MVA: Universal Apps automatisch testen

Seit wenigen Tagen ist mein Onlinekurs zum Thema „Universal Apps automatisch testen“ bei der Microsoft Virtual Academy verfügbar. Mit 6 Modulen ist er dabei umfangreicher geworden als ich zunächst geplant hatte und doch hätte ich noch weit mehr Module erstellen müssen um wirklich alle Aspekte abzudecken. So wird zunächst auf die grundsätzlichen Features zum automatisierten Test in Visual Studio eingegangen, bevor es mit einem Schlenker über die Architektur mit MVVM zu den Unit Tests, der Testisolation, Unit Tests von Java Script Apps und abschließend den Coded UI Tests geht.

Weiterlesen »

Vortrag bei den Testing Info Days von Microsoft

Dieses Jahr war ich für Microsoft als Sprecher auf den Testing Info Days unterwegs. Dies waren zwei Veranstaltungen im März, bei denen ich jeweils in München und Hamburg über Unit Testing mit Visual Studio gesprochen habe. Der entsprechende Mitschnitt dazu findet sich auf Channel 9 und kann nachfolgend auch angesehen werden. Leider gab es wohl beim Schnitt ein paar Probleme mit den Folien wodurch diese nach einiger Zeit asynchron angezeigt werden 🙁 Weitere Informationen gibt es auch auf der entsprechenden Webseite von Channel9.

Weiterlesen »

Coded UI Test: Validierung auf UI Ebene prüfen

Ein wiederkehrendes Problem das es zu lösen gilt wenn man typische Oberflächen testen möchte, ist die Prüfung auf einen Validierungsrahmen. Solche Rahmen werden immer dann eingesetzt wenn der Nutzer auf eine Falscheingabe hingewiesen werden soll. Dummerweise kann die UI Automation uns keine Informationen über jene Rahmen geben, da sie sie selbst nicht kennt. Wie also vorgehen?

Weiterlesen »

„Ausprägungen des TDD“ aka „Die Triangulations-Baby-Step-Holzkeule“

Ich gebe gern zu, dass ich mich am Anfang eher schwer mit TDD getan habe. Der Grund dafür war, dass die Lehren die ich aus Büchern und Dojos zog, so gar nicht in meinen Entwickleralltag passen wollten. Kleine Umsetzungsschritte die nicht selten durch sinnlos scheinende Zwischenaktionen geprägt waren, haben mich fast zur Weißglut getrieben. Wenn ich dann TDD anwendete verzichtete ich also auf diese Schritte und fand mich nach einiger Zeit wiederum damit konfrontiert, dass meine Tests viel zu komplex wurden und die angeblichen Vorteile von TDD praktisch nicht präsent waren.

Weiterlesen »

Privates testen in dem es public wird…

Jedes Blog, in dem gelegentlich über Tests geschrieben wird und welches etwas auf sich hält, muss mindestens einmal etwas über das Testen von privaten Klassenmembern schreiben. Zugegeben in einem anderen Post habe ich bereits gezeigt wie das geht, nun habe ich aber endlich ein Praxisbeispiel an dem sich sehr gut zeigen lässt wann man evtl. einen anderen, sichereren Weg gehen sollte. Entwickelt man seinen Code tatsächlich mit TDD, sollte sich die Frage nach dem Test von privaten Membern eigentlich kaum stellen. Dadurch dass nur Code geschrieben wird, der auch durch Tests abgesichert ist sollten sich in jedem Fall genügend Vorbedingungen ergeben um auch jede private Methode irgendwie durch die öffentlichen Schnittstellen zu prüfen.

Weiterlesen »

Just About – Hendrik Lösch

Hallo, ist da noch wer? Gibt es tatsächlich Leute die auf dieses Blog finden? Laut Google schon… Ein wenig wundert mich das ja schon, war ich doch seit Oktober scheinbar ein wenig faul und davor auch nicht gerade auf das Ziel dieses Blogs fixiert. Auch dieses Post wird daran nichts ändern. Soll, aber zunächst auf ein paar Dinge in eigener Sache hinweisen. Denn so faul wie es den Anschein hat war ich gar nicht.

Weiterlesen »

How-To: Automatisierte UI Tests mit White

Testautomatisierung läuft uns meist eher auf Ebene der Unit Tests über den Weg. Sie kann aber auch bei System Tests recht praktisch sein. Ein Tool was uns WPF, Silverlight und Windows Forms Entwicklern dabei hilft, ist White. Bei diesem handelt es sich um ein Framework mit dem man Applikationen steuern und Steuerelemente innerhalb dieser Programme identifizieren kann, wodurch es möglich wird bestimmte Use Cases nachzustellen und deren Ergebnisse auf ihre Korrektheit zu prüfen. Dieses kann im Grunde mit jedem beliebigen Testframework verwendet werden und greift auf die UIAutomation API zurück die zum Beispiel auch von den Coded UI Tests des Studios genutzt wird.

Weiterlesen »