smartapp-cts

2.0.15 • Public • Published

smartapp-cts

介绍

smartapp-cts 是百度智能小程序一致性兼容测试套件,旨在为百度智能小程序生态联盟合作伙伴 APP 提供一致性兼容测试能力,从而让智能小程序在所有联盟 APP 上的运行拥有一致性的用户体验。

实现机理

以一个百度智能小程序(简称:CTS 小程序)为测试载体,在其中组合使用小程序各类 API、组件、框架时序等能力,

针对 CTS 小程序 使用 smartapp-automator(百度小程序自动化测试引擎)编写一系列自动化测试用例,

同时,针对一些无法自动化测试的能力(如,音视频组件等能力),在 CTS 小程序 提供引导式的手动测试用例,

从而形成对百度智能小程序提供的各项能力的全面测试覆盖。

再通过为联盟合作伙伴提供本工具,指引一致性兼容测试进行。

快速开始

环境配置

  • 运行环境配置:

工程配置

请在你的工程目录里运行以下命令,安装 smartapp-cts :

$ npm i smartapp-cts --save

进入工程目录

$ cd ./node_modules/smartapp-cts

安装npm依赖

$ npm run build

用例执行器

$ node ./runner.js

运行 node ./runner.js --help 即可根据命令行提示,得到 ./runner.js 的使用方法:

Usage: node ./runner.js [options]

Options:
  -V, --version                     CTS Runner Version
  -O, --token <token>               [必传]执行密钥
  -DL, --deviceList                 展示当前连接的设备 ID 列表
  -D, --deviceId <deviceId>         指定待测设备 ID (default: 连着的第一台设备)
  -P, --package <package>           指定待测宿主 APP 别名 (default: "baidu")
  -T, --deviceType <deviceType>     指定待测设备类型 (default: "android")
  -S, --suitePath [suitePath]       指定待执行用例路径 (default: [])
  -W, --wdaProjPath <wdaProjPath>   WDA 项目的绝对路径 (default: ~/WebDriverAgent/WebDriverAgent.xcodeproj)
  -A, --autotest <autotest>         是否运行自动化用例 (default: true)
  -L, --level <level>               能力级别 L1 ~ L4 (default: 4)
  -C, --canIUse <canIUse>           是否开启 canIUse 前置校验 (default: true)
  -R, --retry <retry>               是否开启 retry 功能 (default: true)
  -ST, --singleTest <singleTest>    单测模式 (default: false)
  -PN, --packageName <packageName>  包名
  -SH, --schemeHead <schemeHead>    协议头
  -SC, --scheme <scheme>            scheme 格式
  -h, --help                        display help for command

自动化测试

执行测试

方式一:

自定义执行宿主包名协议头scheme 格式

$ node ./runner.js -O ${token} -PN ${packageName} -SH ${schemeHead} -SC ${scheme}
方式二:

使用底层定义宿主代号执行测试

$ node ./runner.js -O ${token} -P ${package}

已支持 package 参数列表:

  • baidu:手百 APP
  • baidulite:百度极速版
  • baiduMap:百度地图
  • baiduTomas:百度大字版
  • ...
方式三:

快捷方式

百度 APP 一致性兼容测试

$ npm run baidu ${token}

百度极速版一致性兼容测试

$ npm run baiduLite ${token}

百度地图一致性兼容测试

$ npm run baiduMap ${token}

百度大字版一致性兼容测试

$ npm run baiduTomas ${token}

报告查看

用例执行后会自动生成测试报告置放于 ./report 目录下。

报告上传

宿主每天最多可 上传 3 次

node ./upload.js -R ${reportPath} -O ${token}

运行 node ./upload.js --help 即可根据命令行提示,得到 ./upload.js 的使用方法:

Usage: node ./upload.js [options]

Options:
  -V, --version                  CTS Upload Version
  -O, --token <token>            [必传]执行密钥
  -R, --reportPath <reportPath>  指定待处理报告目录
  -h, --help                     display help for command

手动测试

执行测试

与自动化测试相同,都调用 runner.js执行器,需要额外传递 -A false 参数

$ node ./runner.js -O ${token} -PN ${packageName} -SH ${schemeHead} -SC ${scheme} -A false

报告上传

宿主每天最多可 上传 3 次

点击首页 提交测试结果 按钮即可提交报告。

Q&A

Q:谁在维护 smartapp-cts

百度小程序测试团队&百度小程序测试中台

Q:当前支持哪些 APP 运行 CTS ?

当前支持:百度 APP、百度地图、百度极速版...

更新日志

详细日志参考:ChangeLog

  • 2021.11.22 发布 v1.8.0 版本,支持宿主工具产品化升级需求
  • 2021.09.10 发布 v1.7.1 版本,支持宿主分级测试,新增部分功能日志打点
  • 2021.09.01 发布 v1.6.1 版本,报告服务代码优化,支持多次 retry 功能
  • 2021.08.12 发布 v1.5.5 版本,已知 bug 修复,稳定性优化
  • 2021.07.26 发布 v1.4.1 版本,新增图片背景色比对本地算法
  • 2021.07.20 发布 v1.3.1 版本,测试报告展示信息优化,token鉴权修改
  • 2021.04.01 发布 v1.2.0 版本,AI相关能力切云端
  • 2020.11.13 发布 v1.1.0 版本,支持 Mac 电脑操控 IOS 手机运行 CTS 自动化测试用例,支持报告上传
  • 2020.10.30 发布 v1.0.0 版本,支持 Mac 电脑操控 Android 手机运行 CTS 自动化测试用例

Readme

Keywords

none

Package Sidebar

Install

npm i smartapp-cts

Weekly Downloads

250

Version

2.0.15

License

MIT

Unpacked Size

205 kB

Total Files

45

Last publish

Collaborators

  • sharenaive
  • john_rush
  • cola1158868816
  • huopei