{% extends "_layout_de.html" %} {% block title %}Bounty Unittests{% endblock %} {% block content %}

Um die Wartung von I2P zu vereinfachen benötigen wir einen stabilen und umfassenden Satz an automatischen Unittests für den wichtigsten Quelltext. Die wenigen derzeitigen Unittets sind nur zusätzlich zum Quelltext. Diese Bounty wird für das migrieren der Tests au jUnit, deren automatische Ausführung, Ausbau der Unittests zum testen von mehr Quelltexten und öffentlichem publizieren der Ergebnisse ausgezahlt. Es ist eine grosse Aufgabe, die jedoch in kleinere Phasen heruntergebrochen werden kann. Diese Phasen sind folgende (Phase 1 muss zuerst erledigt sein, der Rest kann in beliebiger Reihenfolge erfolgen):

Achtung! Die Pasen und die Summen wurden verändert! Phase 6,7 und 8 sind noch offen!

Phase 1: CI Jenkins und IRC bot

Bounty: 500 € Server rennt und Belohnung ist reserviert

Um diese Belohnung zu bekommen, muss ein Integrations Server ( Jenkins, alter Name war Hudson) aufgesetzt werde. Dieser muss mit einem IRC Bot im #i2p-dev Kanal im IRC2p Netzwerk verbunden sein und die Ergebnisse der Kompiliertests ausgeben.
Der Server muss langfristig verfügbar sein.


Phase 2: Existierende SDK Tests überprüfen

Bounty: 150 € ausgezahlt an str4d

Für diese Belohnung müssen die bestehenden SDK Tests kontrolliert werden und wieder zum funktionieren gebracht werden. Sie müssen in die ANT Bauskripte integriert werden ("ant test") und in einem Codecoverage Programm (z.B. Clover) integriert werden. Das ANT Skript sollte eine Webseite aus den Testergebnissen erstellen, die Online gestellt wird.


Phase 3: SDK Test Abdeckung

Bounty: 200 € ausgezahlt an das Unittest-Dev-Team

Hierfür sollten die automatischen Unittests des SDK (i2p/core/java/src) wieder funktionieren.


Phase 4: Router Test Migration

Bounty: 150 € bezahlt an str4d

Wie Phase 2 müssen die automatischen Unittests für den Router auf das automatische System migriert werden.


Phase 5: Router Test Abdeckung

Bounty: 200 € ausgezahlt an das Unittest-Dev-Team

Hierfür müssen die automatischen Unittests des I2P Router Codes (i2p/router/java/src) wieder funktionieren.


Phase 6: Streaming Lib Tests

Bounty: 300 €

Hier müssen mindestens 90% des Streaming Lib Codes (i2p/apps/ministreaming/ and i2p/apps/streaming/) mit Hilfe der automatischen Unittests überprüpft werden.


Phase 7: Abdeckung aller Tests

Bounty: 500 €

Hier müssen sämtlichen obigen Tests eine 100% Abdeckung erreichen und funktionieren.


Phase 8: MultiRouter Simulation

Bounty: 1000 € in kleinen Sub-Bounties, die noch definiert werden

Für diese Belohnung muss die existierende speicherinterne Multi-Router Simulation kontrolliert werden und in einen funktionsfähigen Zustand versetzt werden. Weiters muss diese entsprechend erwitert werden, so dass viele Router im Speicher auf einem PC simuliert werden können. Diese Belohnung wird in weitere, kleinere Teile aufgeteilt werden.


Der Spender der Belohnung entscheidet über die erfolgreiche Bearbeitung der einzelnen Aufgaben und die Auszahlung der einzelnen Gelder.

Hinweis: Die Höhe des Betrags kann durch weitere Spenden steigen. Findest Du diese Teile wichtig? Spende einen Betrag für diese Unittests Bounties!

HINWEIS: Folgend ist aus historischen Gründen der Dokumentation der alte Status der alten Unittest-Belohnung notiert. Aktuell ist das obige geschriebene!

Phase 1: SDK Test Umsetzung

Bounty: $300 Ausgezahlt! An ComWiz

Um diese Bounty zu bekommen müssen die existierenden SDK Tests auf jUnit migriert werden und in Ant build Skripte ("ant test") integriert werden. Auch müssen sie mit einem Werkzeug, das den Quelltext überwacht (z.B. Clover) verbunden werden. Das Ant Skript muss das Ergebnis der Tests als eine Webseite generieren können, die im Netz publiziert wird.

Phase 2: Umfang der SDK Tests

Bounty: $300

Um diese Bounty zu bekomment, müssen die automatischen Unittests mindestens 90% des SDK Quelltextes (i2p/core/java/src) überprüfen.

Phase 3: Router Test Umsetzung

Bounty: $300

Wie in Phase 1 müssen die existierenden Unittests für den Router auf ein automatisches System umgesetzt werden..

Phase 4: Umfang der Router Tests

Bounty: $300

Für diese Bounty müssen die automatischen Unittests mindestens 90% des router Quelltextes (i2p/router/java/src) umfassen.

Phase 5: Streaming Bibliothek Tests

Bounty: $300

Für diese Bounty muss ein neues Set an automatischen Tests mindestens 90% des Quelltextes der Streaming Bibliothek (i2p/apps/ministreaming/ und i2p/apps/streaming/) umfassen.

{% endblock %}