在VectorCAST for Linux中使用分类树功能生成测试用例

2024-04-22 05:48

本文主要是介绍在VectorCAST for Linux中使用分类树功能生成测试用例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在软件测试中,测试用例的设计是对测试质量而言非常关键的软件测试活动,因为测试用例集合的选择对测试的深度和测试范围的影响非常大。分类树方法是由Grochtmann和Grimm在1993年提出的,是在软件功能测试方面一种有效的测试方法,通过分类树把测试对象的整个输入域分割成独立的类。按照分类树方法,测试对象的输入域被认为是由各种不同的方面组成并且都与测试相关。对于每个方面,分离和组成各种类别,而分类结果的各类又可能再进一步地被分类。这种通过对输入域进行层梯式的分类表现为树状结构。随后,通过组合各种不同分类的结果来形成测试用例。

 
在 VectorCAST中,也支持分类树方法设计测试用例,整个过程都是图形化的界面,变量的输入输出范围全部都可以通过图形化的界面来设计,整个过程不需要编写代码,只需要根据测试需求确定输入输出的范围就可以批量设计测试用例。目前,分类树方式生成测试用例的功能是通过Test Data Editor来设计变量的输入输出范围的。受限于Test Data Editor仅支持Windows平台,根据分类树来生成测试用例只能在VectorCAST for Windows中使用。那么在VectorCAST for Linux如何使用分类树设计并生成测试用例呢?在新版的 VectorCAST for Linux中,已经支持通过间接的方式来使用,需要借助VectorCAST for Windows中的Test Data Editor。


测试环境
 
Ubuntu 21.04,VectorCAST 2021 SP5 for Linux,Windows 10,VectorCAST 2021 SP5 for Windows。

操作步骤
 
打开一个终端,设置环境变量VCAST_ENABLE_REMOTE_VCT:export VCAST_ENABLE_REMOTE_VCT=1
 
如果是通过启动脚本来启动的VectorCAST,需要在启动脚本内添加上述命令。
 
设置完成后,在相同的终端内启动VectorCAST,或通过启动脚本来启动VectorCAST
 
VectorCAST进入主界面后,创建或打开一个测试环境,找到被测函数,右键单击被测函数,点击Generate VCT Map,之后可以看到,被测函数下方出现了一个VCT Map。


在下图所示的界面中,需要先设置VCT Filename,默认为函数名+数字.vct,完成后点击Finish。


在这里需要选择要赋值的参数,可以根据实际测试需求,选择输入值和期望值。

选择好参数之后,回到被测函数的位置,找到下方的VCT Map,右键单击VCT Map,点击Edit VCT。
 
这一步会自动打开帮助窗口,可以根据提示,通过复制文件或通过网络传输的方式,把生成的VCT传输到一台安装了VectorCAST for Windows的Windows机器上。

这里采用复制文件的方式,把单元测试环境工作目录下的VCT_REMOTE目录复制到Windows机器上,执行VCT_REMOTE文件夹下的run.bat,就可以打开Test Data Editor,编辑分类树并生成测试用例数据。

设计完成后,关闭Test Data Editor,可以看到在VCT_REMOTE文件夹下自动生成了一个csv文件,之后把VCT_REMOTE文件夹复制回Linux机器并工作目录下的VCT_REMOTE目录,回到VectorCAST for Linux,可以看到帮助窗口下方的Continue按钮已经激活,点击Continue按钮后,在提示窗口中点击Yes,就可以生成测试用例。

在界面中找到被测函数下方的VCT Map,展开,就可以看到生成的所有测试用例。


总结


通过VectorCAST,可以方便地设计函数输入输出条件的分类树,只需要设计参数的范围,VectorCAST可以自动计算这些范围并生成对应的测试用例来测试被测函数。VectorCAST for Linux也可以利用此方法来使用分类树方法来生成测试用例,从而使测试变得更加高效,更有效率。

“原创内容,转载请标明出处”

这篇关于在VectorCAST for Linux中使用分类树功能生成测试用例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Python使用Pandas对比两列数据取最大值的五种方法

《Python使用Pandas对比两列数据取最大值的五种方法》本文主要介绍使用Pandas对比两列数据取最大值的五种方法,包括使用max方法、apply方法结合lambda函数、函数、clip方法、w... 目录引言一、使用max方法二、使用apply方法结合lambda函数三、使用np.maximum函数

Qt 中集成mqtt协议的使用方法

《Qt中集成mqtt协议的使用方法》文章介绍了如何在工程中引入qmqtt库,并通过声明一个单例类来暴露订阅到的主题数据,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友一起看看吧... 目录一,引入qmqtt 库二,使用一,引入qmqtt 库我是将整个头文件/源文件都添加到了工程中进行编译,这样 跨平台

C++使用栈实现括号匹配的代码详解

《C++使用栈实现括号匹配的代码详解》在编程中,括号匹配是一个常见问题,尤其是在处理数学表达式、编译器解析等任务时,栈是一种非常适合处理此类问题的数据结构,能够精确地管理括号的匹配问题,本文将通过C+... 目录引言问题描述代码讲解代码解析栈的状态表示测试总结引言在编程中,括号匹配是一个常见问题,尤其是在

Java中String字符串使用避坑指南

《Java中String字符串使用避坑指南》Java中的String字符串是我们日常编程中用得最多的类之一,看似简单的String使用,却隐藏着不少“坑”,如果不注意,可能会导致性能问题、意外的错误容... 目录8个避坑点如下:1. 字符串的不可变性:每次修改都创建新对象2. 使用 == 比较字符串,陷阱满

Python使用国内镜像加速pip安装的方法讲解

《Python使用国内镜像加速pip安装的方法讲解》在Python开发中,pip是一个非常重要的工具,用于安装和管理Python的第三方库,然而,在国内使用pip安装依赖时,往往会因为网络问题而导致速... 目录一、pip 工具简介1. 什么是 pip?2. 什么是 -i 参数?二、国内镜像源的选择三、如何

使用C++实现链表元素的反转

《使用C++实现链表元素的反转》反转链表是链表操作中一个经典的问题,也是面试中常见的考题,本文将从思路到实现一步步地讲解如何实现链表的反转,帮助初学者理解这一操作,我们将使用C++代码演示具体实现,同... 目录问题定义思路分析代码实现带头节点的链表代码讲解其他实现方式时间和空间复杂度分析总结问题定义给定

Linux使用nload监控网络流量的方法

《Linux使用nload监控网络流量的方法》Linux中的nload命令是一个用于实时监控网络流量的工具,它提供了传入和传出流量的可视化表示,帮助用户一目了然地了解网络活动,本文给大家介绍了Linu... 目录简介安装示例用法基础用法指定网络接口限制显示特定流量类型指定刷新率设置流量速率的显示单位监控多个

ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法

《ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法》本文介绍了Elasticsearch的基本概念,包括文档和字段、索引和映射,还详细描述了如何通过Docker... 目录1、ElasticSearch概念2、ElasticSearch、Kibana和IK分词器部署

JavaScript中的reduce方法执行过程、使用场景及进阶用法

《JavaScript中的reduce方法执行过程、使用场景及进阶用法》:本文主要介绍JavaScript中的reduce方法执行过程、使用场景及进阶用法的相关资料,reduce是JavaScri... 目录1. 什么是reduce2. reduce语法2.1 语法2.2 参数说明3. reduce执行过程

如何使用Java实现请求deepseek

《如何使用Java实现请求deepseek》这篇文章主要为大家详细介绍了如何使用Java实现请求deepseek功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1.deepseek的api创建2.Java实现请求deepseek2.1 pom文件2.2 json转化文件2.2