Skip to main content

Software Testing

  • Chapter
  • First Online:

Part of the book series: SpringerBriefs in Information Systems ((BRIEFSINORMAT))

Abstract

Software testing as a part of software development is a very diverse topic—or even seen as an art. Therefore, an introduction into software testing is given. This chapter summarizes why software is tested, which terms are important, what software testing is, how software testing can be done, and how it is organized. Furthermore, basics of test automatization, management, and documentation are described. Additionally, testing standards are mentioned.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   34.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   49.95
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Notes

  1. 1.

    Switching to German does not help. There are less terms commonly used, but Fehler can be used as a translation for all of the above mentioned terms besides mistake.

  2. 2.

    No actual programming language is used. A file header and a function or method definition have been omitted. The statement would look similar in many common object orientation programming languages, though. Some languages would require a cast from the numeric type to a literal type or a parameter for formatting.

  3. 3.

    The standard lists further definitions for testing. This includes acceptance testing, component testing, functional testing, integration testing, loopback testing, mutation testing, performance testing, regression testing, stress testing, structural testing, system testing, and unit testing.

  4. 4.

    It has to be noted that not all computer scientists are convinced of the usefulness of such models or at least the way they are applied. Proposing a “software process immaturity model” [48, 49] is not only humorous but also hints to skepticism.

  5. 5.

    Garbage collection automatically frees memory and deallocates data structured not used anymore [97, 98].

  6. 6.

    A comparison of tests and checks is given in [5, Chap. 7]. Unfortunately, classifying techniques as tests and checks is ambiguous.

  7. 7.

    As of today, it is seen as impossible due to the halting problem. Programs might verify themselves under certain conditions, but no universal approach is known.

  8. 8.

    Translated from the German original by the author.

References

  1. Myers, G.J., Sandler, C.: The Art of Software Testing, 2nd edn. Wiley, Chichester (2004)

    Google Scholar 

  2. Liggesmeyer, P.: Software-Qualität: Testen, Analysieren und Verifizieren von Software, 2nd edn. Spektrum-Akademischer Verlag, Berlin (2009)

    Book  Google Scholar 

  3. Bath, G., McKay, J.: Praxiswissen Softwaretest—Test Analyst und Technical Test Analyst. Dpunkt, Heidelberg (2010)

    Google Scholar 

  4. Pezze, M., Young, M.: Software Testing and Analysis: Process, Principles and Techniques. Wiley, New York (2007)

    Google Scholar 

  5. Cleff, T.: Basiswissen Testen von Software. W3L GmbH (2010)

    Google Scholar 

  6. Perry, W.E.: Software Testen. mitp, Bonn (2003)

    Google Scholar 

  7. Thaller, G.E.: Software-Test, 2nd edn. Heise, Hannover (2002)

    Google Scholar 

  8. Rubin, J., Chisnell, D.: Handbook of Usability Testing: How to Plan, Design, and Conduct Effective Tests. Wiley, Hoboken (2008)

    Google Scholar 

  9. Nielsen, J.: Usability Engineering. Morgan Kaufmann, San Francisco (1994)

    Google Scholar 

  10. Leventhal, L., Barnes, J.: Usability Engineering: Process, Products and Examples. Prentice Hall, Upper Saddle River (2007)

    Google Scholar 

  11. Sears, A., Jacko, J.A. (eds.): The Human–Computer Interaction Handbook: Fundamentals, Evolving Technologies and Emerging Applications, 2nd edn. CRC Press, Boca Raton (2008)

    Google Scholar 

  12. Sharp, H., Rogers, Y., Preece, J.: Interaction Design: Beyond Human–Computer Interaction, 2nd edn. Wiley, Hoboken (2007)

    Google Scholar 

  13. Shneiderman, B., Plaisant, C., Cohen, M., Jacobs, S.: Designing the User Interface: Strategies for Effective Human–Computer Interaction, 5th edn. Addison Wesley, Reading (2009)

    Google Scholar 

  14. Zeller, A.: Why Programs Fail: A Guide to Systematic Debugging. Morgan Kaufmann, San Francisco (2006)

    Google Scholar 

  15. IEEE, The Institute of Electrical and Electronics Engineers, Inc.: IEEE Std 1044-2009: IEEE Standard Classification for Software Anomalies. New York (2010)

    Google Scholar 

  16. Marick, B.: The Craft of Software Testing: Subsystem Testing Including Object-Based and Object-Oriented Testing. Prentice-Hall, Upper Saddle River (1995)

    Google Scholar 

  17. Meyer, B.: Seven principles of software testing. Computer 41(8), 99–101 (2008)

    Article  Google Scholar 

  18. Wallmüller, E.: Software-Qualitätsmanagement in der Praxis, 2nd edn. Hanser, München (2001)

    Google Scholar 

  19. IEEE, The Institute of Electrical and Electronics Engineers, Inc.: IEEE Std 610.12-1990: IEEE Standard Glossary of Software Engineering Terminology. New York (1990)

    Google Scholar 

  20. IEEE, The Institute of Electrical and Electronics Engineers, Inc.: IEEE Std 610.12 (H)-1990: IEEE Standard Glossary of Software Engineering Terminology (HyperCard Stack). New York (1990)

    Google Scholar 

  21. Black, R.: Managing the Testing Process, 3rd edn. Wiley, Indianapolis (2009)

    Google Scholar 

  22. Pol, M., Koomen, T., Spillner, A.: Management und Optimierung des Testprozesses: Ein praktischer Leitfaden für erfolgreiches Testen von Software mit TPI und TMap, 2nd edn. dpunkt, Heidelberg (2002)

    Google Scholar 

  23. Myers, G.J., Sandler, C.: The Art of Software Testing. Wiley, Chichester (2004)

    Google Scholar 

  24. Spillner, A., Roßner, T., Winter, M., Linz, T.: Praxiswissen Software Test—Test Management. Dpunkt, Heidelberg (2008)

    Google Scholar 

  25. Roitzsch, E.H.P.: Analytische Softwarequalitätssicherung in Theorie und Praxis: Der Weg zur Software mit hoher Qualität durch statisches Prüfen, dynamisches Testen, formales Beweisen. Monsenstein und Vannerdat (2005)

    Google Scholar 

  26. Majchrzak, T.A., Kuchen, H.: IHK-Projekt Softwaretests: Auswertung. In: Working Papers, vol. 2. Förderkreis der Angewandten Informatik an der Westfälischen Wilhelms-Universität, Münster e.V. (2010)

    Google Scholar 

  27. Clarke, E.M., Grumberg, O., Long, D.E.: Model checking. In: Proceedings of the NATO Advanced Study Institute on Deductive Program Design, pp. 305–349. Springer, Secaucus (1996)

    Google Scholar 

  28. Baier, C., Katoen, J.P.: Principles of Model Checking Representation and Mind Series. The MIT Press, Cambridge (2008)

    Google Scholar 

  29. Bérard, B., Bidoit, M., Finkel, A., Laroussinie, F., Petit A., Petrucci, L., Schnoebelen, Ph., McKenzie, P.: Systems and Software Verification: Model-Checking Techniques and Tools. Springer, Heidelberg (2001)

    Google Scholar 

  30. Jhala, R., Majumdar, R.: Software model checking. ACM Comput. Surv. 41(4), 21:1–21:54 (2008)

    Article  Google Scholar 

  31. ISO: ISO/IEC 12119:1994 Information Technology—Software Packages—Quality Requirements and Testing. Geneva (1994)

    Google Scholar 

  32. http://www.istqb.org/

  33. http://www.german-testing-board.info/

  34. http://www.german-testing-board.info/de/lehrplaene.shtm

  35. Spillner, A., Linz, T.: Basiswissen Softwaretest: Aus- und Weiterbildung zum Certified Tester—Foundation Level nach ISTQB-Standard. dpunkt (2010)

    Google Scholar 

  36. http://www.w3.org/

  37. Abran, A., Bourque, P., Dupuis, R., Moore, J.W., Tripp, L.L. (eds.): Guide to the Software Engineering Body of Knowledge—SWEBOK. IEEE Press, Piscataway (2004)

    Google Scholar 

  38. Höhn, R., Höppner, S. (eds.): Das V-Modell XT: Grundlagen, Methodik und Anwendungen. Springer, Berlin (2008)

    Google Scholar 

  39. http://www.v-modell-xt.de/

  40. Dröschel, W., Heuser, W., Midderhoff, R. (eds.): Inkrementelle und Objektorientierte Vorgehensweisen mit dem V-Modell 97. Oldenbourg, München (1998)

    Google Scholar 

  41. n. A.: DO-178B, Software Considerations in Airborne Systems and Equipment Certification. Radio Technical Commission for Aeronautics (RTCA) (1992)

    Google Scholar 

  42. CENELEC: DIN EN 50128, Railway applications. Communications, signalling and processing systems. Software for railway control and protection systems. European Committee for Electrotechnical Standardization (CENELEC) (2001)

    Google Scholar 

  43. IEC: IEC 62304:2006 Medical Device Software—Software Life Cycle Processes. Geneva (2006)

    Google Scholar 

  44. IEC: IEC 61508 Edition 2.0. International Electrotechnical Commission (IEC) (2010)

    Google Scholar 

  45. n. A.: The Official Introduction to the ITIL 3 Service Lifecycle: Office of Government Commerce. The Stationery Office (2007)

    Google Scholar 

  46. http://www.isaca.org/Knowledge-Center/cobit/Documents/CobiT-4.1-Brochur.pdf

  47. n. A.: CMMI for Development, Version 1.2. Carnegie Mellon Software Engineering Institute (2006)

    Google Scholar 

  48. Finkelstein, A.: A software process immaturity model. SIGSOFT Softw. Eng. Notes 17(4), 22–23 (1992)

    Article  Google Scholar 

  49. http://www.grisha.ru/cmm/cimm.htm

  50. Pol, M., Teunissen, R., van Veenendaal, E.: Gestructureerd testen: Een inroductie tot Tmap. Tutein Nolthenius (1998)

    Google Scholar 

  51. Pol, M., Teunissen, R., van Veenendaal, E.: Software Testing: A Guide to the TMap Approach. Addison-Wesley, Boston (2001)

    Google Scholar 

  52. Koomen, T., Pol, M.: Test Process Improvement: A Practical Step-by-Step Guide to Structured Testing. Addison-Wesley, Boston (1999)

    Google Scholar 

  53. Sogeti: TPI Next—Business Driven Test Process Improvement. UTN Publishers, The Netherlands (2009)

    Google Scholar 

  54. ISO: ISO 9000:2005 Quality Management Systems—Fundamentals and Vocabulary. Geneva (2005)

    Google Scholar 

  55. ISO: ISO 9001:2008 Quality Management Systems—Requirements. Geneva (2008)

    Google Scholar 

  56. ISO: ISO 9004:2009 Managing for the Sustained Success of an Organization—A Quality Management Approach. Geneva (2009)

    Google Scholar 

  57. Kanji, G.K., Asher, M.: 100 Methods for Total Quality Management. Sage Publications, London (1996)

    Google Scholar 

  58. Balzert, H.: Lehrbuch der Softwaretechnik: Softwaremanagement, 2nd edn. Spektrum Akademischer Verlag, Heidelberg (2008)

    Google Scholar 

  59. Behm, P., Benoit, P., Faivre, A., Meynadier, J.M.: Météor: a successful application of B in a large project. In: Wing, J., Woodcock, J., Davies, J. (eds.) FM’99—Formal Methods, Lecture Notes in Computer Science, vol. 1708, p. 712. Springer, Heidelberg (1999)

    Google Scholar 

  60. Leuschel, M., Falampin, J., Fritz, F., Plagge, D.: Automated property verification for large scale B models. In: Proceedings of the 2nd World Congress on Formal Methods, FM ’09, pp. 708–723. Springer, Berlin (2009)

    Google Scholar 

  61. Hoare, C.A.R.: An axiomatic basis for computer programming. Commun. ACM 12(10), 576–580 (1969)

    Article  Google Scholar 

  62. Hoare, C.A.R.: Proof of correctness of data representations. Acta Informatica 1, 271–281 (1972)

    Article  Google Scholar 

  63. Floyd, R.W.: Assigning meanings to programs. Proc. Symp. Appl. Math. 19, 19–32 (1967)

    Article  Google Scholar 

  64. Zilles, S.N.: Algebraic Specification of Data Types. Project Mac Progress Report 11. Massachusetts Institute of Technology, Cambridge (1974)

    Google Scholar 

  65. Bergstra, J.A., Heering, J., Klint, P.: Algebraic Specification. ACM, New York (1989)

    Google Scholar 

  66. Sneed, H.M., Winter, M.: Testen Objektorientierter Software. Hanser, München (2002)

    Google Scholar 

  67. Majchrzak, T.A.: Improving the technical aspects of software testing in enterprises. Int. J. Adv. Comput. Sci. Appl. 1(4), 1–10 (2010)

    Google Scholar 

  68. Oracle: How to write Doc comments for the Javadoc tool. http://www.oracle.com/technetwork/java/javase/documentation/index-137868.html (2004)

  69. Sutter, H., Alexandrescu, A.: C++ Coding Standards: 101 Rules, Guidelines, and Best Practices. Addison-Wesley, Boston (2004)

    Google Scholar 

  70. Kellerwessel, H.: Programmierrichtlinien in der Praxis. mitp, Bonn (2002)

    Google Scholar 

  71. Weiser, M.: Program slicing. In: Proceedings of the 5th International Conference on Software Engineering, ICSE ’81, pp. 439–449. IEEE Press, Piscataway (1981)

    Google Scholar 

  72. Weiser, M.: Program slicing. IEEE Trans. Softw. Eng. 10(4), 352–357 (1984)

    Article  Google Scholar 

  73. Korel, B., Laski, J.: Dynamic program slicing. Inf. Process. Lett. 29(3), 155–163 (1988)

    Article  Google Scholar 

  74. Xu, B., Qian, J., Zhang, X., Wu, Z., Chen, L.: A brief survey of program slicing. SIGSOFT Softw. Eng. Notes 30(2), 1–36 (2005)

    Article  Google Scholar 

  75. Fagan, M.E.: Design and code inspections to reduce errors in program development. IBM Syst. J. 15(3), 182–211 (1976)

    Article  Google Scholar 

  76. Frühauf, K., Ludewig, J., Sandmayr, H.: Software-Prüfung. vdf Hoschulverlag, Zürich (1991)

    Google Scholar 

  77. Black, R.: Pragmatic Software Testing. Wiley, Indianapolis (2007)

    Google Scholar 

  78. Koenig, A.: Patterns and antipatterns. JOOP 8(1), 46–48 (1995)

    Google Scholar 

  79. Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns. Elements of Reusable Object-Oriented Software. Addision-Wesley, München (1995)

    Google Scholar 

  80. Brown, W.H., Malveau, R.C., McCormick, H.W., Mowbray, T.J.: Anti-Patterns: Refactoring Software, Architectures, and Projects in Crisis. Wiley, New York (1998)

    Google Scholar 

  81. Fowler, M.: Refactoring: Improving the Design of Existing Code. Addison-Wesley, Boston (1999)

    Google Scholar 

  82. Opdyke, W.F., Johnson, R.E.: Refactoring: an aid in designing application frameworks and evolving object-oriented systems. In: Proceedings of the Symposium on Object Oriented Programming Emphasizing Practical Applications (SOOPA) (1990)

    Google Scholar 

  83. Kerievsky, J.: Refactoring to Patterns. Pearson Higher Education, London (2004)

    Google Scholar 

  84. Majchrzak, T.A., Kuchen, H.: Automated test case generation based on coverage analysis. In: TASE ’09: Proceedings of the 2009 3rd IEEE International Symposium on Theoretical Aspects of Software Engineering, pp. 259–266. IEEE Computer Society, Washington, DC (2009)

    Google Scholar 

  85. Nassi, I., Shneiderman, B.: Flowchart techniques for structured programming. SIGPLAN Notices 8(8), 12–26 (1973)

    Article  Google Scholar 

  86. Hennell, M.A., Woodward, M.R., Hedley, D.: On program analysis. Inf. Process. Lett. 5(5), 136–140 (1976)

    Article  Google Scholar 

  87. Woodward, M.R., Hennell, M.A.: On the relationship between two control-flow coverage criteria: all JJ-paths and MCDC. Inf. Softw. Technol. 48(7), 433–440 (2006)

    Article  Google Scholar 

  88. Alper, M.: Professionelle Softwaretests: Praxis der Qualitätsoptimierung Kommerzieller Software. Vieweg, Braunschweig (1994)

    Google Scholar 

  89. Booch, G., Rumbaugh, J., Jacobson, I.: The Unified Modeling Language User Guide, 2nd edn. Addison-Wesley, Boston (2005)

    Google Scholar 

  90. Watkins, J.: Testing IT: An Off-the-Shelf Software Testing Process. Cambridge University Press, New York (2001)

    Book  Google Scholar 

  91. Lazic, L., Mastorakis, N.: Orthogonal array application for optimal combination of software defect detection techniques choices. W. Trans. Comp. 7(8), 1319–1336 (2008)

    Google Scholar 

  92. Kuhn, D.R., Wallace, D.R., Gallo, A.M.: Software fault interactions and implications for software testing. IEEE Trans. Softw. Eng. 30(6), 418–421 (2004)

    Article  Google Scholar 

  93. Richardson, D.J., Clarke, L.A.: Partition analysis: a method combining testing and verification. IEEE Trans. Softw. Eng. 11(12), 1477–1490 (1985)

    Article  Google Scholar 

  94. Richardson, D.J., Clarke, L.A.: A partition analysis method to increase program reliability. In: Proceedings of the 5th International Conference on Software Engineering, ICSE ’81, pp. 244–253. IEEE Press, Piscataway (1981)

    Google Scholar 

  95. Podgurski, A., Yang, C.: Partition testing, stratified sampling, and cluster analysis. SIGSOFT Softw. Eng. Notes 18(5), 169–181 (1993)

    Article  Google Scholar 

  96. Mayr, H.: Projekt Engineering: Ingenieurmäßige Softwareentwicklung in Projektgruppen, 2nd edn. Hanser, München (2005)

    Google Scholar 

  97. Jones, R., Lins, R.: Garbage Collection: Algorithms for Automatic Dynamic Memory Management. Wiley, New York (1996)

    Google Scholar 

  98. Sankaran, N.: A bibliography on garbage collection and related topics. SIGPLAN Notices 29(9), 149–158 (1994)

    Article  Google Scholar 

  99. Hofstedt, P., Wolf, A.: Einführung in die Constraint-Programmierung, Grundlagen, Methoden, Sprachen, Anwendungen. Springer, Heidelberg (2007)

    Google Scholar 

  100. Eyre-Todd, R.A.: The detection of dangling references in C++ programs. ACM Lett. Program. Lang. Syst. 2(1–4), 127–134 (1993)

    Article  Google Scholar 

  101. Vigenschow, U.: Objektorientiertes Testen und Testautomatisierung in der Praxis. Konzepte, Techniken und Verfahren. Dpunkt, Heidelberg (2005)

    Google Scholar 

  102. Georgieva, K.: Conducting FMEA over the software development process. SIGSOFT Softw. Eng. Notes 35(3), 1–5 (2010)

    Article  Google Scholar 

  103. Scientific N., Program T.I. (2000) Failure Modes and Effects Analysis (FMEA)—A Bibliography. Technical Report, NASA Langley Technical Report Server

    Google Scholar 

  104. Neufelder, A.M.: Ensuring Software Reliability. Marcel Dekker, New York (1992)

    Book  Google Scholar 

  105. Vouk, M.A.: Back-to-back testing. Inf. Softw. Technol. 32(1), 34–45 (1990)

    Article  Google Scholar 

  106. DeMillo, R.A., Lipton, R.J., Sayward, F.G.: Program Mutation: A New Approach to Program Testing. Software Testing pp. 107–128 (1979)

    Google Scholar 

  107. Howden, W.E.: Weak mutation testing and completeness of test sets. IEEE Trans. Softw. Eng. 8(4), 371–379 (1982)

    Article  Google Scholar 

  108. Howden, W.E.: Completeness criteria for testing elementary program functions. In: Proceedings of the 5th International Conference on Software Engineering, ICSE ’81, pp. 235–243. IEEE Press, Piscataway (1981)

    Google Scholar 

  109. Claessen, K., Hughes, J.: QuickCheck: a lightweight tool for random testing of haskell programs. In: SIGPLAN Notices, pp. 268–279. ACM Press (2000)

    Google Scholar 

  110. Paris, J., Arts, T.: Automatic testing of TCP/IP implementations using QuickCheck. In: ERLANG ’09: Proceedings of the 8th ACM SIGPLAN Workshop on ERLANG, pp. 83–92. ACM, New York (2009). http://doi.acm.org/10.1145/1596600.1596612

  111. Claessen, K., Palka, M., Smallbone, N., Hughes, J., Svensson, H., Arts, T., Wiger, U.: Finding race conditions in Erlang with QuickCheck and PULSE. In: ICFP ’09: Proceedings of the 14th ACM SIGPLAN International Conference on Functional Programming, pp. 149–160. ACM, New York (2009)

    Google Scholar 

  112. http://quickcheck.dev.java.net/

  113. http://www.jcheck.org/

  114. http://software.legiasoft.com/quickcheck/

  115. http://heim.ifi.uio.no/trygver/themes/mvc/mvc-index.html

  116. Rumbaugh, J.E., Blaha, M.R., Premerlani, W.J., Eddy, F., Lorensen, W.E.: Object-Oriented Modeling and Design. Prentice-Hall, Englewood Cliffs (1991)

    Google Scholar 

  117. Jones, C.: The Economics of Object-Oriented Software. Technical Report, Software Productivity Research, Massachusetts (1997)

    Google Scholar 

  118. Beizer, B.: Software System Testing and Quality Assurance. Van Nostrand Reinhold, New York (1984)

    Google Scholar 

  119. Dybjer, P., Haiyan, Q., Takeyama, M.: Verifying Haskell programs by combining testing and proving. In: Proceedings of the Third International Conference on Quality Software, QSIC ’03, pp. 272–279. IEEE Computer Society, Washington, DC (2003)

    Google Scholar 

  120. Lu, L., Greenfield, P.: Logic program testing based on abstract interpretation. In: Proceedings of the International Conference on Formal Methods in Programming and Their Applications, pp. 170–180. Springer, London (1993)

    Google Scholar 

  121. Silva, J., Vidal, G.: Forward slicing of functional logic programs by partial evaluation. Theory Pract. Log. Program. 7(1–2), 215–247 (2007)

    Article  Google Scholar 

  122. Fischer, S., Kuchen, H.: Data-flow testing of declarative programs. In: Hook, J., Thiemann, P. (eds.) Proceeding of the 13th ACM SIGPLAN International Conference on Functional Programming (ICFP), pp. 201–212. ACM (2008)

    Google Scholar 

  123. Klein, T.: Buffer Overflows und Format-String-Schwachstellen. Dpunkt, Heidelberg (2004)

    Google Scholar 

  124. Poguntke, W.: Basiswissen IT-Sicherheit: Das wichtigste für den Schutz von Systemen & Daten. W3L GmbH (2007)

    Google Scholar 

  125. Wysopal, C., Nelson, L., Zovi, D.D., Dustin, E.: The Art of Software Security Testing: Identifying Software Security Flaws. Addison-Wesley, Boston (2006)

    Google Scholar 

  126. Hope, P., Walther, B.: Web Security Testing Cookbook: Systematic Techniques to Find Problems Fast. O’Reilly, Beijing (2008)

    Google Scholar 

  127. Andrews, M., Whittaker, J.A.: How to Break Web Software: Functional and Security Testing of Web Applications and Web Services. Addison-Wesley, Boston (2006)

    Google Scholar 

  128. https://www.bsi.bund.de/DE/Themen/ITGrundschutz/itgrundschutz_node.html

    Google Scholar 

  129. ISO: ISO/IEC 9126:2001 Software engineering—Product quality. Geneva (2001)

    Google Scholar 

  130. Grood, D.: Test Goal: Result-Driven Testing. Springer, Heidelberg (2008)

    Google Scholar 

  131. Forsberg, K., Mooz, H.: The relationship of systems engineering to the project cycle. Eng. Manag. J. 4(3), 36–38 (1992)

    Google Scholar 

  132. Majchrzak, T.A.: Status quo of software testing—regional findings and global inductions. In: Proceedings of the 9th ISOneWorld Conference. The Information Institute (2010)

    Google Scholar 

  133. Majchrzak, T.A.: Status quo of software testing—regional findings and global inductions. J. Inf. Sci. Technol. 7(2) (2010)

    Google Scholar 

  134. Thomas, D., Hunt, A.: Mock objects. IEEE Softw. 19(3), 22–24 (2002)

    Article  Google Scholar 

  135. Sneed, H.M., Baumgartner, M., Seidl, R.: Der Systemtest, 2nd edn. Hanser, München (2009)

    Google Scholar 

  136. Beck, K.: Extreme Programming Explained: Embrace Change. Addison-Wesley, Boston (1999)

    Google Scholar 

  137. Royce, W.W.: Managing the development of large software systems: concepts and techniques. In: ICSE ’87: Proceedings of the 9th International Conference on Software Engineering, pp. 328–338. IEEE Computer Society Press, Los Alamitos (1987)

    Google Scholar 

  138. Spillner, A.: Das W-Modell—Testen als paralleler Prozess zum Software-Entwicklungsprozess. Softwaretechnik-Trends 21(1), 4–5 (2001)

    Google Scholar 

  139. Spillner, A.: Management des Testprozesses von Anfang an—das W-Modell. Lect. Notes Inform. P-23, 65–76 (2002)

    Google Scholar 

  140. Kruchten, P.: The Rational Unified Process: An Introduction. Addison-Wesley, Boston (2003)

    Google Scholar 

  141. Sommerville, I., Kotonya, G.: Requirements Engineering: Processes and Techniques. Wiley, New York (1998)

    Google Scholar 

  142. Lim, M., Sadeghipour, S.: Werkzeugunterstützte Verknüpfung von anforderungen und tests—voraussetzung für eine systematische qualitätssicherung. Softwaretechnik-Trends 28(3), 32–33 (2008)

    Google Scholar 

  143. Tochtrop, G.: Testexperte als Anforderungsmanager—Ein Erfahrungsbericht. Softwaretechnik-Trends 28(3), 34–37 (2008)

    Google Scholar 

  144. Martin, R.C.: Agile Software Development: Principles, Patterns, and Practices. Prentice Hall, Upper Saddle River (2003)

    Google Scholar 

  145. Shore, J., Warden, S.: The Art of Agile Development. O’Reilly, Beijing (2007)

    Google Scholar 

  146. Warden, S., Shore, J.: The Art of Agile Development: With Extreme Programming. O’Reilly Media, Beijing (2007)

    Google Scholar 

  147. Adzic, G.: Bridging the Communication Gap: Specification by Example and Agile Acceptance Testing. Neuri Limited, London (2009)

    Google Scholar 

  148. Cohn, M.: Succeeding with Agile: Software Development Using Scrum. Addison-Wesley, Boston (2009)

    Google Scholar 

  149. Schwaber, K.: Agile Project Management with Scrum. Microsoft Press, Redmond (2004)

    Google Scholar 

  150. Beck, K.: Test-Driven Development by Example. Addison-Wesley, Boston (2002)

    Google Scholar 

  151. Koskela, L.: Test driven: practical tdd and acceptance tdd for java developers. Manning Publications, Greenwich (2007)

    Google Scholar 

  152. Astels, D.: Test Driven Development: A Practical Guide. Prentice Hall, Upper Saddle River (2003)

    Google Scholar 

  153. Majchrzak, T.A.: Best practices for the organizational implementation of software testing. In: Proceedings of the 43rd Annual Hawaii International Conference on System Sciences (HICSS-43), pp. 1–10. IEEE Computer Society (2010)

    Google Scholar 

  154. IEEE, The Institute of Electrical and Electronics Engineers, Inc.: IEEE Std 829-1998: IEEE Standard for Software Test Documentation. New York (1998)

    Google Scholar 

  155. Konradt, U., Sarges, W. (eds.): E-Recruitment und E-Assessment: Rekrutierung, Auswahl und Beratung von Personal im Inter- und Intranet. Hogrefe, Göttingen (2003)

    Google Scholar 

  156. Stamelos, I.: Software project management anti-patterns. J. Syst. Softw. 83(1), 52–59 (2010)

    Article  Google Scholar 

  157. Brown, W.J., III, H.W.S.M., Thomas, S.W.: Anti Patterns in Project Management. Wiley, New York (2000)

    Google Scholar 

  158. Hitchcock, L.: Industry certification: value, validity, and a place for SoDIS. SIGCSE Bull. 37(4), 59–63 (2005)

    Article  Google Scholar 

  159. Hitchcock, L.: Industry certification and academic degrees: complementary, or poles apart? In: Proceedings of the 2007 ACM SIGMIS CPR Conference on Computer Personnel Research: The Global Information Technology Workforce, SIGMIS CPR ’07, pp. 95–100. ACM, New York (2007)

    Google Scholar 

  160. Ketchel, J.S.: Certification for the computer professional—individual reparation strategies. In: Proceedings of the ACM ’81 Conference, ACM ’81, pp. 234–238. ACM, New York (1981)

    Google Scholar 

  161. Lawson, S.: DB2(R) for z/OS(R) Version 8 DBA Certification Guide. IBM Press (2004)

    Google Scholar 

  162. Stanek, W.: Microsoft Vista Certification Exams in a Nutshell. O’Reilly Media, Beijing (2007)

    Google Scholar 

  163. Redbooks, I.: IBM Tivoli Monitoring V 6.1. Vervante (2006)

    Google Scholar 

  164. Sybex Inc.: Java 2 Certification Virtual Test Center. SYBEX Inc., Alameda (2001)

    Google Scholar 

  165. Manning, W.: SCJP Sun Certified Programmer for Java 6 Exam. Emereo Pty Ltd, London (2009)

    Google Scholar 

  166. Coggeshall, J., Tabini, M.: The Zend PHP Certification Practice Test Book—Practice Questions for the Zend Certified Engineer Exam. Marco Tabini & Associates (2005)

    Google Scholar 

  167. Shuja, A., Krebs, J.: IBM Rational Unified Process Reference and Certification Guide: Solution Designer. IBM Press (2007)

    Google Scholar 

  168. Graham, D., Veenendaal, E.V., Evans, I., Black, R.: Foundations of Software Testing: ISTQB Certification. International Thomson Business Press (2008)

    Google Scholar 

  169. Bradtke, R.: ISTQB 100 success Secrets—ISTQB Foundation Certification Software Testing the ISTQB Certified Software Tester 100 Most Asked Questions. Emereo Pty Ltd, London (2008)

    Google Scholar 

  170. Black, R.: Advanced Software Testing—Vol. 1: Guide to the ISTQB Advanced Certification as an Advanced Test Analyst. Rocky Nook (2008)

    Google Scholar 

  171. http://www.google.de/search?q=testing+certification

  172. http://www.softwarecertifications.org/qai_cste.htm

  173. http://www.stqc.nic.in/

  174. http://knowledge-department.de/seminare.html

  175. http://www.junit.org/

  176. http://sourceforge.net/projects/cppunit/

  177. http://htmlunit.sourceforge.net/

  178. http://seleniumhq.org/

  179. Brössler, P., Siedersleben, J.: Softwaretechnik: Praxiswissen für Softwareingenieure. Hanser, München (2000)

    Google Scholar 

  180. Majchrzak T.A.: Technische aspekte des erfolgreichen testens von software in unternehmen. In: Knoop, J., Prantl, A. (eds.) Schriftenreihe des Instituts für Computersprachen, Bericht 2009-X-1: 15. Kolloquium Programmiersprachen und Grundlagen der Programmierung, pp. 193–207. Technische Universität Wien, Maria Taferl (2009)

    Google Scholar 

  181. Fewster, M., Graham, D.: Software Test Automation: Effective Use of Test Execution Tools. ACM Press, New York (1999)

    Google Scholar 

  182. Crevier, D.: AI: The Tumultuous History of the Search for Artificial Intelligence. Basic Books, New York (1994)

    Google Scholar 

  183. Hendler, J.: Avoiding another AI winter. IEEE Intell. Syst. 23(2), 2–4 (2008)

    Article  Google Scholar 

  184. Menzel, M.: Software-Testautomatisierung: Leitfaden für die effiziente Einführung. Vdm Verlag Dr. Müller (2006)

    Google Scholar 

  185. Bates, C.: Experiences with test automation. In: Fewster, M., Graham, D. (eds.) Software Test Automation: Effective Use of Test Execution Tools, ACM Press, New York (1999)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Tim A. Majchrzak .

Rights and permissions

Reprints and permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Majchrzak, T.A. (2012). Software Testing. In: Improving Software Testing. SpringerBriefs in Information Systems. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-27464-0_2

Download citation

Publish with us

Policies and ethics