是否可以从SpecFlow(1.7.1)步骤绑定类中访问MSTest TestContext?在生成的特征文件代码中有一个方法FeatureSetup,它将TestContext作为参数,但显然不对它做任何事情.
我找到了一种方法将参数传递给TestContext,然后从SpecFlow访问它们.
通过添加一个具有TestContext属性并将其AssemblyInit()方法标记为[AssemblyInitialize]的[TestClass],使其在runnig测试之前得到初始化,并且MSTest将能够填充TestContext.
{
[TestClass]
public class InitializeTestContext
{
public static TestContext Context { get; private set; }
[AssemblyInitialize]
public static void AssemblyInit(TestContext context)
{
Context = context;
}
}
}
Run Code Online (Sandbox Code Playgroud)
然后可以从我的BaseSteps类访问它:
{
public abstract class BaseSteps : TechTalk.SpecFlow.Steps
{
public string GetTestEnvironment()
{
TestContext testContext = InitializeTestContext.Context;
string testEnvironment = testContext.Properties["Environment"].ToString();
return testEnvironment;
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2278 次 |
| 最近记录: |