我有一个返回模型对象且没有构造函数的方法。在三个测试用例中,抛出HttpRequestException
。在声明模型对象时它们仍然通过,为什么会这样?
我期望对象的断言因为它为null而失败,或者由于该断言从不进行(抛出异常)而导致测试失败。
using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;
namespace SolutionTest
{
[TestClass]
public class UnitTest1
{
[DataTestMethod]
[DataRow("Hello")]
[DataRow("bad")]
[DataRow("badcausing")]
[DataRow("badcausingexception")]
[DataRow("Goodbye")]
public void method(string s)
{
string st = methodTested(s);
System.Diagnostics.Debug.WriteLine(st);
Assert.IsTrue(st != null);
}
public string methodTested(string s)
{
if (s == "bad" || s == "badcausing" || s == "badcausingexception")
{
System.Diagnostics.Debug.WriteLine("hey");
throw new Exception();
}
return s;
}
}
}
当我上传这张图片时,我想我错过了“ SolutionTest”中的红色。无例外地运行给了我这个。因此,我假设红色为红色表示抛出了异常。
我看错地方了。以下是在选项中选择的视图>测试。我打开了“视图”>“打击垫”>“单元测试”,仅查看了这一点。这是在Visual Studio for Mac 2017上