1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Bash スクリプトのユニットテスト入門: Bats を使ってみよう

Posted at

はじめに

Bash スクリプトは非常に便利ですが、その信頼性を確保するためには適切なテストが不可欠です。この記事では、Bats(Bash Automated Testing System)を使って Bash スクリプトのユニットテストを行う方法を紹介します。Bats は、Bash スクリプトをテストするための強力なツールで、シンプルな構文と使いやすさが特徴です。

インストールとセットアップ

最初に、Bats をインストールしセットアップします。Linux の場合、以下のコマンドを使用します。

sudo apt-get install

テスト対象の Bash スクリプト

この記事では、簡単な計算機スクリプト calculator.sh をテスト対象として使用します。

#! /bin/bash

add () {
  echo $(($1 + $2))
}

subtract () {
  echo $(($1 - $2))
}

テストの書き方

Bats を使用してテストを記述するには、Bats テストスクリプトを作成します。以下は、calculator.sh のテストを行うためのサンプルスクリプト calculator_test.bats です。

#!/usr/bin/env bats

# テスト対象のスクリプトを読み込む
load 'calculator.sh'

# add 関数のテスト
@test "2 + 3 は 5 に等しい" {
  result="$(add 2 3)"
  [ "$result" -eq 5 ]
}

# subtract 関数のテスト
@test "5 - 2 は 3 に等しい" {
  result="$(subtract 5 2)"
  [ "$result" -eq 3 ]
}

このテストスクリプトでは、load コマンドを使用してテスト対象のスクリプトを読み込み、@test ブロック内でテストケースを定義しています。

テストの実行

テストを実行するには、ターミナルで次のコマンドを実行します。

bats calculator_test.bats
 ✓ 2 + 3は5に等しい 
 ✓ 5 - 2は3に等しい 

2 tests, 0 failures

Bats はテストを実行し、各テストケースの結果を表示します。このサンプルでは、calculator.sh スクリプトの addsubtract 関数が正しく動作することを確認するテストケースを含んでいます。

結論

Bats を使用すると、Bash スクリプトのユニットテストを簡単に実行できます。テストはスクリプトの品質を向上させ、バグを早期に発見するのに役立ちます。ぜひ Bats を試して、Bash スクリプトの信頼性を高めましょう。

これで、Bats を使った Bash スクリプトのユニットテストについてのブログ記事の形式ができました。記事にはもちろん詳細な説明やスクリプトの詳細が必要ですが、この基本的な構造をベースに拡充していくことができます。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?