Files
i2p.www/www.i2p2/pages/bounty_unittests_de.html

146 lines
5.3 KiB
HTML

{% extends "_layout_de.html" %}
{% block title %}Bounty Unittests{% endblock %}
{% block content %}
<!-- file version 2012.04.16.01 -->
<p>Um die Wartung von I2P zu vereinfachen ben&ouml;tigen
wir einen stabilen und umfassenden Satz an automatischen Unittests f&uuml;r den
wichtigsten Quelltext. Die wenigen derzeitigen Unittets sind nur zus&auml;tzlich
zum Quelltext. Diese Bounty wird f&uuml;r das migrieren der Tests au jUnit, deren
automatische Ausf&uuml;hrung, Ausbau der Unittests zum testen von mehr
Quelltexten und &ouml;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):</p>
<h2>Phase 1: <a name="jenkins">CI Jenkins und IRC bot</a></h2>
<b>Bounty: 500 &euro;</b><i> in Arbeit von MathiasDM</i><br />
<p>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.<br>
Der Server muss langfristig verf&uuml;gbar sein.
</p>
<br>
<h2>Phase 2: <a name="sdk">Existierende SDK Tests &uuml;berpr&uuml;fen </a></h2>
<b>Bounty: 150 &euro;</b> ausgezahlt an str4d <br />
<p> F&uuml;r diese Belohnung m&uuml;ssen die bestehenden SDK Tests
kontrolliert werden und wieder zum funktionieren gebracht werden.
Sie m&uuml;ssen in die ANT Bauskripte integriert werden ("ant test")
und in einem Codecoverage Programm (z.B. <a href="http://www.cenqua.com/clover/">Clover</a>)
integriert werden. Das ANT Skript sollte eine Webseite aus den
Testergebnissen erstellen, die Online gestellt wird.
</p>
<br>
<h2>Phase 3: <a name="sdk_coverage">SDK Test Abdeckung</a></h2>
<b>Bounty: 200 &euro;</b> in Arbeit von str4d<br />
<p>
Hierf&uuml;r sollten die automatischen Unittests mindestens
90% des SDK (i2p/core/java/src) abdecken.
</p>
<br>
<h2>Phase 4: <a name="router">Router Test Migration</a></h2>
<b>Bounty: 150 &euro;</b> bezahlt an str4d<br />
<p>
Wie Phase 2 m&uuml;ssen die automatischen Unittests f&uuml;r den
Router auf das automatische System migriert werden.
</p>
<br>
<h2>Phase 5: <a name="router_coverage">Router Test Abdeckung</a></h2>
<b>Bounty: 200 &euro;</b> in Arbeit von str4d<br />
<p>
Hierf&uuml;r m&uuml;ssen die automatischen Unittests mindestens
90% des I2P Router Codes (i2p/router/java/src) abdecken.
</p>
<br>
<h2>Phase 6: <a name="streaming">Streaming Lib Tests</a></h2>
<b>Bounty: 300 &euro;</b><br />
<p>
Hier m&uuml;ssen mindestens 90% des Streaming Lib Codes
(i2p/apps/ministreaming/ and i2p/apps/streaming/) mit Hilfe
der automatischen Unittests &uuml;berpr&uuml;pft werden.
</p>
<br>
<h2>Phase 7: <a name="multirouter">MultiRouter Simulation</a></h2>
<b>Bounty: 1500 &euro;</b> in kleinen Sub-Bounties, die noch definiert werden<br />
<p>
F&uuml;r diese Belohnung muss die existierende speicherinterne
Multi-Router Simulation kontrolliert werden und in einen
funktionsf&auml;higen Zustand versetzt werden. Weiters muss
diese entsprechend erwitert werden, so dass viele Router im
Speicher auf einem PC simuliert werden k&ouml;nnen.
Diese Belohnung wird in weitere, kleinere Teile aufgeteilt werden.
</p>
<br>
<p>
Der Spender der Belohnung entscheidet &uuml;ber die erfolgreiche
Bearbeitung der einzelnen Aufgaben und die Auszahlung der einzelnen
Gelder.
</p>
<p>
<i>Hinweis: Die H&ouml;he des Betrags kann durch weitere Spenden steigen.
Findest Du diese Teile wichtig? <a href="donate_de">Spende einen Betrag</a>
f&uuml;r diese Unittests Bounties!</i>
</p>
<p>
HINWEIS: Folgend ist aus historischen Gr&uuml;nden der Dokumentation
der alte Status der alten Unittest-Belohnung notiert.
Aktuell ist das obige geschriebene!
</p>
<h2>Phase 1: <a name="sdk">SDK Test Umsetzung</a></h2>
<b>Bounty: $300</b> <i>Ausgezahlt! An ComWiz</i><br />
<p>Um diese Bounty zu bekommen m&uuml;ssen die existierenden SDK Tests
auf jUnit migriert werden und in Ant build Skripte ("ant test") integriert
werden. Auch m&uuml;ssen sie mit einem Werkzeug, das den Quelltext
&uuml;berwacht (z.B. <a href="http://www.cenqua.com/clover/">Clover</a>)
verbunden werden. Das Ant Skript muss das Ergebnis der Tests
als eine Webseite generieren k&ouml;nnen, die im Netz publiziert wird. </p>
<h2>Phase 2: <a name="sdk_coverage">Umfang der SDK Tests </a></h2>
<b>Bounty: $300</b><br />
<p>Um diese Bounty zu bekomment, m&uuml;ssen die automatischen
Unittests mindestens 90% des SDK Quelltextes (i2p/core/java/src)
&uuml;berpr&uuml;fen.</p>
<h2>Phase 3: <a name="router">Router Test Umsetzung</a></h2>
<b>Bounty: $300</b><br />
<p>Wie in Phase 1 m&uuml;ssen die existierenden Unittests f&uuml;r den Router
auf ein automatisches System umgesetzt werden..</p>
<h2>Phase 4: <a name="router_coverage">Umfang der Router Tests</a></h2>
<b>Bounty: $300</b><br />
<p>F&uuml;r diese Bounty m&uuml;ssen die automatischen Unittests
mindestens 90% des router Quelltextes (i2p/router/java/src) umfassen.</p>
<h2>Phase 5: <a name="streaming">Streaming Bibliothek Tests</a></h2>
<b>Bounty: $300</b><br />
<p>F&uuml;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.</p>
{% endblock %}