BDD VS TDD
1.BDD(Behavioral-driven development)(Cucumber) TDD(Test-driven development):在单元测试方面应用的比较广泛。
2.Cucumber语法
1.Cucumber的主要作用:主要给产品/需求(BA)知道features文件怎么写,将条件和希望的结果写到features文件当中,交给开发人员,开发人员去执行features文件产生一些steps,这些steps告诉开发人员如何开发相关的功能。 2.Cucumber最后生成的step defination的代码力度比较粗,不是单元测试的东西,就不是针对某个方法的某个分支的逻辑去做动作。它是针对一个功能,那么可能就是面向接口或者说面向集群出来的API去做相关的动作。 3.一个features里面可以有多个Scenario Feature:描述系统的一个功能 Scenario:场景 下面三行是条件(如上图把商品加入购物车之前需要什么条件) Feature (功能)-------------test suite (测试用例集) Scenario(情景)-----------test case (测试用例) Given(给定)-------------setup(创建测试所需环境)-初始化或准备的动作 When(当)----------------test(触发被测事件) Then(则)-----------------assert(断言,验证结果) 3.features文件通常会写到: src-test-resources文件里面 4.将features翻译成step defination 在IDEA里面在features文件里面按住alt+enter键 生成的step defination通常放在src-test-java下面
|