1
|
2
|
3
|
4
|
|||
条件
|
觉得疲倦?
|
Y
|
Y
|
N
|
N
|
|
感兴趣吗?
|
N
|
Y
|
Y
|
N
|
||
动作
|
重读
|
|||||
继续
|
√
|
|||||
跳下一章
|
√
|
|||||
休息
|
√
|
√
|
1、一名优秀的测试工程师需要哪些素质;
2、说说你常用的定位bug的方法,都是用刀哪些工具。比如程序崩溃,请描述常用的步骤。
3、你都使用过哪些测试工具?他们各有什么优缺点?
4、谈谈你对自动化测试的看法。
5、做好测试用例设计工作关键的是什么?
测试类型有:功能测试,性能测试,界面测试。
功能测试在测试工作中占的比例最大,功能测试也叫黑盒测试。是把测试对象看作一个黑盒子。利用黑盒测试法进行动态测试时,需要测试软件产品的功能,不需测试软件产品的内部结构和处理过程。采用黑盒技术设计测试用例的方法有:等价类划分、边界值分析、错误推测、因果图和综合策略。
性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。压力测试是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。
界面测试,界面是软件与用户交互的最直接的层,界面的好坏决定用户对软件的第一印象。而且设计良好的界面能够引导用户自己完成相应的操作,起到向导的作用。同时界面如同人的面孔,具有吸引用户的直接优势。设计合理的界面能给用户带来轻松愉悦的感受和成功的感觉,相反由于界面设计的失败,让用户有挫败感,再实用强大的功能都可能在用户的畏惧与放弃中付诸东流。
区别在于,功能测试关注产品的所有功能上,要考虑到每个细节功能,每个可能存在的功能问题。性能测试主要关注于产品整体的多用户并发下的稳定性和健壮性。界面测试更关注于用户体验上,用户使用该产品的时候是否易用,是否易懂,是否规范(快捷键之类的),是否美观(能否吸引用户的注意力),是否安全(尽量在前台避免用户无意输入无效的数据,当然考虑到体验性,不能太粗鲁的弹出警告)?做某个性能测试的时候,首先它可能是个功能点,首先要保证它的功能是没问题的,然后再考虑该功能点的性能测试。
软件测试主要从以下16种类型进行测试:
一:功能测试(10个方面)
菜单、工具栏、快捷键、下拉框、按钮、单选按钮、复选按钮、切换、链接、触发键
二:界面测试
登陆界面、总界面、输入界面(增、删、改、查)、处理界面、输出界面、报表界面、提示界面
三:容错测试
数据长度、数据类型、非法此操作
四:接口测试
接口测试也叫业务流程测试(包括功能模块之间、模块与模块之间、子系统之间)
内部接口:例如:导入、导出(通俗的讲是接口就是调用)
外部接口:
五:性能测试(TPS吞吐量、响应速度、cpu占用率、内存占用率)
平均吞吐量:单位时间内处理事务的个数
平均响应速度:做一个事务处理所用时间
4、测试类型有哪些?
答:黑盒测试、白盒测试、单元测试、集成测试、功能测试、系统测试、负载测试、性能测试、兼容测试、可用性测试、安装|卸载测试、恢复测试、安全测试、比较测试、Alpha测试、Beta测试、端到端测试、健全测试、衰竭测试、接受测试、累积综合测试
5、黑盒测试和白盒测试的定义与区别?测试分哪几个阶段?这几个阶段之间的区别和联系?
答:黑盒测试:不关心软件内部结构,只关心输入输出,主要测试依据是需求文档;
白盒测试:关注软件的内部结构和程序的设计实现,主要测试依据是设计文档;
区别:
白盒测试只考虑测试软件产品,他不保证完整的需求规格是否被满足;
黑盒测试只考虑测试需求规格,它不保证实现的所有部分是否被测试到;
黑盒测试会发现遗漏的缺陷,指出规格的哪些部分没有被完成;
白盒测试会发现代理方面缺陷,指出哪些实现部分是错误的。
测试分:单元测试、集成测试、系统测试、验收测试。
单元测试:一般由开发小组采用白盒方式来测试,主要测试单元是否符合详细设计规格说明书的要求。
集成测试:界于单元测试和系统测试之间,起到“桥梁作用”,一般由测试小组或开发小组采用白盒+黑盒的方式来测试,主要测试模块接口及集成后的整体功能,验证与概要设计规格说明书的符合度。
系统测试:一般由独立测试小组采用黑盒方式来测试,主要测试系统是否符合需求规格说明书的要求。
验收测试:与系统测试非常相似,主要区别是测试人员不同,验收测试由用户代表或最终用户执行。
6、测试用例设计方法有哪些?
黑盒测试的测试用例设计方法有:等价类划分、边界值划分、因果图分析和错误猜测;
白盒测试的测试用例设计方法有:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、多重条件覆盖
7、测试用例设计方法有哪些?
黑盒测试的测试用例设计方法有:等价类划分、边界值划分、因果图分析和错误猜测;
白盒测试的测试用例设计方法有:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、多重条件覆盖。
8、性能测试的流程?
1.测试需求分析2.测试计划制定与评审3.测试用例设计与开发4.测试执行与监控5.分析测试结果6.编写性能测试报告7.测试经验总结
9、a测试,B测试定义?
a测试是软件开发公司组织内部人员,模拟各类用户,对即将上市的软件产品进行测试,试图发现错误并修复的过程。
β测试是由软件的多个用户在实际使用环境中进行的测试,这些用户返回有关错误信息给开发者。
10、测试用例要素?
用例编号、测试名称、重要级别、前置条件、测试输入、操作步骤、预期结果
11、压力测试与负载测试?
负载测试:通常运行时间比较短,在系统上逐渐加压,直到性能指标达到饱和状态(比如相应时间超出预期要求、系统资源占用率居高不下等),从而验证系统预期的性能目标、相应时间等。
压力测试:长时间运行,逐渐增加超负荷(并发、循环、多用户等),直到系统产生异常以及对异常的处理能力,从而验证系统可靠性、找到系统的瓶颈。 **微软压力测试的经验值为72小时。**
12、什么是回归测试?
回归测试:缺陷修正后,执行符合一定条件的测试用例来确保缺陷的修正没有在软件中引入新的缺陷,这些缺陷可能存在于被测试的软件模块中,也可能在与之相关或不相关的其他软件模块中。当软件发生变更或者使用软件的环境发生变化时,需要进行回归测试
13、简述bug的生命周期?
1, 有效地记录BUG
2, 使用BUG模板
3, 评价BUG优先级和严重性
4, BUG的生命
5, 维护BUG数据库
14、缺陷记录应包含的内容?
1.瀑布模型
2.快速原型模型
3.增量模型
4.螺旋模型
螺旋模型的基本思想就是,使用原型及其他方法来尽量降低风险。理解这种模型的一个简便方法,是把它看作每个阶段之前都增加了风险分析过程的快速原型模型。
5.喷泉模型
1、功能模块测试:首先应分析功能模块的功能项,测试每个功能项是否能够实现对应的功能。一般根据测试用例(Test Case)或软件本身的流程就可以完成基本功能测试(相对简单,故障也较容易发现、解决)。
2、交叉事件测试:又叫事件或冲突测试,是指一个功能正在执行过程中,同时另外一个事件或操作对该过程进行干扰的测试。例如通话过程中接收到短信或闹铃触发,应用软件运行过程中插拔充电器等。执行干扰的冲突事件不能导致应用软件异常、手机死机或花屏等严重问题。另外,还需要注意各交叉事件的优先级别,检验系统是否能依据各事件的优先级别依次进行处理。不能因执行优先级别高的事件而导致优先级较低的事件吊死。
交叉事件测试非常重要,一般能发现应用软件中一些潜在的问题。另外有中英文模式切换的手机要注意中英文模式切换后的功能实现存在的问题(这个主要针对手机应用软件支持语言自适应功能),这一点通常会被测试人员忽略。
3、压力测试:又叫边界值容错测试或极限负载测试。即测试过程中,已经达到某一软件功能的最大容量、边界值或最大的承载极限,仍然对其进行相关操作。例如连续进行短信的接收和发送,超过收件箱和SIM卡所能存储的最大条数,仍然进行短消息的接收或发送,以此来检测软件在超常态条件下的表现,进而评估用户能否接受。
对手机可以施加的压力测试类型主要有:
● 存储压力:由于手机采用的是栈式存储,所以当一个存储块满了之后,如果程序员不做相应处理或者处理不好的话,很容易造成其他存储区被擦除,从而在UI上出现问题(比如其他功能无法正常使用,出现异常)。
● 边界压力:边界处理一直是程序员最容易忽略的地方。
● 响应能力压力:有时候某个操作可能处理的时间很长,在处理期间如果测试者再不断地进行其他操作的话,很容易出现问题。
● 网络流量压力:执行较大数据流量的功能的同时,再进行其他功能操作,使得网络流量始终处于很高的状态(如视频通话时再进行短信等其他功能操作),验证各功能是否依然能正常工作,是否存在因网络流量瓶颈而引起某功能异常。
压力测试用手工测试可能很繁锁,可以考虑自动化测试。遗憾的是,目前还没有较为大量使用的工具,一般都是由开发人员配合开发出的工具,或者高级的测试人员编写出的脚本。
4、容量测试:即存储空间已满时的测试,包括手机用户可用内存和SIM卡的所有空间被完全使用的测试。此时再对可编辑的模块进行和存储空间有关的任何操作测试,如果软件在极限容量状态下处理不好,有可能导致死机或严重的花屏等问题的出现。
5、兼容性测试:也就是不同品牌、款型的手机(针对目前我们产品来说,主要是针对不同品牌、款型的手机上的测试),不同网络,不同品牌和不同容量大小的SIM卡之间的互相兼容的测试。以短消息为例:中国电信的小灵通接收到从中国移动或中国联通GSM发来的短消息,需要验证显示和回复功能是否正常等。再比如,应用软件分别在Nokia N80、N93手机上运行,各功能是否均能正常使用,界面是否均显示正常等。
6、易用性/用户体验测试:易用性(Useability)/用户体验是指在指定条件下使用时,软件产品被理解、学习、使用和吸引用户的能力,是交互的适应性、功能性和有效性的集中体现。