用于从单元测试中引用项目的c# StackTrace
本文关键字:StackTrace 项目 引用 单元测试 用于 | 更新日期: 2023-09-27 18:05:27
对于一个项目,我需要知道在单元测试结束时调用了多少方法。(或者类似于Visual Studio中的调用层次结构(不是在运行时)。我为此创建了一个测试项目。但是我只得到在单元测试项目中调用的方法。
例如,我有一个类库,其中包含以下类(汇编):public class Program
{
public void A()
{
B();
C();
}
public void B()
{
}
public void C()
{
B();
D();
}
public void D()
{
}
}
和一个单元测试(汇编),使用以下测试方法
[TestMethod]
public void TestMethod1()
{
StackTrace stackTrace = new StackTrace();
new Program().A();
int count = stackTrace.FrameCount;
}
[TestMethod]
public void TestMethod2()
{
StackTrace stackTrace = new StackTrace();
new Program().C();
int count = stackTrace.FrameCount;
}
在两个单元测试中,count = 12。当我检查stackTrace变量的属性时,我只看到单元测试程序集调用的方法。是否有一种方法可以在stackTrace中包含类库程序集的调用?
Thanks in advance
您尝试过使用覆盖工具吗?(我推荐dotCover)
Tool可以在xml
, json
等中生成报告,因此您可以轻松地解析它们并使用结果进行进一步计算。
看起来您需要一个测试覆盖工具。它将显示调用了测试程序集的哪些方法。