首页 > 其他分享 >白盒测试

白盒测试

时间:2024-05-08 20:44:59浏览次数:22  
标签:循环体 覆盖 白盒 路径 测试用例 测试

一什么是白盒测试
1.白盒测试:也叫透明测试,检查程序内部结构及路径是否符合规格说明,是否符合其代码规范。
二.白盒测试方法
语句覆盖、判断覆盖、条件覆盖、判断、条件覆盖、条件组合覆盖、路径覆盖。
以如下代码为例


1.语句覆盖法
指设计若干个测试用例,使程序运行时每个可执行语句至少被执行一次。

2.判断覆盖法
指设计若干个测试用例,使得程序运行时,每个判断条件的真假分支至少被执行一次

3.条件覆盖法
指设计若干个测试用例,使得程序运行时,每个判断条件中的每个判断式的真、假值至被执行一次


4.判断、条件覆盖法
指设计若干个测试用例,使得程序运行时,每个判断条件中真、假值分支至少被执行一次,且每个判断条件的内部判断式的真、假值至少被执行一次。

5.条件组合覆盖法
指设计若干个测试用例,使得程序运行时,每个判断条件的内部判断式的各种真假组合都至少被执行一次;是逻辑覆盖测试中“覆盖能力”最强的。

6.路径覆盖
旨在保证程序中每一个特定的路径方案都能正常运行。
常见的路径覆盖方法:2种
A:独立路径覆盖
定义:
即覆盖所有的独立路径的测试,所谓独立路径应至少包含一条在其它路径中从未有过的边
B:Z路径覆盖
Z路径覆盖:
是一种将实际项目中复杂的程序减少其循环次数的路径覆盖方法,
即:不考虑循环体实际需要执行多少次,只考虑通过循环体0次和1次这两种情况
Z路径覆盖:
0次循环:直接跳过循环体,从循环体入口直接到出口
1次循环:通过一次循环体即可
二.白盒测试优点
1.深入程序内部,测试力度较细
2.是测试用例设计方法的组成部分,也是黑盒测试方法的有力补充
3.为自动化测试和性能测试奠定基础
三.白盒测试缺点
1.过分关注代码本身,容易忽略需求
2.相当应的编程语言要求较高,人力成本较大。

标签:循环体,覆盖,白盒,路径,测试用例,测试
From: https://www.cnblogs.com/fanshsh/p/18179393

相关文章

  • 团队共同完成——谈谈本小组项目的测试1、你希望不同的人物角色(有些团队有3个人物角色
    ]团队共同完成——谈谈本小组项目的测试1、你希望不同的人物角色(有些团队有3个人物角色)如何使用你的软件?他们的需求和目标是什么,您的功能是如何协同工作来解决他们的需求的?2、本小组项目的测试矩阵是什么?是在什么平台、什么语言、什么类型的机器、什么类型浏览器等上测试您的......
  • junit测试工具运用
    JUnit是一个广泛使用的Java单元测试框架,它允许开发人员编写和运行可重复的测试来验证代码的正确性。以下是JUnit的具体使用步骤:安装JUnit:首先,确保你的Java开发环境(如Eclipse、IntelliJIDEA等)已经集成了JUnit。如果没有,你需要下载JUnit的jar包,并将其添加到项目的类路径中。在In......
  • jmeter无图形界面执行测试并生成报告
    一.命令行:jemeter-n-txxx.jmx-lMMM.jtl-e-oNNN二.命令行参数解释:2.1运行参数-n无图形界面执行-t指定要执行的脚本路径xxx.jmx,必须指定,格式为jmx文件(-txxx.jmx)-l指定运行过程中生成数据文件路径,必须指定,格式为jtl文件,文件名随......
  • 个人练习(每个同学都要提交)——学习和使用多个平台上的测试工具 请使用两种以上平台上
    答:在"校园跑腿"项目中,我们可以使用两种不同的测试工具来确保软件的质量和稳定性。这些测试工具可以包括自动化测试工具和手动测试工具。以下是两种测试工具的介绍以及如何在项目中使用它们:SeleniumWebDriver(自动化测试工具):SeleniumWebDriver是一个流行的自动化测试工具,用于测......
  • Selenium4自动化测试2--元素定位By.ID,By.CLASS_NAME,By.TAG_NAME
    三、元素定位方式1-通过id定位,By.IDid属性在HTML中是唯一的,因此使用id定位可以确保找到页面上唯一的元素。由于id是唯一的,浏览器在查找元素时可以快速定位到目标元素,提高了定位的效率。 importtime#pipinstallseleniumfromseleniumimportwebdriverfromselenium......
  • 个人练习(每个同学都要提交)——学习和使用多个平台上的测试工具 请使用两种以上平台上
    在本小组项目中,我们使用以下两种平台上的测试工具:Postman和Swagger。Postman:Postman是一款功能强大的API测试工具,可以用于创建、调试和测试API。首先,我们需要创建一个Postman账号,并安装Postman应用程序。在项目中,我们可以使用Postman来进行API端点的测试。我们可以创建多个请求......
  • Selenium4自动化测试1--Chrome浏览器和chromedriver
    selenium的介绍Selenium是一个用于Web应用程序测试的强大工具,可以模拟用户在浏览器中的行为。它提供了一组功能丰富的工具和库,使您能够自动化浏览器操作,进行功能测试、回归测试和跨浏览器测试。Selenium原理 它需要模拟浏览器的操作所以需要用到浏览器和浏览器驱动。一、......
  • Docker+Jenkins自动化测试实践
    前期介绍:基于Python+unittest的接口自动化测试框架,打算使用Docker容器技术+jenkins持续集成的能力实现接口自动化测试的持续集成前提:了解jenkins的使用Docker简介概念虚拟化:一种资源管理技术(虚拟机、内存管理、硬盘分区管理)Docker是什么:虚拟化技术的一种,虚拟容器技术,模......
  • 11.Junit单元测试
    依赖jar包<dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.13.1</version></dependency>简单使用@Test注解只有在方法上有效,只要加了这个注解的方法,......
  • 在Windows运行Gitlab Runner对.NET Framework 4.6.1旧项目自动执行单元测试
    摘要本文介绍了GitlabRunner如何在Windows服务器上调用vstest.console.exe,对旧的项目基于.NETFramework4.6.1的项目,自动执行单元测试。改造旧版本的.csproj文件改造成功后,完整的.csproj文件如下:<ProjectSdk="Microsoft.NET.Sdk"> <PropertyGroup><ProjectG......