C# 如何使用流畅的断言报告对象的名称
我有一个测试,检查我们网站上一个表中的几个对象。测试是用SpecFlow和C编写的# 它看起来像这样:C# 如何使用流畅的断言报告对象的名称,c#,automated-tests,fluent-assertions,C#,Automated Tests,Fluent Assertions,我有一个测试,检查我们网站上一个表中的几个对象。测试是用SpecFlow和C编写的# 它看起来像这样: When I click proceed Then I should see the following values | key | value | | tax | 5.00 | | delivery | 5.00 | | subtotal | 20.00 | When I click
When I click proceed
Then I should see the following values
| key | value |
| tax | 5.00 |
| delivery | 5.00 |
| subtotal | 20.00 |
When I click proceed
-> done: OrderConfirmationPageSteps.ClickProceed() (1.0s)
Then I should see the following values
--- table step argument ---
| key | value |
| tax | 5.00 |
| delivery | 5.00 |
| subtotal | 20.00 |
-> error: Expected value to be 5.00, but found 1.00.
我的“Then”步骤代码类似于:
[StepDefinition("I should see the following values")]
public void IShouldSeeTheFollowingValues(Table table)
{
var basketSummary = new BasketModel();
foreach (var row in table.Rows)
{
switch (row["key"])
{
case "tax":
basketSummary.Tax.Should().Be(row["value"]);
break;
case "delivery":
basketSummary.Delivery.Should().Be(row["value"]);
break;
case "subtotal":
basketSummary.Subtotal.Should().Be(row["value"]);
break;
}
}
}
问题在于我们的构建日志中,如果测试出错,它看起来像这样:
When I click proceed
Then I should see the following values
| key | value |
| tax | 5.00 |
| delivery | 5.00 |
| subtotal | 20.00 |
When I click proceed
-> done: OrderConfirmationPageSteps.ClickProceed() (1.0s)
Then I should see the following values
--- table step argument ---
| key | value |
| tax | 5.00 |
| delivery | 5.00 |
| subtotal | 20.00 |
-> error: Expected value to be 5.00, but found 1.00.
正如你在上面看到的,很难区分它的意思是什么。。。当它说预计是5点的时候
是否有一种方法可以修改输出,使其符合以下内容:
-> error: Expected value of Tax to be 5.00, but found 1.00.
你可以做两件事:
Be()
方法,例如。
`basketSummary.Delivery.Should().Be(行[“值”],”因为
税值”)李>
Be()
方法,例如。
`basketSummary.Delivery.Should().Be(行[“值”],”因为
税值”)李>