第一篇:个人整理的软件测试工程师面试题及答案
01.您认为做好测试用例设计工作的关键是什么?
白盒测试用例设计的关键是以较少的用例覆盖尽可能多的内部程序逻辑结果
黑盒法用例设计的关键同样也是以较少的用例覆盖模块输出和输入接口。不可能做到完全测试,以最少的用例在合理的时间内发现最多的问题
02.测试计划工作的目的是什么?测试计划工作的内容都包括什么?其中哪些是最重要的?
软件测试计划是指导测试过程的纲领性文件,包含了产品概述、测试策略、测试方法、测试区域、测试配置、测试周期、测试资源、测试交流、风险分析等内容。借助软件测试计划,参与测试的项目成员,尤其是测试管理人员,可以明确测试任务和测试方法,保持测试实施过程的顺畅沟通,跟踪和控制测试进度,应对测试过程中的各种变更。
测试计划和测试详细规格、测试用例之间是战略和战术的关系,测试计划主要从宏观上规划测试活动的范围、方法和资源配置,而测试详细规格、测试用例是完成测试任务的具体战术。所以其中最重要的是测试测试策略和测试方法(最好是能先评审)
03.您认为做好测试计划工作的关键是什么?
1.明确测试的目标,增强测试计划的实用性
编写软件测试计划得重要目的就是使测试过程能够发现更多的软件缺陷,因此软件测试计划的价值取决于它对帮助管理测试项目,并且找出软件潜在的缺陷。因此,软件测试计划中的测试范围必须高度覆盖功能需求,测试方法必须切实可行,测试工具并且具有较高的实用性,便于使用,生成的测试结果直观、准确
2.坚持“5W”规则,明确内容与过程
“5W”规则指的是“What(做什么)”、“Why(为什么做)”、“When(何时做)”、“Where(在哪里)”、“How(如何做)”。利用“5W”规则创建软件测试计划,可以帮助测试团队理解测试的目的(Why),明确测试的范围和内容(What),确定测试的开始和结束日期(When),指出测试的方法和工具(How),给出测试文档和软件的存放位置(Where)。
3.采用评审和更新机制,保证测试计划满足实际需求
测试计划写作完成后,如果没有经过评审,直接发送给测试团队,测试计划内容的可能不准确或遗漏测试内容,或者软件需求变更引起测试范围的增减,而测试计划的内容没有及时更新,误导测试执行人员。
4.分别创建测试计划与测试详细规格、测试用例
应把详细的测试技术指标包含到独立创建的测试详细规格文档,把用于指导测试小组执行测试过程的测试用例放到独立创建的测试用例文档或测试用例管理数据库中。测试计划和测试详细规格、测试用例之间是战略和战术的关系,测试计划主要从宏观上规划测试活动的范围、方法和资源配置,而测试详细规格、测试用例是完成测试任务的具体战术。
04:你找工作时,最重要的考虑因素为何?
工作的性质和内容是否能让我发挥所长,并不断成长。
05:为什么我们应该录取你?
您可以由我过去的工作表现所呈现的客观数据,明显地看出我全力以赴的工作态度。
06:请谈谈你个人的最大特色。
我的坚持度很高,事情没有做到一个令人满意的结果,绝不罢手。
07.你的测试职业发展是什么?
测试经验越多,测试能力越高。所以我的职业发展是需要时间累积的,一步步向着高级测试工程师奔去。而且我也有初步的职业规划,前3年累积测试经验,按如何做好测试工程师的11,12点要求自己,不断的更新自己改正自己,做好测试任务。
08.你自认为测试的优势在哪里?
优势在于我对测试坚定不移的信心和热情,虽然经验还不够,但测试需要的基本技能我有信心在工作中得以发挥。
09.你以前工作时的测试流程是什么?
公司对测试流程没有规定如何做,但每个测试人员都有自己的一套测试流程。我说下我1年来不断改正(自己总结,吸取同行的方法)后的流程吧。需求评审(有开发人员,产品经理,测试人员,项目经理)->需求确定(出一份确定的需求文档)->开发设计文档(开发人员在开始写代码前就能输出设计文档)->想好测试策略,写出测试用例->发给开发人员和测试经理看看(非正式的评审用例)->接到测试版本->执行测试用例(中间可能会补充用例)->提交bug(有些bug需要开发人员的确定(严重级别的,或突然发现的在测试用例范围之外的,难以重现的),有些可以直接录制进TD)->开发人员修改(可以在测试过程中快速的修改)->回归测试(可能又会发现新问题,再按流程开始跑)。
10.测试结束的标准是什么?
用例全部测试。
覆盖率达到标准。
缺陷率达到标准。
其他指标达到质量标准
第二篇:软件测试工程师面试题
1.软件测试的目的是尽可能多的找出软件的缺陷。(Y)
2.Beta 测试是验收测试的一种。(Y)
3.验收测试是由最终用户来实施的。(N)
4.项目立项前测试人员不需要提交任何工件。(Y)
5.单元测试能发现约80%的软件缺陷。(Y)
6.代码评审是检查源代码是否达到模块设计的要求。(N)
7.自底向上集成需要测试员编写驱动程序。(Y)
8.负载测试是验证要检验的系统的能力最高能达到什么程度。(N)
9.测试人员要坚持原则,缺陷未修复完坚决不予通过。(N)
10.代码评审员一般由测试员担任。(N)
11.我们可以人为的使得软件不存在配置问题。(N)
12.集成测试计划在需求分析阶段末提交。(N)
二、选折
1.软件验收测试的合格通过准则是:(ABCD)
A. 软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。
B. 所有测试项没有残余一级、二级和三级错误。
C. 立项审批表、需求分析文档、设计文档和编码实现一致。
D. 验收测试工件齐全。
2.软件测试计划评审会需要哪些人员参加?(ABCD)
A.项目经理
B.SQA 负责人
C.配置负责人
D.测试组
3.下列关于alpha 测试的描述中正确的是:(AD)
A.alpha 测试需要用户代表参加
B.alpha 测试不需要用户代表参加
C.alpha 测试是系统测试的一种
D.alpha 测试是验收测试的一种
4.测试设计员的职责有:(BC)
A.制定测试计划
B.设计测试用例
C.设计测试过程、脚本
D.评估测试活动
5.软件实施活动的进入准则是:(ABC)
A.需求工件已经被基线化
B.详细设计工件已经被基线化
C.构架工件已经被基线化
D.项目阶段成果已经被基线化
三、添空
1.软件验收测试包括:正式验收测试,alpha测试,beta测试。
2.系统测试的策略有:功能测试,性能测试,可靠性测试,负载测试,易用性测试,强度测试,安全测试,配置测试,安装测试,卸载测试,文挡测试,故障恢复测试,界面测试,容量测试,兼容性测试,分布测试,可用性测试,(有的可以合在一起,分开写只要写出15就满分哦)
3.设计系统测试计划需要参考的项目文挡有:软件测试计划,软件需求工件和迭代计划。
4.对面向过程的系统采用的集成策略有:自顶向下,自底向上两种。
5.(这题出的有问题哦,详细的5步骤为~~)通过画因果图来写测试用例的步骤为:
(1)分析软件规格说明描述中,哪些是原因(即输入条件或输入条件的等价类),哪些是结果(即输出条件),并给每个原因和结果赋予一个标识符。
(2)分析软件规格说明描述中的语义,找出原因与结果之间,原因与原因之间对应的是什么关系? 根据这些关系,画出因果图。
(3)由于语法或环境限制,有些原因与原因之间,原因与结果之间的组合情况不可能出现。为表明这些特殊情况,在因果图上用一些记号标明约束或限制条件。
(4)把因果图转换成判定表。
(5)把判定表的每一列拿出来作为依据,设计测试用例。
四、简答(资料是搜集整理的,感谢前辈的解题)无
1.区别阶段评审的与同行评审
同行评审目的:发现小规模工作产品的错误,只要是找错误;
阶段评审目的:评审模块 阶段作品的正确性 可行性 及完整性
同行评审人数:3-7人 人员必须经过同行评审会议的培训,由SQA指导
阶段评审人数:5人左右 评审人必须是专家 具有系统评审资格
同行评审内容:内容小 一般文档 <40页, 代码 < 500行
阶段评审内容: 内容多,主要看重点
同行评审时间:一小部分工作产品完成阶段评审时间: 通常是设置在关键路径的时间点上!
2.什么是软件测试
使用人工和自动手段来运行或测试摸个系统的过程。其目的在于验证他是否满足规定的需求或弄清楚预期结果和实际结果的差别。
3简述集成测试的过程
系统集成测试主要包括以下过程:
1.构建的确认过程。
2.补丁的确认过程。
3.系统集成测试测试组提交过程。
4.测试用例设计过程。
5.测试代码编写过程。
6.Bug的报告过程。
7.每周/每两周的构建过程。
8.点对点的测试过程。
9.组内培训过程。怎么做好文档测试
仔细阅读,跟随每个步骤,检查每个图形,尝试每个示例。P142
检查文档的编写是否满足文档编写的目的内容是否齐全,正确
内容是否完善
标记是否正确白盒测试有几种方法
总体上分为静态方法和动态方法两大类。
静态:关键功能是检查软件的表示和描述是否一致,没有冲突或者没有歧义
动态:语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖。
6系统测试计划是否需要同行审批,为什么
需要,系统测试计划属于项目阶段性关键文档,因此需要评审。
7Alpha测试与beta的区别
Alpha测试 在系统开发接近完成时对应用系统的测试;测试后仍然会有少量的设计变更。这种测试一般由最终用户或其它人员完成,不能由程序或测试员完成。
Beta测试 当开发和测试根本完成时所做的测试,最终的错误和问题需要在最终发行前找到。这种测试一般由最终用户或其它人员完成,不能由程序员或测试员完成。
8比较负载测试,容量测试和强度测试的区别
负载测试:在一定的工作负荷下,系统的负荷及响应时间。
强度测试:在一定的负荷条件下,在较长时间跨度内的系统连续运行给系统性能所造成的影响。
容量测试:容量测试目的是通过测试预先分 析出反映软件系统应用特征的某项指标的极限值(如最大并发用户数、数据库记录数等),系统在其极限值状态下没有出现任何软件故障或还能保持主要功能正常运行。容量测试还将确定测试对象在给定时间内能够持续处理的最大负载或工作量。容量测试的目的是使系统承受超额的数据容量来发现它是否能够正确处理。容量测试是面向数据的,并且它的目的是显示系统可以处理目标内确定的数据容量。
9测试结束的标准是什么?
用例全部测试。
覆盖率达到标准。
缺陷率达到标准。
其他指标达到质量标准
10描述软件测试活动的生命周期?
测试周期分为计划、设计、实现、执行、总结。其中:
计划:对整个测试周期中所有活动进行规划,估计工作量、风险,安排人力物力资源,安排进度等;设计:完成测试方案,从技术层面上对测试进行规划;
实现:进行测试用例和测试规程设计;
执行:根据前期完成的计划、方案、用例、规程等文档,执行测试用例。
总结:记录测试结果,进行测试分析,完成测试报告。
11软件的缺陷等级应如何划分?
A类—严重错误,包括以下各种错误: 1. 由于程序所引起的死机,非法退出 2. 死循环 3. 数据库发生死锁 4. 因错误操作导致的程序中断 5. 功能错误 6. 与数据库连接错误 7. 数据通讯错误
B类—较严重错误,包括以下各种错误: 1. 程序错误 2. 程序接口错误 3. 数据库的表、业务规则、缺省值未加完整性等约束条件
C类—一般性错误,包括以下各种错误: 1. 操作界面错误(包括数据窗口内列名定义、含义是否一致)
2. 打印内容、格式错误 3. 简单的输入限制未放在前台进行控制 4. 删除操作未给出提示 5. 数据库表中有过多的空字段
D类—较小错误,包括以下各种错误: 1. 界面不规范 2. 辅助说明描述不清楚 3. 输入输出不规范 4. 长操作未给用户提示 5. 提示窗口文字未采用行业术语 6. 可输入区域和只读区域没有明显的区分标志E类—测试建议
大体是这样,还会有一些变动,同时最后一道题出的是画流程图和控制图的题,等腰三角形那个
第三篇:北大方正软件测试工程师面试题
北大方正软件测试工程师面试题
笔试题, 工程, 软件测试
一、数量关系
1、甲乙2人比赛爬楼梯,已知每层楼梯相同,速度不变,当甲到3层时,乙到2层,照这样计算,当甲到9层时,乙到(A)层
A.5 B.6 C.7 D.82、有一份选择题试卷共6个小题,其得分标准是:一道小题答对得8分,答错得0分,不答得2分,某位同学得了20分,则他(D)
A.至多答对一道题 B.至少有三个小题没答 C.至少答对三个小题 D.答错两小题
3、有只蜗牛要从一口井底爬出来。井深20尺。蜗牛每天白天向上爬3尺,晚上向下滑2尺。请问 该蜗牛几天才能爬出井口?A
A.20 B.19 C.18 D.154、下列哪一个计算结果最接近1.25×8的值?A
A.3.3×3 B.1.7×6 C.1.6×6 D.2.1×
5二、逻辑推理
1、住在某个旅馆的同一房间的四个人A、B、C、D正在听一组流行音乐,她们当中有一个1人在修指甲,2一个人在写信,一3个人躺在床上,另4一个人在看书。
1)A不在修指甲,也不在看书
32)B不躺在床上,也不在修指甲;
43)如果A不躺在床上,那么D不在修指甲;
4)C既不在看书,也不在修指甲;
25)D不在看书,也不躺在床上。
1她们各自在做什么呢?
2、一种香,分布不均匀,点燃以后会燃烧整1个小时,问如何确定半个小时和45分钟。
三、职业素质测试
1你认为软件测试工程师最应该具备的职业素质是(A)。
A 编码能力 B 逻辑能力 C 管理能力 D 协调能力
2求职面试准备阶段,你认为你最应该准备什么(D)。
A 服装 B 技术 C 简历 D 应聘公司背景
3入职第一天你最应该准备什么(C)。
A 服装 B 小礼物 C 心态 D 上班路线
4你最喜欢的领导是(C)。
A 温和型 B 情绪型 C 技术型 D 谋略型
5你最喜欢服务的企业是(D)。
A 国企 B 私企 C 合资企业 D 外资企业
6你认为测试工程师在一个开发团队中是(A)。
A 非常重要 B 可有可无 C 没有程序员重要
7你认为一份“好工作”的标准是(C)。A 工资待遇高 B 工作环境好C 发展前途好 D 能锻炼人8以下是行业发展周期和人才供给的对应图,您觉得自己该何时切入这个行业?(B)。
A 引入期 B成长期 C 成熟期 D 衰退期
9如果你进入北大方正从事软件测试工作,你认为除了测试技术之外,做好本职工作你最需要具备的还有:(B)。
A深刻了解企业文化 B培养团队协作意识 C加强自我学习D良好的语言表达能力
10当工作中因为意见不同和领导发生冲突,而您又认为您的意见完全正确时,您会选择以下哪种解决方案(C)?
A当时即和领导激烈争执,坚持正确观点.B当时即召集同事,通过辩论的方式由大家对不同意见进行判断.C当时对领导观点不发表意见,事后通过邮件或当面等方式向领导建议.D当时对领导观点表示认同,期望通过以后的事实证明双方观点的对错.四、职业兴趣测试
下面各道题,请根据自己的实际情况作出回答。符合的回答“是”;疑惑的回答“?”;不符合的回答“否”
R:
1、你在中学里喜欢做实验吗?是
2、你喜欢尝试着做一些木工、电工、钳工、修钟表、印照片等其中的一件或几件事情吗?是或者你对织毛衣、绣花、裁剪等很感兴趣吗?否
3、当你家里有些东西需要修补时(诸如窗子关不严了、门锁上而忘带钥匙了、凳子坏了、衣服不合身了等),常常是由你做的吗?是
I:
1、你对电视或单位的智力竞赛很感兴趣吗?否
2、你经常翻阅图书吗?(文艺小说除外)是
3、你总想要知道一件新产品或新事物的构造或工作原理吗?是
4、看推理小说或电影时,你常常试图在结果出来以前分析出谁是罪犯,并且这种分析时常和小说或电影的结果相吻合? 是
S:
1.你主动给朋友写信或打电话吗?是
2、你很愿意参加学校单位或社会团体组织的各种活动吗?是
3、你看到不认识的人遇到困难时,能主动去帮助他或向他表示同期也安慰的心情吗? 是
4、你喜欢去新场所活动并结交新朋友吗?是
C:
1、你能按领导或老师的要求尽自己的能力做好每一件事吗?是
2、在讨论会上,如果不少人已经讲的观点与你的不同,你就不发表自己的观点了吗?否
3、你喜欢重复别人已经做过的事情而不喜欢做那些要自己动脑筋摸索着干的事吗?否
4、你喜欢做那些已经习惯了的工作,同时这种工作责任心小一些,工作时还能聊聊天,听听歌曲吗?否
五、简答题
1、简述你今后五年的职业生涯规划。
2、简述你心目中软件测试工程师的工作前景及工作内容。
3、简述你掌握一门新知识的方法和技巧
1.什么是信息管理系统,你觉得信息管理系统的核心是什么?为什么?
2.什么是数据库?什么是关系数据库?解释概念:主键,外键,索引
3.你对测试的理解?
4.如果你是一个自行车质量检测员,应该从哪几个重点来测试,为什么,且怎么检测?如果你只能选择3个主要的功能,你会选择哪几种?
专业题:
1.数据库,关于一个餐厅提供价格不等的咖啡,分大小杯,另有价格不等的食物,用户在餐厅的用餐也要根据消费时间来进行收费。服务员会拿着记账机到每一张桌子进行结账,当用户结完帐后可以办理会员卡。会员卡信息包含消费总额,并根据不同的额度又不用的折扣率。针对这些信息设计相关数据库,并划出E-R图。(这个题当时没做)
2.给出了流程图,遍历S点到G点。写出遍历案例!(感觉还是比较容易做的,具体图就不画了)
3.Java题,看输出。
public class Userouter
{
public static void main(String[] args)
{
Outer uter=new Outer(args);
outer.print();
}
}
public class Outer
{
private String[] uterval=new String[]{“this”,“is”,“a”,“test!”};
public Outer(String[] Ival)
{outerval=Ival;}
class Inner
{
void display()
{
for(int i=0;i
System.out.println(outerval[i]);
}
}public void print(){Inner inner=new Inner();inner.display();}}
输入" Java userouter I can answer this question”运行结果是什么?并简单解释程序逻辑?
运行结果:I can answer this question
程序逻辑:new Outer(args)构造对象,并调用构造函数 public Outer(String[] Ival)对其进行初始化,并调用其print()方法,print()方法中new Inner()构造inner对象,并用对象调用其display()方法。
4.class sin
{
Private static final sin newsin=new sin();
Private sin(){}
Public static sin Getsin(){return newsin;}
Public void Test(){}
}
在这个类cos中添加代码,访问class sin的test()函数 classcos {Sin aaa = new sin()aaa.Test()}综合题:1.你觉得今天的题答得怎么样?哪些是亮点?那些答得不好?用三句话来为自己争辩。2.如果没有通过笔试而没得到面试机会。为自己说些可以让你来面试的理由
第四篇:软件工程师面试题
1.C#中,string str = null 与 string str ="",请尽量用文字说明区别
2.Override, Overload,的区别?
3.a=10,b=15,在不用第三方变量的前提下,把a,b的值互换
4.请编程遍历页面上所有TextBox控件并给它赋值为string.Empty?
5.请编程实现一个冒泡排序算法?
6.描述以下几种连接方式,并加已说明(文字和SQL语句):
A:left outer join:
B:right outer join:
C:full outer join:
7.什么叫做SQL注入,如何防止?请举例说明。
8.有张订单表,需要实现它的编号,格式如下:201302010001(YYYYMMDD+4位流水号)等
第五篇:软件工程师面试题
软件工程师面试题
1,CString 和 char* 之间的相互转换?
2,虚函数WindowProc 与 DefWindowProc 功能上有什么不同?
3,如何保证在应用程序中使用的某个类只有一个实例?
4,请问如何定义一个整个程序运行过程中都可以使用的全局变量?
5,请写出以下几个类的构造函数的调用顺序
1),class X : public Y, public Z
X one;
2),class X : public Y, virtual public Z
X one;
6,遇到两个类互相为成员变量的事, 如何解决?
7,关键字static的作用是什么?(请至少说明两种)
8,写出判断ABCD四个表达式的是否正确, 若正确, 写出经过表达式中 a的值
int a = 4;
(A)a +=(a++);(B)a +=(++a);(C)(a++)+= a;(D)(++a)+=(a++);
a = ?
9,用宏定义写出swap(x,y)
10,描述一下进程间通信的方法