项目篇

  • H5是什么?
  • 项目开发语言
  • 你在项⽬中负责什么?(意思就是,你在项⽬中参与了哪些事情)
  • 怎么保证覆盖⽤户需求?
  • 测试⼀般做⼏轮
  • 日志怎么获取
  • ⼀般测试过程中,怎么定位问题。
  • 你说说xx功能,你怎么测试的。
  • 你会编写测试计划吗?
  • 印象最深的bug有哪些?
  • ⼯作中遇到过什么困难,是怎么解决的?
  • 迭代两到三周的项⽬,需求分析要多久,⽤例写多久,写多少⽤例,执⾏多久,发现多少个bug,做了⼏个版本,
  • 关于项⽬是否上线,也可以这样回答(以下是我们同学⾯试时候的对话):
  • 你们的项⽬做了多久,⼀直在做?你负责哪些模块?
  • 项⽬多久迭代⼀次?每次迭代你编写了⼏个⽤例?你们的回归测试是怎么做的?
  • 那你们⽤例执⾏后bug占整体的⽐率。
  • 当⽤户需求变更时,你会怎么做?
  • 在最新的项⽬中有学习到什么,对⾃⾝的成长有没有什么帮助
  • 公司在哪⾥?公司有多少⼈?项⽬组有多少⼈?前端和后端开发分别多少⼈?有多少个项目组。
  • 你们项⽬是怎么分⼯的呢
  • 你之前公司的项⽬是什么类型的?(你们之前公司最好做什么类型项⽬的?)
  • 如果⼀个项⽬给你负责,你会怎么做?
  • 你对项⽬有什么贡献?
  • 对于⽤户需求,你是怎么理解的?
  • 如果项⽬很赶,经理安排⼀个项⽬要三周内完成,你知道你完成不了,你怎么办?
  • ⼀个需求⽂档的内容包含哪些?
  • 你最近⼀个迭代的需求是什么?
  • 离职公司(有深圳社保的不要选择⼴州离职公司)
  • 项⽬细节
  • 接口测试细节
  • 性能测试(Jmeter + Nmon)细节


    H5是什么?

    H5就是指HTML5,简单理解,一般通过手机浏览器访问到的网页,都是用过H5研发出来的。包括我们的公众号,小程序或者webapp主要就是通过H5研发出来的。

    项目开发语言

    • 安卓app:JAVA
    • iOS的app:object-C
    • b/s架构:后端开发语言:PHP或者JAVA,前端开发语言:HTML,JS,CSS

    你在项⽬中负责什么?(意思就是,你在项⽬中参与了哪些事情)

    在⼯作中我主要负责功能测试,接口测试,除此之外还参与了接口⾃动化测试与性能测试等。在项⽬中主要参与了
    需求分析和需求评审,负责收集项⽬资料协助上级完成测试计划的编写,编写测试⽤例并评审,测试环境的搭建以 及测试执⾏和编写测试报告等⼯作。

    怎么保证覆盖⽤户需求?

    项⽬开始前,我们会先熟悉需求,画好流程图,保证整个流程都覆盖全⾯,⼩组之间每个⼈都要根据各
    ⾃的流程图,各个功能点有哪些限制条件,来讲解⼀下⾃⼰对测试点的理解,防⽌之后编写测试⽤例时出现遗漏;
    ⽤例编写完之后,再进⾏⽤例的评审,看看测试点有没有⽤遗漏,对需求理解有没有错误,测试场景是否覆盖完全。

    测试⼀般做⼏轮

    这个要看项⽬的整体质量,⼀般来说3-4轮左右。
    测试开始的时候,我们会进⾏冒烟测试,没有问题了,就开始执⾏⽤例,发现了bug就在tapd上进⾏提交,等待开 发将所有的bug修复完成,我们重新更新⼀下代码。就会开始第⼆轮的测试。
    第⼆轮测试开始之前, 我们会先看看主流程会不会出问题,然后进⾏回归测试,主要看,以前没有出现问题的地 ⽅,现在是否出现问题了,接着就再执⾏⼀遍⾃⼰的测试⽤例,有问题,继续提交,以此类推。

    日志怎么获取

    一般日志都是由运维指定存放在哪里,想我们之前XX项目,都是存放在/webroot/logs目录下,如果出现了bug,我们会将日志的这一段时间的操作,获取到本地,提交给开发进行定位。

    ⼀般测试过程中,怎么定位问题。

    1. 检查测试环境的配置是否有问题,测试数据是否有问题
    2. ⽤fiddler抓包,分析请求和响应数据是否存在问题。
    3. 查看应⽤服务器的⽇志
    4. 检查数据库的数据是否存在问题。

    你说说xx功能,你怎么测试的。

    不管测试什么功能呢,⼀定要从质量的六⼤特性出发,可以参考⼀下常见功能点的测试。

    你会编写测试计划吗?

    • 毕业两年以下的同学可以这样回答
      • 我们之前的测试计划都是测试组长写的,我们只是负责收集数据,协助组长完成测试计划的编写,测试计划的内容还是知道的,有测试范围、测试⽅式/策略、测试资源、测试开始和结束条件、进度安排、测试组织 等,如果以后有机会让我来编写测试计划,我觉得我没问题。-----(回答的时候,要⾃信。)
    • 毕业两年以上的同学可以这样回答
      • ⼀般都是协助组长写过,⾃⼰也独⽴写过,常见内容有测试范围、测试⽅式/策略、测试资源、测试开始和结束条件、进度安排、测试组织等

    印象最深的bug有哪些?

    之前有做⼀个xxxx项⽬是接⼿别⼈的,有⼀次测试的时候,发现退款这个功能点可以进⾏⼆次退款,然后提交bug单并且报告上级,公司奖励了我多少钱。(发现了什么,怎么解决的,为什么印象深刻,⼀⽬了然,仅供参考。)

    ⼯作中遇到过什么困难,是怎么解决的?

    (思考三四秒...)太⼤的困难倒没有,不过在上个项⽬我遇到过⼀个⽐较紧急的问题,当时我们的测试环境有问题,
    在界⾯上构造不了数据,导致测试堵塞了,项⽬赶着上线,领导⼀直在催,为了解决这个问题,当时我找到开发和
    运维的同事,让他们帮忙从⽣产环境上把数据导到测试环境上来测试,因为要协调其他部门的同事,所以印象⽐较
    深。

    迭代两到三周的项⽬,需求分析要多久,⽤例写多久,写多少⽤例,执⾏多久,发现多少个bug,做了⼏个版本,

    1. 一般一个迭代的项目,大概会有4-5个需求。
    2. 需求分析1到2天,⽤例也是写两天左右,包括⽤例评审;
    3. ⽤例的个数看需求和颗粒度的⼤⼩,如果时间充⾜,我们写的⽤例细,⽤例数就多些,⼀个版本⼤概有100多 条,执⾏花的时间长了,⼀般要4到5天;
    4. 每个版本发现的bug数量,要看需求和实现起来的难易程度,开发⼈员的⽔平和测试⽤例的质量,⼀般⼀个版本
      我们能找50-60个bug,越到后⾯,系统越来越稳定,发现的bug就越少;
    5. 我们这个项⽬⼀共做了7个多⽉,每两周⼀个迭代,⼀共下来有⼗来个版本;
    6. 项⽬上线了,我们在内部环境上测试完之后,产品经理会跟客户对接,完成上线的事情,之后交付给⽤户⾃⼰运营;
    7. 每个版本基本上会有将近200条⽤例,到现在为⽌,xxx这个项⽬,我⼤概写了有2000条左右的⽤例。

    关于项⽬是否上线,也可以这样回答(以下是我们同学⾯试时候的对话):

    面试官:项目有没有上线
    我: 已经上线了,交付给用户在运营了。
    面试官:这样啊,现在可以访问到吗?
    我: 具体业务的话都是由客户经理跟客户进行对接,我们测试只管在测试环境上进行测试,如果生产环境出现了bug,客户会跟客户经理反馈,我们会在测试环境上进行问题的复现,确定了bug后,修复bug,再进行打补丁,然后客户再去验证。

    你们的项⽬做了多久,⼀直在做?你负责哪些模块?

    参考答案:这个项⽬到现在还⼀直在做,已经做了8个⽉了(多长时间,可以灵活修改,⼀般8个⽉到⼀年都⾏),前
    期需求⽐较多,迭代的版本多⼀些,到后期项⽬基本稳定了,需求变化不⼤,我们会被调去做其他项⽬,这个项⽬
    后期如果需求发⽣变化,我们还是要负责测试。所以,在上家公司基本每个⼈都会跟着⼏个项⽬。
    提⽰:回答负责哪些模块的时候,⼀定不能说 注册,登陆,查询!!!!注意:app测试,不分模块,按照机型分
    ⼯。

    项⽬多久迭代⼀次?每次迭代你编写了⼏个⽤例?你们的回归测试是怎么做的?

    1. 两个星期⼀个迭代,我们⼀个版本的需求⼀般是5个左右。
    2. 看需求的多少,我们写的⽤例⽐较细,⼀个⽤例测试⼀个场景,基本每个迭代都有100多条⽤例
    3. 把bug单对应的⽤例执⾏⼀遍,还要检查有数据交互的模块会不会受影响,有没有引⼊新的问题;项⽬上线前,还要把当前版本的重要功能以及冒烟测试的⽤例都回归⼀遍,确保重要功能上线后不出问题。

    那你们⽤例执⾏后bug占整体的⽐率。

    一般在40%左右,通常项目到后期了,bug就少很多了。

    当⽤户需求变更时,你会怎么做?

    这个会经常遇到的,⼀般如果是⼩的需求变更,合理的话,能改的,经理会让开发直接改,然后测试再测⼀下就好了,如果是涉及到⽐较⼤的改动的话,我们会开会讨论⼀下会影响到的模块,经理会计算⼀下修改的成本,⼀般会建议放到下⼀个版本再修改,如果必须要改的话,开发就会改的,测试也会重新修改⼀下测试⽤例,把可能会影响到的模块再测⼀遍。

    在最新的项⽬中有学习到什么,对⾃⾝的成长有没有什么帮助

    通过这个项⽬⾸先是丰富了我⾃⾝的测试经验,然后这个项⽬也是有做性能、接口⾃动化等等,这让我的测试能⼒更能全⾯的发展,同时通过项⽬也让我对web端的测试更加熟悉,相信在以后的⼯作中我对web端的项⽬能够尽快上⼿的。
    ---(PS:根据⾃⼰的理解来回答)

    公司在哪⾥?公司有多少⼈?项⽬组有多少⼈?前端和后端开发分别多少⼈?有多少个项目组。

    • 公司地址自己记一下,上班路线
    • 公司人数50-200都行。
    • 公司可以有多个项目组,一般项目组的人数占公司的50%
      比如:公司140个人,总共有5个项目组,每个项目组会有不同的项目,我们项目组的话总共11个人,测试3个,开发8个(前端开发3个,后端开发5个)

    你们项⽬是怎么分⼯的呢

    • 如果你回答的是app的项⽬
      • 我们这个app是按机型分⼯的,我负责的是安卓设备的测试;
    • 如果你回答的是WEB端的项⽬
      • 我们这个项⽬是按模块分⼯,我负责前台的xxx模块,后台的xxx模块。(⾄少说5个模块以上)

    你之前公司的项⽬是什么类型的?(你们之前公司最好做什么类型项⽬的?)

    我们公司属于项⽬外包类型的,公司接到什么项⽬就做什么项⽬。

    如果⼀个项⽬给你负责,你会怎么做?

    我简历上的XXX这个项⽬,就是我独⽴负责的,我当时是这样做的,⾸先,要去熟悉这个项⽬的需求,业务流程,将测试功能点列出来,把不明⽩的地⽅提取出来,和开发、产品经理确认清楚,然后根据项⽬的迭代周期确定⼀个测试计划,接下来开始编写测试⽤例并叫上开发、产品经理进⾏评审;在项⽬开发阶段,开发⼈员把接口开发完成后,我会对接口进⾏测试,保证底层接口的质量;等所有代码都编写好了,开发转测后,进⾏冒烟测试,冒烟测试通过了,接下来进⾏系统的功能,安全,兼容性,性能等类型的测试,发现bug就提交bug单给开发⼈员修改,跟踪并做好回归测试;这些测试完成后,挑选⼀些级别⾼的测试⽤例,在UAT环境上进⾏验收测试,验收测试通过后,编写测试报告,项⽬就可以上线了。项⽬上线后,可能还会出现⼀些遗留的问题,所以还要分析研究怎样做才能避免这类bug的遗漏。

    你对项⽬有什么贡献?

    (思考三四秒)... 在做交叉测试时候,发现了我同事测了⼏个版本都没发现的问题,并且是⽐较严重的 那种,我举个例⼦吧:⽤户修改密码时,会接受⼀个⼿机验证码,由于系统没有对⽤户名和⼿机号码做绑定验证,接收到验证码后,填⼊别⼈的⽤户名可以进⼊密码修改页⾯,把别⼈的密码修改了。

    对于⽤户需求,你是怎么理解的?

    (思考三四秒)... ⽤户需求,就是描述⽤户希望把产品做成什么样的⼀个⽂档,有些需求写得很全⾯,什么信息都有,很细;但是,很多时候我们拿到的⽤户需求都是⽐较粗的,不全⾯的,甚⾄是有问题的,这时候,我们要及时和上级,还有产品经理反馈。

    如果项⽬很赶,经理安排⼀个项⽬要三周内完成,你知道你完成不了,你怎么办?

    先和经理说明,时间太短,存在风险;然后,将任务划分优先级,先完成优先级⾼的任务 ,保证项⽬的主要功能没问题,然后,时间允许的话,再做优先级稍微低的;在这个时间段内,每天向 上级报告⼯作的进度,让领导知道现在的⼯作进展和存在的风险。

    ⼀个需求⽂档的内容包含哪些?

    这个就要看具体情况了,功能的话会有功能的需求⽂档,性能也有需求⽂档,接口同样也有接口⽂档。
    功能⽂档主要含有:像原型图、功能介绍等等
    性能需求⽂档主要有:性能的测试点,性能指标,并发⽤户等等。
    接口的话主要就是:接⼜的名称,地址、请求参数、参数的约束条件、响应数据与响应码

    你最近⼀个迭代的需求是什么?

    ⼀般我们每次迭代的时候⼤概会有四五个需求,有的是新增的需求,有的是对原来的bug进⾏修复,还有就是对原有功能进⾏修改。
    ⽐如我们最近的xxx项⽬中,就对整个购物车的功能进⾏了修改。(⾃⼰准备好⾃⼰⾯试要讲的内容)

    离职公司(有深圳社保的不要选择⼴州离职公司)

    1. 检查离职公司的状态
    2. 离职原因
    3. 公司⼈数(50-200)
    4. 公司的地址,上班的路线
    5. 公司有多少个项⽬组(3-4左右),每个项⽬组(10个⼈左右)

    项⽬细节

    项⽬周期:8-10个⽉
    项⽬⽤例数:1500-2000条
    每个迭代:2-3周,⼤概5-6个需求,差不多每个迭代写了150-200条⽤例。
    每个迭代发现了多少个bug? 前期bug可能会多⼀些50-60个左右,后期在项⽬趋于稳定,差不多每个迭代30个左右。

    接口测试细节

    • 做了多少个接口?

    我们每个版本都会有四五个接口需求,有的是新增的接口,有的是原来的接口做了⼀些调整,⼀个版本下来⼤概有五六⼗条接口测试⽤例。

    • 一个项目有多少个接口?

    ⼀个项⽬⼤概50-60个接口左右。

    • 接口的参数有哪些,状态码有哪些,在数据库的状态有哪些?

    • 接口几个人负责的?
      一般一个项目接口就50个左右,所以说两个人或者自己一个人负责都行。

    • 你们接口的用例怎么管理的的?
      如果是多个人负责接口,一般我们会将写好的用例,上传到SVN进行管理的。

    • jenkins的用例放在哪里?
      我们的Jenkins搭建在自己的本地,所以用例也会放在自己的本地。
      如果Jenkins搭建在Linux上, 那么用例也需要上传到Linux上。
      注意:Python脚本是跨平台的。所以不用担心在Windows上能运行,在Linux上就不能够运行了。

    性能测试(Jmeter + Nmon)细节

    对哪些功能做了性能,哪个项目做了。提前准备好。

    性能指标(90%事务响应时间/事务通过率/CPU,内存,⽹络的使⽤情况/TPS/并发⽤户) 响应时间⼀般是不超过3秒 事务通过率100% CPU/内存/⽹络 不能超过70%

    并发⽤户:1000-2000 绝对并发:并发⽤户的10%
    性能测试:⼀年⼀次两次

    • 服务器配置参考:
    CentOS、 6.8
    CPU型号:英特尔 酷睿 i5
    CPU核数:16核 内存:32G
    带宽:50M
    
    复制
    • ⽤了⼏台压⼒机,每台压⼒机的配置,每台压⼒机⽣产多少⽤户?

    ⽐如2000个并发⽤户,⽤了4台压⼒机,每台压⼒机⽣产500⽤户。

    • 性能测试下来,TPS能到多少

    TPS 60-70/S

posted @ 2021-08-15 13:59  康kang  阅读(72)  评论(0)    收藏  举报