【文件属性】:
文件名称:Rocks:基于编译器API(Roslyn + Mocks)的模拟库
文件大小:2.33MB
文件格式:ZIP
更新时间:2021-05-15 17:42:54
C#
岩石
基于编译器API(Roslyn + Mocks)的模拟库
概述
那里有很棒的库,例如和 ,那么为什么我决定在2015年创建YAML(又一个模拟库)? 本质上有两个原因。
第一个原因与模拟库如何完成代码生成有关。 大多数(如果不是全部)使用的方法最终使用System.Reflection.Emit ,这需要了解IL。 这不是一件小事。 此外,在调试过程中无法将生成的代码插入。 我想使用新的Compiler API(Roslyn)编写一个模拟库,以查看是否可以使该模拟的代码生成过程更加轻松,并在必要时允许开发人员介入该代码。
另一个原因是能够为给定的程序集预先生成模拟,而不是在测试中动态生成它们。 这是可以执行的操作,但是我希望能够在可以轻松修改项目文件并自动生成这些模拟文件的地方进行操作。
这就是Rocks可以做的。 通过动态生成C#代码并使用Compiler API对其进行编译