今天跟大家分享一款好用的自动化测试工具——Katalon。
以下主要从Katalon介绍、环境准备、真机调试、编写用例、执行用例、关联GIT等几个方面展开描述。
Katalon介绍
在百度上搜索Katalon,有约1300000个搜索结果,也可以直接搜索官网查阅。
简单来说,Katalon对Slenium和Appnium做了封装,可以做Web和Mobile App的UI自动化测试。
今天我主要介绍Mobile App的自动化测试,从官网下载后结合自己公司的APP一步一步啃,目前已经跑起来了。
安装Katalon
访问Katalon官网,注册后可以免费下载安装Katalon Studio(简称Katalon),可支持Windows、Linux和Mac。
如若是初次使用Katalon,需要登录来激活。
Katalon Help
点击Help -> Katalon Help,可以查阅Katalon帮助文档,是Katalon入门的最佳指南。
环境准备
想要用Katalon做APP的UI自动化,需要准备:
1、jdk用1.8
2、nodejs
3、安装Appium
在安装了nodejs的基础上,Appium用1.18.3且非GUI版:
输入命令:npm install -g appium@1.18.3
图片备注:图里运行的时候报错了,是因为我桌面版的Appium也打开了,我把桌面版的关闭后就好了。
4、配置sdk环境
把 Android Sdk的build-tools和platform-tools拷贝到Katalon安装目录下:
备注:Android Sdk如果要最新版本需要翻墙去下载。
5、指定Appium安装路径
6、GIT
Katalon支持关联到GIT,方便管理与多人协作。
真机调试
测试机准备
1、用USB线连接到电脑;
2、进入手机设置- 系统-开发人员选项;
备注:打开开发者选项还有一个方法是进入手机设置- 系统-关于手机,连续(不断)点击版本号(7次以上),进入开发者模式,退出到上级菜单,开发者模式中,打开USB调试。
3、打开开发者选项;
4、打开USB调试;
5、在电脑上执行adb命令:adb devices -l;
6、检查设备是否连接成功。
如下是设备没有连接成功,碰到这种情况怎么操作?
拔掉连接线,重新连接USB,看到电脑上有这个标志:
点击手机的设置,打开USB连接方式,从仅充电切换到传输文件。
进入手机设置-系统-开发人员选项,打开USB调试(如果此时还是没有的话可以点击撤销USB调试授权,然后再重新打开USB调试,直至跳出是否允许USB调试的弹窗,点击确定)。
Spy Mobile
点击Spy Mobile,选择已连接的设备:
选择apk,点击Start,开始录制。
点击Capture Object:
点击Stop,停止录制。
编写用例
编写用例首先要熟悉这个工具怎么使用(图里只简单标注了3项,有兴趣了解全部功用可以上网百度)。
定位元素
手机连接在电脑上,点击Spy Mobile:
点击Start:
点击Capture Object,使Katalon加载的界面和手机显示的界面同步。
同理可得,如果Katalon加载的界面和手机显示的界面不同步,就点击Capture Object。因为有时候你会手动去点击手机显示的界面,假如我现在将手机界面点击到了个人中心,此时我需要去点击Capture Object,Katalon加载的界面才会到个人中心。
选中 “同意”,勾选方框,点击Capture Object,定位到元素。
添加到对象库:
备注:添加到对象库的元素还可按需修改(比如下图这个元素,工具自动定位的时候会把resourceid采集下来,但这个id是随机生成的,每次打开都不一样,导致用例执行的时候操作不到,所以我就把这一项去掉了)。
编写用例
举个例子:安装与卸载。
用例内容为安装APP,点击同意允许隐私政策,点击跳过按钮,点击新手引导的三个浮层,断言不再有浮层,最后卸载APP。
右击Test Cases - New Test Case:
Add-Mobile Keyword,添加步骤:
备注:Item选Tap,Object选择Object Repository录制的“同意”、“跳过”,指的是点击“同意”按钮。
这个页面汉化之后:
图片用例页以表格形式描述测试逻辑,每一行是一个测试步骤,每个步骤有以下几列:
1、内置关键字
所谓的“关键字”,代表了一个测试步骤所进行的操作。
关键字可以是一个操作网页的动作,如打开浏览器、点击、输入文字,也可以是一个测试操作,如对结果进行断言,工具中内置了数十种关键字,如:
点击“Add-Mobile Keyword”可以添加内置关键字。
2、自定义关键字
虽然内置关键字达到了数十个,但难免出现无法满足需求的情况,或者我们需要复用一连串的操作,这时可以使用自定义关键字简化我们用例的编写复杂度。
在Keywords组中,我们可以创建一个java类,然后在其中定义满足我们需要的方法,只需对方法使用@keyword注解,工具就会将其识别为一个自定义关键字。
区别于使用内置关键字时的“Mobile Keyword”,选择“Custom Keyword”可以使用自定义关键字。该模块需要编写用例过程中慢慢探索。
执行用例
在Test Cases执行
在Test Suites执行
总之,对于打开的用例,可以点击工具栏中的“三角号”执行按钮执行,也可以将用例添加到一个测试套件中执行。
关联到GIT
在公司的GIT创建新应用,按截图里执行命令:
具体操作(适合小白)
STEP1:
STEP2:
STEP3:直接在Katalon上Commit/Push/Pull。
扩展
前面我提到的是连接真机去做自动化,我们也可以用模拟器去做自动化,建议使用Android Studio。
模拟器比真机调试来得方便,但是否使用模拟器视项目实际情况而定。