-
Notifications
You must be signed in to change notification settings - Fork 0
hsptestの実行方法
hsptestを実行するには、以下のようにコマンドを実行します。
hsptest [options] [path...]
-
hsptestは引数無しで実行すると、カレントディレクトリに含まれるテストスクリプトを実行します。
-
[path...]
にディレクトリを与えると、そのディレクトリに含まれるテストスクリプトを実行します。 -
[path...]
にテストスクリプトファイルを与えると、そのテストスクリプトのみを実行します。 -
ディレクトリ、テストスクリプトは複数与えることができます。
オプション | 説明 |
---|---|
-v , --verbose
|
テスト結果ごとに結果を出力します |
-s , --stdout
|
テスト実行中にHSPランタイムから出力された文字列を表示します |
-l , --logfile
|
LOGFILEで指定したファイルにテストログを出力します |
-r , --runtime
|
テストを実行するデフォルトのランタイム名を指定します。ランタイム名はランタイム実行ファイルから.exe を除いたものです(例:hsp3 , hsp3utf , hsp3cl など) |
--stop |
テストが全て終了したときにストップします(hsptestをHSPエディタの外部ツールとして実行するときにコンソールが閉じないので便利です) |
--openlog |
hsptestが終了したときにHSPスクリプトエディタでログを開きます |
-h , --help
|
ヘルプを表示します |
--version |
hsptestのバージョン情報を表示します |
hsptestのテスト結果をテストごとに出力するには-v
(--verbose
)オプションを付けます。
hsptest -v
hsptest --verbose
以下のように、テストごとにその結果が表示されます。
テストが失敗したときは、その原因を表示します。
> hsptest -v
================================== test session starts ===================================
HSP 3.6.0.7, hsptest 0.8
collected 3 tests
test_example.hsp::test1: PASSED [ 33%]
test_example.hsp::test2: PASSED [ 66%]
test_example.hsp::test3: FAILED at line 4 of ext.as: Divided by zero [100%]
========================== 1 failed, 2 passed in 0.14 seconds ============================
テスト中に標準出力から出力されたデータをキャプチャし表示するには-s
(--stdout
)オプションを付けます。
hsptest -s
hsptest --stdout
以下のように、テストごとの標準出力のキャプチャ結果が表示されます。
hsptest -s
================================== test session starts ===================================
HSP 3.6.0.7, hsptest 0.8
collected 3 tests
test_example.hsp ..F [100%]
-------------------- Captured stdout call in test_example.hsp::test2 ---------------------
sess
-------------------- Captured stdout call in test_example.hsp::test3 ---------------------
example
output
2
------------------------------------------------------------------------------------------
========================== 1 failed, 2 passed in 0.15 seconds ============================
テスト結果をログファイルとして出力するには-l
(--logfile
)オプションを付けます。
オプションの引数としてファイル名、またはファイルへのパスを与えてください。
hsptest -l result.txt
hsptest --logfile result.txt
テスト結果のログには以下のデータが含まれます
- HSP3のバージョン、hsptestのバージョン
- テストを行ったディレクトリ
- 成功したテスト、失敗したテストの数
- 失敗したテストの詳細
- テストが失敗した原因のソースコード行
- テスト失敗の理由
- テスト失敗時のコールスタック
- テストごとにキャプチャした標準出力
--openlog
オプションを指定すると、hsptestが終了したときにHSPスクリプトエディタでログファイルを開くことができます。
hsptest -l result.txt --openlog
テストはデフォルトでhsp3cl.exeをランタイムとして実行されます。
hsp3cl.exe以外のランタイムでテストを実行する場合は-r
(--runtime
)オプションを付けます。
オプションの引数としてランタイム名(ランタイム実行ファイルから.exeを取り除いたもの)を与えてください。
hsptest -r hsp3 #hsp3.exeをランタイムとする
hsptest --runtime hsp3utf #hsp3utf.exeをランタイムとする
ℹ️ ランタイムをテストスクリプトのアノテーションで指定している場合は、アノテーションのランタイム指定が優先されます。