Jasmine遵循行为驱动开发(BDD)框架.在学习Jasmine的工作原理之前,让我们知道什么是BDD框架.
以下流程图描述了BDD框架的不同阶段.
步骤1 : 号;开始
在这个阶段,我们将为Jasmine应用程序准备好环境.
第2步 : 去;写一个失败的测试
在这一步中,我们将编写我们的第一个测试用例.很明显,这个测试将失败,因为没有这样的文件或功能需要测试.
步骤3 : 去;编写代码使其通过
在此阶段,我们将准备需要测试的JavaScript文件或函数.这个阶段至关重要,因为我们需要确保我们在早期阶段准备的所有测试用例都会成功.
步骤4 : 重构
重构是BDD模型的一个非常重要的阶段,我们需要为特定的应用程序或函数准备尽可能多的测试用例.
步骤5 : 停止
如果一切顺利,那么您的申请必须准备就绪.因此,我们可以将此步骤视为BDD应用程序的结束.
示例
我们现在已经收集了一些关于BDD框架工作原理的知识.让我们看看Jasmine如何在JavaScript测试中遵循这个BDD框架.
如截图所示,我们需要使用Jasmine框架测试Abc.js. SpecRunner.html 是输出文件,它将 Spec.js(测试用例文件),Abc.js(要测试的文件),LIB作为输入并运行全部测试用例中出现的测试用例并将结果呈现给浏览器.
Lib : 这些是内置的JavaScript文件,有助于测试我们项目中使用的不同函数和其他JavaScript文件.
Spec.js(测试用例文件) : ;这是包含测试任何JavaScript函数或文件所需的所有测试用例的JavaScript文件.在BDD方法中,我们将首先编写测试,因此这是需要首先更新的文件.肯定会失败,因为我们的项目中没有可以测试的文件或函数.此文件可以无限次重构,直到测试完所有功能.
Abc.js(要测试的文件) : 这是包含您的功能的文件,将使用Spec.js和Lib文件进行单元测试.
SpecRunner.html : SpecRunner.html是一个普通的html文件,它将在嵌入式JavaScript代码的帮助下呈现单元测试的输出.