openskills.info
← Quality Engineer career guide

Software development

Quality Engineer timeline

How the field of a Quality Engineer got here: the sourced milestones from every published course of this career, on one axis.

1949 to 2025

188 milestones across 20 courses

  • Core
  • Supporting
  • Specialization

The axis stretches toward recent years, where most milestones fall. Bars count milestones per year; dots are single milestones.

Before 1990

12 milestones

  1. 1949

    Turing frames checking a large routine

    Alan Turing's paper treated checking a large routine as a distinct problem. It established an early foundation for reasoning about whether program behavior matches its intended operation.

  2. 1968

    NATO conference names the software crisis

    The NATO Software Engineering Conference documented the difficulty of producing reliable software at scale. Testing became part of a broader engineering response to quality and verification problems.

  3. 1972

    Program test methods symposium is held

    The Chapel Hill symposium collected work on program test methods and validation. It made testing methods a more visible subject of shared professional practice.

  4. 1976

    Software Reliability argues against developer testing

    Glenford Myers published a contrasting view that developers should not test their own code. The later TDD practice restored developer-written tests as part of programming.

  5. 1979

    Myers publishes The Art of Software Testing

    Glenford Myers presented testing as a discipline focused on finding errors rather than demonstrating that a program works. The framing influenced test-design teaching and practice.

  6. 1983

    IEEE 829 test documentation standard published

    IEEE 829 defined basic documents for dynamic software testing. It made test documentation a recognized part of organizing test work.

  7. 1988

    Gelperin and Hetzel describe testing's growth

    The article traced changing testing goals from debugging toward defect detection, evaluation, and prevention. It documented how testing had expanded beyond a final coding activity.

  8. 1988 Aug 10

    Transaction Processing Performance Council formed

    Eight companies formed the TPC to define reviewable transaction-processing benchmarks and publish verifiable performance results.

  9. 1988 Nov 14

    SPEC incorporated

    Workstation vendors created SPEC to replace inconsistent vendor claims with realistic, standardized comparative tests.

  10. 1989

    SUnit establishes the xUnit pattern

    Kent Beck's Smalltalk framework established the fixture-and-assertion structure later shared by xUnit frameworks. It made automated checks a routine part of writing a small unit of code.

  11. 1989 Nov

    TPC-A published

    The TPC published its first benchmark with transaction response-time and price reporting rules, making review conditions part of the result.

1990s

13 milestones

  1. 1991

    Taligent creates an early testing framework

    A testing framework created at Taligent had strong similarities to the later SUnit design. Framework support made repeatable developer tests practical.

  2. 1993

    Bach presents The Persistence of Ad Hoc Testing

    James Bach's conference talk examined why informal, unscripted testers often found important bugs. It marked an early public attempt to rehabilitate ad hoc investigation as skilled work.

  3. 1995 Oct

    Beck demonstrates TDD at OOPSLA

    Beck demonstrated the practice for Ward Cunningham at the OOPSLA conference in Austin. This bounds his rediscovery of TDD between the 1994 SUnit work and the demonstration.

  4. 1996

    First class devoted to exploratory testing

    Bach designed a class focused explicitly on exploratory testing. That material became a core of the Rapid Software Testing methodology and spread ET teaching beyond conference talks.

  5. 1997

    JUnit brings the pattern to Java

    Kent Beck and Erich Gamma released JUnit for Java. The framework helped make test methods, fixtures, and assertions a familiar part of everyday Java development.

  6. 1997

    JUnit brings xUnit practice to Java

    JUnit made repeatable automated unit tests a standard part of Java development workflows. Its conventions helped integrate automated checks with ordinary programming work.

  7. 1997

    JUnit establishes the Java xUnit baseline

    JUnit 0 uses TestCase subclasses and test-prefixed methods. It gives Java developers a repeatable test framework built around executable checks.

  8. 1998

    Extreme Programming describes writing tests first

    An early Extreme Programming article described writing the test before implementation. Test-first programming became part of the method's development rhythm.

  9. 1998

    Test First is elaborated into Test Driven

    Practitioners developed the idea through discussion on the C2 Wiki. The emphasis expanded from test order toward tests guiding design and implementation.

  10. 1998 Dec

    IEEE 829 revised

    IEEE revised 829 and defined the purpose, outline, and content of basic test documents. It retained a documentation focus without prescribing a testing methodology.

  11. 1998 Dec 15

    Apache JMeter 1.0 released

    The initial JMeter release established an open Java tool for generating application load and measuring responses.

  12. 1999 May 5

    WCAG 1.0 becomes a W3C Recommendation

    W3C published a common set of accessibility guidelines with checkpoints and priority levels. Evaluators gained a shared baseline for reviewing web content.

2000s

46 milestones

  1. 2000

    Fielding defines REST

    Roy Fielding's dissertation at the University of California, Irvine defined the Representational State Transfer architectural style. It gave resource-oriented HTTP APIs the vocabulary that most API tests still assume.

  2. 2000

    Session-Based Test Management is developed

    James and Jonathan Bach developed SBTM while supporting demanding exploratory work at Hewlett-Packard. Charters, uninterrupted sessions, and session sheets made informal testing reviewable without freezing every step.

  3. 2000 Sep

    Fowler and Foemmel publish the original Continuous Integration article

    The article described a shared source point, automated build and test, and daily integration. It gave teams a concrete CI practice reference beyond scheduled builds.

  4. 2000 Sep

    QuickCheck introduces executable random properties

    Claessen and Hughes presented properties as Haskell functions checked against generated inputs. The design established the property, generator, runner, and counterexample pattern used by later libraries.

  5. 2001

    Rapid Software Testing class expands

    Bach expanded exploratory teaching into the Rapid Software Testing class. The curriculum treated exploration as skilled scientific investigation rather than as a temporary substitute for scripts.

  6. 2001 Dec

    OWASP Foundation launches

    OWASP launched as an open community focused on improving software security. Its projects made application-security guidance broadly accessible to development teams.

  7. 2001 Dec 1

    OWASP launches

    OWASP launched as an open foundation for software security projects and guidance. Its later testing standards and tools gave practitioners shared public test material.

  8. 2002

    ISTQB established

    ISTQB was established as an international organization for software tester certification. Its syllabi spread common testing vocabulary.

  9. 2002

    JUnit 3 changes the Java baseline

    JUnit 3 becomes the next major Java baseline. The framework family becomes a familiar way to organize automated component checks.

  10. 2002

    OWASP Developer Guide 1.0 is published

    The original guide included material for web application penetration testing. That testing material later moved into the dedicated Web Security Testing Guide.

  11. 2002

    OWASP Developer Guide version 1.0 released

    The first Developer Guide established an early developer-facing reference for secure development practice.

  12. 2003

    Acceptance test-driven development gains adoption

    Fit and FitNesse helped acceptance test-driven development become an accepted practice. Examples moved toward collaboration among customer, development, and testing perspectives.

  13. 2003

    Test Driven Development: By Example is published

    Kent Beck's book presented the method through worked examples and named patterns. It became the central long-form reference for the red-green-refactor discipline.

  14. 2003

    The OWASP Testing Guide project begins

    OWASP began the project that became a structured web application testing framework. It separated detailed testing practice from the broader Developer Guide.

  15. 2003

    The test pyramid is sketched

    Mike Cohn developed the test automation pyramid in conversations with Lisa Crispin during 2003 and 2004. The metaphor connected test granularity to a portfolio rather than a single test type.

  16. 2003 Jun

    Burp Suite 1.0 launches

    The first Burp release combined an intercepting proxy with tools for inspecting and replaying web traffic. Manual web testing gained an integrated workstation model.

  17. 2003 Oct

    NIST SP 800-42 is published

    NIST documented a consistent approach to network security testing, including technique selection and prioritization. The publication established a public baseline for running a testing program.

  18. 2004

    A driven mode adds language clients

    The project added a server path that accepted commands from language-specific clients and worked around same-origin restrictions. This became the foundation for Selenium Remote Control.

  19. 2004

    py.test begins to take shape

    The py project renames std.utest to py.test and establishes collection concepts that remain in pytest. Python testing moves toward plain assertions and detailed failure output.

  20. 2004

    Selenium begins as web test automation

    Selenium began at ThoughtWorks as a reusable tool for testing a web application. It helped establish open-source browser automation as a common option for dynamic testing.

  21. 2004

    Selenium begins at ThoughtWorks

    Jason Huggins created JavaScriptTestRunner for an internal application, and the work became the open-source Selenium project. Browser-driven checks gained a reusable project and community.

  22. 2004

    Selenium Core begins at ThoughtWorks

    Jason Huggins created JavaScriptTestRunner for an internal application, then the project was opened for broader use. Its in-page JavaScript model established Selenium's first browser automation approach.

  23. 2004 Dec

    OWASP Testing Guide 1.0 is released

    The first Testing Guide release organized web security testing into a shared reference. Practitioners could base engagement coverage on named test areas.

  24. 2005

    Hudson is released

    Hudson introduced a Java-based open-source CI server and became a widely used alternative to CruiseControl. CI automation moved toward extensible build servers that teams could operate themselves.

  25. 2006

    Exploratory Testing Research Summit convenes

    Practitioners including Bach, Kaner, Bolton, and Hendrickson met to pressure-test shared definitions. The summit exposed shallow agreement on wording and pushed toward more precise descriptions of ET practice.

  26. 2006

    JUnit 4 adopts annotation-based tests

    JUnit 4 uses Java 5 annotations such as Test. Test authors no longer depend on the earlier naming convention to mark test methods.

  27. 2006

    Selenium IDE and Core mature

    Selenium Core was wrapped in a Firefox extension for record and playback, while a team worked toward Core 1.0. Browser automation became accessible without first writing a client program.

  28. 2006

    WebDriver development starts

    Simon Stewart began a browser-control approach that used native browser capabilities instead of injecting all control through page JavaScript. This created a second automation architecture alongside Selenium Remote Control.

  29. 2006 Jun 12

    Consumer-Driven Contracts article

    Ian Robinson distinguished provider, consumer, and consumer-driven contracts for service evolution. The consumer-driven contract became the provider contract derived from the union of consumer expectations.

  30. 2006 Sep

    Behavior-driven development is introduced

    Dan North published an account of behavior-driven development as a response to difficulties teaching TDD. The approach emphasized behavior language and examples that connect stakeholders and developers.

  31. 2006 Dec

    OWASP Testing Guide 2.0 is released

    The second release expanded and revised the community testing framework. It continued the move from informal checklists toward maintained test guidance.

  32. 2007

    WebDriver meets Selenium

    Simon Stewart presented WebDriver, which controlled browsers outside the page's JavaScript environment. Compatibility work led toward merging WebDriver with Selenium.

  33. 2007 Jan

    Mocks and stubs are distinguished in practice

    Martin Fowler separates state verification with stubs from behavior verification with mocks. The distinction sharpens decisions about when an interaction is part of a test contract.

  34. 2008

    Kaner publishes a refined ET definition

    After summit follow-up, Kaner published a widely endorsed definition emphasizing tester freedom and responsibility with parallel learning, design, execution, and interpretation.

  35. 2008

    Selenium and WebDriver merge

    The two projects combined their communities and roadmaps. The merger set the direction for WebDriver APIs to replace the original Selenium Remote Control approach.

  36. 2008

    SmallCheck adds bounded exhaustive generation

    SmallCheck and Lazy SmallCheck checked every value up to an increasing depth instead of sampling random values. Property-based testing gained a systematic generation alternative for small domains.

  37. 2008 Jul

    IEEE 829 broadened to software and system testing

    IEEE 829-2008 tied test-documentation breadth and depth to test-process tasks and integrity levels. It superseded the 1998 edition.

  38. 2008 Sep

    OWASP Testing Guide 3.0 is released

    Version 3 updated the web testing framework before the later version 4 restructuring. Versioned scenarios made cited test coverage easier to track.

  39. 2008 Sep 30

    NIST SP 800-115 supersedes SP 800-42

    NIST broadened its guide from network testing to technical information security testing and assessment. Planning, execution, analysis, reporting, and mitigation became one documented assessment process.

  40. 2008 Dec 11

    WCAG 2.0 becomes a W3C Recommendation

    WCAG moved to technology-neutral, testable success criteria with separate supporting guidance. Audits could state conformance at Levels A, AA, or AAA against a stable standard.

  41. 2009

    Bolton distinguishes testing from checking

    Michael Bolton's Testing vs Checking essay separated algorithmic confirmation from investigative testing. The distinction sharpened how teams talk about automation beside exploratory work.

  42. 2009

    First devopsdays held in Ghent

    The first devopsdays conference brought software development and operations together as one technical conversation.

  43. 2009

    The test automation pyramid reaches a wider audience

    Mike Cohn's book described the test automation pyramid, which was then commonly shortened to the test pyramid. Teams used it to discuss the balance between focused and broad tests.

  44. 2009 Aug

    pytest 1.0 adds fixtures and plugins

    py 1.0 introduces funcargs, fixtures, and a plugin architecture. These features make reusable setup and controlled test environments part of the Python testing workflow.

2010s

72 milestones

  1. 2010

    OWASP ZAP is released

    ZAP provided an open-source intercepting proxy and web application scanner under OWASP. Manual and automated dynamic tests could share one extensible tool.

  2. 2010 Jun

    Test-driven integration is described

    Google's testing blog showed an incremental integration approach that tests two components together before expanding the scope. It emphasized keeping the increment small enough to diagnose failures.

  3. 2010 Nov

    pytest becomes a separate package

    pytest 2.0 is released as a package separate from py. The tool gains its own distribution path while retaining its test-running role.

  4. 2010 Dec

    Google publishes test-size constraints

    Google described Small, Medium, and Large tests with explicit limits on network, database, filesystem, and timing behavior. The model made speed and determinism enforceable properties rather than labels alone.

  5. 2011

    CircleCI launches

    CircleCI launched as CI/CD was still a niche practice for a smaller set of teams. Its arrival broadened the set of hosted CI options alongside self-managed servers.

  6. 2011 Jan

    The Hudson community proposes the Jenkins name

    The project proposed moving from the Hudson name to Jenkins after a dispute over trademark control. The renamed project retained the community-driven CI server lineage.

  7. 2011 Jan 12

    Contract Test defined

    Martin Fowler described contract tests as checks that test doubles still match the real external service. A failing contract test signals that the doubles and the consumer code need updating.

  8. 2011 Jul 8

    Selenium 2.0 ships

    Selenium 2.0 delivered stable WebDriver APIs for several languages while retaining compatibility with Selenium 1. The merged architecture became available as a mainstream release.

  9. 2011 Jul 8

    Selenium 2.0 ships WebDriver APIs

    Selenium 2.0 made WebDriver APIs a stable part of the project and included Grid support for distributed execution. The release retained compatibility for Selenium 1 users during migration.

  10. 2011 Aug

    SPDX 1.0 released

    SPDX published its first specification for packages, establishing a shared format for recording software package information.

  11. 2011 Aug 10

    Swagger Specification 1.0

    The first Swagger Specification described HTTP APIs in a machine-readable format. Later test generators, mock servers, and schema validators build on this lineage.

  12. 2011 Sep

    PropEr connects Erlang specifications to generators

    PropEr integrated Erlang types and function specifications with property-based generation. Existing specifications could participate directly in the valid-input model.

  13. 2012

    Postman appears as a Chrome Web Store HTTP client

    Abhinav Asthana publishes an early Postman Chrome app to simplify repeated API calls that teams were rebuilding with curl. Public adoption begins from that side project.

  14. 2012

    Postman appears on the Chrome Web Store

    A side project for testing and debugging APIs was published on the Chrome Web Store and announced in a Stack Overflow answer. It made interactive request building and scripted checks a common first step in API testing.

  15. 2012 May

    Test pyramid guidance focuses on cost and brittleness

    Martin Fowler explained the pyramid as a balance with more low-level tests than broad GUI tests. The discussion connected higher-level tests with slower execution and greater brittleness.

  16. 2012 Dec 17

    Navigation Timing became a W3C Recommendation

    Browsers gained a standardized interface for navigation timing, making client-side timing evidence portable across implementations.

  17. 2013

    Collections, scripts, and testing become the product core

    Postman's own platform timeline marks browser-based debugging plus reusable collections that others can run as the first durable workflow.

  18. 2013

    Dependency-Track begins

    Dependency-Track began as a project for analyzing software bills of materials, moving composition data toward ongoing project-level risk tracking.

  19. 2013

    Hendrickson publishes Explore It!

    Elisabeth Hendrickson's Explore It! gave practitioners concrete charter patterns and session tactics. ISTQB syllabi later cite it among primary exploratory-testing references.

  20. 2013

    ISO/IEC/IEEE 29119 begins its software-testing series

    The ISO/IEC/IEEE 29119 series organized common concepts, processes, documentation, and test-design techniques into international software-testing standards. It provided a shared structure for testing work across organizations.

  21. 2013

    Pact created at realestate.com.au

    A development team wrote Pact to handle integration testing across new Ruby microservices. It introduced consumer-driven contract testing, where consumer tests generate the contract that the provider verifies.

  22. 2013

    Pact written at realestate.com.au

    A development team at realestate.com.au wrote Pact, which generated the contract from consumer tests. Provider states followed, so one request could be verified under different provider conditions.

  23. 2013 Jan

    GitLab CI 2.0 adds concurrent per-project builds

    GitLab CI 2.0 changed its job processing so separate projects could run builds concurrently. This improved the feedback loop for teams using CI alongside their Git repositories.

  24. 2013 Aug

    ISO/IEC/IEEE 29119-2 test processes published

    Part 2 specified generic processes for governing, managing, and implementing software testing across lifecycle models.

  25. 2013 Nov

    Buildbox becomes available without an invitation

    Buildbox, the original Buildkite product name, left beta and opened signup without an invitation. Hosted CI became more accessible to teams that did not want to run every control-plane component themselves.

  26. 2014

    Collection Runner and CLI runner land; company forms

    Collections become a standardized runnable unit on the desktop and via a command-line runner for CI. The co-founders incorporate as interest and funding accelerate.

  27. 2014

    Collections become a standard runnable unit

    Postman collections became a standardized way to define, save, and run one or many API requests. A saved set of requests with tests could now run as a suite rather than one call at a time.

  28. 2014 Mar 20

    WAI-ARIA 1.0 becomes a W3C Recommendation

    WAI-ARIA standardized roles, states, and properties for dynamic interfaces. Accessibility tests increasingly examined both interaction behavior and semantics exposed to assistive technology.

  29. 2014 Jun

    First Cypress commit

    Work that became Cypress began with an initial commit on 5 June 2014, starting a private path toward in-browser test automation.

  30. 2014 Jun 5

    First Cypress commit

    Development of Cypress began with a first commit. The project pursued an in-browser runner aimed at modern web application testing.

  31. 2014 Jul 10

    WCAG-EM 1.0 is published

    The methodology documented scope definition, site exploration, representative sampling, auditing, and reporting. It supplied a repeatable structure for sampled website conformance evaluation.

  32. 2014 Sep

    OWASP Testing Guide 4.0 is released

    Version 4 presented a complete testing framework and detailed technical scenarios. The guide also emphasized integrating security testing across the software development life cycle.

  33. 2014 Sep

    QuickCheck drives information-flow model design

    Researchers used generated properties to guide increasingly complex abstract-machine models and reported short counterexamples for more than forty-five seeded defects. The work demonstrated property-based testing as a design tool for formal systems.

  34. 2015

    Documentation and code generation expand the collection

    Published documentation and multi-language snippets turn a collection into consumer-facing API guidance as well as a test artifact.

  35. 2015

    Google cautions against end-to-end-heavy suites

    Google's testing guidance explained the maintenance and execution costs of a strategy dominated by end-to-end tests. It reinforced choosing test levels according to feedback needs rather than automating every scenario at the same scope.

  36. 2015

    ISO/IEC/IEEE 29119-4 test techniques published

    Part 4 provided the test-technique part of the ISO/IEC/IEEE 29119 series.

  37. 2015 Mar

    Postman Sync enables cloud backup and collaboration

    Sync backs up collections to Postman's cloud and lets teammates share the same request libraries instead of trading JSON files by hand.

  38. 2015 Apr

    Google argues for focused integration checks

    Google advised replacing unnecessary end-to-end checks with smaller integration tests when they detect the same defect. The advice sharpened the distinction between a seam test and a full journey.

  39. 2015 May

    SPDX 2.0 adds package relationships

    SPDX 2.0 added multiple packages and relationships, making exchanged inventory more useful for components introduced through the supply chain.

  40. 2015 Nov

    Consumer-driven contract testing at Adopt

    The Thoughtworks Technology Radar placed consumer-driven contract testing in its Adopt ring. It described these tests as an essential part of a mature microservice testing portfolio.

  41. 2016

    Hypothesis adopts a unified internal representation

    Hypothesis 3.0 moved from a classic QuickCheck-style implementation to a byte-stream representation. The representation unified generation, replay, and shrinking across composed strategies.

  42. 2016

    Monitoring schedules collection runs in the cloud

    Scheduled monitoring extends runners so contract and integration checks can run continuously without a developer clicking Send.

  43. 2016 Jul

    JUnit 5 reaches its first milestone

    The first JUnit 5 milestone release introduced the modern JUnit Platform and Jupiter direction. It separated the platform for running tests from the programming model for writing them.

  44. 2016 Sep 23

    Spring Cloud Contract 1.0.0 released

    Spring Cloud Contract reached general availability with a contract DSL, generated acceptance tests, and WireMock stubs. It brought consumer-driven contracts to Spring applications for HTTP and messaging.

  45. 2016 Oct 13

    Selenium 3.0 retires Selenium Core

    Selenium 3 replaced the original Core implementation with WebDriver-backed behavior. Major browser vendors were then shipping their own driver implementations.

  46. 2017

    JUnit 5 introduces the Platform and Jupiter model

    JUnit 5 sets a Java 8 baseline and supports lambda-based dynamic tests. The platform separates test engines from the tools that discover and run tests.

  47. 2017

    Mock servers deploy from collection examples

    Mocking lets teams serve example-backed responses from a collection so clients can integrate before the real service is ready.

  48. 2017 Jan 18

    Revised Section 508 rule is published

    The United States Access Board updated federal information and communication technology requirements and coordinated them with WCAG and international standards. Federal compliance with the revised standards was required one year later.

  49. 2017 Feb

    k6 introduced as open source

    k6 brought JavaScript test code, a command-line interface, and automation-oriented execution into the performance-testing tool market.

  50. 2017 Feb 9

    Karate released as open source

    Peter Thomas released Karate while leading an API platform team at Intuit. It expressed API tests in a Gherkin-style syntax that did not require a general-purpose programming language.

  51. 2017 Jul

    Targeted property-based testing adds search objectives

    Targeted property-based testing combined generators with search-based optimization. Practitioners could guide exploration toward extreme values instead of relying only on the initial distribution.

  52. 2017 Jul 26

    OpenAPI 3.0.0 published

    The first OpenAPI major version after the Swagger donation revised the description structure and added Link objects that describe relationships between operations, which stateful test tools later follow.

  53. 2017 Oct

    Public beta and 1.0.0

    Cypress 1.0.0 opened the project from private beta, open-sourced the runner stack, and lifted prior access restrictions for local use.

  54. 2017 Oct 10

    Cypress enters public beta

    Cypress opened its source and public beta after years of private development. Its runner, desktop application, reporter, and supporting adapters became available to the wider community.

  55. 2018

    Team workspaces, comments, and search

    Workspaces become the collaboration boundary, with comments and search across collections and APIs for larger teams.

  56. 2018 Feb

    Practical Test Pyramid integrates contracts and seams

    Martin Fowler's practical guide presented unit, integration, contract, UI, and end-to-end checks as different feedback mechanisms. It showed database and service boundaries as focused integration targets.

  57. 2018 Jun 5

    WCAG 2.1 becomes a W3C Recommendation

    The update added success criteria addressing mobile use, low vision, and cognitive and learning disabilities. Existing audit programs could extend their WCAG 2.0 baseline without discarding it.

  58. 2018 Jun 5

    WebDriver becomes a W3C Recommendation

    W3C standardized platform-neutral and language-neutral interfaces and a wire protocol for remote browser control. Tool and browser implementations gained a common standards target.

  59. 2018 Aug

    Branching-process analysis predicts recursive generators

    Researchers applied branching-process mathematics to predict constructor counts in recursive QuickCheck generators. Generator distribution became something that could be analyzed before execution.

  60. 2018 Sep 20

    Cypress leaves beta

    Cypress declared its test runner generally available and retained the runner as free, open-source software. The accompanying service added hosted recording and parallel execution features.

  61. 2018 Oct

    Commercial launch

    Cypress launched commercially, pairing the open-source runner with a paid service path for teams adopting it beyond local experimentation.

  62. 2018 Oct

    GitHub announces GitHub Actions in beta

    GitHub announced Actions as a way to automate and customize development workflows from the repository platform. CI configuration could now sit directly beside pull requests, source, and repository events.

  63. 2018 Oct

    Limited public beta opens

    GitHub introduced GitHub Actions as a limited public beta. Repository automation became a first-class GitHub capability.

  64. 2018 Dec 9

    ISTQB Performance Testing syllabus reached general availability

    The specialist syllabus consolidated performance test types, workload modeling, measurement, planning, execution, and tool selection into a public curriculum.

  65. 2019

    API Builder and Public API Network

    Design support for OpenAPI, RAML, and GraphQL lands alongside a public network where producers publish collections for consumers to discover.

  66. 2019 May 29

    First OWASP API Security Top 10

    OWASP published a top-ten list dedicated to API risks, led by Broken Object Level Authorization. It gave API test suites a shared checklist for authorization and abuse cases.

  67. 2019 Aug

    CI/CD beta adds hosted runners

    The beta added built-in CI/CD with hosted Linux, macOS, and Windows runners. This established the runner model for build and test jobs.

  68. 2019 Oct 31

    ACT Rules Format 1.0 becomes a W3C Recommendation

    The format gave automated tools and manual methodologies a common way to document and share test rules. Tool results became easier to compare with explicit rule assumptions and examples.

  69. 2019 Nov

    GitHub Actions reaches general availability

    GitHub made Actions generally available and announced self-hosted runners, artifact caching, and ARM support. Teams could choose hosted or self-managed execution while keeping workflow definitions in GitHub.

  70. 2019 Nov

    Hypothesis architecture receives a research record

    The Journal of Open Source Software published Hypothesis as a new approach to property-based testing. The paper documented its generation and test-case-reduction architecture for engineering and research use.

2020s

45 milestones

  1. 2020

    Private API Network and public workspaces

    Enterprises get an internal catalog for microservice discovery, while public workspaces let producers expose forkable API work to the world.

  2. 2020 Feb 24

    Pending and work in progress pacts

    Pact introduced pending pacts, whose verification failures no longer fail the provider build, and work in progress pacts built on them. A consumer's changed expectations stopped blocking the provider pipeline.

  3. 2020 Apr

    NIST publishes SSDF version 1.0

    NIST published secure-development practices intended to integrate with each software development lifecycle implementation.

  4. 2020 May

    SPDX 2.2 adds SBOM-focused features

    SPDX 2.2 added SPDX Lite and support for package URLs and container images, improving practical software inventory exchange.

  5. 2020 May 6

    Playwright 1.0.0 is released

    Playwright reached its first stable major release with bundled Chromium, Firefox, and WebKit builds. One automation API could target the three browser engines.

  6. 2020 Nov

    Cypress 6.0 and cy.intercept

    Cypress 6.0 introduced cy.intercept as generally available network stubbing and spying, covering fetch and navigations beyond the older XHR-focused cy.route model, and deprecated cy.server and cy.route.

  7. 2020 Dec

    Environments add deployment protection rules

    Environments added protection rules and scoped secrets to deployment targets. Deployment approval became workflow configuration.

  8. 2021

    Vitest brings a Vite-native test runner

    Vitest starts as a test runner designed for Vite projects. JavaScript and TypeScript teams gain a runner aligned with their build environment.

  9. 2021

    WebSockets and the broader API platform launch

    Protocol support expands beyond classic HTTP toward WebSockets and a repositioning of Postman as a multi-protocol API platform with deeper lifecycle integrations.

  10. 2021 Feb 15

    OpenAPI 3.1.0 aligns with JSON Schema

    OpenAPI 3.1.0 made its Schema Object fully compatible with JSON Schema Draft 2020-12 and replaced the nullable keyword with type arrays. Validators and generators had to support the new schema dialect.

  11. 2021 Apr

    Workflow and job concurrency controls arrive

    GitHub added concurrency controls for workflow runs and jobs. Teams could cancel or queue overlapping work through YAML.

  12. 2021 May

    CycloneDX 1.3 describes composition completeness

    CycloneDX 1.3 added composition data that can state whether the recorded inventory is complete, incomplete, or unknown.

  13. 2021 May

    Executive Order 14028 emphasizes supply-chain security

    The order established baseline security standards for software sold to the US government and called for greater software visibility.

  14. 2021 Jun

    Google restates the need for unit and integration layers

    Google recommended a solid base of unit tests, integration testing for groups of components, and end-to-end checks for critical user journeys. The guidance treated the layers as complementary rather than substitutes.

  15. 2021 Jun

    Grafana Labs acquired k6

    The acquisition joined synthetic workload generation with a broader metrics and visualization ecosystem for correlated test analysis.

  16. 2021 Jul 4

    Branches, environments, and deployments in the broker

    The Pact Broker added first-class branches, environments, deployments, and releases, with record-deployment and record-release replacing tags. Mobile apps and APIs could then share one can-i-deploy workflow.

  17. 2021 Aug

    Experimental cy.session announced

    Cypress documented experimental session caching so suites could restore cookies and web storage instead of repeating full UI logins every test.

  18. 2021 Sep

    Ephemeral self-hosted runners support autoscaling

    Ephemeral runners and workflow_job webhooks enabled single-job self-hosted runners that autoscalers can manage.

  19. 2021 Oct

    ISO/IEC/IEEE 29119-2 second edition published

    The second edition replaced the 2013 test-process standard and continued to define processes for governing, managing, and implementing testing.

  20. 2021 Oct 13

    Selenium 4 rebuilds Grid

    Selenium 4 introduced a redesigned Grid with standalone, hub-and-node, and distributed operation plus GraphQL and OpenTelemetry support. It also added relative locators and new browser integration APIs.

  21. 2021 Oct 13

    Selenium 4.0.0 is released

    Selenium 4 rebuilt Grid for standalone and distributed operation and added browser-facing capabilities while preserving stable public APIs. End-to-end suites gained a modernized remote execution layer.

  22. 2021 Nov

    Reusable workflows become generally available

    Reusable workflows gained outputs, environment-secret support, and audit-log visibility. Organizations could centralize workflow logic.

  23. 2022 Jan

    CycloneDX 1.4 adds vulnerability disclosure support

    CycloneDX 1.4 added vulnerability disclosure and exploitability exchange support, connecting inventory data to vulnerability communication.

  24. 2022 Jan

    ISO/IEC/IEEE 29119-1 second edition published

    The second edition replaced the 2013 general-concepts standard and refreshed the common concepts for the series.

  25. 2022 Feb

    NIST SP 800-218 SSDF version 1.1 becomes final

    SP 800-218 replaced the original SSDF white paper and added secure-environment, provenance, and requirements guidance.

  26. 2022 Mar 4

    Bi-Directional Contract Testing launched

    PactFlow launched Bi-Directional Contract Testing as a PactFlow-exclusive feature. It compares a consumer contract with a provider's published specification instead of replaying consumer interactions.

  27. 2022 Apr 5

    SmartBear agrees to acquire PactFlow

    SmartBear announced a definitive agreement with DiUS to acquire PactFlow and its companion open source project, Pact.

  28. 2022 May

    Cypress 10 with component testing beta

    Cypress 10 rebuilt the App UX and integrated component testing into the same launcher as end-to-end, with cy.mount scaffolding and framework-aware setup.

  29. 2022 Jun

    RFC 9110 consolidates HTTP semantics

    RFC 9110 replaced earlier HTTP specifications with one definition of methods, status codes, and conditional requests. It is the reference for safe and idempotent methods and for codes such as 412 and 422.

  30. 2022 Nov

    Component testing generally available

    Cypress 11 promoted component testing to GA for React, Next.js, Angular, and Vue, stabilizing mount APIs after the beta period.

  31. 2022 Nov 4

    Selenium Manager enters the bindings

    Selenium 4.6 added the initial Selenium Manager integration across bindings. Driver discovery and setup could occur without a separately installed manager.

  32. 2022 Nov 10

    Pact Plugin Framework launched

    The Pact Plugin Framework went live, letting plugins add content types and transports such as Protobuf and gRPC. Contract testing with Pact extended beyond JSON over HTTP.

  33. 2022 Dec

    cy.session and cy.origin GA

    Cypress 12 made session caching and cy.origin generally available for end-to-end tests and introduced testIsolation defaults for clean browser context between tests.

  34. 2023

    OWASP API Security Top 10 revised

    The 2023 edition merged excessive data exposure and mass assignment into Broken Object Property Level Authorization and added Unrestricted Access to Sensitive Business Flows and Unsafe Consumption of APIs.

  35. 2023 Apr

    SLSA version 1.0 becomes final

    The first stable SLSA specification clarified provenance and artifact-verification guidance.

  36. 2023 Jul

    RFC 9457 updates problem details

    RFC 9457 obsoleted RFC 7807 and kept application/problem+json as the standard error body for HTTP APIs, giving tests a common shape to assert for error responses.

  37. 2023 Jul 31

    Selenium Manager adds browser management

    Selenium 4.11 added Chrome for Testing support and expanded compatibility diagnostics. Selenium Manager moved beyond locating drivers toward managing browser binaries in supported workflows.

  38. 2023 Oct 5

    WCAG 2.2 becomes a W3C Recommendation

    WCAG 2.2 added nine success criteria addressing accessibility for people with visual, physical, and cognitive disabilities. Audit baselines expanded while retaining the earlier WCAG 2 framework.

  39. 2023 Dec

    Artifacts v4 becomes generally available

    Artifact v4 made uploaded artifacts job-scoped and immutable. Artifact transfer needed to account for its compatibility boundary with earlier versions.

  40. 2024 Jan

    Cloud debugging and analytics emphasis

    Cypress Cloud messaging centered on Test Replay, flake detection, and CI optimization features that turn recorded runs into failure diagnosis rather than pass/fail alone.

  41. 2024 Apr

    QuickerCheck parallelizes execution and shrinking

    QuickerCheck evaluated parallel property execution and parallel counterexample reduction. It made the choice between deterministic shrinking and faster greedy shrinking explicit for costly properties.

  42. 2025

    CISA updates SBOM minimum elements

    CISA updated guidance for SBOM data, automation support, practices, processes, coverage, and frequency.