我正在尝试在tfs api中更改测试用例的测试人员
在测试用例管理器中,我看到此测试人员:https://gyazo.com/03adc434225c4c5541f602bc954feaed
我尝试使用此测试程序创建并添加TestPointAssignment:
IdAndName idAndName = new IdAndName(testSuite.Id, testSuite.Title);
var assignment = testSuite.CreateTestPointAssignment(testCase.Id, idAndName, Tester);
testSuite.AssignTestPoints(new List<ITestPointAssignment>() { assignment });
但没有任何变化,仍然是同一个测试人员。
如何使用tfs api更改测试用例中的测试人员?
答案 0 :(得分:1)
要使用TFS API更改测试用例的测试程序,您可以尝试以下代码段:
string teamProjectName = "TeamProjectName";
TfsTeamProjectCollection tfsCollection = new TfsTeamProjectCollection(new Uri("http://serverName:8080/tfs/MyCollection"));
ITestManagementService testService = tfsCollection.GetService<ITestManagementService>();
ITestManagementTeamProject teamProject = testService.GetTeamProject(teamProjectName);
//get test point of a test case
ITestPlan tplan = teamProject.TestPlans.Find(testplanid);
ITestPoint point = tplan.QueryTestPoints("SELECT * FROM TestPoint WHERE TestCaseID = Testcaseid").FirstOrDefault();
IIdentityManagementService ims = tfsCollection.GetService<IIdentityManagementService>();
TeamFoundationIdentity tester = ims.ReadIdentity(IdentitySearchFactor.DisplayName, "Mike", MembershipQuery.Direct, ReadIdentityOptions.None);
//change tester for testcase
point.AssignedTo = tester;
point.Save();
答案 1 :(得分:0)
我相信你的问题是idAndName。
CreateTestPointAssignment
需要ITestPointAssignment
个对象的列表,其中每个对象包含:
我认为它失败了,因为您正在指定套件ID和名称,而不是配置ID和名称。
您可能已经意识到,每个测试人员都会被分配一个测试点,这是测试用例和配置的交集。在MTM中,您可以在整理 - &gt;中查看您的配置。 测试配置管理器。您可以在那里看到ID和名称,但在代码中,您可能希望通过套件的DefaultConfigurations
属性查询该列表。 (请注意,如果它为空,则表示它从其父级或祖先继承配置,您可能必须从那里获取值。)