软件测试实验报告-白盒测试1

时间:2024.3.31

软件测试基础与实践

实验报告

实验名称:   白盒测试实验(1) 

实验地点:             

实验日期:         

学生姓名:               

学生学号:           

东南大学 软件学院 制

一、实验目的

(1)巩固白盒测试知识,能熟练应用控制流覆盖方法设计测试用例;

(2)学习测试用例的书写。

二、实验内容

实验背景

已知公元1年1月1日是星期一,可实现一个程序,使得只要输入年月日,程序就能自动回答当天是星期几。

现有同学实现上述功能的程序(WeekA),请大家对此程序进行动态白盒测试。

实验1:控制流测试技术实验

运用动态白盒测试方法,分别以语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖方法设计测试用例,对WeekA程序中的方法getWeekday()进行测试。设计测试用例时,每种覆盖方法的覆盖率应尽可能达到100%。

测试用例

       publicstaticint getWeekday(int year, int month, int day) {

        // 验证输入合法性

1       int[] MonthDays = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };

2       if (((year % 4 == 0) && (year % 100 != 0)) || year % 400 == 0) {    <a1,a2,a3>

3           MonthDays[1] = 29;

        }

4       if (year < 0 || month < 0 || day < 0) {                             <c1,c2,c3>

5           return 0;

        }

6       if (year > 10000) {

7           return -1;

8       } elseif (month > 12) {

9           return -2;

10      } elseif (day > MonthDays[month - 1]) {

11          return -3;

        }

        // 开始计算

12      int totalDays = 0;

13      for (int i = 1;

14      i < year;

15      i++) {

16          if (((i % 4 == 0) && (i % 100 != 0)) || i % 400 == 0) {         <j1,j2,j3>

17              totalDays += 366;

18          } else {

                totalDays += 365;

            }

        }

19      for (int i = 1;

20      i < month;

21      i++) {

22          if (i == 2) {

23              if (((year % 4 == 0) && (year % 100 != 0)) || year % 400 == 0) {    <q1,q2,q3>

24                  MonthDays[1] = 29;

                }

            }

25          totalDays += MonthDays[i - 1];

        }

26      totalDays += day;

27      int tempDay = totalDays % 7;

28      if (tempDay == 0) {

29          tempDay = 7;

        }

30      return tempDay;

    }

流程图:

(一)语句覆盖:

(二)判定覆盖:

(三)条件覆盖、判定条件覆盖、条件组合覆盖

三、实验体会

1、将书面知识应用于测试实践是困难的,因为再实际测试中有很多不同于测试题目的因素

2、白盒测试能基本实现所有语句覆盖和判断条件覆盖,但是有些代码缺陷却无法检查,比如:本实验中的A和Q的判定是完全重复的。


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


7.使用白盒测试用例设计方法为下面的程序设计测试用例:

·程序要求:10个铅球中有一个假球(比其他铅球的重量要轻),用天平三次称出假球。

·程序设计思路:第一次使用天平分别称5个球,判断轻的一边有假球;拿出轻的5个球,拿出其中4个称,两边分别放2个球;如果两边同重,则剩下的球为假球;若两边不同重,拿出轻的两个球称第三次,轻的为假球。

【源程序】

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using NUnit.Framework;

namespace Test3_7

        [TestFixture]

        public class TestGetMinValue

        {

            [Test]

            public void AddTwoNumbers()

            {

                Random r = new Random();

                int n;

                int[] a=new int[10];

                n = r.Next(0, 9);

                for (int i = 0; i < a.Length; i++)

                {

                    if (i == n)

                        a[i] = 5;

                    else

                        a[i] = 10;

                }

                GetMin gm = new GetMin();

                    Assert.AreEqual(n,gm.getMinvalue(a));

            }

        }

        public class GetMin

        {

            public int getMinvalue(int[] m)

            {

                              double m1 = 0, m2 = 0, m3 = 0, m4 = 0;            

                for (int i = 0; i < 5; i++)

                {

                    m1 = m1 + m[i];

                }

                for (int i = 5; i < 10; i++)

                {

                    m2 = m2 + m[i];

                }

                if (m1 < m2)

                {

                    m3 = m[1] + m[0];

                    m4 = m[3] + m[4];

                    if (m3 > m4)

                    {

                        if (m[3] > m[4])

                            return 4;

                        else

                            return 3;

                    }

                    else if (m3 < m4)

                    {

                        if (m[0] > m[1])

                            return 1;

                        else

                            return 0;

                    }

                    else

                        return 2;

                }

                else

                {

                    m3 = m[5] + m[6];

                    m4 = m[8] + m[9];

                    if (m3 < m4)

                    {

                        if (m[5] > m[6])

                            return 6;

                        else

                            return 5;

                    }

                    else if (m3 > m4)

                    {

                        if (m[8] > m[9])

                            return 9;

                        else

                            return 8;

                    }

                    else

                        return 7;

                }

            }

        }

        class Program

        {            static void Main(string[] args)

            {

                          }

        }

  }

【运行截图】

更多相关推荐:
软件测试实验报告

XX大学学生实验报告册课程名称:软件测试技术专业班级:学生学号:999999999学生姓名:所属院部:信息技术学院指导教师:20992099学年第9学期XX大学教务处制实习项目名称:测试用例设计实习学时:3同组…

软件测试实验报告一

南昌航空大学实验报告20xx年11月30日课程名称软件测试与质量保证实验名称被测程序的设计班级姓名同组人指导教师评定签名一实验目的通过对于被测程序的设计为后续实验的实施做好准备二实验内容1设计三角形问题的程序2...

软件测试综合实验报告

实验一测试实例1.实验题目一般软件系统登录页面测试或其它软件简单操作测试。2.实验目的⑴熟悉.Net测试环境;(2)了解软件黑盒测试的重要性;(3)掌握利用软件功能需求测试的方法;(4)掌握利用测试用例的测试方…

软件测试实验报告

南京理工大学软件测试实验报告课程系别班级学号姓名课题名称测试环境起止时间指导教师软件测试技术基础计算机科学与技术学院070623010706230127申明飞NextndaysEclipseSDK20xx111...

软件测试实验报告实例

沈阳理工大学应用技术学院软件测试综合实验实验报告题目基于NET的鲜花礼品店管理系统的测试用例设计院别信息与控制学院专业计算机科学与技术学生姓名指导教师成绩优20xx年4月22日摘要本文详细叙述了亚州网上鲜花礼品...

软件测试实验报告

实验三黑盒实验2一实验目的通过本次实验使学生熟悉黑盒测试的等价类决策表测试方法二实验环境硬件环境微型计算机软件环境Windows操作系统MicrosoftVisualStudio20xx等三实验内容题目一三角形...

软件测试实验报告

软件测试实验报告Version12实验一软件测试管理姓名班级学号一实验目的12练习和掌握软件测试管理的一般过程与步骤掌握测试管理的人工过程和能够通过相关管理软件实现以下工作abcde配置软件资产信息软件需求软件...

华电软件测试实验报告

华北电力大学实验报告实验名称课程名称软件测试专业班级学生姓名号成绩指导教师李整实验日期20xx512学华北电力大学科技学院实验报告第页共页华北电力大学科技学院实验报告第页共页华北电力大学科技学院实验报告第页共页...

软件测试实验报告张卫东

本科实验报告课程名称实验项目实验地点实验楼专业班级学生姓名张卫东指导教师崔东华软件测试技术软件测试技术实验211学号20xx年10月20日

华东交大软件测试实验内容与指导

第一章实验要求11实验总体要求111实验意义和目的本实验课程配合软件测试技术理论课同步开设其中包括验证型设计型和综合型实验本实验课程着眼于理论与应用的结合注重培养学生软件测试的实际动手能力增强软件工程项目的质量...

代码静态测试实验报告

软件测试实验报告实验序号1实验项目名称代码静态测试实验结果

质量验收测试报告模板

产品事业部软件测试人张子龙OA协同办公自动化管理系统V201测试类型functional功能测试2测试阶段第一阶段20xx031520xx0330测试报告ZA20xx第01号3评分标准产品质量优秀90100分产...

软件测试实验报告(32篇)