0

私は現在、FitSharp と dbfit の .net 実装を使用して、Fitnesse をセットアップしています。

URL の送信またはコマンド ラインからテストまたはスイートをトリガーする方法を理解しています。例:

java -jar fitnesse-standalone.jar -c "MyTest?test&format=text"

私が理解できないのは、このクエリ文字列で変数値を送信する方法です。

そのため、Where 句で参照される Fitnesse 変数を持つ Sql ステートメントを含むテストがあり、この変数の値が兄弟の静的ページで定義されている場合、コマンド ラインからこのテストを実行できるようにしたいと考えています。静的ページの値をオーバーライドするこの変数の値を送信します。何かのようなもの:

java -jar fitnesse-standalone.jar -c "MyTest?test&format=text&${myVar}=abc"

これはまったく可能ですか?

ありがとうマーク

4

1 に答える 1

0

コマンド ラインから変数を渡すには 2 つの方法があり、どちらも環境変数を使用します。

(1) 環境変数を定義します (または既存のものを特定します)。汎用システム変数 (%TMP%や など%HOMEPATH%) や独自のユーザー定義変数 ( など%JAVA_HOME%) を使用したり、独自の変数を作成したりできます。私の短い Fitnesse ランチャー (.CMD ファイル) は次のとおりです。

set SEED=%RANDOM%
set FITNESSE_PORT=9999
java -jar fitnesse-standalone.jar -p %FITNESSE_PORT% -e 0

FITNESSE_PORT変数は、次の行で使用するためだけに定義されています。ただし、変数には魔法のSEEDような効果があります。セッションごとに一意の値を生成することで、複数の人が同じテストを同時に実行できるようにします。(これは、各ユーザーが独自の FitNesse サーバーを実行していることを前提としているため、それぞれが固有のセッションを持つことになります。) 次に、シードに関連する ID を定義してテストを計測します。

!define TestClient (MyTestClient_${SEED})

(2) FitNesse ランナーをインスタンス化する Java プロセスのみを対象とする環境変数設定を渡します。この手法では、実装が異なるだけでまったく同じ結果が得られます。

java -DSEED=%RANDOM% -jar fitnesse-standalone.jar -p %FITNESSE_PORT% -e 0

これにより、FitNesse 内でまったく同じ結果が得られ、%SEED%環境変数 asにアクセスできるようになります${SEED}

詳細については、Simple-Talk.com で公開されている、FitNesse を使用した受け入れテストに関する私の 7 部構成のシリーズのパート 2を参照してください。

于 2014-01-11T23:01:59.793 に答える