E2E测试策略

名称 断言 是否支持夸浏览器支持 实现 官网 是否开源
nightwatch assert 和 Chai Expect selenium http://nightwatchjs.org/
cypress Chai、Chai-jQuery 等 Chorome https://www.cypress.io/
testcafe 自定义的断言 不是基于selenium实现 https://devexpress.github.io/testcafe/
katalon TDD/BDD 未知 https://www.katalon.com/katalon-studio/

注意

1.nightwatch 需要安装配置 selenium,selenium-server需要安装jdk(Java Development Kit)。
2.cypress 安装方便,测试写法和单元测试一致,只支持 Chrome 类浏览器,有支持其他浏览器的计划
3.testcafe 安装方便,测试写法与之前的单元测试差异比较大,编写测试用例时只能选择到可见的元素
4.katalon 不是测试框架,是 IDE ,比较重,并且不开源,测试用例不是用 js 编写但是可以通过 Chrome 插件录测试用例

自动化测试用例也是一堆代码,所以完全可以运用一些通用编程思维。对于测试数据hardcode的问题,解决方案就是将测试数据从测试用例里面分离出去,我们有一个地方统一去管理所有需要的测试数据,封装一个获取数据的api供测试用例调用

unit测试是程序员写好自己的逻辑后可以很容易的测试自己的逻辑返回的是不是都正确。
e2e代码是测试所有的需求是不是都可以正确的完成,而且最终要的是在代码重构,js改动很多之后,需要对需求进行测试的时候测试代码是不需要改变的,你也不用担心在重构后不能达到客户的需求。

你可能感兴趣的:(E2E测试)