我无法区分TDD和BDD.有人能给出一个简单的例子来说明使用jasmine在javascript上下文中的区别吗?
TDD(测试驱动开发) 流程从为每个功能开发测试开始.TDD流程有一些步骤可循.只要开发人员有更多要添加的功能,这些步骤就会继续.
写一个测试
运行测试
重构
添加测试
请参阅测试失败
TDD的代码示例
suite('testName', function() { setup(function() { //create object (if need only) }); test('should Return Name', function (){ //test function });
BDD(行为驱动开发) 几乎可以像句子一样阅读,更专注于功能.
BDD的代码示例
describe("send Name", function(){ it("should Return Name",function(){ expect(sendName()).toEqual('ABC'); }); })
TDD与BDD
在执行TDD时存在一些问题
从哪儿开始
多少需要测试
理解测试失败的原因
上述问题的解决方案是BDD
TDD描述了系统的工作原理.
BDD描述了最终用户如何使用系统.