Classification Tree Method: Difference between revisions

Content deleted Content added
m Versions: only spelling mistake (superfluous s)
Citation bot (talk | contribs)
Add: s2cid. | Use this bot. Report bugs. | Suggested by Abductive | Category:Software development process | #UCB_Category 73/120
Line 2:
 
The '''Classification Tree Method''' is a method for test design,<ref>{{cite book|last=Bath|first=Graham|author2=McKay, Judy|title=The software test engineer's handbook : a study guide for the ISTQB test analyst and technical test analyst advanced level certificates|year=2008|publisher=Rocky Nook|___location=Santa Barbara, CA|isbn=9781933952246|edition=1st}}</ref> as it is used in different areas of [[software development]].<ref name=advStest>{{cite book|last=Hass|first=Anne Mette Jonassen|title=Guide to advanced software testing|year=2008|publisher=Artech House|___location=Boston|isbn=978-1596932869|pages=179–186}}</ref>
It was developed by Grimm and Grochtmann in 1993.<ref name=GG>{{cite journal|last=Grochtmann|first=Matthias|author2=Grimm, Klaus|title=Classification Trees for Partition Testing|journal=Software Testing, Verification & Reliability|year=1993|volume=3|issue=2|pages=63–82|doi=10.1002/stvr.4370030203|s2cid=33987358}}</ref>
Classification Trees in terms of the Classification Tree Method must not be confused with [[decision tree]]s.
 
Line 33:
 
In the second step, test cases are composed by selecting exactly one class from every classification of the classification tree.
The selection of test cases originally<ref name=GG>{{cite journal|last=Grochtmann|first=Matthias|author2=Grimm, Klaus|title=Classification Trees for Partition Testing|journal=Software Testing, Verification & Reliability|year=1993|volume=3|issue=2|pages=63–82|doi=10.1002/stvr.4370030203|s2cid=33987358}}</ref> was a manual task to be performed by the [[test engineer]].
 
=== Example ===
Line 59:
=== Background ===
 
The CTM introduced the following advantages<ref name=advStest /> over the Category Partition Method<ref>{{cite journal|last=Ostrand|first=T. J.|author2=Balcer, M. J.|title=The category-partition method for specifying and generating functional tests|journal=Communications of the ACM|year=1988|volume=31|issue=6|pages=676–686|doi=10.1145/62959.62964|s2cid=207647895}}</ref> (CPM) by Ostrand and Balcer:
* '''Notation''': CPM only had a textual notation, whereas CTM uses a graphical, tree-shaped representation.
* '''Refinements''' Selecting one representative might have an influence on the occurrence of other representatives.
Line 87:
=== Test Sequence Generation ===
 
With the addition of valid transitions between individual classes of a classification, classifications can be interpreted as a [[Finite-state machine|state machine]], and therefore the whole classification tree as a [[Statechart#Harel statechart|Statechart]]. This defines an allowed order of class usages in test steps and allows to automatically create test sequences.<ref name="seqgen">{{cite book|last=Kruse|first=Peter M.|author2=Wegener, Joachim|title=Test Sequence Generation from Classification Trees|journal=Software Testing, Verification and Validation (ICST), 2012 IEEE Fifth International Conference on|date=April 2012|pages=539–548|doi=10.1109/ICST.2012.139|isbn=978-0-7695-4670-4|s2cid=581740}}</ref> Different coverage levels are available, such as [[Code coverage#Basic coverage criteria|state coverage]], transitions coverage and coverage of state pairs and transition pairs.
 
=== Numerical Constraints ===
 
In addition to Boolean dependency rules referring to classes of the classification tree, Numerical Constraints allow to specify [[formula]]s with classifications as variables, which will evaluate to the selected class in a test case.<ref name="numdeb">{{cite book|last=Kruse|first=Peter M.|author2=Bauer, Jürgen |author3=Wegener, Joachim |title=Numerical Constraints for Combinatorial Interaction Testing|journal=Software Testing, Verification and Validation (ICST), 2012 IEEE Fifth International Conference on|date=April 2012|pages=758–763|doi=10.1109/ICST.2012.170|isbn=978-0-7695-4670-4|s2cid=16683773}}</ref>
 
== Classification Tree Editor ==
Line 206:
* When test design with the classification tree method is performed without proper test decomposition, classification trees can get large and cumbersome.
* New users tend to include too many (esp. irrelevant) test aspects resulting in too many test cases.
* There is no algorithm or strict guidance for selection of test relevant aspects.<ref>{{cite book|last=Chen|first=T.Y.|author2=Poon, P.-L.|title=Classification-Hierarchy Table: a methodology for constructing the classification tree|journal=Australian Software Engineering Conference, 1996., Proceedings of 1996|year=1996|pages=93–104|doi=10.1109/ASWEC.1996.534127|isbn=978-0-8186-7635-2|s2cid=6789744}}</ref>
 
== References ==