AI-TestOps —— 软件测试工程师的一把利剑
Posted 敬 之
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AI-TestOps —— 软件测试工程师的一把利剑相关的知识,希望对你有一定的参考价值。
写在前面
最近偶然间看到一句话:“软件测试是整个 IT 行业中最差的岗位”。这顿时激起了我对软件测试领域的兴趣,虽然之前未涉及过软件测试,但对软件测试还是很看好的,每当提到它我第一个想到的词就是“自动化”。当看到这句话后很是不解,软件测试究竟有多么“不堪”?怀着这样的疑问我对该领域进行了一些了解。
同时还发现了一款很不错的自动化测试工具 AI-TestOps
,它在人工智能爆火的当下完美的与 Ai 进行了结合,初步体验后属实惊艳到了我。
软件测试的前世今生
软件测试(Software Testing)顾名思义就是对软件进行相关的测试,它是伴随着软件的产生而产生的。在早期的软件开发中,测试就是对软件进行相关调试,来纠正软件中的一些故障。调试通常是在代码开发完成、产品基本成型之后才会介入,也没有专业的人员来进行这项工作,基本上是由开发者在开发完成后自己来完成的。这个时期软件测试几乎被同等于代码调试。
这个格局被打破是在 1957 年,1957 年之后软件测试与调试被明确区分开来,它是一种专门发现软件缺陷的活动,由于“为了让我们看到产品在工作,就得将测试工作往后推一点”的思想,测试仍处于开发活动之后,目的就是用来确定自己的产品是否能正常工作。“先产品,后测试”。
直到二十世纪七十年代。1972 年美国北卡罗来纳大学举行了首届软件测试正式会议;1975 年 John Good Enough 和 Susan Gerhart 在 IEEE 上发表了《测试数据选择的原理》的文章,软件测试至此被确定为一种研究方向;1979 年 Glenford Myers 的《软件测试艺术》,正式对测试做出了定义:测试是为发现错误而执行的一个程序或者系统的过程
。
二十世纪八十年代早期,“质量”的号角开始吹响。软件测试定义发生改变,测试不单纯是一个发现错误的过程,而且包含软件质量评价的内容,还有着各类标准。1983 年 Bill Hetzel 在《软件测试完全指南》中指出:测试是以评价一个程序或者系统属性为目标的任何一种活动,测试是对软件质量的度量
。该定义至今仍被引用。
测试工具开始盛行
二十世纪九十年代,测试工具
开始盛行,人民普遍意识到工具不仅仅是有用的,而且要对今天的软件系统进行充分的测试,工具必不可少。近 20 年来,随着计算机软件技术的飞速发展,软件测试领域的研究取得重大突破,在单元测试、自动化测试、负载压力测试以及测试管理等方面涌现了大量优秀的软件测试工具。
虽然软件测试技术的发展很快,但是其发展速度仍落后于软件开发技术的发展速度,这使得软件测试在今天面临着很大的挑战:
- 软件在社会信息化和国民经济信息化中的作用越来越重要,产生的测试任务也越来越繁重;
- 软件规模越来越大,功能愈加复杂,如何进行充分而有效的测试成为难题;
- 面向对象的开发技术越来越普及,但是面向对象的测试技术却刚刚起步;
- 对于分布式系统整体性能还不能进行很好的测试;
- 对于实时系统缺乏有效的测试手段;
- 随着安全问题的日益突出,如何对信息系统的安全性进行有效测试与评估,成为难题。
AI-TestOps 云平台
有挑战自然就伴随着突破,人类文明本身就是在突破挑战的过程当中实现进步的!针对软件测试发展的一系列挑战,一站式自动化测试工具 AI-TestOps
云平台应运而生。
正如龙测科技创始人师江帆博士所提出的理念:“我们相信机器代替人类来做软件测试是大势所趋!”
一样,AI-TestOps 云平台利用现代 AI 技术及先进测试算法,彻底改变了目前手工及自动化软件测试形态。对于 UI 自动化测试,创造性提出 AI+机器人+模型(ARM) 技术来构建稳定快速的测试工具,即:AI 学习生成业务流程图,测试用户通过组合流程图成为积木图,机器人通过视觉和机械化方式稳定执行(下文有自动化测试流程演示)。因此 AI-TestOps 能快速、高效、低成本地完成 .EXE 应用、Web 应用、ios、android、小程序、混合应用的 UI 自动化测试。这种越来越 智能
的测试方式轻松化解了测试任务繁重、功能复杂等诸多测试难题。
在 AI-TestOps 中,包含着 APP 自动化测试
、Web 自动化测试
、Windows 自动化测试
,基于页面元素的识别和定位来模拟用户行为,凭借精细化的 Al 图像学习能力,通过 OCR、OpenCV 等技术进行 UI 元素定位——自动执行任务——生成可视化测试报告。还有 龙测机器人系统
帮助用户实现利用机械臂模拟人工进行测试,以及龙测 NLP
实现“书写”即“操作”,测试更加智能与高效。
● AI-TestOps 功能模块
AI-TestOps 工作台界面如下,整体上呈简约风格;
点击右上角的“帮助”可进入龙测操作手册,AI-TestOps 的各项属性功能与操作方法一目了然,新手快速入门。
在工作区,第一个菜单为“项目”,可支持 Web、Windows、Linux、MacOS、Android、iOS 类型创建。
进入某一项目,可看到该项目的各项指标,以及对其进行用例、测试、数据等配置。
工作区的第二个菜单为“应用”,可查看已有应用和上传应用;管理已创建的的 Android、Windows、Linux、MacOS、IOS 应用,同一软件可上传多个版本。
工作区的第三个菜单为“设备”,有公有设备和私有设备,私有设备需自己上传。
● AI-TestOps 自动化测试流程
这里以 Web 端测试我的 CSDN 主页为例,整个流程分为四步:创建 web 项目→录制流程图→创建测试任务→查看测试报告。
首先创建项目,填写项目的名称、类型以及待测试的 URL;
接下来进入项目,创建新的测试用例。在这里我们便会使用到 AI-TestOps AI学习生成业务流程图
功能;
选择一个空闲设备开始录制;
如下动态 GIF 图展示了整个录制过程。先点击“录制”,然后在被测试的网站中进行相关测试操作;
完成录制后点击暂停,随后选择“保存”;
保存之后回到主页就可以看到 AI-TestOps 为我们自动生成的流程图,流程图可以生成多个,最后搭建为积木图;
接下来选择“任务”,新建任务,列表备选的就是我们刚刚生成的流程图,选择;
任务创建成功如下,可以看到任务还在执行中,等待即可;
待任务状态变为“已完成”,点击“详细”可以查看该任务的各项参数。如果不成功,AI-TestOps 会自动分析失败原因;
以下是最终报告。
至此,自动化测试完成。
为什么要单将 AI-TestOps 云平台拿出来介绍,其实在实际上手使用之后可以明显感受到它的优势所在。就拿 AI 学习生成业务流程图这一个功能来说,我们要做的仅是在被测网站上进行测试操作和录制即可,至于流程图 AI-TestOps 则会自动帮我们实现,保证准确度的同时极大的节省了人力和时间。而且在测试完成之后,各项指标清晰明了,包括失败原因都为我们分析的很明确,直接省去了艰难又让人头大的找 bug 环节。正实现了所谓的“机器代替人类来做软件测试”,在我看来 AI-TestOps 堪称软件测试工程师的一把“利剑”。
为什么我会选择 AI-TestOps 让测试更智能
catalogue
写在前面
如今在IT行业中的测试岗位尤为重要,可谓是生产环境的最后一道防线,我们的愿景都是测试点头后绝无BUG,可见测试工程师在项目中的重要程度,我也跟测试同学聊过关于测试工作,如果说我们程序员是高重复工作,那测试可以说是完整复制工作,很多时候忙得焦头烂,做的都是完全一致的工作,同样的功能点无数次的尝试,无限的重复操作,因为重复所以耐心变差,不免会出现遗漏疏忽,如果有测开能力支撑起自动化测试那就很省事,但是对于一般同学来讲有没有可以不具备测开能力却可以享受自动化测试的办法呢?有的!龙测科技专为测试同学开发了AITestOps云平台——彻底改变劳动密集型测试行业,让测试越来越智能!
背景
龙测科技是一家专注于AI-TestOps软件测试的国家高新技术企业,也是一站式自动化测试工具提供商。龙测科技自创立以来一直深耕于软件自动化测试领域,成功构建一站式通用自动化测试平台—龙测AI-TestOps云平台。
龙测AI-TestOps云平台的核心理念是利用现代AI技术及先进测试算法,彻底改变目前手工及自动化软件测试形态。对于UI自动化测试,我们创造性的提出AI+机器人+模型(ARM)技术来构建稳定快速的测试工具。即AI学习生成业务流程图,测试用户通过组合流程图成为积木图,机器人通过视觉和机械化方式稳定执行。因此我们能快速、高效、低成本地完成.EXE应用、Web应用、iOS、Android、小程序、混合应用的UI自动化测试。
在ARM技术的支持下,龙测科技拥有涵盖市面上绝大部分软硬件系统的UI功能产品体系,凭借全球领先的测试代码生成器技术,测试代码一键自动生成等能力,为行业客户提供高效、可维护、低成本的自动化测试工具,为产品质量保驾护航。龙测科技先后获得苏州工业园区科技领军、杭州5213领军、苏州姑苏领军等称号,2020年完成数千万元Pre-A轮商业风险投资,2022年完成浙大系基金领投的数千万元A轮风险投资。龙测科技得到包括微信、潍柴动力、吉大正元、中国移动(苏研院)、咪咕动漫、中国电信、红星美凯龙、上海应用技术大学等各行各业知名客户的一致好评。我们相信下一代产品(龙测大脑和云工厂)将赋能各行各业(金融、教育、互联网、电商、直播等),并加速世界的智能化进程。
纵观AI-TestOps云平台
一款致力于彻底改变劳动密集型测试行业,让测试越来越智能!能够快速、高效、低成本地完成.EXE应用、Web应用、iOS、Android、小程序、混合应用的UI自动化测试,龙测AI-TestOps云平台的核心理念是利用现代AI技术及先进测试算法,彻底改变目前手工及自动化软件测试形态。在ARM技术的支持下,龙测科技拥有涵盖市面上绝大部分软硬件系统的UI功能产品体系,凭借全球领先的测试代码生成器技术、测试代码一键自动生成等能力,为行业客户提供高效、可维护、低成本的自动化测试工具,为产品质量保驾护航。
龙测AI-TestOps云平台解决痛点:
录制测试用例,用例完整度低
通过Selenium、Appium等多种控件定位方式,OpenCV、OCR等多种视觉定位方式,测试人员在录制、生成用例后,只需少量修改即可获得目标测试用例。
缺乏自动化工具,学习成本高
私有化部署,工程师现场支持、培训,测试人员轻松上手,结合客户现有的自动化管理过程,一周即可实现自动化测试。
回归测试量大,维护成本高
基于OCR和AI图像识别技术,自动化用例覆盖率高,大大降低后期脚本编写成本及维护成本。
用例及报告可读性差
龙测特有的流程图和积木图功能,将测试用例以图形的方式展现,测试报告提供视频回放和步骤截图,让BUG一目了然。
特殊场景无法使用
龙测机器人系统,模拟用户真实操作,完美解决银行账户、软件钱包、用户密码等黑屏录制问题,让涉及上述步骤的流程和录制不再中断。
龙测AI-TestOps云平台突出优势:
全类型软件
模型支持.EXE/Web/iOS/Android/小程序/混合应用的UI自动化测试
自动化支持
自动进行功能及接口用例设计、执行及报告
自动构造新用例
搭积木方式一键设计,更复杂、更高覆盖率测试用例集
可视化组织用例
金字塔方式,可视化组织大量测试用例
测试环境支持
一键初始化各类测试运行环境,包括Windows、Android、iOS、手持设备、Pad环境、密码器、POS机、扫描仪等
跨平台测试
AI+机器人+模型测试框架(ARM-TF)支持单平台录制,多平台播放
龙测AI-TestOps云平台产品介绍:
对于UI自动化测试,我们创造性的提出AI+机器人+模型(ARM)技术来构建稳定快速的测试工具。即AI学习生成业务流程图,测试用户通过组合流程图形成积木图,机器人通过视觉和机械化方式稳定执行。因此我们能快速、高效、低成本地完成.EXE应用、Web应用、iOS、Android、小程序、混合应用的UI自动化测试。基于页面元素的识别和定位来模拟用户行为,凭借精细化的AI图像学习能力,通过OCR、OpenCV等技术进行UI元素定位——自动执行任务——生成可视化测试报告。
进入平台
登录我们平台 👉 https://prod.dragontesting.com/login?source=22 如果你还没有可以免费注册哦,我们可以看到平台左侧的一级菜单分别是项目、应用、设备、订单,他们都是做什么的呢?项目管理展示登录账号在该公司下所有项目,应用管理展示所有的应用,设备管理包含共有设备和私有设备,升级为企业版可以注册私有设备,设备包含电脑和手机,企业管理可进行查看企业订单企业成员以及企业资料;
项目=》点击任意项目=》进入项目详情,我们可以看到上方有几项菜单,仪表盘:展示当前项目的数据以及情况,用例:包含流程图、积木图,任务:实时任务、定时任务、兼容测试任务,数据:全局变量、数据驱动表,元素:当前项目下所有的元素,配置:数据库、环境配置,AI:可以通过手机录屏上传视频AI会识别视频自动生成流程图。了解了项目那下面我们就自己搭建一个自动化测试流程吧!
自动化测试主流程
通过AI-TestOps云平台自己搭建一个自动化测试主流程:大致分为四步,首先新建项目=》项目内新建流程图=》创建测试任务=》查看测试报告;跟着我来进行一下实操吧!
创建项目: 点击项目=》右上角创建项目=》输入基本信息:项目名称自定义,类型我选择了一个web应用,测试URL我就用了 https://www.baidu.com/
软件版本填写了1,浏览器我选择了 chrome =》点击确认=》回到列表中就有了我们的demo测试项目。
新建流程图: 进入我们刚刚创建的项目=》选择用例=》新建流程图=》选择空闲可用的设备进行操作=》点击录制(这里呢设备默认会打开我们的URL地址,这里呢也就是百度,我们实现一个非常简单的 通过百度 然后查询找到CSDN然后找到几何心凉的主页)=》操作完成后命名保存即可,点击关闭我们的用例中就多了一个我们刚刚创建的流程图。
创建测试任务: 点击任务=》新建任务=》选择流程图(选择我们刚刚创建的流程图即可)=》选择用例(默认即可)=》选择设备(空闲设备可用即可)=》任务配置(默认就好我们自定义一个任务名称)》保存即可;
查看报告: 我们等待上方任务执行完成后=》点击详情=》点击查看报告,我们可以看到刚刚自动执行的每个小步骤详情,最终真的找到了几何心凉
到这里我们就创建了一个自动化测试流程,你完成了吗?等等。。。如果我在定时任务中去设置签到流程,那这样的话 我们就不会每天去平台签到了让他搞定不就好了么?小伙伴们可以进行尝试哦!
AI视频流程图
我们的平台中还有一个比较强悍的活动,就是AI视频流程图,它可以通过用户使用手机录制的视频然后进行解析最终自动生成流程图,下面我们就来尝试一下吧!
首先我们来创建应用,跟上面一样点击应用=》创建=》填写信息(这里我们选择安卓应用)其余信息可根据自身的实际app来选择
如果待测项目中没有我们需要的,我们可以通过拖拽上传我们的APP,然后我们点击创建好的项目,进入到项目中,点击上面的AI(目前只支持安卓APP使用,录制过程中操作不易过于快速)注意:录屏视频须带小白点触摸标记可在手机设置中开启该功能;下列是不同的手机型号开启方式;
按照要求开启小白点触摸标记后兵录制操作视频,录制完成后我们点击AI中右上角的上传视频按钮;
上传成功后列表中会展示我们上传的视频,我们等待AI分析完成
等待AI分析完成后,我们可以通过点击查看流程图来观看AI分析的结果;
点击播放来看一下具体的流程节点的操作步骤!和标准没有出入的话,我们的流程图就创建完成了,然后我们就可以根据上面的步骤创建测试任务,进行正式的测试了!小伙伴们赶快去尝试一下吧!我们平台的地址 👉 https://prod.dragontesting.com/login?source=22
以上是关于AI-TestOps —— 软件测试工程师的一把利剑的主要内容,如果未能解决你的问题,请参考以下文章