Talk:Unit testing: Difference between revisions

From Citizendium
Jump to navigation Jump to search
imported>Ed Poor
({{subst:checklist}})
imported>Howard C. Berkowitz
(Agile methodology)
 
(12 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{subpages}}


{|  border="1" cellpadding="5" cellspacing="0"
I got 8 red links. Should I start writing those articles, or maybe just unlink my red links? --[[User:Ed Poor|Ed Poor]] 13:37, 10 May 2007 (CDT)
|+ '''<font size=+2>Article Checklist for "[[{{PAGENAME}}]]"</font>'''
<!--


CATEGORY LIST: there are only three categories permitted by this template. If there is only one, make sure it is listed as "cat1".
Definitely start writing those articles! --[[User:D. Matt Innis|Matt Innis]] [[User talk:D. Matt Innis|(Talk)]] 14:02, 10 May 2007 (CDT)


-->
Sorry, it's been almost 4 years. I've '''done''' a lot of unit testing, but I haven't gotten around to '''writing''' about it.
|-
|align="right"|'''Workgroup category or categories'''||{{#if:{{{cat1}}}|[[:CZ:{{{cat1}}} Workgroup|{{{cat1}}} Workgroup]]|'''No categories listed''' [[Category:General Category Check|{{{abc}}}]]}}{{#if:{{{cat2}}}|, [[:CZ:{{{cat2}}} Workgroup|{{{cat2}}} Workgroup]]|}}{{#if:{{{cat3}}}|, [[:CZ:{{{cat3}}} Workgroup|{{{cat3}}} Workgroup]]|}} <!--


CHECK CATEGORIES: this is used to indicate whether, in the opinion of the person filling out the checklist, the category list is OK or needs review by editors.
The weakness of the article is that it doesn't say much about choosing what to test (i.e., making test cases), the relationship to [[refactoring]], or the influence of the testing-refactoring cycle on design. The whole idea of test-driven development (TDD) is that one can forego the old idea of Big Design Up Front in favor of a more agile approach that:
#saves time
#delivers more bang for the buck
#is more satisfying to the end user


--><font size=-2>[{{#switch: {{{cat_check}}}
How can I write about this? --[[User:Ed Poor|Ed Poor]] 22:02, 14 April 2011 (UTC)
| Yes = Editors asked to check categories  {{#if: {{{cat1}}}|[[Category:{{{cat1}}} Category Check|{{{abc}}}]]
                                                              [[Category:General Category Check|{{{abc}}}]]
                                                            |[[Category:General Category Check|{{{abc}}}]]}}
                                            {{#if: {{{cat2}}}|[[Category:{{{cat2}}} Category Check|{{{abc}}}]]}}
                                            {{#if: {{{cat3}}}|[[Category:{{{cat3}}} Category Check|{{{abc}}}]]}}
| YES = Editors asked to check categories  {{#if: {{{cat1}}}|[[Category:{{{cat1}}} Category Check|{{{abc}}}]]
                                                              [[Category:General Category Check|{{{abc}}}]]
                                                            |[[Category:General Category Check|{{{abc}}}]]}}
                                            {{#if: {{{cat2}}}|[[Category:{{{cat2}}} Category Check|{{{abc}}}]]}}
                                            {{#if: {{{cat3}}}|[[Category:{{{cat3}}} Category Check|{{{abc}}}]]}}
| yes = Editors asked to check categories  {{#if: {{{cat1}}}|[[Category:{{{cat1}}} Category Check|{{{abc}}}]]
                                                              [[Category:General Category Check|{{{abc}}}]]
                                                            |[[Category:General Category Check|{{{abc}}}]]}}
                                            {{#if: {{{cat2}}}|[[Category:{{{cat2}}} Category Check|{{{abc}}}]]}}
                                            {{#if: {{{cat3}}}|[[Category:{{{cat3}}} Category Check|{{{abc}}}]]}}
| Y = Editors asked to check categories    {{#if: {{{cat1}}}|[[Category:{{{cat1}}} Category Check|{{{abc}}}]]
                                                              [[Category:General Category Check|{{{abc}}}]]
                                                            |[[Category:General Category Check|{{{abc}}}]]}}
                                            {{#if: {{{cat2}}}|[[Category:{{{cat2}}} Category Check|{{{abc}}}]]}}
                                            {{#if: {{{cat3}}}|[[Category:{{{cat3}}} Category Check|{{{abc}}}]]}}
| y = Editors asked to check categories    {{#if: {{{cat1}}}|[[Category:{{{cat1}}} Category Check|{{{abc}}}]]
                                                              [[Category:General Category Check|{{{abc}}}]]
                                                            |[[Category:General Category Check|{{{abc}}}]]}}
                                            {{#if: {{{cat2}}}|[[Category:{{{cat2}}} Category Check|{{{abc}}}]]}}
                                            {{#if: {{{cat3}}}|[[Category:{{{cat3}}} Category Check|{{{abc}}}]]}}
| No = Categories OK
| NO = Categories OK
| no = Categories OK
| N = Categories OK
| n = Categories OK
}}{{#if: {{{cat_check}}}| |Please add or review categories}}]</font>
<!--


ARTICLE STATUS: see "CZ:The Article Checklist" for further explanation of the article statuses.
:Compare and contrast [[Agile software development]], [[Waterfall software development]] (or BDUF), etc. ? There's a good Agile Methodology mailing list.  


-->
:Maybe at least some lemmas -- or more -- on use cases and the like.
|-
|align="right"|'''Article status'''||{{#switch: {{{status}}}
| 0 = Approved article: approved by editor(s) according to our process
                    [[Category:Advanced Articles|{{{abc}}}]]
                    [[Category:Nonstub Articles|{{{abc}}}]] [[Category:Internal Articles|{{{abc}}}]]
                              {{#if: {{{cat1}}}|
                                [[Category:{{{cat1}}} Advanced Articles|{{{abc}}}]]
                                [[Category:{{{cat1}}} Nonstub Articles|{{{abc}}}]]
                                [[Category:{{{cat1}}} Internal Articles|{{{abc}}}]]}}
                              {{#if: {{{cat2}}}|
                                [[Category:{{{cat2}}} Advanced Articles|{{{abc}}}]]
                                [[Category:{{{cat2}}} Nonstub Articles|{{{abc}}}]]
                                [[Category:{{{cat2}}} Internal Articles|{{{abc}}}]]}}
                              {{#if: {{{cat3}}}|
                                [[Category:{{{cat3}}} Advanced Articles|{{{abc}}}]]
                                [[Category:{{{cat3}}} Nonstub Articles|{{{abc}}}]]
                                [[Category:{{{cat3}}} Internal Articles|{{{abc}}}]]}}
| 1 = Developed article: complete or nearly so 
                    [[Category:Developed Articles|{{{abc}}}]] [[Category:Advanced Articles|{{{abc}}}]]
                    [[Category:Nonstub Articles|{{{abc}}}]] [[Category:Internal Articles|{{{abc}}}]]
                              {{#if: {{{cat1}}}|[[Category:{{{cat1}}} Developed Articles|{{{abc}}}]]
                                [[Category:{{{cat1}}} Advanced Articles|{{{abc}}}]]
                                [[Category:{{{cat1}}} Nonstub Articles|{{{abc}}}]]
                                [[Category:{{{cat1}}} Internal Articles|{{{abc}}}]]}}
                              {{#if: {{{cat2}}}|[[Category:{{{cat2}}} Developed Articles|{{{abc}}}]]
                                [[Category:{{{cat2}}} Advanced Articles|{{{abc}}}]]
                                [[Category:{{{cat2}}} Nonstub Articles|{{{abc}}}]]
                                [[Category:{{{cat2}}} Internal Articles|{{{abc}}}]]}}
                              {{#if: {{{cat3}}}|[[Category:{{{cat3}}} Developed Articles|{{{abc}}}]]
                                [[Category:{{{cat3}}} Advanced Articles|{{{abc}}}]]
                                [[Category:{{{cat3}}} Nonstub Articles|{{{abc}}}]]
                                [[Category:{{{cat3}}} Internal Articles|{{{abc}}}]]}}
| 2 = Developing article: beyond a stub, but incomplete
                    [[Category:Developing Articles|{{{abc}}}]] [[Category:Nonstub Articles|{{{abc}}}]]
                    [[Category:Internal Articles|{{{abc}}}]]
                              {{#if: {{{cat1}}}|[[Category:{{{cat1}}} Developing Articles|{{{abc}}}]]
                                [[Category:{{{cat1}}} Nonstub Articles|{{{abc}}}]]
                                [[Category:{{{cat1}}} Internal Articles|{{{abc}}}]]}}
                              {{#if: {{{cat2}}}|[[Category:{{{cat2}}} Developing Articles|{{{abc}}}]]
                                [[Category:{{{cat2}}} Nonstub Articles|{{{abc}}}]]
                                [[Category:{{{cat2}}} Internal Articles|{{{abc}}}]]}}
                              {{#if: {{{cat3}}}|[[Category:{{{cat3}}} Developing Articles|{{{abc}}}]]
                                [[Category:{{{cat3}}} Nonstub Articles|{{{abc}}}]]
                                [[Category:{{{cat3}}} Internal Articles|{{{abc}}}]]}}
| 3 = Stub: no more than a few sentences [[Category:Stub Articles|{{{abc}}}]] [[Category:Internal Articles|{{{abc}}}]]
                              {{#if: {{{cat1}}}|[[Category:{{{cat1}}} Stub Articles|{{{abc}}}]]
                                [[Category: {{{cat1}}} Internal Articles|{{{abc}}}]]}}
                              {{#if: {{{cat2}}}|[[Category:{{{cat2}}} Stub Articles|{{{abc}}}]]
                                [[Category: {{{cat2}}} Internal Articles|{{{abc}}}]]}}
                              {{#if: {{{cat3}}}|[[Category:{{{cat3}}} Stub Articles|{{{abc}}}]]
                                [[Category: {{{cat3}}} Internal Articles|{{{abc}}}]]}}
| 4 = External article: from another source, with little change [[Category:External Articles|{{{abc}}}]]
                              {{#if: {{{cat1}}}|[[Category:{{{cat1}}} External Articles|{{{abc}}}]]}}
                              {{#if: {{{cat2}}}|[[Category:{{{cat2}}} External Articles|{{{abc}}}]]}}
                              {{#if: {{{cat3}}}|[[Category:{{{cat3}}} External Articles|{{{abc}}}]]}}
|Not specified [[Category:Articles with Unspecified Status]]
}}
<!--  


UNDERLINKED ARTICLES: states whether the article has any of the main expected links to it.  For example, if "tree" is not linked from "plant" or "biology" or "botany" or any other such "parent" topic, then it is an "underlinked article."  Note, all orphans are underlinked, but some underlinked articles are not orphans.
[[User:Howard C. Berkowitz|Howard C. Berkowitz]] 00:43, 16 April 2011 (UTC)
 
-->
|-
|align="right"|'''Underlinked article?'''||{{#switch: {{{underlinked}}}
| Yes = Yes    {{#if: {{{cat1}}}|[[Category:{{{cat1}}} Underlinked Articles|{{{abc}}}]]}}
                      [[Category:Underlinked Articles|{{{abc}}}]]
                {{#if: {{{cat2}}}|[[Category:{{{cat2}}} Underlinked Articles|{{{abc}}}]]}}
                {{#if: {{{cat3}}}|[[Category:{{{cat3}}} Underlinked Articles|{{{abc}}}]]}}
| YES = Yes    {{#if: {{{cat1}}}|[[Category:{{{cat1}}} Underlinked Articles|{{{abc}}}]]}}
                      [[Category:Underlinked Articles|{{{abc}}}]]
                {{#if: {{{cat2}}}|[[Category:{{{cat2}}} Underlinked Articles|{{{abc}}}]]}}
                {{#if: {{{cat3}}}|[[Category:{{{cat3}}} Underlinked Articles|{{{abc}}}]]}}
| yes = Yes    {{#if: {{{cat1}}}|[[Category:{{{cat1}}} Underlinked Articles|{{{abc}}}]]}}
                      [[Category:Underlinked Articles|{{{abc}}}]]
                {{#if: {{{cat2}}}|[[Category:{{{cat2}}} Underlinked Articles|{{{abc}}}]]}}
                {{#if: {{{cat3}}}|[[Category:{{{cat3}}} Underlinked Articles|{{{abc}}}]]}}
| Y = Yes      {{#if: {{{cat1}}}|[[Category:{{{cat1}}} Underlinked Articles|{{{abc}}}]]}}
                      [[Category:Underlinked Articles|{{{abc}}}]]
                {{#if: {{{cat2}}}|[[Category:{{{cat2}}} Underlinked Articles|{{{abc}}}]]}}
                {{#if: {{{cat3}}}|[[Category:{{{cat3}}} Underlinked Articles|{{{abc}}}]]}}
| y = Yes      {{#if: {{{cat1}}}|[[Category:{{{cat1}}} Underlinked Articles|{{{abc}}}]]}}
                      [[Category:Underlinked Articles|{{{abc}}}]]
                {{#if: {{{cat2}}}|[[Category:{{{cat2}}} Underlinked Articles|{{{abc}}}]]}}
                {{#if: {{{cat3}}}|[[Category:{{{cat3}}} Underlinked Articles|{{{abc}}}]]}}
| No = No
| NO = No
| no = No
| N = No
| n = No
| Not specified
}}
<!--
 
CLEANUP DONE: simply reports whether the "basic cleanup" tasks listed in "The Article Checklist" are complete.
 
-->
|-
|align="right"|'''Basic cleanup done?'''||{{#switch: {{{cleanup}}}
| YES = Yes
| Yes = Yes
| yes = Yes
| Y = Yes
| y = Yes
| No = No      {{#if: {{{cat1}}}|[[Category:{{{cat1}}} Cleanup|{{{abc}}}]]}} [[Category:General Cleanup|{{{abc}}}]]
                {{#if: {{{cat2}}}|[[Category:{{{cat2}}} Cleanup|{{{abc}}}]]}}
                {{#if: {{{cat3}}}|[[Category:{{{cat3}}} Cleanup|{{{abc}}}]]}}
| NO = No      {{#if: {{{cat1}}}|[[Category:{{{cat1}}} Cleanup|{{{abc}}}]]}} [[Category:General Cleanup|{{{abc}}}]]
                {{#if: {{{cat2}}}|[[Category:{{{cat2}}} Cleanup|{{{abc}}}]]}}
                {{#if: {{{cat3}}}|[[Category:{{{cat3}}} Cleanup|{{{abc}}}]]}}
| no = No      {{#if: {{{cat1}}}|[[Category:{{{cat1}}} Cleanup|{{{abc}}}]]}} [[Category:General Cleanup|{{{abc}}}]]
                {{#if: {{{cat2}}}|[[Category:{{{cat2}}} Cleanup|{{{abc}}}]]}}
                {{#if: {{{cat3}}}|[[Category:{{{cat3}}} Cleanup|{{{abc}}}]]}}
| N = No        {{#if: {{{cat1}}}|[[Category:{{{cat1}}} Cleanup|{{{abc}}}]]}} [[Category:General Cleanup|{{{abc}}}]]
                {{#if: {{{cat2}}}|[[Category:{{{cat2}}} Cleanup|{{{abc}}}]]}}
                {{#if: {{{cat3}}}|[[Category:{{{cat3}}} Cleanup|{{{abc}}}]]}}
| n = No        {{#if: {{{cat1}}}|[[Category:{{{cat1}}} Cleanup|{{{abc}}}]]}} [[Category:General Cleanup|{{{abc}}}]]
                {{#if: {{{cat2}}}|[[Category:{{{cat2}}} Cleanup|{{{abc}}}]]}}
                {{#if: {{{cat3}}}|[[Category:{{{cat3}}} Cleanup|{{{abc}}}]]}}
| No  {{#if: {{{cat1}}}|[[Category:{{{cat1}}} Cleanup]]}} [[Category:General Cleanup]]
                  {{#if: {{{cat2}}}|[[Category:{{{cat2}}} Cleanup]]}}
                  {{#if: {{{cat3}}}|[[Category:{{{cat3}}} Cleanup]]}}
}}
<!--
 
CHECKLIST LAST EDITED BY: credits the latest edit to the checklist to a person.
 
-->
|-
|align="right"|'''Checklist last edited by'''||{{#if: {{{by}}}|{{{by}}}|Nobody}}
|}
 
'''To learn how to fill out this checklist, please see [[CZ:The Article Checklist]].'''
 
<!--
 
CHECKLISTED: tracks whether the page has been checklisted or not.
 
-->
[[Category:Checklisted Articles|{{{abc}}}]]
{{#if: {{{cat1}}}|[[Category:{{{cat1}}} Checklisted Articles|{{{abc}}}]]}}
{{#if: {{{cat2}}}|[[Category:{{{cat2}}} Checklisted Articles|{{{abc}}}]]}}
{{#if: {{{cat3}}}|[[Category:{{{cat3}}} Checklisted Articles|{{{abc}}}]]}}
 
 
----

Latest revision as of 19:43, 15 April 2011

This article is developing and not approved.
Main Article
Discussion
Related Articles  [?]
Bibliography  [?]
External Links  [?]
Citable Version  [?]
 
To learn how to update the categories for this article, see here. To update categories, edit the metadata template.
 Definition Method of automatically testing software that is designed to check each unit. [d] [e]
Checklist and Archives
 Workgroup category Computers [Categories OK]
 Talk Archive none  English language variant British English

I got 8 red links. Should I start writing those articles, or maybe just unlink my red links? --Ed Poor 13:37, 10 May 2007 (CDT)

Definitely start writing those articles! --Matt Innis (Talk) 14:02, 10 May 2007 (CDT)

Sorry, it's been almost 4 years. I've done a lot of unit testing, but I haven't gotten around to writing about it.

The weakness of the article is that it doesn't say much about choosing what to test (i.e., making test cases), the relationship to refactoring, or the influence of the testing-refactoring cycle on design. The whole idea of test-driven development (TDD) is that one can forego the old idea of Big Design Up Front in favor of a more agile approach that:

  1. saves time
  2. delivers more bang for the buck
  3. is more satisfying to the end user

How can I write about this? --Ed Poor 22:02, 14 April 2011 (UTC)

Compare and contrast Agile software development, Waterfall software development (or BDUF), etc. ? There's a good Agile Methodology mailing list.
Maybe at least some lemmas -- or more -- on use cases and the like.

Howard C. Berkowitz 00:43, 16 April 2011 (UTC)