一站式通用软件测试一体化平台

开始测试

新功能速览

龙测手机农场

真机线上部署,无需手机即可完成的安卓/ios APP自动化测试。

线上手机直连测试

手机投屏,快速元素定位,通过点击即可自动生成流程图,一键运行自动化测试代码

我们能做什么?

工作流程

  • 模型构建
    人工构建
    自动构建
    业务流程图
  • 路径分析
    业务流程图
    进行路径分析
  • 生成代码测试
    页面流程
    输入/Assertion
    测试代码
  • 机器测试
    运行测试代码
    测试报告

模型构建有两种方式,人工构建(下面左图)和定制全自动化构建(下面右图)。

人工构建
业务流程图

人工构建是基于对软件的理解和动态分析,手工建立出两两页面之间关系,进而构成一个完整的业务流程图。

龙测1号(半自动)
预处理
程序字节码
程序静态分析
业务流程图

定制全自动化构建分2个步骤,预处理和程序静态分析。预处理是把手机App安装包抽取其中的应用代码;而程序静态分析是根据手机平台API的语义定义新型代码语义推到及解释进而构建两两页面关系,最终构成一个完整的业务流程图。

龙测2号(定制全自动化)

下面是构建的部分业务流程图(以小米贷款App为例):

路径分析根据业务流程图产生实例化的业务流程,包括各种功能组合。下面是以小米贷款App的部分具体业务流程为例。

1. 登录注册页面 --- click ---> 登录 ---> 登录小米账号页面 --- click ---> 登录 ---> 主页面 --- click ---> 去借钱 ---> 去借钱 ---> 立即贷款页面

2. 登录注册页面 --- click ---> 登录 ---> 登录小米账号页面 --- click ---> 登录 ---> 主页面 --- click ---> 我的信用 ---> 去借钱 ---> 信用分维护中页面

3. 登录注册页面 --- click ---> 登录 ---> 登录小米账号页面 --- click ---> 登录 ---> 主页面 --- click ---> 去借钱 ---> 我的红包 ---> 红包页面

下面是针对上面第一个业务流程,机器写的测试代码:

龙测1号产生的测试代码

final View VIEW_725 = findViewByTextAndType(“登录”,“ImageView”);//登录
solo.clickOnView(VIEW_725);
solo.sleep(2000);
final View VIEW_726 = solo.getText(“登录”);//登录
solo.clickOnView(VIEW_726);
solo.sleep(2000);
final View VIEW_727 = solo.getText(“去借钱”);//去借钱
solo.clickOnView(VIEW_727);
solo.sleep(2000);

针对版本迭代的bug趋势图以及测试用例个数趋势图:

趋势图

所有测试用例通过与否的报告,以及记录的每个测试执行过程:

NO. Inputs Scenarios Snapshots Assertions Statuses
TC 1 titleEdit contains:test… MainActivity-->click(ImBtn:newNote)-->EditActivity-->click()-->DIALOG-->click(Bth:No)-->EditActivity N/A OK
TC 2 titleEdit contains:test… MainActivity-->click(ImBtn:newNote)-->EditActivity-->click()-->DIALOG-->click(Bth:Yes)-->EditActivity N/A OK
TC 3 titleEdit contains:test… MainActivity-->click(ImBtn:newNote)-->EditActivity-->click()-->DIALOG-->click(Bth:No)-->EditActivity N/A OK
TC 4 titleEdit contains:test… MainActivity-->click(ImBtn:newNote)-->EditActivity-->click()-->DIALOG-->click(Bth:Yes)-->EditActivity N/A OK

产品优势

  • 速度快

  • 覆盖率高

  • 效果好

  • 成本低

测试代码编写效率极大提高(机器自动生成测试代码并运行,代替耗时长的人工编写测试代码方式):

类别 大公司测试部门 龙测1号 龙测2号
部门人员 5-10人 1-2人 0-1人
写测试代码效率 2-3个/天 >100个/天 >100个/分钟
业务流程 需要设计 不需要设计 不需要设计

重新测试快,运行时间短(与主流众测平台比对):

类别 百度MTC/云测众测平台 龙测1号
人力投入 3~5人 1-2人
重新测试 重新组织测试人员,重新收费并重新花几天时间来测试 >客户完全可以免费重新运行之前生成的测试代码
运行时间 工作时间 24小时×7天
高覆盖率 几百个测试用例 几百,上千甚至上万测试用例

目前所有公司的测试,根据需求,针对每个模块,都是通过人工进行独立设计,但是对跨模块的组合业务流程,很难人工设计。而对于龙测,其根据软件UI关系浓缩出业务流程图,系统化的生成针对单个功能模块以及对于跨模块的爆炸组合的各种业务流程,快速生成测试用例。

类别 其他公司 龙测
测试用例个数 几十/几百个 几百个/上千/上万个
模块组合 覆盖少 覆盖非常多(仅局限于时间和计算资源)
系统性 不系统 系统生成测试用例,并且数字化展示测试用例的覆盖率设计

目前所有公司的测试,根据需求,针对每个模块,都是通过人工进行独立设计,但是对跨模块的组合业务流程,很难人工设计。而对于龙测,其根据软件UI关系浓缩出业务流程图,系统化的生成针对单个功能模块以及对于跨模块的爆炸组合的各种业务流程,快速生成测试用例。

类别 手工测试公司(90%) 手写测试代码公司(10%) 龙测-机器写测试代码
回归测试 手工执行,有偏差 代码执行,无偏差 代码执行,无偏差
测试代码维护 在代码层面手工维护,维护量大工作量大 模型层面维护(一般变化不大),量小工作量小
分析定位问题 人工肉眼观察运行,并截图 自动录制,但需手工加录制功能的测试代码,增加工作量,人工写代码速度慢 自动录制,而且测试代码自动加录制功能,写代码非常快
发现问题 一般 一般 量大容易发现问题

以下比较是以App的复杂度为例,如果针对SaaS以及PC更复杂应用软件,那么成本差距会更大。

类别 大中型公司测试部门 龙测1号 龙测2号
测试代码开发时间 几十/上百人天 数人天 数分钟
测试开发工程师人数 5-10人 1-2人 0-2人

知名APP的BUGS

more bugs will come soon