Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Navitabs
rootSOSI-GW - Leverancebeskrivelse
includeroottrue


Anchor
_GoBack
_GoBack


SOSIGW

Udviklingsvejledning for SOSIGW 1.0


Anchor
_Toc5535
_Toc5535
Indeks


Indeks
Revisionshistorik
Indledning
Forudsætninger
Afhængigheder
SOSI-GW
Projektstruktur
Releases
Tests

Side 1 af 4

Version

Dato

Ansvarlig

Kommentarer

1

09-10-2009

jre

Initiel version

2

14-09-2011

tgk

Tilføjet script til nsp-release


Anchor
_Toc5536
_Toc5536
Revisionshistorik

Version

Dato

Ændring

Ansvarlig

1

09/10/2009

Initiel version af dokument

jre

2

14/09/2011

Tilføjet script til nsp-release

tgk


Anchor
_Toc5537
_Toc5537
Indledning

...

SOSIGW-projektet er et Eclipse-projekt, og har følgende struktur:
Image Removed Image Removed Image Removed src/ indeholder kildekode samt statisk konfiguration og andre ressource-filer
Image Addedtest/ indeholder unit- og integrationstests
Image Addedperformance/ indeholder JMeter performancetests
Image Addeddoc/ indeholder al dokumentation på nær Javadoc, som kan genereres via ant javadoc. De primære filer er odt-filerne, pdffilerne kan potentielt være uddaterede.
etc/ indeholder filer, der anvendes i forbindelse med byggeprocessen, fx XML-skemaer- WSDL-filer mv.
launch/ indeholder launchere, der kan anvendes i forbindelse med udvikling af GWT i Hosted Mode Mode 
Image Removed Image Removed lib/ indeholder de jarfiler, projektet benytter sig af. Bemærk at dette bibliotek laves automatisk af ant, og det skal ikke ligge i Subversion
target/ indeholder alt der genereres i forbindelse med byggeprocessen, dvs kompilerede filer, genererede source-filer og andre artefakter. Dette dir skal heller ikke ligge i Subversion.
Image Addedtrifork-common/ indeholder et basalt byggemiljø baseret på Ant og Ivy. 
Image Removed vendor/ indeholder dokumentation på nogle af de 3.parts-jarfiler der anvendes.
web/ indeholder de filer, der skal pakkes med i den færdige war-fil på nær class- og jar-filer
Image Addedixy.xml beskriver projektets afhængigheder. 
Image AddedChangeLog beskriver hvilke ændringer, der er sket i de forskellige versioner.

Anchor
_Toc5542
_Toc5542
Releases

Et nyt release laves ved først at opdatere ChangeLog-filen med ændringerne fra sidste release. Herefter checkes det at projektet kan bygges og at alle tests kører uden fejl. Herefter køres release.sh med det nye versionsnummer som argument, fx ./release.sh 1.0.5. Hvis der releases til nsp køres scriptet nsp-relsease.sh, ligeledes med versionsnummer.
Udvikles der under Windows kan release foretages manuelt med følgende trin:
Image Removed Lav en svn update for at sikre, at den seneste version er hentet.
Image AddedLav et nyt tag i SVN baseret på trunk, der hedder vx.y.z hvor x.y.z er det nye versionsnummer.
Image Removed Image Removed Image Removed Image Removed Image Removed Kør ant clean
Image AddedPak projektet til en tar.gz-fil, der hedder sosigw-x.y.x.tar.gz
Image AddedPlacer denne fil i svn under releases
Image AddedKør ant for at bygge en war-fil
Image AddedOmdøb war-filen (som ligger under target) til sosigw-x.y.z.war
Image AddedPlacer war-filen sammen med tar.gz-filen i svn

Anchor
_Toc5543
_Toc5543
Tests

Unit- og integrationstests er placeret under test/, og følger den samme pakkestruktur som de klasser der testes. Der anvendes normal Junit 3 til at implementere tests.
Tests kan køres på to måder: Enten via ant (ant test) eller via Eclipse. I Eclipse højreklikkes på test og under Run As vælges Unit Test.
Så vidt muligt navngives testmetoder efter deres hensigt – dvs fx testConditionShouldBeTrue() i stedet for test1().
Når tests køres via ant laves der desuden coverage måling via Clover. Coveragerapporter kan genereres med ant coverage-report, som derefter kan findes under target/coverage.