gpt4 book ai didi

unit-testing - Arrange, Act, Assert 模式中的 Arrange 和 Act 有什么区别?

转载 作者:行者123 更新时间:2023-11-28 20:05:57 38 4
gpt4 key购买 nike

我不太明白单元测试中模式的安排部分和行为部分之间的区别。 Arrange ONLY 是否意味着对象的创建?为什么我们首先要将 Arrange 与 Act 部分分开,以及决定某物是否属于 Act 而不是 Arrange 部分的标准是什么?对我来说似乎一切都属于 Arrange 部分,因为我们为断言“安排测试”,不是吗?

最佳答案

单元测试测试程序中的单个“Act”,通常是对对象实例的单个方法调用。 Arrange, Act, Assert 将单元测试组织为三个部分:Act 之前、期间和之后。

  • Arrange 部分包括但不包括感兴趣的方法调用的所有内容。在 Arrange 部分,我们设置了我们希望世界(我们调用方法的对象、它与之交互的其他对象等)在我们调用方法时所处的状态。

  • Act 是我们正在测试的方法的调用。

  • 并且(完整地说),断言是测试的其余部分,我们断言该法案对我们预期的世界产生了影响。

因此,我们不是“为断言安排测试”,而是为行动安排世界。在 Arrange 部分,我们做一些我们已经知道其效果的事情。 Arrange 部分调用的每个方法都应该在别处进行单元测试。在法案中,我们做了一些我们还不知道其效果的事情;这就是测试的实际内容。 (在测试驱动开发中,我们可能还没有编写方法,或者将其添加到实现中以通过此特定测试。)

关于unit-testing - Arrange, Act, Assert 模式中的 Arrange 和 Act 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31892754/

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