如果您只使用基于AutoCAD的实用程序,您将使用MSTest单元测试方法,但一般来说,只编写“private void”类型的例程可以看出您有多马虎(在我看来)。如果您正在编写一个很好的银行注册例程(如MS教程),我认为您可以通过使用更传统的测试方法来获得
例如,给定以下函数:
- public void Withdraw(double amount) {
- if(m_balance >= amount) {
- m_balance -= amount;
- } else {
- throw new ArgumentException(nameof(amount), "Withdrawal exceeds balance!");
- }
- }
在我看来,以下测试是在浪费每个人的时间。花时间设计一个有地板和天花板的好功能,比如“撤回”功能,你不需要测试
- [TestMethod]
- public void Withdraw_AmountMoreThanBalance_Throws()
- {
- // arrange
- var account = new CheckingAccount("John Doe", 10.0);
- // act and assert
- Assert.ThrowsException(() => account.Withdraw(20.0));
- }
如果我编写了“提取”函数,我会让它返回经常账户余额(一个盲函数调用/返回除了抛出异常之外没有其他好处),并在主调用函数中处理-也就是说,我不会让异常一开始就发生。不同的学派。 |