常见的测试用例设计方法都有哪些.docx

上传人:b****0 文档编号:17862440 上传时间:2023-08-04 格式:DOCX 页数:11 大小:22.83KB
下载 相关 举报
常见的测试用例设计方法都有哪些.docx_第1页
第1页 / 共11页
常见的测试用例设计方法都有哪些.docx_第2页
第2页 / 共11页
常见的测试用例设计方法都有哪些.docx_第3页
第3页 / 共11页
常见的测试用例设计方法都有哪些.docx_第4页
第4页 / 共11页
常见的测试用例设计方法都有哪些.docx_第5页
第5页 / 共11页
常见的测试用例设计方法都有哪些.docx_第6页
第6页 / 共11页
常见的测试用例设计方法都有哪些.docx_第7页
第7页 / 共11页
常见的测试用例设计方法都有哪些.docx_第8页
第8页 / 共11页
常见的测试用例设计方法都有哪些.docx_第9页
第9页 / 共11页
常见的测试用例设计方法都有哪些.docx_第10页
第10页 / 共11页
常见的测试用例设计方法都有哪些.docx_第11页
第11页 / 共11页
亲,该文档总共11页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

常见的测试用例设计方法都有哪些.docx

《常见的测试用例设计方法都有哪些.docx》由会员分享,可在线阅读,更多相关《常见的测试用例设计方法都有哪些.docx(11页珍藏版)》请在冰点文库上搜索。

常见的测试用例设计方法都有哪些.docx

常见的测试用例设计方法都有哪些

常见的测试用例设计方法都有哪些常见的测试用例设计方法都有哪些?

请分别以具体的例子来说明这些方法在测试用例设计工作中的应用。

1.等价类划分常见的软件测试面试题划分等价类:

等价类是指某个输入域的子集合.在该子集合中,各个输入数据对于揭露程序中的错误都是等效的.并

合理地假定:

测试某等价类的代表值就等于对这一类其它值的测试.因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据.取得较好的测试结果.等价类划分可有两种不同的情况:

有效等价类和无效等价类.

2.边界值分析法边界值分析方法是对等价类划分方法的补充。

测试工作经验告诉我,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部.因此针对各种边界情况设计测试用例,可以查出更多的错误.

使用边界值分析方法设计测试用例,首先应确定边界情况.通常输入和输出等价类的边界,就是应着重测试的边界情况.应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据.

3.错误推测法基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性的设计测试用例的方法.

错误推测方法的基本思想:

列举出程序中所有可能有的错误和容易发生错误的特殊情况根据他们选择测试用例.例如,在单元测试时曾列出的许多在模块中常见的错误.以前产品测试中曾经发现的错误等,这些就是经验的总结。

还有,输入数据和输出数据为0的情况。

输入表格为空格或输入表格只有一行.这些都是容易发生错误的情况。

可选择这些情况下的例子作为测试用例.

4.因果图方法前面介绍的等价类划分方法和边界值分析方法,都是着重考虑输入条件,但未考虑输入条件之间的联系,相互组合等.考虑输入条件之间的相互组合,可能会产生一些新的情况.但要检查输入条件的组合不是一件容易的事情,即使把所有输入条件划分成等价类,他们之间的组合情况也相当多.因此必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例.这就需要利用因果图(逻辑模型).因果图方法最终生成的就是判定表.它适合于检查程序输入条件的各种组合情况.

5.正交表分析法有时候,可能因为大量的参数的组合而引起测试用例数量上的激增,同时,这些测试用例并没有明显的优先级上的差距,而测试人员又无法完成这么多数量的测试,就可以通过正交表来进行缩减一些用例,从而达到尽量少的用例覆盖尽量大的范围的可能性。

6.场景分析方法指根据用户场景来模拟用户的操作步骤,这个比较类似因果图,但是可能执行的深度和可行性更好。

您认为做好测试用例设计工作的关键是什么?

白盒测试用例设计的关键是以较少的用例覆盖尽可能多的内部程序逻辑结果

黑盒法用例设计的关键同样也是以较少的

用例覆盖模块输出和输入接口。

不可能做到完全测试,以最少的用例在合理的时间内发现最多的问题

详细的描述一个测试活动完整的过程。

1.项目经理通过和客户的交流,完成需求文档,由开发人员和测试人员共同完成需求文档的评审,评审的内容包括:

需求描述不清楚的地方和可能有明显冲突或者无法实现的功能的地方。

项目经理通过综合开发人员,测试人员以及客户的意见,完成项目计划。

然后sqa进入项目,开始进行统计和跟踪

2.开发人员根据需求文档完成需求分析文档,测试人员进行评审,评审的主要内容包括是否有遗漏或者双方理解不同的地方。

测试人员完成测试计划文档,测试计划包括的内容上面有描述。

3.测试人员根据修改好的需求分析文档开始写测试用例,同时开发人员完成概要设计文档,详细设计文档。

此两份文档成为测试人员撰写测试用例的补充材料。

4.测试用例完成后,测试和开发需要进行评审。

5.测试人员搭建环境

6.开发人员提交第一个版本,可能存在未完成功能,需要说明。

测试人员进行测试,发现bug后提交给bugzilla。

7.开发提交第二个版本,包括bugfix以及增加了部分功能,测试人员进行测试。

8.重复上面的工作,一般是3-4个版本后bug数量减少,达到出货的要求。

9.如果有客户反馈的问题,需要测试人员协助重现以及回归测试。

以往是否曾经从事过性能测试工作?

请尽可能的详细描述您以往的性能测试工作的完整过程。

曾经做过一套网管系统的性能测试,主要测试该软件在同时管理大量终端的情况下,在响应时间,cpu/磁盘/内存等参数是否满足要求。

也曾经做过软交换系统的呼叫性能测试,主要是测试软交换系统在有大量呼叫的情况下,响应时间,呼叫成功率,cpu/磁盘/内存等参数是否满足设计要求。

您在从事性能测试工作时,是否使用过一些测试工具?

如果有,请试述该工具的工作原理,并以一个具体的工作中的例子描述该工具是如何在

实际工作中应用的。

测试网管系统中,使用的mimic来模拟终端,能够大量的节省成本。

测试软交换系统的时候,使用的prolab来模拟终端并发送呼叫软交换,他完成了同时数百人才能完成的摘机拨号工作,主要工作原理是产生一些符合要求的ip包并发送给软交换系统,同时对软交换系统的回应进行处理,决定下一步动作。

您认为性能测试工作的目的是什么?

做好性能测试工作的关键是什么?

主要是保障在大量用户的情况下,服务能正常使用。

在您以往的工作中,一条软件缺陷(或者叫bug)记录都包含了哪些内容?

如何提交高质量的软件缺陷(bug)记录?

1.在传统的bugzilla中,bug描述应该包括以下的信息

2.和bug产生对应的软件版本

3.开发的接口人员

4.bug的优先级

5.bug的严重程度

(常见)测试用例-设计方法-面试题目

6.bug可能属于的模块,如果不能确认,可以用开发人员来判断

7.bug标题,需要清晰的描述现象

8.bug描述,需要尽量给出重新bug的步骤

9.附件中能给出相关的日志和截图。

高质量的bug记录就是指很容易理解的bug记录,所以,对于描述的要求高,能提供的信息多且准确,很好的帮助开发人员定位。

1、黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试的区别?

软件的黑盒测试意味着测试要在软件的接口处进行。

这种方法是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。

因此黑盒测试又叫功能测试或数据驱动测试。

黑盒测试主要是为了发现以下几类错误:

1)是否有不正确或遗漏的功能?

2)在接口上,输入是否能正确的接受?

能否输岀正确的结果?

3)是否有数据结构错误或外部信息(例如数据文件)访问错误?

4)性能上是否能够满足要求?

5)是否有初始化或终止性错误?

白盒测试:

已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否以经过检查。

软件的白盒测试是对软件的过程性细节做细致的检查。

这种方法是把测试对象看做一个打开的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。

通过在不同点检查程序状态,确定实际状态是否与预期的状态一致。

因此白盒测试又称为结构测试或逻辑驱动测试。

白盒测试主要是想对程序模块进行如下检查:

1)对程序模块的所有独立的执行路径至少测试一遍。

2)对所有的逻辑判定,取“真”与取“假”的两种情况都能至少测一遍。

(常见)测试用例-设计方法-面试题目

3)在循环的边界和运行的界限内执行循环体。

4)测试内部数据结构的有效性,等等。

单元测试(模块测试)是开发者编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确。

通常而言,一个单元测试是用于判断某个特定条件(或者场景)下某个特定函数的行为。

单元测试是由程序员自己来完成,最终受益的也是程序员自己。

可以这么说,程序员有责任编写功能代码,同时也就有责任为自己的代码编写单元测试。

执行单元测试,就是为了证明这段代码的行为和我们期望的一致。

集成测试(也叫组装测试,联合测试)是单元测试的逻辑扩展。

它的最简单的形式是:

两个已经测试过的单元组合成一个组件,并且测试它们之间的接口。

从这一层意义上讲,组件是指多个单元的集成聚合。

在现实方案中,许多单元组合成组件,而这些组件又聚合成程序的更大部分。

方法是测试片段的组合,并最终扩展进程,将您的模块与其他组的模块一起测试。

最后,将构成进程的所有模块一起测试。

系统测试是将经过测试的子系统装配成一个完整系统来测试。

它是检验系统是否确实能提供系统方案说明书中指定功能的有效方法。

(常见的联调测试)

系统测试的目的是对最终软件系统进行全面的测试,确保最终软件系统满足产品需求并且遵循系统设计。

验收测试是部署软件之前的最后一个测试操作。

验收测试的目的是确保软件准备就绪,并且可以让最终用户将其用于执行软件的既定功能和任务。

验收测试是向未来的用户表明系统能够像预定要求那样工作。

经集成测试后,已经按照设计把所有的模块组装成一个完整的软件系统,接口错误也已经基本排除了,接着就应该进一步验证软件的有效性,这就是验收测试的任务,即软件的功能和性能如同用户所合理期待的那样。

•单元测试的主要目的是针对编码过程中可能存在的各种错误,例如用户输入验证过程中的边界值的错误。

•集成测试主要目的是针对详细设计中可能存在的问题,尤其是检查各单元与其它程序部分之间的接口上可能存在的错误。

•系统测试主要针对概要设计,检查了系统作为一个整体是否有效地得到运行,例如在产品设置中是否达到了预期的高性能

•验收测试通常由业务专家或用户进行,以确认产品能真正符合用户业务上的需要(需求)。

2、您认为做好测试计划工作的关键是什么?

1)明确测试的目标,增强测试计划的实用性

编写软件测试计划得重要目的就是使测试过程能够发现更多的软件缺陷,因此软件测试计划的价值取决于它对帮助管理测试项目,并且找岀软件潜在的缺陷。

因此,软件测试计划中的测试范围必须高度覆盖功能需求,测试方法必须切实可行,测试工具并且具有较高的实用性,便于使用,生成的测试结果直观、准确

2)坚持“5V”规则,明确内容与过程

“5V”规则指的是“What(做什么)"、“Why(为什么做)"、“When(何时做)"、“Where(在哪里)"、“How(如何做)"。

利用“5V”规则创建软件测试计划,可以帮助测试团队理解测试的目的

(Why),明确测试的范围和内容(What),确定测试的开始和结束日期(Wher),指出测试的方法和工具(HoW,给出测试文档和软件的存放位置(Where)。

(常见)测试用例-设计方法-面试题目

3)采用评审和更新机制,保证测试计划满足实际需求

测试计划写作完成后,如果没有经过评审,直接发送给测试团队,测试计划内容的可能不准确或遗漏

测试内容,或者软件需求变更引起测试范围的增减,而测试计划的内容没有及时更新,误导测试执行人员。

4)分别创建测试计划与测试详细规格、测试用例

应把详细的测试技术指标包含到独立创建的测试详细规格文档,把用于指导测试小组执行测试过程的

测试用例放到独立创建的测试用例文档或测试用例管理数据库中。

测试计划和测试详细规格、测试用例之

间是战略和战术的关系,测试计划主要从宏观上规划测试活动的范围、方法和资源配置,而测试详细规格、

测试用例是完成测试任务的具体战术。

3、你认为公司的BUG测试流程是什么?

1)当测试工程师发现了一个bug而且在bugtrackingtool里面没有相同的bug,他需要填写所有需要的bug信息并且把这个bug分配给testleader

2)如果这个bug不是一个真正的bug,testleader需要close这个bug

3)testleader需要审查bug的各种信息都完备,如果有信息不完整,他需要把状态改成”feedback”并重新assign给提交者

4)如果这个bug是一个真正存在的bug,testleader需要把这个bug分配给相关的开发团队的PM,并且把bug状态改成Assigned

5)如果这个bug属于另外一个开发团队,PM需要把这个bug重新分配给那个开发团队的PM

6)PM审查bug,并且分配给相应的开发人员去改正。

7)开发人员收到bug以后,对相关的缺陷进行改正,并且重新分配给提交bug的测试人员并且把状

态改成”Fixed”

8)测试人员需要对这个bug进行重新测试,保证相关的缺陷已经改正,测试人员可以reopen这个bug

如果缺陷依然存在并且重新分配给相关的开发人员或者close这个bug如果缺陷已经改正。

4、测试人员所应具备的知识

1)基本的测试知识,测试方法,测试用例,缺陷的概念

2)测试计划

3)数据方面(数据库/XML/Hibernate/LDAP)

4)表现层知识(JSP/HTML/Struts/CSS)

5)EAI(中间件/SOA概念,项目相关的经验)

6)测试自动化知识

7)设计模式知识(UML等等)

8)敏捷实践(TDD,Refectoring,CI等等)

9)软件生命周期经验(分析,设计,团队开发,测试,部署)

10)管理经验(Estimation,Mentoring,团队组织)

11)学习能力

5、测试类型共划分为哪些?

1)功能测试:

对软件功能进行测试,检查软件的各项功能是否实现了软件功能说明书(软件需求)

上的要求。

2)界面测试:

对用户界面进行测试,检查用户界面的美观度、统一性、易用性等方面的内容。

常见)测试用例-设计方法-面试题目

3)流程测试:

按操作流程进行测试,主要有业务流程、数据流程、逻辑流程、正反流程,检查软件在按照流程操作时是否能够正确处理。

4)并发测试:

在网络环境、并发环境和多用户条件下对软件进行的测试。

5)极限测试:

在软件的极限条件下进行的测试,主要有对数据的极限值、边界值操作,对软件进行致命操作等。

6)数据处理测试:

对软件数据接口进行的测试,主要检查软件数据处理中输入、处理、输出数据过程。

7)安全测试:

对软件安全性方面的测试,主要检测软件中加密、解密、数据备份、恢复、病毒检测等问题。

8)性能测试:

对软件整体性能的测试,测试内容有适应性、健壮性、可恢复性、灾难恢复能力等

9)安装测试:

在不同PC条件、操作系统、模拟客户机等条件下进行软件的安装测试,主要检查软件打包或发布之后存在的问题。

10)性能测试:

对软件整体性能进行测试,测试的内容有适应性、健壮性、可恢复性、灾难恢复能力

6、你是怎么看待测试的?

1)试想一下如果一个系统开发完毕后不能正常运行可能造成的后果,损失钱财,损失时间,损失客户,等等

2)介绍一下软件测试的意义

a.发现软件错误;

b.有效定义和实现软件成分由低层到高层的组装过程;

c.验证软件是否满足任务书和系统定义文档所规定的技术要求;

d.为软件质量模型的建立提供依据。

3)介绍一下软件测试的目的?

a.确认软件的质量,其一方面是确认软件做了你所期望的事情(Dotherightthing),并且确认软件以正确的方式来做了这个事件(Doitright)。

b.提供信息,比如提供给开发人员或程序经理的反馈信息,为风险评估所准备的信息。

c.软件测试不仅是在测试软件产品的本身,而且还包括软件开发的过程。

如果一个软件产品开发完成之后发现了很多问题,这说明此软件开发过程很可能是有缺陷的。

因此软件测试的第三个目的是保证整个软件开发过程是高质量的。

正是基于以上所述,我认为软件测试是整个软件质量保证过程中重要的一部分,这也就是我选择软件测试这个行业的原因

7.如何撰写集成测试计划?

1)确定集成测试对象

2)确定集成测试策略

3)确定集成测试验收标准

4)确定集成测试挂起和恢复条件

5)估计集成测试工作量

6)估计集成测试所需资源

常见)测试用例-设计方法-面试题目

7)进行集成测试任务划分(包括任务名、责任人、输入和输出、风险及应对措施、进度安排等)

8.测试技术方面的鬼话?

1、功能测试的规范化、流程化操作;

2、利用Robot录制和编写自动功能测试脚本

3、利用LoadRunner进行性能测试执行

4、主流关系型数据库(例如Oracle、SQLServer)的优化策略

5、非关系型数据库(例如Trip)的配置、安装、常用命令等

6、非Windows操作系统的安装和常用命令

7、常用服务器的安装、配置和优化策略(Weblogic,TomCat)

8、对系统存在的性能问题进行定位诊断

9、对系统存在的性能问题提出优化解决方案,并配合研发和集成人员进行系统调优

问hr的问题:

1.贵公司近期和远期的发展目标是什么?

2.贵公司的主要竞争对手有哪些?

3.贵公司有多少开发人员有多少测试人员?

4.贵公司又进一步扩充测试人员的计划吗?

5.如果我有幸能进入贵公司的话,我有怎么样的发展?

6.测试人员的沟通能力很重要,贵公司有规范的沟通渠道吗?

7.请介绍一下贵公司的福利情况。

8.请问我什么时候能知道结果?

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2