软件测试

题目1

电话号码问题 某城市电话号码由三部分组成。它们的名称和内容分别是: (1)地区码:空白或三位数字; (2)前 缀:非’0’或’1’的三位数字; (3)后 缀:4 位数字。 假定被测程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的电话号码。根据该 程序的规格说明,作等价类的划分,并设计测试方案。

输入 有效等价类 无效等价类
地区码 ①空白 ②三位数字 ③字母 ④标点符号等特殊字符 ⑤ 超过三位的数字⑥大于0小于3的数字
前缀 ⑦非0或1的三位数字 ⑧三位0或者三位1 ⑨字母⑩标点符号等特殊字符⑪小于三位的数字⑫大于三位的数字
后缀 ⑬四位数字 ⑭小于四位的数字⑮字母等特殊符号⑯大于四位的数字

测试方案

覆盖的等价类 地区码 前缀 后缀 预期结果
① ⑦⑬ 空白 123 4567 正确
② ⑦⑬ 234 123 4567 正确
asd 123 4567 错误
-#¥ 000 4567 错误
1234 123 4567 错误
12 123 4567 错误
213 000 4567 错误
213 asdsad 4567 错误
213 @$ 4567 错误
213 12 4567 错误
213 12345 4567 错误
213 12345 123 错误
213 12345 asd#$% 错误
213 12345 45673445 错误

题目2

题目二:三角形问题 根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。 一个程序读入三个整数。把此三个数值看成是一个三角形的三个边。这个程序要打印出信息, 说明不是三角形、三角形是三边不等的、是等腰的、还是等边的。

输入 有效等价类 无效等价类
a,b,c ①a=b=c ②a+b>c&&a+c>b&&b+c>a ③ a!=b&&b!=c&&a!=c ④a==b&&b!=c or a==c &b!=c or b==c&&b!=a ⑤ 输入的是小数⑥输入是字母或者符号 ⑦a+b<=c or b+c <=a or c+b<=a

测试用例

覆盖的等价类 a b c 预期结果
① ② 2 2 2 等边三角形
②④ 1 2 2 等腰三角形
②③ 2 3 4 三边不等三角形
2.3 2 3 输入错误
sd 4 输入错误
1 2 3 边长度输入错误

题目3

日期问题 用决策表测试法测试以下程序:该程序有三个输入变量month、day、year(month 、 day 和year 均为整数值,并且满足:1≤month≤12 和1≤day≤31),分别作为输入日期的月份、日、年份,通过程序 可以输出该输入日期在日历上隔一天的日期。例如,输入为 2004 年11 月29 日,则该程序的输出为 2004 年12 月1 日。 (1) 分析各种输入情况,列出为输入变量 month 、 day 、 year 划分的有效等价类。 (2) 分析程序的规格说明,并结合以上等价类划分的情况,给出问题规定的可能采取的操作(即 列出所有的动作桩)。 (3) 根据 (1) 和 (2) ,画出简化后的决策表。

输入 有效等价类 无效等价类
year ①1900<=year<=10000 ②字母③标点符号等特殊字符 ④小于0的数字⑤不为整数
month ⑥ 1<=month<=12 ⑦小于0的数字 ⑧字母标点符号等特殊字符⑨大于12的数字⑩不为整数
day 如果大月⑪1<=day<=31 如果小月:⑫1<=day<=30 如果闰年2月 1<=days<=29 如果平年 1<=days<=28 ⑬小于1的数字⑭大月大于31的数字 小月大于30的数字,平年2月大于28的数字,闰年大于29的数字 ⑮字母等特殊字符 ⑯不为整数

动作桩:

  1. 提示 year输入错误
  2. 提示month输入错误
  3. 提示day输入错误
  4. 输出日期

决策表(判定表)

序号 1 2 3 4 5 6 7
条件 year输入是否正确 1 0 1 1 0 1
month输入是否正确 1 1 0 1 0 0
days输入是否正确 1 1 1 0 1 0
动作 输出日期 1 0 0 0 0 0
提示year输出错误 0 1 0 0 1 0
提示month输出错误 0 0 1 0 0 1
提示day输出错误 0 0 0 1 0 0

题目四

生育津贴:生育津贴为女职工产假期间的工资,生育津贴低于本人工资标准的,差额部分由企业补足。(2)参加生育保险累计满一年的职工,在生育(流产)时仍在参保的,按有关规定享受生育保险待遇。(3)生育保险待遇生育津贴发放标准,以职工所在用人单位上年度职工月平均工资为基数按规定假期计发:(职工所在用人单位上年度职工月平均工资/30天 X假期天数)

假期天数:① 正常产假90天(包括产前检查15天);② 独生子女假增加35天;③ 晚育假增加15天;④ 难产假。剖腹产、Ⅲ度会阴破裂增加30天;吸引产、钳产、臀位产增加15天;⑤ 多胞胎生育假,每多生育一个婴儿增加15天;⑥ 流产假:怀孕不满2个月15天;怀孕不满4个月30天;满4个月以上(含4个月)至7个月以下42天;7个月以上遇死胎、死产和早产不成活75天;

设计测试用例

覆盖的等价类 假期天数 生育津贴
90 90/30 *月工资
①② 125 125/30 *月工资
①③ 105 105/30 *月工资
① ④难产 120 120/30 *月工资
① ④其他 105 105/30 *月工资
①②③ 140 140/30 *月工资
①②④难产 155 155/30 *月工资
①②④其他 140 140/30 *月工资
①③⑤ 105+15*(婴儿数-1) 105+15*(婴儿数-1)/30 *月工资
①④⑤ 120+15*(婴儿数-1) 105+15*(婴儿数-1)/30 *月工资
①②③ ④ 170 170/30 *月工资
①②③ ④⑤ 170+15*(婴儿数-1) 170+15*(婴儿数-1)/30 *月工资
⑥不满两个月 15 15/30 *月工资
⑥不满四个月 30 30/30 *月工资
⑥四个月以上七个月以下 42 42/30 *月工资
⑥七个月以上 75 75/30 *月工资

知识储备:

等价类测试用例的设计

1.无效等价类只能有一个 每个测试用例 且都要覆盖
2. 设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖地有效等价类,重复这一步,直到所有的有效等价类都被覆盖为止;
3. 设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步,直到所有的无效等价类都被覆盖为止

条件桩,动作桩

  • 条件桩 列出问题的所有条件
  • 动作桩 列出可能针对问题所采取的动作 如正确打印内容,提示year出错,提示month出错

代码

测试日历

#encoding=utf-8
from sys import argv
from pymongo import mongo_client
from datetime import timedelta,datetime
s=raw_input()a=s.split(" ")
class OutboundsError(Exception):def __init__(self,errormsg):self.__errormsg=errormsgdef __str__(self):return self.__errormsg
Bigmonth=[1,3,5,7,8,10,12]
try:year=int(a[0])month=int(a[1])days=int(a[2])if year<1900 or year>=10000:raise OutboundsError("年份输入有误")if month<1 or month>=12:raise OutboundsError("月份输入错误")#判断闰年2月的日期if year%400==0 or year%4==0 and year%100!=0:if month==2 and days>29:raise OutboundsError("天数输入错误")elif month==2 and days>28:raise OutboundsError("天数输入错误")if month in Bigmonth and days>31:raise OutboundsError("天数输入错误")elif month not in Bigmonth and days>30:raise  OutboundsError("天数输入错误")days=datetime(year,month,days)afterday=days+timedelta(days=2)print "{} {} {}".format(afterday.year,afterday.month,afterday.day)except IndexError as e:print("输入格式错误")except ValueError as e:print("输入信息错误")except OutboundsError as e1:print(e1)

测试三角形


import java.util.Scanner;public class first {public static void main(String[] args) {try {Scanner sc=new Scanner(System.in);String abc= sc.nextLine();String sd[]=abc.split(" ");int a=Integer.parseInt(sd[0]);int b=Integer.parseInt(sd[1]);int c=Integer.parseInt(sd[2]);if (a<0||b<0||c<0){System.out.println("输入错误");System.exit(1);}else if (a+b<=c||a+c<=b||b+c<=a)System.out.println("输入的三条边长度不符合要求");else if (a==b&&b==c)System.out.println("等边三角形");else if (a!=b&&b!=c&&a!=c)System.out.println("三角形三边都不相等");else System.out.println("等腰三角形");}catch (Exception e){System.out.println("输入错误");System.out.println(e);}}
}

软件测试实验过程记录相关推荐

  1. Vertica集群扩容实验过程记录

    需求: 将3个节点的Vertica集群扩容,额外增加3个节点,即扩展到6个节点的Vertica集群. 实验环境: RHEL 6.5 + Vertica 7.2.2-2 步骤: 1.三节点Vertica ...

  2. HRSC2016舰船检测训练实验过程记录

    博主目前正尝试使用HRSC2016图片1000张多左右,每张舰船约1-3只,分辨率为 1182*827 用以finetune textboxes++,实现任意方向的目标的检测 训练过程参考: 利用ca ...

  3. 黑龙江大学软件测试实验报告

    软件测试 实  验 指 导 书 黑龙江大学软件学院 实验要求 在<软件测试>的课程实验过程中,要求学生做到: (1)预习相关理论. (2)仔细阅读实验内容提纲,记录测试中所遇到的主要问题, ...

  4. 软件测试质量过程检测文档_如何编写实际上有效的质量检查文档

    软件测试质量过程检测文档 A software product is like an airplane: it must undergo a technical check before launch ...

  5. 脑电实验注意事项及实验过程中伪迹识别

    点击上面"脑机接口社区"关注我们 更多技术干货第一时间送达 Rose分享一篇群友 Tina关于脑电实验的学习笔记,感谢脑机社区群友Tina的分享. 实验前准备 1.填写被试信息及知 ...

  6. tensorflow 实验过程可重复

    在做科研时使用tensorflow作为算法开发工具.后来有了更好用的pytorch之后,由于很多基础代码都是用tensorflow编写的,所以,就没有转到pytorch上来. 最近在写论文,比较重视算 ...

  7. 一卡通(M1卡)破解过程记录——理论篇

    前些日子在研究学校的一卡通安全,在此记录一下一卡通破解的全过程,仅用作学习交流,切勿用于违法用途 其他几篇: 一卡通(M1卡)破解过程记录--准备篇              获取扇区密钥      ...

  8. kali实验过程与结果讲解

    kali实验过程与结果讲解(学习) 前期准备:打开虚拟机,开启完毕后会显示服务器的ip 1. 收集此服务器的信息. 1) 开放的端口及服务 nmap 192.168.100.100 通过命令查看目标I ...

  9. Lab1实验过程及心得体会

    实验过程 1 Magic Squares 检验矩阵是否是幻方矩阵.首先要检验文本中输入数据是否满足规范(包括是否构成方阵.是否按要求将数据以制表符隔开.是否包含小数和负数.是否有非法字符等),在满足规 ...

最新文章

  1. 听说微软出了个 Windows XP reStart Edition? 重启版?
  2. 30. 多线程编程之threading模块
  3. Docker-compose 安装配置 Nginx PHP MySQL Laravel
  4. 牛客网SQL篇刷题篇(16-23)
  5. vscode中如何创新建php文件,php – 如何在Visual Studio Code,UNIX中的所有文件中创建所有行结尾(EOL)?...
  6. 今日宜发布融资消息:明略、智行者、Video++分获BAT投资
  7. docker安装vim
  8. 周志华机器学习西瓜书速记第一章绪论
  9. vim配置IDE,下载压缩包即拥有轻巧且强大的文本编辑器
  10. springboot项目控制层的接口注入报错
  11. 硕士学位论文多级标题编号与图表编号
  12. Java的基本语法^_^
  13. 远程桌面连接命令“Mstsc”,Windows系统连接远程方法
  14. 经典BBS语录100条
  15. 2016年全国高中数学联合竞赛试题及详细解答
  16. centos8更换软件源
  17. 【day08~10】Java面向对象基础认识
  18. 交易系统订单存在的意义
  19. Spring MVC : HandlerMappingIntrospector
  20. 【四级英语单词·LIST1】 B站网课笔记 新东方四级词汇词根+联想记忆法 乱序版

热门文章

  1. 校本课程——宝宝爱上学
  2. [艾兰岛]菜鸟用编辑器做传送门——kura酱长期更新
  3. cubase外放有声音耳机没声音_为何CUBASE耳机内没有声音
  4. Quartz配置上次任务没有执行完,下次任务推迟执行
  5. hdfs API命令操作京东云主机,采坑记录
  6. 苏州计算机岗前培训,我院召开2018年新职工岗前培训动员大会
  7. Rviz 实现 pannel 插件
  8. JavaGui 02 Pannel-面板
  9. 法外狂徒——格雷福斯
  10. contiki仿真模拟器cooja的使用