# Install testscript with Homebrew

Integration tests for command-line applications in .txtar format. Version 1.15.0 via Homebrew; verified 2026-07-26.

## Install

```sh
sudo av install brew:testscript
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install testscript
```

  Evidence: local Homebrew formula metadata

## Package facts

- **Package key:** brew:testscript
- **Package manager:** Homebrew
- **Version:** 1.15.0
- **Source summary:** Integration tests for command-line applications in .txtar format
- **Homepage:** <https://github.com/rogpeppe/go-internal/tree/master/cmd/testscript>
- **Repository:** <https://github.com/rogpeppe/go-internal>
- **Last updated:** 2026-07-26T00:50:38+02:00
- **Generated:** 2026-08-03T19:37:03+00:00

## Executables

- testscript (alias)

## Install behavior

- Bottle: not available

## Freshness

- Page generated: 2026-08-03
- Package-manager version: 1.15.0
## Project history and usage

testscript is a small Go-oriented command and package for running filesystem-based command scripts, often stored as txtar files, in fresh temporary work directories.

### Project history

The rogpeppe/go-internal repository was created in September 2018 and describes itself as selected Go-internal packages factored out from the standard library. The testscript package source carries Go Authors copyright notices from 2018 and documents the same script-testing style used around Go command tests.

The Homebrew formula packages the cmd/testscript executable from that repository rather than a large standalone application. Its command README says testscript runs scripts in fresh temporary work directory trees and is designed for self-contained reproductions of command sequences.

### Adoption history

testscript's adoption is mostly inside the Go developer-tools niche: Go projects use it to write integration-style command tests with embedded fixture files, expected stdout and stderr checks, and temporary working trees.

In package-manager terms it is a niche but useful binary: installing it gives developers a direct runner for .txtar or .txt scripts without embedding it into a Go test harness.

### How it is used

The command runs files passed on the command line, supports environment passthrough with -e, updates embedded expected files with -u, and can preserve the temporary work directory with -work for debugging.

The package API is used from Go tests with testscript.Run, where a testdata directory contains txtar or txt scripts and each script defines a subtest.

### Why package nerds care

testscript is the kind of tool package nerds notice because it turns a testing convention into a standalone command. It is especially relevant for maintainers of CLIs, compilers, formatters, and other command-line programs where golden command transcripts are easier to review than custom Go test code.

Its use of txtar keeps test fixtures and scripts in one text file, making it friendly to source-control review and reproducible bug reports.

### Timeline

- 2018: rogpeppe/go-internal repository created and testscript package documentation appears with Go Authors copyright.
- 2018: Example txtar module proxy data in the command README uses a 2018 timestamp, matching the Go modules testing era.
- 2026: Repository metadata shows continued updates.

### Related projects

- Go cmd/go tests, golang.org/x/tools/txtar, go-internal/goproxytest, Go module proxy testing, and command-line integration test harnesses.

### Sources

- <https://github.com/rogpeppe/go-internal repository metadata>
- <https://github.com/rogpeppe/go-internal/tree/master/cmd/testscript README>
- <https://pkg.go.dev/github.com/rogpeppe/go-internal/testscript>
- input.source_facts.package-manager


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals


## Combined YAML source

View the package source record on GitHub. [combined/testscript.yml](https://github.com/mxcl/pkgdb/blob/main/combined/testscript.yml)


## Sources

- pkg.so package database
- Geiger risk classifier
- curated package history
- pkgdb category and tag curation
- cross-ecosystem install command graph
