黑马程序员技术交流社区

标题: 软件测试工程师笔试题 [打印本页]

作者: 庭院深深深几许    时间: 2019-4-25 15:50
标题: 软件测试工程师笔试题
  1、怎么来设计测试方案?
  根据测试需求(包括功能需求和非功能性需求),识别测试要点,识别测试环境要求,安排测试轮次,根据项目计划和开发计划做整体的测试安排。
  被测试的特性:通过对需求规格说明书进行分析,列出本次测试需要进行测试的各部分特性(如要测试的功能需求、性能需求、安全性需求等等);
  不被测试的特性:由于资源、进度等方面原因,本次测试不列入测试范围的特性;
  测试组网图:进行本次系统测试所需要的软硬件设备、配置数据已及相互间的逻辑、物理连接。今后测试执行时需要依据这个组网图来进行环境的搭建。
  2、如果给你一个B/S系统你怎么来进行测试?
  此题答案还可用于回答测试流程,测试流程题亦可参考15题。
  阅读系统需求,充分理解需求,记录问题,并与项目需求人员充分沟通。
  编写测试需求,包括系统功能和非功能测试要点、测试类型、测试进度质量要求等。
  制定测试计划,包括熟悉测试业务、设计测试用例、执行测试用例、进行测试小结、编写测试报告,任务颗粒度一般应小于5人天
  编写测试用例,根据测试方案设计用例,即便没有明确的性能和安全测试要求,也应识别进行此两项测试。
  执行软件测试,
  进行测试小结,如果测试持续时间较长,每个版本间隙总结本轮测试。
  编写测试报告,总结测试过程,汇总度量数据。
  3、怎么进行工作流的测试?
  把握需求,找准结点,理清流程,画出流转图,弄清节点间的数据流转,设计测试用例的时候必须覆盖所有可能的流程。
  工作流:
  如果问到有没有做过,根据对工作流的了解情况回答,如果比较了解,可以把参与的某个项目中说上一些有工作流的,如果不是很了解就说没有做过,但是学习过相关知识。
  4、做性能测试的时候都需要关注哪些参数?
  并发访问量,服务器响应时间(最小、平均、最大)
  并发性能测试的过程是一个负载测试和压力测试的过程,即逐渐增加负载,直到系统的瓶颈或者不能接收的性能点,通过综合分析交易执行指标和资源监控指标来确定系统并发性能的过程。
  负载测试(Load Testing)是确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统组成部分的相应输出项,例如通过量、响应时间、CPU负载、内存使用等来决定系统的性能。
  负载测试是一个分析软件应用程序和支撑架构、模拟真实环境的使用,从而来确定能够接收的性能过程。压力测试(Stress Testing)是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。
  疲劳测试是采用系统稳定运行情况下能够支持的最大并发用户数,持续执行一段时间业务,通过综合分析交易执行指标和资源监控指标来确定系统处理最大工作量强度性能的过程。 疲劳强度测试可以采用工具自动化的方式进行测试,也可以手工编写程序测试,其中后者占的比例较大。
  一般情况下以服务器能够正常稳定响应请求的最大并发用户数进行一定时间的疲劳测试,获取交易执行指标数据和系统资源监控数据。如出现错误导致测试不能成功执行,则及时调整测试指标,例如降低用户数、缩短测试周期等。还有一种情况的疲劳测试是对当前系统性能的评估,用系统正常业务情况下并发用户数为基础,进行一定时间的疲劳测试。
  大数据量测试可以分为两种类型:针对某些系统存储、传输、统计、查询等业务进行大数据量的独立数据量测试;与压力性能测试、负载性能测试、疲劳性能测试相结合的综合数据量测试方案。大数据量测试的关键是测试数据的准备,可以依靠工具准备测试数据。
  5、客户没给性能指数,怎么开展性能测试?
  如果客户没有提出明确的性能指标,可以按照惯例和经验设置,需要和PM协商,一般由PM确认,QA负责给出建议。
  举例说一个Server端程序,要求峰值时CPU和MEM消耗在75%以下,而一个页面的访问响应时间一般认为用户的忍耐时间是3-5秒以内,这些要参考实际的应用来确定用户规模、操作频率、同时在线数等。
  6、有没有做过接口测试,是如何做的?
  通过编写测试程序, 获得接口指针, 逐个调用接口函数验证其正确性, 及失败操作
  7、测试过程中是如何来保证软件质量的?
  测试用例编写完毕后要加强评审的力度,确保测试用例覆盖所有需求点
  执行测试过程中注意做小结检查覆盖情况、审视所提缺陷质量,复测时应注意相关模块的测试
  测试时间宽裕的话可以做交叉测试,用以确保测试质量。
  8、测试方案都写什么内容?
  1概述
  2被测对象分析
  3应测试的特性
  4不被测试的特性
  5总体设计方法
  6测试模型
  6.1测试组网图
  6.2结构/对象关系图
  6.3测试原理
  6.4操作规程
  7测试需求
  7.1环境需求
  7.2被测对象需求
  7.3测试工具需求
  7.4测试代码需求
  7.5数据需求
  7.6其它需求
  8测试设计
  8.1工具设计
  8.2测试代码设计
  8.3用例设计
  8.3.1设计原则
  8.3.2测试项目
  9.附录
  (测试方案要求根据《SRS》上的每个需求点设计出包括需求点简介,测试思路和详细测试方法三部分的方案) 以往华为测试方案  目录如下:
  第1章 技术方案
  1.1. 测试需求描述
  1.1.1. 测试类型分析
  1.1.2. 测试内容
  1.2. 缺陷分类
  1.3. 缺陷级别
  第2章 SOW及规格的应答
  2.1. 测试需求应答
  2.2. 交付件应答
  2.2.1. 软件交付件应答
  2.2.2. 非软件交付件应答
  2.3. 项目里程碑项目完成时间应答
  2.4. 质量目标应答
  2.5. 验收标准应答
  2.6. 限制应答
  2.6.1. 合作供应商人员组织应答
  2.6.2. 硬件设备应答
  2.6.3. 合作项目开发场地应答
  第3章 类似项目成功案例
  第4章 项目详细工作计划
  第5章 项目估算
  9、测试方案和测试计划的区别?
  测试方案是技术性的;测试计划更多是管理性的。
  测试计划主要要考虑测试的技术可行性、关键技术、资源投入、进度安排、风险管理、配置管理、输入输出等。
  测试计划更多地供高层、管理者决策时做参考;同时对后续测试工作开展起指导作用。
  在一些小项目中,可能只需要一个测试方案,测试计划内容相对较少,可以与测试方案合并进行;而一些大项目中,也许要设计数十个测试方案,这就需要一个提纲挈领的东西了,这就是测试计划的作用。
  10、测试用例是根据什么写的?
  系统测试用例根据需求和设计编写
  (华为的SDV测试用例是根据《测试方案》和测试策略来编写的)
  11、是怎么来设计测试用例的?
  答:先熟悉系统需求,把握测试要点,设计用例的原则首先是要覆盖每个需求点,可以通过填写需求跟踪矩阵来保证覆盖。
  黑盒测试的测试用例设计方法:等价类划分法、边界值分析法、错误推测法、因果图。
  12、有没有测过手机终端的项目?
  根据实际情况回答,如果没有测试过,可以回答,公司有过类似业务。
  手机终端测试
  13、对测试工作的认识是什么?
  答:软件测试是软件开发过程的重要组成部分,是用来确认一个程序的品质或性能是否符合开发之前所提出的一些要求。软件测试就是在软件投入运行前,对软件需求分析、设计规格说明和编码的最终复审,是软件质量保证的关键步骤。软件测试是为了发现错误而执行程序的过程。
  软件测试在软件生存期中横跨两个阶段:通常在编写出每一个模块之后就对它做必要的测试(称为单元测试)。编码和单元测试属于软件生命周期中的同一个阶段。在结束这个阶段后对软件系统还要进行各种综合测试,这是软件生命周期的另一个独立阶段,即测试阶段。
  华为独立外包测试一般包括ST(系统测试)和SDV(详细设计验证)两个阶段。
  14、缺陷是怎么管理的?
  答:我们采用了Rational ClearQuest来管理缺陷。
  测试人员执行测试,发现缺陷,录入CQ,要求填写项目名称、子系统名称、模块名称、缺陷标题、缺陷描述(描述场景、现象)、缺陷级别、提出人等。状态:已提交。
  项目经理或开发组长确认缺陷后分配给开发人员,状态:已分配。
  开发人员修复缺陷完成后,将修复缺陷所花费的时间填写的Schedule中,缺陷的产生原因填写在备注中,因采用UCM模式,所有造成该缺陷的错误代码文件,在UCM视图中可以统计。状态:已处理。
  测试人员复测,如缺陷已经修复,则关闭缺陷,状态:已关闭。如缺陷仍然存在,则修改状态为已分配。
  当缺陷存在争议时,开发组长或开发人员可以申请否决,由项目经理、技术经理、测试负责人、相关开发人员和测试人员共同决定缺陷是否可以否决。状态:已申请否决、已否决。
  当前不能修复,或当前版本无法解决的缺陷可以申请延期,状态:已申请延期、已延期。
  15、介绍一下测试流程:
  答:项目启动后进行需求培训,测试人员尽早的参与到项目需求的培训和评审,也就是测试工作应该从需求阶段开始介入。
  项目经理编写《项目计划》,开发人员产出《需求规格说明书》,这时测试组长就要根据《项目计划》开始编写《测试计划》,其中包括人员,软件硬件资源,测试点,进度安排和风险识别等内容。《测试计划》编写完成后需要进行评审,参与人员有项目经理,测试经理。测试组长需要根据评审意见修改《测试计划》,并上传到CC上,由配置管理员管理。
  待开发人员把《需求规格说明书》归纳好并打了基线,测试组长开始组织测试成员编写《测试方案》,《测试方案》编写完成后也需要进行评审,评审人员包括项目经理,开发人员,测试经理,测试组长,测试成员;测试组长组织测试成员修改测试方案,直到评审通过后才进入下个阶段――编写测试用例。
  测试用例是根据《测试方案》来编写的,通过《测试方案》阶段,测试人员对整个系统需求有了详细的理解。这时开始编写用例才能保证用例的可执行和对需求的覆盖。测试用例需要包括测试项,用例级别,预置条件,操作步骤和预期结果。其中操作步骤和预期结果需要编写详细和明确。测试用例应该覆盖测试方案,而测试方案又覆盖了测试需求点,这样才能保证客户需求不遗漏。同样,测试用例也需要通过开发人员,测试人员的评审,测试组长也需要组织测试人员对测试用例进行修改,直到评审通过。
  在我们编写测试用例的阶段,开发人员基本完成代码的编写,同时完成单元测试。提交测试中心后根据《测试计划》进度安排,测试组长组织进行多轮次的测试,每轮测试完成后测试组长需要编写测试报告,其中包括用例执行通过情况,缺陷分布情况,缺陷产生原因,测试中的风险等等,这时测试人员就修改增加测试用例。待到开发修改完bug并转来新的测试版本,测试人员开始进行第二轮的系统测试,首先回归完问题单,再继续进行测试,编写第二轮的测试报告,如此循环下去,直到系统测试结束。
  16、一个关于测试方案评审的分歧?
  我们原本的流程是完成方案包括用例后进行评审,华为的建议是,在测试方案(即测试人员总结出测试重点等)之后,即进行评审,不能等全部用例完成。
  关于版本缺陷密度的问题:问有没有统计。如果CQ中正常登记的话,是可以利用工具统计出来。CQ还可以根据需要定制查询。关于测试提交标准:我讲了公司的标准,他说客户也会有自己的标准。我回复说是可以依据客户标准进行调整。
  17、Unix系统熟识,运用Informix 数据库。
  ls 列出指定目录下的文件,缺省目录为当前目录 ./
  pwd 显示当前的工作目录
  cd 回到注册进入时的目录 cd /tmp 进入 /tmp 目录 cd ../ 进入上级目录
  mkdir [-m 模式] [-p] 目录名 建立目录
  mkdir tmp 在当前目录下建立子目录 tmp
  mkdir -m 777 /tmp/abc 用所有用户可读可写可执行的存取模式
  建立目录 /tmp/aaa ,存取模式参看命令 chmod
  mkdir -p /tmp/a/b/c 建立目录 /tmp/a/b/c ,若不存在目录 /tmp/a
  及/tmp/a/b 则建立之
  mv [-f] [-i] 文件1 [文件2...] 目标 将文件移动至目标,若目标是文件名,则相当于文件改名
  rm [-f] [-i] 文件...或 rm -r [-f] [-i] 目录名... [文件] 用来删除文件或目录
  cmp [-l] [-s] 文件1 文件2 比较两个文件,
  diff [-be] 文件1 文件2 比较两个文本文件,将不同的行列出来
  pack 文件... 将指定文件转储为压缩格式,文件名后加 .z , 文件存取模式,访问时间,修改时间等均不变
  pcat 文件... 显示输出压缩文件
  unpack 文件... 将压缩后的文件解压后转储为压缩前的格式
  vi [-wn] [-R] 文件...
  vi 是一个基于行编辑器 ex 上的全屏幕编辑器,可以在vi 中使用 ex,ed的全部命令,vi选项中 -wn 指将编辑窗口大小置为n行,-R 为将编辑的文件置为只读模式, vi 工作模式分为命令模式和输入模式,一般情况下在命令模式下,可敲入vi命令,进入输入模式下时可以编辑要编辑的文本,命令 a A i I o O c C s S R 可进入输入模式,在输入模式下按 ESC 键可推出输入模式,回到命令模式,在命令模式中敲入: 命令,则可进入ex方式,在屏幕底部出现提示符 : ,此时可使用任意ex命令,屏幕底行也用来作/ ? ! 命令的提示行,大多数命令可以在其前面加数字,表示命令执行的重复次数,下面简单介绍一下vi 的命令集,^ 表示(CTRL)键
  quit 退出bc
  18、金融业务系统的测试,有哪些要点?
  首先要根据客户的需求文档,保证业务逻辑正确、符合要求。举例授信审批流程来说,主要测试前面岗位录入的数值资料传递到流程最后一个岗位后能正确显示;以及操作员的权限控制严格按照需求要求,不同的权限除了在流程中的作用不同,所能执行的功能也不同
  19、平时测试时怎么保证页面间传值正确?
  除了看页面的显示,还要连接数据库对相应的表进行查询,对数据库表结构不了解时,会询问相关的开发人员。
  20、对于系统运行产生的日志文件是否关注?
  答:只是适当了解,公司对于服务器的维护安排有人负责。
  21、银行的系统是否在同一个页面,用不同权限的业务员登陆会显示不同的结果?会不会因为自己配置的不合理而产生错误?
  1)有同一个页面用不同权限的业务员显示不同结果的情况,主要表现为所能执行的操作不同,所能查询数据的范围不同。
  2) 对于不确定的错误,一般不会立刻当缺陷处理,需要跟相关人员沟通,确认了并非自己部署得不正确的原因,才会提缺陷。这个很重要。




传智播客为了将更优质的教育资源惠及更多学子,经过多年的教学探索及战略布局,已向着综合型职业教育集团发展,目前旗下已涵盖传智播客IT教育培训,黑马程序员训练营及博学谷三大子品牌。现直营分校已遍布北京、上海、广州、深圳、武汉、郑州、西安、哈尔滨、长沙、济南等一线城市及省会城市,并将逐步在其他省会城市开始直营分校,让学员可以离高薪更近一点。
  经过10年的专业积淀,传智播客一直专注培养Android、iOS、Java、C/C++、PHP、UI设计、游戏开发、大数据、网络营销、前端与移动开发等泛IT领域的应用工程师,并向社会输送了数10万泛IT行业的高级人才,其中90%以上的学员都在北、上、广、深等一线城市高薪就业。有效的解决了当下互联网行业飞速发展,高端人才供不应求的难题,并且带动了整个IT产业的发展。
  传智播客精益求精的教学品质,也赢得了学员口口相传,这也使得传智播客稳居国内IT培训的领先地位。
  java培训
  传智播客的java培训课程已经有十三年的历史。教育质量始终领先同行业。
  传智Java培训拥有6大课程优势:(http://www.itcast.cn/javaee/
  ①独有的一站式IT职业教育体系,让学员通过6个月的线下学习实现高起点就业, 12个月的线上在职进阶课实现升职加薪,大幅提升学员的职场晋升速度。
  ②60+套技术解决方案,覆盖职场常见开发问题,让学员就业后快速上手开发难题,轻松成为核心员工。
  ③超大项目库,覆盖7大就业主流热门行业,让学员边学习边积累项目开发经验。
  ④超千人投入的3大课程研发库,每年耗资千万打造领先行业的优质课程。
  ⑤传智&华为课程共建,持续为课程输出前沿技术。
  ⑥120+超强师资团队,多为总监、架构师出身,除了专业技能,还为你规划适合你的职业发展路线。
  python培训
  传智播客的python培训班拥有数位总监级讲师,优质的python培训课程以及良好的班级分为使传智播客成为python培训口碑最好的机构。
  Python5.0课程重磅升级,再树行业新标杆(http://www.itcast.cn/python/
  传智根据最新的技术发展方向和企业用人需求, 对Python课程进行了全面升级——Web开发课程占比达40%,包含了热点技术方案、门户及管理信息系统等;人工智能课程占比达30%,包含机器学习常见算法、AI实例演练等;独创“黑马头条”大型一站式项目,集齐六大前沿技术,项目实训超40天;就业强化课程为学员准备了数据分析、自动化测试等六大就业强化课程方向,助学员轻松实现高薪就业。
  大数据培训
  大数据是这几年来互联网的重点发展方向,大数据同样是传智播客的热门课程之一。作为大数据培训口碑好机构,传智播客始终以优越的授课质量领先行业。
  大数据课程紧跟行业最新动态带你走向大数据前沿(http://www.itcast.cn/javayun/
  多多年来,大数据教研团队一直紧跟大数据技术市场发展的趋势,确保市场上流行的新技术能不断更新到所学的培训课程中来。本次课程涵盖大数据体系中核心技术,包括Hadoop、Storm、Spark、Hbase、Python、分布式、机器学习等;知识紧密结合企业的热门需求,授课进度更加科学合理,精心打磨的课程体系,为提升核心竞争力保驾护航!
  php培训
  传智播客php培训拥有者业界超强的php培训课程体系,是业内PHP全栈工程师培训班中的佼佼者,为广大编程爱好者提供PHP+H5全栈工程师培训
  课程重磅升级专注培养PHP+H5全栈工程师(http://www.itcast.cn/php/
  传智播客PHP+H5全栈工程师课程源自于长期市场调研,学员反馈等渠道, 汇总出实用的PHP+H5全栈工程师及其周边技术,学员学习本课程之后, 可以快速融入企业开发环境中。课程分为Web前端、前端进阶、核心编程、移动开发、 性能优化等阶段,涵盖HTML5、CSS3、PHP7、Mysql数据库、Mysqli扩展、Https协议、 Smarty、SVN、Ajax、jQuery、Node.js、Git、Redis等核心技术。 同时针对于每项核心技术,做使用及原理上的讲解,使学员知其然并知其所以然,达到掌握原理后,做任何扩展都会游刃有余。
  linux培训
  传智播客linux培训班,汇聚优秀专业的运维大牛,严谨的教学态度以及专业的教学水平,让传智播客成为优质的linux运维培训机构。
  独创场景式教学模式,更贴近真实企业开发场景(http://www.itcast.cn/linux/
  场景式教学模式如同在课堂真实还原企业开发场景,由讲师带领学员完整实操从分析需求、搭配工具,到解决开发问题等各个开发环节,缩短学员就业后与新团队的磨合期,让学员能够快速融入团队,进入高效的工作状态。同时,传智播客强大的课程研发人才库会第一时间分析企业用人需求,并实时更新课程内容,让学员学习到更贴合一线企业需求的新热技术。
  go语言培训
  传智播客GO语言培训班聘请了业内go语言大牛讲师,全面的go语言培训课程,以及严谨的教学态度,为众多go语言学子实现高薪梦想。传智播客GO语言+区块链培训班。
  始终如一的优质课程,全面覆盖企业需要的高薪技术(http://www.itcast.cn/go/
  传智播客课程研发人才库会根据大数据爬虫系统分析技术发展趋势和企业用人需求,并实时更新课程内容。正是因为这种强大的研发投入,传智Go语言课程才能始终如一的优秀。 传智Go语言课程分为开发实战、Golang高级编程、Golang网络与服务器开发、容器化编程、基于分布式的Golang微服务开发、区块链公链开发、区块链框架编程等十个阶段,全面覆盖新热技术,让学员高薪就业无压力。
  产品经理培训
  传智播客产品经理培训班是专业的产品经理孵化基地,有着经验丰厚的产品经理大牛讲师,好口碑产品经理培训课程来自传智播客。
  培养高薪必备能力助你成为企业疯抢的产品精英(http://www.itcast.cn/pm/
  产品经理课程分为8个阶段:1.产品基础,通过学习产品经理工作流程、流程图、结构图、墨刀的学习,培养产品经理工作思维;2.必备技能,掌握需求分析、竞品分析、用户角色、用户画像等;3.产品前台,通过学习京东、网易严选等大型电商平台掌握四流合一思想;4.产品后台,掌握后台产品模型基础、了解电商后台基础业务等;5.产品运营,掌握产品的应用市场上架、线上线下推广、APP换量、多渠道提升产品用户量;6.产品思维,能够为真正的用户设计正确的产品;7.项目实战;8.行业拓展,涉及在线教育、金融、区块链、大数据、微信小程序、人工智能等。
  影视制作培训
  传智播客影视制作培训班是由专业的影视制作行业老师带队授课,专业的授课方式以及严谨的教学态度为社会输送一大批影视制作尖端人才,传智播客影视制作培训班。
  匠心课程体系,培养综合性多维人才(http://www.itcast.cn/movies/
  影视制作的就业方向从剪辑到编导,从动画到特效,就业选择多种多样。 传智播客的影视制作课程涵盖影视编导项目特训、影视合成与特效包装、C4D三维软件实训、影视包装设计等多个方向,几乎涵盖目前影视主流的就业方向,让学员就业时多一重技能傍身,增加高薪就业砝码。
  ui设计培训
  传智播客UI设计培训一直本着学为人师,行为世范德行操守要求着自己,并成为UI培训行业中前行者,为广大UI设计好者提供UI培训,UI设计培训班,UI设计师培训,设计培训,网页设计培训,平面设计培训,UI界面设计,APP UI设计培训服务。(http://www.itcast.cn/ui/
  课程内容系统全面 打造会代码的全能设计师
  目前,设计师和开发者目前正处于互联网的两端,如果能互相学习对方的技术,会使 双方协作效率大大提升。基于此,传智播客UI设计学院研发了设计加前端代码的课程体系。内容 包括平面设计、电商设计、网页设计、UI设计、html+css、JS、JQ、html5+css3、响应式布局、 Flash等课程内容,根据现实工作的需求,由浅入深合理安排,从工具软件的使用开始, 到初级案例分析练习,再经历项目实战,培养合格的会写代码的全能设计师人才
  新媒体运营培训
  传智播客新媒体+短视频培训,课程紧跟时代潮流,就业率屡创新高,新媒体+短视频培训的佼佼者,口碑推荐率70%,真正用情怀做教育的新媒体运营培训机构。
  新媒体+短视频运营培训课程超50%为项目实操
      软件测试培训
      大型项目全新升级
    2大业务方向+4大高薪技能全新升级的大型项目贯穿学习过程,覆盖2大主流业务方向:PC端测试、移动端测试;覆盖4大高薪技能:功能测试、性能测试、接口自动化、UI自动化。同时,软件测试新增4天项目课时:PC端项目新增2天课时;移动端项目新增2天课时。
 坚持传统模块化授课改革,采用实训、作业、练习相结合,授课环境模拟企业真实工作场景。课程体系包括微博/微信/自媒体平台运营、短视频运营、微信小程序运营、产品运营、营销策划、媒介推广六大阶段,涉及200多个行业流行案例分析教学。






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2