zoukankan      html  css  js  c++  java
  • 软件自动化测试工程师面试题集锦(1)

    以下是部分面试题目和我的个人回答,回答比较简略,仅供参考。不对之处请指出····

    1.自我介绍

    答:姓名,学历专业,技能,近期工作经历等,可以引导到最擅长的点,比如说代码或者项目

    参考:面试官您好,我叫xxx,我是xxx年xxx专业毕业的。进入测试行业已经xxx年了,前xxx年我主要做的功能测试,积累不少测试经验,整个系统测试过程中的需求分析、用例编写、用例评审,用例执行、bug记录,跟踪验证bug,上线回归等已经非常熟悉了,能够独立带项目完成功能测试工作。后面我主要负责自动化测试,包括ui自动化和接口自动化。我有一定的python代码基础,能够独立编写自动化脚本,熟练使用数据驱动思想搭建框架,就拿我最近做的项目,这个职工管理系统,除了使用python+selenium实现主要业务功能的ui自动化外,还使用python+request实现了所有接口的自动化,框架中用到了pymsql库和 unittest库,还有对Excel、json等格式的文件读取方法的封装。另外我对性能测试和APP测试也有一定了解,能够设计拱形场景和门型场景,完成基础的性能测试,对于负载测试,压力测试数据的分析有初步的认识;APP测试会使用monkey测试以及python+appium完成自动化测试。这次来是求职一份自动化测试工作,希望有机会共事,谢谢

    2.项目介绍

    答:项目什么类型,哪种语言写的,主要功能,项目周期,自己承担的职责等方向说

    参考:这是一个使用java语言开发的web端系统,用于企业人力资源管理,在员工入职到离职过程中,可以从员工信息,职位部门,合同工资,考勤方面进行全面的管理。系统主要包括员工信息管理,部门管理,考勤管理,工资管理,合同管理。这个项目历时一年,我们测试部门从需求分析阶段开始就介入,整个项目中不仅做了功能测试,还做了gui,接口自动化测试和性能测试。本项目大版本大约一个月会迭代一次,一共迭代12次,中间还有一些小版本,一般两天左右会更新一次。大版本之间通常是添加了新功能或者有一二级bug的修复,在每次大版本迭代前都会做需求分析;小版本主要修复了一些缺陷。本项目中我主要负责搭建和优化自动化测试框架,还有测试方案,测试报告的编写,框架中用到了pymsql库和 unittest库,还有对Excel、json等格式的文件读取方法的封装。
    这个项目中,在这个项目中,令我印象最深的一个缺陷是:系统左侧有可以伸缩的导航栏,我们只是在进入系统主页进行了一个点击测试,有一次我在新增工资信息的时候,把导航栏点击收缩起来了,然后点不开了,因为界面中没有其他能返回和跳转的按钮,只能退出系统或者关闭浏览器才能继续操作。最后当三级bug提给开发修复了。

    3.git和svn有什么区别?

    答:git是分布式,svn不是。

    4.给你一个登录页面怎么测?(比如淘宝,美团)

    从功能,性能,安全,兼容,界面测试等方向回答

    5.会java吗?

    答:会,这时候面试官会问具体的java情况,比如公共类私有类,数据类型,声明变量等

    6.linux常用命令

    答:cd,ls,ll,ping,ifconfig,reboot,vi,touch,mkdir.rm,free,top,ps,wc,df,kill,mv,cp,find,cat等等

    7.mysql增删改查各举一个例子

    答:增加列:alter table user add address varchar(20);

    增加一条数据:insert into uesr (address) values ('zhongguo hubei');

    删除列:alter table user drop address;

    删除某条数据:delete from uesr where address='zhongguo hubei'';

    修改列:alter table change address newaddress varchar(50);

    修改某条数据:updata user set address='zhongguo shanghai'' where uid=1;

    8.get和post的区别

    答:最大的区别,是get通过url传递参数,post的参数写在body里面。因此get不太安全,直接暴露在url中,且会在历史记录中查到。所以一些敏感操作一般使用post,如增删改操作

    9.怎么判断一个bug是前端还是后端的

    答:可以通过F12看后台是否有请求,请求的参数是否正确,如果不正确说明前端bug;如果服务器没响应或返回数据有错误,一般是后端bug。

    10.ui自动化有时候找不到元素,你怎么处理?

    答:很有可能是元素尚未加载,可以添加隐式等待implicity_wait或显示等待WebDriverWait(),再不行使用强制等待time.sleep()

    11.怎么查看App测试日志

    答:使用adb命令,adb logcat

    12.弱网测试和低电量测试怎么做?

    答:弱网可以使用fiddle或者腾讯的QNET工具测试,低电量可以使用iTest工具。指标可以参考竞品

    13.性能测试流程?报告主要内容

    答:流程:分析,设计,实现,执行;主要内容:范围,环境,场景,方法,结果,瓶颈等

    14.cookie和session有什么区别?

    答:cookie保存在客户端,session在服务端,session关闭浏览器和服务器断开连接就失效了。相对来说cookie不太安全,但session会给服务器造成一定压力

    15.你认为自己做测试有什么优势?

    答:从技能,职业素养,性格等方面回答

    16.python常用数据类型,列表和元组的区别

    答:六种基本数据类型,数字,字符串,列表,元组,字典,集合。列表和元组都是序列,都可以通过下标访问,可以互相嵌套,支持切片;列表是长度可变,元组不可变

    17.selenium常用的定位方式

    答:classname,id,xpath,partial_link_text

    18.功能测试你常用的测试方法

    答:主要是边界值和等价类划分法,还有正交实验,流程分析法

    19.数据库三大范式

    答:

    第一:确保每列保持原子性:指列不能再拆分。(自动满足第一范式)
    第二:每个实例或行必须可以被唯一的区分。(就是必须要有主键)
    第三:确保每列都和主键列直接相关,而不是间接相关。(通过外键区分)

    20.tcp和http有什么区别:

    答:tcp是传输层协议,http是应用层协议,http承载在tcp上。

    备注:其实经常面试会问tcp和udp的区别,http和https的区别。

    每天进步一点点!
  • 相关阅读:
    Binary Search Tree Iterator 解答
    Invert Binary Tree 解答
    Min Stack 解答
    Trapping Raining Water 解答
    Candy 解答
    Jump Game II 解答
    Implement Hash Map Using Primitive Types
    Gas Station 解答
    Bucket Sort
    HashMap 专题
  • 原文地址:https://www.cnblogs.com/qianjunjun/p/14136969.html
Copyright © 2011-2022 走看看