Welche Best Practices gibt es, um Ameisenziele zu benennen?

7

Was sind die besten Praktiken, um Ameisenziele zu benennen?

Was würden Sie zum Beispiel erwarten, dass das Ziel "test" ausgeführt wird? Alle Komponententests? Alle Funktionstests? Beide?

Was sind die Standardnamen für die Ausführung verschiedener Tests (Unit / Functional / All)? Gibt es Standards für Zielnamen, um Software in J2SE zu implementieren? in J2EE?

Mein Projekt verwendet ant für ein Java-Projekt mit Junit, Swing-Anwendungen und J2EE-Anwendungen.

    
Alex B 04.12.2008, 21:18
quelle

7 Antworten

13

Weitere Informationen finden Sie im Abschnitt "Namenskonventionen" auf dieser Seite: Die Elemente des Ant-Stils

  

Die folgenden Ziele sind vielen Builds gemeinsam. Immer vermeiden, sich zu ändern   das Verhalten eines bekannten Zielnamens. Sie müssen nicht implementieren   all dies in einem einzigen Projekt.

%Vor%

Diese Seite enthält auch andere gute Richtlinien.

    
david 23.09.2011, 09:48
quelle
6

Für meine Java-Projekte verwende ich die Namen, die in maven default lifecycle GNU autoconf Standardziele verwendet.

>     
Ludwig Weinzierl 09.05.2009 17:06
quelle
3

Es gibt einen Standard, der ziemlich weit verbreitet ist. Jeder Zielname, der mit dem -Zeichen beginnt, kann nicht über die Befehlszeile aufgerufen werden und muss daher unbedingt einer sein, der nicht direkt ausgeführt werden soll. Manchmal wird dies als verstecktes Ziel bezeichnet.

    
Bill Michell 05.12.2008 09:55
quelle
2

Solange sie in Ihren Projekten verständlich und konsistent sind, liegt es an Ihnen, was Sie ihnen nennen. Einfache, kurze Verben sind normalerweise die Norm, und Ziele sollten logisch aufgeteilt werden.

Sie können den von Matt B vorgeschlagenen Weg gehen und Ihre Testziele nach Typ benennen:

  • Testeinheit
  • test-funktional
  • test-all

Sie können auch nach Werkzeug benennen, wenn Sie beispielsweise Funktionstests für Junit, Selenium und Webtest haben:

  • test-junit
  • Test-Selen
  • Test-Webtest
  • test-all

Wenn Sie das Beschreibungsattribut für Ziele verwenden, die Sie für jeden offen legen möchten, der das Projekt erstellt, können Benutzer ein ant -p ausführen, um verfügbare Ziele aufzulisten und das gewünschte auszuwählen. Hilfreiche Beschreibungen sind für den Benutzer wahrscheinlich wichtiger und wertvoller als die tatsächlichen Namen der Ziele.

Aus dem Ant-Handbuch :

  

Das optionale Beschreibungsattribut kann   verwendet werden, um eine einzeilige zu liefern   Beschreibung dieses Ziels, das ist   gedruckt von der -projecthelp   Befehlszeilenoption. Ziele ohne   Eine solche Beschreibung gilt als intern   und wird nicht aufgeführt, es sei denn, beides   die Option -verbose oder -debug wird verwendet.

    
Rob Hruska 04.12.2008 22:00
quelle
2

Wir haben gute Erfahrungen mit kurzen und prägnanten Zielnamen gemacht, die von anderen einzelnen Aufgaben abhängen. AFAIK der allgemeine Standardsatz ist

  • init
  • sauber
  • kompiliere
  • dist
  • testen
  • Bericht

(kann den Link jedoch nicht finden)

was sehr gut für uns funktioniert.

Wenn wir Testtypen unterscheiden mussten, haben wir sie "test.data" und "test.nondata" genannt, um die Testtypen zu trennen, von denen jeder von der Aufgabe "test" abhängt. Vielleicht solltest du die "Benennungskonvention der Java-Methode" als einen anderen vorgeschlagenen Benutzer verwenden, aber IMHO ist das egal.

Wenn Sie das ant-Skript manuell auf Ihrem lokalen Rechner ausführen (was ich tue, um zu testen, ob ich das Build-Skript kaputt gemacht habe), ist es praktisch, wenn Sie nur

eingeben müssen %Vor%

statt

%Vor%     
Daniel Hiller 05.12.2008 05:13
quelle
1

Ich denke, das ist ein Punkt der persönlichen Vorliebe, aber ich würde

verwenden
  • test - für Komponententests
  • test-integration - für Integrationstests
  • dbtest - für Datenbank-Tests (wenn sie im obigen Element enthalten sind)
  • test-all , um alle oben genannten Funktionen auszuführen

Ich bin auch unabhängig von der Verwendung von test oder der Pluralform tests , ich habe wahrscheinlich beide an verschiedenen Projekten gemacht.

    
matt b 04.12.2008 21:32
quelle
1

Ihre Namenskonvention für Ant-Ziele sollte der Namenskonvention für Java-Methoden sehr ähnlich sein: nämlich einfach und beschreibend, was das Ziel tut.

Hier ist ein Auszug aus dem Sun-Standard für die Methodenbenennung :

  

Benennen einer Methode

     

Obwohl ein Methodenname   kann jede legale Kennung, Code sein   Konventionen beschränken Methodennamen. Durch   Konvention sollten Methodennamen a sein   Verb in Kleinbuchstaben oder einen Mehrwortnamen   das beginnt mit einem Verb in Kleinbuchstaben,   gefolgt von Adjektiven, Substantiven usw.   Mehrwortnamen, der erste Buchstabe von   jedes der zweiten und folgenden Wörter   sollte groß geschrieben werden. Hier sind einige   Beispiele:

%Vor%

Wahrscheinlich der größte Unterschied ist der Stil für Ameisen-Ziele, die alle unteren verkleinerten Buchstaben mit durch Bindestriche getrennten Wörtern sein sollten.

Die folgenden Ziele erscheinen mir beispielsweise angemessen:

  • run-all-tests
  • build
  • clean
  • test-and-release
  • deploy
  • run-code-coverage-metrics

Versuchen Sie am Ende, das gleiche gute Urteilsvermögen zu verwenden, das Sie beim Benennen von Methoden verwenden. Wenn Ihre Ziele klar, beschreibend und leicht verständlich sind, sind Sie in guter Verfassung.

Weitere Informationen zu diesem Thema finden Sie im Element "Elemente des Ant" im Ant-Wiki.

    
Justin Standard 04.12.2008 22:11
quelle

Tags und Links