测试工程师面试题(100分钟完成)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
测试工程师面试题
(答题时间 100分钟)
A.测试基础
1、白盒测试与黑盒测试的区别是什么?
白盒测试:测试程序内部结构,内部特征
黑盒测试:通过界面测试程序功能,查看输入输出结果
2、什么是正交试验法,使用场景是什么?
研究多因素多水平的一种设计方法
场景:多因素多条件的情况下
3、数据库中,游标是什么?其作用是什么?
。
游标:从多条数据中检索集中提取一条数据
作用:当做指针,保存查询结果,方便后续使用
4、简述常用的Bug管理或者用例管理工具,并且描述其中一个工作流程。
常用:testlink,QC,mantis,禅道,TAPD,JIRA
TAPD:产品创建(需求,计划,模块)-->项目创建(PM排期、任务分解)-->研发(编码、单元测试等)-->测试(测试计划,用例,执行,bug,报告等)
基于敏捷开发
5、智力题
一个屋子有一个门(门是关闭的)和3盏电灯。屋外有3个开关,分别与这 3盏灯相连。你可以随意操纵这些开关,可一旦你将门打开,就不能变换开关了。请确定每个开关具体管哪盏灯。
一个开关关掉,一个打开,一个打开几分钟、然后关掉
进屋后,亮这的是第二个开关,关闭的两灯中,有热量的为第三个开关,剩下的为第一个开关
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、提供良好的(软件或工具)的演示
6、简述Slenium grid的作用。
在更多机器上面进行并行多个测试用例
7、简要说明下面api的使用方法
A:
此API功能说明:
触发事件
C.开发能力
1、描述==与equals的区别
==是一个运算符。
Equals是string对象的方法,可以.出来。
2、final, finally, finalize的区别
final修饰符
finally执行清除操作
Finalize 使用 finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作
3、说明Tomcat的server.xml中下列参数的作用:
enableLookups= "false " 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 ./
./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
8、HashMap和Hashtable的区别?
HashMap是Hashtable的轻量级实现,非线程安全的实现他们都实现了map接口,主要区别是HashMap键值可以为空null,效率可以高于Hashtable。
9、编程题:
1:写一个Singleton模式
public class Singleton
{
private static Singleton single = new Singleton();
private Singleton(){}
public Singleton getInstance()
{
return single;
}
}