gpt4 book ai didi

c# - 单元测试 AAA 模式中的数据提取

转载 作者:太空狗 更新时间:2023-10-30 00:34:08 28 4
gpt4 key购买 nike

在“AAA”模式中,提取的行为数据应该写在哪里?
在 Act 还是在 Assert 部分?

考虑这个单元测试,两个人的提取,它应该像示例中那样在 Act 中还是在 Assert 中?我们想为公司所有的 UT 制定一个标准。

[Test]
public void Test()
{
// Arrange
var p1 = new Person();
var p2 = new Person();
Session.Save(p1);
Session.Save(p2);

// Act
var result = new PersonQuery().GetAll();
var firstPerson = result[0];
var secondPerson = result[1];

// Assert
Assert.AreEqual(p1.Id, firstPerson.Id);
Assert.AreEqual(p2.Id, secondPerson.Id);
}

(请忽略在这个简单的测试中我可以写Assert.AreEqual(p1.Id, result[0].Id);)
我知道这不是什么大问题,但我仍然想知道如何将事情做到最好。

最佳答案

这应该发生在断言阶段:

[Test]
public void Test()
{
// Arrange
var p1 = new Person();
var p2 = new Person();
Session.Save(p1);
Session.Save(p2);

// Act
var result = new PersonQuery().GetAll();

// Assert
var firstPerson = result[0];
var secondPerson = result[1];
Assert.AreEqual(p1.Id, firstPerson.Id);
Assert.AreEqual(p2.Id, secondPerson.Id);
}

Act 阶段仅涉及调用被测方法。

关于c# - 单元测试 AAA 模式中的数据提取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8715424/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com