为了提高发展效率,大多数公司不需要员工为前端自动化测试编写代码。在写作和不写作之间?
请勿编写前端自动化测试代码:
添加自动化测试后:
实际上,它仅用于可靠性,代码质量和维护。它作为主站自动化测试技术的前端开发人员是必不可少的。即使您不需要工作,也可以将其放入简历中。这是一个美丽的风景。
测试分为以下两项工作:
单位测试
单元测试是指程序中的最小测试单元,例如测试功能,模块,组件...
集成测试
已测试的测试功能已被合并,以整合暴露的高级功能或类的包装,并测试执行这些功能或类。
结束 - 到端测试(E2E测试)
打开应用程序仿真输入,检查函数以及接口是否正确。
但是作为前端,我们需要写什么测试?答案是:
让您带您练习。
我们构建一个新的VUE2项目,然后选择以下
请注意,当我们选择选择单元测试的步骤时,请选择开玩笑:
然后,我们选择结尾的末端:
只需继续安装该项目,直到构建项目为止。
单元测试是指软件中最小的测试单元以检查和验证。例如,函数。组件或功能或模块的单调测试(开发人员知道特定逻辑)
当该项目较早建立时,提到了开玩笑。实际上,在Vue中,建议?摩卡+柴或开玩笑进行单位测试,但让我们用嘲笑来证明它。两者的语法基本上是引起的。
在SRC目录中创建UTILS目录,然后在UTILS下创建index.js,然后编写一个添加函数导出:
在示例中修改测试单元下的spec.js(当然,您还可以创建一个新的*.spec.js,固定格式文件)
实施:
显然,“ 1” + 2不是3,因此测试是错误的。
在这种情况下,我们使用了4个API。
Tobe:比较???的比较
在组件下创建一个新的Zhifeiji.Vue文件:
在视图目录中的家庭组件中的引言:
在测试目录中的单元目录中创建zhifeiji.spec.js:
如果您测试用户交互,则需要使用官方 @vue/test-utils执行CNPM I @Vue/test-utils-Save。
在@vue/test-utils中介绍更换VUE的$安装是因为$ sount是虚拟的,有虚拟内存,并且无法处理DOM,因此请使用MONT(对,对吗?)
如果是在这里,则应对我的VUE组件进行测试。执行它:
开玩笑的带带j j J,如果使用了摩卡咖啡,则需要使用伊斯坦布尔来计算覆盖范围。(所以我建议开玩笑)
这显然是不一致的,并且需要更改为正确的“ 12”。更改命令后,再次执行命令。
这是通过的,但是似乎无法直观地看到覆盖范围,所以让我们在package.json中的玩笑中修改开玩笑。在下图的位置:
改成:
如果有jest.config.js,然后在ModuleFileextensions上加入一行,此文件是开玩笑的配置(无需更改):
更改后,让我们再次执行下一个订单,
在这一点上,我们可以清楚地看到测试的覆盖范围!此覆盖范围将产生报告。生成的报告文件在覆盖范围目录中。当您打开它时,您会看到这样的幽灵:
这样,测试代码的覆盖范围是一目了然。
该测试报告可以非常精确地查看我们尚未测试以及哪些测试。
我在Zhifeiji中添加了一些东西,而无需测试。让我们看一下结果:
上述代码中的MSG2未测试。执行测试命令以查看报告:
在此期间,可以看到红色框架部分。我们可以单击主蓝色。
当您逐步进入时,您将进入经过测试的代码文件。
安装沙哑:
配置沙哑,在包装中配置它。JSON:
当然,这是文档上的一个情况,我们更改了:
代表提交了NPM运行测试:提交(提交)之前。
验证测试代码文件zhifeiji.spec.js:因为:
改成:
该测试绝对不会通过。
目前,测试未通过,让我们再次提交代码,然后在添加后提交:
可以看出,该提交失败了,并且没有通过!
提示:如果您配置了沙哑的情况,以使沙哑不生效,请减少沙哑的版本或使用新的沙哑方法。Husky在6.0.0开始时使用了一种新的配置方法。请参阅本文:https://blog.csdn.net/mrweb/article/details/1198786888
目前,如果我们希望他通过,我们必须更改代码并使其正确提交。这是一个安全可靠的代码。
修改操作:1。在测试目录中的e2e中评论test.js,e2e我们将稍后交谈
2. 3在threeample.spec.js中修改为'12'3.zhifeiji.spec.js aftermountd1已恢复到后面
在这三个步骤之后,即使我们解决了测试错误,也要提交:
该代码已成功提交!
E2E的目标是测试人员的角度。没有安装载荷,只有按钮页,输入框,文本,等等。
通过借用浏览仪器的能力,从家庭测试的角度站立,失去框架,单击按钮等,完全模拟用户。这与特定框架无关。
视图下的家庭组件:
相关代码恢复。在测试目录下的规格下查看test.js,有这样的段落:
恢复CY评论。
这是测试代码。如果我们不进行以前的恢复操作,则测试绝对不会通过
执行和测试
该项目将启动,并将弹出一个带有OK的弹出窗口。我们将直接确定将有测试文件的JS。选择要单击的相应测试文件:
这意味着测试通过了!
让我们测试一个关于页面:
提示:如果未批准“关于页面测试”,请将路由模式更改为历史记录或更改测试文件test.visit('of of of')cy.visit('#/of of tod')
后来测量的,终于打开了大约页面,也停留在有关页面上
这些是页面上特定元素的文本的测试,所以让我们尝试进行交互。我们的Zhifeiji组件有一个点击事件。咱们试试吧:
左侧的一个可以单击并单击不同的项目以输入不同的事件。例如,我订购了包含,文本已单击。
外词:测试页面之前和之后的差异,或者可以通过页面监测器使用两页之间的差异;地址:https://github.com/fouber/page-monitor
好吧,这是前端自动化测试。