0

我有一个可以测试我的案例的断言列表。测试将通过,但我想将它们全部添加到列表中,以便我可以将该列表发送到 xml 文件。

我用一个 xml 文件做到了这一点,但这样做有什么帮助吗?这是我正在使用但不起作用的代码:

Assertions.Add(Assert.That(Resp.Cust.ID, Is.Not.Null));

这是测试响应中的 ID 号不为空,我正在使用 Nunit

4

1 回答 1

0

Assert.That 返回 void,这意味着您不能在断言列表中添加任何内容。另一方面,您可以向列表、“Is.Not.Null”和对象参数添加约束,如下所示:

Assertions = new List<Tuple<object, IResolveConstraint>>();
Assertions.Add(Tuple.Create((object)Resp.Cust.ID, Is.Not.Null));

然后像这样测试每个断言:

foreach (var pair in Assertions)
{
  Assert.That(pair.Item1, pair.Item2);
}

如果您需要 xml 文件中的测试结果,您可以像这样测试您的断言:

object value = ...
IResolveConstraint expr = ...
Constraint constraint = expr.Resolve();
var result = constraint.Matches(value);
于 2013-04-23T17:34:06.493 回答