CN110955603B - 自动化测试方法、装置、电子设备及计算机可读存储介质 - Google Patents

自动化测试方法、装置、电子设备及计算机可读存储介质 Download PDF

Info

Publication number
CN110955603B
CN110955603B CN201911219122.9A CN201911219122A CN110955603B CN 110955603 B CN110955603 B CN 110955603B CN 201911219122 A CN201911219122 A CN 201911219122A CN 110955603 B CN110955603 B CN 110955603B
Authority
CN
China
Prior art keywords
chart
test
standard
color
same
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.)
Active
Application number
CN201911219122.9A
Other languages
English (en)
Other versions
CN110955603A (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.)
Wanghai Kangxin Beijing Technology Co ltd
Original Assignee
Wanghai Kangxin Beijing Technology Co ltd
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 Wanghai Kangxin Beijing Technology Co ltd filed Critical Wanghai Kangxin Beijing Technology Co ltd
Priority to CN201911219122.9A priority Critical patent/CN110955603B/zh
Publication of CN110955603A publication Critical patent/CN110955603A/zh
Application granted granted Critical
Publication of CN110955603B publication Critical patent/CN110955603B/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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请实施例涉及自动化测试技术领域,公开了一种自动化测试方法、装置、电子设备及计算机可读存储介质,其中,自动化测试方法包括:通过预先设定的自动化测试系统,执行预生成的测试用例,生成相应的测试图表;接着通过自动化测试系统,对比测试图表与标准图表是否相同,标准图表是根据测试用例预生成的正确图表,图表包括图表文字与图表样式;接着当测试图表与标准图表不相同时,生成相应的提示信息。本申请实施例的方法,使得自动化测试系统能够将图表文字的比较和图表相似度的比较结合起来,从而实现全方位的自动化测试。

Description

自动化测试方法、装置、电子设备及计算机可读存储介质
技术领域
本申请实施例涉及自动化测试技术领域,具体而言,本申请涉及一种自动化测试方法、装置、电子设备及计算机可读存储介质。
背景技术
随着现代信息技术的飞速发展,软件业竞争日趋激烈,软件系统日益复杂,对软件功能、性能的要求不断提高,同时软件推出新版本的时间不断缩短。软件的表现形式也不仅仅是文字和表格,还有大量的数据统计图形,在这种情况下如何保证软件质量成为企业关注的重点。
本申请的发明人在具体实现过程中,发现以密集型劳动为特征的传统手工测试,己无法满足快节奏软件测试的需求,而且虽然单纯比较某个功能的查询结果是否正确比较简单,但是查询结果的展现形式不仅包括文字,还包括表格、图形等图表形式,于是如何自动化的对比图表形式的查询结果成为亟待解决的技术问题。
发明内容
本申请实施例的目的旨在至少能解决上述的技术缺陷之一,特提出以下技术方案:
一方面,提供了一种自动化测试方法,包括:
通过预先设定的自动化测试系统,执行预生成的测试用例,生成相应的测试图表;
通过自动化测试系统,对比测试图表与标准图表是否相同,标准图表是根据测试用例预生成的正确图表,图表包括图表文字与图表样式;
当测试图表与标准图表不相同时,生成相应的提示信息。
在一种可能的实现方式中,图表文字包括汉字、字母、数字及特殊字符中的至少一项;
通过自动化测试系统,对比测试图表与标准图表是否相同,包括:
基于光学字符识别引擎,提取测试图表中的第一图表文字;
对比第一图表文字与预存储的标准图表的第二图表文字是否对应相同;
当第一图表文字与第二图表文字非对应相同时,确定测试图表与标准图表不相同。
在一种可能的实现方式中,该方法还包括:
当第一图表文字与第二图表文字对应相同时,基于预定图表相似度比较算法,对比测试图表的第一图表样式与标准图表的第二图表样式是否相同;
若第一图表样式与第二图表样式不相同,则确定测试图表与标准图表不相同。
在一种可能的实现方式中,图表样式包括图表类型、图表展现形式及图表颜色;基于预定图表相似度比较算法,对比测试图表的第一图表样式与标准图表的第二图表样式是否相同,包括:
基于预定图表相似度比较算法,对比测试图表的第一图表类型与标准图表的第二图表类型是否相同,以及对比测试图表的第一图表展现形式与标准图表的第二图表展现形式是否相同,以及对比测试图表的第一图表颜色与标准图表的第二图表颜色是否相同;
若第一图表类型与第二图表类型不相同,或者第一图表展现形式与第二图表展现形式不相同,或者第一图表颜色与第二图表颜色不相同,则确定测试图表与标准图表不相同。
在一种可能的实现方式中,图表颜色包括图表的各个条目项的颜色;对比测试图表的第一图表颜色与标准图表的第二图表颜色是否相同,包括:
对比测试图表的各个条目项的颜色是否与标准图表的各个条目项的颜色对应相同;
若测试图表的任一条目项的颜色与标准图表的相对应条目项的颜色不相同,则确定第一图表颜色与第二图表颜色不相同,若测试图表的各个条目项的颜色与标准图表的各个条目项的颜色均对应相同,则确定第一图表颜色与第二图表颜色相同。
在一种可能的实现方式中,预定图表相似度比较算法包括差异哈希算法;基于差异哈希算法,对比测试图表的第一图表样式与标准图表的第二图表样式是否相同,包括:
将测试图表压缩为预定大小的目标测试图表,并将标准图表压缩为预定大小的目标标准图表;
将目标测试图表转换为256阶的第一灰度图,并将目标标准图表转换为256阶的第二灰度图;
对比第一灰度图中的各个像素值是否与第二灰度图中的各个像素值对应相同;
如果第一灰度图中的任一像素值与第二灰度图中的相对应像素值不相同,则确定第一图表样式与第二图表样式不相同。
在一种可能的实现方式中,该方法还包括:
若第一图表样式与第二图表样式相同,计算测试图表与标准图表之间的图表显示误差;
确定图表显示误差是否小于或等于预定阈值;
如果大于预定阈值,则确定测试图表与标准图表不相同。
一方面,提供了一种自动化测试装置,包括:
第一处理模块,用于通过预先设定的自动化测试系统,执行预生成的测试用例,生成相应的测试图表;
第二处理模块,用于通过自动化测试系统,对比测试图表与标准图表是否相同,标准图表是根据测试用例预生成的正确图表,图表包括图表文字与图表样式;
提示模块,用于当测试图表与标准图表不相同时,生成相应的提示信息。
在一种可能的实现方式中,
图表文字包括汉字、字母、数字及特殊字符中的至少一项;
第二处理模块包括提取单元与第一对比单元;
提取单元,用于基于光学字符识别引擎,提取测试图表中的第一图表文字;
第一对比单元,用于对比第一图表文字与预存储的标准图表的第二图表文字是否对应相同;
第一对比单元还用于当第一图表文字与第二图表文字非对应相同时,确定测试图表与标准图表不相同。
在一种可能的实现方式中,还包括第三处理模块;
第三处理模块,用于当第一图表文字与第二图表文字对应相同时,基于预定图表相似度比较算法,对比测试图表的第一图表样式与标准图表的第二图表样式是否相同;
第三处理模块,还用于当第一图表样式与第二图表样式不相同,确定测试图表与标准图表不相同。
在一种可能的实现方式中,图表样式包括图表类型、图表展现形式及图表颜色;第三处理模块具体用于:
基于预定图表相似度比较算法,对比测试图表的第一图表类型与标准图表的第二图表类型是否相同,以及对比测试图表的第一图表展现形式与标准图表的第二图表展现形式是否相同,以及对比测试图表的第一图表颜色与标准图表的第二图表颜色是否相同;
当第一图表类型与第二图表类型不相同,或者第一图表展现形式与第二图表展现形式不相同,或者第一图表颜色与第二图表颜色不相同时,确定测试图表与标准图表不相同。
在一种可能的实现方式中,图表颜色包括图表的各个条目项的颜色;第三处理模块对比测试图表的第一图表颜色与标准图表的第二图表颜色是否相同时,具体用于:
对比测试图表的各个条目项的颜色是否与标准图表的各个条目项的颜色对应相同;
若测试图表的任一条目项的颜色与标准图表的相对应条目项的颜色不相同,则确定第一图表颜色与第二图表颜色不相同,若测试图表的各个条目项的颜色与标准图表的各个条目项的颜色均对应相同,则确定第一图表颜色与第二图表颜色相同。
在一种可能的实现方式中,预定图表相似度比较算法包括差异哈希算法;第三处理模块在基于差异哈希算法,对比测试图表的第一图表样式与标准图表的第二图表样式是否相同时,具体用于:
将测试图表压缩为预定大小的目标测试图表,并将标准图表压缩为预定大小的目标标准图表;
将目标测试图表转换为256阶的第一灰度图,并将目标标准图表转换为256阶的第二灰度图;
对比第一灰度图中的各个像素值是否与第二灰度图中的各个像素值对应相同;
如果第一灰度图中的任一像素值与第二灰度图中的相对应像素值不相同,则确定第一图表样式与第二图表样式不相同。
在一种可能的实现方式中,该方法还包括第四处理模块,
第四处理模块,用于当第一图表样式与第二图表样式相同时,计算测试图表与标准图表之间的图表显示误差;以及用于确定图表显示误差是否小于或等于预定阈值;以及用于如果大于预定阈值,则确定测试图表与标准图表不相同。
一方面,提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行所述程序时实现上述的自动化测试方法。
一方面,提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现上述的自动化测试方法。
本申请实施例提供的自动化测试方法,通过预先设定的自动化测试系统,对生成的测试图表与标准图表进行图表文字、图表样式的全面对比,使得自动化测试系统能够将图表文字的比较和图表相似度的比较结合起来,从而实现全方位的自动化测试,从而不仅可以避免通过图表相似度算法进行比较时,因测试结果的数值存在极小偏差,导致测试图表与标准图表的相似度达到要求,而误认为测试用例通过的情况的发生,而且可以避免测试图表与标准图表仅在图表展现长度上因几毫米之差,而导致自动化测试用例不通过的情况的发生。
本申请实施例附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请实施例上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为目前使用的商业级数据图表echars柱状图示意图;
图2为目前使用的像素点对比示意图;
图3为本申请实施例的自动化测试方法的流程示意图;
图4为本申请实施例的测试图表与标准图表的一个示意图;
图5为本申请实施例的测试图表与标准图表的又一示意图;
图6为本申请实施例的测试图表与标准图表的另一示意图;
图7为本申请实施例的自动化测试装置的基本结构示意图;
图8为本申请实施例的自动化测试装置的详细结构示意图;
图9为本申请实施例的电子设备的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
目前,在对比图表形式的查询结果时,通常是将此次软件运行结果展现的图表下载到本地,再用提前准备好的正确图表与之对比,通过图表对比方法比较两张图表是否相等,来判断此次自动化测试结果,但是此方法并不是每一次都准确。如图1所示的商业级数据图表echars柱状图,可能会出现多次展现的柱状图形长度有几毫米之差,而导致自动化测试用例不通过的情况的发生,但是这种误差是可以忽略不计的,因为对于测试人员来说,判断测试结果的图表和正确图片是否相等的要素主要包括如下几方面:图表的展现形式,例如图表为竖形柱状图,图表颜色为蓝色,图表的X轴坐标为mon-sun,图表Y轴数据为10,52,200等等,只要两张图表的比较结果满足以上要求即认为其是相等的。然而,由于echars每次展现的时候可能会导致柱状图的长度有几毫米之差,而导致自动化测试结果为错误,使得必须测试人员再次登陆系统去判断自动化结果是否是真的错误,对测试人员造成极大工作量。
此外,仅通过比较图表是否相等并不能满足测试需求。于是,可以通过比较图片的相似度来判断此次自动化的测试结果正确与否,图片相似度算法分为多种,例如重心对比、投影对比、差异哈希算法、基于卷积神经网络方法、还有如图2所示的像素点对比。如图2所示,一共100个像素点,只有第5行第1列的数值是不一样的,所以相似度为99/100,这样就解决了echars图形每次展现的时候有几毫米偏差的问题,虽然偏差后的相似度在98%~99%之间,但是此方法也存在一定的缺陷,如果仅仅是存在一个数值之差,比如89.0和89.1,那么它们的相似程度也可能是98%~99%。但是数值的偏差是无法接受的,哪怕是0.001的偏差都是系统bug(缺陷)导致,不能认定自动化测试结果为通过。
因此,即使测试结果与正确结果之间的相似度达到了98%~99%之间,测试结果也未必是通过的。所以需要以一种方式告知自动化测试系统究竟什么样的图片才算真正的相等,即数值不得有误差,图形颜色不得有误差,图形展现形式不得有误差,例如不得以横向柱状图形或者饼状图形来展现纵向状态图,而只能接受图表的柱状图形长度大小的误差。于是,若要真正做到产品功能的全方位自动化测试,就需要将提取图表的文字与比较图表相似度结合起来。
本申请实施例提供的自动化测试方法、装置、电子设备及计算机可读存储介质,旨在解决现有技术的如上技术问题。
下面以具体地实施例对本申请实施例的技术方案以及本申请实施例的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
本申请一个实施例提供了一种自动化测试方法,该方法由计算机设备执行,该计算机设备可以是终端或者服务器。终端可以是台式设备或者移动终端。服务器可以是独立的物理服务器、物理服务器集群或者虚拟服务器。如图3所示,该方法包括:
步骤S310,通过预先设定的自动化测试系统,执行预生成的测试用例,生成相应的测试图表。
具体地,测试人员通常通过预先设定的自动化测试系统来代替传统的手工测试,其中,测试人员在通过自动化测试系统来测试时,通过将预生成的测试用例输入到自动化测试系统中,从而通过自动化测试系统执行预生成的测试用例,进而生成相应的测试图表。
其中,测试人员可以根据需要事先设定相应的自动化测试系统,也可以根据需要事先编写相应的测试用例,以供自动化测试使用。
步骤S320,通过自动化测试系统,对比测试图表与标准图表是否相同,标准图表是根据测试用例预生成的正确图表,图表包括图表文字与图表样式。
具体地,在通过自动化测试系统生成相应的测试图表后,接着通过该自动化测试系统,对比测试图表与标准图表是否相同,该标准图表是根据测试用例预生成的正确图表,即自动化测试系统中预存储有根据测试用命预生成的正确图表,用来作为参考依据,以确定执行测试用例得到的测试图表是否正确。
具体地,在对比测试图表与标准图表是否相同的过程中,不仅需要对比测试图表与标准图表包括的图表文字是否相同,还需要对比测试图表与标准图表的图表样式是否相同,从而将图表文字的比较和图表相似度的比较结合起来,实现全方位的自动化测试。
步骤S330,当测试图表与标准图表不相同时,生成相应的提示信息。
具体地,当测试图表与标准图表比对一致(即相同)时,说明测试用例的执行结果是正确的,即测试用例通过测试。其中,测试图表与标准图表比对一致,不仅是指测试图表的图表文字与标准图表的图表文字相同,而且测试图表的图表样式与标准图表的图表形式相同。
当测试图表与标准图表比对不一致(即不相同)时,说明测试用例的执行结果是不正确的,即测试用例未通过测试。其中,测试图表与标准图表比对不一致,是指测试图表的图表文字与标准图表的图表文字不相同,或者测试图表的图表样式与标准图表的图表形式不相同。
本申请实施例提供的自动化测试方法,通过预先设定的自动化测试系统,对生成的测试图表与标准图表进行图表文字、图表样式的全面对比,使得自动化测试系统能够将图表文字的比较和图表相似度的比较结合起来,从而实现全方位的自动化测试,不仅可以避免通过图表相似度算法进行比较时,因测试结果的数值存在极小偏差,导致测试图表与标准图表的相似度达到要求,而误认为测试用例通过的情况的发生,而且可以避免测试图表与标准图表仅在图表展现长度上因几毫米之差,而导致自动化测试用例不通过的情况的发生。
在一种可能的实现方式中,在通过自动化测试系统,对比测试图表与标准图表是否相同的过程中,可以基于光学字符识别引擎,分别提取测试图表中的第一图表文字与标准图表中的第二图表文字;接着对比第一图表文字与第二图表文字是否对应相同;当第一图表文字与第二图表文字非对应相同时,确定测试图表与所述标准图表不相同。
其中,图表文字包括汉字、字母、数字及特殊字符中的至少一项。
具体地,在通过自动化测试系统,对比测试图表与标准图表是否相同的过程中,由于不允许测试图表的图表文字存在误差,即测试图表的图表文字与标准图表的图表文字必须完全相同,同时,为避免因图表文字的极小偏差,导致测试图表与标准图表之间的相似度符合测试要求,而造成测试用例的测试结果出错,所以可以先对比测试图表的图表文字(即上述的第一图表文字)与标准图表中的图表文字(即上述的第二图表文字)是否相同。
其中,当第一图表文字与第二图表文字相同时,再通过对比测试图表的图表样式与测试图表的图表样式是否相同,来确定测试图表与标准图表是否相同;当第一图表文字与第二图表文字不相同时,无需再对比测试图表的图表样式与测试图表的图表样式,即可直接确定测试图表与标准图表不相同,从而在一定程度上节约测试流程,提高测试效率。
具体地,在对比第一图表文字与第二图表文字是否相同的过程中,可以先基于光学字符识别引擎(例如tessreact引擎),提取测试图表中的第一图表文字,在提取第一图表文字的过程中,将提取到的第一图表文字按照预定的排列顺序进行排序,其中,该预定的排列顺序与预存储的标准图表的第二图表文字的排列顺序相同。在提到第一图表文字后,再对比第一图表文字与预存储的标准图表的第二图表文字是否对应相同,即依次对比第一图表文字的第一个文字与第二图表文字的第一个文字是否相同,第一图表文字的第二个文字与第二图表文字的第二个文字是否相同,…,依次进行,直到完成所有图表文字的对比。
具体地,当第一图表的各个图表文字与第二图表的各个图表文字对应相同时,则确定第一图表文字与第二图表文字对应相同,当第一图表的任一图表文字与第二图表中相对应的图表文字不相同时,则确定第一图表文字与第二图表文字非对应相同。其中,当第一图表文字与第二图表文字非对应相同时,确定测试图表与标准图表不相同。
其中,当确定测试图表与标准图表不相同时,生成相应的提示信息,以提示测试人员该测试用例的测试结果存在错误,即该测试用例未通过测试,以便测试人员登陆自动化测试系统去手动判断自动化测试结果是否真的错误。
在一个示例中,如图4所示,左侧为测试图表的示例,右侧为标准图表的示例,在实际应用中,可以通过Tesseract这一开源的OCR(OpticalCharacter Recognition,光学字符识别)引擎,来提取测试图表与标准图表中的图表文字(即图4中的数字),并按照预定的排列顺序对从测试图表中提取到的数字进行排列,得到[335 310 234 135],同时按照预定的排列顺序对从标准图表中提取到的数字进行排列,得到[335 310 235 135]。通过对比提取的第一图表文字与第二图表文字,得知第一图表文字中的234与第二图表文字中的235数值不相等,此时无需再对比测试图表的图表样式与测试图表的图表样式,即可直接确定测试图表与标准图表不相同。
在一种可能的实现方式中,当第一图表文字与第二图表文字对应相同时,基于预定图表相似度比较算法,对比测试图表的第一图表样式与标准图表的第二图表样式是否相同;若第一图表样式与第二图表样式不相同,则确定测试图表与标准图表不相同。
具体地,当第一图表文字与第二图表文字对应相同时,并不能确定测试图表与标准图表相同,还需要对比测试图表的图表样式(即上述的第一图表样式)与标准图表的图表样式(即上述的第二图表样式)是否相同,如果第一图表样式与第二图表样式不相同,则即使第一图表文字与第二图表文字相同,也确定测试图表与标准图表不相同,如果第一图表样式与第二图表样式相同,即第一图表文字与第二图表文字相同,且第一图表样式与第二图表样式相同,则测试图表与标准图表才有可能相同。
具体地,图表样式包括图表类型、图表展现形式及图表颜色等。在基于预定图表相似度比较算法,对比测试图表的第一图表样式与标准图表的第二图表样式是否相同的过程中,不仅要对比测试图表的图表类型(记作第一图表类型)与标准图表的图表类型(记作第二图表类型)是否相同,还要对比测试图表的图表展现形式(记作第一图表展现形式)与标准图表的图表展现形式(记作第二图表展现形式)是否相同,还要对比测试图表的图表颜色(记作第一图表颜色)与标准图表的图表颜色(记作第二图表颜色)是否相同。
具体地,在对比过程中,当第一图表类型与第二图表类型相同,且第一图表展现形式与第二图表展现形式相同,且第一图表颜色与第二图表颜色相同时,测试图表与标准图表才有可能相同。如果在对比过程中,一旦确定第一图表类型与第二图表类型不相同,则可以直接确定测试图表与标准图表不相同;同样地,一旦确定第一图表展现形式与第二图表展现形式不相同,则可以直接确定测试图表与标准图表不相同;同样地,一旦确定第一图表颜色与第二图表颜色不相同,则可以直接确定测试图表与标准图表不相同。
具体地,图表类型包括但不限于二维表格、柱状图、饼状图及拆线图等。在对比测试图表的第一图表类型与标准图表的第二图表类型是否相同的过程中,如果第一图表类型是柱状图,第二图表类型是饼状图,则可以确定第一图表类型与第二图表类型不相同,此时可以直接确定测试图表与标准图表不相同;如果第一图表类型是柱状图,第二图表类型也是柱状图,则第一图表类型与第二图表类型相同,此时并不能确定测试图表与标准图表是否相同,还需要继续对比测试图表的图表展现形式、图表颜色与标准图表的图表展现形式、图表颜色是否相同。
具体地,在对比测试图表的第一图表展现形式与标准图表的第二图表展现形式是否相同的过程中,如果第一图表展现形式是纵向的柱状图,第二图表展现形式是横向的柱状图,则可以确定第一图表展现形式与第二图表展现形式不相同,此时可以直接确定测试图表与标准图表不相同;如果第一图表展现形式是纵向的柱状图,第二图表展现形式也是横向的柱状图,则可以确定第一图表展现形式与第二图表展现形式相同,此时并不能确定测试图表与标准图表是否相同,还需要继续对比测试图表的图表颜色与标准图表的图表颜色是否相同。
具体地,在对比测试图表的第一图表颜色与标准图表的第二图表颜色是否相同的过程中,如果第一图表颜色是蓝色,第二图表颜色是黄色,则可以确定第一图表颜色与第二图表颜色不相同,此时可以直接确定测试图表与标准图表不相同;如果第一图表颜色是蓝色,第二图表颜色也是蓝色,则可以确定第一图表颜色与第二图表颜色相同。
其中,图表颜色包括图表的各个条目项的颜色,如果图表类型是柱状图,则图表的各个条目项是指柱状图中的各个柱状条,各个条目项的颜色是指柱状图中的各个柱状条的颜色,如果图表类型是饼状图,则图表的各个条目项是指饼状图中的各个扇形块,各个条目项的颜色是指饼状图中的各个扇形块的颜色。于是,在对比测试图表的第一图表颜色与标准图表的第二图表颜色是否相同的过程中,可以对比测试图表的各个条目项的颜色是否与标准图表的各个条目项的颜色对应相同,如果测试图表的任一条目项的颜色与标准图表的相对应条目项的颜色不相同,则确定第一图表颜色与第二图表颜色不相同,若测试图表的各个条目项的颜色与标准图表的各个条目项的颜色均对应相同,则确定所述第一图表颜色与第二图表颜色相同。
如图5所示,假如测试图表包括4个条目项,且第1个条目项的颜色是黄色、第2个条目项的颜色是蓝色、第3个条目项的颜色是红色及第4个条目项的颜色是绿色,标准图表也包括4个条目项,且第1个条目项的颜色是黄色、第2个条目项的颜色是蓝色、第3个条目项的颜色是橙色及第4个条目项的颜色是绿色,即测试图表的第3个条目项的颜色与标准图表的第3个条目项的颜色不相同,则可以确定第一图表颜色与第二图表颜色不相同。换言之,只有当测试图表的第1个条目项的颜色与标准图表的第1个条目项的颜色对应相同、且测试图表的第2个条目项的颜色与标准图表的第2个条目项的颜色对应相同、且测试图表的第3个条目项的颜色与标准图表的第3个条目项的颜色对应相同、且测试图表的第4个条目项的颜色与标准图表的第4个条目项的颜色对应相同时,才确定第一图表颜色与第二图表颜色相同。
具体地,上述的预定图表相似度比较算法包括差异哈希算法。在基于差异哈希算法,对比测试图表的第一图表样式与标准图表的第二图表样式是否相同的过程中,可以执行如下操作:首先,将测试图表压缩为预定大小的目标测试图表,例如压缩为9*8大小的目标测试图表,并将标准图表压缩为预定大小的目标标准图表,例如压缩为9*8大小的目标标准图表;接着,将目标测试图表转换为256阶的灰度图(记作第一灰度图),并将目标标准图表也转换为256阶的灰度图(记作第二灰度图);接着对比第一灰度图中的各个像素值是否与第二灰度图中的各个像素值对应相同,其中,将测试图表压缩为9*8大小的目标测试图表后,该目标测试图表中包括72个像素,同样地,目标标准图表中也包括72个像素;如果第一灰度图中的任一像素值与第二灰度图中的相对应像素值不相同,则可以确定第一图表样式与第二图表样式不相同,如果第一灰度图中的各个像素值与第二灰度图中的各个像素值均对应相同,则可以确定第一图表样式与第二图表样式相同。
在一种可能的实现方式中,在第一图表文字与第二图表文字相同的基础上,确定第一图表样式与第二图表样式相同后,仍然不能确定测试图表与标准图表是否真的相同,还需要继续对比测试图表与标准图表的图表显示误差是否在允许的误差范围内,如果不在允许的误差范围内,则可以确定测试图表与标准图表不相同,如果在允许的误差范围内,则可以确定测试图表与标准图表相同。
具体地,当第一图表样式与第二图表样式相同时,继续计算测试图表与标准图表之间的图表显示误差,并确定该图表显示误差是否不大于(即小于或等于)预定阈值,如果该图表显示误差不大于预定阈值,则说明试图表的与标准图表的图表显示误差在允许的误差范围内,可以确定测试图表与标准图表相同,如果该图表显示误差大于预定阈值,则说明测试图表与标准图表的图表显示误差不在允许的误差范围内,可以确定测试图表与标准图表不相同。
如图6所示,测试图表中的箭头所指方向与标准图表中的箭头所指方向,由于图表每次展现时会出现一定的误差,比如箭头标识的范围距离可能存在几毫米的误差,即图表显示误差不大于预定阈值,在允许的误差范围内,在这种情况下,测试图表与标准图表之间的相似度在98%-99%之间,可以确定测试图表与标准图表相同。
图7为本申请又一实施例提供了一种自动化测试装置的结构示意图,如图7所示,该装置700可以包括第一处理模块701、第二处理模块702及提示模块703,其中:
第一处理模块701,用于通过预先设定的自动化测试系统,执行预生成的测试用例,生成相应的测试图表;
第二处理模块702,用于通过自动化测试系统,对比测试图表与标准图表是否相同,标准图表是根据测试用例预生成的正确图表,图表包括图表文字与图表样式;
提示模块703,用于当测试图表与标准图表不相同时,生成相应的提示信息。
本申请实施例提供的装置,通过预先设定的自动化测试系统,对生成的测试图表与标准图表进行图表文字、图表样式的全面对比,使得自动化测试系统能够将图表文字的比较和图表相似度的比较结合起来,从而实现全方位的自动化测试,不仅可以避免通过图表相似度算法进行比较时,因测试结果的数值存在极小偏差,导致测试图表与标准图表的相似度达到要求,而误认为测试用例通过的情况的发生,而且可以避免测试图表与标准图表仅在图表展现长度上因几毫米之差,而导致自动化测试用例不通过的情况的发生。
图8为本申请又一实施例提供的一种自动化测试装置的详细结构示意图,如图8所示,该装置800可以包括第一处理模块801、第二处理模块802、提示模块803、第三处理模块804及第四处理模块805,其中,图8中的第一处理模块801所实现的功能与图7中的第一处理模块701相同,图8中的第二处理模块802所实现的功能与图7中的第二处理模块702相同,图8中的提示模块803所实现的功能与图7中的提示模块703相同,在此不再赘述。下面对图8所示的自动化测试装置进行详细介绍:
图表文字包括汉字、字母、数字及特殊字符中的至少一项;
第二处理模块802包括提取单元8021与第一对比单元8022,如图8所示,其中:
提取单元8021,用于基于光学字符识别引擎,提取测试图表中的第一图表文字;
第一对比单元8022,用于对比第一图表文字与预存储的标准图表的第二图表文字是否对应相同;
第一对比单元8022还用于当第一图表文字与第二图表文字非对应相同时,确定测试图表与标准图表不相同。
在一种可能的实现方式中,还包括第三处理模块804,如图8所示,其中:
第三处理模块804,用于当第一图表文字与第二图表文字对应相同时,基于预定图表相似度比较算法,对比测试图表的第一图表样式与标准图表的第二图表样式是否相同;
第三处理模块804,还用于当第一图表样式与第二图表样式不相同,确定测试图表与标准图表不相同。
在一种可能的实现方式中,图表样式包括图表类型、图表展现形式及图表颜色;第三处理模块804具体用于:
基于预定图表相似度比较算法,对比测试图表的第一图表类型与标准图表的第二图表类型是否相同,以及对比测试图表的第一图表展现形式与标准图表的第二图表展现形式是否相同,以及对比测试图表的第一图表颜色与标准图表的第二图表颜色是否相同;
当第一图表类型与第二图表类型不相同,或者第一图表展现形式与第二图表展现形式不相同,或者第一图表颜色与第二图表颜色不相同时,确定测试图表与标准图表不相同。
在一种可能的实现方式中,图表颜色包括图表的各个条目项的颜色;第三处理模块804对比测试图表的第一图表颜色与标准图表的第二图表颜色是否相同时,具体用于:
对比测试图表的各个条目项的颜色是否与标准图表的各个条目项的颜色对应相同;
若测试图表的任一条目项的颜色与标准图表的相对应条目项的颜色不相同,则确定第一图表颜色与第二图表颜色不相同,若测试图表的各个条目项的颜色与标准图表的各个条目项的颜色均对应相同,则确定第一图表颜色与第二图表颜色相同。
在一种可能的实现方式中,预定图表相似度比较算法包括差异哈希算法;第三处理模块804在基于差异哈希算法,对比测试图表的第一图表样式与标准图表的第二图表样式是否相同时,具体用于:
将测试图表压缩为预定大小的目标测试图表,并将标准图表压缩为预定大小的目标标准图表;
将目标测试图表转换为256阶的第一灰度图,并将目标标准图表转换为256阶的第二灰度图;
对比第一灰度图中的各个像素值是否与第二灰度图中的各个像素值对应相同;
如果第一灰度图中的任一像素值与第二灰度图中的相对应像素值不相同,则确定第一图表样式与第二图表样式不相同。
在一种可能的实现方式中,该方法还包括第四处理模块805,如图8所示,其中:
第四处理模块805,用于当第一图表样式与第二图表样式相同时,计算测试图表与标准图表之间的图表显示误差;以及用于确定图表显示误差是否小于或等于预定阈值;以及用于如果大于预定阈值,则确定测试图表与标准图表不相同。
需要说明的是,本实施例为与上述的方法项实施例相对应的装置项实施例,本实施例可与上述方法项实施例互相配合实施。上述方法项实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在上述方法项实施例中。
本申请另一实施例提供了一种电子设备,如图9所示,图9所示的电子设备900包括:处理器901和存储器903。其中,处理器901和存储器903相连,如通过总线902相连。进一步地,电子设备900还可以包括收发器904。需要说明的是,实际应用中收发器904不限于一个,该电子设备900的结构并不构成对本申请实施例的限定。
其中,处理器901应用于本申请实施例中,用于实现图7与图8所示的第一处理模块、第二处理模块及提示模块的功能,以及图8所示的第三处理模块与第四处理模块的功能。收发器904包括接收机和发射机。
处理器901可以是CPU,通用处理器,DSP,ASIC,FPGA或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器901也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线902可包括一通路,在上述组件之间传送信息。总线902可以是PCI总线或EISA总线等。总线902可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器903可以是ROM或可存储静态信息和指令的其他类型的静态存储设备,RAM或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM、CD-ROM或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
存储器903用于存储执行本申请方案的应用程序代码,并由处理器901来控制执行。处理器901用于执行存储器903中存储的应用程序代码,以实现图7或图8所示实施例提供的自动化测试装置的动作。
本申请实施例提供的电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时,可实现:通过预先设定的自动化测试系统,对生成的测试图表与标准图表进行图表文字、图表样式的全面对比,使得自动化测试系统能够将图表文字的比较和图表相似度的比较结合起来,从而实现全方位的自动化测试,不仅可以避免通过图表相似度算法进行比较时,因测试结果的数值存在极小偏差,导致测试图表与标准图表的相似度达到要求,而误认为测试用例通过的情况的发生,而且可以避免测试图表与标准图表仅在图表展现长度上因几毫米之差,而导致自动化测试用例不通过的情况的发生。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现上述实施例所示的方法。其中:通过预先设定的自动化测试系统,对生成的测试图表与标准图表进行图表文字、图表样式的全面对比,使得自动化测试系统能够将图表文字的比较和图表相似度的比较结合起来,从而实现全方位的自动化测试,不仅可以避免通过图表相似度算法进行比较时,因测试结果的数值存在极小偏差,导致测试图表与标准图表的相似度达到要求,而误认为测试用例通过的情况的发生,而且可以避免测试图表与标准图表仅在图表展现长度上因几毫米之差,而导致自动化测试用例不通过的情况的发生。
本申请实施例提供的计算机可读存储介质适用于上述方法的任一实施例。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
以上所述仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

Claims (10)

1.一种自动化测试方法,其特征在于,包括:
通过预先设定的自动化测试系统,执行预生成的测试用例,生成相应的测试图表;图表包括图表文字与图表样式;所述图表文字包括汉字、字母、数字及特殊字符中的至少一项;
基于光学字符识别引擎,提取所述测试图表中的第一图表文字;
对比所述第一图表文字与预存储的标准图表的第二图表文字是否对应相同;所述标准图表是根据所述测试用例预生成的正确图表;
当所述测试图表与所述标准图表不相同时,生成相应的提示信息。
2.根据权利要求1所述的方法,其特征在于,
所述方法包括:当所述第一图表文字与所述第二图表文字非对应相同时,确定所述测试图表与所述标准图表不相同。
3.根据权利要求2所述的方法,其特征在于,该方法还包括:
当所述第一图表文字与所述第二图表文字对应相同时,基于预定图表相似度比较算法,对比所述测试图表的第一图表样式与所述标准图表的第二图表样式是否相同;
若所述第一图表样式与所述第二图表样式不相同,则确定所述测试图表与所述标准图表不相同。
4.根据权利要求3所述的方法,其特征在于,所述图表样式包括图表类型、图表展现形式及图表颜色;所述基于预定图表相似度比较算法,对比所述测试图表的第一图表样式与所述标准图表的第二图表样式是否相同,包括:
基于预定图表相似度比较算法,对比所述测试图表的第一图表类型与所述标准图表的第二图表类型是否相同,以及对比所述测试图表的第一图表展现形式与所述标准图表的第二图表展现形式是否相同,以及对比所述测试图表的第一图表颜色与所述标准图表的第二图表颜色是否相同;
若所述第一图表类型与所述第二图表类型不相同,或者所述第一图表展现形式与所述第二图表展现形式不相同,或者所述第一图表颜色与所述第二图表颜色不相同,则确定所述测试图表与所述标准图表不相同。
5.根据权利要求4所述的方法,其特征在于,所述图表颜色包括图表的各个条目项的颜色;所述对比所述测试图表的第一图表颜色与所述标准图表的第二图表颜色是否相同,包括:
对比所述测试图表的各个条目项的颜色是否与所述标准图表的各个条目项的颜色对应相同;
若所述测试图表的任一条目项的颜色与所述标准图表的相对应条目项的颜色不相同,则确定所述第一图表颜色与所述第二图表颜色不相同,若所述测试图表的各个条目项的颜色与所述标准图表的各个条目项的颜色均对应相同,则确定所述第一图表颜色与所述第二图表颜色相同。
6.根据权利要求3所述的方法,其特征在于,所述预定图表相似度比较算法包括差异哈希算法;基于差异哈希算法,对比所述测试图表的第一图表样式与所述标准图表的第二图表样式是否相同,包括:
将所述测试图表压缩为预定大小的目标测试图表,并将所述标准图表压缩为所述预定大小的目标标准图表;
将所述目标测试图表转换为256阶的第一灰度图,并将所述目标标准图表转换为256阶的第二灰度图;
对比所述第一灰度图中的各个像素值是否与所述第二灰度图中的各个像素值对应相同;
如果第一灰度图中的任一像素值与第二灰度图中的相对应像素值不相同,则确定所述第一图表样式与所述第二图表样式不相同。
7.根据权利要求3-6任一项所述的方法,其特征在于,该方法还包括:
若所述第一图表样式与所述第二图表样式相同,计算所述测试图表与所述标准图表之间的图表显示误差;
确定所述图表显示误差是否小于或等于预定阈值;
如果大于预定阈值,则确定所述测试图表与所述标准图表不相同。
8.一种自动化测试装置,其特征在于,包括:
第一处理模块,用于通过预先设定的自动化测试系统,执行预生成的测试用例,生成相应的测试图表;图表包括图表文字与图表样式;所述图表文字包括汉字、字母、数字及特殊字符中的至少一项;
第二处理模块,用于基于光学字符识别引擎,提取所述测试图表中的第一图表文字;对比所述第一图表文字与预存储的标准图表的第二图表文字是否对应相同;所述标准图表是根据所述测试用例预生成的正确图表;
提示模块,用于当所述测试图表与所述标准图表不相同时,生成相应的提示信息。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1-7任一项所述的自动化测试方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现权利要求1-7任一项所述的自动化测试方法。
CN201911219122.9A 2019-12-03 2019-12-03 自动化测试方法、装置、电子设备及计算机可读存储介质 Active CN110955603B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911219122.9A CN110955603B (zh) 2019-12-03 2019-12-03 自动化测试方法、装置、电子设备及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911219122.9A CN110955603B (zh) 2019-12-03 2019-12-03 自动化测试方法、装置、电子设备及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN110955603A CN110955603A (zh) 2020-04-03
CN110955603B true CN110955603B (zh) 2023-06-06

Family

ID=69979481

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911219122.9A Active CN110955603B (zh) 2019-12-03 2019-12-03 自动化测试方法、装置、电子设备及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN110955603B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114896175A (zh) * 2022-07-14 2022-08-12 深圳市明源云科技有限公司 报表导出功能的自动化测试方法、装置、设备及介质
CN117095418B (zh) * 2023-10-18 2024-03-01 深圳迅策科技有限公司 基于图片像素差异的表格对比方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107909088A (zh) * 2017-09-27 2018-04-13 百度在线网络技术(北京)有限公司 获取训练样本的方法、装置、设备和计算机存储介质
CN110287125A (zh) * 2019-07-04 2019-09-27 中国工商银行股份有限公司 基于图像识别的软件例行化测试方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8832659B2 (en) * 2010-12-06 2014-09-09 University Of Washington Through Its Center For Commercialization Systems and methods for finding concurrency errors
CN105912452A (zh) * 2016-04-05 2016-08-31 浪潮电子信息产业股份有限公司 一种自动化数据分析方法及装置
CN106383786B (zh) * 2016-09-27 2019-05-17 北京金山安全软件有限公司 一种接口压力性能测试方法、装置及电子设备
CN109726103B (zh) * 2018-05-14 2021-09-21 平安科技(深圳)有限公司 测试报告的生成方法、装置、设备及存储介质
CN109032919A (zh) * 2018-05-31 2018-12-18 深圳壹账通智能科技有限公司 App流量监控方法、系统、计算机设备和存储介质

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107909088A (zh) * 2017-09-27 2018-04-13 百度在线网络技术(北京)有限公司 获取训练样本的方法、装置、设备和计算机存储介质
CN110287125A (zh) * 2019-07-04 2019-09-27 中国工商银行股份有限公司 基于图像识别的软件例行化测试方法及装置

Also Published As

Publication number Publication date
CN110955603A (zh) 2020-04-03

Similar Documents

Publication Publication Date Title
US10769487B2 (en) Method and device for extracting information from pie chart
CN112750116B (zh) 一种缺陷检测方法、装置、计算机设备及存储介质
CN109740606B (zh) 一种图像识别方法及装置
US20190066333A1 (en) Information processing apparatus, method for controlling information processing apparatus, and storage medium
CN110955603B (zh) 自动化测试方法、装置、电子设备及计算机可读存储介质
KR20100073081A (ko) 전경/배경 분리 장치 및 방법
CN109508189B (zh) 一种布局模板处理方法、装置及计算机可读存储介质
US20230401691A1 (en) Image defect detection method, electronic device and readable storage medium
JP5246066B2 (ja) カテゴリ判定ルールの作成方法、装置およびコンピュータプログラム
CN115719326A (zh) Pcb板缺陷检测方法及装置
CN109726722B (zh) 一种字符分割方法及装置
CN105843972B (zh) 产品属性信息的比对方法及装置
CN115033487A (zh) 基于图像识别的自动化测试方法、装置、计算机设备及存储介质
CN107092702B (zh) 基于重叠比例的地理信息要素位置对比检查方法及装置
CN113837129A (zh) 手写签名错别字识别方法、装置、设备及存储介质
CN109409370B (zh) 一种远程桌面字符识别方法和装置
JP6118646B2 (ja) 帳票処理装置、帳票処理方法、帳票処理プログラム
CN108447107B (zh) 用于生成视频的方法和装置
CN106446902B (zh) 非文字图像识别方法和装置
CN112559342A (zh) 一种画面测试图像的获取方法、装置、设备及存储介质
CN118549450B (zh) 基于图像分析的电池密封圈缺陷检测方法及相关装置
CN113111713B (zh) 一种图像检测方法、装置、电子设备及存储介质
CN113886745B (zh) 页面图片测试方法、装置及电子设备
CN114549533B (zh) 模板图像存储方法、装置、设备及存储介质
US20240233163A1 (en) Image comparison device

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