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 ...
随机推荐
- webpack 代码分割一点事
webpack 俨然已经成为前端最主流的构建工具,其功能多种多样,我们今天就来分析下关于代码分割这部分的一点事,并在最后讲述如何实现在webpack编译出的代码里手动添加一个异步chunk. 什么是c ...
- KeyguardSimPinView
/* * Copyright (C) 2012 The Android Open Source Project * * Licensed under the Apache License, Versi ...
- flask 图文混排的简单操作
1.引入js 包<script type="text/javascript" src="../../static/news/js/jquery-1.12.4.min ...
- H5视频直播扫盲
H5视频直播扫盲 2016-05-25 • 前端杂项 • 14 条评论 • lvming19901227 视频直播这么火,再不学就out了. 为了紧跟潮流,本文将向大家介绍一下视频直播中的基本流程和主 ...
- 关于java中为什么尽量把受检异常转化为非受检异常
首先理解一下受检异常与非受检异常: 异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机操作中可能遇到的异常,是一种常见的运行错误,只要程序设计的没有问题通常就不会发生.受检异常与程序的上 ...
- Centos7快速部署saltstack
saltstack是一个和ansible差不多的自动化运维工具,可以用来批量管理大量主机 OS:centos7.3 server:172.16.13.159 client: 172.16.13.156 ...
- How to detect, enable and disable SMBv1, SMBv2, and SMBv3 in Windows and Windows Server
转自:https://support.microsoft.com/en-us/help/2696547/detect-enable-disable-smbv1-smbv2-smbv3-in-windo ...
- tf.Variable() 与tf.get_variable()的区别
每次调用 tf.Variable() 都会产生一个新的变量,变量名称是一个可选参数,运行命名相同,如果命名冲突会根据命名先后对名字进行处理, tf.get_variable()的变量名称是必填参数,t ...
- 计算机图形学----基于3D图形开发技术 (韩正贤 著)
第1章 游戏模型 第2章 顶点处理机制 第3章 光栅化操作 第4章 片元处理和输出合并 第5章 光照和着色 第6章 参数曲线和表面 第7章 着色器模型 第8章 图像纹理 第9章 凹凸贴图 第10章 高 ...
- py-day4-2 python 内置函数
zip() #zip 拉链方法 一一对应 只要是序列类型的都可以 print(list(zip(('a','b','c'),(1,2,3)))) 结果: [('a', 1), ('b', 2), (' ...