Monday, October 27, 2014

doc2pdf.ps1 [Gist] - Continuous Integration für Handbücher

In einem unserer Projekte haben wir kurz nach dem ersten Release für die nächste Stufe die Aufgabe das Handbuch rund zu machen. Traditionell werden Handbücher noch manuell in Word erstellt und später als PDF oder HTML ausgeliefert. Nachdem wir jetzt gute Erfahrungen mit Continuous Integration gemacht haben, stellt sich doch direkt die Frage:
Wie automatisiert man diesen Prozess der Erstellung des Handbuch eigentlich?

Monday, October 20, 2014

Buchempfehlung: Agile Retrospectives

Lese gerade das Buch Agile Retrospectives aus der Pragmatic Programmers Reihe. Sehr zu empfehlen.

GTest: Testing framework für C++

Eines unserer Teams beginnt mit Akzeptanztests auf Basis von SpecFlow und übernimmt damit eine Vorreiterrolle! Zum Ausführen der Tests auf einer Build-VM hat ein Kollege in seinem Blog beschrieben, wie er MSTest aus VisualStudio herausgeholt hat, da die Buildmaschine oder jeder andere Entwickler nicht unbedingt auf ein komplettes VisualStudio angewiesen sein sollte.

Leider stellt sich Microsoft aktuell nicht so geschickt an wenn es um die Herausgabe einzelner in Visual Studio integrierter Komponenten wie MSTest betrifft. In .NET sind aus genau diesen Gründen Frameworks wie NUnit bzw. xUnit beliebter (vgl. http://stackoverflow.com/questions/22650263/visual-studio-2013-mstest-vs-nunit). Aber das lässt sich für C/C++ natürlich nicht verwenden.

Alternativ kann man Visual Studio komplett auf der Build-VM installieren, wie es das o.g. Team gemacht hat. Als es vor einiger Zeit daran ging, die ersten Unit-Tests zu schreiben, war ein Vorschlag GTest zu verwenden (https://code.google.com/p/googletest/).

Damals hatten wir uns allerdings der Einfachheit halber doch für MSTest entschieden - es war wichtiger, die Entwickler in der IDE mit den Tests vertraut zu machen als die Tests auf dem Buildserver ausführen zu können. Auch war GTest möglicherweise noch nicht als fertiges Paket verfügbar (NuGet).

Das hat sich in der Zwischenzeit anscheinend geändert:
  • Damit die Entwickler im Visual Studio auf dieselben Tests schauen können, gibt es das freie Plugin GoogleTest Runner für VS2013.
  • Außerdem gibt mittlerweile auch das natives NuGet Package GTest