C# 可以对内存中的程序集以编程方式运行测试吗?

C# 可以对内存中的程序集以编程方式运行测试吗?,c#,unit-testing,nunit,xunit,vstest,C#,Unit Testing,Nunit,Xunit,Vstest,场景 点网变异工具,可以进行变异,运行测试,收集结果,并重复2000次。突变发生在内存中,每次突变都会将突变的程序集写入磁盘的速度非常慢(至少在硬盘上是如此)。理想的情况是允许在程序集上执行测试,而无需将测试写入磁盘 在这种情况下,通过调用“vstest.console”或“dotnet test”来运行测试并不理想,因为它们调用外部可执行文件,并且我的测试会针对每个变异执行很多次 问题 给定程序集是否可以在其上运行单元测试(nunit、xunit、mstest),而不将其写入磁盘 给定一个测

场景

点网变异工具,可以进行变异,运行测试,收集结果,并重复2000次。突变发生在内存中,每次突变都会将突变的程序集写入磁盘的速度非常慢(至少在硬盘上是如此)。理想的情况是允许在
程序集上执行测试,而无需将测试写入磁盘

在这种情况下,通过调用“vstest.console”或“dotnet test”来运行测试并不理想,因为它们调用外部可执行文件,并且我的测试会针对每个变异执行很多次

问题

  • 给定
    程序集
    是否可以在其上运行单元测试(nunit、xunit、mstest),而不将其写入磁盘
  • 给定一个测试项目,是否可以在不调用外部可执行文件的情况下运行测试
备注

  • 对于我的发现,只能通过外部进程
    IVsTestConsoleWrapper
    使用
  • 根据我的发现,
    dotnet测试
    在后台使用vstest
堆栈溢出


类似但没有真正的答案

只需创建一个RAM磁盘并将程序集存储在那里?@Martheen这是一个非常有趣的选项,可以减少磁盘写入操作时间!