我要投稿 投诉建议

软件测试常见的笔试题目

时间:2023-05-05 16:35:33 赛赛 笔试题目 我要投稿
  • 相关推荐

2023软件测试常见的笔试题目

  在平平淡淡的日常中,我们都经常看到试题的身影,借助试题可以更好地考查参试者所掌握的知识和技能。你所见过的试题是什么样的呢?以下是小编帮大家整理的2023软件测试常见的笔试题目,仅供参考,欢迎大家阅读。

2023软件测试常见的笔试题目

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

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

  黑盒法用例设计的关键同样也是以较少的用例覆盖模块输出和输入接口。不可能做到完全测试,以最少的用例在合理的时间内发现最多的问题

  2、问:一台客户端有三百个客户与三百个客户端有三百个客户对服务器施压,有什么区别?

  300个用户在一个客户端上,会占用客户机更多的资源,而影响测试的结果。线程之间可能发生干扰,而产生一些异常。

  300个用户在一个客户端上,需要更大的带宽。

  IP地址的问题,可能需要使用IP Spoof来绕过服务器对于单一IP地址最大连接数的限制。

  所有用户在一个客户端上,不必考虑分布式管理的问题;而用户分布在不同的客户端上,需要考虑使用控制器来整体调配不同客户机上的用户。同时,还需要给予相应的权限配置和防火墙设置。

  3、软件配置管理的作用?软件配置包括什么?

  软件配置管理(Software Configuration Management,SCM)是一种标识、组织和控制修改的技术。软件配置管理应用于整个软件工程过程。在软件建立时变更是不可避免的,而变更加剧了项目中软件开发者之间的混乱。SCM活动的目标就是为了标识变更、控制变更、确保变更正确实现并向其他有关人员报告变更。从某种角度讲,SCM是一种标识、组织和控制修改的技术,目的是使错误降为最小并最有效地提高生产效率。

  软件配置包括如下内容:配置项识别、工作空间管理、版本控制、变更控制、状态报告、配置审计

  4、目前主要的测试用例设计方法是什么?

  白盒测试:逻辑覆盖、循环覆盖、基本路径覆盖

  黑盒测试:边界值分析法、等价类划分、错误猜测法、因果图法、状态图法、测试大纲法、随机测试、场景法

  5、什么是测试用例 什么是测试脚本 两者的关系是什么?

  为实施测试而向被测试系统提供的输入数据、操作或各种环境设置以及期望结果的一个特定的集合。

  测试脚本是为了进行自动化测试而编写的脚本。

  测试脚本的编写必须对应相应的测试用例

  6、简述什么是静态测试、动态测试、黑盒测试、白盒测试、α测试 β测试

  静态测试是不运行程序本身而寻找程序代码中可能存在的错误或评估程序代码的过程。

  动态测试是实际运行被测程序,输入相应的测试实例,检查运行结果与预期结果的差异,判定执行结果是否符合要求,从而检验程序的正确性、可靠性和有效性,并分析系统运行效率和健壮性等性能。

  黑盒测试一般用来确认软件功能的正确性和可操作性,目的是检测软件的各个功能是否能得以实现,把被测试的程序当作一个黑盒,不考虑其内部结构,在知道该程序的输入和输出之间的关系或程序功能的情况下,依靠软件规格说明书来确定测试用例和推断测试结果的正确性。

  白盒测试根据软件内部的逻辑结构分析来进行测试,是基于代码的测试,测试人员通过阅读程序代码或者通过使用开发工具中的单步调试来判断软件的质量,一般黑盒测试由项目经理在程序员开发中来实现。

  α测试是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的受控测试,Alpha测试不能由程序员或测试员完成。

  β测试是软件的多个用户在一个或多个用户的实际使用环境下进行的测试。开发者通常不在测试现场,Beta测试不能由程序员或测试员完成。

  7、软件测试分为几个阶段 各阶段的测试策略和要求是什么?

  和开发过程相对应,测试过程会依次经历单元测试、集成测试、系统测试、验收测试四个主要阶段:

  单元测试:单元测试是针对软件设计的最小单位––程序模块甚至代码段进行正确性检验的测试工作,通常由开发人员进行。

  集成测试:集成测试是将模块按照设计要求组装起来进行测试,主要目的是发现与接口有关的问题。由于在产品提交到测试部门前,产品开发小组都要进行联合调试,因此在大部分企业中集成测试是由开发人员来完成的。

  系统测试:系统测试是在集成测试通过后进行的,目的是充分运行系统,验证各子系统是否都能正常工作并完成设计的要求。它主要由测试部门进行,是测试部门最大最重要的一个测试,对产品的质量有重大的影响。

  验收测试:验收测试以需求阶段的《需求规格说明书》为验收标准,测试时要求模拟实际用户的运行环境。对于实际项目可以和客户共同进行,对于产品来说就是最后一次的系统测试。测试内容为对功能模块的全面测试,尤其要进行文档测试。

  单元测试测试策略:

  自顶向下的单元测试策略:比孤立单元测试的成本高很多,不是单元测试的一个好的选择。

  自底向上的单元测试策略:比较合理的单元测试策略,但测试周期较长。

  孤立单元测试策略:最好的单元测试策略。

  集成测试的测试策略:

  大爆炸集成:适应于一个维护型项目或被测试系统较小

  自顶向下集成:适应于产品控制结构比较清晰和稳定;高层接口变化较小;底层接口未定义或经常可能被修改;产口控制组件具有较大的技术风险,需要尽早被验证;希望尽早能看到产品的系统功能行为。

  自底向上集成:适应于底层接口比较稳定;高层接口变化比较频繁;底层组件较早被完成。

  基于进度的集成

  优点:具有较高的并行度;能够有效缩短项目的开发进度。

  缺点:桩和驱动工作量较大;有些接口测试不充分;有些测试重复和浪费。

  系统测试的测试策略:

  数据和数据库完整性测试;功能测试;用户界面测试;性能评测;负载测试;强度测试;容量测试;安全性和访问控制测试;故障转移和恢复测试;配置测试;安装测试;加密测试;可用性测试;版本验证测试;文档测试

  8、软件测试各个阶段通常完成什么工作?各个阶段的结果文件是什么?包括什么内容?

  单元测试阶段:各独立单元模块在与系统地其他部分相隔离的情况下进行测试,单元测试针对每一个程序模块进行正确性校验,检查各个程序模块是否正确地实现了规定的功能。生成单元测试报告,提交缺陷报告。

  集成测试阶段:集成测试是在单元测试的基础上,测试在将所有的软件单元按照概要设计规格说明的要求组装成模块、子系统或系统的过程中各部分工作是否达到或实现相应技术指标及要求的活动。该阶段生成集成测试报告,提交缺陷报告。

  系统测试阶段:将通过确认测试的软件,作为整个给予计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等其他系统元素结合在一起,在实际运行环境下,对计算机系统进行全面的功能覆盖。该阶段需要提交测试总结和缺陷报告。

  9、黑盒测试和白盒测试是软件测试的两种基本方法,请分别说明各自的优点和缺点!

  黑盒测试的优点有:比较简单,不需要了解程序内部的代码及实现;与软件的内部实现无关; 从用户角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题;基于软件开发文档,所以也能知道软件实现了文档中的哪些功能;在做软件自动化测试时较为方便。

  黑盒测试的缺点有:不可能覆盖所有的代码,覆盖率较低,大概只能达到总代码量的30%;自动化测试的复用性较低。

  白盒测试的优点有:帮助软件测试人员增大代码的覆盖率,提高代码的质量,发现代码中隐 藏的问题。

  白盒测试的缺点有:程序运行会有很多不同的路径,不可能测试所有的运行路径;测试基于代码,只能测试开发人员做的对不对,而不能知道设计的正确与否,可能会漏掉一些功能需求;系统庞大时,测试开销会非常大。

  10、如何测试一个纸杯?

  功能度:用水杯装水看漏不漏;水能不能被喝到

  安全性:杯子有没有毒或细菌

  可靠性:杯子从不同高度落下的损坏程度

  可移植性:杯子在不同的地方、温度等环境下是否都可以正常使用

  兼容性:杯子是否能够容纳果汁、白水、酒精、汽油等

  易用性:杯子是否烫手、是否有防滑措施、是否方便饮用

  用户文档:使用手册是否对杯子的用法、限制、使用条件等有详细描述

  疲劳测试:将杯子盛上水(案例一)放24小时检查泄漏时间和情况;盛上汽油(案例二)放24小时检查泄漏时间和情况等

  压力测试:用根针并在针上面不断加重量,看压强多大时会穿透

  11、你自认为测试的优势在哪里?

  该面试也没有固定不变的答案,但可参考以下几点,并结合自身特点:

  有韧性、有耐心、做事有条理性、喜欢面对挑战、有信心做好每一件事情、较强的沟通能力、从以前的经理处都得到了很好的评价表明我做的很好。

  软件测试工作的面试题目

  1、什么是兼容性测试?兼容性测试侧重哪些方面?

  2、我现在有个程序,发现在Windows上运行得很慢,怎么判别是程序存在问题还是软硬件系统存在问题?

  3、检查系统是否有中毒的特征;

  4、检查软件/硬件的配置是否符合软件的推荐标准;

  5、确认当前的系统是否是独立,即没有对外提供什么消耗CPU资源的服务;

  6、如果是C/S或者B/S结构的软件,需要检查是不是因为与服务器的连接有问题,或者访问有问题造成的;

  7、在系统没有任何负载的情况下,查看性能监视器,确认应用程序对CPU/内存的访问情况。

  8、测试的策略有哪些?黑盒/白盒,静态/动态,手工/自动,冒烟测试,回归测试,公测(Beta测试的策略)

  9、正交表测试用例设计方法的特点是什么?

  10、用最少的实验覆盖最多的操作,测试用例设计很少,效率高,但是很复杂;

  11、对于基本的验证功能,以及二次集成引起的缺陷,一般都能找出来;但是更深的缺陷,更复杂的缺陷,还是无能为力的;

  12、具体的环境下,正交表一般都很难做的。大多数,只在系统测试的时候使用此方法。

  13、描述使用bugzilla缺陷管理工具对软件缺陷(BUG)跟踪的管理的流程?标记就是Bugzilla的状态转换图。

  14、你觉得bugzilla在使用的过程中,有什么问题?标记界面不稳定; 根据需要配置它的不同的部分,过程很烦琐。流程控制上,安全性不好界定,很容易对他人的Bug进行误操作;没有综合的评分指标,不好确认修复的优先级别。

  15、描述测试用例设计的完整过程?需求分析 + 需求变更的维护工作;根据需求, 得出测试需求;设计测试方案,评审测试方案;方案评审通过后,设计测试用例,再对测试用例进行评审。

  软件测试笔试的题目及答案

  1、客户交付一个性能测试项目,请阐述你的实施流程。

  答案:

  测试设计阶段:

  1)了解被测系统的性能需求,定义测试目标和范围;

  2)了解系统的技术信息,如系统架构等;

  3)确定测试方案、进度安排,并制定测试计划,场景设置方案,及需要收集的测试数据;

  4)同相关人员协商讨论测试方案;

  5)准备数据收集模板;不同项目的性能测试,需要收集的数据不同;针对性的制定一个模板,更符合需要;

  测试环境准备:

  1)技术准备;选择性能测试工具;测试方案中涉及到的技术问题;测试数据的收集方案实现;如:如何监控系统资源等;

  2)搭建测试环境;

  3)创建初始数据;如虚拟用户使用的账号等;

  测试执行阶段:

  1)录制脚本;

  2)调试脚本;

  3)执行场景;

  4)收集测试数据,并简单整理;

  测试分析阶段:

  1)分析测试数据;

  提交测试报告 。

  2、解释5个常用的性能指标的名称与具体含义。

  答案:

  并发:所有用户在同一时刻对系统执行操作,一般指做同一件事情或操作。

  在线:所有用户在一段时间内对系统执行操作。

  请求响应时间

  从client端发出请求到得到响应的整个时间;

  包括:client端响应时间+网络响应时间+Server端响应时间。

  事务请求响应时间

  完成相应事务所用的时间;这个是性能测试中重点关注的指标。

  TPS(Transaction Per Second)

  每秒钟系统能够处理的交易或事务的数量。它是衡量系统处理能力的重要指标。TPS是LoadRunner中重要的性能参数指标。

  点击率(Hit Per Second)

  每秒发送的HTTP请求的数量;点击率越大对Server的压力越大。

  资源利用率

  对不同资源的使用程度,如CPU,I/O,内存,……

  3、写出5个Loadrunner中常用函数,并对其中2个举例说明用法。

  答案:

  字符串复制

  strcpy(str,”Hello “) ;

  字符串连接

  strcat(str,”World !”);

  lr_message(“str: %s”,str);

  sprintf(s, “%s love %s.”, “I”, “ocean”); //产生:”I love ocean. ”

  变量转为参数,将变量str的值存到参数Param中

  lr_save_string(str,”Param”);

  参数复制

  lr_save_string(lr_eval_string(“{Param}”),”Param_1″);

  参数转为变量

  strcpy(str1,lr_eval_string(“{Param_1}”));

  4、简述LoadRunner的工作原理?

  答案: loadrunner会自动监控指定的URL或应用程序所发出的请求及服务器返回的响应,它做为一个第三方(Agent)监视客户端与服务器端的所有对话,然后把这些对话记录下来,生成脚本,再次运行时模拟客户端发出的请求,捕获服务器端的响应。

  5、LaodRunner脚本中action()和init、end()除了迭代的区别还有其他吗?

  答案: 集合点只能插入到Action部分,vuser_init和vuser_end中不能插入集合点。action()和init、end()都可以插入事务点。

  6、什么是集合点?设置集合点有什么意义?LoadRunner中设置集合点的函数是哪个?

  答案: 集合点:是一个并发访问的点,例如在测试计划中,可能会要求系统能够承受1000 人同时提交数据,在LoadRunner 中可以通过在提交数据操作前面加入集合点,这样当虚拟用户运行到提交数据的集合点时,LoadRunner 就会检查同时有多少用户运行到集合点,如果不到1000 人,LoadRunner 就会命令已经到集合点的用户在此等待,当在集合点等待的用户达到1000 人时,LoadRunner 命令1000 人同时去提交数据,并发访问的目的。

  注意:集合点经常和事务结合起来使用,常放在事务的前面,集合点只能插入到Action 部分,vuser_init和vuser_end中不能插入集合点。集合点函数如下:lr_rendezvous(“SubmitData”)

  7、录制Web脚本时,生成的脚本中存在乱码该如何解决?

  答案 : 录制脚本前,打开录制选项配置对话框Record-Options,进入到Advanced标签,先勾选”Support charset”,然后选择中支持UTF-8再次录制,就不会出现中文乱码问题了。

  8、HTML-based script与URL-based script的脚本有什么区别?

  答案: 使用”HTML-based script”的模式录制脚本,VuGen为用户的每个HTML操作生成单独的步骤,这种脚本看上去比较直观;使用”URL-based script”模式录制脚本时,VuGen可以捕获所有作为用户操作结果而发送到服务器的HTTP请求,然后为用户的每个请求分别生成对应方法。

  通常,基于浏览器的Web应用会使用”HTML-based script”模式来录制脚本;而没有基于浏览器的Web应用、Web应用中包含了与服务器进行交互的Java Applet、基于浏览器的应用中包含了向服务器进行通信的JavaScript/VBScript代码、基于浏览器的应用中使用了HTTPS安全协议,这时使用”URL-based script”模式进行录制。

  9、使用LoadRunner进行综合场景测试,如何设置能够使被测系统所受压力减轻,请分别加以说明。

  答案: 若使被测系统所受压力减轻,可从如下方面进行综合调解:

  将测试脚本中think time值加大并在控制台中按比例实现,此处think time指在transaction外部的时间;

  Controller中Run-Time Setting的Pacing设置值加大;

  虚拟用户登录时使用递增策略,间隔稍长。

【软件测试常见的笔试题目】相关文章:

软件测试笔试题题目06-16

2016年软件测试常见笔试题06-20

2017软件测试笔试题目06-17

2017软件测试笔试题目总结06-18

2017软件测试常见的面试笔试题(附答案)06-19

华为软件测试工程师笔试题目06-20

关于软件测试工程师笔试题目06-17

2017软件测试工程师笔试题目06-17

软件测试笔试经验06-16