太原理工大学软件测试方法和技术实验报告

合集下载

软件技术基础实验指导及报告

软件技术基础实验指导及报告

太原理工大学现代科技学院软件技术基础课程实验报告专业班级通信14-1学号2014101596姓名王晓振指导教师范俊杰软件技术基础实验指导及报告实验说明:1、共5次实验,每次实验完成1个内容。

2、实验报告命名统一为:软件_专业班级_学号_姓名3、自备U盘,在实验前认真阅读实验要求,在实验中及时记录保存实验结果和调试过程,并填写到实验报告对应位置,实验结束后将该实验报告电子版在指定时间内提交给各班学习委员。

实验一顺序线性表的插入与删除1、实验目的:理解和掌握线性表的顺序存储结构,使用C语言根据相应算法编写程序,实现线性表的创建、插入和删除。

2、实验内容:编写C程序实现先建立一个长度不小于n = 8的线性表,输出原始线性表;然后进行插入运算,在第3个元素前面插入一个新元素b(值为学号后3位),得到一个长度为(n+1)的线性表,输出插入后的线性表;最后进行删除运算,删除第5个元素,得到长度为n的线性表,输出删除后的线性表。

3、参考程序:#include <stdio.h>#define MAXSIZE 20typedef struct{int data[MAXSIZE];int last;}List;void Init(List *pt){int i = 0;for(i=1;i<11;i++){pt->data[i] = i;pt->last = i;}}void Output(List *pt){int i,max=pt->last;printf("List have %d: \n",pt->last);for(i=1;i<=max;i++)printf("List %d Value is:%d \n",i,pt->data[i]);printf("\n");}void InsertL(List *pt, int i, int x){int k;if(i<1 || i>MAXSIZE-1){printf("插入位置不合适!\n");}else if(pt->last>=MAXSIZE-1){printf("线性表已满!\n");}else{for (k=pt->last;k>=i;k--)pt->data[k+1]=pt->data[k];pt->data[i]=x;pt->last++;}}void Insert(List *pt){int position,x;printf("please input insert position and value:");scanf("%d,%d",&position,&x);InsertL(pt, position, x);}void DeleteL(List *pt, int i){int k;if(i<1 || i>pt->last){printf("删除位置不合适!\n");}else{for(k=i+1;k<=pt->last;k++)pt->data[k-1]=pt->data[k];pt->last--;}}void Delete(List *pt){int position;printf("please input delete position:");scanf("%d",&position);DeleteL(pt, position);}int main(){int int_Insert,int_Delete;List L,*pt;pt = &L;Init(pt);Output(pt);Insert(pt);Output(pt);Delete(pt);Output(pt);return 0;}4、实验结果:将程序运行结果截屏粘贴至此处。

最新软件测试实验报告(例)..

最新软件测试实验报告(例)..

本科实验报告课程名称:软件测试技术实验项目:软件测试技术试验实验地点:实验楼专业班级:学生姓名:指导教师:谢红薇2015年10月14 日太原理工大学学生实验报告实验名称实验一白盒测试方法实验地点实验楼211 实验时间2015.10.9一、实验目的和要求(1)熟悉掌握白盒测试方法中的逻辑覆盖和路径覆盖的测试方法。

(2)通过实验掌握逻辑覆盖测试用例设计,掌握流程图的绘制。

(3)运用所学理论,完成实验研究的基本训练过程。

二、实验内容和原理测试以下程序段Void DoWork(int x,int y,int z){(1)int k=0,j=0;(2)if((x>0)&&(z<10))(3){(4)k=x*y-1;(5)j=sqrt(k);(6)}(7)if((x==4)||(y>5))(8)j=x*y+10;(9)j=j%3;(10)}说明:程序中每行开头的数字(1-10)是对每句语句的编号。

a 画出程序的控制流图(用题中给出的语句编号表示)。

b分别用语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖方法设计测试用例,并写出每个测试用例的执行路径(用题中给出的语句编号表示)。

三、实验仪器设备笔记本电脑四、操作方法与实验步骤1、绘制控制流图控制流图:2、编写完整C 程序附:程序代码 #include<stdio.h> #include<math.h> 152a be4 789Ecdfhgij63 lkSint dowork(int x,int y,int z){int k=0,j=0;if((x>0)&&(z<10)){k=x*y-1;j=sqrt(k);}if((x==4)||(y>5))j=x*y+10;j=j%3;return j;}void main(){int x, y ,z,j;printf("输入x,y,z的值");scanf("%d%d%d",&x,&y,&z);j=dowork(x,y,z);printf("j的值%d",j);}3、设计用例并运行记录分析设判定条件M=(x>0)&&(z<10)N=(x==4)||(y>5)设路径P1( abcdefhijl)=M and NP2(abcdefhkl)=M and /NP3(abgijl)=/M and NP4(abgkl)=/M and/N1.语句覆盖输入{x=4,y=8,z=9} 输出{j=0} 覆盖路径P1(abcdefhijl)2.判定覆盖输入{x=4,y=8,z=9} 输出{j=0} 覆盖路径P1(abcdefhijl)输入{x=4,y=4,z=15} 输出{j=0} 覆盖路径P3(abgijl)3.条件覆盖对于第一个判定条件M,分割如下条件x>0取真时为T1,取假时为F1。

太原理工大学软件工程《软件代码开发技术》实验报告

太原理工大学软件工程《软件代码开发技术》实验报告

实验报告 实践报告□课程名称:软件代码开发技术实验、实践名称:实验一软件代码基础实验实验、实践地点:致远楼B303专业班级:软件XXXX 学号:XXXXXXXX 学生姓名:XXX指导教师:孙静宇2017年4 月17 日一、实验目的和要求(必填)熟悉JSP、Servlet、JDBC、MySQL、MVC等相关技术,培养良好的代码风格,为其他实验做好准备。

参照课本及参考程序,快速熟悉相关内容,编写带有自己标识信息的留言板程序(如sjyNote),熟悉Java等编程语言或技术的基本编程技巧,注重良好的代码风格(如变量命名、代码注释、Servlet与类中代码的结构等),初步掌握编写Web应用程序的能力。

二、实验内容和原理(必填)在熟悉MySQL、MyEclipse开发环境基础上,基于MVC模式,使用Jsp+Servlet 编写一个留言版程序,前台用Jsp,后台用Servlet,并培养良好的代码风格。

三、主要仪器设备(必填)软件环境:Windows 7/2008-x86,MySQL5.5,MyEclipse3.6;硬件环境:P4 2.4G/80G/1G/64M及较高配置的PC机。

四、操作方法与实验步骤1.安装和配置MySQL、MyEclipse集成开发环境;2.通过查阅课本、网络资料,了解相关知识;3.按照代码风格要求,编写自己的留言板程序;4. 调试程序,输出结果,并进行记录。

五、实验数据记录和处理(可选)AddMessage.javaprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {byte b1[]=request.getParameter("name").getBytes("ISO-8859-1");String na=new String(b1,"gb2312");byte b2[]=request.getParameter("email").getBytes("ISO-8859-1");String em=new String(b2,"gb2312");byte b3[]=request.getParameter("title").getBytes("ISO-8859-1");String ti=new String(b3,"gb2312");byte b4[]=request.getParameter("content").getBytes("ISO-8859-1");String co=new String(b4,"gb2312");if(na==null)na="";if(em==null)em="";if(ti==null)ti="";if(co==null)co="";try{PreparedStatement stm=con.prepareStatement("insert into messagevalues(?,?,?,?)");stm.setString(1, ti);stm.setString(2, na);if(em.length()==0)stm.setString(3, null);else stm.setString(3, em);stm.setString(4, co);try{stm.execute();}catch (Exception e) { }RequestDispatcherrequestDispatcher=request.getRequestDispatcher("ViewMessageServlet");requestDispatcher.forward(request, response);}catch (Exception e) {e.printStackTrace();}}ShowMessage.javaprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {Collection<MessageDataBean> ret=new ArrayList<MessageDataBean>();try{Statement stm=null;stm=con.createStatement();ResultSet result=stm.executeQuery("select count(*) from message");int message_count=0;if (result.next()) {message_count=result.getInt(1);result.close();}if (message_count>0) {result=stm.executeQuery("select * from message");while(result.next()){String name=result.getString("name");String title=result.getString("title");String email=result.getString("email");String content=result.getString("content");MessageDataBean msdBean=new MessageDataBean();msdBean.setTitle(title);msdBean.setName(name);msdBean.setEmail(email);msdBean.setContent(content);ret.add(msdBean);}result.close();stm.close();}request.setAttribute("messages", ret);RequestDispatcherrequestDispatcher=request.getRequestDispatcher("ViewMessages.jsp");requestDispatcher.forward(request, response);}catch (Exception e) {e.printStackTrace();}}Messages.jsp<form action="AddMessage"><table align="center"border="0"><tr><td>姓名</td><td><input type="text"name="name"size="25"/></td></tr><tr><td>email</td><td><input type="text"name="email"size="25"/></td></tr><tr><td>主题</td><td><input type="text"name="title"size="25"/></td></tr><tr><td>内容</td><td><textarea name="content"rows="7"clos="25"></textarea></td></tr><tr><td colspan="3"><table width="100%"cellspacing="0"cellpadding="0"><tr><td><input type="submit"value="提交留言"></td><td><a href="ViewMessageServlet">查看留言</a></td><td><input type="reset"value="重新填写"></td></table></td></tr></table></form>ViewMessage.jsp<body><h2align="center">全部留言</h2><table width="80%"border="1"align="center"><%int message_count=0;Collection<MessageDataBean>messages1=(Collection<MessageDataBean>)request.getAttribute("messages"); Iterator<MessageDataBean> it=messages1.iterator();while(it.hasNext()){ MessageDataBean mg=(MessageDataBean)it.next();%><tr><td>留言人</td><td><%=mg.getName() %></td><td>email</td><td colspan="2"><% out.println("<ahref=mailto:"+mg.getEmail()+">"+mg.getEmail()+"</a>");%></td> <tr><td>主题</td><td colspan="4"><%=mg.getTitle() %></td></tr><tr><td>内容</td><td colspan="4"><textarea rows="4"cols="70"><%=mg.getContent() %></textarea></td></tr><tr><td colspan="5"bgcolor="pink">&nbsp</td></tr><%message_count++; %><% }%><p align="center"><a href="Messages.jsp">我要留言</a></p></table></body>六、实验结果与分析(必填)填写留言信息:点击提交留言:数据库中数据:点击我要留言:六、实验结果与分析(必填)七、讨论、心得(可选)六、思考题:1.为什么要保持良好的代码风格?保持好的代码风格可以避免一些不必要的错误,可以提高程序的可读性,提高开发效率。

太原理工大学软件工程实验报告

太原理工大学软件工程实验报告
教务计划的录入,任课教师信息上传与查看,根据输入的数据与限制条件给出教学任 务书。
2 数据描述
2.1 输入输出:
输入项至少包括:教务处布置的教学计划和工作量计算子系统、学院教师自报的授课计 划和学院制定的有关授课限制条件,输出项至少包括:教务处最终下达全院教师的教学任务 书和学院各个班级下各学期的课程表(可以不含上课地点)。
依次去掉各项输入,第一轮去掉一个,第二轮去掉两个,以此类推。 第三个大模块: 3.1 是否满足条件 测试用例:Z≤2 300≤A≤600 C=0
Z>2 300≤A≤600 C=0 Z≤2 A<300 或 A>600 C=0 Z≤2 300≤A≤600 C≠0 Z>2 A<300 或 A>600 C=0 Z≤2 A<300 或 A>600 C≠0 Z>2 300≤A≤600 C≠0 Z>2 A<300 或 A>600 C≠0 3.2 更新信息 测试用例:教工号+课程名称+课程代码+课时+班级类别+班号 依次去掉各项输入,第一轮去掉一个,第二轮去掉两个,以此类推。 第四个大模块: 4.1 检查 测试用例:教工号+密码 教工号(是否存在) 密码(是否正确) 4.2 查询 测试用例:教工号+课程名称+课程代码+课时+班级类别+班号+限制条件+计划学时+
加工名:审核 编号:5.1 输入:教务号 输出:有效值 加工逻辑:检查输入的教务号是否有密码对应
加工名:审计 编号:5.2 输入:有效值,课程信息 输出:通过名单 加工逻辑:判断课程是否可以通过,给出通过名单
加工名:更新信息 编号:5.3 输入:通过名单 输出:课程信息、教学任务书 加工逻辑:修改课程信息是否通过并给出教学任务书

太原理工大学软件java实验报告

太原理工大学软件java实验报告

本科实验报告课程名称:Java语言程序设计实验项目:Java实验实验地点:致远楼401专业班级:软件1 学号:20110 学生姓名:指导教师:2013年11月实验1 Java语言基础1.实验目的(1)通过实验,掌握Java语言程序设计的基本方法。

(2)学会Java语言中标示符的命名、运算符和表达式的应用。

(3)熟练地掌握Java程序流程控制语句的应用。

2.实验内容(1)编写应用程序,计算100(含100)以内所有偶数的和。

package com.zhangqian.exercise1;public class SumEvenNumber {public static void main(String[] args) {int sum = 0;int n = 100;for (int i = 0; i <= n; i++) {if (i % 2 == 0) {sum += i;}}System.out.println("1--100内偶数和为:" + sum);}}(2)“水仙花数”是指一个3位数,其个位、十位、百位上的数字的立方和等于该数本身,例如371=33+73+13,因此371是一个水仙花数。

编写程序,求所有的水仙花数。

package com.zhangqian.exercise1;public class Flower {public static void main(String[] args) {// TODO Auto-generated method stubint n = 1000;int m;for (int i = 100; i < n; i++) {m = (i / 100) * (i / 100) * (i / 100) + ((i / 10) % 10)* ((i / 10) % 10) * ((i / 10) % 10) + (i % 100 % 10)* (i % 100 % 10) * (i % 100 % 10);if (m == i) {System.out.println("水仙花数为:" + i);}}}}(3)编写一个程序,求1-100间的素数。

太原理工软件工程实验报告全套

太原理工软件工程实验报告全套

本科实验报告课程名称:软件工程实验项目:传统软件工程的需求分析建模实验地点:专业班级:软件工程学号:2学生姓名:指导教师:2015年4月日太原理工大学学生实验报告用户接受预定用户出示去票通知和帐单打印机核对安排打印去票通知和帐单客户端客户端航班数据库订票数据库服务器终端系统逻辑图:本科实验报告课程名称: 软件工程实验项目:传统软件工程的结构设计实验地点:专业班级:软件工程学号:2学生姓名:指导教师:2015年4月11日2.1.2 服务器程序流程打印帐单输出确定预定信息输出错误原因 打印机票输出确定预定信息服务器经网络送来911=18161512131417192010142 15 3 4678旅客资料定票/取票帐单号经网络送服务器程序五思考题1.系统设计和需求分析的关系是什么?两者必须先后关联吗?答:需求分析是一个项目的开端,也是项目建设的基石。

是对用户需求的定义,对软件系统的描述。

在以往建设失败的项目中,80%是由于需求分析的不明确而造成的。

因此一个项目成功的关键因素之一,就是对需求分析的把握程度。

而项目的整体风险往往表现在需求分析不明确、业务流程不合理,用户不习惯或不愿意去用承建方的软件。

作为第三方的监理公司,必须提醒承建方、客户方重视需求分析的重要性。

系统分析的任务:将用户的业务逻辑转化为程序逻辑,计算时间和成本。

根据开发人员的理论知识和实际的经验,人们会采用各种满足实际情况的系统分析、开发方法、步骤以及文档等等.2.怎样描绘系统的体系结构?答:系统体系结构是由许多结构要素及各种视图(或观点) 共11页第6页(View)所组成的,而各种视图主要是基于各组成要素之间的联系与互操作而形成的。

所以,系统体系结构是一个综合各种观点的模型,用来完整描述整个系统。

体系结构框架(Architecture Framework)用于规定具体体系结构的定义及其文档所表达的意义。

体系结构框架不需要包罗万象,通常只是针对特定的领域,可能更注重战略方面的问题,并为体系结构的发展演变提供指导。

软件测试实验报告

软件测试实验报告

本科实验报告课程名称:软件测试技术实验项目:软件测试技术试验实验地点:实验楼211专业班级:软件工程学号:学生姓名:戴超指导教师:兰方鹏2015年10月7日太原理工大学学生实验报告学院名称计算机与软件学院专业班级软件工程实验成绩学生姓名戴超学号实验日期2015.10. 课程名称软件测试实验题目实验一白盒测试方法15 2a be4 7 89Ecdf h gi j 63 lkS一、实验目的和要求(1)熟练掌握白盒测试方法中的逻辑覆盖和路径覆盖方法。

(2)通过实验掌握逻辑覆盖测试的测试用例设计,掌握程序流图的绘制。

(3)运用所学理论,完成实验研究的基本训练过程。

二、实验内容和原理测试以下程序段voiddowork(intx,inty,intz) {(1)intk=0,j=0;(2)if((x>0)&&(z<10)) (3){(4)k=x*y-1; (5) j=sqrt(k); (6)}(7)if((x==4)||(y>5)) (8)j=x*y+10; (9)j=j%3;(10)}三、主要仪器设备 四、操作方法与实验步骤说明:程序段中每行开头的数字(1-10)是对每条语句的编号。

A 画出程序的控制流图(用题中给出的语句编号表示)。

B 分别用语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖方法设计测试用例,并写出每个测试用例的执行路径(用题中给出的语句编号表示)。

C 编写完整的C 程序(含输入和输出),使用你所设计的测试用例运行上述程序段。

完整填写相应的测试用例表(语句覆盖测试用例表、判定覆盖测试用例表、条件覆盖测试用例表、判定/条件覆盖测试用例表、条件组合覆盖测试用例表、路径覆盖测试用例表、基本路径测试用例表)流程图为:控制流图:设判定条件M=(x>0)&&(z<10)N=(x==4)||(y>5) 设路径 P1(abcdefhijl)=MandNP2(abcdefhkl)=Mand/N P3(abgijl)=/MandNP4(abgkl)=/Mand/N 1.语句覆盖输入{x=4,y=7,z=9}输出{j=2,k=27}覆盖路径P1(abcdefhijl)开始 开始k=0,j=0 (x>0)&&(z<1)k=x*y-11 22.判定覆盖输入{x=4,y=7,z=9}输出{j=2,k=27}覆盖路径P1(abcdefhijl)输入{x=4,y=3,z=12}输出{j=1,k=0}覆盖路径P3(abgijl)3.条件覆盖对于第一个判定条件M,分割如下条件x>0取真时为T1,取假时为F1。

太原理工软件工程实习报告

太原理工软件工程实习报告

太原理工软件工程实习报告一、实习背景与目的随着信息技术的快速发展,软件工程成为现代科技领域中的重要研究方向。

为了提高自身的实践能力和专业素养,我选择了太原理工大学的软件工程实习项目。

本次实习旨在通过实际操作,深入了解软件开发流程,掌握软件工程的核心技术,并培养团队合作和解决问题的能力。

二、实习内容与过程在实习期间,我参与了太原理工大学软件实验室的一个实际项目开发。

以下是实习的主要内容与过程:1. 项目启动:在实习的开始阶段,导师为我们介绍了项目的背景和需求。

我们通过讨论和分析,明确了项目的目标、功能要求和性能要求。

2. 需求分析:我们小组成员共同参与需求分析工作,通过与导师和客户的沟通,明确了用户需求和系统功能。

我们使用UML图和用例图工具,对系统的功能进行详细的描述和文档化。

3. 设计阶段:在需求分析的基础上,我们开始进行系统设计。

我负责设计和实现系统的数据库部分,包括数据库表的创建、关系的建立和SQL语句的编写。

4. 编码阶段:根据设计文档,我开始编写代码。

我使用了Java语言和MySQL数据库,实现了系统的核心功能。

在编码过程中,我注重代码的可读性和可维护性,遵循了软件工程的最佳实践。

5. 测试阶段:在编码完成后,我们进行了系统的测试。

我负责编写测试用例,并与其他成员一起进行测试。

我们发现了一些问题,并通过调试和优化,解决了这些问题。

6. 项目总结与汇报:在项目完成后,我们进行了项目总结和汇报。

我向导师和同学们展示了自己的工作成果,并分享了在实习过程中的收获和体会。

三、实习收获与反思通过本次实习,我对软件工程的核心技术和开发流程有了更深入的了解。

我掌握了UML图和用例图的使用,熟悉了Java语言和MySQL数据库的操作。

同时,我也学会了团队合作和解决问题的能力。

在实习过程中,我也意识到了自己在一些方面的不足之处。

例如,我在需求分析阶段的沟通能力和表达能力有待提高。

此外,我在代码编写和调试过程中,还需要更加注重细节和规范,以提高代码的质量和稳定性。

太原理工大学12级软件学院Android实验报告

太原理工大学12级软件学院Android实验报告

本科实验报告课程名称:移动应用软件开发技术实验项目:Android系统环境搭建、Activity运用实验、Android应用UI设计(一)、(二)实验地点:逸夫楼404专业班级:软件班学号:学生姓名:指导教师:2015年6月19 日实验一Android系统环境搭建一、实验目的和要求1.掌握Android环境的搭建。

2.学会Java、eclipse、Android SDK以及ADT的安装与环境变量设置。

3.学会在线更新SDK。

4.掌握离线安装SDK的方法。

二、实验内容和原理1.安装JDK ,SE6.0以上版本。

⑴访问以下网址:/technetwork/java/javase/downloads/index.html下载JDK。

⑵配置环境变量:安装J2SDK以后,若需要在cmd下使用Java命令和编译、运行程序,可以配置环境变量:新建环境变量JAVA_HOME,右击“我的电脑”—>“属性”—>“高级”—>“环境变量”,如图1-1所示:图1-1⑶测试JDK安装成功与否:编写test.java文件,运行。

要求:请将安装的目录与环境变量的配置图粘到后面的空白页上。

并将test.java在运行结果粘上。

2.安装eclipse。

访问以下网址:/downloads/下载。

选择Windows平台“EclipseIDE for Java EE Developers”下载,下载完成后,找到下载的压缩包“eclipse-java-indigo-SR2-win32.zip”,Eclipse无须安装程序,解压此压缩文件到目标文件即可。

要求:请将安装的目录与eclipse环境的界面图粘到后面的空白页上。

3.安装Android SDK[1]访问以下网址下载:/sdk/index.html[2]在线安装SDK:打开SDKManager,如图1-2、1-3所示。

图1-2 图1-3[3]离线安装:首先下载SDK的安装包,“android-sdk_r16-windows.zip”(安装工具)解压到目录,如我的目录D:\TDDOWNLOAD\android-sdk_r16-windows\android-sdk-windows,然后新建以下几个文件夹:platforms,docs,samples,usb_driver,market_licensing。

太原理工大学软件工程程序设计实验报告

太原理工大学软件工程程序设计实验报告

《程序设计》课程设计姓名:学号:班级:软件工程1334班指导教师:杨永强成绩:2015年6月实验一:谁拿了最多奖学金1.【问题描述】(1)问题描述某校的惯例是在每学期的期末考试之后发放奖学金。

发放的奖学金共有五种,获取的条件各自不同:1) 院士奖学金,每人8000元,期末平均成绩高于80分(>80),并且在本学期内发表1篇或1篇以上论文的学生均可获得;2) 五四奖学金,每人4000元,期末平均成绩高于85分(>85),并且班级评议成绩高于80分(>80)的学生均可获得;3) 成绩优秀奖,每人2000元,期末平均成绩高于90分(>90)的学生均可获得;4) 西部奖学金,每人1000元,期末平均成绩高于85分(>85)的西部省份学生均可获得;5) 班级贡献奖,每人850元,班级评议成绩高于80分(>80)的学生干部均可获得;只要符合条件就可以得奖,每项奖学金的获奖人数没有限制,每名学生也可以同时获得多项奖学金。

例如姚林的期末平均成绩是87分,班级评议成绩82分,同时他还是一位学生干部,那么他可以同时获得五四奖学金和班级贡献奖,奖金总数是4850元。

2.【设计需求及分析】(1)设计思路先定义了一个Student的结构体,它里面定义了关于学生的各个属性。

比如期末平均成绩,班级评议成绩,班干部等等。

然后设计了一个判断函数,判断他得到奖学金的多少。

接下来就是主函数了,在主函数里,有着输出输入变量,和赋值函数,最重要的是比较函数,比较出哪一位学生的奖学金多及所有金额的总计。

最后输出。

下面是关键步骤:(2)输出输入格式输入数据格式格式:输入的第一行是一个整数N(1 <= N <= 100),表示学生的总数。

接下来的N行每行是一位学生的数据,从左向右依次是姓名,期末平均成绩,班级评议成绩,是否是学生干部,是否是西部省份学生,以及发表的论文数。

姓名是由大小写英文字母组成的长度不超过20的字符串(不含空格);期末平均成绩和班级评议成绩都是0到100之间的整数(包括0和100);是否是学生干部和是否是西部省份学生分别用一个字符表示,Y表示是,N表示不是;发表的论文数是0到10的整数(包括0和10)。

软件测试实验报告最新版

软件测试实验报告最新版

本科实验报告课程名称:软件测试技术实验项目:软件测试技术试验实验地点:实验楼211专业班级:软件工程学号:学生姓名:戴超指导教师:兰方鹏2015年10月7 日.太原理工大学学生实验报告学院名称计算机与软件学院专业班级软件工程实验成绩学生姓名戴超学号实验日期2015.10. 课程名称软件测试实验题目实验一白盒测试方法一、实验目的和要求(1)熟练掌握白盒测试方法中的逻辑覆盖和路径覆盖方法。

(2)通过实验掌握逻辑覆盖测试的测试用例设计,掌握程序流图的绘制。

(3)运用所学理论,完成实验研究的基本训练过程。

二、实验内容和原理测试以下程序段void dowork(int x,int y,int z){(1)int k=0,j=0;(2)if((x>0)&&(z<10))(3){(4)k=x*y-1;(5)j=sqrt(k);(6)}(7)if((x==4)||(y>5))(8)j=x*y+10;(9)j=j%3;(10)}三、主要仪器设备四、操作方法与实验步骤说明:程序段中每行开头的数字(1-10)是对每条语句的编号。

.A 画出程序的控制流图(用题中给出的语句编号表示)。

B 分别用语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖方法设计测试用例,并写出每个测试用例的执行路径(用题中给出的语句编号表示)。

C 编写完整的C 程序(含输入和输出),使用你所设计的测试用例运行上述程序段。

完整填写相应的测试用例表(语句覆盖测试用例表、判定覆盖测试用例表、条件覆盖测试用例表、判定/条件覆盖测试用例表、条件组合覆盖测试用例表、路径覆盖测试用例表、基本路径测试用例表)流程图为:开始开始k=0,j=0 (x>0)&&(z<1) k=x*y-1 j=sqrt(k) (x==4)||(y>5) j=x*y+10 j=j%3 结束 1 2 5 7 8 9152a be4 789Ecdfhgi j63 lk S控制流图:设判定条件 M=(x>0)&&(z<10) N=(x==4)||(y>5) 设 路 径P1( abcdefhijl) = M and N P2(abcdefhkl) = M and /N P3(abgijl) =/ M and N P4(abgkl) =/ M and/N1.语句覆盖输入{x=4,y=7,z=9} 输出{j=2,k=27} 覆盖路径P1(abcdefhijl)2.判定覆盖输入{x=4,y=7,z=9} 输出{j=2,k=27} 覆盖路径P1(abcdefhijl)输入{x=4,y=3,z=12} 输出{j=1,k=0} 覆盖路径P3(abgijl)3.条件覆盖对于第一个判定条件M,分割如下条件x>0取真时为T1,取假时为F1。

软件测试实验报告

软件测试实验报告

软件测试实验报告《软件测试》实验报告书安徽⼯业⼤学计算机学院姓名马超专业软件⼯程班级132学号139074191指导教师刘卫红2016年 5⽉实验⼀⽤例设计与⿊盒测试⼀、实验⽬的(1)能够熟练应⽤⿊盒测试技术进⾏测试⽤例设计。

(2)对测试⽤例进⾏优化测试。

⼆、实验设备主流PC机⼀套,安装有主流的编程⼯具如MyEclipse、C、Visual C++三、实验内容为QQ的注册账号功能设计测试⽤例。

注册账号功能部分截图如下:等价类划分有效等价类编号⽆效等价类编号昵称不为空空密码长度为6-16个字符⾮长度为6-16个字符或9位以下纯数字不是9位以下纯数字不包含空格包含空格确认密码与密码栏输⼊⼀致与密码栏输⼊不⼀致性别男/⼥不选择(⽆法做到)⽣⽇选择合法有效⽇期不选择所在地选择合法有效地址不选择(⽆法做到)验证码验证正确验证不正确不验证⼿机号码输⼊合法有效⼿机号码输⼊⼿机号码不合法或⽆效不输⼊短信验证码输⼊正确验证码输⼊错误验证码不输⼊(有效与否由⼿机号码栏是否输⼊决定)不输⼊(有效与否由⼿机号码栏是否输⼊决定) 同意开通QQ空间勾选/不勾选我已阅读并同意相关服务条款和隐私政策勾选不勾选其中,密码栏和确认密码栏,⼿机号码栏和短信验证码栏之间有约束关系,采⽤因果图法原因:密码: 1 输⼊合法密码确认密码: 3 与密码栏⼀致2 输⼊合法密码 4 与密码栏不致结果: 5后续操作 6 报错O约束(唯⼀);1或2和3或4必须有且仅有1个为1。

原因:⼿机号码: 1 输⼊短信验证码: 3输⼊2 不输⼊ 4 不输⼊结果: 7后续判断8 报错R约束(要求):a是1时,b必须是1,即不可能a是1时b是0。

测试⽤例序号输⼊条件测试⽤例期望结果1 昵称412544热可以注册密码2323rewew3确认密码2323rewew3性别男⽣⽇农历1994年1⽉2⽇所在地中国安徽马鞍⼭验证码gbe(随机验证通过)⼿机号码157********短信验证码345234(随机验证通过)同意开通QQ空间勾选我已阅读并同意相关服务条款和隐私政策勾选2(已存在) 昵称412544热不可以注册密码2323rewew3确认密码2323rewew3性别男⽣⽇农历1994年1⽉2⽇所在地中国安徽马鞍⼭验证码gbe(随机验证通过)⼿机号码157********短信验证码345234(随机验证通过)同意开通QQ空间勾选我已阅读并同意相关服务条款和隐私政策勾选3 昵称昵称不可以为空密码2323rewew3确认密码2323rewew3性别男⽣⽇农历1994年1⽉2⽇所在地中国安徽马鞍⼭验证码 gbe(随机验证通过) ⼿机号码 157********短信验证码 345234(随机验证通过) 同意开通QQ 空间勾选我已阅读并同意相关服务条款和隐私政策勾选 4昵称 412544热 6-12字符 9位⼀下纯数字密码 12345 确认密码 12345 性别男⽣⽇农历1994年1⽉2⽇所在地中国安徽马鞍⼭验证码 gbe(随机验证通过) ⼿机号码 157********短信验证码 345234(随机验证通过) 同意开通QQ 空间勾选我已阅读并同意相关服务条款和隐私政策勾选 5昵称 412544热9位⼀下纯数字密码 123456/1234567/12345678 确认密码 123456/1234567/12345678 性别男⽣⽇农历1994年1⽉2⽇所在地中国安徽马鞍⼭验证码 gbe(随机验证通过) ⼿机号码 157********短信验证码 345234(随机验证通过) 同意开通QQ 空间勾选我已阅读并同意相关服务条款和隐私政策勾选 6昵称 412544热可以注册密码 123456789/1234567890/12345678901/123456789012 确认密码123456789/1234567890/12345678901/123456789012 性别男⽣⽇农历1994年1⽉2⽇所在地中国安徽马鞍⼭验证码 gbe(随机验证通过) ⼿机号码 157********短信验证码 345234(随机验证通过) 同意开通QQ 空间勾选我已阅读并同意相关服务条款和隐私政策勾选 7昵称 412544热 6-12字符密码 1234567890123 确认密码1234567890123性别男⽣⽇农历1994年1⽉2⽇所在地中国安徽马鞍⼭验证码gbe(随机验证通过)⼿机号码157********短信验证码345234(随机验证通过)同意开通QQ空间勾选我已阅读并同意相关服勾选务条款和隐私政策8 昵称412544热密码不⼀致密码123456789确认密码123456780性别男⽣⽇农历1994年1⽉2⽇所在地中国安徽马鞍⼭验证码gbe(随机验证通过)⼿机号码157********短信验证码345234(随机验证通过)同意开通QQ空间勾选我已阅读并同意相关服务条款和隐私政策勾选9 昵称412544热⽣⽇不可为确认密码2323rewew3性别男⽣⽇所在地中国安徽马鞍⼭验证码gbe(随机验证通过)⼿机号码157********短信验证码345234(随机验证通过)同意开通QQ空间勾选我已阅读并同意相关服务条款和隐私政策勾选10 昵称4544热验证错误密码2323rewew3确认密码2323rewew3性别男⽣⽇农历1994年1⽉2⽇所在地中国安徽马鞍⼭验证码gbMe(随机验证不通过)⼿机号码157********短信验证码345234(随机验证通过)同意开通QQ空间勾选我已阅读并同意相关服务条款和隐私政策勾选11 昵称412544热⼿机号不合法或⽆效密码2323rewew3确认密码2323rewew3性别男⽣⽇农历1994年1⽉2⽇所在地中国安徽马鞍⼭验证码gbe(随机验证通过)⼿机号码1575550370/⽆效⼿机号码短信验证码同意开通QQ空间勾选我已阅读并同意相关服务条款和隐私政策勾选12 昵称412544热短信验证码错误密码2323rewew3性别男⽣⽇农历1994年1⽉2⽇所在地中国安徽马鞍⼭验证码gbe(随机验证通过)⼿机号码157********短信验证码34523(随机验证错误)同意开通QQ空间勾选我已阅读并同意相关服务条款和隐私政策勾选13 昵称4544热注册按钮不可⽤密码2323rewew3确认密码2323rewew3性别男⽣⽇农历1994年1⽉2⽇所在地中国安徽马鞍⼭验证码gbe(随机验证通过)⼿机号码157********短信验证码345234(随机验证通过)同意开通QQ空间勾选我已阅读并同意相关服务条款和隐私政策不勾选以下为补充补充测试⽤例编号主要操作及⽬的期望结果1 长时间离开页⾯长时间离开,重新操作2 输⼊全部正确并单击注册按钮查看是否跳转成功跳转页⾯3 检查所有下拉框是否正确且可⽤全部有效且可⽤4 在所有下拉框中分别输⼊错误信息⾃动转为默认值5 输⼊⼤⼩写字母可以区分6 能否点击查看《QQ号码规则》或《QQ空间跳转到相应页⾯服务协议》或《隐私政策》页⾯实验⼆Web测试⼀、实验⽬的掌握⽤例执⾏及缺陷报告的书写⽅法。

太原理工大学软件测试方法和技术实验报告

太原理工大学软件测试方法和技术实验报告

太原理工大学学生实验报告
学院名称计算机科学与技术专业班级软件工程实验成绩
学生姓名学号实验日期
课程名称软件测试方法和技术实验题目使用白盒测试方法测试程序段
一、实验目的
通过实验主要掌握用白盒法中的逻辑覆盖测试技术设计测试用例以及测试流程图的绘制。

二、实验内容
测试以下程序段
Void DoWork(int x,int y,int z)
{
1 int k=0,j=0;
2 if((x>0)&&(z<10))
3 {
4 k=x*y-1;
5 j=sqrt(k);
6 }
7 if((x==4)||(y>5))
8 j=x*y+10;
9 j=j%3;
10 }
三、实验要求
说明:程序段中每行开头的数字(1-10)是对每条语句的编号。

a 画出程序的控制流图(用题中给出的语句编号表示)。

b分别用语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖方法设计测试用例,并写出每个测试用例的执行路径(用题中给出的语句编号表示)。

1)语句覆盖
从流程图看出,程序具有4条路径:
L1:(a-b-d)。

太原理工大学软件工程程序设计实验报告

太原理工大学软件工程程序设计实验报告

《程序设计》课程设计姓名:学号:班级:软件工程1334 班指导教师:杨永强成绩:2015年6月实验一:谁拿了最多奖学金1.【问题描述】(1)问题描述某校的惯例是在每学期的期末考试之后发放奖学金。

发放的奖学金共有五种,获取的条件各自不同:1)院士奖学金,每人8000 元,期末平均成绩高于80 分( >80 ),并且在本学期内发表1 篇或 1 篇以上论文的学生均可获得;2)五四奖学金,每人4000 元,期末平均成绩高于85 分( >85 ),并且班级评议成绩高于 80 分( >80 )的学生均可获得;3)成绩优秀奖,每人2000 元,期末平均成绩高于90 分( >90)的学生均可获得;4)西部奖学金,每人1000 元,期末平均成绩高于85 分( >85 )的西部省份学生均可获得;5)班级贡献奖,每人 850 元,班级评议成绩高于 80 分( >80 )的学生干部均可获得;只要符合条件就可以得奖,每项奖学金的获奖人数没有限制,每名学生也可以同时获得多项奖学金。

例如姚林的期末平均成绩是87 分,班级评议成绩82 分,同时他还是一位学生干部,那么他可以同时获得五四奖学金和班级贡献奖,奖金总数是4850 元。

2.【设计需求及分析】(1)设计思路先定义了一个 Student 的结构体,它里面定义了关于学生的各个属性。

比如期末平均成绩,班级评议成绩,班干部等等。

然后设计了一个判断函数,判断他得到奖学金的多少。

接下来就是主函数了,在主函数里,有着输出输入变量,和赋值函数,最重要的是比较函数,比较出哪一位学生的奖学金多及所有金额的总计。

最后输出。

下面是关键步骤:(2)输出输入格式输入数据格式格式:输入的第一行是一个整数N (1 <= N <= 100),表示学生的总数。

接下来的N 行每行是一位学生的数据,从左向右依次是姓名,期末平均成绩,班级评议成绩,是否是学生干部,是否是西部省份学生,以及发表的论文数。

太原理工大学软件工程程序设计实验报告

太原理工大学软件工程程序设计实验报告

《程序设计》课程设计姓名:学号:班级:软件工程1334班指导教师:***成绩:2015年6月实验一:谁拿了最多奖学金1.【问题描述】(1)问题描述某校的惯例是在每学期的期末考试之后发放奖学金。

发放的奖学金共有五种,获取的条件各自不同:1) 院士奖学金,每人8000元,期末平均成绩高于80分(>80),并且在本学期内发表1篇或1篇以上论文的学生均可获得;2) 五四奖学金,每人4000元,期末平均成绩高于85分(>85),并且班级评议成绩高于80分(>80)的学生均可获得;3) 成绩优秀奖,每人2000元,期末平均成绩高于90分(>90)的学生均可获得;4) 西部奖学金,每人1000元,期末平均成绩高于85分(>85)的西部省份学生均可获得;5) 班级贡献奖,每人850元,班级评议成绩高于80分(>80)的学生干部均可获得;只要符合条件就可以得奖,每项奖学金的获奖人数没有限制,每名学生也可以同时获得多项奖学金。

例如姚林的期末平均成绩是87分,班级评议成绩82分,同时他还是一位学生干部,那么他可以同时获得五四奖学金和班级贡献奖,奖金总数是4850元。

2.【设计需求及分析】(1)设计思路先定义了一个Student的结构体,它里面定义了关于学生的各个属性。

比如期末平均成绩,班级评议成绩,班干部等等。

然后设计了一个判断函数,判断他得到奖学金的多少。

接下来就是主函数了,在主函数里,有着输出输入变量,和赋值函数,最重要的是比较函数,比较出哪一位学生的奖学金多及所有金额的总计。

最后输出。

下面是关键步骤:(2)输出输入格式输入数据格式格式:输入的第一行是一个整数N(1 <= N <= 100),表示学生的总数。

接下来的N行每行是一位学生的数据,从左向右依次是姓名,期末平均成绩,班级评议成绩,是否是学生干部,是否是西部省份学生,以及发表的论文数。

姓名是由大小写英文字母组成的长度不超过20的字符串(不含空格);期末平均成绩和班级评议成绩都是0到100之间的整数(包括0和100);是否是学生干部和是否是西部省份学生分别用一个字符表示,Y表示是,N表示不是;发表的论文数是0到10的整数(包括0和10)。

软件测试实验报告(例)

软件测试实验报告(例)

2022 年10 月14 日实验一白盒测试方法实验楼 2022.10.9(1)熟悉掌握白盒测试方法中的逻辑覆盖和路径覆盖的测试方法。

(2)通过实验掌握逻辑覆盖测试用例设计,掌握流程图的绘制。

(3)运用所学理论,完成实验研究的基本训练过程。

测试以下程序段Void DoWork(int x,int y,int z){(1) int k=0,j=0;(2) if((x>0)&&(z<10))(3) {(4) k=x*y- 1;(5) j=sqrt(k);(6) }(7) if((x==4)||(y>5))(8) j=x*y+10;(9) j=j%3;(10) }说明:程序中每行开头的数字(1- 10)是对每句语句的编号。

a 画出程序的控制流图(用题中给出的语句编号表示)。

b 分别用语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖方法设计测试用例,并写出每一个测试用例的执行路径(用题中给出的语句编号表示)。

三、笔记本电脑控制流图:d e f 3456Sa1b cghi87kjlE附:程序代码#include<stdio.h> #include<math.h> 9 2int dowork(int x,int y,int z){int k=0,j=0;if((x>0)&&(z<10)){k=x*y- 1;j=sqrt(k);}if((x==4)||(y>5))j=x*y+10;j=j%3;return j;}void main(){int x, y ,z,j;printf("输入x,y,z 的值");scanf("%d%d%d",&x,&y,&z);j=dowork(x,y,z);printf("j 的值%d",j);}设判定条件M=(x>0)&&(z<10)N=(x==4)||(y>5)设路径P1( abcdefhijl)=M and NP2(abcdefhkl)=M and /NP3(abgijl)=/M and NP4(abgkl)=/M and/N1. 语句覆盖输入{x=4,y=8,z=9} 输出{j=0} 覆盖路径P1(abcdefhijl)2.判定覆盖输入{x=4,y=8,z=9} 输出{j=0} 覆盖路径P1(abcdefhijl)输入{x=4,y=4,z=15} 输出{j=0} 覆盖路径 P3(abgijl)3.条件覆盖对于第一个判定条件 M ,分割如下条件 x>0 取真时为 T1,取假时为 F1。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

太原理工大学学生实验报告
学院名称计算机科学与技术专业班级软件工程实验成绩
学生姓名学号实验日期
课程名称软件测试方法和技术实验题目使用白盒测试方法测试程序段
一、实验目的
通过实验主要掌握用白盒法中的逻辑覆盖测试技术设计测试用例以及测试流程图的绘制。

二、实验内容
测试以下程序段
Void DoWork(int x,int y,int z)
{
1 int k=0,j=0;
2 if((x>0)&&(z<10))
3 {
4 k=x*y-1;
5 j=sqrt(k);
6 }
7 if((x==4)||(y>5))
8 j=x*y+10;
9 j=j%3;
10 }
三、实验要求
说明:程序段中每行开头的数字(1-10)是对每条语句的编号。

a 画出程序的控制流图(用题中给出的语句编号表示)。

b分别用语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖方法设计测试用例,并写出每个测试用例的执行路径(用题中给出的语句编号表示)。

1)语句覆盖
从流程图看出,程序具有4条路径:
L1:(a-b-d)。

相关文档
最新文档