对于一般的传统的自动化测试工具,如:Selenium,robotFramework,QTP等。QTP可以通过操作录制生成自动化用例脚本。生成的脚本与Selenium、robotFramework类似,都是类方法的调用以及各种方法的参数的传递。对于一个学习者来说没有2-3年的工作经验,很验难熟练撑握。而且不同的人写的自动化用例风格不一样,维护起来非常困难,要求测试人员必须撑握一门计算机语言,如:VB、python等。如下所示,是使用robotFramework编辑器基于SeleniumLibrary库写的一个自动化测试用例。
元素操作之间要写sleep,测试人员要对每个操作方法熟悉、对于不支持的操作,测试人员要自已通过python脚本语言写用户自定义关键字。当执行自动化用例时,因某种原因导致服务变慢,也可能导致用例执行失败,因为sleep不够长,元素还没加载成功。如果使用robotFramework写自动化用例,一天写10个就很不错。并且每个人能力不同,对自动化用例封装效果也不一样,直接体现的将来用例维护的难易程度。
总结一下目前自动化用例测试的痛点问题
1、自动化用例实现成本高2、用例的维护成本高:(1)版本迭代更新较快,导致维护工作量大,建设速度跟不上变更速度 (2)人员变更,导致用例废弃或维护老用例非常困难 (3)元素定位不稳定,只要发生改变就导致用例执行失败3、用例建设效率低4、自动化工具对人员能力要求高,致少要撑握一门脚本言。如:python,vb等5、学习成本高,一般熟练撑握需要较长时间的学习与工作实践,1年或更长时间6、因第4、5点原因,导致自动化人员招聘的成本高,一般工资都在15K以上
基于AI特征的软件自动化测试软件的构思:
基于以上原因,期望能有一款基于AI特征的可视化快速生成软件自动化测试用例的工具,具有以下特征:1、元素定位操作稳定,即使元素定位属性发生变化不影响用例的执行,如:元素定位的采用ID时,当ID发生变化不影响用例执行2、检查点添加无需事后修改脚本,可以在录制过程,在界面自自动识别添加3、步骤之间的sleep无需要人工干预,工具可以自动判断是否执行下一步。4、不需要测试人员编写脚本,也不需要撑握编辑语言,这样可以降低对测试人员要的要求。5、录制生成的脚本可以基于可视化的意义组合步骤,生成新的用例。
基于AI特征的软件自动化测试软件可行性分析
对上述5点最困难的是1-3,要求软件自行具有AI算法,第1点要求不能基于元素的固定某个属性作为元素定位的依据,要通过一定的算法,才可以实现。第2点在录制的过程中能够自动识别界面元素,如同浏览器自带(按F12后,点下图标志处的按钮)工具一样,具有能自动识别界面元素的功能。
第3点要求自动化用例在执行过程中依赖指定的等待时间,能够自我识别是否应当执行下一步。也就在执行过程可以自动判断元素加载时间。第4点要求所有的自动化用例通够通过录制搞定,搞不定的了以能通过工具提供的策略解决。第5点要求呈现给使用者的不再一行行代码或表格,他应当是一个可编加的流程图之类图形化的展示。
基于AI的软件自动化的架构实现
kylinTOP测试与监控平台:自动化用例步骤展示
kylinTOP测试与监控平台:添加检查点
举报/反馈