38 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| ---
 | ||
| title: Test Driven Development
 | ||
| localeTitle: 测试驱动开发
 | ||
| ---
 | ||
| ## 测试驱动开发
 | ||
| 
 | ||
| 测试驱动开发(TDD)是敏捷软件开发方法之一。它基于这一概念
 | ||
| 
 | ||
| > 您必须在编写代码之前为代码编写测试用例
 | ||
| 
 | ||
| 在这里,我们首先编写单元测试,然后编写代码以成功完成测试。这节省了执行单元测试和其他类似测试所花费的时间,因为我们正在进行成功的测试迭代以及在代码中实现模块化。 它基本上由4个步骤组成
 | ||
| 
 | ||
| *   写一个测试用例
 | ||
|     
 | ||
| *   看测试失败(红色)
 | ||
|     
 | ||
| *   让测试通过,同时处理任何犯罪行为(绿色)
 | ||
|     
 | ||
| *   重构代码以达到标准(Refactor)
 | ||
|     
 | ||
|     这些步骤遵循Red-Green-Refactor的原则。 Red-Green确保您编写最简单的代码来解决问题,而最后一步确保您编写的代码符合标准。
 | ||
|     
 | ||
| 
 | ||
| 系统的每个新功能都应遵循上述步骤。
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| #### 更多信息:
 | ||
| 
 | ||
| 敏捷数据的[TDD简介](http://agiledata.org/essays/tdd.html)
 | ||
| 
 | ||
| 维基在[TDD上](https://en.wikipedia.org/wiki/Test-driven_development)
 | ||
| 
 | ||
| Martin Fowler [是TDD死了?](https://martinfowler.com/articles/is-tdd-dead/) (关于这个主题的一系列录制对话)
 | ||
| 
 | ||
| Kent Beck的书“ [测试驱动开发实例”](https://www.amazon.com/Test-Driven-Development-Kent-Beck/dp/0321146530)
 | ||
| 
 | ||
| 鲍勃叔叔[的TDD周期](http://blog.cleancoder.com/uncle-bob/2014/12/17/TheCyclesOfTDD.html) |