使用Assert正确吗?在TestMethods调用的方法内部失败
本文关键字:调用 方法 内部 失败 TestMethods Assert 使用 | 更新日期: 2023-09-27 18:10:04
我计划在我的单元测试中以这种方式使用Assert.Fail
- 在Test类(
IsFileExist
)中的私有helper方法中 -
helper类(
LoadData
)的方法内部- 这样可以吗?或者这超出了单元测试框架的使用范围?
- 如果我这样做了,当Assert。Fail execute是对test方法展开整个堆栈还是只对特定方法展开堆栈?
助手类
public class DataLoader
{
public void LoadData(string file)
{
if (Util.readfile(file)) {
Assert.Fail("Unable to read the file.");
}
}
}
测试类[TestClass]
public class testFileData
{
[TestMethod]
public void TestData()
{
string file = "C:''data.txt";
this.IsFileExist(file);
DataLoader dl = new DataLoader();
dl.LoadData(file);
}
private void IsFileExist(string file)
{
if(!Util.IsFileExist(file)) {
Assert.Fail("File not exist");
}
}
}
Assert
位于Microsoft.VisualStudio.TestTools.UnitTesting
名称空间的事实应该作为一个提示,不,您不应该在单元测试之外使用它。
如果你想根据代码中的条件失败,抛出一个异常。