热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

头条面试问答

问:在你之前工作中有什么BUG是让你印象深刻的?答:略。(建议:准备的BUG最好是能体现出你的逻辑性的&#x
  1. 问:在你之前工作中有什么BUG是让你印象深刻的?

答:略。(建议:准备的BUG最好是能体现出你的逻辑性的,针对BUG运用了哪些措施去定位BUG,比如:看日志/抓包等);

 

  1. 问:随便一个手机计算器的用例编写

答:大致从三个方面考虑

  1. UI界面:看看计算器的UI界面设计是否与需求文档给定的一致;
  2. 功能:a.计算器上面的按钮是否正常输入且显示正常,且是否有提示音;

b.计算器上的运算规则是否符合四则运算规则;

c.当只输入小数点,再输入数字时,是否会自动补全;

d.当只输入运算符,再输入数字,再选择”=”,是否有运算结果;

e.当输入一个含有多个运算符的等式时,运算策略是否会满足四则运算规则(比如:1+2*3);

f. 当输入计算器的最大字符数时,计算器是否能正常显示;

g.当运算的结果超过计算器最大的显示字符时,计算器是否能正常显示;

h.当输入负数时,显示和运算结果结果是否正常;

i.连续输入多个运算符时,计算器的运算处理逻辑是否正常;

j.当0作为被除数的是否,计算器是否能处理正常;

k.当除法的结果是一个无限循环/不循环的数时,计算器是否能正常显示;

3)非功能:a.从安装卸载:因为计算器是系统自带的,如果要卸载的话需要ROOT,比较麻烦,如果手机获取了ROOT权限,这块也可以测试,但是一般只有非系统自带的软件测试的时候都需要考虑这点;

   b.兼容性:这块兼容性的话只能测试同品牌手机;

   c.网络:因为计算器和网络无关,所以对于网络来说,这块可以不用考虑;

   d.数据库:因为不涉及到数据库,所以这块也不考虑;

   e.安全性:因为不涉及到安全性,所以这块也不考虑;

   f.交互性:比如在计算数字的时候,界面切换到其他APP上了,等界面再切换回来的时候,原先输入的数字等是否还能正常显示;或者是和手机的电源键/HOME/回车/音量键/菜单键等是否都能保持正常功能;

 

  1. 问:公司的项目流程是什么?

答:产品先编写初步的需求文档à进行需求评审后产出确定版的需求文档à开发针对需求文档来编写设计文档à测试人员通过需求文档和设计文档来编写测试用例à测试人员主持用例评审à开发需求功能代码编写完以后进行接口测试à接口测试没问题后发布提测单à测试人员对提测单先进行一轮冒烟测试,目的是看看提测单的代码稳不稳定,不稳定就打回给开发继续编写à稳定后的代码,测试去执行测试用例à有缺陷,分析定位缺陷原因并只给相应的解决人à当缺陷解决后,进行回归测试à回归测试完成,都没问题了,再进行灰度测试à最后再进行项目上线

 

  1. 问:如果遇到缺陷,平时都是怎么去工作的?

答:可以通过好几种方法来定位缺陷发生的位置

  1. 通过看日志的方法,也就是adb logcat命令去获取手机软件的所以日志,然后分析问题出现的位置及原因;
  2. 通过抓包的方式,我用Charles抓包工具去抓取客户端是否将相应的数据包发送出去,如果在数据包中没有发现应该发送的字段名和字段值,那么就是问题就是出现在客户端;如果在数据包中发现了应该发送的字段名和字段值,但是页面反馈出现错误提示,那么这个缺陷是服务端出现的问题。

 

  1. 问:你们在工作中一般用adb命令做什么?

答:主要做日志的抓取以及做软件的压力测试,也就是跑monkey命令;

问:那你们都跑什么样的monkey命令,你给我写一个?

答:给你写一个完整版的monkey命令

第一步:首先要获取你要测试软件的包名  aapt dump badging ****.apk

第二部:通过解析的包名去编写相应的monkey命令

adb shell monkey –p 包名 s 1 –pct-touch 10% -pct-nav 10% -pct-motion 30% -pct-majornav 30% -pct-trackball 20% -ignore-timeouts –ignore-crashes –throttle 300 –v –v 200000

第三步:分别解释了每个字段值所代表的涵义

 

  1. 问:如果在项目中遇到了不可控因素,比如:原来项目计划好的测试排期,因为开发的原因导致占用了原来测试的日期,但是为了让项目能够按照正常排期的结束,你会怎么做?

答:首先我会从这几个方面去考虑

a:针对此现象,我会看看是否能够做资源调配,人员上的资源就是将其他组的测试人员临时调配过来,然后让他们去测试一些简单的,没有什么测试逻辑的用例,来support一下我们测试;设备上就是针对我们测试所需要的工具,设备,环境,配置等资源,要优先让我们去使用;

b:第二个就是可能会适当的选择加班来完成

c:第三个如果真的没有办法了,我可能会询问下我的测试负责人,是否可以和项目负责人商量一下这个项目能够适当的延后。

 

  1. 操作题:针对给定的计算器app,做测试。

一般就执行你之前对计算器写的测试用例即可。

 

  1. 问:你们一般都是用什么工具去做自动化的?

答:主要用appium去跑日常app的主流程测试。

问:那你写过自动化脚本吗?

答:写过一点,我进入这个项目组后,我的测试领导要我去整理软件的主流程,也就是不管我从哪个入口进去,我的最终落地页都是我的商品详情页。所以我就写了所有到商品详情页的流程脚本,期间发现我之前的那个测试人员少写了两个页面,于是我就给补上了。

逻辑题:

1.有无穷的水,给你一个5l杯子和一个6l杯子,问如何量出3l的水?

2.有两个沙漏,第一个沙漏需要4分钟漏完,第二个沙漏需要7分钟漏完,问如何及时9分钟?

项目题:(因为这次我的面试没有过多的问道项目上的东西所以问题比较少)

  1. 近期做过的项目的流程,简单介绍一下?
  2. 负责的模块介绍一下?
  3. 回归测试的策略?
  4. 项目里人员分配?
  5. 如果你发现一个bug开发拒绝修复然后上线了问你怎么办?

技术题:

  1. DNS是什么?
  2. Linux命令说几个你常用的?
  3. Selenium定位方式?
  4. 工作中怎么用的?(我说的复用之前的脚本,我负责维护一下case,然后他就没继续问)
  5. 代码会么?了解java?说一下数据类型有哪些?
  6. java数组会么?数组里面都能写什么类型的数据? 
  7. 他写了一个代码。给你一个数组其中里面有两个数相加是等于8,让你写怎么找出那两个数的代码
  8. java99乘法表
  9. Fiddler的怎么抓包?
  10. Jmeter怎么用?
  11. Jmeter参数化怎么用?
  12. Jmeter函数库用过么?(这一块他说了一个英文单词然后我不懂,我直接说的不清楚,应为我做的项目中涉及的少,这部分也都是自学,所以如果以后咱们项目有需要的话我会去学习)
  13. Adb命令会么?说几个常用的
  14. Monkey命令参数,—p后面跟什么?包名怎么查?
  15. 怎么定位是前端的问题还是后端的问题?(这个时候说fiddler)
  16. Fiddler你都会什么操作?
  17. Fiddler怎么修改响应?

 

  1. 微信修改照片功能怎么测?
  2. 我的回答:按照点线面体的思路去挨个说,点是功能点,分为正常异常影响

线是指从使用场景来考虑,面是手机特有的一些测试点比如易用性,兼容性,效率性,等等,体是接口方面,内部接口,外部接口。

紧接着他又问如果上线之后其中有一个用户说他没有上传成功是什么原因造成的?

回答要从用户本身的问题角度,服务器角度,环境的角度,一一排查,还要考虑是否是合法的图片这点容易比较遗漏

如果确定就是系统的问题的话我们这边后台应该给他发送什么样的提示?

我的回答是建议用户更新手机本身的系统或者更新微信。或者卸载从新下

  1. 微信朋友圈发送视频怎么测?

这个功能是二面的时候问我的,二面整体交流时间都很少,当他问完我这个问题之后,我按着我的那个思路去说,说到“面“的时候我说了一个题外话。。。(我也不知道我咋想的会说这么一个)题外话就是,我跟面试官讲,其实我昨天自己在家也在尝试性的测试了头条的拍视频功能,我的手机是安卓的系统,在wifi环境下,因为三星手机有一个共能可以让程序悬浮在手机任意界面,所以我打开了手机自带的相机和小程序本身的相机看看会不会有什么不兼容的问题,然后具体形容的了一下操纵过程和我发现的现象,说完这个题外话之后,我回到微信朋友圈这个问题继续回答,然后面试官就让我停了,然后就问我一个思维逻辑题但是这个题跟一面的重复我就直说问过了,然后面说官就停止了继续面试,让我等hr的电话。

 

 

小结:简历写的技能点面试都的时候会基本全覆盖到,从简单的到难的都问问,当然难的打不上来也没关系,委婉的说比如项目没用到啊怎么样的,同时表明出你可以学这些,当你不知道的时候你也可以适当的反问面试官,该怎么操作或者代码怎么写,体现出你对新鲜事物很感兴趣很爱学的样子。

然后我也建议一下如果你去头条也好,滴滴也好,你可以提前自己用用那个软件,挑一个功能自己随便操作操作怎么变态怎么来,发现问题更好,没发现的话如果面试中问道类似的你也有个大概印象知道该怎么说。

 

 

 

 

 


推荐阅读
  • 本文介绍了如何在给定的有序字符序列中插入新字符,并保持序列的有序性。通过示例代码演示了插入过程,以及插入后的字符序列。 ... [详细]
  • 从Oracle安全移植到国产达梦数据库的DBA实践与攻略
    随着我国对信息安全和自主可控技术的重视,国产数据库在党政机关、军队和大型央企等行业中得到了快速应用。本文介绍了如何降低从Oracle到国产达梦数据库的技术门槛,保障用户现有业务系统投资。具体包括分析待移植系统、确定移植对象、数据迁移、PL/SQL移植、校验移植结果以及应用系统的测试和优化等步骤。同时提供了移植攻略,包括待移植系统分析和准备移植环境的方法。通过本文的实践与攻略,DBA可以更好地完成Oracle安全移植到国产达梦数据库的工作。 ... [详细]
  • 2021最新总结网易/腾讯/CVTE/字节面经分享(附答案解析)
    本文分享作者在2021年面试网易、腾讯、CVTE和字节等大型互联网企业的经历和问题,包括稳定性设计、数据库优化、分布式锁的设计等内容。同时提供了大厂最新面试真题笔记,并附带答案解析。 ... [详细]
  • 本文是一篇翻译文章,介绍了async/await的用法和特点。async关键字被放置在函数前面,意味着该函数总是返回一个promise。文章还提到了可以显式返回一个promise的方法。该特性使得async/await更易于理解和使用。本文还提到了一些可能的错误,并希望读者能够指正。 ... [详细]
  • 巧用arguments在Javascript的函数中有个名为arguments的类数组对象。它看起来是那么的诡异而且名不经传,但众多的Javascript库都使用着它强大的功能。所 ... [详细]
  • C语言注释工具及快捷键,删除C语言注释工具的实现思路
    本文介绍了C语言中注释的两种方式以及注释的作用,提供了删除C语言注释的工具实现思路,并分享了C语言中注释的快捷键操作方法。 ... [详细]
  • 如何用UE4制作2D游戏文档——计算篇
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了如何用UE4制作2D游戏文档——计算篇相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 判断数组是否全为0_连续子数组的最大和的解题思路及代码方法一_动态规划
    本文介绍了判断数组是否全为0以及求解连续子数组的最大和的解题思路及代码方法一,即动态规划。通过动态规划的方法,可以找出连续子数组的最大和,具体思路是尽量选择正数的部分,遇到负数则不选择进去,遇到正数则保留并继续考察。本文给出了状态定义和状态转移方程,并提供了具体的代码实现。 ... [详细]
  • 1,关于死锁的理解死锁,我们可以简单的理解为是两个线程同时使用同一资源,两个线程又得不到相应的资源而造成永无相互等待的情况。 2,模拟死锁背景介绍:我们创建一个朋友 ... [详细]
  • 本文介绍了高校天文共享平台的开发过程中的思考和规划。该平台旨在为高校学生提供天象预报、科普知识、观测活动、图片分享等功能。文章分析了项目的技术栈选择、网站前端布局、业务流程、数据库结构等方面,并总结了项目存在的问题,如前后端未分离、代码混乱等。作者表示希望通过记录和规划,能够理清思路,进一步完善该平台。 ... [详细]
  • 本文介绍了Java数组的定义、初始化和多维数组的用法。通过动态初始化和静态初始化两种方式来初始化数组,并讨论了数组的内存分配和下标的特点。同时详细介绍了Java二维数组的概念和使用方法。 ... [详细]
  • 本文探讨了C语言中指针的应用与价值,指针在C语言中具有灵活性和可变性,通过指针可以操作系统内存和控制外部I/O端口。文章介绍了指针变量和指针的指向变量的含义和用法,以及判断变量数据类型和指向变量或成员变量的类型的方法。还讨论了指针访问数组元素和下标法数组元素的等价关系,以及指针作为函数参数可以改变主调函数变量的值的特点。此外,文章还提到了指针在动态存储分配、链表创建和相关操作中的应用,以及类成员指针与外部变量的区分方法。通过本文的阐述,读者可以更好地理解和应用C语言中的指针。 ... [详细]
  • 本文详细介绍了Java中vector的使用方法和相关知识,包括vector类的功能、构造方法和使用注意事项。通过使用vector类,可以方便地实现动态数组的功能,并且可以随意插入不同类型的对象,进行查找、插入和删除操作。这篇文章对于需要频繁进行查找、插入和删除操作的情况下,使用vector类是一个很好的选择。 ... [详细]
  • 深入解析Linux下的I/O多路转接epoll技术
    本文深入解析了Linux下的I/O多路转接epoll技术,介绍了select和poll函数的问题,以及epoll函数的设计和优点。同时讲解了epoll函数的使用方法,包括epoll_create和epoll_ctl两个系统调用。 ... [详细]
  • 关于extjs开发实战pdf的信息
    本文目录一览:1、extjs实用开发指南2、本 ... [详细]
author-avatar
手机用户2602932565
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有