javaunittest怎么写

1.怎样创建一个java Unit test

往简单了说,在没有返回值的方法前加上@Test ,然后将junit的jar包引入就好了。。这个ide都会有的,直接引入就行了,简单代码如下:然后run as junit test就可以运行了

public class IntegerTest {

@Test

public void test() {

Integer i1 = new Integer(2) ;

Integer i2 = new Integer(2) ;

Integer i3 = 35;

Integer i4 = 35;

System.out.println(i3==i4);

}

}

2.java junit单元测试怎么写

package com.yuanqi.zfb.test;

import org.junit.Test;

import com.yuanqi.zfb.util.VerifyCodeUtils;

public class Atest {

@Test

public void test(){

String verifycode =VerifyCodeUtils.generateVerifyCode(8);

System.out.println(verifycode);

}

@Test

public void test2(){

// String str="2015-11-23 11:23:44";

/* boolean b= str.matches("\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2}");

if(b){

System.out.println("ok");

}else{

System.out.println("222222");

}*/

String str="2015112311:23:44";

boolean b= str.matches("\\d{10}:\\d{2}:\\d{2}");

System.out.println(b);

}

@Test

public void test3(){

String trTime="2014112800:05:48";

String inyear=trTime.substring(0, 4);

String inmonth=trTime.substring(4,6);

String inday=trTime.substring(6,8);

String intime=trTime.substring(8);

String time=inyear+"-"+inmonth+"-"+inday+" "+intime;

System.out.println(time);

}

}

3.Java Junit Test 要怎么写

一般不用写,直接测试方法,在测试的方法上加上注解@Test

import org.junit.Test;

public class TestJunit {

@Test

public void TestSaveMethod(){

Food food=new Food("红烧肉", new BigDecimal(45.5).setScale(2, BigDecimal.ROUND_HALF_UP), "hsr.jpg");

SaveFood(food);

}

public void SaveFood(Food food){

if(food!=null){

food.setId(UUID.randomUUID().toString());

System.out.println("Food Save is OK!");

System.out.println("当前ID:"+food.getId()+" 名称:"+food.getName()+" 单价:"+food.getPrice());

}else{

System.out.println("Food Save is False!");

}

}

}

class Food implements Serializable{

private String id;

private String name;

private BigDecimal price;

private String icon;

public Food(String name,BigDecimal price,String icon) {

this.name=name;

this.price=price;

this.icon=icon;

}

public void setId(String id) {

this.id = id;

}

public String getId() {

return id;

}

public String getName() {

return name;

}

public BigDecimal getPrice() {

return price;

}

public String getIcon() {

return icon;

}

}

//这样的话RUN 的时候就会出现JUnit测试

4.java 怎么写junit测试用例

文件名:Calutor.java

package com.sc.zy;

public class Calutor {

public int add(int num1,int num2){

return num1+num2;

}

public int sub(int num1,int num2){

return num1-num2;

}

public int mul(int num1,int num2){

return num1*num2;

}

public int div(int num1,int num2){

if(num2==0){

throw new MyException();

}

return num1/num2;

}

}

文件名:MyException.Java

package com.sc.zy;

public class MyException extends RuntimeException {

}

文件名:CalutorTest.java

package com.sc.zy;

import junit.framework.Assert;

import org.junit.After;

import org.junit.AfterClass;

import org.junit.Before;

import org.junit.BeforeClass;

import org.junit.Ignore;

import org.junit.Test;

public class CalutorTest {

private Calutor c;

@BeforeClass

public static void setUpBeforeClass(){

System.out.println("=====static init=======");

}

@AfterClass

public static void tearDownAfterClass(){

System.out.println("=====static destory=======");

}

@Before

public void setUp(){

System.out.println("=======@before=======");

c=new Calutor();

}

@After

public void tearDown(){

System.out.println("=======@after=======");

}

@Test

public void testAdd(){

int sum=c.add(1, 2);

Assert.assertEquals(3, sum);

}

@Test(expected=com.sc.zy.MyException.class)

public void testDiv(){

c.div(1, 0);

}

@Ignore

public void testDiv1(){

int d=c.div(1, 5);

Assert.assertEquals(0, d);

}

}

5.Java开发如何编写出优秀的Java单元测试

1. 使用框架来用于单元测试

Java提供了若干用于单元测试的框架。TestNG和JUnit是最流行的测试框架。JUnit和TestNG的一些重要功能:

易于设置和运行。

支持注释

允许忽略或分组并一起执行某些测试。

支持参数化测试,即通过在运行时指定不同的值来运行单元测试。

通过与构建工具,如Ant,Maven和Gradle集成来支持自动化的测试执行。

EasyMock是一个模拟框架,是单元测试框架,如JUnit和TestNG的补充。EasyMock本身不是一个完整的框架。它只是添加了创建模拟对象以便于测试的能力。例如,我们想要测试的一个方法可以调用从数据库获取数据的DAO类。在这种情况下,EasyMock可用于创建返回硬编码数据的MockDAO。这使我们能够轻松地测试我们意向的方法,而不必担心数据库访问。

2. 谨慎使用测试驱动开发!

测试驱动开发(TDD)是一个软件开发过程,在这过程中,在开始任何编码之前,我们基于需求来编写测试。由于还没有编码,测试最初会失败。然后写入最小量的代码以通过测试。然后重构代码,直到被优化。

目标是编写覆盖所有需求的测试,而不是一开始就写代码,却可能甚至都不能满足需求。TDD是伟大的,因为它导致简单的模块化代码,且易于维护。总体开发速度加快,容易发现缺陷。此外,单元测试被创建作为TDD方法的副产品。

然而,TDD可能不适合所有的情况。在设计复杂的项目中,专注于最简单的设计以便于通过测试用例,而不提前思考可能会导致巨大的代码更改。此外,TDD方法难以用于与遗留系统,GUI应用程序或与数据库一起工作的应用程序交互的系统。另外,测试需要随着代码的改变而更新。

因此,在决定采用TDD方法之前,应考虑上述因素,并应根据项目的性质采取措施。

3. 测量代码覆盖率

代码覆盖率衡量(以百分比表示)了在运行单元测试时执行的代码量。通常,高覆盖率的代码包含未检测到的错误的几率要低,因为其更多的源代码在测试过程中被执行。测量代码覆盖率的一些最佳做法包括:

使用代码覆盖工具,如Clover,Corbetura,JaCoCo或Sonar。使用工具可以提高测试质量,因为这些工具可以指出未经测试的代码区域,让你能够开发开发额外的测试来覆盖这些领域。

每当写入新功能时,立即写新的测试覆盖。

确保有测试用例覆盖代码的所有分支,即if / else语句。

高代码覆盖不能保证测试是完美的,所以要小心!

4. 尽可能将测试数据外部化

在JUnit4之前,测试用例要运行的数据必须硬编码到测试用例中。这导致了限制,为了使用不同的数据运行测试,测试用例代码必须修改。但是,JUnit4以及TestNG支持外部化测试数据,以便可以针对不同的数据集运行测试用例,而无需更改源代码。

5. 使用断言而不是Print语句

许多新手开发人员习惯于在每行代码之后编写System.out.println语句来验证代码是否正确执行。这种做法常常扩展到单元测试,从而导致测试代码变得杂乱。除了混乱,这需要开发人员手动干预去验证控制台上打印的输出,以检查测试是否成功运行。更好的方法是使用自动指示测试结果的断言。

6. 构建具有确定性结果的测试

一些方法不具有确定性结果,即该方法的输出不是预先知道的,并且每一次都可以改变

7. 除了正面情景外,还要测试负面情景和边缘情况

通常,开发人员会花费大量的时间和精力编写测试用例,以确保应用程序按预期工作。然而,测试负面测试用例也很重要。负面测试用例指的是测试系统是否可以处理无效数据的测试用例。例如,考虑一个简单的函数,它能读取长度为8的字母数字值,由用户键入。除了字母数字值,应测试以下负面测试用例:

用户指定非字母数字值,如特殊字符。

用户指定空值。

用户指定大于或小于8个字符的值。

类似地,边界测试用例测试系统是否适用于极端值。例如,如果用户希望输入从1到100的数字值,则1和100是边界值,对这些值进行测试系统是非常重要的。

javaunittest怎么写

转载请注明出处育才学习网 » javaunittest怎么写

知识

周六日在英语中怎么写

阅读(200)

本文主要为您介绍周六日在英语中怎么写,内容包括英语中的周六和周日是怎么写的,周一,周二,周三,周四,周五,周六,周末用英语的简称怎么说,周一至周日英语怎么写。星期用英语简称一般是取星期的前三个单词,然后后面加点号。一般而言,“周末”没

知识

水站报表格式怎么写

阅读(177)

本文主要为您介绍水站报表格式怎么写,内容包括自来水流量表表格格式怎么做,水站搞活动怎么写,怎么用电脑来做水电气报表。在空白的桌面上,新建Microsoft Office Excel 2007 Workbook,打开这个Excel的表格;我们先插入一个表

知识

8字伤感空间描述怎么写

阅读(189)

本文主要为您介绍8字伤感空间描述怎么写,内容包括空间描述简短伤感5字,空间描述简短伤感5字,8个字的伤感语句。我整理的一些,希望可以帮助到你~o(∩_∩)o 刀剑无痕月下骑马╯ 红尘醉 伊人为谁憔悴╯ 红颜泪 佳人为谁憔悴眼眸里丶倒影的伤他曾

知识

结婚日条子怎么写

阅读(203)

本文主要为您介绍结婚日条子怎么写,内容包括结婚日贴怎么写,结婚迎亲日贴怎么写,结婚报日怎么写。下面我按照邀请人分类,收集了一些喜贴文字,供新人们参考。 家长出面 1)文言体男方 谨择X年X月X时为小儿XX授室寅备喜酌 敬候 X府X

知识

摘编心得体会开头怎么写

阅读(202)

本文主要为您介绍摘编心得体会开头怎么写,内容包括心得体会开头怎么写,心得体会的开头怎么写,心得体会开头怎么写。工作总结.工作总结一般包括三部分: 1,收获,2不足,3下一步的计划,现举列如下: 个人工作总结(全年) 尊敬的领导,现就本人一年来的日

知识

自闭症语言沟通课的教案怎么写

阅读(313)

本文主要为您介绍自闭症语言沟通课的教案怎么写,内容包括自闭症儿童语言沟通课的教案怎么写,哪里有自闭症(孤独症)的教案下载包括,自闭症儿童的阅读课怎么上。语言课教案 项目安排 环节名称 流程设置 教学目标 教具 一.模仿语言 小动物变魔术

知识

堂哥用英语怎么写

阅读(247)

本文主要为您介绍堂哥用英语怎么写,内容包括堂哥的英文怎么写,堂哥的英文怎么写,堂哥用英文怎么说。亲属称谓中英文对照表姑 Second cousin 表叔 Second cousin 堂兄弟Fathers sisters sons;m

知识

木耳糖果用英语怎么写

阅读(195)

本文主要为您介绍木耳糖果用英语怎么写,内容包括糖果用英文怎么写,糖果用英语怎么说,糖果用英语怎么读糖果用英语怎么说。candy 近义词或词组sweets | sweetstuff | sweety | lollypop | sweetmeat | sw

知识

车险活动文案怎么写

阅读(247)

本文主要为您介绍车险活动文案怎么写,内容包括促销文案怎么写,代理车险广告语怎么写,保险车险活动策划方案。步骤1.展现对听众要求的了解你会觉得比较了解你需要的人(一个包括配偶与心理医生在内的类别)也比较能满足你的需要。相同的道理也适

知识

overture魔鬼音符怎么写

阅读(253)

本文主要为您介绍overture魔鬼音符怎么写,内容包括overture这个音符怎么打,在Overture里写五线谱,音符下连着音符的线要怎么打出来,OVERTURE图片的音符怎么打。Glissando:

知识

金桥的拼音怎么写

阅读(213)

本文主要为您介绍金桥的拼音怎么写,内容包括金桥拼音大写,金桥拼音大写,金桥管理员的拼音怎么写。//f.com/zhidao/wh%3D600%2C800/sign=/

知识

空调开关怎么用

阅读(236)

本文主要为您介绍空调开关怎么用,内容包括空调开关如何使用,空调遥控器使用方法,空调开关如何使用。从左至右,模式(通风、制冷、制热)、风速(高、中、低)、调低设定温度、调高设定温度。中间最大的那个是电源开关。通常最左边的模式图标为:通

知识

大于一个数字怎么写

阅读(314)

本文主要为您介绍大于一个数字怎么写,内容包括形容一个数字大于另一个数字要用哪个单词,大于一个数值范围怎么理解,大于号怎么写。大于一个数值范围 就是超出一个数值的允许范围。例如,数值范围 是 1到100, 那么 大于 100 和 小于 1 都是 超

知识

怎么写中东促销邮件

阅读(187)

本文主要为您介绍怎么写中东促销邮件,内容包括第一封外贸推销邮件如何写,如何写好一封产品促销活动邮件,外贸告诉客户促销活动的邮件怎么写。2.在邮件最后一段可写上这么一句:can i send you这样会使客户觉得你比较尊重他,在发更多信息之前有

[/e:loop]