hi~,我是java班的同学,我不明白junnit5和我们底下学习的web有什么关系,我该怎么去理解junnit5,为啥把这个拎出来讲下,我们需要在junnit5这一章掌握什么?
可以出一个课程为啥要这么讲的原因?以及我们学习的整体的脉络嘛?
junit5是测试框架,后面我们做web、APP自动化需要以这个框架为基础
接口测试也是基于这个的嘛
是的
把我们的自动化代码看成一栋楼房,那么我们在盖楼的时候要先学会砌墙,那么junit5框架,就类似于砌墙,只有基础打好了,框架学好了,在自动化代码里就可以“为所欲为”
首先先来看第一个问题:
Junit5 是一个标准的单元测试框架,但是不仅仅是一个单元测试框架,它的开发模式完全符合标准的XUnit 结构。其实你看现在使用的所有的测试工具,包括postman、jmeter 这种无需编码的测试工具,是不是都有测试用例的编写、前置动作、执行后的数据清理、测试用例分类的整合,等等功能。其实这不是巧合,这就是很多测试工程师工作过程中总结出来的一些通用步骤。JUnit 也符合这种标准的结构。
接下来来看第二个问题
后面所有学习的自动化知识,包括到很后面的平台知识,测试框架的内容是贯穿始终的。web 自动化测试用例执行完成之后,怎么关闭driver 进程,要用到junit5 的 AfterAll AfterEach,在接口自动化测试里面,数据的清理在用例执行完成之后执行,数据的加载(包括多环境的切换。测试数据的准备)在测试用例执行之前执行。到测试平台,怎么去写单元测试用例?是不是用到了JUnit?所以后面所有自动化的内容,都是和测试框架章节息息相关的。
测试框架整个大章节也分普通的内容和进阶的内容。涉及到二次开发相关的知识可以先放一放,但是前面基本的使用,数据驱动,参数化,断言,这些都是要掌握的哈
整体的学习脉络是从测试框架开始,到web自动化测试再到接口、接口自动化测试、容器技术、持续集成、平台等。基本是由浅到深,内容都是有层次性的,所以建议跟着学就好,其中选修与进阶的部分我们会给大家标注出来。在掌握主要知识的前提下,大家可以根据自己的需求做进一步的加深。
下面是大纲内容哈,我们接下来都是按顺序去学习的
看来咱们得画个类似图谱或者操作系统的层次图帮大家理解