1 / 6
测试工程师面试题 (答题时间 100分钟) A.测试基础
1、 白盒测试与黑盒测试的区别是什么?
白盒测试:测试程序内部结构,内部特征
黑盒测试:通过界面测试程序功能,查看输入输出结果
2、 什么是正交试验法,使用场景是什么?
研究多因素多水平的一种设计方法 场景:多因素多条件的情况下
3、 数据库中,游标是什么?其作用是什么? 。
游标:从多条数据中检索集中提取一条数据 作用:当做指针,保存查询结果,方便后续使用
4、 简述常用的Bug管理或者用例管理工具,并且描述其中一个工作流程。 常用:testlink,QC,mantis,禅道,TAPD,JIRA
TAPD:产品创建(需求,计划,模块)-->项目创建(PM排期、任务分解)-->研发(编码、单元测试等)-->测试(测试计划,用例,执行,bug,报告等) 基于敏捷开发
5、 智力题
一个屋子有一个门(门是关闭的)和3盏电灯。屋外有3个开关,分别与这 3盏灯相连。你可以随意操纵这些开关,可一旦你将门打开,就不能变换开关了。请确定每个开关具体管哪盏灯。
一个开关关掉,一个打开,一个打开几分钟、然后关掉
进屋后,亮这的是第二个开关,关闭的两灯中,有热量的为第三个开关,剩下的 为第一个开关.
2 / 6
B.自动化测试
1、 自动化测试与测试自动化的区别。
自动化测试:利用工具录制或编写脚本进行功能以及性能测试
测试自动化:让测试过程脱离人工。对于控制成本,控制质量,回溯质量和减少测试周期都有积极影响的一种研发过程
2、 列举出你熟悉的自动化工具,并说明其实现原理。 Web应用类工具:selenium
客户端建立与 selenium-RC server 的连接。
Selenium RC Server 启动一个浏览器,并注入 JS 代码 将 Selenese 代码传到客户端的 Selenium-Core 中。 Selenium-Core 翻译并解析执行用户录制的操作。 让代理 Server 进行通讯
Remote Control Server 负责跟远程 Web 应用服务器进行通讯。 操作完成,显示结果,并执行下一指令。
3、 自动化测试的使用场景?
软件需求变更不是很快(尤其是UI自动化)}, 项目周期长
自动化测试脚本重复使用
4、什么是关键字驱动?
功能自动化测试框架,表格驱动测试或者基于动作字的测试
5、高质量的自动化脚本应该具备哪些特性? 1、不需要深入的工作或计划 2、可以加快开始自动化
3、对实际执行操作可以审计跟踪 4、用户不必是编程人员
5、提供良好的(软件或工具)的演示
3 / 6
6、简述Slenium grid的作用。
在更多机器上面进行并行多个测试用例
7、简要说明下面api的使用方法 A:
功能说明:此API 触发事件
4 / 6
C.开发能力
1、 描述==与equals的区别
==是一个运算符。
Equals是string对象的方法,可以.出来。
2、 final, finally, finalize的区别 final修饰符
finally执行清除操作
Finalize 使用 finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作
3、 说明Tomcat的server.xml中下列参数的作用: enableLookups=
alse redirectPort= 8443
第一个是域名解析是否支持 第二个是修改端口号
4、 Java中sleep和wait的区别
5、 SSH是什么?每个框架扮演的角色是什么? 安全协议
6、 Linux系统下怎么查看和关闭名为jira的进程?
ps -ef | grep jira
kill all jira (kill -9 jira进程数)
7、 Linux如何安装jdk、mysql请写出相关命令? wegt 下载 tar 解压 cd 进入文件 groupadd mysql useradd -r -g mysql mysql chown -R mysql:mysql ./
5 / 6
./script/mysql_install_db —user=mysql mkdir /usr/java
chmod 755 jdk-6u11-linux-i586.bin ./jdk-6u11-linux-i586.bin vi /etc/profile
export JAVA_HOME=/usr/java/jdk1.6.0_27 export JAVA_BIN=/usr/java/jdk1.6.0_27/bin export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export JAVA_HOME JAVA_BIN PATH CLASSPATH . /etc/profile Java -version