黑盒测试实验报告费下载
黑盒子实验报告_设计性实验
设计性实验黑盒子实验报告一、实验任务盒里的元件可能是:干电池、定值电阻、电容器、半导体二极管。
盒外可见的两接线端之间也可能为断路或短路的情况。
各元件连接在接线端(或插座)上,两个接线端(或插座)之间装接一个元件,元件之间不连成并联回路。
要求设计实验方案和检测步骤,判定盒内元件。
1.学习依据不同类型电学元件的特性对元件进行判别;2.进一步熟悉数字万用表等电学仪表的使用;3.根据实验室提供的仪器自行设计方案,检测黑盒子内元器件类型和位置,再进一步确定元件的物理量数值。
二、实验要求自行设计合理而又简捷的程序,对给出的黑盒子进行测试,判定盒中元件类型,并写出测试记录和作出判定的依据,对于电池,要判定其正负极,并测出其电动势,对于二极管,要判定其正负极,并测出二极管的正向导通压降,如果判断元件为电容和电阻,要求测出其数值。
(实验过程不得自行打开盒子)1、根据实验任务,查阅有关资料。
2、自拟实验步骤和直接测量数据的记录表格。
3、选择实验仪器(型号或规格)。
4、对实验方案作可行性报告分析。
5、根据设计实验方案,将测量的数据填入表中,正确写出实验测量结果。
6、对实验结果进行比较、分析、讨论。
三、实验仪器5JK 型暗盒实验箱、直流稳压电源、数字式万用表、电阻箱、开关、导线 四、实验内容1.判断有无干电池:可用电压表测两接线柱间电压,若有一定电图11 211 3 45 6 7 89 10 11 1213 14 15 16压,可确定为干电池,如当电压表接通时指针稍有摆动而又回到零位,则是电池与电容串联。
2判断有无二极管:设计电路如图,将电源与直流电流表串联,并串联一个定值电阻R,将导线连接两端钮,观察电流表读数,再交换连接两端钮,观察电流表读数,若两次读数,一次几乎为0,一次有一定的读数,可确定为二极管,并根据读数可确定二极管正负。
3.判断有无电容:当黑盒子两端钮间有电容C存在时,可用直流电源串联直流电压表或直流电流表接到两端钮。
黑盒测试实验报告
实验报告书课程名称:软件测试实验题目:黑盒测试报告专业:教育技术学班级:教技142学生姓名:安卓指导老师:郭小雪所属学期:2017-2018学年第二学期一、引言1.1目的测试报告为三角形问题和找零钱最佳组合问题项目的黑盒测试报告,目的在于总结测试阶段的测试以及分析测试结果。
实验环境在Windows 2000(SP2) 或Windows XP 操作系统上,使用C++语言,工具作为开发环境(IDE)实验要求1.根据给出的程序分别使用等价类划分法、边界值分析法、判定表方法、因果图法、正交试验法、功能图法、错误推测法来设计相应的测试用例。
2.输入数据进行测试,填写测试用例。
二、实验原理黑盒测试原理:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。
软件的黑盒测试意味着测试要在软件的接口处进行。
这种方法是把测试对象看作一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。
因此黑盒测试又叫功能测试。
从理论上讲,黑盒测试只有采用穷举输入测试,把所有可能的输入都作为测试情况考虑,才能查出程序中所有的错误。
实际上测试情况有无穷多个,人们不仅要测试所有合法的输入,而且还要对那些不合法但可能的输入进行测试。
这样看来,完全测试是不可能的,所以我们要进行有针对性的测试,通过制定测试案例指导测试的实施,保证软件测试有组织、按步骤,以及有计划地进行。
黑盒测试行为必须能够加以量化,才能真正保证软件质量,而测试用例就是将测试行为具体量化的方法之一。
具体的黑盒测试用例设计方法包括等价类划分法、边界值分析法、错误推测法、因果图法、判定表驱动法、正交试验设计法、功能图法等。
等价类划分的办法是把程序的输入域划分成若干部分(子集),然后从每个部分中选取少数代表性数据作为测试用例。
每一类的代表性数据在测试中的作用等价于这一类中的其他值。
该方法是一种重要的,常用的黑盒测试用例设计方法。
黑盒测试实验报告
黑盒测试实验报告
1. 引言
黑盒测试是软件测试中常用的一种测试方法,它不需要了解被测试系统的内部结构和实现细节,只通过输入和输出来评估系统的正确性和健壮性。
本实验通过对一个示例系统进行黑盒测试,以评估其功能的完整性和安全性。
2. 实验目标
本次实验的主要目标是对示例系统进行黑盒测试,发现其中存在的功能缺陷和安全漏洞,并给出相应的解决方案。
具体实验目标包括:
- 确定需求和功能规格说明进行黑盒测试;
- 根据功能规格说明设计黑盒测试用例;
- 执行黑盒测试用例并记录测试结果;
- 分析测试结果,发现潜在的功能缺陷和安全漏洞;
- 提出相应的解决方案和改进建议。
3. 实验环境
本次实验使用的环境如下:
- 操作系统:Windows 10
- 开发工具:Eclipse
- 测试工具:JUnit
4. 测试需求和功能规格说明
根据实验要求,我们对示例系统的功能进行了分析,确定了以
下需求和功能规格说明:
1) 用户注册功能:允许用户进行账号注册,提供用户名、密码
和邮箱等信息,注册成功后可以登录系统。
2) 用户登录功能:已注册用户可以通过输入正确的用户名和密
码登录系统。
3) 查看个人信息功能:登录后,用户可以查看自己的个人信息,包括用户名、邮箱等。
黑盒测试技术实验报告(最终5篇)
黑盒测试技术实验报告(最终5篇)第一篇:黑盒测试技术实验报告黑盒测试技术—三角形问题实验报告一、问题描述输入三个整数a、b、c,分别作为三角形的三条边,通过程序判断这三条边是否能构成三角形?如果能构成三角形,则判断三角形的类型并输出(等边三角形、等腰三角形、一般三角形),如果不构成三角形输出不能构成三角形。
要求:(1)输入三个整数a、b、c,必须满足以下条件:1≤a≤200;1≤b≤200;1≤c≤200。
(2)容错处理:输入空值的提示;输入的值满足类型的提示;(3)不限制开发环境,不限制开发语言;(4)尽可能不对自己的程序进行测试设计。
(5)请分别采用边界值分析法、等价类分析法、决策表分析法、基于场景分析法设计测试用例;(6)正文格式(除源代码用小五号单倍行距),其他行距固定值 20,字号小四。
二、程序主要源代码(标注:测试的源代码是哪位同学(学号姓名)编写的。
)三、程序界面(截图)四、设计测试用例1.用边界值测试方法设计测试用例用边界值分析法设计测试用例,按照下列步骤进行:((1)分析各变量取值三角形三条边的取值范围都是1-200,所以边长A 的边界点为 1 和 200,边长 B的边界点为 1 和 200,边长 C 的边界点为 1 和 200。
((2)测试用例数输入条件边界值测试数据 A 1,200 0,1,2,199,200,201 B 1,200 0,1,2,199,200,201 C 1,200 0,1,2,199,200,201设计测试用例(给出所有测试用例)三角形问题的测试用例测试用例编号输入数据预期输出测试结果 a b c 1 0 100 100 边长 A 不合法边长 A 不合法1 100 100 等腰三角形等腰三角形 3 2 100 100 等腰三角形等腰三角形 4 199 100 100 等腰三角形等腰三角形 5 200 100 100 不是三角形不是三角形 6 201 100 100 边长 A 不合法边长 A 不合法100 0 100 边长 B 不合法边长 B 不合法100 1 100 等腰三角形等腰三角形 9 100 2 100 等腰三角形等腰三角形 10 100 199 100 等腰三角形等腰三角形 11 100 200 100 不是三角形不是三角形 12 100 201 100 边长 B 不合法边长 B 不合法100 100 0 边长 C 不合法边长 C 不合法100 100 1 等腰三角形等腰三角形 15 100 100 2 等腰三角形等腰三角形 16 100 100 199 等腰三角形等腰三角形 17 100 100 200 不是三角形不是三角形181****0201边长 C 不合法边长 C 不合法2.用等价类测试方法设计测试用例((1)首先分析题目中给出的条件和隐含的输入要求,输入条件如下:条件:1<=边长 A<=200,1<=边长 B<=200,1<=边长 C<=200 隐含条件:A输入条件有效等价类无效等价类是否是三角形1.1<=A<=2002.1<=B<=2003.1<=C<=2004.A200 8.B<1 || B>200 9.C<1 ||C>200 10.A>=B+C 11.B>=A+C 12.C>=A+B 等腰三角形13.A=B&&B!=C 14.A=C&&C!=B 15.B=C&&C!=A 16.A!=B&&A!=C&&B!=C 等边三角形17.A=B=C 18.A!=B 19.A!=C 20.B!=C(3)设计测试用例,覆盖上表中的等价类,如表1-3 表所示。
黑盒测试实验报告
南京信息工程大学实验(实习)报告实验(实习)名称黑盒测试实验(实习)日期2012.11.20 得分指导教师徐旦华院计软院专业软工年级 10 班次 1 姓名孙涛学号 20101344008一、实验目的理解黑盒测试的基本方法,掌握等价分类法、边界值分析等测试用例的设计方法。
二、实验时间2学时三、实验准备主流PC 机一套,要求安装windows 操作系统和Office 工具要求:使用等价类划分方法和弱边界值法设计用例,并记录测试结果。
等价类划分方法邮箱地址有效等价类号码无效等价类号码6到18个字符 1 小于6个字符或大于18个字符4使用字母,数字,下划线2 含有字母,数字,下划线以外的内容5需以字母开头 3 不以字母开头 6密码有效等价类号码无效等价类号码6到16个字符(区分大小写)1 小于6个字符或大于16个字符2邮件地址测试用例用例输入数据覆盖测试用例预期结果实验截图1 sfdefe5gtrhe 1,2,3可注册2 1dwe 4,6不可注册3 asdf 3,4不可注册4 asdfghjqwertyuiioopp 3,4不可注册5 3sfsefgggr 1,6不可注册6 asa sa 3,4,5不可注册7 dwdwf¥df 1,3,5不可注册8 1fsjjfl@sfl 1,5,6不可注册9 Adkaidj_5 1,2,3可注册密码测试用例用例输入数据覆盖测试用例预期结果实验截图1adakjw1通过2 不通过2adwdwdadwdwdadawd弱边界值测试方法:地址:用例编号输入实验截图1 grdgd2 fnynyn3 btftfft4 wadwadawdafeefsef5 wadwadawdafeefsefs6 wadwadawdafeefsefse密码:用例编号输入实验截图1adwaw2dawdaw3dadwdaa4 dawddawdwdwadww5dawddawdwdwadwww6dawddawdwdwadwwwd四、实验体会通过这次试验我了解到黑盒测试当中弱边界值测试与等价类测试的异同点,学会了使用这两个测试的方法去测试一些用例,从而理解黑盒测试的基本方法,掌握等价分类法、边界值分析等测试用例的设计方法。
网易邮箱黑盒测试实验报告
南京信息工程大学实验(实习)报告实验(实习)名称实验一黑盒测试实验(实习)日期2014-11-21得分指导教师徐旦华系计软院专业软件工程年级班次姓名学号实验一黑盒测试(一)一、实验目的理解黑盒测试的基本方法,掌握等价分类法、边界值分析等测试用例的设计方法。
一、实验内容1.编写网易邮箱注册功能的测试用例,假设没有重复的用户名,条件如图示:要求:使用等价类划分方法和弱边界值法设计测试用例,并记录测试结果(1)等价类划分法测试用例分析有效等价类满足条件:邮箱地址:1、6~18个字符2、以字母开头密码:1、6~16个字符(区分大小写)确认密码:1、与密码相同(字母区分大小写)验证码:1、与图片相同无效等价类满足条件:邮箱地址:1、少于6个字符2、多于18个字符3、以“_”开头4、以数字开头密码:1、少于6个字符2、多于16个字符确认密码:1、不区分大小写2、与密码不一致验证码:1、不输入2、输入与图片不一致测试用例表测试用例编号输入预测结果邮箱地址密码确认密码验证码1 wbb158******** 123456 123456 pqln 注册成功2 smileday 111111 111111 sdfa 注册成功3 wu_199203 123456 123456 erqw 注册成功4 webei 111111 111111 shjd 失败5 webeib 123456 123456 asda 注册成功6 webeibe 123456 123456 dasa 注册成功7 liixiaohuishigedr 111111 111111 sfsf 注册成功8 liixiaohuishigedhr 111111 111111 dfsa 注册成功9 liixiaohuishigedhrm 111111 111111 sdfs 失败10 _smileday 123456 123456 werq 失败11 7w__b__1 123456 123456 dwe1 失败12 w__b__1 12345 12345 dfte 失败13 w__b__1 123456 123456 deff 注册成功14 w__b__1 1234567 1234567 xcxm 注册成功15 w__b__1 123456789012345 123456789012345 asds 注册成功16 w__b__1 1234567890123456 1234567890123456 dsff 注册成功17 w__b__1 12345678901234567 12345678901234567 sdfc 失败18 w__b__1 111111 123456 Srdt 失败19 w__b__1 w__b__1_01 w__b__1_01 dwfa 失败20 w__b__1 123456 123456 失败21 w__b__1 123456 123456 Wr33 注册成功随机测试用户名位数测试用户名首字符测试密码位数测试密码一致性测试验证码测试二、实验结果。
计算器黑盒测试实验报告
一、测试目的设计测试用例、使用各种测试方法进行计算器的测试,并对测试结果进行分析二、测试内容1.软件说明:实现一个小的计算器程序,只需要完成加、减、乘、除运算,设计测试用例,并对测试结果进行分析,同时计算器运行稳定。
2、设计测试用例3、执行测试4、测试结果分析5、源代码三、测试步骤(一)、计算器界面2、设计测试用例(1)等价类测试:1、4个等价类测试用例的分析过程如下:测试用例加减乘除预期输出整型55+50 78-24 15*25 36/4 正常运算小数25.3+12.7 14.3-11.7 25.6*12.8 50.2/20.7 正常运算负数-20+-21 (-15)-(-14) -12*-12 -16/-5 正常运算无效输入E1+t2 G4-k5 I5*l6 Ff/se 非法操作无法输入2、对应测试的结果分析:整型:1.加(55+50)2.减(78-24)3.乘(15*25)4.除(36/4)小数1.加(25.3+12.7)2.减(14.3-11.7)3.乘(25.6*12.8)4.除(50.2/20.7)负数6.加-20+-217.减(-15)-(-14)8.乘-12*-129.除-16/-5(其中算式写法错误导致正常运算错误)无效输入1.加(E1+t2):程序中无效数字无法正常输入,程序无法进行。
2.减(G4-k5)程序中无效数字无法正常输入,程序无法进行。
(同上)3.乘(I5*l6)程序中无效数字无法正常输入,程序无法进行。
(同上)4.除(Ff/se)程序中无效数字无法正常输入,程序无法进行。
(同上)5.(2)边界值法设计测试:加法:1、计算器4个标准等价类测试用例的分析过程如下:测试用例被加数加数预期输出Test1 0 10 正常运算Test2 1 10 正常运算Test3 40 10 正常运算Test4 55.5 10 正常运算Test5 -70 10 正常运算Test6 10 10 正常运算Test7 101 10 正常运算Test8 10 0 不能运算Test9 10 1 正常运算Test10 10 40 正常运算Test11 10 55.5 正常运算Test12 10 -78 正常运算Test13 10 100 正常运算Test14 10 101 正常运算2、对应测试与结果:测试结果运算均属正常,对应的部分的示图如下:Test1结果:Test2结果:Test3结果:Test4结果:Test5结果:Test6结果:减法:测试用例被减数减数预期输出Test1 0 10 正常运算Test2 1 10 正常运算Test3 40 10 正常运算Test4 55.5 10 正常运算Test5 -78 10 正常运算Test6 100 10 正常运算Test7 101 10 正常运算Test8 10 0 不能运算Test9 10 1 正常运算Test10 10 40 正常运算Test11 10 55.5 正常运算Test12 10 -78 正常运算Test13 10 100 正常运算Test14 10 101 正常运算2、对应测试与结果:测试结果运算均属正常,对应的部分的示图如下:Test1结果:Test3结果:Test4结果:Test5结果:Test6结果:乘法1测试用例被乘数乘数预期输出Test1 0 50 正常运算Test2 1 5 正常运算Test3 24 10 正常运算Test4 55.5 10 正常运算Test5 -78 10 正常运算Test6 100 10 正常运算Test7 101 10 正常运算Test8 10 0 不能运算Test9 10 1 正常运算Test10 10 40 正常运算Test11 10 55.5 正常运算Test12 10 -78 正常运算Test13 10 100 正常运算Test14 10 101 正常运算2、对应测试与结果:测试结果运算均属正常,对应的部分的示图如下:Test1结果:Test3结果:Test4结果:Test5结果:Test6结果:除法1测试用例被除数除数预期输出Test1 0 10 正常运算Test2 1 10 正常运算Test3 40 10 正常运算Test4 55.5 10 正常运算Test5 -78 10 正常运算Test6 100 10 正常运算Test7 101 10 正常运算Test8 10 0 正常运算Test9 10 1 正常运算Test10 10 40 正常运算Test11 10 55.5 正常运算Test12 10 -78 正常运算Test13 10 100 正常运算Test14 10 101 正常运算2、对应测试与结果:对应的部分的示图如下:Test1结果:Test2结果:Test3结果:Test8结果:附录:源代码CCalculateDlg::CCalculateDlg(CWnd* pParent /*=NULL*/){//{{AFX_DA TA_INIT(CCalculateDlg)m_parameter = 0.0;//}}AFX_DA TA_INIT// Note that LoadIcon does not require a subsequent DestroyIcon in Win32 m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);CalculatePara = 0;CalculateResult = 0;Ispoint = false;Sumpoint = 0;}void CCalculateDlg::DoDataExchange(CDataExchange* pDX){CDialog::DoDataExchange(pDX);//{{AFX_DA TA_MAP(CCalculateDlg)DDX_Text(pDX, IDC_EDIT, m_parameter);//}}AFX_DA TA_MAP}BEGIN_MESSAGE_MAP(CCalculateDlg, CDialog)//{{AFX_MSG_MAP(CCalculateDlg)ON_WM_SYSCOMMAND()ON_WM_PAINT()ON_WM_QUERYDRAGICON()ON_BN_CLICKED(IDC_clear, Onclear)ON_BN_CLICKED(IDC_calculate, Oncalculate)ON_BN_CLICKED(IDC_para1, Onpara1)ON_BN_CLICKED(IDC_para2, Onpara2)ON_BN_CLICKED(IDC_para3, Onpara3)ON_BN_CLICKED(IDC_para4, Onpara4)ON_BN_CLICKED(IDC_para5, Onpara5)ON_BN_CLICKED(IDC_para6, Onpara6)ON_BN_CLICKED(IDC_para7, Onpara7)ON_BN_CLICKED(IDC_para8, Onpara8)ON_BN_CLICKED(IDC_para9, Onpara9)ON_BN_CLICKED(IDC_para0, Onpara0)ON_BN_CLICKED(IDC_point, Onpoint)ON_BN_CLICKED(IDC_minus, Onminus)ON_BN_CLICKED(IDC_plus, Onplus)ON_BN_CLICKED(IDC_subtrack, Onsubtrack)ON_BN_CLICKED(IDC_divide, Ondivide)//}}AFX_MSG_MAPEND_MESSAGE_MAP()/////////////////////////////////////////////////////////////////////////////// CCalculateDlg message handlersBOOL CCalculateDlg::OnInitDialog(){CDialog::OnInitDialog();// Add "About..." menu item to system menu.// IDM_ABOUTBOX must be in the system command range.ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);ASSERT(IDM_ABOUTBOX < 0xF000);CMenu* pSysMenu = GetSystemMenu(FALSE);if (pSysMenu != NULL){CString strAboutMenu;strAboutMenu.LoadString(IDS_ABOUTBOX);if (!strAboutMenu.IsEmpty()){pSysMenu->AppendMenu(MF_SEPARA TOR);pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);}}// Set the icon for this dialog. The framework does this automatically// when the application's main window is not a dialogSetIcon(m_hIcon, TRUE); // Set big iconSetIcon(m_hIcon, FALSE); // Set small icon// TODO: Add extra initialization herereturn TRUE; // return TRUE unless you set the focus to a control}void CCalculateDlg::OnSysCommand(UINT nID, LPARAM lParam){if ((nID & 0xFFF0) == IDM_ABOUTBOX){CAboutDlg dlgAbout;dlgAbout.DoModal();else{CDialog::OnSysCommand(nID, lParam);}}// If you add a minimize button to your dialog, you will need the code below// to draw the icon. For MFC applications using the document/view model,// this is automatically done for you by the framework.void CCalculateDlg::OnPaint(){if (IsIconic()){CPaintDC dc(this); // device context for paintingSendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);// Center icon in client rectangleint cxIcon = GetSystemMetrics(SM_CXICON);int cyIcon = GetSystemMetrics(SM_CYICON);CRect rect;GetClientRect(&rect);int x = (rect.Width() - cxIcon + 1) / 2;int y = (rect.Height() - cyIcon + 1) / 2;// Draw the icondc.DrawIcon(x, y, m_hIcon);}else{CDialog::OnPaint();}}// The system calls this to obtain the cursor to display while the user drags// the minimized window.HCURSOR CCalculateDlg::OnQueryDragIcon(){return (HCURSOR) m_hIcon;}void CCalculateDlg::Onclear(){UpdateData(true);m_parameter = 0;CalculatePara = 0;CalculateResult = 0;Ispoint = false;Sumpoint = 0;UpdateData(false);// TODO: Add your control notification handler code here }void CCalculateDlg::Oncalculate(){UpdateData(true);CalculatePara = m_parameter;switch(CalculateExpre){case'+':CalculateResult += CalculatePara;m_parameter = CalculateResult;break;case'-':CalculateResult -= CalculatePara;m_parameter = CalculateResult;break;case'*':CalculateResult *= CalculatePara;m_parameter = CalculateResult;break;case'/':if (CalculatePara){CalculateResult /= CalculatePara;}else{m_parameter = 0;MessageBox("除数不能为零!");}break;}// TODO: Add your control notification handler code hereCalculatePara = 0;CalculateResult = 0;Ispoint = false;Sumpoint = 0;UpdateData(false);}void CCalculateDlg::Onpara1(){UpdateData(true);if (!Ispoint){CalculatePara = m_parameter*10 + 1;}else{CalculatePara = m_parameter + 1/pow(10,Sumpoint);Sumpoint++;}m_parameter = CalculatePara;UpdateData(false);// TODO: Add your control notification handler code here }void CCalculateDlg::Onpara2()UpdateData(true);if (!Ispoint){CalculatePara = m_parameter*10 + 2;}else{CalculatePara = m_parameter + 2/pow(10,Sumpoint);Sumpoint++;}m_parameter = CalculatePara;UpdateData(false);// TODO: Add your control notification handler code here }void CCalculateDlg::Onpara3(){UpdateData(true);if (!Ispoint){CalculatePara = m_parameter*10 + 3;}else{CalculatePara = m_parameter + 3/pow(10,Sumpoint);Sumpoint++;}m_parameter = CalculatePara;UpdateData(false);// TODO: Add your control notification handler code here }void CCalculateDlg::Onpara4(){UpdateData(true);if (!Ispoint)CalculatePara = m_parameter*10 + 4;}else{CalculatePara = m_parameter + 4/pow(10,Sumpoint);Sumpoint++;}m_parameter = CalculatePara;UpdateData(false);// TODO: Add your control notification handler code here }void CCalculateDlg::Onpara5(){UpdateData(true);if (!Ispoint){CalculatePara = m_parameter*10 + 5;}else{CalculatePara = m_parameter + 5/pow(10,Sumpoint);Sumpoint++;}m_parameter = CalculatePara;UpdateData(false);// TODO: Add your control notification handler code here }void CCalculateDlg::Onpara6(){UpdateData(true);if (!Ispoint){CalculatePara = m_parameter*10 + 6;}elseCalculatePara = m_parameter + 6/pow(10,Sumpoint);Sumpoint++;}m_parameter = CalculatePara;UpdateData(false);// TODO: Add your control notification handler code here }void CCalculateDlg::Onpara7(){UpdateData(true);if (!Ispoint){CalculatePara = m_parameter*10 + 7;}else{CalculatePara = m_parameter + 7/pow(10,Sumpoint);Sumpoint++;}m_parameter = CalculatePara;UpdateData(false);// TODO: Add your control notification handler code here }void CCalculateDlg::Onpara8(){UpdateData(true);if (!Ispoint){CalculatePara = m_parameter*10 + 8;}else{CalculatePara = m_parameter + 8/pow(10,Sumpoint);Sumpoint++;m_parameter = CalculatePara;UpdateData(false);// TODO: Add your control notification handler code here }void CCalculateDlg::Onpara9(){UpdateData(true);if (!Ispoint){CalculatePara = m_parameter*10 + 9;}else{CalculatePara = m_parameter + 9/pow(10,Sumpoint);Sumpoint++;}m_parameter = CalculatePara;UpdateData(false);// TODO: Add your control notification handler code here }void CCalculateDlg::Onpara0(){UpdateData(true);if (!Ispoint){CalculatePara = m_parameter*10 + 0;}else{Sumpoint++;}m_parameter = CalculatePara;UpdateData(false);// TODO: Add your control notification handler code here }void CCalculateDlg::Onpoint(){Ispoint = true;Sumpoint = 1;// TODO: Add your control notification handler code here}void CCalculateDlg::Onminus(){UpdateData(true);m_parameter = 0 - m_parameter;UpdateData(false);// TODO: Add your control notification handler code here }void CCalculateDlg::Onplus(){UpdateData(true);CalculateResult = m_parameter;CalculateExpre = '+';m_parameter = 0;Ispoint = false;Sumpoint = 0;UpdateData(false);// TODO: Add your control notification handler code here }void CCalculateDlg::Onsubtrack(){UpdateData(true);CalculateResult = m_parameter;CalculateExpre = '-';m_parameter = 0;Ispoint = false;Sumpoint = 0;UpdateData(false);// TODO: Add your control notification handler code here }void CCalculateDlg::Onmultiply(){UpdateData(true);CalculateResult = m_parameter;CalculateExpre = '*';m_parameter = 0;Ispoint = false;Sumpoint = 0;UpdateData(false);// TODO: Add your control notification handler code here }void CCalculateDlg::Ondivide(){UpdateData(true);CalculateResult = m_parameter;CalculateExpre = '/';m_parameter = 0;Ispoint = false;Sumpoint = 0;UpdateData(false);// TODO: Add your control notification handler code here }。
【免费下载】黑盒测试实验报告
y 1 12 1 12 0 1 13 12
1 预期输出
f(1900,1,1)
2 预期输出
f(2100,12,31)
预期输出 Error
预期输出 Error
z 1 31 1 31 1 0 31 32
实际输出
f(1900,1,1)
实际输出 f(2100,12,31)
3 实际输出
Error
4 实际输出
Error
测试用例编号 输入
x=2101 y=12 z=3
x 1900 2100 1899 2101 1900 1900 2100 2100
操作
函数调用并计算
操作 函数调用并计算
操作 函数调用并计算
操作 函数调用并计算
对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料电试力卷保相护互装作置用调与试相技互术关,系电,力根通保据过护生管高产线中工敷资艺设料高技试中术卷资,配料不置试仅技卷可术要以是求解指,决机对吊组电顶在气层进设配行备置继进不电行规保空范护载高与中带资负料荷试下卷高问总中题体资,配料而置试且时卷可,调保需控障要试各在验类最;管大对路限设习度备题内进到来行位确调。保整在机使管组其路高在敷中正设资常过料工程试况中卷下,安与要全过加,度强并工看且作护尽下关可都于能可管地以路缩正高小常中故工资障作料高;试中对卷资于连料继接试电管卷保口破护处坏进理范行高围整中,核资或对料者定试对值卷某,弯些审扁异核度常与固高校定中对盒资图位料纸置试,.卷保编工护写况层复进防杂行腐设自跨备动接与处地装理线置,弯高尤曲中其半资要径料避标试免高卷错等调误,试高要方中求案资技,料术编试交写5、卷底重电保。要气护管设设装线备备置敷4高、调动设中电试作技资气高,术料课中并3中试、件资且包卷管中料拒含试路调试绝线验敷试卷动槽方设技作、案技术,管以术来架及避等系免多统不项启必方动要式方高,案中为;资解对料决整试高套卷中启突语动然文过停电程机气中。课高因件中此中资,管料电壁试力薄卷高、电中接气资口设料不备试严进卷等行保问调护题试装,工置合作调理并试利且技用进术管行,线过要敷关求设运电技行力术高保。中护线资装缆料置敷试做设卷到原技准则术确:指灵在导活分。。线对对盒于于处调差,试动当过保不程护同中装电高置压中高回资中路料资交试料叉卷试时技卷,术调应问试采题技用,术金作是属为指隔调发板试电进人机行员一隔,变开需压处要器理在组;事在同前发一掌生线握内槽图部内 纸故,资障强料时电、,回设需路备要须制进同造行时厂外切家部断出电习具源题高高电中中源资资,料料线试试缆卷卷敷试切设验除完报从毕告而,与采要相用进关高行技中检术资查资料和料试检,卷测并主处且要理了保。解护现装场置设。备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。
软件质量保证与测试实验1--黑盒测试实验报告
实验课程名称:软件质量保证与测试B图1 传统三角问题的解决方法描述2.2 问题描述的改进基于前述的三角形问题,继续增加如下限制,量化问题描述进行改进。
C1: 1 ≤a ≤200C2: 1 ≤b ≤200C3: 1 ≤ c ≤200C4: a < b + cC5: b<a+cC6: c<a+b如果输入整数值范围超出C1, C2, C3指定,则输出提示信息“V alue of b is not in the range of permitted values.”(以C2 不满足为例,其它类似)。
当输入a,b,c满足C4, C5, C6指定后,再判断三角形类型(Equilateral/Isosceles/Scalene / Not A Triangle)。
判断过程三角形的流程图如图2 所示。
图2 改进的三角问题解决方法描述三、实验原理边界值分析测试边界值分析测试分为四类:普通边界值(normal boundary value)测试,最坏情形边界值(worst-case boundary value)测试,健壮性边界值(robust boundary value)测试,健壮性最坏情形边界值(robust worst-case boundary value)测试。
在二维测试用例空间中,四种类型的测试用例分布如下图3 至图6 所示。
图3 普通边界值测试图4 最坏情形边界值测试图5 健壮性边界值测试图6 健壮性最坏情形边界值测试对于这四种测试,它们的关系可以用下表4 来描述。
表4 四种边界分析测试的关系健壮性是指在异常情况下,软件还能正常运行的能力。
单缺陷假设指“失效极少是由两个或两个以上的缺陷同时发生引起的”。
在边界值分析中,单缺陷假设即选取测试用例时仅仅使得一个变量取极值,其他变量均取正常值。
多缺陷假设,则是指“失效是由两个或两个以上缺陷同时作用引起的”,要求在选取测试用例时同else if(a == b || a == c || b == c) return "Isosceles";else return "Scalene";}public static boolean isTriangle(int a, int b, int c){if (a + b <= c) return false;if (a + c <= b) return false;if (b + c <= a) return false;return true;}3.2边界值分析测试实验通过边界值分析方法生成测试集,不断地修改程序,直到所有测试用例集测试均通过。
功能性测试(黑盒测试)实验报告
功能性测试(黑盒测试)
实验目的:
1、掌握应用功能性测试技术进行测试用例设计。
2、掌握对测试用例进行优化设计方法。
实验内容:
1.题目一:三角形问题
根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。
“一个程序读入三个整数。把此三个数值看成是一个三角形的三个边。这个程序要打印出信息,说明这个三角形是三边不等的、是等腰的、还是等边的。”
•有时条件最终引用输入的等价类,行为引用被测试软件的主要功能处理部分,规则则解释为测试用例。
在日期问题中,为了获得一个日期,NextDate函数需要执行的操作有5种:
1)day变量值加2;
2)day变量复位为1;
3)day变量为2;
4)month变量值加1;
5)month变量复位为1;
6)year变量加1。
测试用例ID
Test6
目的
测试程序能否识别错误输入
前提
1≤month≤12;1≤day≤31
输入
month=6;day=31;year=2001
预期结果
输出:输入错误,6月份不存在31日
测试结果
输出:输入错误,6月份不存在31日
测试日期
2011-11-15
备注
无
实 验 总 结
•使用等价类划分方法必须仔细分析和推敲题目所给出的要求。本题的输人条件要求的关键之处有:
–1)整数;
–2)三个数;
–3)非零数;
–4)正数;
•输出条件要求的关键之处有:
–5)应满足两边长之和大于第三边边长;
–6)等腰;
–7)等边;
•其中,3)、4)和5)并没有在题目上明显给出,但这些条件是必要的。
黑盒测试实验报告
1《软件测试技术》实验报告2实验序号:04 实验项目名称:黑盒测试3(55,4000,400)输入无效○6(55,75,250)输入无效○8(55,75,33000)输入无效○94) 测试结果:所有测试都成功,且测试的覆盖率为百分百2、NextDate问题1)分析它的输入限制NextDate是一个有三个变量(月份、日期和年)的函数。
函数返回输入日期后面的那个日期。
变量月份、日期和年都是整数值,并满足以下条件:c1:1<=月份<=12 c2:1<=日期<=31 c3:1812<=年<=20122)边界值测试设计编号输入期望输出Year Month Day001 1993 -1 15 Month不在1~12中002 1993 0 15 Month不在1~12中003 1993 1 15 1993年1月16日004 1993 11 15 1993年11月16日035 1993 1 32 Day不在1~31中3)测试结果:所有测试都成功,且测试的覆盖率为百分百3、自动售货机问题1)分析自动售货机中一共存在5个条件和5个结果:条件:C1、售货机有零钱找C2、投入1元硬币C3、投入5角硬币C4、按下橙汁按钮C5、按下啤酒按钮结果:E1、售货机“零钱找完”灯亮E2、退还1元硬币E3、退还5角硬币E4、送出橙汁饮料E5、送出啤酒饮料2)因果图的分析结果006 (Beer,5C)有零钱送出啤酒007 (OrangeJuice,4C)有零钱Money Error008 (Beer,4C)有零钱Money Error009 (cola,1D)无零钱红灯亮,退1元010 (OrangeJuice,1D)无零钱红灯亮,退1元011 (Beer,1D)无零钱红灯亮,退1元012 (cola,5C)无零钱退5角013 (OrangeJuice,5C)无零钱送出橙汁014 (Beer,5C)无零钱送出啤酒015 (OrangeJuice,4C)无零钱Money Error016 (Beer,4C)无零钱Money Error6)测试结果:所有测试都成功,且测试的覆盖率为百分百五、分析与讨论该实验借助了Eclipse+JUnit+EclEmma进行了测试。
黑盒测试实验报告.
2013春季教师:蒲蔚实验报告1 –黑盒测试学号:2013141463245 姓名:柳阳1引言【黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。
在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,程序是否能适当地接收输入数据而产生正确的输出信息。
黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用。
】2随机测试计划【需包括但不仅限于以下信息:被测的功能,采用的测试策略(例如:测试很多功能,但对每个功能只做简单测试;或者,只测试少数几个功能,但是测试得很彻底;等等),以及你如何计划测试用例(主要测试一般路径还是特殊路径,等)。
你的计划只需要合理即可,不要求做到最完美。
被测的功能:用户需要插入银行卡,输入密码(PIN),系统验证这些信息的正确性后才能进入系统用户可以从自己银行卡的任何账户中取出20整数倍的现金;用户可以将现金/支票存入银行卡的任何账户用户可以在自己银行卡的两个账户之间自由转账用户可以查询账户余额用户可以在任何时候按下Cancel键退出当前交易密码出错时,最多可以尝试3次。
超过3次后,系统会锁定此银行卡对于任何不成功的交易,系统都会显示失败原因,并询问用户是否继续其它交易系统可以打印交易回执,回执中包括:日期、时间、ATM机位置、交易类型、账户、交易金额、账户余额。
按下on按钮,打开此ATMATM空闲(没有用户使用时)时,才可以按下off按钮进行关闭测试策略:对每一个用例都进行彻底的测试如何计划测试用例:将每一个用例都进行等价类划分的测试】3随机测试用例设计【列出你在随机测试时使用的测试用例,格式参考如下表格】14随机测试和手动测试的比较随机测试主要是对被测软件的一些重要功能进行复测,也包括测试那些当前的测试样例没有覆盖到的部分。
另外,对于软件更新和新增加的功能要重点测试。
黑盒测试实验报告
软件测试实验报告----黑盒测试一.实验内容使用黑盒测试技术设计一个自动售货机上的系统。
自定义自动售货机只卖三种饮料:可口可乐,雪碧,百事可乐,单价分别为2.5元,2.5两元,2元。
假设输入饮料类别及需要的数量,如果输入的金额数足够,直接送出饮料,退回零钱,如果输入的金额不够,有提示可以继续输入钱币。
自动售货机运行界面如下:二、黑盒测试(1)测试用例一(2)测试用例二具体操作实践如下:三代码#include<iostream.h> void main(){int n,m,i;for(i=0;i<100;i++){cout<<"欢迎使用自动售货机系统!\n" ;cout<<"请选择商品\n";cout<< "1 可口可乐2.5元\n";cout<< "2 雪碧2.5元\n";cout<< "3 百事可乐2元\n";cout<< " 4 结束购物\n";cin>>n;if(n==1){cout<<"你选择的是可口可乐\n";cout<<"请选择投币种类\n";cout<< "1 2.5元\n";cout<< "2 3元\n";cout<< "3 5元\n";cout<< "4 1元\n";cin>>m;if(m==1){cout<<"付款金额正好,请取走商品\n";}else if(m==2){cout<<"找您0.5元\n";}else if(m==3){ cout<<"找您2.5元\n";} else {cout<<”钱不够!”;}}if(n==2){cout<<"你选择的是雪碧\n";cout<<"请选择投币种类\n";cout<< "1 2.5元\n";cout<< "2 3元\n";cout<< "3 5元\n";cout<< "4 1元\n";cin>>m;if(m==1){cout<<"付款金额正好,请取走商品\n";}else if(m==2){cout<<"找您0.5元\n";}else if(m==3){ cout<<"找您2.5元\n";}else {cout<<”钱不够!”;}}if(n==3){"你选择的是百事可乐\n";cout<<"请选择投币种类\n";cout<< "1 2.5元\n";cout<< "2 3元\n";cout<< "3 5元\n";cout<< "4 1元\n";cin>>m;if(m==1){cout<<"找您0.5元\\n";}else if(m==2){cout<<"找您1元\n";}else if(m==3){ cout<<"找您2元\n";}else {cout<<”钱不够!”;}}if(n==4)cout<<"谢谢惠顾!"<<endl; }}。
黑盒测试实验报告
实验一黑盒测试一、实验目的通过对于实例程序的测试,熟悉功能性测试的基本方法。
二、实验要求(1)综合运用功能性测试方法(如边界值分析、等价类划分等方法)对被测程序进行测试,找出black.exe程序中存在的缺陷。
三、实验内容(1)对于blackBox.exe程序的测试步骤:①运行black.exe程序,如下图所示:②选择triangle program后(或nextdate program, commission program,要求至少做两个程序的测试),如下图所示:③点击create file names,如下图所示:提示输入测试用例文件,如1.txt后点击ok,1中的数据格式如下:(其中前3个数据表示输入的三条边,第4个数据表示预期的结果)如下图所示,输入执行结果的文件2.txt :再次点击ok,提示输入测试结果文件记录集的题头信息:sanjiaoxing,点击ok,完成测试前的准备工作。
④点击Run Test Cases File,运行测试;⑤测试后的统计信息如下图所示:⑥测试完成后,打开2.txt文件:(前3个条件表示输入的三条边,第4个表示预期结果,第5个表示测试结果,第6个表示测试结果与预期结果是否符合。
)2①运行black.exe程序②选择nextdate program,③点击create file names,如下图所示:提示输入测试用例文件,如3.txt后点击ok,3中的数据格式如下:如下图所示,输入执行结果的文件4.txt :④点击Run Test Cases File,运行测试;⑤测试后的统计信息如下图所示:⑥测试完成后,打开4.txt文件:1)案例描述:某三角形测试程序中需要输入三条表,若三边相等:等腰三角形,两边相等:等腰三角形;若三边不等:斜边边三角形。
案例第一步划分等价类。
第二步设计测试用例设三边分别为a,b,c2)案例描述:案例按月,日,年输入数据。
输出当天的下一天,第二步测试用例。
电学黑盒子实验报告
电学黑盒子实验报告
1、电学黑盒子实验的步骤:判断有无电池使用万用电表的电压量程,表笔接到任意两个接线柱,分别测量,电表均无示数,说明盒内无电池。
二极管的判断同样的方法,得知ad、dc之间为二级管,方向可知。
2、黑盒测试(Black-box Testing,又称为功能测试或数据驱动测试)是把测试对象看作一个黑盒子。
利用黑盒测试法进行动态测试时,需要测试软件产品的功能,不需测试软件产品的内部结构和处理过程。
3、分别用电流表对每两个点测试,看是否有电流值。
这如果是电阻的话,电流值最小,几个点分别测试一下就能清楚对应的原件了。
4、使用该方法设计测试用例主要有两个步骤:(1)确定等价类;
(2)生成测试用例。
(二)边界值分析法边界值分析法是对程序输入或输出的边界值进行测试的一种黑盒测试方法。
5、等价类划分法:等价类划分是把所有可能的输入数据划分成若干子集,然后从每一个子集中选取少数具有代表性的数据作为测试用例。
该方法是一种重要的,常用的黑盒测试用例设计方法。
黑盒测试实验报告
黑盒测试实验报告黑盒测试实验报告引言:在软件开发过程中,测试是一个至关重要的环节。
而黑盒测试作为一种常见的测试方法,主要用于检验软件系统的功能性,而不关心其内部的实现细节。
本实验旨在通过黑盒测试方法,评估一个虚拟购物网站的功能性,并提出相关的改进建议。
一、测试目标与方法1.1 测试目标本次黑盒测试的主要目标是检查虚拟购物网站的主要功能是否正常运行,包括用户注册、商品浏览、购物车管理、订单生成等方面。
同时,也将关注一些特殊情况下的处理,如异常输入、非法操作等。
1.2 测试方法本次实验采用的是等价类划分法和边界值分析法相结合的黑盒测试方法。
通过对输入数据的划分和边界值的选择,设计测试用例,覆盖系统的各个功能模块,以尽可能发现潜在的问题。
二、测试用例设计2.1 用户注册功能测试针对用户注册功能,设计以下几个测试用例:- 输入合法的用户名、密码和邮箱,验证注册是否成功;- 输入已存在的用户名,验证系统是否能正确提示用户;- 输入非法的邮箱格式,验证系统是否能正确提示用户;- 输入非法的密码长度,验证系统是否能正确提示用户。
2.2 商品浏览功能测试针对商品浏览功能,设计以下几个测试用例:- 验证商品分类是否正确显示;- 验证商品列表是否按照价格、销量等条件进行排序;- 验证商品详情页是否能正常显示商品信息;- 验证商品搜索功能是否准确。
2.3 购物车管理功能测试针对购物车管理功能,设计以下几个测试用例:- 验证商品添加到购物车后,购物车中是否正确显示商品信息;- 验证购物车中商品数量的增加、减少是否正确计算;- 验证购物车中商品删除后,购物车是否能正确更新。
2.4 订单生成功能测试针对订单生成功能,设计以下几个测试用例:- 验证用户下单后,订单是否能正确生成;- 验证订单金额计算是否准确;- 验证订单状态更新是否正确。
三、测试结果与分析经过对以上测试用例的执行,得出以下测试结果:- 用户注册功能正常,能够正确提示用户输入错误;- 商品浏览功能正常,商品分类、排序和搜索功能均可正常运行;- 购物车管理功能正常,商品添加、数量更新和删除功能均可正常运行;- 订单生成功能正常,订单生成和金额计算功能均可正常运行。
黑盒测试实验报告
无
数字
数字中任意一个
无
其他字符
转义字符、标点符号等
无
空格
无
一个测试用例应尽可能覆盖多个有效类,并且该实验不存在无效等价类
故只需设计一个测试用例即可:
测试用例编号
1
输入
操作
预期输出
实际输出
A@1你好
统计字符数目
字母:1
其他字符:3
数字字符:1
空格:1
字母:1
其他字符:3
数字字符:1
2、实验二
Error
Error
测试用例编号
4
输入
操作
预期输出
实际输出
x=2101
y=12
z=3
函数调用并计算
Error
Error
测试用例编号
5
输入
操作
预期输出
实际输出
x=1900
y=0
z=1
函数调用并计算
Error
Error
测试用例编号
6
输入
操作
预期输出
实际输出
x=1900
y=1
z=0
函数调用并计算
Error
N1=0
计算找零张数
Error
Error
测试用例编号
8
输入
操作
预期输出
实际输出
N50=0
N10=0
N5=0
N1=101
计算找零张数
Error
Error
测试用例编号
8
输入
操作
预期输出
实际输出
N50=0
N10=0
N5=0
N1=0
计算找零张数
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
黑盒测试实验报告费下载黑盒测试实验报告一实验内容1、系统地学习和理解黑盒测试的基本概念、原理,掌握黑盒测试的基本技术和方法;2、对一个已知的程序进行测试。
3、通过试验和应用,要逐步提高和运用黑盒测试技术解决实际测试问题的能力;4、完成实验并认真书写实验报告(要求给出完整的测试信息,如测试程序、测试用例,测试报告等)二实验原理黑盒测试原理:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。
软件的黑盒测试意味着测试要在软件的接口处进行。
这种方法是把测试对象看作一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。
因此黑盒测试又叫功能测试。
从理论上讲,黑盒测试只有采用穷举输入测试,把所有可能的输入都作为测试情况考虑,才能查出程序中所有的错误。
实际上测试情况有无穷多个,人们不仅要测试所有合法的输入,而且还要对那些不合法但可能的输入进行测试。
这样看来,完全测试是不可能的,所以我们要进行有针对性的测试,通过制定测试案例指导测试的实施,保证软件测试有组织、按步骤,以及有计划地进行。
黑盒测试行为必须能够加以量化,才能真正保证软件质量,而测试用例就是将测试行为具体量化的方法之一。
具体的黑盒测试用例设计方法包括等价类划分法、边界值分析法、错误推测法、因果图法、判定表驱动法、正交试验设计法、功能图法等。
等价类划分的办法是把程序的输入域划分成若干部分(子集),然后从每个部分中选取少数代表性数据作为测试用例。
每一类的代表性数据在测试中的作用等价于这一类中的其他值。
该方法是一种重要的,常用的黑盒测试用例设计方法。
1 划分等价类划分等价类:等价类是指某个输入域的子集合。
在该子集合中,各个输入数据对于揭露程序中的错误都是等效的,并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试。
因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据。
取得较好的测试结果。
等价类划分可有两种不同的情况:有效等价类和无效等价类。
有效等价类:是指对于程序的规格说明来说是合理的,有意义的输入数据构成的集合。
利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。
无效等价类:与有效等价类的定义恰巧相反。
设计测试用例时,要同时考虑这两种等价类。
因为,软件不仅要能接收合理的数据,也要能经受意外的考验。
这样的测试才能确保软件具有更高的可靠性。
2 边界值分析边界值分析是通过选择等价类边界的测试用例。
边界值分析法不仅重视输入条件边界,而且也必须考虑输出域边界。
它是对等价类划分方法的补充。
(1)边界值分析方法的考虑:长期的测试工作经验告诉我们,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部。
因此针对各种边界情况设计测试用例,可以查出更多的错误。
使用边界值分析方法设计测试用例,首先应确定边界情况。
通常输入和输出等价类的边界,就是应着重测试的边界情况。
应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据。
(2)基于边界值分析方法选择测试用例的原则:1)如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围边界的值作为测试输入数据。
2)如果输入条件规定了值的个数,则用最大个数,最小个数,比最小个数少一,比最大个数多一的数作为测试数据。
3)根据规格说明的每个输出条件,使用前面的原则1)。
4)根据规格说明的每个输出条件,应用前面的原则2)。
5)如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例。
6)如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试用例。
7)分析规格说明,找出其它可能的边界条件。
3 错误推测法错误推测法是基于经验和直觉推测程序中所有可能存在的各种错误, 从而有针对性的设计测试用例的方法。
错误推测方法的基本思想:列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据他们选择测试用例。
例如, 在单元测试时曾列出的许多在模块中常见的错误。
以前产品测试中曾经发现的错误等, 这些就是经验的总结。
还有,输入数据和输出数据为0的情况。
输入表格为空格或输入表格只有一行。
这些都是容易发生错误的情况。
可选择这些情况下的例子作为测试用例。
4 因果图法前面介绍的等价类划分方法和边界值分析方法,都是着重考虑输入条件,但未考虑输入条件之间的联系, 相互组合等。
考虑输入条件之间的相互组合,可能会产生一些新的情况。
但要检查输入条件的组合不是一件容易的事情, 即使把所有输入条件划分成等价类,他们之间的组合情况也相当多。
因此必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例。
这就需要利用因果图(逻辑模型)。
因果图方法最终生成的就是判定表。
它适合于检查程序输入条件的各种组合情况。
注:该用于被测试的程序能完成根据输入的年月日计算星期几的功能。
已知公元1年1月1日是星期一。
为简单起见不考虑公元前的日期。
yearyear yearmonth 测试程序星期几day输入程序输出三实验方法1 测试1(执行简单计算)1.1 输入输入条件有效等价类编号无效等价类编号键入计算的第-99…9(32位),99…1 13 33小于等于-1×10 一个数 9(32位) 小数点 2 14 33大于等于1×10非数字字符 15 运算符‘+’ 3 除‘+’、‘-’、‘*’、‘/’、16 ‘+/-’、‘%’、‘1/x’,‘-’ 4 ‘sqrt ‘外的其他字符‘*’ 5‘/’ 6‘+/-’ 7‘%’ 8‘1/x’ 9 第一个数为0单击‘1/x’ 17…sqrt? 10 第一个数为负数 18单击…sqrt?第二个数字 -99…9(32位),99…11 0(若第二个运算符为 199(32位) ‘/‘)20 33小于等于-1×10小数点 12 21 33大于等于1×10非数字字符 221.2过程用例描述计算器简单的加,减,乘,除的计算前置条件打开Windows XP 的计算器界面测试内容描述步骤描述输入数据预期结果 1。
键入计算的第一个数数字或小数点在框中显示你输入的数其他字符提示出错2。
单击“+”、“-”、“*” 、“+”、“-”、“*” 、“/”或“+/-” 界面上无任何反应,但已经记录了需要做什“/”或“+/-”。
么计算其他字符提示出错3。
键入计算的下一个数字或小数点在框中显示你输入的数数字。
其他字符提示出错4。
输入所有剩余的运数字或小数点在框中显示你输入的数算符和数字。
(连加连减其他字符提示出错连乘连除)2 测试2(执行科学计算)2.1 输入输入条件有效等价类编号无效等价类编号十进制数 1 10 -99…9(32位),99…9(3233小于等于-1×10 位)11 33大于等于-1×1012 非数字字符二进制数小于等于64位的非0开头的2 以0开头的数 130、1的任意组合输入有除0、1外的其他字符 14大于64位 15 八进制数小于等于21位的非0开头的3 以0开头的数 16 0,7的任意组合组合中有除0,7外的其他字17符大于21位 18十六进制数小于等于16位的非0开头的4 以0开头的数 190,7、A,F的任意组合小数点 5 组合中有除0,7、A,F外的20其他字符大于16位 21 转换十进制 6二进制 7八进制 8十六进制 92.2过程用例描述计算器的科学计算前置条件打开Windows XP 的计算器界面测试内容描述步骤描述输入数据 1。
单击“查看“菜单单击“查看“菜单的科学型按钮中的科学型2。
如下计算十六进制输入字符为0-9,或A-F 在框中显示你输入的数其他字符提示出错十进制输入字符为0-9 在框中显示你输入的数其他字符提示出错八进制输入字符为0-8 在框中显示你输入的数其他字符提示出错二进制输入字符为0、1 在框中显示你输入的数其他字符提示出错倒数计算非0数字计算出正确的数值0 除数不能为0其他字符提示出错 3使用的各种运算符,单击要使用的各种运算符,正常进行各种计算进行计算进行各种运算四实验结果打开Windows XP计算器(开始—所有程序—附件—计算器),如下图所示:设计测试用例并记录,实验结果如下表所示:1 测试1(执行简单计算)测试输入数据输出覆盖用例第一个数字运算符第二个数字编号1 1。
2 + 4。
1 5。
3 1 2 3 11 12 2 21 - 3 18 14 11 3 13 * 3 39 15 11 46 / 1 6 1 6 11 5 5 -5 17 ‘+/-’6 10 0。
1 1 8 ‘%’7 2 0。
5 1 9 ‘1/x’348 无法输入 13 -1*10349 无法输入 14 1*1010 A 无法输入 15 11 1 $ 无法输入 1 163412 3 + 无法输入 1 3 20 -1*103413 6 + 无法输入 1 3 21 1*1014 32 / 0 除数不能为零 1 6 19 15 12 + A 无法输入 1 3 22 16 0 除数不能为零1 17 ‘1/x’2 测试2(执行科学计算)测试输入数据输出覆盖用例十进制二进制八进制数十六进转换编号数数制数1 1 二进制 0001 1,7342 无法输入 10 -1*103 101100 十六进20 2,9制4 011001 无法输入第一个0 135 14000 无法输入 146 无法输入15 1…1(65个)7 45 二进制 101101 3,7 8 024 无法输入第一个0 16 9 19 无法输入 17 10 无法输入18 1…1(22)位11 56 八进制 126 4,8 12 012 无法输入第一个0 19 13 Z17 无法输入 20 14 1… 无法输入 211(17)位五实验分析经测试证实了的Windows系统自带的部分计算器功能符合要求。
由于时间有限所以没有进行全部功能的测试。
对于十进制无法用科学计数法方便准确的输入数据,得到的简单结果也不能用科学计数法简单明了的表示,显示数字长度过长,有时不能准确记录。
在计算时若输入其他非数字字符没有任何提示。
经过证实该软件符合标准可以进行使用。
注:扩展实验,可以自己选择一个系统,设计测试用例,然后根据黑盒测试方法对其进行黑盒测试。