鉴于我有一个像这样获得的ITestCase
对象
ITestCase tc = project.TestCases.Find(2034);
其中project
是
ITestManagementTeamProject
类型的对象
TfsTeamProjectCollection tfs = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(new Uri(tfsLocation));
ITestManagementService testService = tfs.GetService<ITestManagementService>();
return testService.GetTeamProject(projectName);
考虑到我对该测试用例没有任何先前的状态知识,我如何获得该特定测试用例的所有共享步骤引用(甚至不知道是否存在一个)。 / p>
请帮忙。
答案 0 :(得分:1)
有一个 ISharedStepReference Interface 来从测试用例中调用共享步骤。您只需使用 FindSharedStep 方法从服务器返回共享步骤定义。供您参考的示例代码:
public ISharedStep tstSharedStep { get; private set; }
public ISharedStepReference tstSharedStepRef { get; private set; }
foreach (ITestAction tstAction in tstCase.Actions)
{
tstSharedStep = null;
tstSharedStepRef = tstAction as ISharedStepReference;
if (tstSharedStepRef != null)
{
tstSharedStep = tstSharedStepRef.FindSharedStep();
foreach (ITestAction tstSharedAction in tstSharedStep.Actions)
{
ITestStep tstSharedTestStep = tstSharedAction as ITestStep;
resultData.Step = Regex.Replace(tstSharedTestStep.Title, @"<[^>]+>| ", "").Trim();
resultData.ExpectedResult = Regex.Replace(tstSharedTestStep.ExpectedResult, @"<[^>]+>| ", "").Trim();
}
}
else {
// regular step action
}
}