AI Driven Testing的成熟度分析

AI-DT的级别划分

AI-DT(AI Driven Testing)也就是AI驱动测试,AI驱动测试是AI驱动完成测试工作和测试流程,帮助或者辅助测试工程师完成工作。在未来的测试工作中,测试工程师应该花费更多的时间来关注如何更加完善的测试来验证工程质量,而不是将全部的时间荒废在一遍一遍执行测试用例的无脑工作中。我们将AI-DT的成熟度氛围六级,具体如下。


Level 0: 原始级

处于原始级,测试工程师每天还在针对各个应用手写测试用例,一遍一遍的针对每次的release版本进行相同测试用例的执行。全部的精力都关注在如何更全面的测试上。没有人独立出来写自动化测试脚本,手工测试工程师负责完成自己撰写case的自动化测试脚本,将手工测试cases用测试脚本重复一遍。任何功能的修改都意味着测试用例和自动化测试脚本的人工维护。


在开发工程师对系统做了全面修改的时候,绝大部分测试用例全部都是失效,需要重新维护,并且验证全部的失效用例,来验证是否是软件缺陷。


Level 1:辅助级

AI-DT框架可以分析被测系统的修改是有效的更改,还是无效的更改。AI-DT框架通过AI算法辅助测试脚本的开发,通知AI-DT框架可以执行测试并决定测试结果是否通过,如果失败,框架将通知你验证缺陷的正确性。测试工程师来确定失效其是否是一个真实的bug。


AI可以辅助测试人员,当被测系统发生更改的时候,AI算法驱动测试完成全量的检测,避免人工重复执行大范围测试用例这样繁琐枯燥的工作。


Level 2: 部分自动化级

在部分自动化级,AI-DT框架可以学习应用系统用户角度的术语差异,能够对更改进行分组, 同时算法在不断地自我学习中可以自行更改这样的分组,同时可以通知测试工程师对应的更改,人工可以介入撤回更改。AI-DT 框架可帮助您根据基线检查更改, 并将繁琐的工作转化为简单的工作。但是人工还是需要review全部AI测试出来的bug,并进行确认。


Level 3: 有条件自动化级

在这一层级中,AI-DT框架可以通过机器学习完成基线的建立,自动的确定Bug。例如,AI-DT框架可以根据自我学的基线和先关规则来确定UI层的设计是不是合理((包括对齐、空白使用、颜色和字体使用情况以及布局)。在数据检查方面,可以通过自己的对比来确定页面显示的全部结果是否正确,接口返回结果是否正确。AI-DT框架可以再无人干预的情况下完成测试,测试工程师只需要了解被测系统和数据规则即可。及时页面发生很大的编号,但是正确逻辑无变化,那么AI-DT框架还是可以很好的学习和使用。A收集并分析全部的测试用例,通过机器学习等线管技术,人工智能系统可以检测到变化中的异常, 并只将异常提交给人工进行验证。


Level 4: 高度自动化级

AI-DT框架 可以检查一个页面, 并像人类一样理解它, 所以当它查看登录页面与配置文件、注册或购物车页面时, 它就会理解。因为它在语义上理解页面, 作为交互流的一部分的页面, AI-DT框架 可以推动测试。虽然登录和注册等页面是标准的, 但大多数其他页面则不是标准的。但是, 第4级 AI-DT框架将能够查看用户随着时间的推移进行的交互, 可视化交互, 并了解页面和通过它们的流, 即使它们是 AI-DT框架 系统从未见过的类型的页面。一旦 AI-DT框架 了解了页面的类型, 它就可以使用强化学习 (一种机器学习) 等技术, 自动开始驾驶测试。它可以编写测试, 而不仅仅是对它们的检查。


Level 5: 全量自动化(科幻小说)级

最后一级是全量自动化级,也叫科幻小说级自动化。在此级别上, AI将能够与产品经理进行对话, 了解应用程序, 并自行完全驱动测试。但考虑到没有人能够理解产品经理对应用程序的描述, 科幻小说级需要比人类聪明得多。


当今现在

当今绝大部分的自动化框架都是Level1辅助级别,同时都有往级别2上的发展,想要达到3级别,有条件的自动化还需要很多努力。但是达到4级及其以上还需要很久远的发展。

上一篇:Java的Override和Overload


下一篇:CephFS 常用命令以及问题分析