C# 如何在nunit多个测试程序集执行之间保持静态

C# 如何在nunit多个测试程序集执行之间保持静态,c#,database,nunit,integration-testing,C#,Database,Nunit,Integration Testing,我有一个基类,它创建一些测试数据库,然后这些数据库被多个程序集中的测试使用。这些测试是从基类继承的类中的方法 然而,当运行程序更改为另一个程序集时,基类似乎会再次创建测试数据库,从而浪费大量时间 有没有办法在NUnit中的程序集之间保存此状态 谢谢。为什么它会再次生成数据库?通常数据库设置代码按照“如果数据库不存在,创建数据库。否则,什么也不做”的方式工作,因为数据库名称在第一次执行时是动态的,但必须为所有运行的测试维护它。一开始它是动态的,因为其他程序员也可以执行测试,而且必须是不同的数据库。

我有一个基类,它创建一些测试数据库,然后这些数据库被多个程序集中的测试使用。这些测试是从基类继承的类中的方法

然而,当运行程序更改为另一个程序集时,基类似乎会再次创建测试数据库,从而浪费大量时间

有没有办法在NUnit中的程序集之间保存此状态


谢谢。

为什么它会再次生成数据库?通常数据库设置代码按照“如果数据库不存在,创建数据库。否则,什么也不做”的方式工作,因为数据库名称在第一次执行时是动态的,但必须为所有运行的测试维护它。一开始它是动态的,因为其他程序员也可以执行测试,而且必须是不同的数据库。我无法检查数据库是否存在,因为我不知道数据库的名称。NUnit在切换程序集时再次初始化静态属性。听起来它们应该从配置/安装设置中获取DB名称,但als使用相同的默认值。很明显,他们是为了合作,所以他们是否应该共享现有数据库应该是一个配置设置。嗯,如果NUnit没有在程序集之间存储值的功能,正如您所说,我将不得不将名称保存在文件或内存以外的其他外部存储中。