就是主要的测试对象是手机系统本身,而不是手机上的各种 app
和普通的 app 测试关注对象不太一样,所以这种项目,或者说是基于安卓的硬件项目,有没有什么比较新的玩法?
以前面试过手机厂商测系统的 QA,听下来测试思路也是一致的,无非是测试工具变了一下。
一个手机系统,分拆下来很多不同的功能模块,举个例子,内存管理模块。
内存管理模块分拆下来就不同的功能点需要测试,比如 app 后台管理策略、low memory killer 等。接着从功能层面,去构造现场,验证不同场景下具体策略或功能是否正常。
比如 low memory killer 是在低内存下按照给定策略杀 app,不同 app 会被赋予不同优先级,肯定会有黑白名单(比如微信可能被杀的优先级就低,因为是国民应用,乱杀会很影响体验),不同的资源占用和能耗影响又会影响优先级,这样分拆下来就很多细分场景和测试用例。本质上也是把一个功能细拆出很多场景逐个测,又因为没有可视化界面,就用到很多命令行工具。
可以试试 使用 https://github.com/openatx/uiautomator2 把 Android 系统各个模块做一个自动化