🍺 BREW Explorer

← all formulae

bash_unit

brew install bash_unit v2.3.3 GPL-3.0-only

Bash unit testing enterprise edition framework for professionals

14
30-day installs · #7781
39
90-day · #7962
228
365-day · #7027
635
★ GitHub stars · updated 6mo ago

GitHub topics

assertions bash tdd test-driven-development test-framework testing unit-testing unittest xunit

Links

Raw metadata
{
  "aliases": [],
  "alternatives": [],
  "build_dependencies": [],
  "categories": [],
  "caveats": null,
  "conflicts_with": [],
  "dependencies": [],
  "deprecated": 0,
  "deprecation_reason": null,
  "desc": "Bash unit testing enterprise edition framework for professionals",
  "disable_reason": null,
  "disabled": 0,
  "enrichment_fetched_at": "2026-06-20T23:35:46+00:00",
  "first_seen": "2026-06-20T23:34:18+00:00",
  "full_name": "bash_unit",
  "github_default_branch": "main",
  "github_last_commit_at": "2026-02-11T12:41:58Z",
  "github_readme_excerpt": "ifdef::backend-manpage[]\n= BASH_UNIT(1)\n\n== NAME\nendif::[]\n\nifndef::backend-manpage[]\nimage::img/bu_50.png[bash_unit]\nendif::[]\n\nbash_unit - bash unit testing enterprise edition framework for professionals!\n\n== Synopsis\n\n*bash_unit* [-f tap] [-p \u003cpattern\u003e] [-s \u003cpattern\u003e] [-r] [test_file]\n\n== Description\n\n*bash_unit* allows you to write unit tests (functions starting with *test*),\nrun them and, in case of failure, displays the stack trace\nwith source file and line number indications to locate the problem.\n\nNeed a quick start? The\nhttps://github.com/bash-unit/getting_started/[getting started project]\nwill help you get on track in no time.\n\nThe following functions are available in your tests (see below for detailed documentation):\n\n* `fail [message]`\n* `assert \u003cassertion\u003e [message]`\n* `assert_fail \u003cassertion\u003e [message]`\n* `assert_status_code \u003cexpected_status_code\u003e \u003cassertion\u003e [message]`\n* `assert_equals \u003cexpected\u003e \u003cactual\u003e [message]`\n* `assert_not_equals \u003cunexpected\u003e \u003cactual\u003e [message]`\n* `assert_matches \u003cexpected-regex\u003e \u003cactual\u003e [message]`\n* `assert_not_matches \u003cunexpected-regex\u003e \u003cactual\u003e [message]`\n* `assert_within_delta \u003cexpected num\u003e \u003cactual num\u003e \u003cmax delta\u003e [message]`\n* `assert_no_diff \u003cexpected\u003e \u003cactual\u003e [message]`\n* `skip_if \u003ccondition\u003e \u003cpattern\u003e`\n* `fake \u003ccommand\u003e [replacement code]`\n\nifndef::backend-manpage[]\nimage::img/demo.gif[demo]\nendif::[]\n\n_(by the way, the documentation you are reading is itself tested with bash-unit)_\n\n*bash_unit* is free software you may contribute to. See link:CONTRIBUTING.md[CONTRIBUTING.md].\n\n\n== Options\n\n*-p* _pattern_::\n  filters tests to run based on the given pattern.\n  You can specify several patterns by repeating this option\n  for each pattern.\n\n*-s* _pattern_::\n  skip tests which name matches the given pattern.\n  You can specify several patterns by repeating this option\n  for each pattern.\n  Tests will appear in *bash_unit* output as _skipped_.\n  (see also _skip_if_)\n\n*-r*::\n  executes test cases in random order.\n  Only affe",
  "github_repo": "bash-unit/bash_unit",
  "github_stars": 635,
  "github_topics": [
    "assertions",
    "bash",
    "tdd",
    "test-driven-development",
    "test-framework",
    "testing",
    "unit-testing",
    "unittest",
    "xunit"
  ],
  "homepage": "https://github.com/bash-unit/bash_unit",
  "homepage_og_description": null,
  "homepage_og_image": null,
  "homepage_title": null,
  "installs_30d": 14,
  "installs_365d": 228,
  "installs_90d": 39,
  "keg_only": 0,
  "keg_only_reason": null,
  "last_seen": "2026-06-20T23:34:18+00:00",
  "license": "GPL-3.0-only",
  "llm_generated_at": null,
  "llm_model": null,
  "name": "bash_unit",
  "oldnames": [],
  "one_liner": null,
  "optional_dependencies": [],
  "rank_30d": 7781,
  "rank_365d": 7027,
  "rank_90d": 7962,
  "raw_hash": "20ba9ef8735574a7",
  "recommended_dependencies": [],
  "revision": 0,
  "ruby_source_path": "Formula/b/bash_unit.rb",
  "tap": "homebrew/core",
  "test_dependencies": [],
  "uses_from_macos": [],
  "version_head": null,
  "version_stable": "2.3.3",
  "versioned_formulae": [],
  "why_use_this": null
}