在我使用 AutoFixture 之前的日子里,我可能已经做了以下安排来设置一个名为的服务的单元测试CustomerService
:
public void TestName()
{
//Arrange
var fakeResponse = new DerivedHttpResponse();
var fakeHandler = new FakeHttpMessageHandler(fakeResponse); // takes HttpResponse
var httpClient = new HttpClient(fakeHandler);
var sut = new CustomerService(httpClient);
// ...
}
这种冗长的安排似乎是 AutoFixture 擅长解决的问题。我想我可以使用 AutoFixture 重写该安排也看起来像这样:
public void TestName([Frozen] DerivedHttpResponse response, CustomerService sut)
{
//Nothing to arrange
// ...
}
我的问题是,有没有办法配置 AutoFixture 来为我执行此操作,因为我有许多派生HttpResponse
类型要从测试方法换成测试方法?