单元测试已成为IT行业的重点关注内容。
无论做开发工作还是做测试工作,都需要对自己编写的后端代码实施单元测试。
按测试方法划分,测试主要分为两大类:黑盒测试与白盒测试。
01
一、黑盒测试
通过运行软件根据结果输出来分析软件功能的正常性。
例如:给你一个登录功能
1、用户输入用户名和密码,点击登录,
2、如果系统登录成功进入系统主界面
3、如果系统登录失败,界面提示用户名或密码错误,这也是我们生活中最常见的案例。
黑盒测试不需要考虑功能的内部逻辑结果,根据前后端提供的界面就可以录入测试数据,进行登录,根据功能测试用例分析预期结果与实际结果的正常性,来判断功能与需求的一致性。
02
二、白盒测试
单元测试是一种白盒测试,用户在实施过程中通过阅读或者测试程序的代码来完成工作。
工作原理如下图所示:
且如今的python语言或java语言都自带了JUnit框架,Python中的单元测试框架主要使用Unittest。
上述登录案例的代码如下:
1. 通过键盘录入用户名和密码
2. 判断用户是否登录成功
* 如果用户名与密码正确,则用户登录成功,反之,则用户登录失败。
实现代码如下:
今天主要来讲解如何使用Java程序编写单元测试用例。
需求:分享一个计算器中的加、减法单元测试案例。
具体实现步骤如下:
一、创建一个类。
在java的世界中一切皆对象,咱们优先创建一个计算机类,代码如下 图所示:
二、编写单元测试用例方法
创建一个计算机测试类,实例化对象,代码实现如下图所示:
加法案例执行结果如下:
减法案例代码执行过程:
通过上述单元测试案例的设计,也得出了单元测试结果,但大家有没有发现以上单元测试用例存在缺陷。
也就是说我执行单个加法运算或者执行单个减法运算,需要将前一个对注掉才能执行,这样操作起来非常不方便。
实际查看结果好像没问题,但以上代码并没有实际结果与预期结果之分,这样我们无法分辨单元测试结果的正确性。
故我们需要对以上单元测试代码进行一步优化。
03
三、程序脚本优化
给单元测试方法添加修饰符@Test与预期结果.
加法案例优化一:
减法方法优化二:
04
四、单元测试结果分析
单元左边三角形批量执行用例,最终达到单元测试的效果
执行结果如下图:
05
结语
总结:如何使用代码实现单元测试,只要你根据以上三个步骤的需求来实施,就可以编写出满足需求的单元测试代码,前提条件是需要具备一定的编程基础。
今天分享的核心内容是如何使用java代码来实现单元测试,Python编程同样适用,更多关于单元测试的方法和技巧敬请期待。