• 0
  • 0
分享

面试中怎么分析面试官对你的提问

面试官问你什么内容的时候,其根本是为了了解你对这个东西的理解程度

1、讲自己的了解(知识)

2、讲自己的理解

你在面试官心目中,会是一个具有独立思考能力的人

问题1:你做过IOS测试吗?android和ios测试有哪些区别?

操作系统上的不同:

ios基于Unix的系统

Android基于Linux的系统

各个方向:

  • 操作

Android长按Home键呼出应用列表和切换应用,然后滑动终止应用

ios是向上滑动,终止应用

  •  渲染

Android是在数据层渲染应用

ios是在UI层渲染应用

  • 安装

Android是apk    Android的权限给的是底层的root权限

ios app     ios 给的仅仅是应用权限

  • 兼容

...其实就是在讲渲染

问题2:Android的重要组件有几个?分别是干嘛的?

4个重要组件:

1、Activity        监听用户屏幕操作,调用app底层操作的   一个枢纽--》用户和APP互动的枢纽

2、BroadcastReceiver 广播接收者     它是负责底层操作对Activity指令接受的

普通广播:广播类型、有序广播、无序广播

广播接收者会在Activity关掉之后,对应的广播失效  

广播接受者运行的机制是被运行,不会主动调起

3、 service 服务

服务类型

通过startService启动的服务    

服务周期: onstart--》onstartCommand---》onDestroy

通过onBind启动的服务

服务周期: onBind-》onUnBind---》onDestroy

service管理进程构建   举例:   音乐应用  后台播放  ,游戏应用  后台暂停

4、Content Provider(内容提供者)    

实现不同应用程序直接的数据共享

它不仅仅可以对应用程序实现数据共享,还可以选择性的共享;(安全性的考虑)

举例:当你登录的时候选择微信登录,会调用微信获取微信的用户数据

问题3:app测试和传统软件测试有什么不同?

1、页面布局

APP是负载在移动设备上(屏幕小)

pc屏幕大

所以测试的侧重点也不同

2、操作方式

  • app

触控

语音

键位

  • pc

鼠标

键盘

3、输入方式

  • app

屏幕的触控压力输入

语音识别输入

键位操作输入

  • pc

鼠标输入

键盘输入

4、使用场景

pc    电源稳定  电量 、场景固定  网络

app   电源不稳定  充电使用 、场景不固定  网络干扰较多

问题4:app闪退,如何给开发提供对应的日志

APP闪退会销毁原有进程;

所以APP闪退导致的问题,很多时候,在APP构建的源码中添加日志,无法确定异常所在;

首先要看设备日志;

获取Android崩溃日志

1、 logcat   

      导出   

      搜索:begin    crash    Exception    fatal   注意:要过滤包名

2、adb bugreport

3、手机的本地文件     问开发路径在哪        然后导出

4、手机监控平台   记录手机的cpu 、io、memoryinfo

问题5:app出现ANR,你会先从哪个角度去分析?

ANR 全称:application not responding 

分析思路:使用排除法去分析问题,对用的内容需要开发提供对应的日志监控,重现这个过程,去获取这个日志

1、触发机制   

服务超时    20s

广播超时    10s

内容提供者超时     5-10s

输入事件的超时      5s

2、日志

a.Trace日志:   广播超时阻塞

b. logcat :     

    搜索关键字:anr in  、low_memory、slow_operation

c.分析kernel:搜索日志中的lowmemorykiller

d.cpuinfo:监控,复查,确定问题的存在    内存、IO、cpu %

e.meminfo:    内存消耗偏高导致的问题            

问题6:app出现crach/崩溃,你会先从哪个角度去分析?

1、内存消耗

APP调用的所需内存超过了可用内存;

内存是有管理进程的---》每个APP在调用之前,是由内存管理者分配内存大小的---》内存分配的限制小于APP所需

2、程序的逻辑错误(代码的不严谨,或者考虑的不够周到导致的)

逻辑处理错误:数组越界、堆栈溢出、并发操作、逻辑错误

3、设备兼容性

APP在不同的设备上有不同的体现

4、网络因素

网速不好,导致APP所需的响应时间不足;所以导致crash

网络切换可能会导致

crash是可以被修复的,出现关闭或等待两个操作,进程还在

但是闪退不能被修复,进程被销毁了。 

面试中常见的一些工具的使用

jmeter

jmeter怎么运行测试用例
    运行方式:
        GUI运行:点击启动按钮
        非GUI运行/命令行运行: jmeter -n -t [jmx file] -l [results file]  -e -o [Path to web report folder]
 
     单线程提起多线程运行
鉴权怎么处理/测试?
鉴权:
cookie    配置元件 ---》  HTTP Cookie管理器
session   配置元件 ---》  HTTP Cookie管理器
                session生效方式是在cookie中 添加一个session_id字段
token      从上个接口的响应提取出来,传递给下个接口
 
签名(加密)   
     加密规则       
        1、拼接(时间戳,随机数,令牌,请求数据)后加密  所以我们根据加密规则伪造加密数据即可
        2、排序后拼接后再加密   所以我们根据加密规则伪造加密数据即可
跨线程数据怎么处理
        跨线程的数据传递   原理是:将私域变量声明为全局变量,从而可以全局引用  
             函数助手对话框   ${__setPropeyty(,,)}  声明  ,    ${__P(,)}  调用
             注意实现,声明和调用有先后关系;一定要声明在前,调用在后
        
jmeter中怎么使用函数和变量
        ${函数名}
        ${__V(函数拼接名${函数名}}
 
jmeter录制脚本的流程,和录制的原理是什么?
        流程 
            启动http代理     注意事项,在启动前要设置好目标控制器
            设置计算机网路代理
            运行被测项目
            停止http代理
            恢复计算机网路代理
      原理:
          网络代理的原理    
          理解:理解:好像BOSS和员工A之间传话的秘书(秘书能知道BOSS对员工A说了什么
,也知道员工A对BOSS 说了什么)
jmeter测试报告的生成
1、界面生成   查看结果树   聚合报告 
2、命令行生成     jmeter -n -t [jmx file] -l [results file]  -e -o [Path to web report folder]
3、ant
 
JMETER 持续集成   jenkins    CI / CD

fiddler

有一个已经上线的APP项目,你怎么测试?
        就是网络代理拦截数据,修改数据,然后传递服务器的过程
如果要测一个APP的不同的网络情况下的使用,你怎么测试?
        fiddler的弱网测试   网络代理 + 设置不同的网络传输字节情况
弱网测试执行步骤:
操作步骤1.设置要模拟的网络速度   
    (1)选中需要设置弱网的接口,自定义规则。Rules ->Customize Rules
      ( 2) ctrl+F 输入m_SimulateModem或者300,找到m_SimulateModem
      (3)更改上行、下行网络速度,Ctrl+S 保存
         注:
         request-trickle-delay:代表每KB的数据被上传时会被延时多少毫秒
         response-trickle-delay:对应下载时每KB的数据会被延时多少毫秒
2.开启网络延时
    ( 1 ) Rules->Performance->Simulate Modem Speeds
    (2)测试项目并记录数据
3.测试项目   
    注:测试完成后需恢复设置

postman高级部分

数据驱动   参数化
接口关联
断言
token  sesssion   cookie   
持续集成   jenkins    CI / CD

总结:

涉及的内容很多

定义层面的内容       如:操作系统

系统的详情    

整体的了解

 象征性意义的异常情况

比如:api
1、协议是什么?接口是什么?什么是接口自动化
2、对每个协议的理解
3、api测试和传统的测试有什么不同?
4、鉴权、接口加解密、接口关联、签名


作者:樱桃小丸子测试

原文链接:https://blog.csdn.net/qq_39270023/article/details/125192663

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   一、简介  我的jdk是1.8 Jmeter版本是3.3 其它可能会有冲突 导致不能正确安装 jdk和jmeter会有对应版本,大家注意。  二、打开Jmeter  在安装jmeter里面的bin目录下双击jmeter.bat文件即可本地启动。  三、添加虚拟用户组  入下图所示,右击“测试计划”,添加-Theard-线程组。 线程组:JMeter是由Java实现的,并且使用一个Java线程来模拟一个用户,因此线程组就是指一组用户的意思,这些虚拟用户用来模拟访问被测系统。  四、线程组常用设置  线程数:虚拟用户数,默认的输入是1,表明一个用户访问被测系统,如果想模拟100个用户...
            0 0 1121
            分享
          •   据报道,MetaPlatformCEO马克·扎克伯格周一宣布,该公司为对抗Twitter而推出的Threads服务在短短5天内就吸引了1亿注册用户,超过ChatGPT,成为有史以来最快达到这一目标的网络平台。  Threads上周三正式推出后,吸引大批名人、政客和新闻机构入驻。这被外界视作埃隆·马斯克旗下的Twitter所面临的第一次严峻威胁。  “这几乎都是有机需求,我们甚至还没有启动太多推广。”扎克伯格在宣布这一里程碑的Threads文章中写道。  事实上,该应用突破1亿用户大关的速度远超OpenAI旗下的ChatGPT。根据瑞士银行的研究,后者在发布大约两个月后,于今年1月成为全球增...
            0 0 1337
            分享
          • 前言:本篇讲堂是紧接【安全测试工具-进阶篇[XSS跨站点脚本漏洞(上)]】的内容。例牌,先说下安全测试工具的更新情况【工具地址:https://gitee.com/samllpig/SafeTool-51testing】1. 安全测试工具服务端增加前端脚本路由定位功能漏洞讲解:所属模块: (A7) Cross-Site Scripting (XSS) [跨站脚本漏洞]8.1.7 第七节主题:本节是个小测验,试试反射型XSS内容:测试XSS最重要的是确定可以注入的字段,并构造一段html标记和javascript代码,我们把它称之为有效载荷,将有效载荷注入到http请求中的所有可控参数...
            0 0 62
            分享
          •   日本国会已经完成了一项与欧盟非常相似的举措,即制定一项法律,禁止大型科技公司阻挡第三方应用程序商店的出现。该法案于 5 月在日本众议院获得通过,现在又于周三在参议院获得通过。根据现行程序,该法案无需经天皇签署即可成为法律。  该法案旨在促进竞争,降低应用程序价格。据报道,日本政府认为苹果和Google是双头垄断企业,它们向开发者收取高额费用,然后再转嫁给用户。  拥有应用商店的大型科技公司也将禁止公司优先使用自己的服务,Google可能受此打击最大。  违法者最初将被处以最高为违法具体服务国内收入 20% 的罚款。如果被罚主体放任这种行为持续下去,罚款可能会增加到 30%。  日本政府的公...
            0 0 171
            分享
          •   据报道,通用汽车公司一位高管表示,该公司正在探索ChatGPT的用途,作为该公司与微软公司开展广泛合作的一部分。  通用汽车副总裁斯科特 · 米勒(ScottMiller)上周说:“ChatGPT的应用将无处不在。”  米勒说,该聊天机器人可被用来获取关于如何使用车主手册中车辆功能的信息,或车库门代码等编程功能,或从日历中整合日程安排。  当地时间上周五,通用汽车发言人表示:“聊天机器人应用于汽车中这种转变不仅只是语音指令进化这单一功能,而是意味着客户可以期待他们未来的汽车整体上在新兴技术方面功能更强大更新颖。”  报道称,通用汽车正在研发一款使用ChatGPT人工智能模型的虚拟个人助理。...
            0 0 860
            分享
      • 51testing软件测试圈微信