gpt4 book ai didi

c# - 在单元测试中使用 try/catch block

转载 作者:太空狗 更新时间:2023-10-30 00:19:17 25 4
gpt4 key购买 nike

使用 VS 的测试框架,我目前正在编写这样的测试:

[TestMethod]
public void TestSomething()
{
try
{
var someTestValue = _someTestClass.SomeTestMethod();

Assert.IsNotNull(someTestValue);
}
catch (Exception e)
{
Assert.Fail(e.Message);
}
}

我的逻辑是,如果在 SomeTestMethod() 中抛出异常,我会立即终止测试,通过 Assert.Fail(e.Message) 显示异常消息>.

做事的“正常方式”是:

[TestMethod]
public void TestSomething()
{
var someTestValue = _someTestClass.SomeTestMethod();

Assert.IsNotNull(someTestValue);
}

我的方法是否正确,或者“正常方法”是否正确?我在写冗余代码吗?

最佳答案

我会说这是多余的,是的。如果异常是意外结果,则测试失败。无论是抛出异常还是断言失败,测试框架都以相同的方式处理。基本上,失败的测试就是失败的测试。

关于c# - 在单元测试中使用 try/catch block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22463024/

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