软件测试工程师面试问题总结

1、 迭代:一周或者是两周迭代一次,版本更新,会增加新的需求,迭代一次不会进行用例的评审。一个小的需求一般10条用例

2、 Stub对桩函数:在单元测试长辈其他模块调用,在自底向上的集成过程中尤其有效

3、 测试工具:

功能自动化测试工具:QTP  RFP  QARun  Silk

性能测试工具:loadrunner  robot     QAload  WAS     Silk performance

单元测试、白盒测试工具:Junit  jmeter   devpartne   jprobe   Purify Plus

安全测试:Appscan  Fortify

缺陷跟踪工具:Bugzilla     Mantis    禅道    bugfree  TestLink

 

4、 手机测试包括:

  1. 兼容性测试
  2. 性能测试:pcu  tps  响应时间  CPU  内存占用情况  磁盘io  网卡负载  

耗电量   页面与页面之前反应时间   操作快不快

  1. 接口测试
  2. 场景测试
  3. 容量测试
  4. 稳定性测试
  5. 安全测试

5.、APP在运行过程中会出现卡?

手机本身不卡,APP会卡是应为APP吃掉了内存或者是cup、CPU的运算能力不强、

处理器不好

6.、闪退的情况:手机内存不够、APP崩溃、程序出错等,还有就是有些版本不兼容,

7、给你一个小项目或者是小需求,怎么进口的入手进行测试?

尽快熟悉业务,先从主功能进行入手,分析需求,参与测试计划

8、一个搜索款怎么进行测试用例编写?

  先对界面进行测试  然后就是搜索内容、长度 、必填项、兼容(等价类)

9、需求分析阶段---计划阶段---设计阶段---测试阶段

计划阶段:主要是编写测试计划,参与软件需求规格说明书,项目总体计划。内容包括:

   测试范围、进度安排‘、人力物力的分配、整体测试策略的制定和分析的评估与规避措

施一个制定’,测试计划一般是由我们的主管进行编写,我们会参与相关的评审工作

10、APP测试使用的是真实环境,模拟器有局限性,有些API是模拟不出来,比如:拍照、扫描、蓝牙、WiFi等这种和硬件相关的,模拟器就不方便测试了

11、解决的bug成功的几种状态:不予解决、设计如此、已解决、已关闭

12、有没有测试出特别好的,对开发帮助特别大的

     可以说取现的时候,客服提供到银行卡的钱跟页面上确认的不一样,小数点后第二位

不准确,最后发现是应为开发使用了错误的数据类型导致数据金准度的丢失

 

 Tomact是j运行java的服务器   JDK是java的开发的一个工具包    JDK环境变量的配置需要配置三个:

JAVA_HOME变量:变量名: JAVA_HOME
变量值: C:\jdk1.6.0

Path变量:在jdk的bin目录下面有我们常用的java应用程序

classpath环境变量变:java中有两个jar包。是别人写好的很多类,所以配置好这个变量可以利用别人写的类,在java的lib目录下面放入两个jar包。

 

Linux是操作系统,centos是Linux发现的版本之一,  MySQL是数据库

虚拟机VM是安装Linux然后通过xshell用命令来操作Linux   ,用xftp往虚拟机中的Linux里面传输文件,一般是放在Linux的usr/local目录下面

 

 

 

问题一:简历的熟悉程度

  1. 什么是数据库MySQL?——页面中的东西都是存放在哪里的

数据库的作用?——用来储存数据,数据库中的表示储存单元

数据库的查询用的什么软件?——在Navicat for MySQL中建表—查询—新建查询—

查询编译器—编写SQL语句—运行

数据库的主要功能:创建数据库、插入数据、修改数据、删除数据、查询数据、

 

  1. 什么是Linux?——操作系统,相当于是Windows的系统。CentOS是Linux发行版之一

Linux的作用?——安装一个虚拟机通过xshell(是一个客户端)进行连接,通过命令行界

面进行操作Linux

通过xftp进行传输文件

Linux命令有哪些,分别都有什么作用?

            ——系统管理命令::su  切换账户

                             Ifconfig 查看IP地址

                             Ping  检查网络是否连接

                             Kill   杀死进程

                             Kill  -9  强制杀死

 

——系统资源查询命令:ps 查看进程  

              Ps  -ef  查看所有的进程

              Netstat  查看网络状况

              Netstat  -apn  查看所有的端口

——管道命令:Ps  -ef | grep xiaobao 

查看所有进程,通过管道找到相应的进程包名

Kill -9 杀死进程

Chmod   赋权命令  chmod -R  777  XIAOBAI

 

——目录操作命令:cd  xiaobai   进入目录里面

                  cd  /  根目录

                  pwd当前目录

                  mkdir  创建目录

                  rmdir  删除目录

                  ls   ll  查看说有的目录

 

——文件编辑就命令:vi  a.txt  编辑文件

                    Cat a.txt   查看文件

                    rm  -rf  强制删除

                    find / -name .txt   在根目录下面查找txt文件

——文件解压压缩命令:

压缩   tar -czvf test.tar.gz.test 将文件压缩成.test.tar.gz

解压   tar -xzvf test.tar.gz.test将文件解压成.test.tar.gz

 

完成编写Linux命令的工具是什么?——通过xshell来完成对Linux界面测操作

                               ——通过xftp对Linux进行文件传输

 

  1. 什么是java?——java是一门后台开发语言   dreamweaver是前台页面

Java的作用?——web系统开发和APP服务器的开发

完成java的实现是用的什么工具?——Ecipse  在上面创建一个项目—在src下面创建一个包--在包下面创建一个类。

程序的执行入口:public static void main(String [] args)

程序的执行打印语句:System.out.println(“小白”)   输出的结果是小白

Java的常用语句?

 

  1. 什么是Tomact?——运行JAVA的网络服务器,和微软IIS的作用一样.是一种web端的服务器

Tomact服务器的环境部署?

Tomact与MySQL、JDK环境之前的关联与关系?

  1. 安装VM虚拟机,然后在里面搭建Linux系统
  2. 下载centos是Linux发现的版本之一,
  3. 新建一个虚拟机,吧安装包导进去,然后设置用户和密码,安装完成后用ifconfig查看IP地址,然偶连接xshell,来连接虚拟机,操作Linux命令
  4. 安装JDK ,并将JDK通过xftp传到Linux环境中去,上传到/usr/local下面
  5. 在profile中编辑进行JDK环境配置。配置成功后,输入java -vision出现JDK的版本的信息就表示成功
  6. 下载Tomcat,用xftp把解压的tomact上传到/usr/local下面,然后在进行环境变量配置,
  7. 进入Tomcat的bin路径,启动tomact,,然后在电脑上面直接输入IP地址加上8080的端口数,要是出现Tomcat的官网就表示配置成功
  8. MySQL的配置,在线安装yum install mysql-server ,安装完成后,启动MySQL就可以

 

  1. 什么是JDK?——dk Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序JDK为什么要配置环境?——在电脑上面安装JDK之后需要在系统属性里面添加环境变量

JAVA_HOME变量:变量名: JAVA_HOME
变量值: C:\jdk1.6.0

Path变量:在jdk的bin目录下面有我们常用的java应用程序

classpath环境变量变:java中有两个jar包。是别人写好的很多类,所以配置好这个变量可以利用别人写的类,在java的lib目录下面放入两个jar包。

三个变量名,因为要是不配置好JDK的环境,java里面的包和程序就用不了

 

什么时候需要用到JDK?

二:接口测试

  1. 什么是接口测试——接口测试时测试系统组件间接口的一种测试

                  接口测试是模拟接口的调用,根据接口文档的输入规范,来检查接

                   口返回自是否符合输入规范

接口测试不同于单元测试。单元测试是整个系统的代码逻辑进行测试,而接口测试时站在客户的角度进行全面的检查

  1. 为什么要做接口测试——提前的发现bug,避免后期发现跟多的bug,降低时间成本
  2. 什么时候做接口测试——在开发写代码阶段,开发完成了接口的开发就可以进行接口的
  3. 接口测试的工具有jmeter和SOAPUI

测试,接口测试也是单元测试的一种

 

  1. 你有做过哪些功能模块的接口测试——登录  注册  实名认证  绑定银行卡
  2. 接口测试的流程是什么——分析接口文档、编写接口用例、搭建测试环境、执行用例

我是怎么做接口测试的——   用例的编写:1.对接口的必填参数进行校验

(等价类  边界值   正常异常)

                                   2.对接口的业务逻辑进行设计

(已被注册  黑名单等)

  1. 怎么判断接口是否是好的——输出的接口月需求不一致。去看后台日志,找到抛错的地方,直接提交bug截图粘贴到bug禅道中区
  2. 接口的分类、接口的传递方式——http接口:是基于http协议,通过post、get请求获

得请求

                              Webservice接口:是基于soap协议,通过soap来获

取请求

                            传递方式:xml/json/txt  xml相当于是HTML前后相对应

                                     Json相当于是键值对

       Post和get的区别:get会在URL中变现出来。Get一般用表单的形式

  1. 接口测试环境的搭建——
  2. 接口测试工具的选择——多个接口用jmeter  单个的接口用soapui
  3. 接口测试的报告——测试环境用配置:数据库服务器、客服端配置、网络环境配置

测试方法(黑盒白盒)

测试执行的情况:测试的版本测试的时间)

缺陷的统计:bug类型统计、等级的统计、分布模块的统计

  1. 接口测试中需要关注那些——catalina.out 记录查看错误的日志

                          Vi  tail -f  查看

                           查看日志的方法:搜索error或者是exception

问题三:性能测试

1、功能测试与性能测试

   功能测试:主要的是采用黑盒测测试方法,需要测试软件产品的功能,不需要测试软件

产品的内部结构和逻辑,

   性能测试:主要是关注于产品整体的多用户同时并发下的稳定性和健壮性(需要确保功

功能没有问题之后再进行性能测试)

是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的

各项性能指标进行测试,包括负载测试和压力测试

一部分是:后台服务的性能测试:API的响应时间和响应报文大小

一部分是:自身的性能情况:占用CPU、内存、i/o 、电量情况、页面之前的切换速度等

  

负载测试:逐渐增加负载,系统各项指标的变化情况

  压力测试:测试系统的限制和故障恢复能力,看系统会互惠崩溃,在什么情况下进场崩

溃,

2、负载和压力测试需要关注性能指标:

事务:表示用户发送请求—接受请求、处理—获取数据—生产用户页面,返回给用户

请求响应时间:从客户端发起一个请求看的到服务器端响应的时间,web一般是在3秒之

内,APP一般是在1-2秒之内,响应的时间单位一般是以毫秒为单位

事务响应时间:一系列请求组成,事务的响应时间是直接衡量系统性能的参数。

比如跨行取款事务的响应时间就是有一系列请求组成的

并发用户数:两种情况:1、严格意义上的并发:所有用户同一时间做同一件事情或操作

            2、广义范围的并发:所有用户同时请求和操作不一样或者是一样,

吞吐量:一次性能测试过程中网络上传输数据量的总和

        吞吐量/传输时间=吞吐率

tps :每秒钟系统能够处理交易或者事务数量  是衡量系统处理能力的重要指标

 

3、性能测试的工具:loadrunner  robot     QAload  WAS     Silk performance

我们自己做过的性能测试时通过jmeter进行测试的。

5、 怎么做性能测试的?流程是什么?通过什么指标进行判断的?

先确定功能模块:登录—投资—登出  、准备测试数据、准备并发量、准备脚本、通过jmeter进行测试    最后通过事务响应时间、tps、请求响应时间、tps来判断性能指标的

 

问题四:项目的熟悉程度

1、 摇财树web、app端做过哪些功能模块

2、 摇财树项目有哪些

3、 摇财树整个的业务流程是什么样的

4、 摇财树接口测试有哪些功能模块

5、 摇财树整个业务的流程熟悉

 

 

问题五:整个功能测试的顺序(考虑的方向)

Web 端测试分为6个阶段

  1. 功能测试
  2. 性能测试
  3. 用户界面测试:导航 图形  内容  表格 整体界面
  4. 兼容性测试:平台测试:Windows、Unix、Macintosh、Linux

            浏览器兼容

            分辨率

            连接速率

           

  1. 安全测试:目录 登录  日志文件
  2. 接口测试:
  3.  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

                       

posted @ 2017-07-25 17:40  xiaobai??  阅读(53505)  评论(2编辑  收藏  举报