はじめに
Ranorexの起動と一緒に何か処理を追加したいけど、
Ranorexスクリプト作っちゃったし、改修は正直言って面倒くさい・・・
こんな経験はございませんか?
はい、私もよくこんなことを考えていました。
気になって調べてみたところ、Ranorexは外部スクリプトからも起動可能で、
これを用いれば、Ranorexスクリプト自体をいじらなくても比較的簡単な制御なら
外部スクリプトからも出来そうです。
ということで今回はVBScriptを使って実際に試してみた結果を紹介したいと思います。
スクリプト作成
ということで早速、簡単ですがサンプルスクリプトを書いてみました。
shellオブジェクトを生成してコマンドライン実行を行う非常に簡易的なスクリプトですね。
実行するコマンドには、Ranorexのexeファイルを入れました。
(オプションの詳細を知りたい等、気になった方は調べてみてください)
サンプルスクリプト(Ranorextest.vbs)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
Option Explicit Dim objWShell Dim res Set objWShell = CreateObject("WScript.Shell") 'shellオブジェクトを生成 Const RanorexScriptPath = """C:\SampleTest\SampleTest\bin\Debug\SampleTest.exe""" res = objWShell.Run(RanorexScriptPath, 0, true) 'Ranorexテストexeを起動してリターンコードを受け取る If res = 0 then WScript.Echo("Ranorex Success!!!") else WScript.Echo("Ranorex Failed !!!") end If Set objWShell = Nothing '後片付け |
実行するRanorexのexeファイルはこんな感じ
通常はこんなものあり得ませんが、動作確認用にメモ帳を起動するだけのものを用意しました。
スクリプト実行
では、VBScriptを実行してみましょう
Ranorexのexeが開始され、メモ帳の起動が成功しました!
Ranorexのexeの実行が終わったら、VBScriptからもメッセージを出力していますね。
最後に
こちらの方法は応用次第で色々できて、例えばこんなこともできました。
・グローバルパラメータをVBScript側から指定したものに置き換えて実行
・Ranorexテストの実行結果(リターンコード)を取得して処理を分岐する
(テストが成功していたら、レポートファイルを所定の場所に退避するとか、
失敗していたら、一定間隔後に再度テストを起動するとか)
最後に、Ranorexの外部スクリプトでの扱いに関しては、こちらのページが参考になるかと思います。
興味がありましたらこちらを読んで試してみてください。