gpt4 book ai didi

c# - 单元测试自动实现的属性是否有值(value)

转载 作者:太空狗 更新时间:2023-10-29 19:55:21 26 4
gpt4 key购买 nike

这似乎异常严厉,但按照规则任何公开可用的东西都应该进行测试应该auto-implemented properties被测试?

客户类

public class Customer
{
public string EmailAddr { get; set; }
}

测试者

[TestClass]
public class CustomerTests : TestClassBase
{
[TestMethod]
public void CanSetCustomerEmailAddress()
{
//Arrange
Customer customer = new Customer();

//Act
customer.EmailAddr = "foo@bar.com";

//Assert
Assert.AreEqual("foo@bar.com", customer.EmailAddr);
}
}

最佳答案

我通常认为任何不执行操作的代码都不值得测试。这通常意味着我不测试属性(自动实现或非自动实现),因为它们只是设置或返回一个值。

如果属性的 getter 或 setter 执行某种“工作”,例如可能根据其他字段/属性/任何其他内容的状态返回两个(或更多)值之一,这将会改变。

没看过的强烈推荐Roy Osherove's book on Unit Testing .它解决了各种“测试什么以及何时测试”类型的问题,包括这个问题。

关于c# - 单元测试自动实现的属性是否有值(value),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3065644/

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