AssemblyCleanup 不是 运行。
AssemblyCleanup Not being run.
我遇到一个问题,我的 [AssemblyCleanup]
方法没有被调用。
我目前正在构建一个自动化框架,并希望在我的测试前后完成一些 API 调用。从那以后,我找到了汇编 initialize/cleanup 方法,它们非常适合我需要做的事情。但是我无法将 [AssemblyCleanup]
方法获取到 运行。
我有一个基础 class,我的测试从中继承,这就是我希望放置 [AssemblyCleanup]
方法的地方。
我的class。
[TestClass]
public class TestBaseChrome: WebDriver
{
public TestContext TestContext { get; set; }
[TestInitialize]
public void Initialize()
{
//Do Stuff Here for tests
}
[TestCleanup]
public void Cleanup()
{
//used for end of test reporting
}
[AssemblyCleanup]
public static void EndOfSuiteActions()
{
//Stuff here when whole test suite finished
}
}
我看过示例 here and here 并表明 [AssemblyCleanup]
需要在具有 [TestClass]
属性的 class 中。如果我通过实际测试将 [AssemblyCleanup]
放在 class 中,它会按预期工作。但我希望我之前的所有 tests/after 测试都集中在一个地方。
如有任何建议,我们将不胜感激。
我相信我已经找到了我自己问题的答案。
如果 [TestClass]
继承自派生 class 的不同程序集中的基 class,则基 class [AssemblyInitialize]
和 [AssemblyCleanup]
方法没有执行。
因为我的自动化测试在解决方案中的两个项目中(一个处理框架,一个处理测试)并且作为基础 class 在框架中,但测试是另一个项目。我在 link.
中遇到了问题
我遇到一个问题,我的 [AssemblyCleanup]
方法没有被调用。
我目前正在构建一个自动化框架,并希望在我的测试前后完成一些 API 调用。从那以后,我找到了汇编 initialize/cleanup 方法,它们非常适合我需要做的事情。但是我无法将 [AssemblyCleanup]
方法获取到 运行。
我有一个基础 class,我的测试从中继承,这就是我希望放置 [AssemblyCleanup]
方法的地方。
我的class。
[TestClass]
public class TestBaseChrome: WebDriver
{
public TestContext TestContext { get; set; }
[TestInitialize]
public void Initialize()
{
//Do Stuff Here for tests
}
[TestCleanup]
public void Cleanup()
{
//used for end of test reporting
}
[AssemblyCleanup]
public static void EndOfSuiteActions()
{
//Stuff here when whole test suite finished
}
}
我看过示例 here and here 并表明 [AssemblyCleanup]
需要在具有 [TestClass]
属性的 class 中。如果我通过实际测试将 [AssemblyCleanup]
放在 class 中,它会按预期工作。但我希望我之前的所有 tests/after 测试都集中在一个地方。
如有任何建议,我们将不胜感激。
我相信我已经找到了我自己问题的答案。
如果 [TestClass]
继承自派生 class 的不同程序集中的基 class,则基 class [AssemblyInitialize]
和 [AssemblyCleanup]
方法没有执行。
因为我的自动化测试在解决方案中的两个项目中(一个处理框架,一个处理测试)并且作为基础 class 在框架中,但测试是另一个项目。我在 link.
中遇到了问题