Back to browse
GitHub Repository

Testing framework for shell commands with declarative syntax.

1 starsPython

Shellspec – DSL to Test CLIs

by itsfarseen-1·Feb 21, 2026·2 points·0 comments

AI Analysis

MidSolve My Problem

Yet another CLI test framework; BATS, Aruba, and pytest-shell already solve this.

Strengths
  • Single-file distribution with minimal dependencies (pexpect); trivial to integrate.
  • DSL is genuinely readable: `$. command args` and `?. stdout expected` are clearer than shell assertion boilerplate.
  • Handles interactive testing (pexpect-based) and file verification, covering a real testing gap.
Weaknesses
  • Crowded space with mature alternatives: BATS (shell-native), pytest + subprocess, Aruba (Ruby-focused), all well-established.
  • No clear differentiation: readability alone doesn't justify switching when existing tools work.
  • Zero GitHub activity, 0 stars; no community signal or maintenance commitment.
Target Audience

CLI tool developers, DevOps engineers, shell script maintainers.

Similar To

BATS · pytest-shell · Aruba

Post Description

Single file python script to test CLI apps using short and concise DSL.

Can test stdin/stdout/stderr interactions, files created, etc

Similar Projects