您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 招聘面试 > 软件测试面试题集合整理
13.测试分析测试用例注意(事项)?1.为什么要写用例:我们编写测试用例,有如下的好处:便于团队交流:假如说一个测试团队有10个成员,大家测试的时候都各自为政,没有统一的标准,测试的效率无疑会大打折扣;如果大家都遵循统一的用例规范去写,就会解决这一问题。便于重复测试:大家知道,软件在实际开发过程中是会有不同版本的,比如会从1.0升级到10.0,那么如果不写测试用例的话,在测试10.0版本的时候,你能完全记得1.0版本时你做过哪些测试吗?测试用例就像一个备忘录一样,便于重复测试。便于跟踪统计:这一点是针对测试经理或是项目经理来说的,项目负责人通过看测试用例的执行情况,就能了解到项目目前的概况,比如已经执行了哪些测试,还有哪些测试没有执行,测试没有通过的地方主要集中在哪些模块等。便于用户自测:尤其是项目软件,有的时候用户希望自己测试一下软件产品,但是用户大都是非专业人士,他需要根据你写好的用例来更好的检验产品的质量说了这么多编写测试用例的优点,那它有没有缺点呢?有一个明显的缺点就是需要花费大量的时间,通常编写测试用例的时间比实际执行测试的时间还要长,这一点大家会在实际工作中有深刻的体会11.需求测试注意事项有哪些?一个良好的需求应当具有一下特点:完整性:每一项需求都必须将所要实现的功能描述清楚,以使开发人员获得设计和实现这些功能所需的所有必要信息。正确性:每一项需求都必须准确地陈述其要开发的功能。一致性:一致性是指与其它软件需求或高层(系统,业务)需求不相矛盾。可行性:每一项需求都必须是在已知系统和环境的权能和限制范围内可以实施的。无二义性:对所有需求说明的读者都只能有一个明确统一的解释,由于自然语言极易导致二义性,所以尽量把每项需求用简洁明了的用户性的语言表达出来。健壮性:需求的说明中是否对可能出现的异常进行了分析,并且对这些异常进行了容错处理。必要性:“必要性”可以理解为每项需求都是用来授权你编写文档的“根源”。要使每项需求都能回溯至某项客户的输入,如UseCase或别的来源。可测试性:每项需求都能通过设计测试用例或其它的验证方法来进行测试。可修改性:每项需求只应在SRS中出现一次。这样更改时易于保持一致性。另外,使用目录表、索引和相互参照列表方法将使软件需求规格说明书更容易修改。可跟踪性:应能在每项软件需求与它的根源和设计元素、源代码、测试用例之间建立起链接链,这种可跟踪性要求每项需求以一种结构化的,粒度好(fine-grained)的方式编写并单独标明,而不是大段大段的叙述。9.软件本地化测试比功能测试都有哪些方面需要注意?软件本地化测试的目的:软件本地化测试的测试策略:1.本地化软件要在各种本地化操作系统上安装并测试。2.源语言软件安装在另一台相同源语言操作系统上,作为对比测试。3.重点测试因本地化引起的软件的功能和软件界面的错误。4.测试本地化软件的翻译质量。5.手工测试和自动测试相结合。四款主流测试工具的测试流程主流测试工具的测试流程========winrunner1启动时选择要加载的插件2进行一些设置(如录制模式等)3识别应用程序的GUI,即创建map(就是学习被测试软件的界面)4建立测试脚本(录制及编写)5对脚本除错及调试(保证能够运行完)6插入各种检查点(图片,文字,控件等)7在新版应用程序中执行测试脚本8分析结果,回报缺陷=========quicktestpro========1准备录制打开你要对其进行测试的应用程序,并检查QuickTest中的各项设置是否适合当前的要求。2进行录制打开QuickTest的录制功能,按测试用例中的描述,操作被测试应用程序。3编辑测试脚本通过加入检测点、参数化测试,以及添加分支、循环等控制语句,来增强测试脚本的功能,使将来的回归测试真正能够自动化。4调试脚本调试脚本,检查脚本是否存在错误。5在回归测试中运行测试在对应用程序的回归测试中,通过QuickTest回放对应用程序的操作,检验软件正确性,实现测试的自动化进行。6分析结果,报告问题查看QuickTest记录的运行结果,记录问题,报告测试结果。====TestDirect============安装好后,先进入站点管理1创建域及工程2添加用户3编辑licenses及本服务器4编辑数据库--TD1选择新建的工程进行定制(列表,用户,组,版本等)2在require中增加需求3把需求转化为plan4在testlab中由计划新建测试具体用例与执行5发现bug,在defect中提交bug(每一部分都可以相对独立地使用)======loadrunner1制定负载测试计划(分析应用程序,确定测试目标,计划怎样执行LoadRunner)2开发测试脚本(录制基本的用户脚本,完善测试脚本)3创建运行场景(选择场景类型为ManualScenario,选择场景类型,理解各种类型,场景的类型转化)4运行测试5监视场景(MEMORY相关,PROCESSOR相关,网络吞量以及带宽,磁盘相关,WEB应用程序,IIS5.0,SQLSERVER,NETWORKDELAY等)6分析测试结果(分析实时监视图表,分析事务的响应时间,分解页面,确定WEBSERVER的问题,其他有用的功能)12.简述一下缺陷的生命周期软件缺陷的生命周期指的是一个软件缺陷被发现、报告到这个缺陷被修复、验证直至最后关闭的完整过程。简单的软件缺陷生命周期:1、发现——打开:测试人员找到软件缺陷并将软件缺陷提交给开发人员;2、打开——修复:开发人员再现、修复缺陷,然后提交测试人员去验证;3、修复——关闭:测试人员验证修复过的软件,关闭已不存在的缺陷。但是这是一种理想的状态,在实际的工作中是很难有这样的顺利的,需要考虑的各种情况都还是非常多的。复杂的软件缺陷生命周期:1、新建一个软件缺陷,这个软件缺陷是(open)状态,进行bug审查,不是代码问题,就是设计需要修改;2、新建一个软件缺陷,这个软件缺陷是(open)状态,进行bug审查,以后修改的,就可以延期;3、新建一个软件缺陷,这个软件缺陷是(open)状态,进行bug审查,实际没有这个bug,可以将其关闭;4、新建一个软件缺陷,这个软件缺陷是(open)状态,看是否清楚可重现,如果不能重现,就是缺少信息,需要返回到(open)状态;如果能够重现,就进行修正,修正后关闭,进行回归测试。1、什么是兼容性测试?兼容性测试侧重哪些方面?兼容测试主要是检查软件在不同的硬件平台、软件平台上是否可以正常的运行,即是通常说的软件的可移植性。兼容的类型,如果细分的话,有平台的兼容,网络兼容,数据库兼容,以及数据格式的兼容。兼容测试的重点是,对兼容环境的分析。通常,是在运行软件的环境不是很确定的情况下,才需要做兼容。根据软件运行的需要,或者根据需求文档,一般都能够得出用户会在什么环境下使用该软件,把这些环境整理成表单,就得出做兼容测试的兼容环境了。兼容和配置测试的区别在于,做配置测试通常不是CleanOS下做测试,而兼容测试多是在CleanOS的环境下做的。2、我现在有个程序,发现在Windows上运行得很慢,怎么判别是程序存在问题还是软硬件系统存在问题?1、检查系统是否有中毒的特征;2、检查软件/硬件的配置是否符合软件的推荐标准;3、确认当前的系统是否是独立,即没有对外提供什么消耗CPU资源的服务;4、如果是C/S或者B/S结构的软件,需要检查是不是因为与服务器的连接有问题,或者访问有问题造成的;5、在系统没有任何负载的情况下,查看性能监视器,确认应用程序对CPU/内存的访问情况。3、测试的策略有哪些?黑盒/白盒,静态/动态,手工/自动,冒烟测试,回归测试,公测(Beta测试的策略)4、正交表测试用例设计方法的特点是什么?用最少的实验覆盖最多的操作,测试用例设计很少,效率高,但是很复杂;对于基本的验证功能,以及二次集成引起的缺陷,一般都能找出来;但是更深的缺陷,更复杂的缺陷,还是无能为力的;具体的环境下,正交表一般都很难做的。大多数,只在系统测试的时候使用此方法。6、你觉得bugzilla在使用的过程中,有什么问题?界面不稳定;根据需要配置它的不同的部分,过程很烦琐。流程控制上,安全性不好界定,很容易对他人的Bug进行误操作;没有综合的评分指标,不好确认修复的优先级别。7、描述测试用例设计的完整过程?需求分析+需求变更的维护工作;根据需求得出测试需求;设计测试方案,评审测试方案;方案评审通过后,设计测试用例,再对测试用例进行评审;8、单元测试的策略有哪些?逻辑覆盖、循环覆盖、同行评审、桌前检查、代码走查、代码评审、景泰数据流分析9、LoadRunner分哪三部分?用户动作设计;场景设计;测试数据分析;10、LoadRunner进行测试的流程?1、测试测试2、创建虚拟用户脚本3、创建运行场景4、运行测试脚本5、监视场景6、分析测试的结果以上,最好是结合一个案例,根据以上流程来介绍。什么是并发?在lordrunner中,如何进行并发的测试?集合点失败了会怎么样?在同一时间点,支持多个不同的操作。LoadRunner中提供IP伪装,集合点,配合虚拟用户的设计,以及在多台电脑上设置,可以比较好的模拟真实的并发。集合点,即是多个用户在某个时刻,某个特定的环境下同时进行虚拟用户的操作的。集合点失败,则集合点的才操作就会取消,测试就不能进行。12、使用QTP做功能测试,录制脚本的时候,要验证多个用户的登录情况/查询情况,如何操作?分析用户登录的基本情况,得出一组数据,通过性测试/失败性测试的都有(根据TC来设计这些数据),然后录制登录的脚本,将关键的数据参数化,修改脚本,对代码进行加强,调试脚本。13、QTP中的Action有什么作用?有几种?Action的作用用Action可以对步骤集进行分组步骤重组,然后被整体调用拥有自己的sheet组合有相同需求的步骤,整体操作具有独立的对象仓库Action的种类可复用Action、不可复用Action、外部Action14、TestDirector有些什么功能,如何对软件测试过程进行管理?需求管理定义测试范围定义需求树描述需求树的功能点测试计划定义测试目标和测试策略。分解应用程序,建立测试计划树。确定每个功能点的测试方法。将每个功能点连接到需求上,使测试计划覆盖全部的测试需求。描述手工测试的测试步骤指明需要进行自动测试的功能点测试执行定义测试集合。为每个测试人员制定测试任务和测试日程安排。运行自动测试。缺陷跟踪记录缺陷查看新增缺陷,并确定哪些是需要修正的相关技术人员修改缺陷回归测试分析缺陷统计图表,分析应用程序的开发质量。15、你所熟悉的软件测试类型都有哪些?请试着分别比较这些不同的测试类型的区别与联系(如功能测试、性能测试……)?CompatibilityTesting(兼容性测试),也称“Configurationtesting(配置测试)”,测试软件是否和系统的其它与之交互的元素之间兼容,如:浏览器、操作系统、硬件等。验证测试对象在不同的软件和硬件配置中的运行情况。Functionaltesting(功能测试),也称为behavioraltesting(行为测试),根据产品特征、操作描述和用户方案,测试一个产品的特性和可操作行为以确定它们满足设计需求。本地化软件的功能测试,用于验证应用程序或网站对目标用户能正确工作。使用适当的平台、浏览器和测试脚本,以保证目标用户的体验将足够好,就像应用程序是专门为该市场开发的一样。Performancetesting(性能测试),评价一个产品或组件与性能需求是否符合的测试。包括负载测试、强度测试、数据库容量测试、基准测试等类型。17、Beta测试与Alpha测试有什么区别?Betatesting(β测试),测试是软件的多个用户在一个或多个用户的实际使用环境下进行的测试。开发者通常不在测试现场Alphatesting(α测试),是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的受控测试18、软件的评审一般由哪些人参加?其目的是什么?在正
本文标题:软件测试面试题集合整理
链接地址:https://www.777doc.com/doc-4470804 .html