白盒测试:覆盖测试及测试用例设计

2024-05-08 17:44

本文主要是介绍白盒测试:覆盖测试及测试用例设计,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

白盒测试:覆盖测试及测试用例设计

一、实验目的

1、掌握白盒测试的概念。

2、掌握逻辑覆盖法。

二、实验任务

       某工资计算程序功能如下:若雇员月工作小时超过40小时,则超过部分按原小时工资的1.5倍的加班工资来计算。若雇员月工作小时超过50小时,则超过50的部分按原小时工资的3倍的加班工资来计算,而4050小时的工资仍按照原小时工资的1.5倍的加班工资来计算。程序输入为:雇员月工作时间及小时工资,输出为工资。

运用逻辑覆盖法的六种覆盖标准设计测试用例,并执行测试,撰写实验报告。

实验步骤:

1、画出程序流程图

判定1:hour<=40 && hour>=0

判定2:hour>40 && hour<=50

判定3:hour>50

2、根据逻辑覆盖法的六种覆盖标准设计测试用例,得到6张测试用例表

(1)、语句覆盖:程序需要执行通过的语句有1、3、5、6,由于2、4、7位置没有语句,因此不需要覆盖。

只需一条测试用例即可:

测试用例编号

hour(小时)

money(元)

预期输出

覆盖语句

T1

60

100

8500.00元

1、3、5、6

(2)、判定覆盖:易知程序流程图中有三个判定

编号

hour

money

判定1

判定2

判定3

预期输出

T2

30

50

1500.0元

T3

45

60

2850.0元

T4

60

70

5950.0元

(3)、条件覆盖

编号

hour

money

判定1

判定2

判定3

预期输出

T6

30

50

1500.0元

T7

45

60

2850.0元

T8

60

70

5950.0元

T9

-10

80

输入有误

(4)、条件/判定覆盖

编号

hour

money

判定1

判定2

判定3

预期输出

T6

30

50

1500.0元

T7

45

60

2850.0元

T8

60

70

5950.0元

T9

-10

80

输入有误

(5)、条件组合覆盖

编号

hour

money

判定1

判定2

判定3

预期输出

T6

30

50

1500.0元

T7

45

60

2850.0元

T8

60

70

5950.0元

T9

-10

80

输入有误

(6)、修正条件判定覆盖

编号

hour

money

判定1

判定2

判定3

预期输出

T6

30

50

1500.0元

T7

45

60

2850.0元

T8

60

70

5950.0元

T9

-10

80

输入有误

3、执行测试,填写软件缺陷报告。

语句覆盖

判定覆盖、条件覆盖和条件/判定覆盖的测试结果

条件组合覆盖、修正条件判定覆盖测试结果

测试缺陷报告:

测试模块:

工资计算程序

开 发 者:

XXX

测 试 员:

XXX

测试日期:

2024.5.8

软件缺陷列表

缺陷ID

缺陷详细信息

BUG1

BUG2

BUG3

BUG4

代码:

import java.util.*;
public class Main {public static void main(String[] args) {int hour;int money;double sum;while (true) {System.out.print("请输入雇员的月工作时间(小时):");Scanner console = new Scanner(System.in);hour = console.nextInt();System.out.print("请输入雇员的时薪(元):");money = console.nextInt();if (hour <= 40 && hour >= 0) {sum = hour * money;System.out.println("雇员本月的工资为:" + sum + "元");} else {if (hour > 40 && hour <= 50) {sum = 40 * money + (hour - 40) * money * 1.5;System.out.println("雇员本月的工资为:" + sum + "元");} else if (hour > 50) {sum = 40 * money + 10 * money * 1.5 + (hour - 50) * money * 3;System.out.println("雇员本月的工资为:" + sum + "元");} else {System.out.println("输入的月工时有误,请重新输入!");}}}}
}

记录学习、记录生活,最后,我终将会成为我想成为的人✌✌✌

这篇关于白盒测试:覆盖测试及测试用例设计的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/971000

相关文章

SpringBoot中整合RabbitMQ(测试+部署上线最新完整)的过程

《SpringBoot中整合RabbitMQ(测试+部署上线最新完整)的过程》本文详细介绍了如何在虚拟机和宝塔面板中安装RabbitMQ,并使用Java代码实现消息的发送和接收,通过异步通讯,可以优化... 目录一、RabbitMQ安装二、启动RabbitMQ三、javascript编写Java代码1、引入

Nginx设置连接超时并进行测试的方法步骤

《Nginx设置连接超时并进行测试的方法步骤》在高并发场景下,如果客户端与服务器的连接长时间未响应,会占用大量的系统资源,影响其他正常请求的处理效率,为了解决这个问题,可以通过设置Nginx的连接... 目录设置连接超时目的操作步骤测试连接超时测试方法:总结:设置连接超时目的设置客户端与服务器之间的连接

Java覆盖第三方jar包中的某一个类的实现方法

《Java覆盖第三方jar包中的某一个类的实现方法》在我们日常的开发中,经常需要使用第三方的jar包,有时候我们会发现第三方的jar包中的某一个类有问题,或者我们需要定制化修改其中的逻辑,那么应该如何... 目录一、需求描述二、示例描述三、操作步骤四、验证结果五、实现原理一、需求描述需求描述如下:需要在

vue解决子组件样式覆盖问题scoped deep

《vue解决子组件样式覆盖问题scopeddeep》文章主要介绍了在Vue项目中处理全局样式和局部样式的方法,包括使用scoped属性和深度选择器(/deep/)来覆盖子组件的样式,作者建议所有组件... 目录前言scoped分析deep分析使用总结所有组件必须加scoped父组件覆盖子组件使用deep前言

Python中的可视化设计与UI界面实现

《Python中的可视化设计与UI界面实现》本文介绍了如何使用Python创建用户界面(UI),包括使用Tkinter、PyQt、Kivy等库进行基本窗口、动态图表和动画效果的实现,通过示例代码,展示... 目录从像素到界面:python带你玩转UI设计示例:使用Tkinter创建一个简单的窗口绘图魔法:用

Python绘制土地利用和土地覆盖类型图示例详解

《Python绘制土地利用和土地覆盖类型图示例详解》本文介绍了如何使用Python绘制土地利用和土地覆盖类型图,并提供了详细的代码示例,通过安装所需的库,准备地理数据,使用geopandas和matp... 目录一、所需库的安装二、数据准备三、绘制土地利用和土地覆盖类型图四、代码解释五、其他可视化形式1.

如何测试计算机的内存是否存在问题? 判断电脑内存故障的多种方法

《如何测试计算机的内存是否存在问题?判断电脑内存故障的多种方法》内存是电脑中非常重要的组件之一,如果内存出现故障,可能会导致电脑出现各种问题,如蓝屏、死机、程序崩溃等,如何判断内存是否出现故障呢?下... 如果你的电脑是崩溃、冻结还是不稳定,那么它的内存可能有问题。要进行检查,你可以使用Windows 11

不懂推荐算法也能设计推荐系统

本文以商业化应用推荐为例,告诉我们不懂推荐算法的产品,也能从产品侧出发, 设计出一款不错的推荐系统。 相信很多新手产品,看到算法二字,多是懵圈的。 什么排序算法、最短路径等都是相对传统的算法(注:传统是指科班出身的产品都会接触过)。但对于推荐算法,多数产品对着网上搜到的资源,都会无从下手。特别当某些推荐算法 和 “AI”扯上关系后,更是加大了理解的难度。 但,不了解推荐算法,就无法做推荐系

性能测试介绍

性能测试是一种测试方法,旨在评估系统、应用程序或组件在现实场景中的性能表现和可靠性。它通常用于衡量系统在不同负载条件下的响应时间、吞吐量、资源利用率、稳定性和可扩展性等关键指标。 为什么要进行性能测试 通过性能测试,可以确定系统是否能够满足预期的性能要求,找出性能瓶颈和潜在的问题,并进行优化和调整。 发现性能瓶颈:性能测试可以帮助发现系统的性能瓶颈,即系统在高负载或高并发情况下可能出现的问题

字节面试 | 如何测试RocketMQ、RocketMQ?

字节面试:RocketMQ是怎么测试的呢? 答: 首先保证消息的消费正确、设计逆向用例,在验证消息内容为空等情况时的消费正确性; 推送大批量MQ,通过Admin控制台查看MQ消费的情况,是否出现消费假死、TPS是否正常等等问题。(上述都是临场发挥,但是RocketMQ真正的测试点,还真的需要探讨) 01 先了解RocketMQ 作为测试也是要简单了解RocketMQ。简单来说,就是一个分