CN112783775A - 特殊字符输入测试方法及装置 - Google Patents

特殊字符输入测试方法及装置 Download PDF

Info

Publication number
CN112783775A
CN112783775A CN202110102057.2A CN202110102057A CN112783775A CN 112783775 A CN112783775 A CN 112783775A CN 202110102057 A CN202110102057 A CN 202110102057A CN 112783775 A CN112783775 A CN 112783775A
Authority
CN
China
Prior art keywords
special character
character set
input item
tested
test
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110102057.2A
Other languages
English (en)
Other versions
CN112783775B (zh
Inventor
侯文龙
易晟义
俞子波
陈溪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202110102057.2A priority Critical patent/CN112783775B/zh
Publication of CN112783775A publication Critical patent/CN112783775A/zh
Application granted granted Critical
Publication of CN112783775B publication Critical patent/CN112783775B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods

Abstract

本发明公开了一种特殊字符输入测试方法及装置,可用于金融领域或其他技术领域,该特殊字符输入测试方法包括:根据目标输入项对应的输入项敏感特殊字符集合、待测系统采用的编程语言对应的编程语言特殊字符集合以及目标输入项对应的历史问题特殊字符集合,确定所述目标输入项对应的待测特殊字符集合;根据所述待测特殊字符集合生成测试用例集合,以根据所述测试用例集合对所述目标输入项进行输入测试。本发明解决了现有测试人员在测试的过程中,由于人工准备涉及到特殊字符的测试数据,容易产生测试遗漏的问题。

Description

特殊字符输入测试方法及装置
技术领域
本发明涉及输入项有效性测试技术领域,具体而言,涉及一种特殊字符输入测试方法及装置。
背景技术
在项目软件研发过程中,对于被测系统及应用输入项的有效性测试一直是一个非常重要的环节。在对于系统页面输入项的有效性校验中,特殊字符输入的测试验证非常必要。目前,测试人员在对特殊字符输入进行测试时通常为手工准备涉及到特殊字符的测试数据,容易出现遗漏或未测试的情况,这就可能导致版本投产后,在生产环境部署的系统由于页面用户录入某个特殊字符的存在产生异常,影响到部分用户的正常使用。
发明内容
本发明为了解决上述背景技术中的技术问题,提出了一种特殊字符输入测试方法及装置。
为了实现上述目的,根据本发明的一个方面,提供了一种特殊字符输入测试方法,该方法包括:
根据预设的输入项类型与输入项敏感特殊字符集合之间的对应关系,确定待测系统中的目标输入项对应的输入项敏感特殊字符集合;
根据预设的编程语言与编程语言特殊字符集合的对应关系,确定所述待测系统采用的编程语言对应的编程语言特殊字符集合;
根据所述待测系统的每个输入项类型各自对应的历史问题特殊字符集合,确定所述目标输入项对应的历史问题特殊字符集合;
根据所述目标输入项对应的输入项敏感特殊字符集合、所述待测系统采用的编程语言对应的编程语言特殊字符集合以及所述目标输入项对应的历史问题特殊字符集合,确定所述目标输入项对应的待测特殊字符集合;
根据所述待测特殊字符集合生成测试用例集合,以根据所述测试用例集合对所述目标输入项进行输入测试。
可选的,所述根据所述待测特殊字符集合生成测试用例集合,包括:
根据所述待测特殊字符集合中每个字符的长度以及所述目标输入项的输入框的最大可输入长度生成多个测试用例。
可选的,所述根据所述待测特殊字符集合生成测试用例集合,包括:
从所述待测特殊字符集合中选择若干个字符组合成测试用例,其中,所述测试用例中相邻两个字符用预设符号分开,所述测试用例中所有字符的总长度与所述测试用例中所有所述预设符号的总长度之和小于等于所述目标输入项的输入框的最大可输入长度。
可选的,所述测试用例中所有字符的总长度与所述测试用例中所有所述预设符号的总长度之和大于所述最大可输入长度的预设百分比。
可选的,输入项敏感特殊字符集合中包含必测字符和选测字符,编程语言特殊字符集合中的字符均为必测字符,历史问题特殊字符集合中的字符均为必测字符;
所述根据所述目标输入项对应的输入项敏感特殊字符集合、所述待测系统采用的编程语言对应的编程语言特殊字符集合以及所述目标输入项对应的历史问题特殊字符集合,确定所述目标输入项对应的待测特殊字符集合,包括:
对所述目标输入项对应的输入项敏感特殊字符集合、所述待测系统采用的编程语言对应的编程语言特殊字符集合以及所述目标输入项对应的历史问题特殊字符集合中的所有字符进行汇总形成所述待测特殊字符集合。
可选的,该特殊字符输入测试方法,还包括:
根据用户指令将所述待测特殊字符集合中的选测字符的数量减少至用户设置的数量,或者根据用户指令将所述待测特殊字符集合中的选测字符的占比减少至用户设置的占比。
为了实现上述目的,根据本发明的另一方面,提供了一种特殊字符输入测试装置,该装置包括:
输入项敏感特殊字符集合确定单元,用于根据预设的输入项类型与输入项敏感特殊字符集合之间的对应关系,确定待测系统中的目标输入项对应的输入项敏感特殊字符集合;
编程语言特殊字符集合确定单元,用于根据预设的编程语言与编程语言特殊字符集合的对应关系,确定所述待测系统采用的编程语言对应的编程语言特殊字符集合;
历史问题特殊字符集合确定单元,用于根据所述待测系统的每个输入项类型各自对应的历史问题特殊字符集合,确定所述目标输入项对应的历史问题特殊字符集合;
待测特殊字符集合确定单元,用于根据所述目标输入项对应的输入项敏感特殊字符集合、所述待测系统采用的编程语言对应的编程语言特殊字符集合以及所述目标输入项对应的历史问题特殊字符集合,确定所述目标输入项对应的待测特殊字符集合;
测试用例集合生成单元,用于根据所述待测特殊字符集合生成测试用例集合,以根据所述测试用例集合对所述目标输入项进行输入测试。
为了实现上述目的,根据本发明的另一方面,还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述特殊字符输入测试方法中的步骤。
为了实现上述目的,根据本发明的另一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序在计算机处理器中执行时实现上述特殊字符输入测试方法中的步骤。
本发明的有益效果为:本发明根据目标输入项的类型确定对应的输入项敏感特殊字符集合,根据待测系统采用的编程语言对应的编程语言特殊字符集合,根据目标输入项的类型确定对应的历史问题特殊字符集合,最终根据这三个集合生成目标输入项对应的待测特殊字符集合,并根据待测特殊字符集合生成目标输入项的测试用例集合,实现了自动、全面的生成目标输入项的测试用例的效果,解决了现有测试人员在测试的过程中,由于人工准备涉及到特殊字符的测试数据,容易产生测试遗漏的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1是本发明实施例特殊字符输入测试方法的流程图;
图2是本发明实施例生成测试用例的第一流程图;
图3是本发明实施例生成测试用例的第二流程图;
图4是本发明实施例特殊字符输入测试装置的结构框图;
图5是本发明实施例计算机设备示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
需要说明的是,本发明的特殊字符输入测试方法及装置可用于金融领域,也可以用于其他技术领域。
图1是本发明实施例特殊字符输入测试方法的流程图,如图1所示,本实施例的特殊字符输入测试方法包括步骤S101至步骤S105。
步骤S101,根据预设的输入项类型与输入项敏感特殊字符集合之间的对应关系,确定待测系统中的目标输入项对应的输入项敏感特殊字符集合。
在本发明实施例中,本发明根据输入项的应用场景、功能含义、合法性约束等因素对输入项归类定性,并对每类输入项对应的输入项敏感特殊字符集合进行了定义。
以下表1为输入项类型与输入项敏感特殊字符集合对应表,输入项被划分为两级,对于每个二级分类,根据该分类的属性定义其测试正例、反例以及是否必测。本步骤的输入项类型为表1中的二级类别,表1中的测试内容为输入项敏感特殊字符集合,例如输入项类型邮箱对应的输入项敏感特殊字符集合中包含:全角数字、全角英文、全角@、。、中英文空格以及其他键盘可输入的字符。在本发明实施例中,输入项敏感特殊字符集合中包含必测字符和选测字符,以输入项类型邮箱为例,如下表1可见,全角数字、全角英文、全角@、。以及中英文空格为必测字符,其他键盘可输入的字符为选测字符。
以注册账户页面中邮箱输入项为例,对应于表中二级类别为“邮箱”的分类,根据敏感字符库,需重点测试除‘@’及‘.’外的重点字符是否接受输入。在梳理输入项过程中,需将输入项编号及其所属分类的对照表记录下来,以供后续测试执行时使用。
在本发明实施例中,本发明可以根据每个输入项进行输入根据所处系统、所处功能、所处页面、输入项名称、输入约束等条件为其赋予唯一的输入项编号,并建立输入项编号与输入项类型之间的对应关系,进而可以便于根据目标输入项的输入项编号确定目标输入项的输入项类型。
Figure BDA0002916068370000051
Figure BDA0002916068370000061
表1
步骤S102,根据预设的编程语言与编程语言特殊字符集合的对应关系,确定所述待测系统采用的编程语言对应的编程语言特殊字符集合。
在本发明实施例中,本发明预先建立常用的多种编程语言与编程语言特殊字符集合的对应关系。在本发明一个实施例中,编程语言特殊字符集合由三部分组成:公共特殊字符集、特有特殊字符集和自定义特殊字符集。公共特殊字符集存放编程语言普遍存在的一些关键字和变量值,比如if、main、null、true、false等等。特有特殊字符集主要由该语言的关键字和常用特殊字符构成,以java为例,特有特殊字符集内既包括new、class等该语言特有的关键字,也包括\n,\\n这类和java转义或者转义有关的常用特殊字符。自定义特殊字符集由测试用户自行定义,添加一些用户认为的需要进行测试的特殊字符,比如开发人员在开发过程中使用的自定义分隔符,开发人员自己定义的特殊字符等。
步骤S103,根据所述待测系统的每个输入项类型各自对应的历史问题特殊字符集合,确定所述目标输入项对应的历史问题特殊字符集合。
在本发明实施例中,本发明收集曾经因为特殊字符造成生产问题的情况,并将这些历史上造成生产问题的特殊字符作为以后输入项测试的必测字符,有助于提高输入项测试的测试效果。本发明以应用为维度归集该应用有史以来曾经因为特殊字符输入造成的生产问题,然后对这些案例进行分析,归纳输入项类别,以输入项类型进行划分,得到不同类型的输入项对应的历史问题特殊字符集合。
在本发明一个实施例中,待测系统的每个输入项类型各自对应的历史问题特殊字符集合可以为下表2的形式。本发明可以根据待测系统的历史输入项测试结果生成下表2的历史测试问题汇总表。下表2的历史测试问题汇总表中包含了待测系统的每个输入项类型各自对应的历史问题特殊字符集合。本步骤可以根据下表2的历史测试问题汇总表直接确定出待测系统的目标输入项对应的历史问题特殊字符集合。
Figure BDA0002916068370000071
表2
在本发明一个实施例中,本发明在对目标输入项进行输入测试之后,还可以根据目标输入项的输入测试结果更新所述目标输入项对应的历史问题特殊字符集合。具体的,目标输入项的输入测试结果中包含了本次测试出现问题的特殊字符,本发明可以将本次测试出现问题的特殊字符加入到目标输入项的输入项类型对应的历史问题特殊字符集合中,以提高之后对目标输入项的测试效果。
步骤S104,根据所述目标输入项对应的输入项敏感特殊字符集合、所述待测系统采用的编程语言对应的编程语言特殊字符集合以及所述目标输入项对应的历史问题特殊字符集合,确定所述目标输入项对应的待测特殊字符集合。
在本发明一个实施例中,输入项敏感特殊字符集合中包含必测字符和选测字符,编程语言特殊字符集合中的字符均为必测字符,历史问题特殊字符集合中的字符均为必测字符。
在本发明一个实施例中,本步骤具体可以为,对所述目标输入项对应的输入项敏感特殊字符集合、所述待测系统采用的编程语言对应的编程语言特殊字符集合以及所述目标输入项对应的历史问题特殊字符集合中的所有字符进行汇总形成所述待测特殊字符集合,其中,所述待测特殊字符集合为上述三个集合的并集。
步骤S105,根据所述待测特殊字符集合生成测试用例集合,以根据所述测试用例集合对所述目标输入项进行输入测试。
在本发明实施例中,本步骤具体将测试用例集合中的测试用例输入到目标输入项对应的输入框中,对目标输入项进行输入测试。
在本发明一个实施例中,本步骤可以将所述待测特殊字符集合中的每个字符作为一个测试用例,也可以将所述待测特殊字符集合中的多个字符组合成一个测试用例。
图2是本发明实施例生成测试用例的第一流程图,如图2所示,在本发明一个实施例中,上述步骤S105具体包括步骤S201。
步骤S201,根据所述待测特殊字符集合中每个字符的长度以及所述目标输入项的输入框的最大可输入长度生成多个测试用例。
在本发明实施例中,本步骤可以先将所述待测特殊字符集合中长度大于所述最大可输入长度的字符删除,然后根据删除后的测特殊字符集合生成测试用例集合。
在本发明一个实施例中,本步骤可以本步骤可以将所述待测特殊字符集合中的每个长度不大于所述最大可输入长度的字符作为一个测试用例,也可以将所述待测特殊字符集合中的多个字符进行组合成一个测试用例,其中,组合的多个字符的长度总和不大于所述最大可输入长度。
图3是本发明实施例生成测试用例的第二流程图,如图3所示,在本发明一个实施例中,上述步骤S105具体包括步骤S301。
步骤S301,从所述待测特殊字符集合中选择若干个字符组合成测试用例,其中,所述测试用例中相邻两个字符用预设符号分开,所述测试用例中所有字符的总长度与所述测试用例中所有所述预设符号的总长度之和小于等于所述目标输入项的输入框的最大可输入长度。
在本发明实施例中,本步骤的从所述待测特殊字符集合中选择若干个字符组合成测试用例,可以为随机选择若干个字符组合成测试用例,也可以为根据字符长度分布情况进行有目的进行选择,使组合成的所述测试用例中所有字符的总长度与所述测试用例中所有所述预设符号的总长度之和小于等于所述最大可输入长度并尽可能接近所述最大可输入长度,使每一次测试尽可能多的对特殊字符进行测试,提高测试效率。
在本发明一个可选实施例中,所述预设符号可以为分隔符,也可以为其他常用的用于分隔的符号。
在本发明一个可选实施例中,上述步骤S105的根据所述待测特殊字符集合生成测试用例集合的具体步骤可以包括:
首先根据所述最大可输入长度对待测特殊字符集合进行清理,把待测特殊字符集合中长度超过所述最大可输入长度的字符删去;
然后,按照待测特殊字符集合里的各字符的长度将集合中的所有字符由高到低进行排序得到一个长度有序集合S1{C1,C2,C3,,,,Cn},接下来,按照顺序,先取S1中的第一个字符C1,若C1的字符长度length(C1)+1大于等于所述最大可输入长度L,则将C1取出作为一个元素存入一个新的集合S2,再判断第二个特殊字符C2的长度;若C1的字符长度length(C1)+1小于待测输入框的最大可输入长度L,则再取集合S1中最后一个特殊字符元素Cn,若length(C1)+1+length(Cn)大于等于最大可输入长度L,则将{C1,Cn}这个集合作为一个项存入一个新的集合S2,再判断C2的长度;若length(C2)+1+length(Cn)小于最大可输入长度L,则再取S1中倒数第二个特殊字符元素Cn-1,以此类推再判断length(C2)+1+length(Cn)+1+length(Cn-1)与L的大小,直到总长度大于等于最大可输入长度L后,再将字符集合(如length(C2)+1+length(Cn)+1+length(Cn-1)>L,则为{C2,Cn,Cn-1})作为一个项存入集合S2中,以此类推,直到将集合S1中所有的元素都遍历完之后,得到一个完整的新集合S2。
得到新的集合S2后,再用集合中的各项生成多个测试用例,在测试过程中,使用这个测试用例集合进行测试。
在本发明一个实施例中,所述测试用例中所有字符的总长度与所述测试用例中所有所述预设符号的总长度之和大于所述最大可输入长度的预设百分比。
在本发明一个实施例中,本发明的特殊字符输入测试方法,具体还包括:
根据用户指令将所述待测特殊字符集合中的选测字符的数量减少至用户设置的数量,或者根据用户指令将所述待测特殊字符集合中的选测字符的占比减少至用户设置的占比。
在本发明实施例中,待测特殊字符集合中包含必测字符和选测字符,选测字符的占比和数量可由用户输入控制,同一类的输入框不重复测试同一个选测特殊字符,以减少重复的测试工作。
在本发明实施例中,在进行测试时,测试用例集合按照一定策略进行执行,用户可以选择全覆盖和快速执行两种策略进行测试用例的执行。在全覆盖策略下,会将所有输入项的所有测试用例(包含必测和选测的特殊字符)均覆盖到,在快速执行的策略下,用户可以设置每个测试用例的权重(0-100),在执行的时候,权重高的测试用例将会更多的被优先执行,权重较低的测试用例会更少的被执行,权重为0的则会被默认忽略,用户可以在这个子模块里定制化的制作自己的执行策略,以便在测试执行的过程中覆盖到更多更重要的测试用例。
本发明还可以对执行结果进行动态反馈,在每次执行完成后根据执行结果将其包含的特殊字符的测试用例的执行情况进行反馈,对于引起问题的选测的特殊字符,则将结果反馈给测试人员,以方便测试人员及时更新输入项敏感特殊字符集合中字符的选测和必测的属性,在以后的测试中就可以根据更新后的输入项敏感特殊字符集合进行测试。
在本发明一个实施例中,本发明还可以对测试结果进行展示,展示每个测试脚本的基础信息、参数信息、测试过程及测试结果。脚本的基础信息包括:脚本名称、功能描述、负责人;参数信息及测试结果则根据执行前设计的多套测试案例形成记录表格,表格内容包括:数据套数、参数名称、参数值、测试类型(正例/反例)、预期运行结果、实际运行结果(通过/不通过)。测试过程中,形成日志及执行截图记录,供后续对问题缺陷进行复查。测试结束后,将测试结果回填至参数表格对应的位置中,并对结果数据统计汇总形成展示图表,图表描述出缺陷类别、数量并追踪解决情况。最终得出风险分析及建议及测试执行率、成功率、缺陷关闭率的结论。
由以上实施例可以看出,本发明的特殊字符输入测试方法至少实现了以下有益效果:
1、本发明解决了现有测试人员在测试的过程中,由于手工准备涉及到特殊字符的测试数据,容易产生测试未执行的遗漏的问题;
2、本发明兼顾测试覆盖率和测试效率,尽可能用最少的测试执行次数达成最多的特殊字符测试覆盖,有利于测试效率的提升;
3、本发明体系完整,从测试准备到测试设计,从测试执行到测试结果展示,能完整的覆盖测试的需求。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
基于同一发明构思,本发明实施例还提供了一种特殊字符输入测试装置,可以用于实现上述实施例所描述的特殊字符输入测试方法,如下面的实施例所述。由于特殊字符输入测试装置解决问题的原理与特殊字符输入测试方法相似,因此特殊字符输入测试装置的实施例可以参见特殊字符输入测试方法的实施例,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图4是本发明实施例特殊字符输入测试装置的结构框图,如图4所示,本发明实施例特殊字符输入测试装置包括:
输入项敏感特殊字符集合确定单元1,用于根据预设的输入项类型与输入项敏感特殊字符集合之间的对应关系,确定待测系统中的目标输入项对应的输入项敏感特殊字符集合;
编程语言特殊字符集合确定单元2,用于根据预设的编程语言与编程语言特殊字符集合的对应关系,确定所述待测系统采用的编程语言对应的编程语言特殊字符集合;
历史问题特殊字符集合确定单元3,用于根据所述待测系统的每个输入项类型各自对应的历史问题特殊字符集合,确定所述目标输入项对应的历史问题特殊字符集合;
待测特殊字符集合确定单元4,用于根据所述目标输入项对应的输入项敏感特殊字符集合、所述待测系统采用的编程语言对应的编程语言特殊字符集合以及所述目标输入项对应的历史问题特殊字符集合,确定所述目标输入项对应的待测特殊字符集合;
测试用例集合生成单元5,用于根据所述待测特殊字符集合生成测试用例集合,以根据所述测试用例集合对所述目标输入项进行输入测试。
在本发明一个实施例中,所述测试用例集合生成单元5,包括:
第一测试用例生成模块,用于根据所述待测特殊字符集合中每个字符的长度以及所述目标输入项的输入框的最大可输入长度生成多个测试用例。
在本发明一个实施例中,所述测试用例集合生成单元5,包括:
第二测试用例生成模块,用于从所述待测特殊字符集合中选择若干个字符组合成测试用例,其中,所述测试用例中相邻两个字符用预设符号分开,所述测试用例中所有字符的总长度与所述测试用例中所有所述预设符号的总长度之和小于等于所述目标输入项的输入框的最大可输入长度。
在本发明一个实施例中,所述测试用例中所有字符的总长度与所述测试用例中所有所述预设符号的总长度之和大于所述最大可输入长度的预设百分比。
在本发明一个实施例中,输入项敏感特殊字符集合中包含必测字符和选测字符,编程语言特殊字符集合中的字符均为必测字符,历史问题特殊字符集合中的字符均为必测字符;
所述待测特殊字符集合确定单元4,具体用于对所述目标输入项对应的输入项敏感特殊字符集合、所述待测系统采用的编程语言对应的编程语言特殊字符集合以及所述目标输入项对应的历史问题特殊字符集合中的所有字符进行汇总形成所述待测特殊字符集合。
在本发明一个实施例中,本发明的特殊字符输入测试装置,还包括:
选测字符调整单元,用于根据用户指令将所述待测特殊字符集合中的选测字符的数量减少至用户设置的数量,或者根据用户指令将所述待测特殊字符集合中的选测字符的占比减少至用户设置的占比。
为了实现上述目的,根据本申请的另一方面,还提供了一种计算机设备。如图5所示,该计算机设备包括存储器、处理器、通信接口以及通信总线,在存储器上存储有可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述实施例方法中的步骤。
处理器可以为中央处理器(Central Processing Unit,CPU)。处理器还可以为其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及单元,如本发明上述方法实施例中对应的程序单元。处理器通过运行存储在存储器中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及作品数据处理,即实现上述方法实施例中的方法。
存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述一个或者多个单元存储在所述存储器中,当被所述处理器执行时,执行上述实施例中的方法。
上述计算机设备具体细节可以对应参阅上述实施例中对应的相关描述和效果进行理解,此处不再赘述。
为了实现上述目的,根据本申请的另一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序在计算机处理器中执行时实现上述特殊字符输入测试方法中的步骤。本领域技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(RandomAccessMemory,RAM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,缩写:HDD)或固态硬盘(Solid-State Drive,SSD)等;所述存储介质还可以包括上述种类的存储器的组合。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种特殊字符输入测试方法,其特征在于,包括:
根据预设的输入项类型与输入项敏感特殊字符集合之间的对应关系,确定待测系统中的目标输入项对应的输入项敏感特殊字符集合;
根据预设的编程语言与编程语言特殊字符集合的对应关系,确定所述待测系统采用的编程语言对应的编程语言特殊字符集合;
根据所述待测系统的每个输入项类型各自对应的历史问题特殊字符集合,确定所述目标输入项对应的历史问题特殊字符集合;
根据所述目标输入项对应的输入项敏感特殊字符集合、所述待测系统采用的编程语言对应的编程语言特殊字符集合以及所述目标输入项对应的历史问题特殊字符集合,确定所述目标输入项对应的待测特殊字符集合;
根据所述待测特殊字符集合生成测试用例集合,以根据所述测试用例集合对所述目标输入项进行输入测试。
2.根据权利要求1所述的特殊字符输入测试方法,其特征在于,所述根据所述待测特殊字符集合生成测试用例集合,包括:
根据所述待测特殊字符集合中每个字符的长度以及所述目标输入项的输入框的最大可输入长度生成多个测试用例。
3.根据权利要求1所述的特殊字符输入测试方法,其特征在于,所述根据所述待测特殊字符集合生成测试用例集合,包括:
从所述待测特殊字符集合中选择若干个字符组合成测试用例,其中,所述测试用例中相邻两个字符用预设符号分开,所述测试用例中所有字符的总长度与所述测试用例中所有所述预设符号的总长度之和小于等于所述目标输入项的输入框的最大可输入长度。
4.根据权利要求3所述的特殊字符输入测试方法,其特征在于,所述测试用例中所有字符的总长度与所述测试用例中所有所述预设符号的总长度之和大于所述最大可输入长度的预设百分比。
5.根据权利要求1所述的特殊字符输入测试方法,其特征在于,输入项敏感特殊字符集合中包含必测字符和选测字符,编程语言特殊字符集合中的字符均为必测字符,历史问题特殊字符集合中的字符均为必测字符;
所述根据所述目标输入项对应的输入项敏感特殊字符集合、所述待测系统采用的编程语言对应的编程语言特殊字符集合以及所述目标输入项对应的历史问题特殊字符集合,确定所述目标输入项对应的待测特殊字符集合,包括:
对所述目标输入项对应的输入项敏感特殊字符集合、所述待测系统采用的编程语言对应的编程语言特殊字符集合以及所述目标输入项对应的历史问题特殊字符集合中的所有字符进行汇总形成所述待测特殊字符集合。
6.根据权利要求5所述的特殊字符输入测试方法,其特征在于,还包括:
根据用户指令将所述待测特殊字符集合中的选测字符的数量减少至用户设置的数量,或者根据用户指令将所述待测特殊字符集合中的选测字符的占比减少至用户设置的占比。
7.根据权利要求1所述的特殊字符输入测试方法,其特征在于,还包括:
根据所述目标输入项的输入测试结果更新所述目标输入项对应的历史问题特殊字符集合。
8.一种特殊字符输入测试装置,其特征在于,包括:
输入项敏感特殊字符集合确定单元,用于根据预设的输入项类型与输入项敏感特殊字符集合之间的对应关系,确定待测系统中的目标输入项对应的输入项敏感特殊字符集合;
编程语言特殊字符集合确定单元,用于根据预设的编程语言与编程语言特殊字符集合的对应关系,确定所述待测系统采用的编程语言对应的编程语言特殊字符集合;
历史问题特殊字符集合确定单元,用于根据所述待测系统的每个输入项类型各自对应的历史问题特殊字符集合,确定所述目标输入项对应的历史问题特殊字符集合;
待测特殊字符集合确定单元,用于根据所述目标输入项对应的输入项敏感特殊字符集合、所述待测系统采用的编程语言对应的编程语言特殊字符集合以及所述目标输入项对应的历史问题特殊字符集合,确定所述目标输入项对应的待测特殊字符集合;
测试用例集合生成单元,用于根据所述待测特殊字符集合生成测试用例集合,以根据所述测试用例集合对所述目标输入项进行输入测试。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序在计算机处理器中执行时实现如权利要求1至7任意一项所述的方法。
CN202110102057.2A 2021-01-26 2021-01-26 特殊字符输入测试方法及装置 Active CN112783775B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110102057.2A CN112783775B (zh) 2021-01-26 2021-01-26 特殊字符输入测试方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110102057.2A CN112783775B (zh) 2021-01-26 2021-01-26 特殊字符输入测试方法及装置

Publications (2)

Publication Number Publication Date
CN112783775A true CN112783775A (zh) 2021-05-11
CN112783775B CN112783775B (zh) 2024-03-01

Family

ID=75757550

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110102057.2A Active CN112783775B (zh) 2021-01-26 2021-01-26 特殊字符输入测试方法及装置

Country Status (1)

Country Link
CN (1) CN112783775B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115376144A (zh) * 2022-07-07 2022-11-22 北京三维天地科技股份有限公司 一种特殊字符录入方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150073778A1 (en) * 2013-09-06 2015-03-12 International Business Machines Corporation Techniques for automatically generating test data
CN107957957A (zh) * 2017-12-28 2018-04-24 网易(杭州)网络有限公司 测试用例的获取方法和装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150073778A1 (en) * 2013-09-06 2015-03-12 International Business Machines Corporation Techniques for automatically generating test data
CN107957957A (zh) * 2017-12-28 2018-04-24 网易(杭州)网络有限公司 测试用例的获取方法和装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115376144A (zh) * 2022-07-07 2022-11-22 北京三维天地科技股份有限公司 一种特殊字符录入方法及系统

Also Published As

Publication number Publication date
CN112783775B (zh) 2024-03-01

Similar Documents

Publication Publication Date Title
US9959197B2 (en) Automated bug detection with virtual machine forking
CN110597730B (zh) 基于场景法的自动化测试用例生成方法及系统
CN109344262A (zh) 知识体系的建立方法、装置及存储介质
CN109344230A (zh) 代码库文件生成、代码搜索、联结、优化以及移植方法
US20180018392A1 (en) Topic identification based on functional summarization
US11403550B2 (en) Classifier
CN108694108B (zh) 一种iOS崩溃数据分类与统计的方法和装置
US20180232299A1 (en) Composing future tests
US20150089296A1 (en) Derivation of generalized test cases
CN114372006A (zh) 测试用例自动生成方法、系统、计算机设备和存储介质
US20180095719A1 (en) Sorted linked list with a midpoint binary tree
US11663113B2 (en) Real time fault localization using combinatorial test design techniques and test case priority selection
CN110968664A (zh) 一种文书检索方法、装置、设备及介质
CN108170602B (zh) 一种测试用例生成方法、装置、终端及计算机可读介质
CN104933096B (zh) 数据库的异常键识别方法、装置与数据系统
CN112783775B (zh) 特殊字符输入测试方法及装置
CN110716866A (zh) 代码质量扫描方法、装置、计算机设备及存储介质
JP2013077124A (ja) ソフトウェアテストケース生成装置
CN110544166A (zh) 样本生成方法、装置及存储介质
CN111221690A (zh) 针对集成电路设计的模型确定方法、装置及终端
CN115757172A (zh) 测试执行方法、装置、存储介质及计算机设备
CN112699042B (zh) 一种单元测试案例的生成方法及装置
CN115576834A (zh) 支撑故障还原的软件测试复用方法、系统、终端及介质
CN112395199B (zh) 基于云计算的分布式软件实例测试方法及软件开发平台
CN115185998A (zh) 目标字段查找方法及装置、服务器、计算机可读存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant