测试基础 小弟,最近做了个移动端自动化的小项目,因为要获取运营商的一些参数信息从而有些疑问,希望大家指点下。

austim · 2020年10月23日 · 最后由 austim 回复于 2020年10月23日 · 5113 次阅读

首先我们公司是做通信的,现在需要控制手机进行一些上网操作(如刷视频、下载等),我需要一边上网一遍获取手机上网信息如基站信息、TAC 值、PCI 等。
领导给我提过的思路是通过安卓本身提过的一些接口方法实现https://my.oschina.net/u/2000932/blog/538693

小弟之前学过些 java 但是安卓开发没有学习过,所以就没用她提供的思路(还有一点就是我之前一些操作功能都是用 python 已经做的差不多了)。之后想了想就用了 adb shell 一些命令实现,这里也分享下,
adb shell "dumpsys telephony.registry | grep mServiceState",通过这个命令可以获取一些小区参数等,但是问题又来了部分手机(如华为)有些参数获取不到。

现在这个项目已经结束,感觉自己能力还是有点不足,其实用安卓本身提供的方法就很简单。因自己对安卓开发不是很了解,所以想问下移动端自动化测试是否
能直接调用安卓的一些方法,如果不能是否需要开发对应的 app 或者脚本?

可能描述的有点乱,大家希望大家指点,最近也是刚开始做这方面的自动化测试。

共收到 6 条回复 时间 点赞

ANDROID 操作系统碎片化会导致很多兼容性问题。
1.操作系统层面 6.0 之上需要请求用户权限,否则拿不到是正常的。
2.操作系统版本之间可能底层函数会有区别。
3.各家厂商的 FRAMEWORK 都是自己做的,可能会有小的偏差。
但是我依然无法回答你的问题,怎么测试?有问题我自己点,上线后靠崩溃日志。。。

对 magicyang 回复

真的很麻烦。各厂家手机各种魔改,许多文件或者方法没有权限访问必须 root,返回参数还不同。 为了考虑兼容性我许多功能直接用 adb 命令实现,像是拨打电话,发送短信等,但是依旧不能彻底解决。 重要的是我们测试的还是不是一个 app,而是目标手机卡在不同手机上的通话上网性能表现,使用传统的 appium 这些 ui 自动化更加不好兼容。

对 magicyang 回复

所以我就想是否可以直接学习下安卓开发,直接开发一个简单的 app 和脚本来调用原生安卓方法来实现,不知道各位是否以前有过这样的经历。 但。。。。这样成本是否有点高等于又自己做了个产品

对 austim 回复

我做过 3 年 ANDROID 开发,我做开发的时候基本没摸过底层服务。
试试看呗?但是希望真心不大。
我觉得小朋友,你首先要理解我要测什么?哪些是我们自研的,是需要测试的?然后才是用什么方法。
我多少还知道点通讯。小区切换速度是手机决定的么?这个在核心网,基站不能统计么?

对 magicyang 回复

我们测试的不是某个 APP,而是检测手机网络实时的一些信息像是 pci\tac\场强这些,具体什么产品因为涉及到保密不方便透露抱歉。看来还是自己太 low

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册。