【发布时间】:2011-06-03 18:50:15
【问题描述】:
如果我有一个带有静态事实(测试方法)的类并且该类有一个静态构造函数,那么构造函数是为每个事实调用还是只为类中的所有事实调用一次?我想这取决于运行器如何加载/卸载测试类?
【问题讨论】:
标签: .net unit-testing xunit.net xunit
如果我有一个带有静态事实(测试方法)的类并且该类有一个静态构造函数,那么构造函数是为每个事实调用还是只为类中的所有事实调用一次?我想这取决于运行器如何加载/卸载测试类?
【问题讨论】:
标签: .net unit-testing xunit.net xunit
根据经验,我知道该类只调用一次。如果您在非静态测试(事实)中使用静态类(即设置类)也是一样的。整个测试类只调用一次静态对象构造函数。
【讨论】:
如果有任何东西(例如 Facts)第一次使用静态方法或类,则该静态构造函数被称为一个。如果没有对静态类的引用,则根本不调用静态构造函数。如果您正在考虑在测试之前和之后运行代码(设置/处置)ONES,我建议使用 Fixtures(请参阅 https://xunit.net/docs/shared-context)。
【讨论】: