Junit测试报告.docx

上传人:b****5 文档编号:29396104 上传时间:2023-07-23 格式:DOCX 页数:11 大小:17.81KB
下载 相关 举报
Junit测试报告.docx_第1页
第1页 / 共11页
Junit测试报告.docx_第2页
第2页 / 共11页
Junit测试报告.docx_第3页
第3页 / 共11页
Junit测试报告.docx_第4页
第4页 / 共11页
Junit测试报告.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

Junit测试报告.docx

《Junit测试报告.docx》由会员分享,可在线阅读,更多相关《Junit测试报告.docx(11页珍藏版)》请在冰豆网上搜索。

Junit测试报告.docx

Junit测试报告

Junit单元测试

版本号:

制定日期:

2010-12

编制

冯宝鹏

日期

2012-04-14

审核

日期

批准

日期

文档修订记录

修订日期

修订内容

修订人

 

Junit单元测试

一实验目的

1.掌握白盒测试方法,并按单元测试的要求设计测试用例。

2.能熟练应用junit测试工具进行单元测试。

3.进行代码覆盖检查。

二实验环境

主流PC机一套,windows操作系统eclipse开发平台。

三实验内容

1、用java语言编写一个求一元二次方程根的函数

2、设计白盒测试用例,达到分支覆盖

3、使用弱健壮等价类分析方法设计测试用例。

4、根据以上设计的测试用例,编写junit测试代码,并进行测试。

5、利用EclEmma完成测试代码覆盖分析,并生成html格式代码覆盖测试报告。

四实验步骤

(1)根据白盒法设计测试用例,并撰写单元测试计划书。

(2)根据每个测试用例,编写基本Junit的单元测试脚本。

(3)生成html格式的代码覆盖测试报告。

五测试用例

采用条件覆盖法设计用例,使判断中的每个条件的可能取值至少满足一次。

分为四种情况:

(1)一元二次方程有两个实根(简单起见,将方程有两个相同实根,归类为方程有两个实根)

测试用例ID

Equation

测试用例名称

方程有两个实根

测试目的

测试一元二次方程有两个实根情况的正确性

前置条件

a!

=0&&b*b-4*a*c>0

操作步骤与输入

a=1.0f,b=.,c=

预期结果

x1=-1.0f,x2=

实际结果

x1=-1.0f,x2=

执行人

冯宝鹏

日期

执行人

冯宝鹏

(2)一元二次方程有两个虚根的情况

测试用例ID

Equation

测试用例名称

方程有两虚根

测试目的

测试一元二次方程有两个实根情况的正确性

前置条件

a!

=0&&b*b-4*a*c<0

操作步骤与输入

a=1.0f,b=2.0f,c=2.0f

预期结果

x1=,x2=1.0f

实际结果

x1=,x2=1.0f

执行人

冯宝鹏

日期

执行人

冯宝鹏

(3)方程为一元一次方程的情况

测试用例ID

Equation

测试用例名称

方程有一根

测试目的

测试方程为一元一次方程根情况的正确性

前置条件

a=0.0f

操作步骤与输入

a=0.0f,b=2.0f,c=4.0f

预期结果

x1=,x2=

实际结果

x1=,x2=

执行人

冯宝鹏

日期

执行人

冯宝鹏

(4)不为方程的情况

测试用例ID

Equation

测试用例名称

不为方程

测试目的

不是方程情况的正确性

前置条件

a=0.0f,b=0.0f

操作步骤与输入

a=0.0f,b=0.0f,c=3.0f

预期结果

x1=x2=1.0f

实际结果

x1=x2=1.0f

执行人

冯宝鹏

日期

执行人

冯宝鹏

六测试计划

(1)编写一元二次方程源代码,并通过JunitTestCase生成测试代码,并编写测试用例代码。

(2)通过不同的测试用例,分别对源代码进行结构化测试。

(3)生成测试代码覆盖率,并对数据进行分析。

七测试计划

1.功能实现类(采用工具类的方式)

packageclassEquation{

privatestaticfloatx1;

privatestaticfloatx2;

privatestaticfloatx;

privatestaticfloatreal;

privatestaticfloatimag;

privatestaticfloat[]results;

privatestaticfloata;

privatestaticfloatb;

privatestaticfloatc;

privatestaticfloatdelt;

publicstaticfloat[]calc(floatw,floatp,floatq)throwsException{

results=newfloat[2];

a=w;b=p;c=q;

if==a){

自定义异常类

packageclassMyArithmeticExceptionextendsException{

publicMyArithmeticException(){

}

publicMyArithmeticException(Stringmessage){

super(message);

}

publicMyArithmeticException(Throwablecause){

super(cause);

}

publicMyArithmeticException(Stringmessage,Throwablecause){

super(message,cause);

}

}

3.Junit单元测试类

packagetest;

importclassEquationTest{

@Test

publicvoidtestCalc(){

floata=;

floatb=;

floatc=;

float[]expecteds={,};

试一元二次方程有两个实根的情况

OVERALL?

COVERAGE?

SUMMARY

name

class,?

%

method,?

%

block,?

%

line,?

%

all?

classes

67%?

?

(2/3)

44%?

?

(4/9)

50%?

?

(124/249)

46%?

?

(23/50)

OVERALL?

STATS?

SUMMARY

total?

packages:

3

total?

executable?

files:

3

total?

classes:

3

total?

methods:

9

total?

executable?

lines:

50

COVERAGE?

BREAKDOWN?

BY?

PACKAGE

name

class,?

%

method,?

%

block,?

%

line,?

%

?

?

?

(0/1)

0%?

?

?

(0/4)

0%?

?

?

(0/16)

0%?

?

?

(0/8)

?

(1/1)

67%?

?

(2/3)

47%?

?

(93/199)

47%?

?

(15/32)

100%?

(1/1)

100%?

(2/2)

91%?

?

(31/34)

80%?

?

(8/10)

覆盖代码:

results=newfloat[2];

a=w;b=p;c=q;

if==a){

试二元一次方程有两个虚根的情况

OVERALL?

COVERAGE?

SUMMARY

name

class,?

%

method,?

%

block,?

%

line,?

%

all?

classes

67%?

?

(2/3)

44%?

?

(4/9)

52%?

?

(129/249)

46%?

?

(23/50)

OVERALL?

STATS?

SUMMARY

total?

packages:

3

total?

executable?

files:

3

total?

classes:

3

total?

methods:

9

total?

executable?

lines:

50

COVERAGE?

BREAKDOWN?

BY?

PACKAGE

name

class,?

%

method,?

%

block,?

%

line,?

%

?

?

?

(0/1)

0%?

?

?

(0/4)

0%?

?

?

(0/16)

0%?

?

?

(0/8)

?

(1/1)

67%?

?

(2/3)

49%?

?

(98/199)

47%?

?

(15/32)

100%?

(1/1)

100%?

(2/2)

91%?

?

(31/34)

80%?

?

(8/10)

代码覆盖情况:

results=newfloat[2];

a=w;b=p;c=q;

if==a){

测试一元一次方程有一个根的情况

OVERALL?

COVERAGE?

SUMMARY

name

class,?

%

method,?

%

block,?

%

line,?

%

all?

classes

67%?

?

(2/3)

44%?

?

(4/9)

31%?

?

(76/244)

40%?

?

(20/50)

OVERALL?

STATS?

SUMMARY

total?

packages:

3

total?

executable?

files:

3

total?

classes:

3

total?

methods:

9

total?

executable?

lines:

50

COVERAGE?

BREAKDOWN?

BY?

PACKAGE

name

class,?

%

method,?

%

block,?

%

line,?

%

?

?

?

(0/1)

0%?

?

?

(0/4)

0%?

?

?

(0/16)

0%?

?

?

(0/8)

?

(1/1)

67%?

?

(2/3)

25%?

?

(50/199)

38%?

?

(12/32)

100%?

(1/1)

100%?

(2/2)

90%?

?

(26/29)

80%?

?

(8/10)

代码覆盖情况:

results=newfloat[2];

a=w;b=p;c=q;

if==a){//bx+c=0;x=-c/b;

if!

=b){

x=-c/b;

results[0]=x;

print();

returnresults;

if==a){

if!

=b){

"该方程是一元一次方程,其根为:

x="+results[0]);

4测试不为方程的情况

抛出自定义异常:

OVERALL?

COVERAGE?

SUMMARY

name

class,?

%

method,?

%

block,?

%

line,?

%

all?

classes

100%?

(3/3)

44%?

?

(4/9)

14%?

?

(33/234)

23%?

?

(11/48)

OVERALL?

STATS?

SUMMARY

total?

packages:

3

total?

executable?

files:

3

total?

classes:

3

total?

methods:

9

total?

executable?

lines:

48

COVERAGE?

BREAKDOWN?

BY?

PACKAGE

name

class,?

%

method,?

%

block,?

%

line,?

%

?

(1/1)

33%?

?

(1/3)

11%?

?

(22/199)

16%?

?

(5/32)

?

(1/1)

25%?

?

(1/4)

25%?

?

(4/16)

25%?

?

(2/8)

100%?

(1/1)

100%?

(2/2)

37%?

?

(7/19)

50%?

?

(4/8)

代码覆盖情况:

results=newfloat[2];

a=w;b=p;c=q;

if==a){//bx+c=0;x=-c/b;

if!

=b){

thrownewMyArithmeticException("除数不能为0");

publicMyArithmeticException(Stringmessage){

super(message);

}

publicclassEquationTest{

}catch(Exceptione){

();

}

}

九实验总结

通过本次实验,对Junit单元测试框架有了一定的理解。

同时,熟悉了开源框架的使用,通过查找API

函数,比如、可以进行断言测试等等。

总之,通过本次实验,使我对软件测试有了一个初步的认识,开启了今后学习软件测试之门。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1