移动测试云平台--Firebase+Testin

Firebase

Firebase简介

Firebase是什么
  1. BaaS(Backend as a Service),后端服务系统,为移动应用和游戏开发者提供后端服务,服务包括结构化的数据存储、用户和权限管理、文件存储、云参数、云代码、推送、支付、实时通信等。
  2. Firebase创立于2011年,于2014年被Google收购,是一款实时数据云服务平台,旨在为APP提供一个实时响应的数据服务,该平台适用于iOS、Android、网页等各种跨平台上。到2017年,该平台开发使用者已达到100万。
  3. Firebase能让你的App从零到一。也就是说它可以帮助手机以及网页应用的开发者轻松构建App。通过Firebase背后负载的框架就可以简单地开发一个App,无需服务器以及基础设施。
    移动测试云平台--Firebase+Testin_第1张图片
Firebase的功能

移动测试云平台--Firebase+Testin_第2张图片
1. Test Lab
- Firebase Android 测试实验室提供了基于云端的基础架构以用于测试 Android 应用。
- 即使没有编写过任何测试代码,测试实验室也可以自动运行,查找崩溃问题。
2. Crashlytics
- 适用于Android、iOS
- Firebase Crashlytics是一个轻量级的实时崩溃报告解决方案,可帮助您对影响应用质量的稳定性问题进行跟踪、确定优先解决顺序并加以修复。
- Crashlytics 会对崩溃进行智能分组并突出显示导致这些崩溃的环境因素,从而节省问题排查的时间。
- 可以查明某个特定的崩溃是否影响到了很多用户
- 当某个问题突然变得严重时收到提醒
- 找出哪些代码行导致了崩溃
3. Performance Monitoring
- 适用于Android、iOS
- 使用Monitoring SDK收集的应用性能数据,在Firebase控制台中查看和分析这些数据
- 该功能目前处于测试阶段

Firebase官网(需要科学上网)
  1. https://firebase.google.com/

Test Lab For Android

一共提供了三种测试方法:Robo测试(不用编写代码)、Instrumentation测试、游戏测试。
移动测试云平台--Firebase+Testin_第3张图片

Robo测试
  1. 上传应用APK,Robo脚本(可选)
    移动测试云平台--Firebase+Testin_第4张图片
    FireBase中Robo测试涉及到的Robo脚本(Espresso Test Recorder,Android Studio自带的,超简单操作!),需要Android Studio设置“Firebase Test Lab Device Matrix”,貌似因为被墙的原因,连接失败。
  2. 选择物理设备和虚拟设备,可以选择型号、Android API级别、区域设置和屏幕方向。当选择Spark方案(免费)每日的测试配额为10台虚拟设备和5台真机,且在每个测试矩阵中最多可使用4台设备。
    移动测试云平台--Firebase+Testin_第5张图片
  3. 高级选项
    • 测试超时:Robo 测试可能需要 5 分钟或更长的时间,才能完成一整套的界面互动,具体视应用界面的复杂程度而定。我们建议对大多数应用至少设置 120 秒(2 分钟)的测试超时,对比较复杂的应用设置 300 秒(5 分钟)的测试超时。
    • 最大深度:可以设置测试的最大深度,从而配置 Robo 测试探索应用的深度。配置最大深度设置,可指示测试应探索应用界面的特定分支到多深的位置,然后返回界面的根目录(主屏幕)以探索其他分支。最大深度的默认值为 50。若值小于 2,则测试只会探索应用的主屏幕。
  4. 测试账号登录和预定文本输入
    • Robo 测试支持测试帐号登录,还允许在应用的字段中输入预定义文本。对于自定义登录和其他预定义的文本输入,Robo 测试可以在应用的 EditText 字段中输入文本。对于每个字符串,需要使用 Android 资源名称来标识 EditText 字段。
    • 登录分为:自定义登录和自动登录(应用具有使用 Google 帐号进行身份验证)。
  5. 与Google Play集成
    如果开发者使用 alpha 或 beta 测试版渠道上传和发布应用的 APK 文件,则可以在 Google Play 管理中心中使用 Robo 测试。Robo 测试可以在一组位于不同地理位置的常用真机设备上运行,测试范围可覆盖各种设备类型和硬件配置。
Instrumentation测试

测试实验室支持 Espresso 和 UI Automator 2.0 Instrumentation 测试框架。
可参考官方文档:
- Espresso https://developer.android.com/training/testing/espresso/index.html
- Robotium https://github.com/robotiumtech/robotium
- UIAutomator2.0 https://developer.android.com/topic/libraries/testing-support-library/index.html#UIAutomator

游戏循环测试

使用“演示模式”来模拟游戏应用中的玩家操作。可参考官方文档:https://firebase.google.com/docs/test-lab/game-loop?authuser=0

测试结果

所涉及到三个概念:
- 测试维度。 “测试维度”是一组相关的设备属性。测试实验室使用的维度为型号、Android API 级别、区域设置和屏幕方向。
- 测试作业。为测试矩阵选择的每个有效的测试维度组合都是一个“测试作业”。测试实验室支持一次采用最多 200 个不同的组合测试您的应用。在测试应用时,可以选择要使用的特定型号和 Android API 级别组合,以便有侧重地进行测试(例如,当验证问题修复情况时)。每个测试作业都有通过和失败两种可能。但只要有一个测试作业失败,则整个测试矩阵即会被标记为失败。
- 测试矩阵。 “测试矩阵”是选择的一组测试作业。当根据测试矩阵运行应用测试时,对于通过组合测试维度属性而创建的每个有效测试作业,都将获得其测试结果。
1. 测试矩阵
移动测试云平台--Firebase+Testin_第6张图片
2. 测试作业
移动测试云平台--Firebase+Testin_第7张图片
3. 测试维度
- 可查看到测试日志、屏幕截图、活动地图、视频、性能。(注:只有真机且API大于19才有相关性能测试数据,虚拟设备显示为空)
移动测试云平台--Firebase+Testin_第8张图片
- 也提供了源文件的下载,默认是保存90天。
移动测试云平台--Firebase+Testin_第9张图片
- 性能指标示例(CPU、Memory、Network)
移动测试云平台--Firebase+Testin_第10张图片

已知问题
  • 界面框架支持:Robo 测试仅与使用来自 Android 界面框架(包括 View 和 ViewGroup 对象,但不包括 WebView 对象)的界面元素的应用兼容。
  • 登录人机识别系统验证:如果用户在登录屏幕上除了输入登录凭据之外还需要执行额外操作(例如完成人机识别系统验证),则 Robo 测试将无法绕过登录屏幕。

Test Lab 收费标准

Spark(免费)

免费使用测试实验室,执行的测试不得超过每日配额:10 台虚拟设备和 5 台真机,且每个测试矩阵中最多使用 4 台设备。

Flame(即用即付)

免费使用测试实验室,执行的测试不得超过每日配额:10 台虚拟设备和 5 台真机,且每个测试矩阵中最多使用 4 台设备。

Blaze

不受每日使用量或测试矩阵大小的限制,每小时费率如下所示:
- 每台真机每小时5美元
- 每台虚拟机每小时1美元
- 费用按每分钟计算,且仅对运行测试所需的时间进行收费,安装应用或收集测试结果所需的时间不计费。运行测试矩阵后,可以在测试执行结果页面和测试矩阵结果页面上查看在每台设备上运行每个测试所需的时间。每个测试执行的收费时间将向上舍入到最接近的分钟数。

Firebase Crashlytics

支持Android、iOS两大平台,但需集成Firebase的SDK。

奔溃测试报告示例

移动测试云平台--Firebase+Testin_第11张图片

Performance Monitoring

  • 支持Android、iOS两大平台,但需集成Firebase的Performance Monitoring SDK。
  • 集成SDK后,无需编写任何代码,应用即可开始监控应用性能的几个关键方面:启动时间、前台活动、后台活动和 HTTP/HTTPS 网络请求。
  • 可以创建跟踪记录以了解应用在特定情况下的性能,例如加载新屏幕时。此外,可以创建计数器以统计在这些跟踪记录中定义的事件(例如缓存命中)数量。
  • Android入门文档:https://firebase.google.com/docs/perf-mon/get-started-android
  • iOS入门文档:https://firebase.google.com/docs/perf-mon/get-started-ios

Testin

目前Testin改版,需要账号验证企业才能使用部分测试功能,目前提供的免费功能:
- BUG探索测试,免费申请一次
- 自动化测试,赠送120分钟
- 远程真机调试,赠送120分钟
- 标准兼容测试,每日免费测试
- 自定化安全测试,每日免费测试
- 官网:https://www.testin.cn/

标准兼容测试

每日免费测试1次,机型为随机的100台设备(个人感觉都不是些主流的机型,有很多操作系统特别老的设备)。
移动测试云平台--Firebase+Testin_第12张图片
兼容测试报告,与老板报告内容相同,只是展现形式上的更新,主要分为测试概况、错误日志、性能报告三大模块。

测试概况

移动测试云平台--Firebase+Testin_第13张图片

错误日志

移动测试云平台--Firebase+Testin_第14张图片

性能报告

移动测试云平台--Firebase+Testin_第15张图片

远程真机调试

目前也提供了谷歌Android 8.0的真机调试,首次企业验证通过赠送了240分钟的免费使用权。
移动测试云平台--Firebase+Testin_第16张图片

自动化功能测试

testin有一个操作简单的自动化脚本录制工具:iTestin。在老版本可免费录制,且每日有免费配额可以测试,目前企业版必须购买自动化功能测试才能使用该录制功能。

你可能感兴趣的:(移动测试)