JAVA的单元测试技术
1.选定开发工具
选定eclipse为开发工具,用JAVA进行编程,实现此次测试。

2.编写需要被测试的java类
此次我们以顺序查找与二分查找法为例。
package com.mycode.tuils;
public class Search {
public int sqlSearch(int a,int[] arr,int b) //顺序查找
{
int i;
for(i=0;i<arr.length;i++)
{
if(a==arr[i])
{
b=i;
break;
}
}
return b;
}
public int binarySearch(int a,int[] arr,int b) //二分查找法("arr"为排序[升序]过后的数组)
{
int low=0;
int high=arr.length-1;
int mid;
while(low<=high)
{
mid = (low + high)/2;
if (arr[mid] == a)
{
b = mid;
break;
}
else if (arr[mid] < a)
low = mid + 1;
else if (arr[mid] > a)
high = mid - 1;
}
return b;
}
}
3.创建测试单元
(1)右键点击新建的project,选定Build Path->Add Library->JUnit->JUnit5
(2)创建新的Sound folder,命名为test(src->Sound floder)
(3)自动生成测试类,选定编写的被测试类Search()->NEW->orther
(4)点开orther,在Wizard中搜索JUnit->JUnit Test Case,如下图所示,修改图中红色标记处。

(5)点击下一步,选定所有被测试函数->Finish。

4.编写测试类
package com.mycode.tuils;
import static org.junit.Assert.assertEquals;
import static org.junit.jupiter.api.Assertions.*;
import org.junit.jupiter.api.Test;
class SearchAutoTest {
@Test
public void sqlSearch()
{
int[] arr= {1,5,8,6,11,25,36,42,15,85};
int a=8;
int b=0;
int c=2;
assertEquals(c,new Search().sqlSearch(a,arr,b));
}
@Test
public void binarySearch()
{
int[] arr= {1,5,6,8,11,15,25,36,42,85};
assertEquals(3,new Search().binarySearch(8,arr,0));
}
}
5.运行测试类
选定测试类->Run As->JUnit Test
##6.测试结果
当Errors=0,与Failures=0,以及所有函数运行成功时说明此次测试成功。如下图所示。

###注意:
(1)每个测试函数前加@Test,以保证测试可以正常运行。
(2)测试类与被测试类所在的包的名字必须相同。
(3)编写被测试代码时先写主函数,保证程序的正常运行,在测试前再删除主函数。
JAVA的单元测试技术的更多相关文章
- Java单元测试技术1
另外两篇关于介绍easemock的文章:EasyMock 使用方法与原理剖析,使用 EasyMock 更轻松地进行测试 摘要:本文针对当前业软开发现状,先分析了WEB开发的技术特点和单元测试要解决的问 ...
- ABAP和Java的单元测试Unit Test
ABAP ABAP class单元测试的执行入口,CLASS_SETUP, 是硬编码在单元测试框架实现CL_AUNIT_TEST_CLASS里的. 待执行的单元测试方法通过CL_AUNIT_TEST_ ...
- java的poi技术读取Excel数据到MySQL
这篇blog是介绍java中的poi技术读取Excel数据,然后保存到MySQL数据中. 你也可以在 : java的poi技术读取和导入Excel了解到写入Excel的方法信息 使用JXL技术可以在 ...
- Java 加解密技术系列文章
Java 加解密技术系列之 总结 Java 加解密技术系列之 DH Java 加解密技术系列之 RSA Java 加解密技术系列之 PBE Java 加解密技术系列之 AES Java 加解密技术系列 ...
- java的JSP技术
java的JSP技术 [toc] 1.JSP简介 Jsp技术是用来开发java web的页面显示的,所有MVC模型里面的视图层,所以视图层的开发 jsp不是编程语言,三个英文是java server ...
- java的poi技术写Excel的Sheet
在这之前写过关于java读,写Excel的blog如下: Excel转Html java的poi技术读,写Excel[2003-2007,2010] java的poi技术读取Excel[2003-20 ...
- Java Web编程技术学习要点及方向
学习编程技术要点及方向亮点: 传统学习编程技术落后,应跟著潮流,要对业务聚焦处理.要Jar, 不要War:以小为主,以简为宝,集堆而成.去繁取简 Spring Boot,明日之春(future of ...
- java的poi技术读,写Excel[2003-2007,2010]
在上一篇blog:java的poi技术读取Excel[2003-2007,2010] 中介绍了关于java中的poi技术读取excel的相关操作 读取excel和MySQL相关: java的poi技术 ...
- java的poi技术读取Excel[2003-2007,2010]
这篇blog主要是讲述java中poi读取excel,而excel的版本包括:2003-2007和2010两个版本, 即excel的后缀名为:xls和xlsx. 读取excel和MySQL相关: ja ...
随机推荐
- socket 简单了解
网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket. 建立网络通信连接至少要一对端口号(socket).socket本质是编程接口(API),对TCP/IP的 ...
- 一张图看懂AI、机器学习和深度学习的区别
AI(人工智能)是未来,是科幻小说,是我们日常生活的一部分.所有论断都是正确的,只是要看你所谈到的AI到底是什么. 例如,当谷歌DeepMind开发的AlphaGo程序打败韩国职业围棋高手Lee Se ...
- Ubuntu-18.04.2-几个启动错误解决办法
问题如图: 这里三个问题: 1. piix4_smbus: SMBus Host controller not enabled.(i2c_piix4模块所致,因为系统找不到这个模块,所以报错) 解决办 ...
- [C]排序并插入
/* 编写程序,在主函数中定义一个有10个元素的整型一维数组,用户输入9个数据,调用函数,对数组元素进行从小到大排序后,在函数中输入一个数,插入到数组中正确的位置,并输出. */ #include&l ...
- Java BitSet解决海量数据去重
先提一个问题,怎么在40亿个整数中找到那个唯一重复的数字? 第一想法就是Set的不可重复性,依次把每个数字放入HashSet中,当放不去进去的时候说明这就是重复的数字,输出这个数字. if(hs.co ...
- layui layui.open弹窗后按enter键不停弹窗问题的解决
问题描述:layui.open弹窗后,点击enter键会不停弹窗,背景颜色变得越来越深 解决办法:1.使用回调函数让按钮失去焦点 var info = layer.open({ type: 2 , t ...
- Hbase数据库
1.简介 HBase从诞生至今将近10年,在apache基金会的孵化下,已经变成一个非常成熟的项目,也有许多不同的公司支持着许多不同的分支版本,如cloudra等等. HBase不同于一般的关 ...
- Spring Cloud(Dalston.SR5)--Config 集群配置中心-刷新配置
远程 SVN 服务器上面的配置修改后,需要通知客户端来改变配置,需要增加 spring-boot-starter-actuator 依赖并将 management.security.enabled 设 ...
- ubuntu安装yaf
ubuntu 下PHP安装yaf扩展,需要先安装其他软件 sudo apt-get install libncurses5-dev libpcre3-dev pcre-devel -y 然后再执行 p ...
- html限制文本框只能输入数字和一个小数点
近期在做一个前台页面,有一个文本框是用来输入充值金额的,就想到了限制用户只能输入纯数字的数据且只能包含一个小数点.下面就是我实现的代码 $(function() { //阻止数字键以外的按键输入 $( ...