gpt4 book ai didi

.net - Assert.AreEqual 如何比较 .net 单元测试中的两个对象?

转载 作者:行者123 更新时间:2023-12-04 23:55:23 24 4
gpt4 key购买 nike

我正在为我编写的一些 .net 代码编写单元测试。

我熟悉编写这样的代码:

int expected = 10;
int actual = multiplyByTwo(5);
Assert.AreEqual(expected, actual);

在参数是整数的情况下,很清楚期望代码做什么。

当传入的参数是对象时代码做了什么?

如果我编写了一个名为 MyClass 的自定义类,我如何控制何时 Assert.AreEqual类型为 MyClass 的对象通过和失败?

最佳答案

official documentation非常简洁并且没有解释它,所以我相信如果对象不是基元,那么它们的引用将被比较。

也就是说,对同一个对象的两个引用将评估为相等;同一对象的两个克隆将评估为不同。除非你重载 Equals()这些对象所属的类的实例方法,或 ==所述类的运算符。

另请参阅 Reed Copsey 的回答。

关于.net - Assert.AreEqual 如何比较 .net 单元测试中的两个对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17222713/

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