System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及软件自动化测试领域,具体涉及一种基于图像特征匹配的元素识别方法及系统。
技术介绍
1、随着国产化进程的推进,国产操作系统的应用领域逐渐增加,而操作系统上兼容适配软件的稳定性和好用性也是用户持续关注的问题。自动化测试可以及时发现软件中的缺陷问题,能够保证软件的质量和提高测试过程中的整体效率。
2、对于所有gui自动化测试任务而言,如何识别被测控件元素是其首要问题和关键技术。与windows系统不同的是,国产操作系统的软件应用大多采取逆向适配的方式,传统的以开发框架和操作系统的api为基础的控件元素识别方法不适用于国产操作系统上的自动化测试,因此在控件元素识别时,需要采用其他识别方式,才能进行有效的元素控件定位。将元素控件定位方式应用到自动化测试平台中,完成国产操作系统上pc端的软件自动化测试。
3、中国专利技术专利“gui元素属性信息获取系统及方法”(申请号:202211384185.1),该专利技术涉及一种在国产麒麟操作系统上的gui元素属性信息获取系统及方法,该专利技术通过查询控件的控件名称方式获取gui元素属性信息,只需调用一个动态链接库的函数接口即可满足国产操作系统用户对gui应用控件属性信息获取的需求,识别准确率高、识别效率高。然而,该专利技术只适用于基于qt开发框架的图形用户界面应用的自动化测试,无法满足采用其他图形界面开发框架开发的应用的控件识别,适用范围小。
4、中国专利技术专利“图像匹配方法及手机应用测试平台”(申请号:201410557254.3),该专利技术公
5、中国专利技术专利“gui元素识别方法、装置及系统”(申请号cn201010137015.4),该专利技术公开了一种gui元素识别方法、装置及系统,该方法包括生成gui元素识别信息的方法,对所显示的gui进行分析,从而获得目标gui元素的属性信息,最终生成该目标gui元素的识别信息。该方法使用gui元素的xpath信息识别待测控件元素,比如,获取对话框中的return按钮的方式为:“/element[@text=form1’]/children/element[@text=form2’]/children/element[@text='return']”。该方法实现了gui元素属性信息组织方法,清晰展示gui元素属性。该方法存在两点不足:第一:该方法依赖操作系统的gui元素获取接口,在国产操作系统中缺乏相关查询接口,从而无法适用于国产操作系统应用场景。第二:属性获取方式较为繁琐,需要分级去查询元素的属性信息,容易出现定位失误的问题。
技术实现思路
1、为了解决上述技术问题,本专利技术提供一种基于图像特征匹配的元素识别方法及系统。
2、本专利技术技术解决方案为:一种基于图像特征匹配的元素识别方法,包括:
3、步骤s1:分析测试用例的操作步骤中待测控件元素,获取当前的屏幕背景图像以及待测控件元素图像,并分别记录所述待测控件元素图像和所述屏幕背景图像的保存位置;
4、步骤s2:对所述待测控件元素图像和所述屏幕背景图进行灰度化得到灰度图,基于所述灰度图构建尺度空间,并在所述尺度空间每一层寻找特征点,再对相邻层进行比较获得局部最大值,得到所述待测控件元素图像和所述屏幕背景图像的特征点集合;
5、步骤s3:对所述待测控件元素灰度图和所述屏幕背景灰度图的特征点进行二进制编码并计算二者之间欧式距离,得到匹配特征点对集合;
6、步骤s4:对所述匹配特征点对集合进行优化,剔除掉不正确的匹配特征点对,得到优化后的匹配特征点对;
7、步骤s5:根据所述优化后的匹配特征点对判断所述屏幕背景图像中是否存在所述待测控件元素,如果存在,则计算所述待测控件元素在所述屏幕背景图像中的相对坐标位置。
8、本专利技术与现有技术相比,具有以下优点:
9、1、本专利技术公开了一种基于图像特征匹配的元素识别方法,采用双线性插值法模拟实际屏幕分辨率,采用高斯模糊模拟同一应用图标在不同屏幕分辨率上的模糊程度,从而构建尺度空间,保证在多种屏幕尺寸下都可以识别到图像的特征点,完成图像匹配。
10、2、本专利技术对图像特征匹配后的结果进行优化,采用屏幕分块的方式选取特征点,将特征点拟合成最优匹配模型,获取距离最近的图像匹配结果,提高了元素识别和测试结果判断的准确性。
11、3、本专利技术提供的方法,在不同屏幕分辨率下均可以准确识别到元素,自动化测试平台可移植性强,能够适应于不同开发架构的软件和无法获取软件元素api的场景,对元素控件的识别范围广,识别准确率高,能够满足国产操作系统上大多数软件的自动化测试。
本文档来自技高网...【技术保护点】
1.一种基于图像特征匹配的元素识别方法,其特征在于,包括:
2.根据权利要求1所述的基于图像特征匹配的元素识别方法,其特征在于,所述步骤S1:分析测试用例的操作步骤中待测控件元素,获取当前的屏幕背景图像以及待测控件元素图像,并分别记录所述待测控件元素图像和所述屏幕背景图像的保存位置,具体包括:
3.根据权利要求2所述的基于图像特征匹配的元素识别方法,其特征在于,所述步骤S2:对所述待测控件元素图像和所述屏幕背景图进行灰度化得到灰度图,基于所述灰度图构建尺度空间,并在所述尺度空间每一层寻找特征点,再对相邻层进行比较获得局部最大值,得到所述待测控件元素图像和所述屏幕背景图像的特征点集合,具体包括:
4.根据权利要求3所述的基于图像特征匹配的元素识别方法,其特征在于,所述步骤S3:对所述待测控件元素灰度图和所述屏幕背景灰度图的特征点进行二进制编码并计算二者之间欧式距离,得到匹配特征点对集合,具体包括:
5.根据权利要求4所述的基于图像特征匹配的元素识别方法,其特征在于,所述步骤S4:对所述匹配特征点对集合进行优化,剔除掉不正确的匹配特征点
6.根据权利要求5所述的基于图像特征匹配的元素识别方法,其特征在于,所述步骤S5:根据所述优化后的匹配特征点对判断所述屏幕背景图像中是否存在所述待测控件元素,如果存在,则计算所述待测控件元素在所述屏幕背景图像中的相对坐标位置,具体包括:
7.一种基于图像特征匹配的元素识别系统,其特征在于,包括下述模块:
...【技术特征摘要】
1.一种基于图像特征匹配的元素识别方法,其特征在于,包括:
2.根据权利要求1所述的基于图像特征匹配的元素识别方法,其特征在于,所述步骤s1:分析测试用例的操作步骤中待测控件元素,获取当前的屏幕背景图像以及待测控件元素图像,并分别记录所述待测控件元素图像和所述屏幕背景图像的保存位置,具体包括:
3.根据权利要求2所述的基于图像特征匹配的元素识别方法,其特征在于,所述步骤s2:对所述待测控件元素图像和所述屏幕背景图进行灰度化得到灰度图,基于所述灰度图构建尺度空间,并在所述尺度空间每一层寻找特征点,再对相邻层进行比较获得局部最大值,得到所述待测控件元素图像和所述屏幕背景图像的特征点集合,具体包括:
4.根据权利要求3所述的基于图像特征匹配的元...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。