https://k5wiki.kerberos.org/wiki?title=Test-driven_development&feed=atom&action=historyTest-driven development - Revision history2024-03-28T23:34:29ZRevision history for this page on the wikiMediaWiki 1.27.4https://k5wiki.kerberos.org/wiki?title=Test-driven_development&diff=4244&oldid=prevTomYu: Reverted edits by 2n5KsJ8cFd (Talk) to last version by TomYu2011-10-31T17:37:07Z<p>Reverted edits by <a href="/wiki/Special:Contributions/2n5KsJ8cFd" title="Special:Contributions/2n5KsJ8cFd">2n5KsJ8cFd</a> (<a href="/wiki?title=User_talk:2n5KsJ8cFd&action=edit&redlink=1" class="new" title="User talk:2n5KsJ8cFd (page does not exist)">Talk</a>) to last version by <a href="/wiki/User:TomYu" title="User:TomYu">TomYu</a></p>
<table class="diff diff-contentalign-left" data-mw="interface">
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr style='vertical-align: top;' lang='en'>
<td colspan='2' style="background-color: white; color:black; text-align: center;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black; text-align: center;">Revision as of 17:37, 31 October 2011</td>
</tr><tr>
<td colspan="2" class="diff-lineno">Line 1:</td>
<td colspan="2" class="diff-lineno">Line 1:</td>
</tr>
<tr>
<td class="diff-marker">−</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>A long-term goal of MIT Kerberos is to move toward [http://en.wikipedia.org/wiki/Test-driven_development test-driven development]. It is not necessary to implement exactly the Extreme Programming or Agile ideals of<del class="diffchange diffchange-inline"> [http://testing.com</del> test<del class="diffchange diffchange-inline">]</del>-driven development. One aspect of<del class="diffchange diffchange-inline"> [http://testing.com</del> test<del class="diffchange diffchange-inline">]</del>-driven development as usually defined is that programmers write <del class="diffchange diffchange-inline">[http://testing.com test]s</del> prior to writing actual implementation code. While this may be a worthy ideal, achieving it is more likely if done in stages.</div></td>
<td class="diff-marker">+</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>A long-term goal of MIT Kerberos is to move toward [http://en.wikipedia.org/wiki/Test-driven_development test-driven development]. It is not necessary to implement exactly the Extreme Programming or Agile ideals of test-driven development. One aspect of test-driven development as usually defined is that programmers write <ins class="diffchange diffchange-inline">tests</ins> prior to writing actual implementation code. While this may be a worthy ideal, achieving it is more likely if done in stages.</div></td>
</tr>
<tr>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
</tr>
<tr>
<td class="diff-marker">−</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>A general observation is that instituting practices for "some <del class="diffchange diffchange-inline">[http://</del>testing<del class="diffchange diffchange-inline">.com test]ing</del>" are better than having "no <del class="diffchange diffchange-inline">[http://</del>testing<del class="diffchange diffchange-inline">.com test]ing</del>". This is not to imply that "more <del class="diffchange diffchange-inline">[http://</del>testing<del class="diffchange diffchange-inline">.com test]ing</del>" is always better than "less <del class="diffchange diffchange-inline">[http://</del>testing<del class="diffchange diffchange-inline">.com test]ing</del>", but for most reasonable scenarios, "more <del class="diffchange diffchange-inline">[http://</del>testing<del class="diffchange diffchange-inline">.com test]ing</del>" is usually better. Automated <del class="diffchange diffchange-inline">[http://testing.com test]s</del> are far more likely to be run than non-automated <del class="diffchange diffchange-inline">[http://testing.com test]s</del>. Manual <del class="diffchange diffchange-inline">[http://testing.com test]s</del> tend not to be run except in special circumstances, such as pre-arranged interoperability events.</div></td>
<td class="diff-marker">+</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>A general observation is that instituting practices for "some testing" are better than having "no testing". This is not to imply that "more testing" is always better than "less testing", but for most reasonable scenarios, "more testing" is usually better. Automated <ins class="diffchange diffchange-inline">tests</ins> are far more likely to be run than non-automated <ins class="diffchange diffchange-inline">tests</ins>. Manual <ins class="diffchange diffchange-inline">tests</ins> tend not to be run except in special circumstances, such as pre-arranged interoperability events.</div></td>
</tr>
<tr>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
</tr>
<tr>
<td class="diff-marker">−</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Several possible levels of <del class="diffchange diffchange-inline">[http://</del>testing<del class="diffchange diffchange-inline">.com test]ing</del>:</div></td>
<td class="diff-marker">+</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Several possible levels of testing:</div></td>
</tr>
<tr>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
</tr>
<tr>
<td class="diff-marker">−</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div># No <del class="diffchange diffchange-inline">[http://</del>testing<del class="diffchange diffchange-inline">.com test]ing</del></div></td>
<td class="diff-marker">+</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div># No testing</div></td>
</tr>
<tr>
<td class="diff-marker">−</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div># Written outline of manual <del class="diffchange diffchange-inline">[http://</del>testing<del class="diffchange diffchange-inline">.com test]ing</del> procedures</div></td>
<td class="diff-marker">+</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div># Written outline of manual testing procedures</div></td>
</tr>
<tr>
<td class="diff-marker">−</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div># Written detailed descriptions of manual <del class="diffchange diffchange-inline">[http://</del>testing<del class="diffchange diffchange-inline">.com test]ing</del> procedures</div></td>
<td class="diff-marker">+</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div># Written detailed descriptions of manual testing procedures</div></td>
</tr>
<tr>
<td class="diff-marker">−</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div># <del class="diffchange diffchange-inline">[http://testing.com test]ing</del> scripts not yet fully integrated into an automated <del class="diffchange diffchange-inline">[http://</del>testing<del class="diffchange diffchange-inline">.com test]ing</del> framework</div></td>
<td class="diff-marker">+</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div># <ins class="diffchange diffchange-inline">Testing</ins> scripts not yet fully integrated into an automated testing framework</div></td>
</tr>
<tr>
<td class="diff-marker">−</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div># Automated<del class="diffchange diffchange-inline"> [http://testing.com</del> test<del class="diffchange diffchange-inline">]</del> cases fully integrated into an automated <del class="diffchange diffchange-inline">[http://</del>testing<del class="diffchange diffchange-inline">.com test]ing</del> framework</div></td>
<td class="diff-marker">+</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div># Automated test cases fully integrated into an automated testing framework</div></td>
</tr>
<tr>
<td class="diff-marker">−</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div># Fully implement a "<del class="diffchange diffchange-inline">[http://testing.com </del>test<del class="diffchange diffchange-inline">]</del>-first" methodology: no new features without an automated<del class="diffchange diffchange-inline"> [http://testing.com</del> test<del class="diffchange diffchange-inline">]</del> being written first</div></td>
<td class="diff-marker">+</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div># Fully implement a "test-first" methodology: no new features without an automated test being written first</div></td>
</tr>
<tr>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
</tr>
<tr>
<td class="diff-marker">−</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>An outside contributor may have difficulty producing an automated<del class="diffchange diffchange-inline"> [http://testing.com</del> test<del class="diffchange diffchange-inline">]</del> case fully integrated into an automatic <del class="diffchange diffchange-inline">[http://</del>testing<del class="diffchange diffchange-inline">.com test]ing</del> framework. The existing automated <del class="diffchange diffchange-inline">[http://testing.com test]s</del> are not very well integrated and many are extremely ad-hoc in nature. A long-term goal will be to regularize the automated <del class="diffchange diffchange-inline">[http://testing.com test]s</del> into a single integrated framework. This has advantages such as the capability of reviewing<del class="diffchange diffchange-inline"> [http://testing.com</del> test<del class="diffchange diffchange-inline">]</del> results in a form optimized for differential measurements of success and regression.</div></td>
<td class="diff-marker">+</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>An outside contributor may have difficulty producing an automated test case fully integrated into an automatic testing framework. The existing automated <ins class="diffchange diffchange-inline">tests</ins> are not very well integrated and many are extremely ad-hoc in nature. A long-term goal will be to regularize the automated <ins class="diffchange diffchange-inline">tests</ins> into a single integrated framework. This has advantages such as the capability of reviewing test results in a form optimized for differential measurements of success and regression.</div></td>
</tr>
<tr>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
</tr>
<tr>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>== Timeline ==</div></td>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>== Timeline ==</div></td>
</tr>
<tr>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
</tr>
<tr>
<td class="diff-marker">−</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>For the krb5-1.8 release, MITKC staff must provide <del class="diffchange diffchange-inline">[http://</del>testing<del class="diffchange diffchange-inline">.com test]ing</del> scripts for every new feature they implement. Contributors must provide at least a written outline of manual <del class="diffchange diffchange-inline">[http://</del>testing<del class="diffchange diffchange-inline">.com test]ing</del> procedures for their contributions, and should provide a written detailed description of the manual <del class="diffchange diffchange-inline">[http://</del>testing<del class="diffchange diffchange-inline">.com test]ing</del> procedures. Contributors should strongly consider writing higher levels of <del class="diffchange diffchange-inline">[http://testing.com test]s</del>.</div></td>
<td class="diff-marker">+</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>For the krb5-1.8 release, MITKC staff must provide testing scripts for every new feature they implement. Contributors must provide at least a written outline of manual testing procedures for their contributions, and should provide a written detailed description of the manual testing procedures. Contributors should strongly consider writing higher levels of <ins class="diffchange diffchange-inline">tests</ins>.</div></td>
</tr>
<tr>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
</tr>
<tr>
<td class="diff-marker">−</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>During the 1.8 and 1.9 development timeframes, we will work to regularize our automated <del class="diffchange diffchange-inline">[http://</del>testing<del class="diffchange diffchange-inline">.com test]ing</del> framework and decrease the barriers to entry for outside contributors. This will probably also involve substantial amounts of documentation work.</div></td>
<td class="diff-marker">+</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>During the 1.8 and 1.9 development timeframes, we will work to regularize our automated testing framework and decrease the barriers to entry for outside contributors. This will probably also involve substantial amounts of documentation work.</div></td>
</tr>
</table>TomYuhttps://k5wiki.kerberos.org/wiki?title=Test-driven_development&diff=4241&oldid=prev2n5KsJ8cFd at 10:21, 29 October 20112011-10-29T10:21:06Z<p></p>
<table class="diff diff-contentalign-left" data-mw="interface">
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr style='vertical-align: top;' lang='en'>
<td colspan='2' style="background-color: white; color:black; text-align: center;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black; text-align: center;">Revision as of 10:21, 29 October 2011</td>
</tr><tr>
<td colspan="2" class="diff-lineno">Line 1:</td>
<td colspan="2" class="diff-lineno">Line 1:</td>
</tr>
<tr>
<td class="diff-marker">−</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>A long-term goal of MIT Kerberos is to move toward [http://en.wikipedia.org/wiki/Test-driven_development test-driven development]. It is not necessary to implement exactly the Extreme Programming or Agile ideals of test-driven development. One aspect of test-driven development as usually defined is that programmers write <del class="diffchange diffchange-inline">tests</del> prior to writing actual implementation code. While this may be a worthy ideal, achieving it is more likely if done in stages.</div></td>
<td class="diff-marker">+</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>A long-term goal of MIT Kerberos is to move toward [http://en.wikipedia.org/wiki/Test-driven_development test-driven development]. It is not necessary to implement exactly the Extreme Programming or Agile ideals of<ins class="diffchange diffchange-inline"> [http://testing.com</ins> test<ins class="diffchange diffchange-inline">]</ins>-driven development. One aspect of<ins class="diffchange diffchange-inline"> [http://testing.com</ins> test<ins class="diffchange diffchange-inline">]</ins>-driven development as usually defined is that programmers write <ins class="diffchange diffchange-inline">[http://testing.com test]s</ins> prior to writing actual implementation code. While this may be a worthy ideal, achieving it is more likely if done in stages.</div></td>
</tr>
<tr>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
</tr>
<tr>
<td class="diff-marker">−</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>A general observation is that instituting practices for "some testing" are better than having "no testing". This is not to imply that "more testing" is always better than "less testing", but for most reasonable scenarios, "more testing" is usually better. Automated <del class="diffchange diffchange-inline">tests</del> are far more likely to be run than non-automated <del class="diffchange diffchange-inline">tests</del>. Manual <del class="diffchange diffchange-inline">tests</del> tend not to be run except in special circumstances, such as pre-arranged interoperability events.</div></td>
<td class="diff-marker">+</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>A general observation is that instituting practices for "some <ins class="diffchange diffchange-inline">[http://</ins>testing<ins class="diffchange diffchange-inline">.com test]ing</ins>" are better than having "no <ins class="diffchange diffchange-inline">[http://</ins>testing<ins class="diffchange diffchange-inline">.com test]ing</ins>". This is not to imply that "more <ins class="diffchange diffchange-inline">[http://</ins>testing<ins class="diffchange diffchange-inline">.com test]ing</ins>" is always better than "less <ins class="diffchange diffchange-inline">[http://</ins>testing<ins class="diffchange diffchange-inline">.com test]ing</ins>", but for most reasonable scenarios, "more <ins class="diffchange diffchange-inline">[http://</ins>testing<ins class="diffchange diffchange-inline">.com test]ing</ins>" is usually better. Automated <ins class="diffchange diffchange-inline">[http://testing.com test]s</ins> are far more likely to be run than non-automated <ins class="diffchange diffchange-inline">[http://testing.com test]s</ins>. Manual <ins class="diffchange diffchange-inline">[http://testing.com test]s</ins> tend not to be run except in special circumstances, such as pre-arranged interoperability events.</div></td>
</tr>
<tr>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
</tr>
<tr>
<td class="diff-marker">−</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Several possible levels of testing:</div></td>
<td class="diff-marker">+</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Several possible levels of <ins class="diffchange diffchange-inline">[http://</ins>testing<ins class="diffchange diffchange-inline">.com test]ing</ins>:</div></td>
</tr>
<tr>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
</tr>
<tr>
<td class="diff-marker">−</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div># No testing</div></td>
<td class="diff-marker">+</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div># No <ins class="diffchange diffchange-inline">[http://</ins>testing<ins class="diffchange diffchange-inline">.com test]ing</ins></div></td>
</tr>
<tr>
<td class="diff-marker">−</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div># Written outline of manual testing procedures</div></td>
<td class="diff-marker">+</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div># Written outline of manual <ins class="diffchange diffchange-inline">[http://</ins>testing<ins class="diffchange diffchange-inline">.com test]ing</ins> procedures</div></td>
</tr>
<tr>
<td class="diff-marker">−</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div># Written detailed descriptions of manual testing procedures</div></td>
<td class="diff-marker">+</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div># Written detailed descriptions of manual <ins class="diffchange diffchange-inline">[http://</ins>testing<ins class="diffchange diffchange-inline">.com test]ing</ins> procedures</div></td>
</tr>
<tr>
<td class="diff-marker">−</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div># <del class="diffchange diffchange-inline">Testing</del> scripts not yet fully integrated into an automated testing framework</div></td>
<td class="diff-marker">+</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div># <ins class="diffchange diffchange-inline">[http://testing.com test]ing</ins> scripts not yet fully integrated into an automated <ins class="diffchange diffchange-inline">[http://</ins>testing<ins class="diffchange diffchange-inline">.com test]ing</ins> framework</div></td>
</tr>
<tr>
<td class="diff-marker">−</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div># Automated test cases fully integrated into an automated testing framework</div></td>
<td class="diff-marker">+</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div># Automated<ins class="diffchange diffchange-inline"> [http://testing.com</ins> test<ins class="diffchange diffchange-inline">]</ins> cases fully integrated into an automated <ins class="diffchange diffchange-inline">[http://</ins>testing<ins class="diffchange diffchange-inline">.com test]ing</ins> framework</div></td>
</tr>
<tr>
<td class="diff-marker">−</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div># Fully implement a "test-first" methodology: no new features without an automated test being written first</div></td>
<td class="diff-marker">+</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div># Fully implement a "<ins class="diffchange diffchange-inline">[http://testing.com </ins>test<ins class="diffchange diffchange-inline">]</ins>-first" methodology: no new features without an automated<ins class="diffchange diffchange-inline"> [http://testing.com</ins> test<ins class="diffchange diffchange-inline">]</ins> being written first</div></td>
</tr>
<tr>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
</tr>
<tr>
<td class="diff-marker">−</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>An outside contributor may have difficulty producing an automated test case fully integrated into an automatic testing framework. The existing automated <del class="diffchange diffchange-inline">tests</del> are not very well integrated and many are extremely ad-hoc in nature. A long-term goal will be to regularize the automated <del class="diffchange diffchange-inline">tests</del> into a single integrated framework. This has advantages such as the capability of reviewing test results in a form optimized for differential measurements of success and regression.</div></td>
<td class="diff-marker">+</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>An outside contributor may have difficulty producing an automated<ins class="diffchange diffchange-inline"> [http://testing.com</ins> test<ins class="diffchange diffchange-inline">]</ins> case fully integrated into an automatic <ins class="diffchange diffchange-inline">[http://</ins>testing<ins class="diffchange diffchange-inline">.com test]ing</ins> framework. The existing automated <ins class="diffchange diffchange-inline">[http://testing.com test]s</ins> are not very well integrated and many are extremely ad-hoc in nature. A long-term goal will be to regularize the automated <ins class="diffchange diffchange-inline">[http://testing.com test]s</ins> into a single integrated framework. This has advantages such as the capability of reviewing<ins class="diffchange diffchange-inline"> [http://testing.com</ins> test<ins class="diffchange diffchange-inline">]</ins> results in a form optimized for differential measurements of success and regression.</div></td>
</tr>
<tr>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
</tr>
<tr>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>== Timeline ==</div></td>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>== Timeline ==</div></td>
</tr>
<tr>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
</tr>
<tr>
<td class="diff-marker">−</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>For the krb5-1.8 release, MITKC staff must provide testing scripts for every new feature they implement. Contributors must provide at least a written outline of manual testing procedures for their contributions, and should provide a written detailed description of the manual testing procedures. Contributors should strongly consider writing higher levels of <del class="diffchange diffchange-inline">tests</del>.</div></td>
<td class="diff-marker">+</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>For the krb5-1.8 release, MITKC staff must provide <ins class="diffchange diffchange-inline">[http://</ins>testing<ins class="diffchange diffchange-inline">.com test]ing</ins> scripts for every new feature they implement. Contributors must provide at least a written outline of manual <ins class="diffchange diffchange-inline">[http://</ins>testing<ins class="diffchange diffchange-inline">.com test]ing</ins> procedures for their contributions, and should provide a written detailed description of the manual <ins class="diffchange diffchange-inline">[http://</ins>testing<ins class="diffchange diffchange-inline">.com test]ing</ins> procedures. Contributors should strongly consider writing higher levels of <ins class="diffchange diffchange-inline">[http://testing.com test]s</ins>.</div></td>
</tr>
<tr>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
<td class="diff-marker"> </td>
<td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td>
</tr>
<tr>
<td class="diff-marker">−</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>During the 1.8 and 1.9 development timeframes, we will work to regularize our automated testing framework and decrease the barriers to entry for outside contributors. This will probably also involve substantial amounts of documentation work.</div></td>
<td class="diff-marker">+</td>
<td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>During the 1.8 and 1.9 development timeframes, we will work to regularize our automated <ins class="diffchange diffchange-inline">[http://</ins>testing<ins class="diffchange diffchange-inline">.com test]ing</ins> framework and decrease the barriers to entry for outside contributors. This will probably also involve substantial amounts of documentation work.</div></td>
</tr>
</table>2n5KsJ8cFdhttps://k5wiki.kerberos.org/wiki?title=Test-driven_development&diff=1271&oldid=prevTomYu: New page: A long-term goal of MIT Kerberos is to move toward [http://en.wikipedia.org/wiki/Test-driven_development test-driven development]. It is not necessary to implement exactly the Extreme Pro...2009-06-22T02:10:37Z<p>New page: A long-term goal of MIT Kerberos is to move toward [http://en.wikipedia.org/wiki/Test-driven_development test-driven development]. It is not necessary to implement exactly the Extreme Pro...</p>
<p><b>New page</b></p><div>A long-term goal of MIT Kerberos is to move toward [http://en.wikipedia.org/wiki/Test-driven_development test-driven development]. It is not necessary to implement exactly the Extreme Programming or Agile ideals of test-driven development. One aspect of test-driven development as usually defined is that programmers write tests prior to writing actual implementation code. While this may be a worthy ideal, achieving it is more likely if done in stages.<br />
<br />
A general observation is that instituting practices for "some testing" are better than having "no testing". This is not to imply that "more testing" is always better than "less testing", but for most reasonable scenarios, "more testing" is usually better. Automated tests are far more likely to be run than non-automated tests. Manual tests tend not to be run except in special circumstances, such as pre-arranged interoperability events.<br />
<br />
Several possible levels of testing:<br />
<br />
# No testing<br />
# Written outline of manual testing procedures<br />
# Written detailed descriptions of manual testing procedures<br />
# Testing scripts not yet fully integrated into an automated testing framework<br />
# Automated test cases fully integrated into an automated testing framework<br />
# Fully implement a "test-first" methodology: no new features without an automated test being written first<br />
<br />
An outside contributor may have difficulty producing an automated test case fully integrated into an automatic testing framework. The existing automated tests are not very well integrated and many are extremely ad-hoc in nature. A long-term goal will be to regularize the automated tests into a single integrated framework. This has advantages such as the capability of reviewing test results in a form optimized for differential measurements of success and regression.<br />
<br />
== Timeline ==<br />
<br />
For the krb5-1.8 release, MITKC staff must provide testing scripts for every new feature they implement. Contributors must provide at least a written outline of manual testing procedures for their contributions, and should provide a written detailed description of the manual testing procedures. Contributors should strongly consider writing higher levels of tests.<br />
<br />
During the 1.8 and 1.9 development timeframes, we will work to regularize our automated testing framework and decrease the barriers to entry for outside contributors. This will probably also involve substantial amounts of documentation work.</div>TomYu