我无法区分 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 描述最终用户如何使用系统。
关于javascript - javascript上下文中TDD和BDD的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41867835/