# What is OpenHTF? URL: /what-is-openhtf OpenHTF is Google's open-source Python framework for hardware testing. History since 2016, who maintains it today, who uses it, what it does and does not do. **OpenHTF** (Open Hardware Testing Framework) is an open-source Python framework for writing the tests that run against physical products: functional tests on a PCB, end-of-line tests on an assembled unit, burn-in and environmental tests, calibration routines. It was created at Google, is licensed under Apache 2.0, and is installed with `pip install openhtf`. A test is a Python script. OpenHTF supplies the structure around it: Test steps are phases — functions the framework runs in order, with timeouts, retries, guaranteed teardown, early stop and conditional branches. Values are declared with validators (ranges, regex, custom functions) and units; the framework computes pass/fail and stores value, limits and unit in the record. See Measurements. Plugs wrap instruments, the DUT's interfaces and the operator, with a managed lifecycle (created before the test, torn down after). A browser Operator UI shows live phases and measurements and handles prompts ("scan the serial number", "press the button"). Every run produces a structured test record — outcome, phases, measurements, logs, attachments — written to JSON or any sink. **Not a test executive with a GUI editor.** Tests are code, versioned in git. There is no drag-and-drop sequence editor like NI TestStand's. **Not a database or analytics tool.** OpenHTF writes one record per run and stops. Storage, yield, Cpk and traceability are left to whatever consumes the records — a folder of JSON, a homegrown database, or a product like TofuPilot. **Not an instrument driver library.** Plugs are your code around PyVISA, pyserial, pymodbus or a vendor SDK. A few plugs ship in the box (ADB, Fastboot, serial capture). **Not a unit-test runner.** It does not discover `test_*` functions or run assertions the way pytest does; a run is one DUT through one sequence. When What 2016 Open-sourced by Google (v1.0.0, August 2016). Built for the hardware teams behind Google's consumer devices. 2017–2018 1.1 → 1.3: new Angular web GUI, improved logging, station discovery. 2022 v1.5.0: Python 3.7 minimum, many fixes accumulated over four years. March 2025 1.6.0 "roll-up" release: Python 3.10 minimum, protobuf 5, modern packaging. 1.6.1 followed. 2026 Active development continues on `master` (version 1.6.2 in `pyproject.toml`), maintained by a team at Waymo. The full list is on Releases. OpenHTF is maintained by engineers at **Waymo** (Alphabet), where it is used in production. In 2025 the TofuPilot team visited the original authors in Mountain View and spoke with the current lead maintainer; the framework is maintained by a dedicated group of about five engineers, with no internal fork and no breaking changes planned. The repository is github.com/google/openhtf — 720+ stars, 230+ forks as of September 2026. Companies known to run OpenHTF in production include Google, Waymo, Sony, STMicroelectronics and research groups at UC Berkeley. The user base is hardware teams that already write Python: robotics, consumer electronics, automotive, aerospace and medical devices, from prototype bring-up through high-volume manufacturing. OpenHTF vs pytest — the most common question from software-minded teams. OpenHTF vs Robot Framework — keyword-driven vs code-first. OpenHTF vs NI TestStand / LabVIEW — open-source Python vs a commercial test executive.