小编Mor*_*dil的帖子

你用单元测试测试什么?

TDD现在似乎在每个人的嘴唇上,我自己尝试了一些,但我认为我没有得到这个想法.我正在抓住如何编写单元测试,但我不明白我的单元测试应该测试什么.

  1. 如果我有一个返回数据列表的操作方法,我应该验证什么?只是视图名称是正确的,还是我应该验证数据?
  2. 如果我也应该测试数据,我不会两次编写相同的代码吗?如果我使用相同的方法来检索我要比较的数据,那么测试数据的用途是什么?
  3. 我是否应该测试添加/编辑数据的方法?如何以正确的方式验证是否已添加/编辑/删除记录?

我知道这是一个很大的问题,但我没有因为在互联网上阅读文章而变得更聪明,因为他们似乎都关心如何测试,而不是关注什么.

作为一个例子 - 我有(或将要写)一个GuestbookController,其中包含查看,添加,编辑和删除帖子的方法.我需要测试什么?我该怎么做?

.net tdd asp.net-mvc unit-testing

29
推荐指数
1
解决办法
1814
查看次数

将代码引入编程工作面试有什么问题?

我对另一个问题的回答感到困惑,这个问题说你不应该把代码组合带到编程工作面试中.

为什么不呢?其他人推荐这个; 它甚至是Peopleware中的"经典"故事之一:

"如果没有首先看到他表演,就会想到聘请一个变戏法者,这是荒谬的.这只是常识.然而,当你开始聘请工程师或设计师或程序员或团队经理时,常识规则经常被暂停.你不要求看设计或程序或任何东西.事实上,采访只是谈话."

那么,是什么给出的?当你出现代码组合时出现什么问题的"战争故事"?或者当你采访有一个候选人时?

portfolio

6
推荐指数
2
解决办法
7433
查看次数

自检代码与分离测试有什么好处?

就个人而言,我总是将单元测试放在一个单独的项目中,因为这就是MSTest的设置方式.但我正在阅读Refactoring:改进现有代码的设计 Martin Towler,他似乎主张不仅将它们放在同一个项目中,而且还将它们放在与他们测试的方法相同的类中.

我真的很难想到除了哲学上的差异(测试文档或杂乱吗?)之外,在与代码本身不同的区域中进行测试的方法不同.

是否有明确的理由选择一个而不是另一个?或者这主要是一个哲学上的区别?

更新:我不一定相信这种或那种方式,但至少我知道论点是什么.我希望我可以选择每个人的答案,但我必须选择一个.

tdd refactoring unit-testing

5
推荐指数
1
解决办法
1752
查看次数

标签 统计

tdd ×2

unit-testing ×2

.net ×1

asp.net-mvc ×1

portfolio ×1

refactoring ×1