gpt4 book ai didi

c# - 标有 TestInitialize 和 TestCleanup 的类未执行

转载 作者:IT王子 更新时间:2023-10-29 03:57:04 24 4
gpt4 key购买 nike

我一直在努力解决这个问题,希望它能帮助其他人。

在使用 MsTest 创建单元测试时,我发现我在每个测试中都重复了相同的代码,并发现了一些方便的属性(TestInitializeTestCleanup ClassInitializeClassCleanup)。

据说,当您使用这些属性之一标记一个方法时,它应该自动执行(分别在每次测试之前、每次测试之后、所有测试之前和所有测试之后)。令人沮丧的是,这并没有发生,我的测试失败了。如果直接从标有TestMethod 属性的类中调用这些方法,则测试成功。很明显他们不是自己执行的。

这是我使用的一些示例代码:

[TestInitialize()]
private void Setup()
{
_factory = new Factory();
_factory.Start();
}

那么为什么没有执行呢?

最佳答案

诀窍是让这些方法public:

[TestInitialize()]
public void Setup()
{
_factory = new Factory();
_factory.Start();
}

当它们是私有(private)时,它们不会执行。

关于c# - 标有 TestInitialize 和 TestCleanup 的类未执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12520759/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com