初心者のWEBデザイン

HTML,CSS、その他WEBデザインに関する事を記述していきます。

Shell Script デバッグ コマンドbatsを使用する

Shell Scriptの静的コード解析でデバックするには
bashのオプションnoexecで行います。

静的コード解析は動作をさせるソースコードを実行せずに
問題があるか確認するデバック方法です。

#!/bin/bash
#noexec シェルオプションを有効にする
set -o noexec 

Shellcheckを使用する

ShellScriptを書く人は御用達の構文チェックサイトShellcheckで
チェックするのが、余計な手間いらずで簡単です。
www.shellcheck.net

batsコマンドを使用する動的テスト

batsコマンドのインストールは各OSのパッケージ管理ソフトで
インストールしてください。
Red-Hat系ならyumDebian系ならapt-get。Macならbrewとか。


テストを行うファイルの拡張子は.shではなく.batsとします。
冒頭にShebangは書かなくて大丈夫です。
Atomでパッケージで動作確認する場合にはShebangが記述されていると
Atombashだと認識してうまく動作しないことがあります。

@test テストの説明 {
  #Statement
  #Statement
}
@test 'True' {
  echo HelloWorld
}

@test 'False' {
  ech HelloWorld
}

#1..2
#ok 1 True
#not ok 2 False