发布时间:2020-07-13
前端自动化测试一般是指是在预设条件下运行前端页面或逻辑模块,评估运行结果。预设条件应包括正常条件和异常条件,以达到自动运行测试过程、减少或避免人工干预测试的目的。在前端自动化测试中,我们通常是通过不同的软件测试工具来解决不同场景下不同的问题的。就测试类型来看,主要分为BDD(Bebavior Driven Developement,行为驱动测试)和TDD(Testing Driven Developement,测试驱动开发)。
BDD可以让项目成员使用自然描述语言来描述系统功能和业务逻辑,从而根据这些描述步骤进行系统自动化的测试;TDD则要求在编写某个功能的代码之前先编写测试代码,然后只编写使测试通过的功能代码,通过测试来推动整个开发的进行。这有助于编写简洁可用和高质量的代码,并加速实际开发过程
BDD和TDD均有各自的适用场景,BDD一般更偏向于系统功能和业务逻辑的自动化测试设计,而TDD在快速开发并测试功能模块的过程中则更加高效,以快速完成开发为目的。下面我们看下BDD和TDD具体的特点:
BDD的特点:从业务逻辑的角度定义具体的输入与预期输出,以及可衡量的目标;尽可能覆盖所有的测试用例情况;描述一系列可执行的行为,根据业务的分析来定义预期输出;设定关键的测试通过节点输出提示,便于测试人员理解;最大程度的交付出符合用户期望的产品,避免输出不一致带来的问题。
TDD的特点:需求分析,快速编写对应的输入输出测试脚本;实现代码让测试为成功;重构,然后重复测试,最终让程序符合所有要求。
单元测试
就前端而言,单元测试的实现工具比较多。单元测试工具的主要组成部分其实是类似的,主要包括测试集、测试用例、断言和断言比较等。它可以用来快速测试单元模块的主要功能,有助于辅助我们快速开发。
集成化测试
除了模块单元的测试驱动开发,在系统功能测试阶段,我们希望自动化完成业务功能正确性的检测,此时我们就要考虑集成测试方案了。目前前端集成化测试自动化工具也有比较多。
和单元测试相同的是,集成测试和单元测试类似,一般也会对测试预期输出进行断言和判断,不同的是,集成测试的输入设计和功能流程中涉及到浏览器本身的行为模拟,用以代替测试人员手动操作的过程,从而能够提高测试效率。
尽管目前主流的测试工具各不相同,但是基本的流程原理确实相同的。
当然,还有一些仍需要我们注意的问题。自动化测试不可避免地要求我们去编写测试用例,会花去一定的事件,我们在实际的项目开发过程中,决定要不要使用自动化的测试方案应该根据具体的场景来决定,如果业务规模并不复杂,而且系统功能流程清晰,则不建议使用测试用例,因为这样得不偿失;但如果业务达到一定规模,需要在原有较大项目继续维护开发的情况下,编写测试用例有利于我们较快暴露和定位问题,并极有助于后期的维护。
推荐阅读:
如何在Linux下进行自动化测试?自动化测试工具AR在Linux系统上的应用
您的信息已成功提交!
我们的客服人员稍后会与您联系