`
pollyanna
  • 浏览: 8044 次
  • 性别: Icon_minigender_2
  • 来自: 成都
社区版块
存档分类
最新评论
  • pollyanna: css中clear的作用:clear 属性定义了元素的哪边上不 ...
    CSS学习

测试驱动开发TDD(Test Driven Development)和jasmine

 
阅读更多

测试驱动开发是一个循环过程。这个循环主要由三个部分组成,三个步骤:Red->Green->Refactor->Red->Green->Refactor……(即:失败->通过->重构->失败->通过->重构->……)
    他的具体过程是:
    1.我们在写代码之前,先根据需求把测试先写好,然后运行测试,这时出现Red(我以前觉得这个过程其实很没有必要,因为代码都还没写/改,测试必然会失败呀。后来发现,我们还是需要先跑一下测试,来确认这个测试是有效的。)
    2.测试Red之后,我们修改自己的代码,实现测试的功能,让测试的时候出现Green。
    3.第三步,对我而言非常重要的一步,Refactor,重构!!因为在一开始接触TDD的时候,我一直过分关注于让测试green。测试通过之后,就马不停蹄的奔向下一个循环。后来在江江的指导下,我打开了TDD的wikipedia,了解的一下TDD的内涵。这个时候,才意识到,RED,GREEN,REFACTOR,这三个每一个都是不可缺少,并且相当重要的步骤。所以在每次跑过一个测试的时候,一定要停下来,对之前的代码进行重构。

    Jasmine(茉莉,名字真好听)是一个行为驱动的JS测试框架。
    在学习过程中,我们是用Jasmine来实现的TDD过程。
    在使用jasmine进行测试驱动开发时,文件目录下,一共有三个文件夹,一个是lib,lib里面存的是库文件。我们一般不要修改(虽然我在里面自己添加了一个underscore文件)。一个是src里面放的是我们自己写的js的源文件。第三个是spec里面放的是测试文件:specrunner,运行测试的文件。
    也就是说,我们在测试驱动开发时,是现在specrunner中,写入测试代码,然后在src文件夹下的js文件中写实现代码。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics