软件测试方案模板三角形样例
三角形测试(测试用例)
三⾓形测试(测试⽤例)三⾓形测试⽤例题⽬:输⼊三个数a、b、c分别作为三边的边长构成三⾓形。
通过程序判定所构成的三⾓形是⼀般三⾓形、等腰三⾓形还是等边三⾓形时。
⽤等价类划分⽅法为该程序设计测试⽤例。
在三⾓形计算中,要求三⾓形的三个边长:A B C。
1、当三边不可能构成三⾓形时提⽰错误,可构成三⾓形时计算三⾓形周长。
2、若是等腰三⾓形打印“等腰三⾓形”,若两个等腰的平⽅和等于第三边平⽅和,则打印“等腰直⾓三⾓形”。
3、若是等边三⾓形,则打印:“等边三⾓形”。
4、画出程序流程图并设计⼀个测试⽤例。
分析⼀下:1、构成三⾓形的条件:任意两边之和⼤于第三边;2、构成等腰三⾓形的条件:任意两边相等;3、构成等腰直⾓三⾓形的条件:任意两边相等,⽽且两条边的平⽅和等于第三边的平⽅和;4、构成等边三⾓形的条件:三条边都相等。
那么⽤什么样的设计⽅法进⾏测试⽤例的设计呢?⼀、等价类划分:三⾓形三条边A、B、C的数据类型不同⼆、边界值分析:由于三⾓形的边长可以是正整数或正⼩数,所以就不对长度进⾏测试,那么边界值分析就不⽤了三、因果图法:三⾓形的三条边数据输⼊组合我们看⼀下三⾓形的流程图:注:改正⼀个⼩错误,在判断是否是等腰直⾓三⾓形中 A的平⽅=B的平⽅+C的平⽅。
由于画图时,⽹络速度问题,导致真或假的值没有标注。
三⾓形等价类列表判定类型有效等价类⽆效等价类⼀般三⾓形 ((a>0) Λ(b>0) Λ(c>0))Λ(a<=0 V b<=0 V c<=0) Λ(((a+b)>c) V ((a+c)>b) V ((b+c)>a)) (1) (((a+b)<=c) V ((a+c)<=b) V ((b+c)<=a)) (2)等腰三⾓形 (1) Λ (a=b V a=c V b=c)(3)(2) V (a!=b Λ b!=c Λ a!=c) (4)等边三⾓形 (1) Λ (a=b=c ) (5) (2) V (a!=b!=c)(6)根据上表组成的测试⽤例:三⾓形等价类测试⽤例ID 输⼊数据覆盖测试⽤例输出结果a b c1 3 4 5 (1) ⼀般三⾓形2 0 4 5 (2) ⾮(⼀般)三⾓形3 3 0 5 (2)4 3 4 0 (2)5 1 4 5 (2)6 3 8 5 (2)7 3 2 1 (2)8 3 3 5 (3) 等腰三⾓形9 3 4 310 3 4 4#includevoid main (){float a, b, c;printf("请输⼊三⾓形三边");scanf("%f,%f,%f",&a,&b,&c);if (a==b||b==c||a==c)printf("等腰三⾓形");if (a==b&&b==c)printf("等边三⾓形");if (a*a+b*b==c*c||a*a+c*c==b*b||b*b+c*c==a*a) printf("直⾓三⾓形"); elseprintf("普通三⾓形");}11 3 4 9 (4) ⾮等腰三⾓形12 3 3 3 (5) 等边三⾓形13 -1 0 1 (6) ⾮等边三⾓形我们再分析⼀下三⾓形的等价类:有效等价类:输⼊3个正整数或正⼩数:1、两数之和⼤于第三数,如A2、两数之和不⼤于第三数3、两数相等,如A=B或B=C或C=A4、三数相等,如A=B=C5、三数不相等,如A!=B,B!=C,C!=A1、空2、负整数3、⾮数字4、少于三个数三⾓形测试⽤例类别输⼊条件有效等价类⽆效等价类是否是三⾓形 (A>0) (1)(B>0) (2)(C>0) (3)(A+B>C) (4)(B+C>A) (5)(C+A>B) (6)(A<=0) (7)(B<=0) (8)(C<=0) (9)(A+B<=C) (10)(B+C<=A) (11)(C+A<=B) (12)是否是等腰三⾓形 (A=B) (13)(B=C) (14)(C=A) (15)(A!=B)and(B!=C)and(C!=A) (16)是否是等腰直⾓三⾓形 (A=B)and(A2+B2=C2) (17)(B=C)and(B2+C2=A2) (18)(C=A)and(C2+A2=B2) (19)(A!=B)and(B!=C)and(C!=A) (20)是否是等边三⾓形(A=B)and(B=C)and(C=A) (21)(A!=B) (22) (B!=C) (23)(C!=A) (24)#includevoid main(){int a,b,c;printf("Please Input a,b,c:");scanf("%d",&a);scanf("%d",&c);if(a+b<=c||a+c<=b||b+c<=a) /*判断是否能构成三⾓形*/ printf("No!\n"); else{printf("Yes!\n");if(a==c||a==b||b==c) /*判断是否为等腰三⾓形*/{printf("It can be an isoceles triangle!\n");if(a==c && a==b) /*判断是否为等边三⾓形*/printf("It also can be an equilateral triangle!\n"); elseprintf("But it can not be an equilateral triangle!\n"); }else{printf("It can't be an isoceles triangle!\n");}}getch();}三⾓形测试⽤例:序号 [A,B,C] 覆盖等价类输出1 [3,4,5] (1)(2)(3)(4)(5)(6) 是三⾓形2 [0,1,2] (7) ⾮三⾓形3 [1,0,2] (8) ⾮三⾓形4 [1,2,0] (9) ⾮三⾓形5 [1,2,3] (10) ⾮三⾓形6 [1,3,2] (11) ⾮三⾓形7 [3,1,2] (12) ⾮三⾓形8 [3,3,4] (1)(2)(3)(4)(5)(6)(13) 等腰三⾓形9 [3,4,4] (1)(2)(3)(4)(5)(6)(14) 等腰三⾓形10 [3,4,3] (1)(2)(3)(4)(5)(6)(15) 等腰三⾓形11 [2√2,2√2,4] (1)(2)(3)(4)(5)(6)(17) 等腰直⾓三⾓形12 [4,2√2,2√2] (1)(2)(3)(4)(5)(6)(18) 等腰直⾓三⾓形13 [2√2,4,2√2] (1)(2)(3)(4)(5)(6)(19) 等腰直⾓三⾓形14 [3,4,5]。
三角形测试(测试用例)
void main() { int a,b,c; printf("Please Input a,b,c:"); scanf("%d",&a); scanf("%d",&b); scanf("%d",&c); if(a+b<=c||a+c<=b||b+c<=a) /*判断是否能构成三角形*/ printf("No!\n"); else { printf("Yes!\n"); if(a==c||a==b||b==c) /*判断是否为等腰三角形*/ { printf("It can be an isoceles triangle!\n"); if(a==c && a==b) /*判断是否为等边三角形*/
printf("It also can be an equilateral triangle!\n"); else printf("But it can not be an equilateral triangle!\n"); } else { printf("It can't be an isoceles triangle!\n"); } } getch(); }
(1)
一般三角形
2 045
(2)
非(一般)三
角形
3 305
(2)
4 340
(2)
5 145
(2)
6 385
(2)
7 321
(2)
8 335
(3)
等腰三角形
9 343
软件测试三角形类型判断程序实验报告
软件测试技术第一次
实验报告
一、实验题目
测试三角形类型判断程序
二、实验开发工具:
Eclipse、JUnit、Ant
三、编码实现三角形类型判断程序:
class Triangle{
private double a, b, c;
public Triangle ( double a, double b, double c ){ this.a = a;
this.b = b;
this.c = c;
}
/*
返回值为1表示是等边三角形
返回值为2表示是等腰三角形
返回值为3表示是其他种类三角形
返回值为-1表示不能构成三角形
*/
public int type (){
//to be added
}
四、设计测试用例
建立一个被JUnit测试的类
建立对应的JUnit Test类
不能构成三角形的测试用例
构成等边三角形的测试用
构成等腰三角形的测试用例
构成其他种类三角形的测试用例
三角形有一条边是非正数
四、编写ant脚本驱动测试用例。
软件测试案例(三角形黑盒测试)
c
50 50 50 50 50 50 50 50 1 2 99 100 50
预期输出
等腰三角形 等腰三角形 等腰三角形 非三角形 等腰三角形 等腰三角形 等腰三角形 非三角形 等腰三角形 等腰三角形 等腰三角形 非三角形 等边三角形
健壮性边界值测试用例 测试用例
Test1 Test2 Test3 Test4 Test5 Test6 Test7 Test8 Test9 Test10 Test11 Test12 Test13 Test14 Test15 Test16
∨
5
∧
ቤተ መጻሕፍቲ ባይዱ
E3
∽
6
∧
E4
结果
C8: C9:
b=c a=c
根据因果图得到的决策表以及测试用例
规则(缺省项均为 1) c1 0 c2 c3 c4 c5 c6 c7 c8 c9 输入无 √ 效 非三角 形 普通三 角形 等腰三 角形 等边三 角形 0 0 0 0 0 0 0 0 √ √ √ √ √ √ √ √ √ √ √ √ √ 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
Test17 Test18 Test19
50 50 50
50 50 50
100 101 50
非三角形 无效输入 等边三角形
等价类分析法
输入条件 是否三角形的三条边 有效等价类 (0<a<101) (0<a<101) (0<a<101) (a+b>c) (b+c>a) (c+a>b) (a=b) (b=c) (a=c) 无效等价类 (a<=0||a>100) (b<=0||b>100) (c<=0||c>100) (a+b<=c) (b+c<=a) (c+a<=b)
三角形测试(测试用例)
等腰三角形 (1) Λ (a=b V a=c V b=c)(3)
(2) V (a!=b Λ b!=c Λ a!=c) (4)
等边三角形 (1) Λ (a=b=c ) (5)
(2) V (a!=b!=c)(6)
根据上表组成的测试用例:
三角形等价类测试用例
ID 输入数据
覆盖测试用例
输出
结果
abc
1 345
三角形测试用例: 序号 [A,B,C] 覆盖等价类 输出 1 [3,4,5] (1)(2)(3)(4)(5)(6) 是三角形 2 [0,1,2] (7) 非三角形 3 [1,0,2] (8) 非三角形 4 [1,2,0] (9) 非三角形 5 [1,2,3] (10) 非三角形 6 [1,3,2] (11) 非三角形 7 [3,1,2] (12) 非三角形 8 [3,3,4] (1)(2)(3)(4)(5)(6)(13) 等腰三角形 9 [3,4,4] (1)(2)(3)(4)(5)(6)(14) 等腰三角形 10 [3,4,3] (1)(2)(3)(4)(5)(6)(15) 等腰三角形 11 [2√2,2√2,4] (1)(2)(3)(4)(5)(6)(17) 等腰直角三角形 12 [4,2√2,2√2] (1)(2)(3)(4)(5)(6)(18) 等腰直角三角形 13 [2√2,4,2√2] (1)(2)(3)(4)(5)(6)(19) 等腰直角三角形 14 [3,4,5] (1)(2)(3)(4)(5)(6)(16)(20)(22)(23)(24) 是三角形 15 [3,3,3] (1)(2)(3)(4)(5)(6)(16)(21) 等边三角形 16 [,,,] 无效等价类 错误提示 17 [-3,4,5] 无效等价类 错误提示 18 [a,3,@] 无效等价类 错误提示 19 [3,4] 无效等价类 错误提示
三角形测试(测试用例)
三角形测试用例题目:输入三个数a、b、c分别作为三边的边长构成三角形。
通过程序判定所构成的三角形是一般三角形、等腰三角形还是等边三角形时。
用等价类划分方法为该程序设计测试用例。
在三角形计算中,要求三角形的三个边长:A B C。
1、当三边不可能构成三角形时提示错误,可构成三角形时计算三角形周长。
2、若是等腰三角形打印“等腰三角形”,若两个等腰的平方和等于第三边平方和,则打印“等腰直角三角形”。
3、若是等边三角形,则打印:“等边三角形”。
4、画出程序流程图并设计一个测试用例。
分析一下:1、构成三角形的条件:任意两边之和大于第三边;2、构成等腰三角形的条件:任意两边相等;3、构成等腰直角三角形的条件:任意两边相等,而且两条边的平方和等于第三边的平方和;4、构成等边三角形的条件:三条边都相等。
那么用什么样的设计方法进行测试用例的设计呢?一、等价类划分:三角形三条边A、B、C的数据类型不同二、边界值分析:由于三角形的边长可以是正整数或正小数,所以就不对长度进行测试,那么边界值分析就不用了三、因果图法:三角形的三条边数据输入组合我们看一下三角形的流程图:注:改正一个小错误,在判断是否是等腰直角三角形中 A的平方=B的平方+C的平方。
由于画图时,网络速度问题,导致真或假的值没有标注。
三角形等价类列表判定类型有效等价类无效等价类我们再分析一下三角形的等价类:有效等价类:输入3个正整数或正小数:1、两数之和大于第三数,如A<B+C;B<C+A;C<A+B2、两数之和不大于第三数3、两数相等,如A=B或B=C或C=A4、三数相等,如A=B=C5、三数不相等,如A!=B,B!=C,C!=A无效等价类:1、空2、负整数3、非数字4、少于三个数三角形测试用例类别输入条件有效等价类无效等价类是否是三角形 (A>0) (1)(B>0) (2)(C>0) (3)(A+B>C) (4)(B+C>A) (5)(C+A>B) (6)(A<=0) (7)(B<=0) (8)(C<=0) (9)(A+B<=C) (10)(B+C<=A) (11)(C+A<=B) (12)是否是等腰三角形 (A=B) (13)(B=C) (14)(C=A) (15)(A!=B)and(B!=C)and(C!=A) (16)是否是等腰直角三角形 (A=B)and(A2+B2=C2) (17)(B=C)and(B2+C2=A2) (18)(C=A)and(C2+A2=B2) (19)(A!=B)and(B!=C)and(C!=A) (20)是否是等边三角形(A=B)and(B=C)and(C=A) (21)(A!=B) (22) (B!=C) (23)(C!=A) (24)#include <stdio.h>void main(){int a,b,c;printf("Please Input a,b,c:");scanf("%d",&a);scanf("%d",&b);scanf("%d",&c);if(a+b<=c||a+c<=b||b+c<=a) /*判断是否能构成三角形*/ printf("No!\n");else{printf("Yes!\n");if(a==c||a==b||b==c) /*判断是否为等腰三角形*/{printf("It can be an isoceles triangle!\n");if(a==c && a==b) /*判断是否为等边三角形*/printf("It also can be an equilateral triangle!\n"); elseprintf("But it can not be an equilateral triangle!\n"); }else{printf("It can't be an isoceles triangle!\n");}}getch();}三角形测试用例:序号 [A,B,C] 覆盖等价类输出1 [3,4,5] (1)(2)(3)(4)(5)(6) 是三角形2 [0,1,2] (7) 非三角形3 [1,0,2] (8) 非三角形4 [1,2,0] (9) 非三角形5 [1,2,3] (10) 非三角形6 [1,3,2] (11) 非三角形7 [3,1,2] (12) 非三角形8 [3,3,4] (1)(2)(3)(4)(5)(6)(13) 等腰三角形9 [3,4,4] (1)(2)(3)(4)(5)(6)(14) 等腰三角形10 [3,4,3] (1)(2)(3)(4)(5)(6)(15) 等腰三角形11 [2√2,2√2,4] (1)(2)(3)(4)(5)(6)(17) 等腰直角三角形12 [4,2√2,2√2] (1)(2)(3)(4)(5)(6)(18) 等腰直角三角形13 [2√2,4,2√2] (1)(2)(3)(4)(5)(6)(19) 等腰直角三角形14 [3,4,5](1)(2)(3)(4)(5)(6)(16)(20)(22)(23)(24) 是三角形15 [3,3,3] (1)(2)(3)(4)(5)(6)(16)(21) 等边三角形16 [,,,] 无效等价类错误提示17 [-3,4,5] 无效等价类错误提示18 [a,3,@] 无效等价类错误提示19 [3,4] 无效等价类错误提示。
软件测试报告--三角形单元测试
一.题目要求:使用c#语言编写程序,实现下面功能:输入三个数,判断能否构成三角形,如果能构成三角形,判断其为等边三角形、等腰三角形或不等边三角形。
三角形的判定方法有返回值,并对该方法进行测试。
二.源代码程序:using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace TriangleTest{class Triangle{int a,b,c;public Triangle(int a0,int b0,int c0){this.a = a0;this.b = b0;this.c = c0;}public bool IsTriangle(){if ((a + b) > c && (a + c) > b && (b + c) > a)return true;elsereturn false;}public bool IsTwoEqualTriangle(){if (IsTriangle()){if (a == b || a == c || b == c)return true;elsereturn false;}else{Console.WriteLine("It is not a triangle!");return false;}}public bool IsThreeEqualTriangle(){if (IsTriangle()){if (a == b && a == c)return true;elsereturn false;}else{Console.WriteLine("It is not a triangle!");return false;}}static void Main(string[] args){int a=0, b=0, c=0;Console.WriteLine("Please input three edges:\n");a =Convert.ToInt32(Console.ReadLine());b = Convert.ToInt32(Console.ReadLine());c = Convert.ToInt32(Console.ReadLine());Triangle tri = new Triangle(a,b,c);if (tri.IsThreeEqualTriangle())Console.WriteLine("It is a threeequal triangle!");else{if (tri.IsTwoEqualTriangle())Console.WriteLine("It is a twoequal triangle!");elseif(tri.IsTriangle())Console.WriteLine("It is a triangle!");elseConsole.WriteLine("It is not a triangle!");}Console.ReadLine();}}}三.程序运行结果:1.判断是否为三角形:2.判断是否为等腰三角形:3.判断是否为等边三角形:四.测试脚本:进行三角形单元测试时,可选择总体测试,也可以一个一个测试。
三角形测试用例
三角形测试用例1. 引言在软件开发中,测试是一个至关重要的环节。
而在测试过程中,测试用例是评估软件功能和性能的关键工具之一。
本文将围绕着三角形的测试用例展开讨论。
三角形是指由三条边组成的图形,它是几何学中最基本的图形之一。
我们将介绍如何编写一组全面且有效的测试用例来验证一个给定的三条边是否可以构成一个有效的三角形。
2. 测试目标我们的目标是编写一组测试用例,通过输入不同长度的三条边来验证是否可以构成一个有效的三角形。
对于给定的三条边a、b和c,我们需要验证以下情况: - a、b和c是否满足构成三角形的条件; - 如果满足条件,那么它是什么类型的三角形(例如等边三角形、等腰三角形或普通三角形); - 如果不满足条件,那么应该返回什么样的错误信息。
3. 测试用例设计3.1 边界值分析在设计测试用例时,我们需要考虑到边界值情况。
以下是一些可能需要考虑到的边界值: - a、b或c为零的情况; - a、b或c为负数的情况; - a、b或c的值非常大的情况。
3.2 等边三角形测试用例等边三角形是指三条边长度相等的三角形。
以下是一些可能需要考虑到的测试用例:- a、b和c均为相等且大于零的值; - a、b和c均为相等且小于零的值; - a、b和c均为相等但其中有一个为零的值。
3.3 等腰三角形测试用例等腰三角形是指两条边长度相等的三角形。
以下是一些可能需要考虑到的测试用例:- a和b相等,且a和b大于零,但c不等于a或b; - a和b相等,且a和b小于零,但c不等于a或b; - a和b相等,且其中一个为零,但c不等于a或b。
3.4 直角三角形测试用例直角三角形是指其中一个内角为90度(直角)的三角形。
以下是一些可能需要考虑到的测试用例: - a^2 + b^2 = c^2 的情况; - a^2 + b^2 ≠ c^2 的情况。
3.5 普通三角形测试用例普通三角形是指没有边相等的三角形。
以下是一些可能需要考虑到的测试用例: - a、b和c均为不相等的正数; - a、b和c均为不相等的负数; - a、b和c均为不相等但其中有一个为零的值。
(完整word版)测试三角形软件测试(word文档良心出品)
cout<<"能构成三角形"<<endl;
cout<<"该三角形是:"<<endl;
if(a*a+b*b>c*c&&b*b+c*c>a*a&&a*a+c*c>b*b)
{
cout<<"锐角";
}
else if(a*a+b*b==c*c||a*a+c*lt;<"直角";
是否是直角三角形
(a2+b2=c2)or(b2+c2=a2)
or( (c2+a2=b2) (21)
(a2+b2=!c2)and(b2+c2=!a2)and(c2+a2=b2)
(22)
是否是等腰三角形
(a=b) (23)(b=c) (24)
(c=a) (25)
(a!=b)and(b!=b)and(c!=a) (26)
(b+c>a)(5)(c+a>b) (6)
(a<=0)(7) ( a>100) (8)
(b<=0)(9) ( b>100) (10)
(c<=0)(11) (c>100) (12)
(a+b<=c)(13)(b+c<=a) (14)
(c+a<=b) (15)
a ,b ,c中有非数字字符(16)
是否是锐角三角形
吉林大学应用技术学院
实验(训)报告单(电子版)
实验编号
1
实验班级
软件测试案例(三角形白盒测试)
Return3
Return1
Return2
Return0
*为1,表示普通三角形;
*为2,表示等腰三角形;
*为3,表示等边三角形。
*/
publicstaticintcomfirm(inta,intb,intc){
if((a+b>c)&&(b+c>a)&&(a+c>b)){//判断为三角形
if((a==b)&&(b==c))//判断为等边三角形
return3;
if((a==b)||(b==c)||(a==c))//判断为等腰三角形
return2;
else//判断为普通三角形
return1;
}
else{//为非三角形
return0;
}
}
}
1
二、程序流程图
①
Nห้องสมุดไป่ตู้
a+b>c&&b+c
>a&&a+c>b
YY
a==b&&b==c
N
④
a==b||b==c||现方式做保护处理对用户上传分享的文档内容本身不做任何修改或编辑并不能对任何下载内容负责
一、核心程序代码
/**判断三角形的类*/
publicclassTriangleTestMethod{
/**判断三角形的种类。参数a,b,c分别为三角形的三边,
*返回的参数值为0,表示非三角形;
软件测试经典三角形案例
软件测试-黑盒测试例子一、等价类划分问:某程序规定:"输入三个整数 a、 b、 c分别作为三边的边长构成三角形。
通过程序判定所构成的三角形的类型,当此三角形为一般三角形、等腰三角形及等边三角形时,分别作计算… "。
用等价类划分方法为该程序进行测试用例设计。
(三角形问题的复杂之处在于输入与输出之间的关系比较复杂。
)解:分析题目中给出和隐含的对输入条件的要求:(1)整数(2)三个数(3)非零数(4)正数(5)两边之和大于第三边(6)等腰(7)等边如果 a、 b 、 c满足条件( 1 ) ~ ( 4 ),则输出下列四种情况之一:1)如果不满足条件(5),则程序输出为 " 非三角形 " 。
2)如果三条边相等即满足条件(7),则程序输出为 " 等边三角形 " 。
3)如果只有两条边相等、即满足条件(6),则程序输出为 " 等腰三角形 " 。
4)如果三条边都不相等,则程序输出为 " 一般三角形 " 。
列出等价类表并编号覆盖有效等价类的测试用例:a b c覆盖等价类号码3 4 5(1)--(7)4 4 5(1)--(7),(8)4 5 5(1)--(7),(9)5 4 5(1)--(7),(10) 4 4 4(1)--(7),(11)覆盖无效等价类的测试用例:二、边界值分析法NextDate函数的边界值分析测试用例在NextDate函数中,隐含规定了变量mouth和变量day的取值范围为1≤mouth≤12和1≤day≤31,并设定变量year的取值范围为1912≤year≤2050 。
三、错误推测法测试一个对线性表(比如数组)进行排序的程序,可推测列出以下几项需要特别测试的情况:I.输入的线性表为空表;II.表中只含有一个元素;III.输入表中所有元素已排好序;IV.输入表已按逆序排好;V.输入表中部分或全部元素相同。
软件测试 三角形的黑白盒测试word文档良心出品
三角形黑盒测试1
三角形白盒测试
、核心程序代码
/** 判断三角形的类*/
public class TriangleTestMethod {
* 返回的参数值为0 ,表示非三角形;
* 为1,表示普通三角
形;
* 为2,表示等腰三角
形;
* 为3,表示等边三角
形。
*/
public static int comfirm( int a, int b, int c) {
if ((a + b > c) && (b + c > a) && (a + c > b)) { // 判断为三角
形
if ((a == b) && (b ==c)) // 判断为等边三角
形
return 3;
if ((a == b) || (b == c) || (a == c)) // 判断为等腰三角形
return 2;
else // 判断为普通三角形
return 1;
else { // 为非三角形
return 0;
、程序流程图
/** 判断三角形的种类。
参数a, b, c分别为三角形的三边,
三、测试用例
1.语旬st盖觑试用例:
艺判定Sfi测试用例I
3•条件aa测试用例
4•条件•判定覆盖测试用例
5•条件组台復盖测试用例
四、程序控制流图。
软件测试经典三角形案例
软件测试-黑盒测试例子一、等价类划分问:某程序规定:"输入三个整数 a、 b、 c分别作为三边的边长构成三角形。
通过程序判定所构成的三角形的类型,当此三角形为一般三角形、等腰三角形及等边三角形时,分别作计算… "。
用等价类划分方法为该程序进行测试用例设计。
(三角形问题的复杂之处在于输入与输出之间的关系比较复杂。
)解:分析题目中给出和隐含的对输入条件的要求:(1)整数(2)三个数(3)非零数(4)正数(5)两边之和大于第三边(6)等腰(7)等边如果 a、 b 、 c满足条件( 1 ) ~ ( 4 ),则输出下列四种情况之一:1)如果不满足条件(5),则程序输出为 " 非三角形 " 。
2)如果三条边相等即满足条件(7),则程序输出为 " 等边三角形 " 。
3)如果只有两条边相等、即满足条件(6),则程序输出为 " 等腰三角形 " 。
4)如果三条边都不相等,则程序输出为 " 一般三角形 " 。
列出等价类表并编号覆盖有效等价类的测试用例:a b c覆盖等价类号码3 4 5(1)--(7)4 4 5(1)--(7),(8)4 5 5(1)--(7),(9)5 4 5(1)--(7),(10) 4 4 4(1)--(7),(11)覆盖无效等价类的测试用例:二、边界值分析法NextDate函数的边界值分析测试用例在NextDate函数中,隐含规定了变量mouth和变量day的取值范围为1≤mouth≤12和1≤day≤31,并设定变量year的取值范围为1912≤year≤2050 。
三、错误推测法测试一个对线性表(比如数组)进行排序的程序,可推测列出以下几项需要特别测试的情况:I.输入的线性表为空表;II.表中只含有一个元素;III.输入表中所有元素已排好序;IV.输入表已按逆序排好;V.输入表中部分或全部元素相同。
软测-为三角形程序开发判定条件覆盖和条件组合覆盖的测试用例
1.为三角形程序开发判定/条件覆盖和条件组合覆盖的测试用例。
1)判定/条件覆盖对于第一个判定a>0&&b>0&&c>0 :条件a>0 取真值记为T1,取假值记为-T1条件b>0 取真值记为T2,取假值记为-T2条件c>0 取真值记为T3,取假值记为-T3对于第二个判定( a+b>c)&&(a+c>b)&&(b+c>a ):条件a+b>c 取真值记为T4,取假值记为-T4条件a+c>b 取真值记为T5,取假值记为-T5条件b+c>a 取真值记为T6,取假值记为-T6a<=0 b<=0 c<=0a+c>b a+b>c b+c>a12367 -T1、-T2、-T3、T4 、T5 、T6 3672.对下面的流程图用逻辑覆盖法设计测试用例(至少三种)1)..语句覆盖:语句覆盖可以保证程序中的每个语句都得到执行。
测试用例输入为:{ x1=3、x2=0} 输出x3=0 ,程序执行的路径是:2.判定覆盖:测试用例输入为:{ x1=2、x2=1} 输出x3=0 ,程序执行的路径是:123578;测试用例输入为:{ x1=3、x2=0} 输出x3=0 ,程序执行的路径是:.3).条件覆盖对于第一个判定( (x1=3)or(x2>1) ):条件x1=3 取真值记为T1,取假值记为-T1条件x2>1 取真值记为T2,取假值记为-T2对于第二个判定( (x1>2)and(x2=0) ):条件x1>2 取真值记为T3,取假值记为-T3条件x2=0 取真值记为T4,取假值记为-T4测试用例执行路径覆盖条件覆盖分支x1=3、x2=2 T1、T2、T3、-T4 34。
软件测试与质量保证作业1三角形问题案例
软件测试与质量保证作业一、测试问题描述输入三个整数a b、c,分别作为三角形的三条边,通过程序判断这三条边是否能构成三角形?如果能构成三角形,则判断三角形的类型(等边三角形、等腰三角形、一般三角形)。
要求输入三个整数a、b、c,必须满足以下条件: 1 < a药0 ; 1 < b < 200 ; 1 < c < 200。
用边界值分析法设计测试用例。
用黑盒测试方法设计测试用例。
二、设计测试用例1. 用边界值测试方法设计测试用例用边界值分析法设计测试用例,按照下列步骤进行:(1)分析各变量取值边界值分析的基本思想是使用输入变量的最小值、略高于最小值、正常值、略低于最大值和最大值设计测试用例。
因此a, b , c的边界取值是:1, 2, 100 , 199 , 200。
(2)测试用例数有n个变量的程序,其边界值分析会产生4n+1个测试用例。
这里有3个变量,因此会产生13个测试用例。
(3)设计测试用例用边界值分析法设计测试用例就是使一个变量取边界值(分别取最小值、略高于最小值、正常值、略低于最大值和最大值),其余变量取正常值,然后对每个变量重复进行。
本例用边界值分析法设计的测试用例见表1-1 O2. 用等价类测试方法设计测试用例(1) 首先分析题目中给出的条件和隐含的输入要求,输入条件如下:a) 正整数;b) 三个数;c) 构成一般三角形;d) 构成等腰三角形;e) 构成等边三角形;f) 不能构成三角形(2) 根据输入条件的要求划分等价类,列出等价类表并编号,如表1-2 所示。
表1-2三角形问题的等价类注:划分等价类的方式并不唯一,可根据被测对象的具体情况划分等价类。
(3) 设计测试用例,覆盖上表中的等价类,如表1-3表所示3•用基于判定表的测试方法设计测试用例(1) 列出所有的条件桩和动作桩条件桩C1: a < b + c?C2: b < a + c?C3: c < a + b?C4: a= =b?C5: a= =c?C6: b= =c?动作桩•a1:非三角形a2:不等边三角形a3:等腰三角形a4:等边三角形a5:不可能(2) 根据输入条件和输出的关系,填写各条规则,画出判定表,如表1-4所示(3) 设计测试用例,覆盖判定表中的各条规则。
三角形测试(测试用例)
题目:输入三个数a、b、c分别作为三边的边长构成三角形。通过程序判定所构成的三角形是一般三角形、等腰三角形还是等边三角形时。用等价类划分方法为该程序设计测试用例。
在三角形计算中,要求三角形的三个边长:ABC。
1、当三边不可能构成三角形时提示错误,可构成三角形时计算三角形周长。
2、若是等腰三角形打印“等腰三角形”,若两个等腰的平方和等于第三边平方和,
三角形等价类列表
判定类型
无效等价类
有效等价类
一般三角形((a>0)Λ(b>0)Λ(c>0))Λ
(a<=0Vgt;c)V((a+c)>b)V((b+c)>a))(1)
(((a+b)<=c)V((a+c)<=b)V((b+c)<=a))(2)
则打印“等腰直角三角形”。
3、若是等边三角形,则打印:“等边三角形”。
4、画出程序流程图并设计一个测试用例。
分析一下:
1、构成三角形的条件:任意两边之和大于第三边;
2、构成等腰三角形的条件:任意两边相等;
3、构成等腰直角三角形的条件:任意两边相等,而且两条边的平方和等于第三边的平
方和;
4、构成等边三角形的条件:三条边都相等。
那么用什么样的设计方法进行测试用例的设计呢?
一、等价类划分:三角形三条边A、B、C的数据类型不同
二、边界值分析:由于三角形的边长可以是正整数或正小数,所以就不对长度进行测试,那么边界值分析就不用了
三、因果图法:三角形的三条边数据输入组合
我们看一下三角形的流程图:
注:改正一个小错误,在判断是否是等腰直角三角形中A的平方=B的平方+C的平方。由于画图时,网络速度问题,导致真或假的值没有标注。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件测试方案模板三角形样例
1概述
测试对象简介。
经过此让读者对被测对象有一个基本的认识。
包括:被测对象的开发背景、定位、主要功能特性等;
2测试需求
列出需要测试的功能点需求。
此部分运用逆向工程经过现有系统获得。
对于需求不明确的地方能够加上自己的澄清和理解。
某程序从一个输入对话框中读取三个整数值。
这三个整数值代表了三解形三边的长度。
程序显示提示信息,指示该三角形究竟是不规则三角形、等腰三角形还是等边三角形。
需求澄清后补充:
⏹输入规格
✧输入对话框分别提供三个输入框供三条边输入,每条
边最大允许输入范围为100cm
✧界面语言为中文
✧长时间不输入,输入框会一直等待输入。
⏹输出规格
✧无效输入以红色字体标示。
✧提供命令行接口供第三方调用。
✧输出结果清空后允许连续输入。
⏹质量属性
✧性能:1S内给出结合
✧可服务性要求:采用格式化形式保存所输入数据和输
出结果。
是否保存可配置。
✧可靠性要求:异常非常输入不退出。
运行24小时后系
统稳定,不出现内存泄漏、异常退出等情况。
3XXXX功能测试设计
(逐功能展开测试设计,如果有多个功能,则重复COPY整个第3章节)
3.1功能流程分析
功能是如何被实现的。
输入如何转化为输出的。
形式化能够采用IPO分析,对于涉及到的重要输入输出数据结构必须列出。
建议:
1)对于功能处理逻辑性较强的,能够采用流程图、时序(顺序)图、分类树、判定表等辅以分析;
2)对于功能处理较为简单、或基于数据、逻辑性不强的,经过自己的理解,将实现要点列出即可。
3.1.1输入
·三角形三条边a,b,c,最大为100cm
·命令行接口形式为:aTriangle [a,b,c]|[格式化文件] > output.txt /s
/s:代表是否输出到某文件中,当加了/s后如果不给文件名,则默认保存文件名按时间戳生成,文件后缀名默认为文本格式,即为记事本即可打开。
3.1.2处理
该程序的主模块如上图所示,包括输入命令解析、三角形判断、输出结果保存三部分处理。
输入命令解析:分别进行参数合法性、文件合法性、记录内容合法性的校验。
如果存在非法立即退出。