0

ApprovalTests DiffReporter は、テストが失敗した場合、テストの実行後に差分ウィンドウをポップアップ表示しません。以下は私のコードです。

[UseReporter(typeof(DiffReporter))]
[TestClass]
public class ProjectEmployeeJsonTests
{
    [TestMethod]
    public void ToCommand()
    {
        var source = new EmployeeJson
        {
            firstName = "ABC",
            lastName = "TestCarrier"
        };

        var destination = new EmployeeCommand();
        var mapper = GetMapper();
        mapper.Execute(source, destination);

        Approvals.Verify(
            JsonConvert.SerializeObject(
                destination,
                Formatting.Indented));
    }
}

同僚のマシンの 1 つで、同じコードの差分ウィンドウがポップアップ表示されます。同じバージョンの Visual Studio を同じ設定で使用しており、どちらも差分ツールがインストールされていません。

ただし、VS 2012 (差分ウィンドウがポップアップ) でテストを実行できますが、VS2013 では実行できません。

バージョン: ApprovalTests.dll: 3.0.0.0 Visual studio: 2012 Professional、2013 Professional

ここで何か助けていただければ幸いです。ありがとう!

4

2 に答える 2

0

ドキュメントによると、「DiffReporter」属性を適用すると、「システム上で最も一致する DiffReporter のインスタンスが起動されます」。

私のマシンにインストールされているVisual Studio と Sourcegear の差分マージに付属している差分マージ レポーターが検出されなかった理由がわかりません。

tortoise svnのインストールはうまくいきました。tortoise diff ツールで diff ウィンドウが表示されます。

于 2016-07-27T08:55:12.233 に答える
0

これを実行して、何が起こるかを確認できますか?

Approvals.SetCaller();
Assert.IsTrue(VisualStudioReporter.INSTANCE.IsWorkingInThisEnvironment("a.txt"));
于 2016-07-24T05:27:43.710 に答える