![]() |
1
7
当任务是针对第三方API进行开发时,我做的第一件事是编写原型(如果愿意,可以编写集成测试)以获得预期/期望的结果。然后,我创建一些单元测试来强制实现这种期望,并将原型重构为我将继续使用的实际代码。 是的,我觉得这很典型。从最纯粹的意义上讲,这可能不是TDD,但我同意。 |
![]() |
2
4
您是否使用测试来驱动开发?即TDD? 如果是这样,你就走对了。 “集成测试”和“单元测试”是模糊的定义。学者们可以在试图找到区分它们的方法时把头发分开。 不要浪费时间去理头发。 先写测试。 |
![]() |
3
3
我不确定这有多普遍,但我肯定已经看到,更高级别的测试是提倡的第一步。例如,在 Growing Object-Oriented Software Guided by Tests 首先,作者建议创建一个功能/验收测试脚手架,然后通过编写高级验收测试开始驱动开发(验收测试位于测试三角的顶端,中间是集成测试,底部是单元测试,所以它实际上是相同的原则)。 结果是这样的:
|
![]() |
4
1
嗯,是的,我通常也是这样,但这真的取决于你和什么一起工作以及你有多相信它。 例如,对于与数据库一起工作的东西,集成测试通常比单元测试更可靠,因为例如,nhibernate可以并且将为某些条件生成不正确的查询。 另一方面,如果您的算法是一个复杂的算法,从第一次尝试(例如复杂的regex/解析,或复杂的业务规则)就很难正确地编写,那么单元测试可能更有意义,因为您不希望等待(通常较慢的)集成测试。 |
![]() |
5
0
我相信这取决于:
|
![]() |
Ragnarsson · 与TestNG并行运行测试无法按预期工作 7 年前 |
![]() |
user101289 · ruby gem测试失败 7 年前 |
![]() |
pam · Travis pr失败,推送通过 7 年前 |
![]() |
Kaisado · Ui设备等待按钮可见 7 年前 |
![]() |
Daniel Kaplan · Testcafe:对文本区域长度的期望 7 年前 |
![]() |
Luca S. · 在生产页面上自动测试本地javascript库 7 年前 |