移动app自动化测试面试

一. 面试过程

  1. 招聘要求
  2. 面试过程
笔试
一面技术
二面性格
三面薪酬
  1. 面试类型
压力面试
非压力面试
N对一面试
群面
情景面试
给定情景看应聘者在特点情景的反应
电话面试
  1. 问题类型
开放式问题
封闭式问题
  1. 注意事项
首因效应
近因效应
  1. 高效沟通
  2. 岗位级别
初级
中级
高级
资深/专家
二. 一个输入框引发的血案
测试以下页面中的输入框,你会测试哪些内容?
  1. 先确认问题,仅测试输入框,不考虑其他元素吗?
大范围
  • 功能性
    常规输入-数字,字符串,特殊字符,转义字符
    非常规有含义-html标签,css,js代码,url等
    输入内容边界-空字符,超长文本,边界值,边界值±1
    比如50个字符,49个英文,最后一个汉字,是否会切断传递后端
  • 兼容性
    根据产品的用户分布,手机品牌,分辨率,选择topN的机型
    根据产品不同浏览器的占有率,选择主要浏览器
    页面渲染,页面布局
  • 稳定性
    某一压力,搜索下,结果正常返回
    多次查询,返回内容的稳定性
  • 性能
    QPS 每秒处理的请求数
    点击按钮到页面完全加载的耗时时间
    接口处理时间
    页面渲染时间
    页面大小,资源的数量
  • 安全
    js注入
    sql注入
  • 接口
接口正确性
异常数据容错
非浏览器环境处理
  • 线上监控
    建立实时监控-保证线上服务质量
    及时发现异常情况,降低对用户的影响
  • 自动化
    基于selenium实现ui自动化
    例行回归验证,提高效率
小范围
  • 功能
  • 接口
  • 安全
  • 兼容
如果时间允许,我想从各个方面说一下我考虑到的内容
简历 技术能力
管理能力
学习能力
沟通能力
创新能力
团队协作
简历编写
文案简洁,格式清晰
概况说明,重点突出
多用数据,多用图表
了解测试流程
  1. 需求沟通
  2. 制定测试计划,测试方案
  3. 设计编写测试用了
  4. 准备测试环境
  5. 执行测试用例
  6. bug提交处理
  7. 回归验证
  8. 线上跟进维护
  9. 再次迭代
bug处理流程
  1. 新建
  2. 待修改
  3. 待验证
  4. 已验证
  5. 关闭
bug分级 优先级(高中低)
严重程度(高中低)
bug分类 ui
系统
接口
bug状态
  1. 新建
  2. 待修改
  3. 待验证
  4. 已验证
  5. 关闭
  6. 遗留
常用测试工具
fiddler
页面调试工具
web自动化工具
selenium
移动端工具
adb
monkey
monkeyrunner
移动自动化框架
appium
robotium
android uiautomator
selendroid
服务端压力测试
loadrunner
jmeter
数据相关
navicat
测试用例设计,管理
测试用例设计原则
测试用例设计方法
测试用例管理方式
工作效率,工作成功
基础
测试理论 测试分为几个阶段
单元测试
集成测试
系统测试
验收测试
测试流程
测试计划
明确测试什么
明确测试目标
测试项目开始,结束时间
明确测试方案
明确资料位置
测试用例设计方法
等价类划分
边界值分析
错误推测
正交表分析
场景分析
登录成功
购买成功
购买失败
登录失败
因果图
bug包含内容
bug标题简述
bug详细描述步骤
bug截图附件
bug优先级
bug严重等级
bug提交人
bug处理人
bug关联需求
bug提交日期
bug状态
bug所属模块
bug处理记录
分层自动化测试
ui自动化
接口自动化
单元测试
脚本有效性
定位有效,封装处理异常
流程有效,封装独立
数据有效,数据备份恢复
降低自动化维护成本
ui自动化不常变页面
接口自动化周期短,变动频繁
框架分层,用例与框架分离
测试覆盖类型
语句覆盖
判定覆盖
条件覆盖
判定条件覆盖
条件组合覆盖
路径覆盖
bs,cs架构区别
客户端服务器
qq
浏览器服务端
百度
安全测试包含内容
用户访问认证
数据传输加密
安全防护策略,安全日志,入侵检测,隔离防护,漏洞扫描
sql注入
js注入
测试报告包含
测试背景
测试范围
测试环境
测试方法
测试结果
质量分析评估
alpha与beta区别
用户在开发环境测试
用户在真实环境测试
bug类型
代码错误
需求与实现不一致
故障由于环境问题
异常,error
python 面向对象概念
程序设计思想
类:抽象,大范围
对象:某一具体实例
封装
继承
多态
进程,线程,协程
进程:独立数据空间,进程间不共享数据,系统调度。
线程:执行程序的最小单位,进程内线程共享资源,CPU调度
协程:程序员调度,分解一个线程成为多个微线程
【移动app自动化测试面试】字符串拆分
split
re.split()

    推荐阅读