类测试和Junit基础

理解JUnit测试用例:以JunitSampleTest类为示例 JUnit 是一个广泛应用于Java开发领域的单元测试框架。它允许开发者编写和运行重复的代码,以验证代码中的特定逻辑是否按预期工作。JUnit被设计成易于使用,并且可以轻松集成到持续集成(CI)工具中,为开发团队提供即时反馈。JUnit提供了一系列方便的注解来简化测试代码的编写,并增强测试的表达能力。以下是一些JUnit中最常用的注解及其用途:@Test:标记一个方法作为测试方法。@Before:注解的方法会在每个测试方法执行前运行,常用于初始化操作。@After。 阅读详情

类测试和Junit基础

参考资料:<<软件测试与Junit实践>> 王东刚编著

 

以下是学习类测试所关心的问题,和看书做笔记摘录的对这些问题简要的解答。

什么是类测试?类测试中最大的问题是?

什么是测试驱动?什么是测试用例?什么是测试描述?

是否每个类都需要进行单独的单元测试?

怎样构造类测试驱动?

如何命名测试用例?

 测试用例如何分类?

Junit是什么?Junt的测试框架结构?

 

这篇文章没有涉及的问题:

Junit使用?

Junit如何扩展?

Junit最新版本4.0有什么变化?

 

 

针对类的测试

 

 

一个测试驱动(TestDriver)可以由1~~n个测试用例(TestCase)聚合而成,一个测试用例(TestCase)又有1~n个测试描述(Test)组合而成,这就是类测试的组合框架。

(Junit就是这样一个优秀的单元级测试框架)

 

PS:类测试就是一个或多个优良的测试驱动(外在形式)。

 

在类测试中,确定类测试用例和类测试驱动程序是非常困难的,在某些情况下,构建某个类的测试驱动程序所耗损的工作时间是创建这个类的好几倍,所以在类测试中需要引入测试评估机制,以保证测试价值最高。

 

PS:类测试中最大的问题就是如何有效地确定测试用例和确实测试驱动程序。

 

是否每个类都需要进行单独的单元测试?

是否每个类都需要进行单独的单元测试,还是绑定多个类进行集成测试,这些都取决于类的测试价值。评估每个类的测试价值,可以使用3个评估要素:

类在系统中的层次。(类越靠上,那么它的测试价值越高,下图中Class_A最高)

类本身复杂度和与外体间的交互复杂程度

开发该类的测试程序所需的成本(时间,人力,其他资源)。

 

 

怎样构造类测试驱动?

类测试驱动器是运行一个或者多个测试用例的可执行程序,编写类测试驱动有三种方法,分别是调用Main方法,嵌入静态测试方法和实现独立测试类。

 

 

 

如何命名测试用例?

根据用例方法命名测试用例

测试用例名称 = test +用例方法名称.(Junit4.0以前也是这么命名的)

 测试用例简单分类?

 

Junit

真正会用Junit的人是那些千方百计扩展Junit功能的人.

 

Junit单元级测试的好处:

l          可以使测试代码与产品代码分开。

l          针对某一个类的测试代码通过较少的改动便可以应用于另一个类的测试。

l          易于集成到测试人员的构建过程中,Junit和Ant的集合可以实施增量开发。

l          Junit是公开源代码的,可以进行二次方法。

l          可以方便地对Junit进行扩展。

Junit只是一个优秀的单元级测试框架,更严格的说法是Junit是用于单元级测试的开发式框架,包含以下特征:

l          使用断言方法判断期望值和实际值差异,返回Boolean值

l          测试驱动设备使用共同的初始化变量或者实例

l          测试包结构便于组织和集成运行。

l          支持图型交互模式和文本交互模式。

 

可以扩展Junit以用于其他测试:例如功能测试,性能测试,压强测试等。

 

 

 

 

 

 

ICC2:postmask ECO参考脚本 更多学习内容请关注「拾陆楼」知识星球。 阅读详情

相关推荐

Unipush2.0 App消息推送(在线+离线推送)

使用unipush2.0进行消息推送,包含在线跟离线

weixin_50251467的博客 3696

类的定义 与 测试

案例:学生 需求:首先定义一个学生类,然后定义一个学生测试类,在学生测试类中通过对象完成成员变量和成员方法的使用 思路 1定义一个学生类 类名:Student 成员变量:name , age 成员方法:student(),domework() 2:类名:StudentDemo 因为要测试所以有一个主方法 3:在学生测试类中通过对象完成成员变量和成员方法的使用 给成员变量赋值,输出成员变量的值 调用成员的方法 ...

weixin_51599540的博客 921

vc formal实例

gui 方式启动命令,

weixin_45077935的博客 682

面向对象的类测试技术研究

面向对象的类测试技术研究   摘要:类是面向对象软件的基本构成单元,类测试是面向对象软件测试的关键。从基于服务的、基于对象动态测试模型的、基于流图的以及基于规约的四个方面论述了类测试的思想和方法。   关键词:面向对象;软件测试;类测试   1、面向对象软件的类测试   面向对象软件从宏观上来看是各个类之间的相互作用。在面向对象系统中,系统的基本构造模...

weixin_34204057的博客 668

看完这篇爽文我终于学会了示波器(一)

示波器基础篇的介绍,希望对你有用,下次分享一下如何测试。

qq_45508321的博客 973

【Labview与SQL Server互联(labview可以引用数据库)】

Labview与SQL Server互联

Magize的博客 3585

类的测试

完成教材110页编程题,额外要求 除了Test类,PC,CPU,HardDisk要实现多个构造方法,比如PC类要有PC(), PC(CPU cpu), PC(HardDisk HD), PC(CPU cpu, HardDisk HD) 除了Test类,PC,CPU,HardDisk要覆盖toString(), equals()方法 Test类中要测试到所有类的toString(), e...

weixin_30685029的博客 193

基于深度学习的水质预测:多参数监测与预测

首先,我们需要收集水质监测的多参数数据。收集到的数据应包括不同时间点的水质参数值以及相应的水质等级标签,用于训练和评估深度学习模型。同时,数据的质量和数量对于模型的性能也有重要影响,因此在实际应用中需要充分考虑数据的采集和处理过程。总之,基于深度学习的水质预测可以通过收集水质监测的多参数数据并使用适当的深度学习模型进行训练和预测来实现。通过以上的深度学习模型,我们可以利用水质监测的多参数数据进行水质预测。这种基于深度学习的方法可以提高水质预测的准确性和稳定性,为水质监测和环境保护提供有力支持。

web_bug407的博客 1103

测试类写法以及几种常用方式

这里写自定义目录标题为什么需要测试类常用的jar包测试数据库调用测试Restful接口通过Mock模拟方法调用@Spy注解的使用 依赖注入判读方法调用次数模拟方法返回值when return 使用 为什么需要测试类 常用的jar包 测试数据库调用 测试Restful接口 通过Mock模拟方法调用 @Spy注解的使用 依赖注入 判读方法调用次数 模拟方法返回值 when return 使用 是否真的...

徐光耀的博客 2万+

Synthesia技术浅析(四):自然语言处理

Synthesia 的自然语言处理(NLP)模块是其核心技术之一,涵盖了文本转语音(TTS)、情感分析以及多语言支持等多个方面。

m0_75253143的博客 1166

python-pandapower电力系统潮流计算(算例8:ieee33节点潮流计算))

python-pandapower电力系统潮流计算(算例8:ieee33节点潮流计算))

总裁余(余登武)博客 5032

如何使用Eclipse创建Java类和JUnit测试类

如何使用Eclipse创建Java类和JUnit测试类一、创建一个新的Java项目创建一个Java类二、添加JUnit到项目的构建路径三、创建一个JUnit测试类四、运行JUnit测试

Maywsy的博客 4089

使用 Visual Studio Code 搭建 SAP UI5 本地开发环境

工欲善其事,必先利其器。时至今日,SAP 提供了非常多的 SAP UI5 开发工具,既包含本地搭建的,也包含浏览器里远端使用的工具,比如 WebIDE 和 Business Application Studio. 我们访问下面这个链接,就能找到所有这些工具的安装或者配置步骤: https://tools.hana.ondemand.com/#sapui5 如果想选择本地开发,SAP 推荐的工具是 Visual Studio Code,也就是本文要介绍的内容。 也可以下载 WebIDE 的本地安装包,将其安

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1万+

Junit4对于类测试的实践

最近一段实践参与公司中单元测试用例的

447

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

Junit对Triangle( )类(判断三角形)进行测试。

一、实验目的 对Triangle( )类(判断三角形)进行测试。 Triangle( )类具有以下要求:  类有3个成员分别是三条边;它们都具有整数值,且满足以下条件。  若给定三条边不能构成三角形,则提示用户并返回代码0;若给定三条边构成不规则三角形,则提示用户并返回代码1;若给定三条边构成等腰三角形,则提示用户并返回代码2;若给定三条边构成等边三角形,则提示用户并返回代码3。 二、测试环境...

zhangyao的博客 2万+

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

java sevice类测试_Junit测试Service类方法教程

Junit测试是很方便的,本博客记录一下Junit测试一些Service接口的方法,这样可以不运行项目,在@Test注解的方法里直接测试Maven引入jar包:UTF-84.12junitjunit${junit.version}test方法一、IOC方法通过ApplicationContext,ioc的方法来获取对应的beanimport org.junit.Before;import org....

weixin_30861557的博客 986

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

测试驱动的开发系列 第二部分:用JUnit测试Java类

测试驱动的开发系列 第二部分:用JUnit测试Java类Test_Driven Development Series Part I:Testing Java Classes with JUnitBy Wellie Chao January 2004 一、简介(Introduction) 看到这儿你应该已经知道为什么测试如此重要了。如果还没有的话,请先阅读这个分为五个部分的系列论文

chaosii的专栏 1618

【JavaEE学习】使用Junit类测试

在一个类中声明一个方法 public class JunitTest { //一个方类只能有一个的main方法 public static void main(String[] args) { System.out.println("main"); } //添加@Test注解 @Test public void maTest(){ System.out.println("Junit Test.."); } } 引入Junit包 MAVEN中引入Junit Jar包 <depen

qq_35317306的博客 801

Idea+JUnit+JUnitGenerator,生成自动测试类(可测试controller)

Idea+JUnit+JUnitGenerator,生成自动测试类(可测试controller) 1.安装JUnitGenerator插件 打开Settings窗口搜索junit,如图: JUnitGenerator V2.0插件,可以帮助我们自动生成测试代码。 如果搜索junit没有JUnitGenerator V2.0时,如下图操作(下载添加): JUnitGenerator V2.0插件模板配置: 输出路径(Output Path): ${SOURCEPATH}/../../.

大诚子的博客 7019

java jUnit 单元测试方法与包装类的详解

package com.day24.test; public class Test { public static void main(String[] args) { System.out.println("jUnit 单元测试方法"); //怎么实现单元测试 // 1.选中当前工程->右键 build path -> add libraries -> jUnit 4 下一步 // 2.创建一个java...

Json的知识梦工厂 446

JUnit如何测试dao类

为了自己写的程序更加的安全,想先用JUnit写个测试类,但是dao类涉及到了db的相关操作的sql,该如何测试呢?难道自己需要写个dbConnection类吗?再在JUnit测试类中调用吗?我感觉这样的话就有些冗余的代码出现。 希望在这方面的一下,期待你的回复!!!!! ...

liuxingyu3000的专栏 1186

Java-Day15 常用类解析 (包装类、Junit测试单元、Object类、String类及StringBuffer和StringBuilder)

1. 基本数据类型包装类:什么是包装类,Java中的包装类,装箱和拆箱功能,基本数据类型、包装类、String类之间的转化,进制转换。2.Junit单元测试。3. Object类,常用方法,native关键字,引用传递和对象深浅拷贝。4. String类及相关的类,String字符串,String对象的创建和图解,字符串对象是如何存储的。4.2 StringBuffer和StringBuilder...

weixin_51612062的博客 464

Junit 单元测试、BeanUtils、Properties类

一、 Junit单元测试 1.1. Junit单元测试框架的基本使用   一、搭建环境: 导入junit.jar包(junit4)   二、写测试类: 0,一般一个类对应一个测试类。 1,测试类与被测试类最好是放到同一个包中(可以是不同的源文件夹) 2,测试类的名字为被测试类的名字加Test后缀。   三:写测试方法: 0,一般一个方法对应一个单元测试方法。 1,测试方法的名字为test前缀加被测

qq_19900687的博客 1万+

android用什么测试类,android – 使用firebase对类进行JUnit测试

我正在尝试JUnit测试这个类:public class WeekListActivity extends AppCompatActivity implements AdapterView.OnItemClickListener {private ArrayList weekList = new ArrayList<>();private ArrayAdapter adapter;Li...

weixin_39980184的博客 147

java junit 运行,使用命令行从JUnit类运行单个测试

忽然笑您可以非常轻松地创建自定义的准系统JUnit运行器。这是一种将以以下形式运行单个测试方法的方法com.package.TestClass#methodName:import org.junit.runner.JUnitCore;import org.junit.runner.Request;import org.junit.runner.Result;public class SingleJ...

weixin_28921115的博客 544
上一篇: 工作现状
下一篇: 图说MouseListener,MouseListener接口
飞羽飞之猪
博客等级 码龄21年 127粉丝 85原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值