Software testing: Difference between revisions

Content deleted Content added
m ce
→‎Categorization: Use excerpts rather than duplicating info
Line 56:
=== Levels ===
 
Software testing iscan oftenbe categorized into levels based on how much of the [[software system]] is the focus of a test.<ref name="Computer.org">{{Cite book |title=Guide to the Software Engineering Body of Knowledge |publisher=IEEE Computer Society |year=2014 |isbn=978-0-7695-5166-1 |editor-last=Bourque |editor-first=Pierre |series=3.0 |chapter=Chapter 5 |access-date=January 2, 2018 |editor-last2=Fairley |editor-first2=Richard E. |chapter-url=https://www.computer.org/web/swebok/v3}}</ref><ref name="BourqueSWEBOK14-4">{{Cite book |title=SWEBOK v3.0: Guide to the Software Engineering Body of Knowledge |publisher=IEEE |year=2014 |isbn=978-0-7695-5166-1 |editor-last=Bourque, P. |pages=4–1–4–17 |chapter=Chapter 4: Software Testing |access-date=July 13, 2018 |editor-last2=Fairley, R.D. |chapter-url=http://www4.ncsu.edu/~tjmenzie/cs510/pdf/SWEBOKv3.pdf |archive-date=June 19, 2018 |archive-url=https://web.archive.org/web/20180619003324/http://www4.ncsu.edu/~tjmenzie/cs510/pdf/SWEBOKv3.pdf |url-status=dead }}</ref><ref name="DooleySoftware11">{{Cite book |last=Dooley, J. |url=https://books.google.com/books?id=iOqP9_6w-18C&pg=PA193 |title=Software Development and Professional Practice |publisher=APress |year=2011 |isbn=978-1-4302-3801-0 |pages=193–4}}</ref><ref name="WiegersCreating13">{{Cite book |last=Wiegers, K. |url=https://books.google.com/books?id=uVsUAAAAQBAJ&pg=PA212 |title=Creating a Software Engineering Culture |publisher=Addison-Wesley |year=2013 |isbn=978-0-13-348929-3 |pages=211–2}}</ref>
 
==== Unit testing ====
{{Excerpt|Unit testing|paragraphs=1|only=paragraph}}
 
{{Main|Unit testing}}
 
Unit testing refers to verifying the behavior of a relatively small portion of the code, a unit, in isolation from the rest of the codebase. A unit is often a function, module, method or class. <ref>{{Cite book |last=Binder |first=Robert V. |url=https://archive.org/details/testingobjectori00bind/page/45 |title=Testing Object-Oriented Systems: Objects, Patterns, and Tools |publisher=Addison-Wesley Professional |year=1999 |isbn=978-0-201-80938-1 |page=[https://archive.org/details/testingobjectori00bind/page/45 45]}}</ref> To isolate the unit, a test substitutes dependences with [[test double]]s.
 
==== Integration testing ====
{{MainExcerpt|Integration testing|paragraphs=1|only=paragraph}}
 
Integration testing verifies the behavior of multiple units interacting, but is less than whole system. Often an integration test validates the interface between components against a software design.
 
==== System testing ====
{{MainExcerpt|System testing|paragraphs=1|only=paragraph}}
 
System testing tests a completely integrated system; often to verify that the system meets its requirements.<ref name=IEEEglossary/>{{rp|74}}<!-- <ref name="ieee">{{Cite book |url=https://standards.ieee.org/standard/610-1990.html |title=IEEE Standard Computer Dictionary: A Compilation of IEEE Standard Computer Glossaries |publisher=IEEE |year=1990 |isbn=978-1-55937-079-0 |location=New York}}</ref>{{Obsolete source|reason=this IEEE standard has been withdrawn and is no longer in effect. |date=October 2018}} -->
 
=== Static, dynamic, and passive testing ===