1

C# アプリケーションに FitNesse テストを実装しようとしています。最新の FitNesse jar と fitSharp .NET 2.2 4.0 ライブラリを使用しています。

Slim を使用してシナリオを正常に使用できました。しかし、技術に詳しくない聴衆にとってより読みやすいテストを作成するために、私は を実装することに興味があり、テスト用の一般的なデータ条件を作成するDoFixtures必要があると推測しています。SetUpFixtures

ただし、設定したデータをDoFixtureインスタンスに取得できないようです。私はいくつかのリソース ( Gojko のブックチーフを含む) を見てきましたが、この概念を個別に説明しているものはないようです。Visual Studio をデバッガーとしてテスト実行にアタッチしても、洞察は得られませんでした。些細な例を使用して、分析と構築を行うことができます。

誰かが次のような例を共有してくれませんか?

  • SetUpFixtureいくつかのデータを設定する クラス
  • DoFixtureSetUpFixture からのデータを使用する クラス
  • それらを呼び出すWiki構文?
4

2 に答える 2

1

SetUp が呼び出されなかったようです。Debugger.Launch()デバッグに使用

アップデート:

!|BirdCall|
|birdName|noise|
|duck|quack|

public class SkylarkBunting : fitlibrary.DoFixture
{
    public BirdCall BirdCall;

    public SkylarkBunting(BirdCall birdCall)
    {
        BirdCall = birdCall;
    }

    public string GetCall()
    {
        return BirdCall.Noise;
    }

    public string GetName()
    {
        return BirdCall.BirdName;
    }
}
于 2012-08-01T22:04:03.027 に答える
1

私は部分的な答えを得ました。

これらのクラスの使用:

public class BirdCall : fitlibrary.SetUpFixture
{
    public void BirdNameNoise(string birdName, string noise)
    {
        BirdName = birdName;
        Noise = noise;
    }

    public string BirdName; 
    public string Noise;

    public override string ToString()
    {
        return string.Format("BirdCall: {0}, {1}", BirdName, Noise);
    }
}

public class SkylarkBunting : fitlibrary.DoFixture
{
    public BirdCall BirdCall;
    public string Call;

    public Fixture CryOut()
    {
        BirdCall = new BirdCall();
        Call = BirdCall.Noise;
        return BirdCall;
    }

    public string GetCall()
    {
        return BirdCall.Noise;
    }

    public string GetName()
    {
        return BirdCall.BirdName;
    }
}

そして、この Wiki マークアップ:

!define TEST_RUNNER {C:\temp\fitsharp\Runner.exe}
!define COMMAND_PATTERN {%m -r fitnesse.fitserver.FitServer,c:\temp\fitsharp\fit.dll %p}
!path C:\temp\FitNesseIntegration\bin\Debug\FitnesseIntegration.dll

!|import|
|FitnesseIntegration|

!|FitNesseIntegration.Skylark.SkylarkBunting|

!3 Testing getting data from a setup fixture into a do fixture

!|cry out|
|bird name|noise|
|Tweetie|Caw!|

|check|call||
|check|get call||
|check|get name||
|check|bird call||

私は得る:

|check|call|null|
|check|get call|Caw!|
|check|get name|Tweetie|
|check|bird call|BirdCall: Tweetie, Caw!|

これは良いことです。ページを介して FitNesse によって注入された値でDoFixtureを実行することによって設定された変数が にあります。SetUpFixture

ただし、 Call が を返す理由を知りたいnullのですが。

于 2012-08-01T21:56:39.947 に答える