1

はじめに:
VS2012 には、自動化が予定されている一連の作業項目があります。VS2010 で SpecFlow を使用して一連の自動テストを作成しました。作業項目を自動テストに接続するには、作業項目を選択し、正確に 1 つのメソッドしかない自動テストを検索する必要があります。

欠点は、大量の TestMethods (および私たちが持っている) を使用すると、リストが非常に長くなることです。WorkItem を対応する TestMethod に接続するのは面倒な作業です。これにより、SpecFlow を使用しているため、多数のテスト (および TestMethod 名) が自動的に生成されます。また、チーム メンバーがシナリオの名前を変更すると、この TestMethod 名も変更され、WorkItem と自動テストの間の接続が切断されます。

欲しいもの:
自動化された作業項目ごとに選択できる単一の TestMethod を作成したいと考えています。この TestMethod はワークアイテム ID を取得し、その ID で始まるか、その ID を持つ SpecFlow タグ属性を持つ TestMethod を検索します。したがって、ワークアイテムの ID が必要です。

質問:
テストを開始したワークアイテムの ID を取得するにはどうすればよいですか?

4

1 に答える 1

4

Microsoft Test Manager によって実行されるテストのために、TFS の作業項目のテスト ケース ID を取得するためのソリューションを見つけました。

string tcId = TestContext.Properties["__Tfs_TestCaseId__"].ToString();

このメソッドがTestClassオブジェクト内にある場合。TestClassオブジェクトは自動的にインスタンスを取得しますTestContext。MTM は を使用して、実行TestContext中の に情報を提供してTestMethodいます。

(文書化されていない) プロパティの完全なリストは、InfoSupport のブログにあります

于 2013-08-16T11:15:29.867 に答える