Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Softwaretests und Qualitätssicherung (https://www.delphipraxis.net/86-softwaretests-und-qualitaetssicherung/)
-   -   DUnit automatisieren Build Script (https://www.delphipraxis.net/152200-dunit-automatisieren-build-script.html)

Oracle 14. Jun 2010 20:49

DUnit automatisieren Build Script
 
Ich habe mir inzwischen eine ganze Stange Unit Tests geschrieben.
Diese würde ich gerne automatisieren. Konkret würde ich gerne, dass die Tests automatisch durchlaufen werden innerhalb eines Build Scriptes.

Momentan erstelle ich meine Builds über ein Batch File in welchem ich MSBuild aufrufe. Nach dem Build wird momentan das Setup erstellt und ins Firmennetz gestellt. Ich würde gerne den automatischen Tests dazwischenschieben. Am Ende soll das Setup dann nur erstellt werden wenn alle Tests erfolgreich durchlaufen wurden.

Vielleicht bieten sich hier Tools wie Maven oder Ant/Nant an, da habe ich allerdings keine Erfahrungen. Hier hoffe ich auf eure Erfahrungen. Vielen Dank schonmal im Vorraus.

alcaeus 14. Jun 2010 21:07

AW: DUnit automatisieren Build Script
 
Moin,

ich kann dir Ant waermstens empfehlen, ich nutze es schon seit laengerem fuer genau diesen Zweck, wenn auch nicht mit Delphi.
Auch der Aufbau eines Ant-Scripts ist denklich einfach (in diesem Fall fuer eine PHP-Anwendung):
Code:
<?xml version="1.0" encoding="UTF-8"?>
<project name="Build File" basedir="." default="build">
   <target name="hudson-test" depends="hudson-prepare">
      <exec executable="phpunit" dir="${basedir}">
         <arg line="--log-junit ${build.dir}/logs/phpunit.xml --coverage-html ${build.dir}/coverage --coverage-clover ${build.dir}/coverage/clover.xml test/AllTests.php" />
      </exec>
   </target>
</project>
Ich weiss nicht wieviel es in dem Bereich fuer Delphi gibt, aber ich kann dir waermstens ein Continuous-Integration-System empfehlen. Hier waeren Bamboo, CruiseControl und Hudson als Software-Loesungen in den Raum geworfen ;)

Greetz
alcaeus

Oracle 14. Jun 2010 21:23

AW: DUnit automatisieren Build Script
 
Danke für deine schnelle Antwort.

Du sprichst mir fast aus der Seele, ich habe gerade einen Hudson Server aufgesetzt und bin jetzt dabei DUnit da hineinzustricken.

Von Ant habe ich schon viel gelesen. Da gibt es auch ein Plugin für Hudson. Auch lese ich oft von NAnt. Weisst du auch was darüber? Gibt es da unterschiede?
Kann ich Ant uneingeschränkt für Delphi nutzen? Dein Script ist ja für JUnit ausgelegt wenn ich es richtig deute.

alcaeus 15. Jun 2010 06:28

AW: DUnit automatisieren Build Script
 
Moin,

ob du Ant uneingeschraenkt benutzen kannst, weiss ich nicht. Du kannst aber beliebige Scripte ausfuehren. Ob im executable-Attribut jetzt phpunit, gcc oder dunit.exe drinsteht ist Ant vollkommen egal. Wenn DUnit JUnit-kompatible test files rausspuckt, hat Hudson gar kein Problem damit und kann dir ohne Probleme Infos zu den Tests und zur Code-Coverage anzeigen. Wenn nicht dann musst du dir das xunit-Tool fuer Hudson installieren und die XML-Dateien von DUnit konvertieren.

Von NAnt hab ich leider noch nichts gehoert, sorry.

Greetz
alcaeus

Oracle 15. Jun 2010 15:44

AW: DUnit automatisieren Build Script
 
Den Delphi Compiler ruft man inzwischen (ich glaube seit Delphi 2007) über MSBuild auf. Wenn ich das richtig verstanden habe ist das ja sowas ähnliches wie Apache Ant.
Sehe ich das richtig? Kann ich dann dort auch meine Dunit Tests einbinden?


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:15 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz