清华学姐吐血整理!20天熬夜肝出来的面试手册!最终拿到字节offer

清华学姐熬夜20天,吐血整理出来了这份面试手册,内容很多,建议收藏后观看,(文末可领取大厂面试真题简历模板视频资料等资源)

软件测试面试题

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

  • 兼容测试主要是检查软件在不同的硬件平台、软件平台上是否可以正常的运行,即是通常说的软件的可移植性。
  • 兼容的类型,如果细分的话,有平台的兼容,网络兼容,数据库兼容,以及数据格式的兼容。
  • 兼容测试的重点是,对兼容环境的分析。通常,是在运行软件的环境不是很确定的情况下,才需要做兼容。根据软件运行的需要,或者根据需求文档,一般都能够得出用户会在什么环境下使用该软件,把这些环境整理成表单,就得出做兼容测试的兼容环境了。

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

  • 检查系统是否有中毒的特征。
  • 检查软件/硬件的配置是否符合软件的推荐标准。
  • 确认当前的系统是否是独立,即没有对外提供什么消耗 CPU 资源的服务。
  • 如果是 C/S 或者 B/S 结构的软件,需要检查是不是因为与服务器的连接有问题,或者访问有问题造成的。
  • 在系统没有任何负载的情况下,查看性能监视器,确认应用程序对 CPU/内存的访问情况。

3、测试的策略有哪些?

  • 黑盒/白盒,静态/动态,手工/自动,冒烟测试,回归测试,公测(Beta测试)

4、描述测试用例设计的完整过程?

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

5、Alpha 测试与Beta 测试有什么区别?

  • Alpha testing (α 测试),是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的受控测试。
  • Beta testing(β 测试),测试是软件的多个用户在一个或多个用户的实际使用环境下进行的测试,开发者通常不在测试现场。

6、测试活动中,如果发现需求文档不完善或者不准确,怎么处理?

  • 应该立即和相关人员进行协调交流。

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

  • 软件测试计划就是在软件测试工作正式实施之前明确测试的对象,并且通过对资源、时间、风险、测试范围和预算等方面的综合分析和规划,保证有效的实施软件测试。
  • 做好测试计划工作的关键:目的,管理,规范

8、一套完整的测试应该由哪些阶段组成?

  • 测试计划、测试设计与开发、测试实施、测试评审与测试结论

9、简述集成测试与系统测试关系?

  • 集成测试的主要依据概要设计说明书,系统测试的主要依据是需求设计说明书。
  • 集成测试是系统模块的测试,系统测试是对整个系统的测试,包括相关的软硬件平台、网络以及相关外设的测试。

10、功能测试用例需要详细到什么程度才是合格的?

  • 这个问题也是测试工程师经常问的问题。
  • 有人主张测试用例详细到每个步骤执行什么都要写出来,目的是即使一个不了解系统的新手都可以按照测试用例来执行工作,主张这类写法的人还可以举出例子:欧美、日本等软件外包文档都是这样做的。
  • 另外一种观点就是主张写的粗些,类似于编写测试大纲。主张这种观点的人是因为软件开发需求管理不规范,变动十分频繁,因而不能按照欧美的高标准来编写测试用例。这样的测试用例容易维护,可以让测试执行人员有更大的发挥空间。
  • 实际上,软件测试用例的详细程度首先要以覆盖到测试点为基本要求。举个例子:“用户登陆系统”的测试用例可以不写出具体的执行数据,但是至少要写出几种以上,如果只用一句话覆盖了这个功能是不合格的测试用例。覆盖功能点不是指列出功能点,而是要写出功能点的各个方面(如果组合情况较多时可以采用等价划分)。
  • 另一个影响测试用例的就是组织的开发能力和测试对象特点。如果开发力量比较落后,编写较详细的测试用例是不现实的,因为根本没有那么大的资源投入,当然这种情况很随着团队的发展而逐渐有所改善。测试对象特点重点是指测试对象在进度、成本等方面的要求,如果进度较紧张的情况下,是根本没有时间写出高质量的测试用例的,甚至有些时候测试工作只是一种辅助工作,因而不编写测试用例。
  • 因此,测试用例的编写要根据测试对象特点、团队的执行能力等各个方面综合起来决定编写策略。最后要注意的是测试人员一定不能抱怨,力争在不断提高测试用例编写水平的同时,不断地提高自身能力。

11、发现的缺陷越多,说明软件缺陷越多吗?

  • 这是一个比较常见的现象。测试工程师在没有找到缺陷前会绞尽脑汁的思考,但是找到一个后,会接二连三的发现很多缺陷,颇有个人成就感。

其中的原因主要如下:

  • 代码复用、拷贝代码导致程序员容易犯相同的错误。类的继承导致所有的子类会包含基类的错误,反复拷贝同一代码意味着可能也复制了缺陷。
  • 程序员比较劳累是可以导致某些连续编写的功能缺陷较多。程序员加班是一种司空见惯的现象,因此体力不支时容易编写一些缺陷较多的程序。而这些连续潜伏缺陷恰恰是测试工程师大显身手的地方。
  • “缺陷一个连着一个”不是一个客观规律,只是一个常见的现象。如果软件编写的比较好,这种现象就不常见了。测试人员只要严肃认真的测试程序就可以了。

12、写出 Bug 报告流转的步骤,每步的责任人及主要完成的工作。

  • 测试人员提交新的 Bug 入库,错误状态为 New。
  • 高级测试员/测试经理验证错误,如果确认是错误,分配给开发组。设置状态为 Open。如果不是错误,则拒绝,设置为 Declined 状态。
  • 开发经理分配 Bug 至对应的模块开发人员。
  • 开发人员查询状态为 Open 的 Bug,如果不是错误,则置状态为 Declined;如果是 Bug 则修复并置状态为 Fixed;不能解决的 Bug,要留下文字说明及保持 Bug 为 Open 状态。
  • 对于不能解决和延期解决的 Bug,不能由开发人员自己决定,一般要通过某种会议(评审会)通过才能认可。测试人员查询状态为 Fixed 的 Bug,然后验证 Bug 是否已解决,如解决,置 Bug 的状态为 Closed,如没有解决,置 Bug 状态为 Reopen。

13、写出 Bug 报告当中一些必备的内容。

  • 版本,提交缺陷报告时通过该字段标识此缺陷存在于被测试软件的哪个版本
  • Bug 报告优先级
  • Bug 状态
  • Bug 编号
  • 发现人
  • 提交人
  • 指定处理人
  • 概述
  • 详细描述
  • 严重程度
  • 所属模块
  • 附件
  • 提交日期

14、画出软件测试的 V 模型图。
清华学姐吐血整理!20天熬夜肝出来的面试手册!最终拿到字节offer_第1张图片

15、为什么要在一个团队中开展软件测试工作?

  • 因为没有经过测试的软件很难在发布之前知道该软件的质量,就好比 ISO 质量认证一样,测试同样也需要质量的保证,这个时候就需要在团队中开展软件测试的工作。在测试的过程发现软件中存在的问题,及时让开发人员得知并修改问题,在即将发布时,从测试报告中得出软件的质量情况。

16、您所熟悉的软件测试类型都有哪些?请试着分别比较这些不同的测试类型的区别与联系?

  • 测试类型有:功能测试,性能测试,界面测试。

  • 功能测试在测试工作中占的比例最大,功能测试也叫黑盒测试。是把测试对象看作一个黑盒子。利用黑盒测试法进行动态测试时,需要测试软件产品的功能,不需测试软件产品的内部结构和处理过程。采用黑盒技术设计测试用例的方法有:等价类划分、边界值分析、错误猜错、因果图、流程分析等。

  • 性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。压力测试是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。

  • 界面测试,界面是软件与用户交互的最直接的层,界面的好坏决定用户对软件的第一印象。而且设计良好的界面能够引导用户自己完成相应的操作,起到向导的作用。同时界面如同人的面孔,具有吸引用户的直接优势。设计合理的界面能给用户带来轻松愉悦的感受和成功的感觉,相反由于界面设计的失败,让用户有挫败感,再实用强大的功能都可能在用户的畏惧与放弃中付诸东流。

  • 区别在于,功能测试关注产品的所有功能上,要考虑到每个细节功能,每个可能存在的功能问题。性能测试主要关注于产品整体的多用户并发下的稳定性和健壮性。界面测试更关注于用户体验上,用户使用该产品的时候是否易用,是否易懂,是否规范(快捷键之类的),是否美观(能否吸引用户的注意力),是否安全(尽量在前台避免用户无意输入无效的数据,当然考虑到体验性,不能太粗鲁的弹出警告)。

17、请试着比较一下黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试的区别与联系?

  • 黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。黑盒测试又叫功能测试。
  • 白盒测试:已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否以经过检查。
  • 单元测试(模块测试)是开发者编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确。通常而言,一个单元测试是用于判断某个特定条件(或者场景)下某个特定函数的行为。单元测试是由程序员自己来完成,最终受益的也是程序员自己。
  • 集成测试(也叫组装测试,联合测试)是单元测试的逻辑扩展。它的最简单的形式是:两个已经测试过的单元组合成一个组件,并且测试它们之间的接口。从这一层意义上讲,组件是指多个单元的集成聚合。
  • 系统测试是将经过测试的子系统装配成一个完整系统来测试。它是检验系统是否确实能提供系统方案说明书中指定功能的有效方法。(常见的联调测试) 系统测试的目的是对最终软件系统进行全面的测试,确保最终软件系统满足产品需求并且遵循系统设计。
  • 验收测试是部署软件之前的最后一个测试操作。验收测试的目的是确保软件准备就绪,并且可以让最终用户将其用于执行软件的既定功能和任务。验收测试是向未来的用户表明系统能够像预定要求那样工作。经集成测试后,已经按照设计把所有的模块组装成一个完整的软件系统,接口错误也已经基本排除了,接着就应该进一步验证软件的有效性,这就是验收测试的任务,即软件的功能和性能如同用户所合理期待的那样。

18、测试计划工作的目的是什么?测试计划工作的内容都包括什么?其中哪些是最重要的?

  • 软件测试计划是指导测试过程的纲领性文件,包含了产品概述、测试策略、测试方法、测试区域、测试配置、测试周期、测试资源、测试交流、风险分析等内容。借助软件测试计划,参与测试的项目成员,尤其是测试管理人员,可以明确测试任务和测试方法,保持测试实施过程的顺畅沟通,跟踪和控制测试进度,应对测试过程中的各种变更。测试计划和测试详细规格、测试用例之间是战略和战术的关系,测试计划主要从宏观上规划测试活动的范围、 方法和资源配置,而测试详细规格、测试用例是完成测试任务的具体战术。所以其中最重要的是测试测试策略和测试方法。

19、你以前工作时的测试流程是什么?

  • 公司对测试流程没有规定如何做,但每个测试人员都有自己的一套测试流程。

我说下我自己总结的流程吧。

  • 需求评审(有开发人员,产品经理,测试人员,项目经理)—》 需求确定(出一份确定的需求文档)—》开发设计文档(开发人员在开始写代码前就能输出设计文档)—》想好测试策略,写出测试用例 —》发给开发人员、测试经理等相关人员(用例评审)—》接到测试版本 —》执行测试用例(中间可能会补充用例)—》提交 Bug(有些 Bug 需要开发人员的确定,严重级别的,或突然发现的在测试用例范围之外的,难以重现的),有些可以直接录制进缺陷管理工具里)—》开发人员修改(可以在测试过程中快速的修改)—》回归测试(可能又会发现新问题,再按流程开始跑)。

20、当开发人员说不是 Bug 时,你如何应对?
有 2 种情况:

  • 一是需求没有确定,所以我可以这么做,这个时候可以找来产品经理进行确认,需不需要改动,三方商量确定好后再看要不要改。
  • 二是这种情况不可能发生,所以不需要修改,这个时候,我可以先尽可能的说出是 Bug 的依据是什么?如果被用户发现或出了问题,会有什么不良结果?程序员可能会给你很多理由,你可以对他的解释进行反驳。如果还是不行,那我可以给这个问题提出来,跟开发经理和测试经理进行确认,如果要修改就改,如果不要修改就不改。

21、简述什么是存储过程和触发器?

  • 存储过程是数据库中的一个对象,Transact-SQL 语句的预编译集合,这些语句在一个名称下存储并作为一个单元进行处理。(可以理解为 C 语言中的函数,有参数、返回值等函数特性)
  • 触发器是一种特殊类型的存储过程,当使用下面的一种或多种数据修改操作在指定表中对数据进行修改时,触发器会生效:UPDATE、INSERT 或 DELETE。

22、描述 TCP/IP 协议的层次结构,以及每一层中重要协议。
清华学姐吐血整理!20天熬夜肝出来的面试手册!最终拿到字节offer_第2张图片

23、在 Linux 系统中,一个文件的访问权限是 755,其含义是什么?

  • 755 表示该文件所有者对该文件具有读、写、执行权限,该文件所有者所在组用户及其他用户对该文件具有读和执行权限。

24、简述一下 C/S 模式和 B/S 模式?

  • C/S 模式:客户端/服务器模式。工作原理:Client 向 Server 提交一个请求;Server 则使用一些方法处理这个请求,并将效果返回给 Client。
  • B/S 结构,即 Browser/Server(浏览器/服务器)结构,是随着 Internet 技术的兴起,对 C/S 结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过 WWW 浏览器实现。

精选自动化测试面试题

自动化测试基础

1、公司如何把自动化测试在项目中开展起来?

  • 项目组调研自动化(选择工具)—》开会演示demo(例子)—》在项目中开展自动化 —》把该项目的自动化流程、框架固化成文档 —》推广到公司的其它项目组应用

2、描述公司自动化测试流程?

  • 编写自动化测试计划 —》设计自动化测试用例 —》编写自动化测试脚本 —》调试并维护脚本 —》无人值守测试 —》后期维护(添加用例、开发更新版本)

3、自动化测试用例如何编写?

  • 方式一:自动化测试工程师自己设计的,一般刚开始已基本业务流程为主(登录 —》完成一个业务 —》退出)。
  • 方式二:从功能测试用例中进行筛选或由业务人员、功能测试人员提供。

4、上一个项目中自动化测试的执行策略?
上一个项目中是定时执行的,一般设置的执行时间是晚上和周末,执行完毕会自动发送邮件通知。

5、自动化测试发现的 BUG 多吗?

  • 不多,因为之前项目组是把已经测试通过的基本功能再进行自动化脚本编写和在后续版本执行自动化测试,它主要是保证已经测试通过的功能在新版本更新后也很稳定,不会产生功能错误。

6、在上一家公司你是如何开展自动化测试的?

  • 在进上家公司之前,我有一点 Java/python 代码基础,也简单学习过自动化,加入公司之后,组长做了一些岗前培训(代码规范、自动化测试框架组成等),实际做自动化测试过程中,根据组长的分工,编写相应的自动化测试脚本放到指定位置、自测没问题提交到 git 上进行管理,中途遇到问题就上网解决或找组长解决。

7、自动化测试的价值在哪里?你们公司为什么要做自动化测试?

  • 引用自动化测试之后,能代替繁琐的手工测试工作,节省出来的时间把业务测试人员尽量集中测试复杂的业务功能模块。自动化测试一般是对固化下来的功能进行自动化,保证不会因为产品的更新导致之前固化下来的功能出现 BUG。
    8、自动化测试产生误报怎么办?
  • 误报就是指自动化测试发现了 BUG,实际通过手工测试确认又不存在该 BUG。
    误报原因: 元素识别不稳定 —》尽量提高脚本的稳定性;开发更新了页面 —》测试脚本没有及时维护。

9、自动化测试的价值体现在哪里?

  • 自动化测试脚本在企业重复使用的次数越多,价值越大。

10、自动化测试过程中,你遇到了哪些问题,是如何解决的?

  • 自动化测试偶尔出现过误报。参考问题:8、自动化测试产生误报怎么办?
  • 自动化测试结果出现覆盖的情况。解决:Jenkins 根据时间建立文件夹。
  • 自动化测试代码维护麻烦。解决:线性测试代码引入测试框架。
  • 自动化测试校验数据准确性。解决:进行数据库数据比对验证。

2、自动化测试工具

1、在上一家公司做自动化测试用的什么框架?

可以说出以下自己擅长的一种:

  • Python + Selenium + unittest + htmltestrunner
  • Java + Selenium + testng + reportng
  • robotframework + SeleniumLibrary

2、做自动化测试过程中,你是如何定位和识别元素的?

  • 谷歌浏览器开发者工具打开之后,用鼠标选中元素去识别元素信息。
    元素定位使用定位 api,可以根据 id/name/classname/tagname/link_text/xpath/css

3、如果一个元素通过写的方式无法识别,会有哪些方面的原因,如何处理?

  • 页面加载元素过慢,加等待时间。
  • 页面可能会有 frame 层,需要进行跳转。
  • 可能该元素是动态元素,识别方式需要优化。
  • 可能识别了元素,但是不能操作,先把前置的操作完成。

4、对于属性动态变化的元素如何处理?

  • 可以利用 xpath 的属性包含或属性开头来识别,或者通过 css 的属性开头、属性结尾、属性包含来识别。

5、元素定位方法你熟悉的有哪些?常用哪一种,为什么?

  • 熟悉定位方式有:id、name、classname、link_text、xpath、css
  • 常用 xpath 来进行定位,xpath 算是万能的,但缺点就是定位速度相比其他方式要慢。

6、xpath 如何通过标签的文本内容定位?

  • xpath 包含有 text() 函数

7、遇到 frame 层页面怎么处理?

  • 使用 api 函数跳转进去 frame,frame 中页面操作完成,再跳转出来。

精选接口测试面试题

接口测试基础

1、公司接口测试流程是什么?

  • 从开发那边获取接口设计文档、分析接口并进行用例设计、并提前录入到接口测试工具Jmeter,等开发那边进行调试的时候(集成测试),执行接口测试用例,把发现的缺陷提给开发。

2、从开发那获取接口设计文档之后,你如何进行分析?

  • 单个接口的相关信息(接口功能、请求类型、请求地址、请求参数、返回值)。
    接口组合形成的业务。

3、接口测试用例设计主要使用哪些用例设计方法?

  • 接口测试一般只需要考虑入参形式的变化和接口的业务逻辑,一般设计接口测试用例采用等价类、边界值、场景法居多。

4、接口测试执行中比对数据库吗?

  • 需要进行,因为接口的返回值类似于提示信息,而接口对数据的操作还要进行深层次的检查。

5、谈谈你对 HTTP 协议的了解?

  • 超文本传输协议,端口为 80
  • 特点(无记忆功能、快速)是由请求和响应两部分组成。
  • 请求由请求头、请求行、请求正文组成,响应是由响应头、响应行、响应正文组成。
  • 之前我们公司的接口是采用 https 协议的。https 是 http+ssl 协议 端口 443 面向安全的超文本传输协议。

6、get 和 post 请求有什么区别?

  • get 和 post 请求都是客户端向服务器提交的一种请求方式。
  • get 是明文传输参数、倾向于请求服务器资源。比如打开网站。
  • post 传输数据不可见,安全性高,倾向于向服务器提交数据,比如注册等。

7、响应状态码有哪些?

  • 1xx:指示信息–表示请求已接受,继续处理。
  • 2xx:成功–表示请求已被成功接收、理解、接受。
  • 3xx:重定向–要完成请求必须进行更进一步的操作。
  • 4xx:客户端错误–请求有语法错误或请求无法实现。
  • 5xx:服务器端错误–服务器未能实现合法的请求。

8、在接口测试过程中发现的 bug 多不多?

  • 在联调阶段执行接口测试发现的 bug 会很多,在冒烟测试、回归测试阶段执行接口测试的时候,bug 就很少。

9、详细描述之前测过的一个接口如何设计用例?

  • 该题目考察你是否做过真正的接口测试。需要根据简历中的项目去预先人为的造一些接口,然后进行讲解。
  • 比如:在上一个项目中,我做过一个获取手机验证码的接口,该接口需要使用 post 方式传递一个手机号参数,传送成功,返回状态码为 0 的接口信息,并能收到验证码;手机号错误,返回状态码为-10001 和提示信息;已注册的手机号返回状态码为-10003 和提示信息;我在进行该接口用例设计的过程中,考虑这三种业务情况,分别设计一个测试用例。

10、描述之前发现过的接口缺陷?

  • 该题目和上题类似,根据简历中的项目去造一些接口缺陷,回答思路可以先向上题一样。先讲一个接口业务逻辑,然后再讲,比如我之前使用已注册手机号去调用该注册接口返回状态码为 0,注册成功,实际应该返回-10003 才对。

11、接口测试中有哪些要注意的测试点?

  • 接口中返回了图片地址,要手工去进行图片的测试(大小、内容)。
  • 接口完成查询功能的时候,数据返回的排序显示。
  • 接口测试的时候,关注参数的默认值、必填项。

12、接口执行测试后返回结果做对比,一般比对哪部分内容?

  • 之前必须要对比的就是返回状态码,其次再去对比返回其它关键内容。

13、为什么开展接口测试?

  • 接口测试属于集成测试、测试介入越早、就越能在项目早期发现问题,其修复问题的成本越低。
  • 接口测试非常快速、UI 自动化执行一个测试用例 10S 左右、接口测试用例执行的话, 需要的时间是毫秒级的。

2、接口测试工具

1、之前在接口测试过程中,使用的工具是什么?

  • Postman 和 Jmeter

2、之前用过抓包工具没有?如何使用的?

  • 之前在项目中用过 Fiddler 抓包工具进行 HTTP 协议请求的抓取。
  • 打开 Fiddler 之后,默认浏览器配置了 127.0.0.1 8888 端口的代理,在 Fiddler 设置好过滤策略后,打开需要进行抓包的网站进行操作,就可以进行抓包。

3、json 数据是什么,你平时如何解析 json 数据?

  • 一种开发常用的数据报文格式,由键值对和数组两种格式构成。
  • 可以通过工具 bejson 网站等。

4、Postman 你在工作中使用流程是什么样的?

  • 编写好用例。
  • 在 Postman 先建好 url 环境变量。
  • 根据接口用例所属的模块新建集合管理。
  • 在集合中不同模块下录入测试用例。
  • 录入测试用例的时候根据预期结果在 tests 页签中增加断言。
  • 导出通过 Newman 去运行。

5、Postman 中设置环境变量有什么用?

  • 在之前项目中,接口测试测试的环境有开发环境,测试环境等,为了测试的时候方便,就在 Postman 设置环境变量,到时所有接口都引用该环境变量,这样就不用为了切换环境导致每次都去修改被测系统接口的主机地址;点击右上角环境变量管理按钮-新建环境变量,在脚本中使用{ {变量名}}去调用。

6、在接口测试中关联是什么含义?如何用 Postman 设置关联?

  • 关联就是把上一个接口返回值的部分截取出来,作为下一个接口的参数,能让接口串联运行。

在 Postman 中设置关联的步骤如下:

  • 先通过正则表达式提取的方式或 json 取值的方式把下一个接口需要的信息从上一个接口截取出来。
  • 使用设置全局变量的代码把取出来的值保存到全局变量。
  • 在下一个接口中,使用{ {全局变量}}代替要替换的静态值。

7、Postman 支持什么类型的协议测试?

  • http 和 https 协议的

8、Postman 参数化有哪几种方式?

  • 内建变量、pre-scripts 编写 js 脚本、批量运行时导入 csv 或 json 格式的文件。

9、Newman 如何执行 Postman 脚本?

  • Newman run 脚本名称 也可以添加参数生成 html 报表等。

10、Jmeter 之前用的是什么版本?如何安装的?

  • Jmeter 用的是 5.1.1 版本

安装如下:

  • 先在电脑上安装 jdk1.8 或以上的版本,然后从官网下载最新的安装包,解压后,进行环境 变量的配置,配置好后即安装完成。

11、在项目中如何用 Jmeter 进行接口测试?

  • 把线程组数量设置为 1,循环次数设置为 1。
  • 配置好全局变量 URL 通过配置元件—用户自定义的变量添加。
  • 增加配置元件 http 请求默认值,放置在用户定义的变量之后。
  • 添加事务控制器管理和组织测试用例。
  • 在事务控制中添加 http 请求添加测试用例中的接口请求信息。
  • 添加对应的断言元件进行断言。

12、Jmeter 中如何设置断言?

  • 右击请求—断言—响应断言—响应断言界面输入要检查比对的项,设置好断言后,执行接口测试如果是通过的,查看结果树不会有任何提示,如果断言失败,就会有红色报错。如果接口返回的数据是 json 数据,也可以添加 json 断言。

13、Jmeter 中如何实现关联?

  • 先从上一个接口中通过正则表达式提取器或 jsonpath 解析器截取下一个接口需要的参数值保存到变量,然后在写一个接口中通过${变量名}去获取。

14、Jmeter 添加 http 请求默认值元件有什么作用?

  • 添加并设置好后,相当于给所有的 http 请求取样器都设置了默认值,既不用填写取样器中的比如主机地址、端口、代理等,都可以使用 http 请求默认值设置的。

15、Jmeter 参数化的方式有哪几种可以实现?

  • 配置元件—用户定义的变量元件可以设置全局变量。
  • 函数助手对话框中可以选择比如随机字符串、随机日期、随机数字作为参数化。
  • 可以使用 csv 文件作为参数化,通过配置元件中的 csv data set config 元件进行设 置即可。

文末分享

清华学姐吐血整理!20天熬夜肝出来的面试手册!最终拿到字节offer_第3张图片
对于软件测试的朋友来说应该是最全面最完整的面试备战仓库,为了更好地整理每个模块,我也参考了很多网上的优质博文和项目,力求不漏掉每一个知识点,很多朋友靠着这些内容进行复习,拿到了BATJ等大厂的offer,这个仓库也已经帮助了很多的软件测试学习者,希望也能帮助到你。

关注我的微信公众号:程序员二黑,即可领取全套【 软件测试 超硬核面试资料 】啦!

你可能感兴趣的:(面试,软件测试,测试工程师)