Concepts · concept_software_testing · rev 2

Software Testing

Software testing is the dynamic validation that a system under test shows expected behavior on a finite set of test cases selected from a usually infinite execution domain.

Updated · rev 2 · Aliases:软件测试

The system under test may be a program, a product, an application, a service-oriented application, middleware, a composition of services, a system, a system of systems, or an ecosystem. A test case specifies the inputs, timing, procedure, and expected results required for an execution. The same input can correspond to different behavior in a different state or environment, so a set of test cases is usually a test suite. Dynamic validation requires executing the test suite on the system under test. Static techniques complement it and are covered in the Software Quality knowledge area.[1]

The Guide's top-level topics for this knowledge area are:

  • Software Testing Fundamentals
  • Test Levels
  • Test Techniques
  • Test-Related Measures
  • Test Process
  • Software Testing in the Development Processes and the Application Domains
  • Testing of and Testing Through Emerging Technologies
  • Software Testing Tools

Software-testing standards listed in the Guide's appendix include ISO/IEC/IEEE 29119-2:2021 (test processes), ISO/IEC/IEEE 29119-3:2021 (test documentation), and ISO/IEC/IEEE 29119-4:2021 (test techniques).[1]

Continue via relations

Relations page →

Mentioned in

  • No body mentions yet.

Sources

  1. Guide to the Software Engineering Body of Knowledge (SWEBOK Guide) v4.0a · Hironori Washizaki (ed.), IEEE Computer Society · 2026-08

    Chapter 5; Appendix B

    ↩ ↩