• APP UI自动化测试常见面试题(一)


    1.Android APP 内存不足时,如何获得内存?

    系统优先结束被挂起(暂停)的进程,释放内存。

    2.APP 测试常见问题有哪些?原因有哪些?

    常见的有 crash、ANR(应用无响应、卡死),一般由设备碎片化、网络波动大、内存泄漏、代码编写错误。

    3.APP 自动化测试工具

    开放性问题,带点主观意见:

    1. 对比其他熟悉的自动化工具的优缺点; 

    2. 自动化的简要方案(简要的同时关键内容请具体)。

    4.Android 与 web 测试区别?

    相同点: 

    1. 设计测试用例均依据等价类、边界值等方法,测试原理相同;

    2. 大多数都采用黑盒测试方法来验证业务功能;

    3. 需要检查界面布局、风格和按钮是否美观、统一等(UI 测试); 

    4. 测试页面载入和翻页的速度、登录时长是否溢出等问题(性能测试);

    5. 测试应用系统的稳定性。

    不同点:

    1. 手机作为通信工具,通信等一些行为会对 APP 产生(中断测试);

    2. 手机用户对 app 产品的安装卸载操作:从上一版本/上两个版本直接升级到最新版本(安装卸载测试); 

    3. web 自动化测试使用的工具较常用的是 selenium,而 android 手机自动化测试比较常用的自动化工具是 monkey、monkeyrunner、Appium(测试工具不一样)。

    5.app 测试有哪几种环境?

    1. 本地环境:app 安装的手机环境和电脑搭建的自动化测试环境(比如安卓 SDK 等);

    2. 服务器环境:war 包部署的服务器,服务器可以通过浏览器访问。

    6.简单介绍一下 Android SDK 的安装步骤

    1. 下载 jdk 和安卓 sdk;

    2. 安装 jdk,配置环境变量(java_home、classpath、 path)。

    7.介绍移动应用及其服务端的测试点?

    1. 移动应用主要有权限、安装运行卸载、UI、功能、性能、中断、兼容性、安全性、 回归、升级更新、用户体验(app 的 11 大测试点);

    2. 服务端有接口测试、性能测试、安全测试。

    8.如何判断 bug 是客户端还是后台问题?

    这个要根据业务来,一般数据的问题前端的问题多些,一般做法是有问题提给前端开发, 他们知道是他们自己的问题还是后台返回的数据问题。

    9.安卓中如何取出日志信息

    1. 把安卓系统日志信息实时导入到本地:adb logcat -v time > d:mylog.log;

    2. 运行使用某个 app,实时获取该 app 的日志信息(cmd 里面的返回信息) :adb shell monkey -p com.android.calendar -v 1000 > d:mylog2.log。

    10.常见的 adb 命令

    1. 查看当前连接的设备:adb devices;

    2. 安装软件:adb install 路径xx.apk;

    3. 卸载软件:adb uninstall <包名>;

    4. 从电脑上发送文件到设备:adb push <本地路径> <远程路径> adb push C: est1.txt /sdcard/;

    5. 从设备上下载文件到电脑:adb pull <远程路径> <本地路径> adb pull /sdcard/test1.txt D:

    6. 实时获取日志:adb logcat -v time > D:mylog.log;

    7. 登录终端设备 shell:adb shell;

    8. 查找包名/活动名:adb logcat | findstr START (脚本中, cmp= 后面的值就是 包名/activity 名称);

    9. 启动 APP 启动;

    10. adb shell am start -n packageName/activity;

    11. 关闭 app 语法:adb shell am force-stop 包名;

    12. 监控 APP 启动时间 adb shell am start -W packageName/activity;

    13. Monkey 命令:adb shell monkey -v -p mypackage 50。

    11.APP 这么多主流机型如何测试

    我手机型号分别有魅族,华为,小米,iphone7、iphone8 、iphone8plus 、iphone x 测试兼容性,有些没有的机型,先借用同事的手机进行测试,同时申请公司购买,或者采 用云真机。

    12.App 崩溃(闪退)原因

    缓存垃圾过多:由于安卓系统的特性如果长时间不清理垃圾文件,会导致越来越卡也会出现闪退情况,运行的程序过多导致内存不足。

    应用版本兼容问题:如果应用版本太低,会导致不兼容,造成闪退。此外,有些新版本 在调试中,也会造成应用闪退。

    解决方法:如果是版本太旧,更新为新版本即可;如果是新版本闪退, 可能是应用在改版调试,可卸载后安装旧版。检查 APP 中访问网络的地方,组件中的 ImageView 是否可以正常的下载并显示到 app 页面上。检查 APP 的 sdk 和手机的系统是否兼容。在一些特定情况下的闪退,比如播放视频,在 Android5.0 升级到 Android6.0 的时候, 有些系统 API 老版本有,新版本没有,到时回去对象的时候失败,报空,系统就会出现闪退

    13.Appium 都有哪些启动方式

    • 客户端启动;

    • 命令行启动。

    14.安卓 UI 自动化测试工具

    appium:是一个移动端的自动化框架,可用于测试原生应用,移动网页应用 和混合型应用,且是跨平台的。

    robotium:是一款国外的 Android 自动化测试框架,主要针对 Android 平台的应用进行黑盒自动化测试,它提供了模拟各种手势操作(点击、长按、滑动等)、查找和断言机制的 API,能够对各种控件进行操作。

    15.Android 手机和 IOS 系统区别

    两者运行机制不同:IOS 采用的是沙盒运行机制,安卓采用的是虚拟机运行机制。

    两者后台制度不同:IOS 任何第三方程序都不能在后台运行;安卓中任何程序都 能在后台运行,直到没有内存才会关闭。

    IOS 中用于 UI 指令权限最高,安卓中数据处理指令权限最高。

    志之所趋,无远弗届,穷山距海,不能限也
  • 相关阅读:
    L2R 三:常用工具包介绍之 XGBoost与LightGBM
    连续特征自动离散化
    优化算法
    L2R 一:基础知识介绍
    深度学习--pytorch安装
    vim实用操作指南
    小贴士--Python
    setInterval和clearInterval应用小实例
    表单应用举例
    容器
  • 原文地址:https://www.cnblogs.com/feixiangtaiyang/p/15529260.html
Copyright © 2020-2023  润新知