ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:57.13KB ,
资源ID:8364241      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8364241.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于逻辑覆盖方法的测试用例设计与执行doc.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于逻辑覆盖方法的测试用例设计与执行doc.docx

1、基于逻辑覆盖方法的测试用例设计与执行doc脂无r修沆基于逻辑覆盖方法的测试用例设计与执行题目:多功能电子计时器课程名称:软件测试方法和技术院 系: XX学院 专业班级: mx 组 号: m 小组成员: XXX XXX XXX 实验报告成绩: 指导教师: XXX 2017年X月X日一、 被测程序介绍 31.1程序背景 31.2程序功能 3二、 被测程序主要测试代码 3三、 测试代码的程序流程图 43.1程序流程图 4四、 基于逻辑覆盖方法的测试用例设计 74.1判定覆盖 74.2条件覆盖 74.3判定.条件覆盖 74.4条件组合覆盖 8五、 程序源代码 8六、 程序运行截图 16七、 实验总结

2、16参考文献 17一、被测程序介绍LJL住AT R早该程序是一个图形界面的简单的java小时钟嵌套一个可以排序的多功能秒 表,具有良好的、简洁的界面。它是图形界面、线程、流与文件等技术的综合运 用,其界面主要采用了 java, awt包,javax. swing等。程序实现了电了时钟的 基本功能。可以从电脑上获得准确的背景时间,其时间精确到秒。时钟的界面静 中带动,秒表跳动。使用人员能快捷简单地进行操作秒表,即时准确地计算时间, 对人们的生活有一定的帮助。1.2程序功能功能1获得准确的背景时间,这时小时钟最基本的功能。功能2按下“start”键,开始计时,秒表跳动。功能3按下“stop”键,停

3、止计时,秒表的时间停留在按下“停止”键的那一刻。功能4按下“sort”键,按历时最短的顺序进行排序。功能5按下“reset”键,秒表归零。二、被测程序主要测试代码if(hour=9)timelnfo+=zz0/+hour+/:el setimelnfo+=hour+z,:;if(minute=9) timelnfo+=O+minute+: ;)elsetimeInfo+=/,+minute+z/:;if (second二9)timeTnfo=0+second;else(t imelnfo+second;三、测试代码的程序流程图3.1程序流程图根据上述的程序代码,绘制如图1所示的程序流程图,为了

4、方便分析测试用 例,将图1简化为图2,其中:条件 A= (hour=9条件 B=minute=9条件 C=second=9语句 O=(timelnfo+=hour+n:n)语句 P=timeInfo+=”+minute+”:”语句 Q= timelnfo+=second语句 X=timelnfo+=”0”+hour+”:”语句 Y=( timeInfo+=,0,+minute+,:M语句 Z=timelnfo=0+second)开始输出 timeinfo四、基于逻辑覆盖方法的测试用例设计4.1判定覆盖判定覆盖:设计若干个测试用例,运行所测试程序,使得程序中每个判断的 取真分支和取假分支至少经历

5、一次。根据判定覆盖的思想,就是要设计相应的测 试用例,以使判定A、B、C分别为真和假,如表1第一个用例覆盖了 A=T,B=T,C=T, 第二个用例覆盖了 A=F,B=F,C=F,从而达到判定覆盖。如下为判定覆盖的测试用 例表lo测试用例取值条件具体取值条件判定条件输入:时=5,分=5渺=5 输出:05:05:05T1,T2,T3hour=9uninute=9,second9,minute9,second9A=F,B=F,C=F表14.2条件覆盖条件覆盖:设计若干个测试用例,运行所测试程序,使得程序中每个判断的 每个条件的取值至少一次。对于第一个判定条件A,可将其分解成以下条件:条件hour=9

6、:取真时为T1,取假时为F1。对于第二个判定条件B,可分解成:条件minute=9:取真时为T2,取假时为F2。对于第三个判定条件C,可分解成:条件second=9:取真时为T3,取假时为F3。根据条件覆盖的思想,选择T1,T2,T3和F1,F2,F3组合,覆盖了 3个条件。如下为条件覆盖的测试用例表2。测试用例取值条件具体取值条件输入:时二6,分二6,秒二6 输出:06:06:06T1,T2,T3hour=9,minute=9,second9,minute9,second9表24.3判定条件覆盖判定条件覆盖:设计足够的测试用例,使得判断中的每个条件的所有可能取 值至少执行一次,同时每个判断本

7、身的所有可能判断结果至少执行一次。即要求 各个判断的所有可能的条件取值组合至少执行一次。判定覆盖的基本思路即至少 保证A、B、C取真和取假各一次,并且要保证6个条件取值(Tl, Fl, T2, F2, T3, F3)也至少被执行一次。如下为判定-条件覆盖的测试用例表3。测试用例取值条件具体取值条件判定条件输入:时=7,分二7,秒二7 输出:07:07:07T1,T2,T3hour=9,minute=9,seco nd9,minute9,second 9A=F,B=F,C=F表34.4条件组合覆盖条件组合覆盖:设计足够的测试用例,运行所测试程序,使得每个判断的所 有可能的条件取值组合至少执行一次

8、。即A、B、C每个条件都出现“真”、“假 两种结果,并且让这些结果的所有可能的组合都至少出现一次。按照条件组合覆 盖的思想,设计存在的6种组合条件示例如表4所示。组合编号覆盖条件取值判定条件取值判定条件组合1T1A=Thour9,A 取假3T2B=Tminute9,B 取假5T3C=Tsecond9,C 取假表4由以上6种组合条件,设计能覆盖所有这些组合的测试用例,如表5所示。测试用例覆盖条件覆盖路径覆盖组合输入:时二8,分二8,秒二8 输出:08:08:08T1,T2,T3Pl(l357)1,3,5输入:时二20,分二20,秒二20 输出:20:20:20F1,F2,F3P2(l-2-4-6

9、)2,4,6表5package test4;import java.awt.*;import javax.swing.*;import java.util.*;import java.text.SimpleDateFormat;import java.awt.event.*;public class jishiqi_2 extends JFrame implements Runnable,ActionListenerJPanel jpl Jp2;JLabeljlbl,jlb2,jlb3;JButton jb 1 ,jb2,jb3,jb4,jb5,jb6;JButton jbl l,jb22;J

10、TextArea jtal,jta2;JTextField j tf 1 j tf2,j tf3 ,j tf4,j tf5 J tf6,j tf7 j tf8;Thread clock;JScrollPane jsp;public jishiqi_2()对象的实例化jpl=new JPanel();jp2=new JPanel();jlbl=new JLabel(Now Time);jib 1 .setFont(new Font(楷体,Font.BOLD,20);jib 1 .setForeground(Color.RED);jlb2=new JLabel(recordln);jlb2.set

11、Font(new Font(楷体,Font.BOLD,l 1);jlb2.setForeground(Co!or.RED);jbl=new JButton(HstartH);jb l.setFont(new Font(楷体Font.BOLD, 10);jb 1 .setForeground(Color.RED);jb2二new JButton(Hstopn);jb2.setFont(new Font(楷体”,Font.BOLD, 10);jb2.setForeground(Color.RED);jb3=new JButton(use time);jb3.setFont(new Font。楷体”

12、,Font.BOLD, 10);jb3.setForeground(Color.RED);jbl l=new JButton(resetn);jbll.setFont(new Font(楷体”,Font.BOLD,13);jbl 1 .setForeground(Color.RED);jb 11 .setBounds(280,58,10,15);jb22=new JButton(sortn);jb22.setFont(new Font。楷体二Font.BOLD, 13);jb22.setForeground(Color.RED);jbl .addActionListener( this);j

13、b2. add Ac t ionLi s tener( th is);jb3.addActionListener(this);jlb3=new JLabel(Hrecord2);jlb3.setFont(new Font(楷体,Font.BOLD,l 1);jlb3.setForeground(Co!or.RED);jb4=new JButton(HstartH);jb4.setFont(new Font(楷体”,Font.BOLD, 10);jb4.setForeground(Color.RED);jb5=new JButton(nstop);jb5.setFont(new Font(楷体”

14、,Font.BOLD, 10); j b5. setForegro und(Color RED);jb6=new JButton(Huse time”);jb6.setFont(new Font(u楷体”,Font.BOLD, 10);jb6.setForeground(Color.RED);注册监听jb4.addActionListener(this);jb5.addActionListener(this);jb6.addActionListener(this);jbl l.addActionListener(this);jb22.addActionListener(this);实例化对象j

15、tal=new JTextArea( ”,2,10);jtfl=new JTextField(” ”,5);jtf2=new JTextField(n ”,5);jtf3=new JTextField(n ”,2);jtf4=new JTextField( n,5);jtf5=new JTextField(H n,5);jtf6=new JTextField(H ”,2);jtf7=new JTextField(”S”,2);jtf8=new JTextFieId(”S”,2);jtf7.setFont(new Font(楷体,Font.BOLD,10);jtf7.setForeground(

16、Color.RED);jtf8.setFont(new Font。楷体 ”,Font. BOLD, 10);jtf8.setForeground(Color.RED);jta 1 .setBackground(Color.black);jtal.setBorder(BorderFactory.createLineBorder(Color.red);jta2=new JTextArea(n 记录排序:”,2,8);jta2.setEditable(false);jta2.setFont(new Font(H楷体H,Font.BOLD,l 7);jta2.setBackground(Color.r

17、ed);jp2.setBackground(Color.black);jsp=new JScrollPane();jsp.setViewportView(jta2);将各组件加入面板容器中jpl.add(jlbl);jpl.add(jtal);jpl.add(jbll);jpl.add(jb22);jp2.add(jlb2);jp2.add(jbl);jp2.add(jtfl);jp2.add(jb2);jp2.add(jtf2);jp2.add(jb3);jp2.add(jtf3);jp2.add(jtf7);jp2.add(jlb3);jp2.add(jb4);jp2.add(jtf4);

18、jp2.add(jb5);jp2.add(jtf5);jp2.add(jb6);jp2.add(jtf6);jp2.add(jtf8);将个容器加入JFrame这个容器中this.add(jpl);this.add(jp2);this.add(jsp);this.add(jp2);设置界面管理布局jp 1 -setBackground(Color.black);this.setBackground(Color.black);BorderLayout bordei-new BorderLayout();this.setLayout(border);this.add(jp 1 ,BorderLay

19、out.NORTH);this.add(jp2,BorderLayout. CENTER);this-add(jsp,BorderLayout.EAST);this.setTitle(H多功能计时器,startQ;this.setSize(580,200);this.setLocation(200,150);this.setResizable(false);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setVisible(true);public void paint(Graphics g) 绘画时间Graphics2D g

20、2=(Graphics2D)g;super.paint(g2);Calendar now=new GregorianCalendar();String timeinfo二” ”;int hour=now.get(Calendar.HOUR_OF_DAY);int minute=now.get(Calendar.MINUTE);int second=now.get(Calendar.SECOND);if(hour=9)timelnfo+=”0”+hour+”:”;elsetimelnfo+=hour+ *:;if(minute=9)timelnfo+二” 0”+minute+”:”;elseti

21、melnfb+=minute+n:;if(second=9)timelnfo+=u0n+second;elsetimelnfo+=second;g2.setFont(new Font(梏体”,Font.BOLD,20);g2. setColor(Color.red);g2.drawString(timeInfo,200,58);public void start()if(clock=null)clock=new Thread(this);clock.start();public void run()while(clock!=null)repaintQ;tryThread.sleep( 1000

22、);catch (Exception e)e.printStackTrace();public void actionPerformed(ActionEvent e) 事件处理机制 Calendar now=new GregorianCalendar();String timeinfo二” ”;int hour=now.get(Calendar.HOUR_OF_DAY);int minute=now.get(Calendar.MINUTE);int second=now.get(Calendar.SECOND);if(hour=9)timelnfo+=n0+hour+n:;elsetimeln

23、fo+=hour+n:”;if(minute=9)timelnfo+二” 0”+minute+”:”;elsetimeInfo+=”+minute+:”;if(second=9)timelnfo=0n+second;elsetimelnfo+=second;if(e.getSource()=jbl)jtf 1 .setText(timeInfo+);jtf 1 .setFont(new Font(楷体H,Font.BOLD,l 1);jtf 1 .setForeground(Color.RED);else if(e.getSource()=jb2)jtf2.setText(timeInfo+,

24、H,);jtf2.setFont(new Font(楷体,Font.BOLD, 11);jtf2.setForeground(Color.RED);else if(e.getSource()=jb3)String dl=jtfl.getText();String d2=jtf2.getText();SimpleDateFormat sdf=new SimpleDateFormat(nhh:mm:ssn);trylong m=(sdf.parse(d2).getTime()-(sdf.parse(dl).getTime();long res 1;res l=m/1000;j tf3. setTe

25、x t (+res 1);jtf3.setFont(new Font(楷体二Font.BOLD1);jtf3.setForeground(Color.RED);catch (Exception e2)e2.printStackTrace();else if(e.getSource()=jb4)jtf4.setText(timeInfo+,H,);jtf4.setFont(new Font(楷体,Font.BOLDJ 1);jtf4.setForeground(Color.RED);else if(e.getSource()=jb5)jtf5.setText(timeInfo+);jtf5.se

26、tFont(new Font(楷体”,Font.BOLD, 11);jtf5.setForeground(Color.RED);else if(e.getSource()=jb6)String d3=jtf4.getText();String d4=jtf5.getText();SimpleDateFormat sdf=new SimpleDateFormatChh:mm:ss);trylong m=(sdf.parse(d4).getTime()-(sdf.parse(d3).getTime();long res2;res2=m/1000;j tf6. setText( n,+res2);j

27、tf6.setFont(new Font(n楷体H,Font.BOLD,l 1);jtf6.setForeground(Color.RED);catch (Exception e3)e3.prints tackTrace();else if(e.getSource()=jbl 1)jtfl.setText(,n,);jtf2.setText(,n);jtf3.setText(,n,);jtf4.setText(nn);jtf5.setText(nn);jtf6.setText(n);else if(e.getSource()=jb22)int numl,num2;numl = Integer.

28、parseInt(jtf3.getText();num2 = Integer.parseInt(jtf6.getText();if(numl=num2)jta2.setText(n 记录排序:rnH+nrecordl ”+”rn+”record2”);jta2.setFont(new Font(楷体二Font.BOLD,17);jta2.setForeground(Color.black);elsejta2.setText(n 记录排序:rn+record2 ”+rn+recordl);jta2.setFont(new Font(楷体二Font.BOLD, 17);jta2.setForeground(Color.black);public static void main(Stringl args)jishiqi_2 jsq=new jishiqi_2();六、程序运行截图国多功能计时SS七、实验总结通过这次基于逻辑覆盖方法的测试用例设计与执行的测

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1