{
  "contentStorage": "postgres",
  "title": "Software Testing · History",
  "description": "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.",
  "url": "/en/concepts/software-testing/history.html",
  "entity": {
    "id": "concept_software_testing",
    "type": "concept",
    "title": "Software Testing",
    "slug": "software-testing",
    "aliases": [
      "软件测试"
    ],
    "summary": "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.",
    "status": "published",
    "categories": [
      "category-science-technology"
    ],
    "tags": [],
    "sources": [
      {
        "id": "s1",
        "title": "Guide to the Software Engineering Body of Knowledge (SWEBOK Guide) v4.0a",
        "author": "Hironori Washizaki (ed.), IEEE Computer Society",
        "date": "2026-08",
        "url": "https://ieeecs-media.computer.org/media/education/swebok/swebok-v4.pdf",
        "locator": "Chapter 5; Appendix B"
      }
    ],
    "createdAt": "2026-11-02T01:19:48+08:00",
    "updatedAt": "2026-11-02T01:19:48+08:00",
    "updatedBy": "user:admin",
    "revision": 2,
    "body": "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.[^s1]\n\n\nThe Guide's top-level topics for this knowledge area are:\n\n- Software Testing Fundamentals\n- Test Levels\n- Test Techniques\n- Test-Related Measures\n- Test Process\n- Software Testing in the Development Processes and the Application Domains\n- Testing of and Testing Through Emerging Technologies\n- Software Testing Tools\n\nSoftware-testing standards listed in the Guide's appendix include [[work_ieee_29119_2_2021_9591506|ISO/IEC/IEEE 29119-2:2021]] (test processes), [[work_ieee_29119_3_2021_9591575|ISO/IEC/IEEE 29119-3:2021]] (test documentation), and [[work_ieee_29119_4_2021_9591512|ISO/IEC/IEEE 29119-4:2021]] (test techniques).[^s1]",
    "url": "/concepts/software-testing.html",
    "lang": "en",
    "availableLangs": [
      "zh",
      "en"
    ],
    "conceptKind": "theme",
    "scopeNote": "One knowledge area of SWEBOK Guide v4.0a."
  },
  "entities": null,
  "lang": "en",
  "availableLangs": [
    "zh",
    "en"
  ],
  "infoFields": [
    {
      "key": "concept_kind",
      "label": "Concept kind",
      "value": "Theme"
    },
    {
      "key": "aliases",
      "label": "Aliases",
      "value": "软件测试"
    },
    {
      "key": "scope_note",
      "label": "Scope note",
      "value": "One knowledge area of SWEBOK Guide v4.0a."
    }
  ],
  "pagination": {
    "page": 1,
    "pageSize": 50,
    "total": 0,
    "pageCount": 0
  }
}