[英]How do I use a persistent object between NUnit test objects?
我打算使用nUnit实施一些测试。 我还拥有一个自己开发的指标记录库,可以用来从测试中获取一些指标。 所述度量标准库通常在应用程序中使用,并且通常使用如下形式:
// retrieve configuration.
string path = GetPath();
bool option = GetOption();
// Set up metrics recording object.
Metrics m = new Metrics(path, option);
Do.Something();
m.AddRecord(new Record()); // Record some metrics on what just happened
// later...
m.Finish(); // let it know we're done.
现在,我可以在每个对象中(例如在父测试类中)使用TestFixtureSetup
和TestFixtureTeardown
创建该对象的实例,但是我宁愿让此指标对象在所有运行的测试中都保持不变。 是否可以,如果可以,那么有什么必要?
您可以使用SetUpFixtureAttribute- “标记一个类,该类包含给定名称空间下所有测试治具的一次性设置或拆卸方法。”
您可以将Metrics对象公开为单例,也可以简单地公开为帮助程序类的静态属性:
class TestHelper
{
public static Metrics Metrics { get; private set; }
static TestHelper
{
string path = GetPath();
bool option = GetOption();
Metrics = new Metrics(path, option);
}
}
好的,这不是一个很好的模式,但是对于单元测试来说应该没问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.