篇一 :白盒测试实验报告

实 验 报 告

课 程:软件测试

实验项目:白盒测试用例设计与执行

专业年级:计科07级

姓 名:**

学 号:***

指导教师:

实验时间:20**-6-4

实验成绩:

一、实验目的

1.熟练掌握如何运用基路径测试方法进行测试用例设计。

2.初步熟悉如何利用程序插装技术进行逻辑覆盖率分析。

二、实验内容

1、题目

前一日函数PreDate是NextDate的逆函数(代码实现见下),实现功能为:输入1800 年到2050 年之间的某个日期,函数返回这一天的前一天的日期。(此处不考虑无效输入)

请采用基路径方法对前一日函数进行测试用例设计,并利用程序插装技术对测试用例的判定覆盖率进行检查分析。

代码:(被测函数为PreDate)

#include"stdio.h"

typedef struct MyDate{

int month;

int day;

int year;

}MyDate;

MyDate PreDate(MyDate date);

int Leapyear(int year);

void Print(MyDate date);

MyDate PreDate(MyDate date)

//输入日期有效性检查中其他模块实现,此处假设输入日期都是合法数据

{

1.MyDate yesterday;

2.yesterday.month = date.month; // initialization

3.yesterday.day = date.day;

4.yesterday.year = date.year;

5.int days_month[13]={0,31,0,31,30,31,30,31,31,30,31,30,31};

…… …… 余下全文

篇二 :白盒测试实验报告范本

实验一:白盒软件测试

一、实验目的

通过简单程序白盒测试,熟悉测试过程,对软件测试行程初步了解,并养成良好的测试习惯。熟练掌握如何运用基路径测试方法进行测试用例设计,初步熟悉如何利用程序插装技术进行逻辑覆盖率分析。

二、实验内容

背景:

被测测试程序功能:计算被输入日期是星期几;

程序定义:已知公元1年1月1日是星期一,只要输入年月日,能自动回复当天是星期几;

测试环境:Windows vista、Dev C++;

说明:本次测试采用插桩测试法,由于程序简单,手动输入测试用例。

程序说明:

A程序思路:计算输入日期与公元1年1月1日所相差的天数,具体如下:总天数=公元1年到输入日期上一年年底天数+输入年份的1月到上月月底天数+输入日期的天数

B闰年满足条件(year%4==0)&&(year%100!=0)||(year%400==0)

(1)分析各种输入情况,结合程序输出结果,并给出详细测试用例;

(2)根据(1)所划分的等价类,进行边界值分析,并给出具体的测试用例;

(3)决策表测试法;

①列出输入变量month、 day、 year的有效等价类;(条件桩)

②分析程序的规格说明,给出问题规定的可能采取操作;(动作桩)

③画出决策表(简化);

④根据决策表,给出详细测试用例。

代码:(被测部分为while循环内部语句)

#include <iostream>

using namespace std;

int main()

{

int x=1,year, month, day;

while(x)

{

1.int i, num=0,total, total1, total2;

2.cout<<"请输入年份: ";

…… …… 余下全文

篇三 :白盒测试报告

NextDate函数白盒测试

1、 简介

1.1编写目的

本测试报告为nextdate函数的测试报告,目的在于总结测试阶段的测试以及分析测试结果,通过测试来检测每个功能是否都能正常使用。预期参考人员包括测试人员、开发人员和需要阅读本报告的老师。

1.2项目背景

本项目为软件测试上机作业。

1.3术语

等价类划分:把程序的输入域划分成若干部分(子集),然后从每个部分中选取少数代表性数据作为测试用例。每一类的代表性数据在测试中的作用等价于这一类中的其他值。

1.4参考资料

软件测试(第二版) (美)Ron Patton著 张小松 王钰 曹跃译 机械工业出版社 测试报告模板 原创作者:jerry

2、 测试概要

2.1测试程序源代码

#include <iostream>

using namespace std;

void NextDate(int year,int month,int day);

void main()

{

}

int year=0,month=0,day=0; NextDate(year,month,day);

void NextDate(int year,int month,int day)

{

cout<<"请输入年份:"<<endl; cin>>year; while(!(year>=1811 && year<=2013)) { cout<<"年份超过界限,请重新输入"<<endl; cin>>year; } cout<<"请输入月份:"<<endl; cin>>month; while (month>12||month<1) { cout<<"月份输入有误,请重新输入"<<endl; cin>>month; } cout<<"请输入日期:"<<endl; cin>>day; while (day>31||day<1) { cout<<"日期输入有误,请重新输入"<<endl;

…… …… 余下全文

篇四 :白盒测试报告 三角形

白盒测试

一、 实验目的
1、 掌握白盒测试的基本方法;
2、 掌握白盒测试用例的编写。
二、 实验要求
1、 根据给出的程序分别使用语句覆盖、判定覆盖、条件覆盖、判定-条件覆盖、条件组合覆盖、路径覆盖、基本路径覆盖来设计相应的测试用例。

2、 输入数据进行测试,执行测试用例。

三、 实验内容

  程序:用VC++ 6.0编写三角形函数:

三角形中,要求输入三边的长度:a,b,c,当三边不可能构成三角形时提示错误,可构成三角形时计算三角形的周长。若是等腰三角形打印“等腰三角形”,若是等边三角形,则打印“等边三角形”。

源代码:

#include <iostream>

using namespace std;

double triangleType(double a,double b,double c)

 {

              double l;

              l=a+b+c;

               if(a+b<=c&&a+c<=b&&b+c<=a)

                      cout<<"error:不能构成三角形"<<endl;

…… …… 余下全文

篇五 :白盒测试实验报告

《软件测试技术 》实验报告

实验序号:03    实验项目名称:使用基本路径覆盖法测试自动售货机程序

附件:

修改后的实现代码:

package test3;

public class SaleMachine {

    private int countOfBeer, countOfOrangeJuice, countOfFiveCents, countOfOneDollar;

    private String[] typeOfGoods = {"Beer", "OrangeJuice"};

    private String resultOfDeal;

   

    public SaleMachine()

    {

       initial();

    }

   

    public void initial()

    {

       countOfBeer = 6;

       countOfOrangeJuice = 6;

       countOfFiveCents = 6;

…… …… 余下全文

篇六 :软件测试白盒测试实验报告

三角形判定

(1)    题目内容描述

输入三条边,进行三角形的判定。

(2)    测试用例的编写

测试用例参照三角形的组成规则编写。根据两边之和大于第三边的规则编写测试用例,并且考虑输入值非法的情况(小于0的数)。

程序代码:

#include <iostream>

using namespace std;

void main()

{

       int b;

       int c;

       int a;

       cin >> a >> b >> c;

       if (a*b*c != 0 && (a + b > c&&b + c > a&&a + c > b))

       {

              if (a == b&&b == c)

              {

                     cout << "您输入的是等边三角形!";

…… …… 余下全文

篇七 :白盒测试实验报告

关于三角形问题的白盒测试实验报告

一、实验目的

1、能熟练应用功能性测试技术进行测试用例设计;

2、对测试用例进行优化设计;

二、实验内容

1、题目内容描述

针对实验一编写的源代码进行白盒测试。要求绘制出程序的控制流图,采用逻辑覆盖和基路径方法设计测试用例。执行测试用例,并分析测试结果。可以使用C++Test对代码进行静态检查和动态测试。

2、测试用例的编写

根据条件绘制程序流程图如下:

由程序流程图得如下控制流图:

采用逻辑覆盖设计测试用例并执行测试用例:

(1)语句覆盖:

白盒测试实验报告

(2)判定覆盖

白盒测试实验报告

(3)条件覆盖:

白盒测试实验报告

(4)判定-条件覆盖:

白盒测试实验报告

(5)条件组合覆盖:

白盒测试实验报告

(6)路径覆盖:

白盒测试实验报告

基路径方法设计测试用例并执行测试用例:

白盒测试实验报告

3、测试结果分析

经过以上测试发现:程序无法结束,达不到预测结果。其余均能正确执行达到预期结果。

4、实验思考

通过本次试验,对C++test工具有了一定的认识,学会了一些基本的用法和操作,用该工具测出了一些代码规范的问题,能够分析测试结果了。本实验用两种方法对程序进行测试,从中可看出,基路径测试比逻辑覆盖测试过程简单,但是没有逻辑覆盖测试的效果好。所以,我觉得应该更加熟悉两种测试方法的特色,以便在以后的测试中能更快更准确的选择测试方法,快速测试,找到程序中的错误。

附录:程序代码

#include "iostream.h"

#include "stdio.h"

void Judge(int m_num1,int m_num2,int m_num3)

{

…… …… 余下全文

篇八 :白盒测试和黑盒测试实验报告

软件质量保证与测试

实验指导

计算机工程学院

测试环境配置

1.setting Junit

(1) start Eclipse

Select windows-preferences-java-build path –class path variables

白盒测试和黑盒测试实验报告

(2) click new, the figure of new variable entry is shown.

白盒测试和黑盒测试实验报告

(3) name JUNIT_LIB

select file-选择JUnit 插件所对应的JAR文件所在地,在Eclipse的安装目录的plugins目录中

白盒测试和黑盒测试实验报告

2.JUNIT的组成框架

白盒测试和黑盒测试实验报告

其中,junit.framework 和junit.runner是两个核心包。

junit.framework 负责整个测试对象的框架

junit.runner 负责测试驱动

Junit的框架又可分为:

A、被测试的对象。

B、对测试目标进行测试的方法与过程集合,可称为测试用例(TestCase)。

C、测试用例的集合,可容纳多个测试用例(TestCase),将其称作测试包(TestSuite)。

D、测试结果的描述与记录。(TestResult) 。

E、每一个测试方法所发生的与预期不一致状况的描述,称其测试失败元素(TestFailure)

F、JUnit Framework中的出错异常(AssertionFailedError)。

JUnit框架是一个典型的Composite模式:TestSuite可以容纳任何派生自Test的对象;当调用TestSuite对象的run()方法是,会遍历自己容纳的对象,逐个调用它们的run()方法。

3.JUnit中常用的接口和类

…… …… 余下全文