测试用例的测试数据生成方法及软件测试方法技术

技术编号:22218566 阅读:86 留言:0更新日期:2019-09-30 01:06
本发明专利技术涉及软件测试技术,解决了目前软件测试效率较低的问题。技术方案概括为:获取生成测试数据所需的基本信息,然后生成测试数据,生成测试数据的方式包括将所有测试数据项所对应的典型有效等价类数据组装成一条测试数据等多种生成方式,各种生成方式所生成的测试数据具有不同的特点,再基于生成的测试数据进行软件测试。有益效果是:本发明专利技术所生成的测试数据的总条数相较于背景技术大大减少,并且生成的测试数据更具有代表性,质量较高,进而的在软件测试时测试效率较高。

Test Data Generation Method of Test Case and Software Testing Method

【技术实现步骤摘要】
测试用例的测试数据生成方法及软件测试方法
本专利技术涉及软件测试技术,特别涉及测试用例的测试数据生成技术。
技术介绍
现有测试用例的测试数据生成方法,是通过穷举法对所有测试数据项的数据进行排列组合而生成测试数据,这样就会生成很多条测试数据,虽然测试覆盖范围广,但是相对的需要进行测试的数据量大,并且其中大部分测试数据的质量不高,综合下来软件测试的整体测试效率比较低。
技术实现思路
本专利技术为解决目前软件测试效率较低的问题,提供一种测试用例的测试数据生成方法及软件测试方法。为解决上述问题,本专利技术采用的技术方案是:一方面,本专利技术提供一种测试用例的测试数据生成方法,包括:获取测试用例的所有测试数据项和预设的测试数据生成策略,所述测试数据项包括数据是否可以为空、数据类型和数据取值范围,所述测试数据生成策略包括有效等价类数据生成策略和无效等价类数据生成策略;对于每一个测试数据项,根据测试数据生成策略、该测试数据项的数据类型和该测试数据项的数据取值范围生成该测试数据项所对应的一个典型有效等价类数据、至少一个有效等价类数据和至少一个无效等价类数据;生成多条测试数据,生成测试数据的方式包括方式一,还包括方式二、方式三、方式四和方式五中的至少一种方式;所述方式一采用:将所有测试数据项所对应的典型有效等价类数据组装成一条测试数据;所述方式二采用:分别从每个测试数据项所对应的有效等价类数据中各选取一个数据来组装成一条测试数据,若任一测试数据项所对应的有效等价类数据中存在尚未被选取的数据,则继续分别从每个测试数据项所对应的有效等价类数据中各选取一个数据来组装成一条测试数据,且优先选取尚未被选取到的数据,直到每个测试数据项所对应的每个有效等价类数据都至少被选取一次;所述方式三采用:将所有的数据不能为空的测试数据项所对应的典型有效等价类数据组装成一条测试数据;所述方式四采用:每次都在方式一所得的测试数据的基础上,从所有测试数据项所对应的所有无效等价类数据中选取一个尚未被选取的数据来替换掉方式一所得的测试数据中与本次选取的数据相对应的测试数据项所对应的典型有效等价类数据,得到一条新的测试数据,直到每个测试数据项所对应的每个无效等价类数据都被选取一次;所述方式五采用:每次都在方式一所得的测试数据的基础上,删除方式一所得的测试数据中的一个尚未被删除过的数据不能为空的测试数据项所对应的典型有效等价类数据,得到一条新的测试数据,直到方式一所得的测试数据中的每个不能为空的测试数据项所对应的典型有效等价类数据都被删除过一次。作为进一步优化,上述测试数据生成方法还包括获取预设的测试数据条数下限值和测试数据条数上限值;若生成的测试数据条数小于测试数据条数下限值,则分别根据每个测试数据项的数据取值范围,在相应数据取值范围内为每个测试数据项随机生成数据,并根据随机生成的每个测试数据项的数据组装生成测试数据,直到生成的测试数据条数大于或等于测试数据条数下限值;若生成的测试数据条数大于测试数据条数上限值,则随机删除经方式二、方式三、方式四和方式五生成的测试数据,直到生成的测试数据条数小于或等于测试数据条数上限值。作为进一步优化,上述测试数据生成方法还包括接收包含测试用例的所有测试数据项信息和预设的测试数据生成策略信息的文件,对接收到的文件进行解析以获取测试用例的所有测试数据项和预设的测试数据生成策略。作为进一步优化,所述测试数据项的数据类型为String类型时:生成的典型有效等价类数据满足:长度为(预设的最小长度+预设的最大长度)/2,且是由有效字符组成的字符串;生成的有效等价类数据满足:由合法字符组成的长度为预设的最小长度的字符串,或由合法字符组成的长度为预设的最大长度的字符串,或由除符号以外的各不相同的有效字符随机组成的长度为预设的最大长度减1的字符串,或由有效符号和有效字符组成的长度为的预设的最大长度减1的字符串;生成的无效等价类数据满足:由合法字符组成的长度为预设的最小长度减1的字符串,或由合法字符组成的长度为预设的最大允许长度加1的字符串,或长度为预设的最大长度减1且仅包含1个非法字符的字符串。作为进一步优化,所述测试数据项的数据类型为列表类型时:生成的典型有效等价类数据满足:为列表中的值;生成的有效等价类数据满足:为列表中第1个值,或为列表中最后1个值,或多选列表中的所有值;生成的无效等价类数据满足:为列表中不存在的且类型与列表中值类型相同的值,或类型与列表中值类型不相同的值。作为进一步优化,所述测试数据项的数据类型为范围类型时:生成的典型有效等价类数据满足:为第1段范围居中的数据;生成的有效等价类数据满足:为范围的边界数据;生成的无效等价类数据满足:为比范围的边界数据小1个单位的值,或为比范围的边界数据大1个单位的值,或类型与范围以内的数据的类型不相同的数据。作为进一步优化,上述测试数据生成方法还包括输出包含生成的每条测试数据的描述信息的文件。作为进一步优化,所述测试数据项还包括测试数据项名称,任一条测试数据的描述信息包括测试数据序号、本条测试数据是否使用、本条测试数据的类型、本条测试数据的特征描述、本条测试数据中所对应的各个测试数据项的名称。另一方面,本专利技术提供一种软件测试方法,基于上述的测试用例的测试数据生成方法,包括以下步骤:步骤一、执行通过所述方式一生成的测试数据,若测试通过,则执行步骤二,否则判定软件测试未通过;步骤二、分别执行通过所述方式二、方式三、方式四和方式五中的至少一种方式生成的各条测试数据,若所执行的每条测试数据都通过测试,则判定软件测试通过,否则判定软件测试未通过。有益效果是:本专利技术中通过上述5种方式来生成多条测试数据进行软件测试,通过方式一生成的测试数据进行冒烟测试,若测试通过,则说明被测功能基本可用,可以进一步进行后续方式二和/或方式三和/或方式四和/或方式五所生成的测试数据的测试,通过方式二生成的测试数据能够快速完成有效等价类的验证,通过方式三生成的测试数据能够批量对允许为空的有效等价类进行测试,以实现快速验证允许为空的有效等价类,通过方式四生成的测试数据能够逐一验证无效等价类是否被正确处理,通过方式五生成的测试数据能够逐一验证必填字段是否得到正确处理。可以看出,本专利技术所生成的测试数据的总条数相较于
技术介绍
大大减少,并且生成的测试数据更具有代表性,质量较高,进而的在软件测试时测试效率较高。具体实施方式下面详细说明本专利技术的技术方案。首先,本专利技术提出一种测试用例的测试数据生成方法,包括:获取测试用例的所有测试数据项和预设的测试数据生成策略,测试数据项包括数据是否可以为空、数据类型和数据取值范围,测试数据生成策略包括有效等价类数据生成策略和无效等价类数据生成策略;对于每一个测试数据项,根据测试数据生成策略、该测试数据项的数据类型和该测试数据项的数据取值范围生成该测试数据项所对应的一个典型有效等价类数据、至少一个有效等价类数据和至少一个无效等价类数据;其中,上述典型有效等价类数据是根据有效等价类数据生成策略、该测试数据项的数据类型和该测试数据项的数据取值范围生成的有效等价类数据,且取值为典型值;生成多条测试数据,生成测试数据的方式包括方式一,还包括方式二、方式三、方式四和方式五中的至少一种方式;方式一为:将所有测试数据本文档来自技高网
...

【技术保护点】
1.测试用例的测试数据生成方法,其特征在于,包括:获取测试用例的所有测试数据项和预设的测试数据生成策略,所述测试数据项包括数据是否可以为空、数据类型和数据取值范围,所述测试数据生成策略包括有效等价类数据生成策略和无效等价类数据生成策略;对于每一个测试数据项,根据测试数据生成策略、该测试数据项的数据类型和该测试数据项的数据取值范围生成该测试数据项所对应的一个典型有效等价类数据、至少一个有效等价类数据和至少一个无效等价类数据;生成多条测试数据,生成测试数据的方式包括方式一,还包括方式二、方式三、方式四和方式五中的至少一种方式;所述方式一采用:将所有测试数据项所对应的典型有效等价类数据组装成一条测试数据;所述方式二采用:分别从每个测试数据项所对应的有效等价类数据中各选取一个数据来组装成一条测试数据,若任一测试数据项所对应的有效等价类数据中存在尚未被选取的数据,则继续分别从每个测试数据项所对应的有效等价类数据中各选取一个数据来组装成一条测试数据,且优先选取尚未被选取到的数据,直到每个测试数据项所对应的每个有效等价类数据都至少被选取一次;所述方式三采用:将所有的数据不能为空的测试数据项所对应的典型有效等价类数据组装成一条测试数据;所述方式四采用:每次都在方式一所得的测试数据的基础上,从所有测试数据项所对应的所有无效等价类数据中选取一个尚未被选取的数据来替换掉方式一所得的测试数据中与本次选取的数据相对应的测试数据项所对应的典型有效等价类数据,得到一条新的测试数据,直到每个测试数据项所对应的每个无效等价类数据都被选取一次;所述方式五采用:每次都在方式一所得的测试数据的基础上,删除方式一所得的测试数据中的一个尚未被删除过的数据不能为空的测试数据项所对应的典型有效等价类数据,得到一条新的测试数据,直到方式一所得的测试数据中的每个不能为空的测试数据项所对应的典型有效等价类数据都被删除过一次。...

【技术特征摘要】
1.测试用例的测试数据生成方法,其特征在于,包括:获取测试用例的所有测试数据项和预设的测试数据生成策略,所述测试数据项包括数据是否可以为空、数据类型和数据取值范围,所述测试数据生成策略包括有效等价类数据生成策略和无效等价类数据生成策略;对于每一个测试数据项,根据测试数据生成策略、该测试数据项的数据类型和该测试数据项的数据取值范围生成该测试数据项所对应的一个典型有效等价类数据、至少一个有效等价类数据和至少一个无效等价类数据;生成多条测试数据,生成测试数据的方式包括方式一,还包括方式二、方式三、方式四和方式五中的至少一种方式;所述方式一采用:将所有测试数据项所对应的典型有效等价类数据组装成一条测试数据;所述方式二采用:分别从每个测试数据项所对应的有效等价类数据中各选取一个数据来组装成一条测试数据,若任一测试数据项所对应的有效等价类数据中存在尚未被选取的数据,则继续分别从每个测试数据项所对应的有效等价类数据中各选取一个数据来组装成一条测试数据,且优先选取尚未被选取到的数据,直到每个测试数据项所对应的每个有效等价类数据都至少被选取一次;所述方式三采用:将所有的数据不能为空的测试数据项所对应的典型有效等价类数据组装成一条测试数据;所述方式四采用:每次都在方式一所得的测试数据的基础上,从所有测试数据项所对应的所有无效等价类数据中选取一个尚未被选取的数据来替换掉方式一所得的测试数据中与本次选取的数据相对应的测试数据项所对应的典型有效等价类数据,得到一条新的测试数据,直到每个测试数据项所对应的每个无效等价类数据都被选取一次;所述方式五采用:每次都在方式一所得的测试数据的基础上,删除方式一所得的测试数据中的一个尚未被删除过的数据不能为空的测试数据项所对应的典型有效等价类数据,得到一条新的测试数据,直到方式一所得的测试数据中的每个不能为空的测试数据项所对应的典型有效等价类数据都被删除过一次。2.如权利要求1所述的测试用例的测试数据生成方法,其特征在于,还包括获取预设的测试数据条数下限值和测试数据条数上限值;若生成的测试数据条数小于测试数据条数下限值,则分别根据每个测试数据项的数据取值范围,在相应数据取值范围内为每个测试数据项随机生成数据,并根据随机生成的每个测试数据项的数据组装生成测试数据,直到生成的测试数据条数大于或等于测试数据条数下限值;若生成的测试数据条数大于测试数据条数上限值,则随机删除经方式二、方式三、方式四和方式五生成的测试数据,直到生成的测试数据条数小于或等于测试数据条数上限值。3.如权利要求1所述的测试用例的测试数据生成方法,其特征在于,还包括接收包含测试用...

【专利技术属性】
技术研发人员:常清雪李书红廖雷
申请(专利权)人:四川长虹电器股份有限公司
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1