0

C#で記述されたコマンドレットをテストするための一般的な方法はありますか?私はこのようなものに興味があります:

[Test]
public void Test1()
{
    var cmdlet = new MyCmdlet();
    cmdlet.Property1 = "something 1";
    cmdlet.Property2 = "something 2";

    var actualOutput = Execute(cmdlet);

    AssertCmdLetOut(expectedOutput, actualOutput);  
}
4

2 に答える 2

0

あまりエレガントではありません。しかし、それでも何もないよりも:ここに

于 2013-01-14T14:57:57.710 に答える
0

次のコマンドレットを想定します。

[Cmdlet(VerbsCommon.Get, "Lorem")]
public class LoremCmdlet : Cmdlet
{
    protected override void ProcessRecord()
    {
        WriteObject ("Lorem Ipsum");
    }
}

サンプルの xunit テストは次のようになります。

public class LoremCmdletTests
{
    [Fact]
    public void Should_Return_a_Canoncial_String()
    {
        // arrange
        LoremCmdlet cmdlet = new LoremCmdlet();
        string actual = null;

        // act
        IEnumerator result = cmdlet.Invoke().GetEnumerator();
        result.MoveNext();
        actual = result.Current.ToString();

        // assert
        Assert.Equal("Lorem Ipsum", actual);
    }

}
于 2019-01-10T20:35:34.480 に答える