粉丝1164获赞1.5万

我们这节呢将吉米特性能压测基础的第二节创建这种县城主,这种县城主是一个什么样的一个东西呢?他呢在吉米特里面 模拟人的点击这个点击这个现成主呢,那里面肯定有很多这种现成来模拟每一个人对当前的 并发了一网站来进行访问啊,这时候呢就需要创建这种县城主,一个县城主里面可以创建很多这种县城的,那么呢我们现在啊通过操作来看一下这种县城主啊如何来进行使用的, 我们现在呢吉米特呢下载呢非常简单,在当前吉米特阿帕奇 这个官方网站啊来进行下载,下载呢点击当前的这个当漏的当漏的瑞丽丝,我们点进去看一下 比利时,这里面有很多版本啊,我们当前呢我们当前演示呢,我们当前采用的是最新版本五点三,吉米特五点三的, ok, 我现在呢当前已经把它下载下来了,我们现在开始来进行启动 jimeter, ok, 这个就是当前解压的目录,这个启动呢要找到当前的一个闭目录, 这个闭目录里面呢启动呢他支持的环境有很多,有另一个方向有 window, window 操作系统环境下的,我们当年呢采用这种 jimeter 在 window 点吧台的环境下的,我们点击 ok, 现在正是一个启动的过程,然后这边就显示一个图标, ok, 现在呢就启动成功了。 那么呢我们现在呢首先第一步这里面啊有很多这种操作的,我们后续啊我们会一点点来进行讲解。我们首先呢点击当前次次激发我们建一个当前的县城主, ok, 这个当前就是一个县城主,这个县城主呢理解呢也非常简单,他包含的内容啊也非常简单,这边呢就是一个备注和名称,他没有实质的一些意义。然后后续呢这里面呢 取氧气错误后要执行的一个动作,这个动作呢有很多,这么呢可以根据当前的一个业务场景啊,如果是在测试过程中,比如当年并发测试十个,如果是有一个 发生的错误,是继续还是直接停止线折或者是停止测试等一系列的这种操作的,这样理解也非常简单的, ok, 下面呢就是一个比较比较重要的,他的一个现成的一个属性,现在属性呢就表达当前啊 这个现成数啊,比如当前设置是一百个,一百个过程中呢,他呢在启动这个现成中啊,他会发成会发送一百个现成啊,来模拟当前的 htb 的一个请求, 这个时间呢他代表,比如当前有一百个模拟一百个这种现成需要在,比如当前设置的是十秒,十秒过程中呢,在十秒过程中呢把当前一百个现成啊,要把它发送完毕。 这下面呢循环次数呢,这个就比较简单了,比如我们当前设置的一组当前呢一百个现成,循环一次, ok 就结束了。如果现如果是设置是十,那么呢他会连续循环十次,每次呢就是一百个 这个,那么点击永远的数,这时候呢他就一直来进行发送当前的这种设置的这种现成数。然后这边呢就是比较简单,就是设置他 sam c m, 就是在循环过程中啊, 当前的发送请求的一个迭代性,关于这个下面的这个迭代器啊,这个迭代像,像对于我们那个定时器一样,这个调调度器,这个调度器呢?当前这个次序时间和启动时间,当前启动时间还是有用的, 也就是在老版本嘛,它里面呢还有一个开始时间和结束时间,也就在新版本这个就把这个 次序,这个开始时间结束时间就去掉了,然后这个次序时间也没有什么多大意义了,但是这个启动时间延迟时间他还是有效的,比如当年设置是五秒,启动时间是五秒, 这时候呢,我们当前启动这个县城主任来做并发的时候啊,他在五秒之后才开始来进行执行当下的一个县城的一个 模拟现成的一个并发过程。 ok, ok, 那么我们现在开始来进行创建, 这个呢,当前只是一个县城主,我们需要模拟一个简单的一个 htdp 请求,这个 htdp, 行呢,我们后续啊来再再进行性讲解。我们当年呢比较简单就采用 htdp, 然后呢端口呢,我们就采用本地的 logo, house 的 单口呢是八零八幺,然后采用 get, get 呢,我们当年是创建一个微服务的,这种微服务呢,我们当前这个连接地址啊也准备好了, 我们来模拟不断的发送这种,哈喽,这个字符串, ok, 这个 htv 请求就已经创建好了, ok, 我们保存一下,保存一下呢,我们就叫这个名称吧, 我们微量能够看清楚,我们再加一个,加一个监视器,我们看他的有没有成功啊,方便我们来进行观察。 ok, 我们重点是讲这种现成组的这个下面的后续的来再进行讲解。 那么接下来我们先创建十个,然后呢接下来我们这个就创建零,然后执行呢这个调度器呢,我们先后续再讲, 我们先讲这种, ok, 那么呢我们现在开始,当年已经定义好了,这个怎么理解呢啊?当年已经设置了十个县城,然后这个也就是这个设置为零的时候啊, 这个过程呢就是他一次性把这个十个现成啊,一次性并发的发送十个现成到服务器端,就没有当前的一个停留时间了。 ok, 那么呢我们当前的这个服务啊也已经打开了, 那么呢我们现在开始来进行启动, ok, 现在已经一下子发送三十十个请求,我们看一下这中端,当前中端已经结束到当前十个了。 ok, 这个就是现成主控制的,如果我们定义一百个,他能就是一次性啊发送一百个 请求到我们的当前的服务端,我们看一下, ok, 他一次性就把这个一大堆这种请求啊发送到我们这个当前的这种服模拟服务的应用端,这是现在很多,我们现在啊把它清掉,然模拟下一个参数, 因为现在请求一下子太多了,我们需要加一点停留时间,比如当前是在十秒钟把当前一百个请求啊,把它发送完,同样的这种循环次数啊,仍然循环一次让他结束。那么呢我们来看一下,这是当前的一个效果。 ok, 现在已经开始进行请求了,这种请求呢也是比较快的,我们当前呢正在模拟十四, ok, 现在还在发,也就在十秒钟 发送完成, ok, 现在已经发送完成了, 也有理解这种停留这种时间啊,他呢是怎么做呢?我们当前是一一百秒,然后当前呢是十,设置的是十秒,这时候呢他就是这相处一下,然后接下来他就是比如 就一秒钟发送十个请求了,这呢就可以采用这种公司啊来进行计算,但也想一次性把它发送完,这时候呢我们就可以把它设置零,如果想停留时间长一点呢,他也可以根据这种设置 就 ok 了,然后这个呢就是设计设置他的一个主硕的,如果我们设置永远的时候,我们看一下效果, ok, 这里面呢不断的来进行发送,我们看我们的中段,我们把它清一下, ok, 不断的来进行发送, ok, 这种压力,这种参数啊也是非常简单的,我们把它停止一下, 比如我们当前呢不需要永远,我们当前测试十组,测试十组,我们当前把当前清掉,十组就是一,就是一百,总共是一百条记录。 ok, 我们那我们继续再来进行发送,我们这边呢石柱已经发完了,因为我们停留时间是比较短的,他这个发送的速度是非常快 坏的, ok, 这个呢就是一个线程组,这个比较简单,那么呢我们来做一下,看一下这种调度器,这种调度器呢我们主要是来观察这种启动的时间,比如我们当前设置十组,每一组呢同时呢 中间呢会延迟十秒,同时呢我们启动的时候在五秒之后啊再让他发送,我们看一下效果,我们把当前都清掉, ok, 我们再继续来进行观察。哎,报错了, 报错了,报错水,我们这个设置是有问题的,我们次余时间这个边呢改成个七岁, 随便写一个吧,我们再看一下效果。 ok, 现在已经启动了,这呢他会停留五秒钟。 ok, 这里呢已经出来了,我们这个后端呢,后端呢也逐渐的接收到当前的一个数据了。 ok, 这节呢主要是讲杰米特这种现成组的,现成组呢,他是模拟当前并发,这种并发到底并发多少个现成数啊? 他呢通过当前这个县城主来进行定义,县城主,那个下面的呢就可以定义他具体的一个请求,然后一个结果的一个监测。这呢这个过程呢是比较简单的,大家按照这种方式来进行练习啊,就可以很容易的掌握了。 ok, 这节呢就讲到这里,谢谢。

我们先来做一个完整的性能测试,通过这次的性能测试呢,对杰米特这款工具有一个基本的认识和了解。先来定义我们的测试目标, eu it 点课点 qq 点 com, 这是我们课程的首页,对,首页呢,我们来做一个性能测试, 性能测试的目标是五个并发,每个并发呢,请求一百次。测试完成后要得到首页的平均想要时间, 先来制作测试脚本。录制脚本的方法呢,已经讲过了,这一次呢,用手工的方式编写测试脚本。 在菜单栏中呢,选择 fare, 然后新建。或者是呢,在工具栏中选择六,去新建一个测试脚本。 jamitter 把测试中需要使用的功能称之为原件。原件按照不同的功能分为九大类, 现成组,配置单元、监听器、定时器、前置处理器,后置处理器,断言还有一个采样器,他不在这个里面。 现成组是用来组织测试的执行动作。他有三 三个县城组, set up, through the, 添加了三个建成猪, straight, tier down 和 set up。 很多同学呢,会认为这三个县城组会按照塑形结构的顺序依次运行,所有的国务部,提尔大或者晒踏板。但实际上呢,他不是按照你的塑形顺序来执行的。 对于现成组呢,他会有一定的规则,无论你的塑形结构是什么样子,他永远都是先执行 set up, 再执行 sred, 然后再去执行 tira。 那根据这个执行顺序呢? set up 通常是用来做一些测试的准备工作,比如说我们准备一些测试数据。 street 谷物谱是用来执行测试的执行动作,就具体的执行动作放在 sred 谷物谱中, 天荡是用来做结束的动作,比如说退出系统啊,清除数据啊,做这些事情,他的执行顺序永远都是先晒他在 sri, 最后是天荡,跟你的塑形,这个顺序是没有关系的。 我们先把那个 set up 和 tier down 删除掉,只保留这个 sread the group, 选中 ctrl group, 那么在右侧呢是这个县城组的配置,第一项呢是县城组的名称, 第二项呢是县城组的备注,第三项呢是县城组退出的方式,就当出现错误的时候,那么县城组会如何动作?我是继续执行测试呢?还是进行下一次循环呢?还是停止当前的县城,还是停止测试呢?就是你可以根据你的需求进行制定。 那下面三项呢,是现成组的一些具体配置,你的并发现成数,也就是说我们的并发用户数量,我们本次的目标呢是做五个并发,这里面就要输入五。 第二项呢是这五个用户,或者是五个并发用户,他的启动顺序或者启动时间是多少, 他单位是秒,如果我们输一秒,就表示说这五个用户在这一秒钟之内按顺序 次执行测试,那也就是说每隔两百毫秒执行一个测试,如果你希望这五个用户在同一时刻一起来运行,那可以把这个时间呢设置成零。 第三个配置选项呢,是县城组的执行次数,我们的测试目标呢是执行一百次,这里面呢就要输入一百。 他前面这个选项呢,有个勾选项,就是你勾选了之后呢,他会一直的运行,测试就不会停止,你需要手工去用命令停止他,我们还是输成一百。 在下面是一些选项呢,是每一个县城族每一次迭代的时候,他是不是当做一个新用户来处理,如果你当做新用 来处理,那么在处理一些缓存机制的时候,可能会增加一些服务器的压力,比如他会重复的请求一些图片资源,或者请求一些 gs 资源。 delay three to certain you tell needs 这个选项呢,跟前面这个 reading up 是有关系的。如果我们在前面把这个现成组的启动时间设置为一百秒, 那如果我们把这个时间设置成一百,那就表示说每隔二十秒我们启动一个并发现场去执行测试。 那在这里呢,有一点需要特别注意,虽然说是每隔二十秒执行一组测试,但是呢,这五个用户就这五个并发现成的创建时机是在你启动的时候,就你只要一启动测试,这五个现 就已经全部创建好了,只是他的执行时间会间隔二十秒把底内这个选项勾选中之后呢, 在启动的时候他会先创建一个县城去执行测试,那么间隔二十秒之后呢,再去创建一个县城再去执行测试啊,就是说你勾选和不勾选这个县城的创建司机是不同的,勾选了之后呢,就只有他需要运行的时候才去创建这个县城。 第三个选项就指定这个线上的运行时间,你可以指定他运行多长时间或者什么时间启动。 我们保持默认设置五个县城一起启动运行一百次,每次呢是一个新的接待 线程组。设定完成之后呢,我们要为他去添加取样器,取样器呢就是我们具体的一些请求,比如说做一些 appb 请求,或者是 gdbc 的请求。取样器呢要根据你测试的协议来选择。 本次我们的测试呢是 htdp 协议,那就需要选择 htdp request at ttp request, 它是一个取样器原件,有时候呢我们也可以称它为请求。 当我们选择这个原件之后呢,右侧是他的这个配置项,配置项呢看起来都差不多,第一项呢是名称,就是你给他起个名字。第二项呢是一些备注信息, 下面的是一些请求的具体配置,他有基本选项和高级选项,在基本选项中呢,如果你不输入值的话,他会有一些默认值。第一项呢是协议类型是 htdp 还是 htdps, 如果你不输入呢,他的默认值就是 htdp。 后面这个呢是端口号,炮成版本是端口号,它的默认值呢是八零。请求方式呢,默认方式是盖的, 点开之后呢,下面有其他的 pose 的黑点铺的 opacially 等等等等。 pass 是你的请求地址, 康定的引靠顶是你向服务端去提交数据的时候,比如说我们传送一个文件,或者是提交一些数据,那他的制服级是什么?就他的制服格式是什么?他是只是在你提交 数据的时候才能用得到。下面这三项呢,是他的具体提交的数据,比如说我提交一些参数,或者是向服务器传递一些数据,或者是提交一些文件,这里面是一具体设置, 中间呢会有一些选项。第一项呢是他要不要重定项,是不是跟随重定项是不是保持链接,以及你数据的提交格式是什么格式?浏览器的头部信息这一些呢我们可以使用末映选项, 那阿道旺是是一些高级的设置,这里面呢会设置你这个连接的连接时间,比如说我们设置一些超时的时间,以及获取数据的时间,都可以在里面控制。 第二个选项呢是当我们去请求一个网页的时候,比如我们这个页面,这个页面中呢他同时会包含一些图片文件,比如这些图片文件 那嵌入资源呢,就是说当你的这个页面中包含一些图片资源呢,或者是一些静态资源呢,或者一些 gs 资源的时候,那要不要同时把这些资源获取回来,是属于这个配置。 在后面呢是设置代理服务器以及指定你的请求 ip 地址,那后面这两项呢用的比较少, 通常呢我们会比较关注在这个基本配置,基本配置的第一项呢是协议类型,默认情况下呢,我们可以不输入他 htv 协议, 我们把请求地址呢复制下来。 路径呢就是后面这个路径,有些时候呢其实后面不输也可以,就是跟路径,然后呢我们要输域名,域名的时候不要带这个 http, 就只是域名 eu it, 点 key, 点 qq 点 com, 这是我们的域名 灯,口号呢应该是使用默认的八零端口,你可以不输,你输一个八零也可以。后面呢是制服机的类型,当我们上传数据的时候才会需要用到制服机类型,如果做盖的请求他是没有影响的, 取下器呢就已经配置好了,接下来呢,我们要为他添加一个监听器 license 监听器呢,是用来查看你的测试结果,我们选择 meal rut tree, 等一下我们会接讲一个 rator tree 是什么东西。 现在呢,我们已经添加了县城组,县城组呢,我们设置为五个并发用户,执行一百次。 在现场组中呢,添加了曲样器,向服务端发送一次请求,请求的域名呢是 euip 刻点 qq 点卡,是请求的根录制。 同时呢,我们还添加了一个监听器,用来查看测试的结果。如果现在我们去执行测试,就点上面这个是大的去执行测试,他 会启动五个县城,那么执行一百次。但这种方式呢,是做压力测试的时候我们才用。现在呢,我们正在调试脚本。调试脚本呢,可以用在县城组中去选择右键,他会有三个选项是大的,很大的 no, prize, melody。 这三种方式呢,都可以启动测试。第一种呢就会启动测试,执行五个并发啊,运行一百次。 第二个呢,他也同样是运行五个并发用户,执行一百次。但是呢,他会把中间,如果你有定时器的话,会把定时器的动作忽略掉。 stat 和 stat noprice 的区别呢,就是 noprice 是不执行定时器的动作,回来 dead, 他是只运行一个并发用户, 只运行一次是我们在调试时用的一条命令。我们先选择为了点,他提示你需要保存脚本,我们来保存脚本。 在脚本呢,我们可以创建一个文件夹,单独用来保存这些脚本。 脚本的扩散名呢是 jmx, 你可以不输入他,我们就输个 t 一就好保存起来, 刚才呢我们还看到这个上面,这里面闪现了一下,非常快,可能没有看清楚,那我们再来执行一次, 这上面呢执行了一下,同时呢右侧这边也会发生一些变化,但是因为速度太快了,可能没有看清楚,没关系,以后我们会有机会来看 看这个六瑞兆的。这里面呢可以记录你的测试的执行的结果,就每一个取样器测试的执行结果。 在我们每次的执行过程中,每一个取向器这里面呢都会有记录,就是你的每一个请求是什么,选中某一条记录之后呢,右侧这里会有他的详细信息。 这些信息中呢会分为三个栏目,第一个栏目呢是 simple 伪造的,就是一个基本的汇总结果。第二个栏目呢是你发生的请求内容。第三个栏目呢是他的回应内容,就是服务 不断给你回了什么东西。我们先来看汇总信息,汇总信息中呢会列出县城组的名称,什么时候启动的, 他的测试时间是什么时间?连接是多长时间?延迟是多长时间?他请求的自结数,发送的自结数,头部信息有多大?八点信息有多少? 他的执行次数,那么错误的次数数据类型,状态码和状态信息, 状态码和状态信息呢,是 jimitter 用来判断测试结果的一个简单方法,他用这个瑞士邦是扣的来判断你的测试动作是不是成功两百呢?是表示成功两百这个词呢是从哪来的呢?是从瑞士 response data 中, response 黑点中来返回的,它是由服务端返回的一个数据,两百就是这个 response code, ok, 就是 response message, 服务端返回呢是两百, ok, 我们在瑞兆特里面就可以看到 response 扣的两百, response 卖出去, ok。 这两个数据是从 response data 中取来的, 状态码有很多个,比如说两百三零幺三零二,四零四,四零三,五零零, 从四零零开始,四零四,四零三啊五零零就是超过四百的。那么 jimiter 会认为你的测试动作是失败的,可以了解一下。 再往下面看,他会有一个 pose, 把这些数据呢用格式化的形式展示出来,相当于是一个表格的数据,让你看的会更清楚一点。我们还是看原始数据,那切换到第二个窗口去看他的请求数据。 请求数据中呢,会包含两部分,一个是请求的头部信息,另外一个呢是请求的数据体信息,你向服务端发生了什么请求?那么通过这两组信息呢,可以看得出来, 我向服务端去请求的时候呢,做了一个开管利用的请求,提交了域名信息,设置了浏览器的类型, 巴德里面呢是空的,没有数据这行 get 信息呢,其实他应该是放在这个瑞克斯黑的中,但是不知道为什么他会放到这个 get 里面 get 这一组信息呢,本身是属于头部信息,那么 基本上来说他没有 body 信息,就是对于钙的请求来说呢,是没有 body 信息。请求发送句之后呢,会得到响应的数据啊。 response data 就是服务端的响应数据, body 和黑的是分别两组不同的数据,黑的呢是 htp 协议的头部信息,它会标识你的状态码啊,以及一些服务状态啊,一些参数啊,都会放在头部信息。 body 呢是返回的具体数据,这里面呢我们可以看到它显示的就是页面上的原代码, 那大家可以看一下,在左侧这个记录结果的上面有一个 tst, 他右边呢会有个下拉 框,选择之后呢他会有一个列表,那这里面呢是对你的响应数据用一些格式化去查看。如果我们选择 html, 你可以看到这个 vis box body 中的数据会变得不一样,这就不是原代码,是一个有样式的代码, 我们还是选这个 tst 啊,这是没有伪造的。如何去查看数据以及各个数据代表什么意思? 没有给教程呢,他只是用来帮助我们调试代码,就看看你的这个请求发的对不对,那么发的数据回来的数据是是不是对的, 如果确认没有问题了之后呢,就表示说我们代码是正确的。那接下来呢,我们要为这个代码去增加断言的功能。现在我们通过这个结果呢,是通过人的眼睛去看,然后再去分 分析这个结果是不是正确的。在性能测试过程中呢,我们还要增加断言,就是去判断他的本次请求是不是成功的。 选择取样器就是我们的 htv request, 然后去右键添加选择,把筛数断言去判断这个请求是不是成功的。断言呢有很多种,这里面有非常多的断言, 我们先用一种比较简单的段源 seizing seizu, 他是根据你的返回结果的自结数来判断这个动作是不是成功, 那我们这个请求之后,他会服务端会返回多少个字节呢?在 mir ritat 中可以看得到 simirizat, 这里面可以看到五二七九幺,这是 返回字结束再切换到三角角 c 数。 在这里面呢,可以做一些详细的设置,比如说我是对全部的请求判断一个直接长度,还是对头部信息,我判断一个直接长度,那还是对这个八得去判断一个长度。 后面呢,我们会看到有两项,就是 response code 和 response message。 responds code 和 response message 指的是头部信息中的两百和 ok, 服务端回应的信息中有 app 一点一两百 ok, 那这两百和 ok 呢?分别对应的就是 response code 和 response message, 通常呢我们都会用这个 full response 来作为判断, 那返回的结果呢?是五二七九幺,有这么多个直接数。 当我们用返回长度去作为断言去判断一个操作是不是成功的时候呢?你要考虑到这个长度会不会发生变化,当我们在测试过程中呢,这个页面发生了变化,那些文字啊,一些提示啊发生了变化,当这些文字发生变化之后呢,长度就会发生变化。 所以呢,我们要考虑到如果这种长度有可能会变化的话,那就不能用等号这个纸,你可以用大于或者小于就是一个范围的纸去判断这个长度是不是正确的。 我们把这个长度呢设置为五万个字接就是五十 k, 只要你返回的长度大于五十 k, 我就认为是正确的, 这是我们用,这是我们为这个请求增加了一个断言,大家要注意啊,这个断言是放在了这个请求的下面,他属于是请求的指节点,这两个之间呢是有一定关系的,他们不是平级的,是上下级之间的关系。 断言添加好之后呢,我们再进行一次测试, really dead, 去看看我们这个结果是不是正确。那么确认没有问题之后呢,我们再保存脚本, 正常情况下呢, jimeter 会自动保存脚本,就你每运行一次,他会保存一次脚本。 接下来呢,我们需要去做压力测试,就用五个并发一百次叠弹去执行测试。 在这里面呢,有一点需要特别注意六、比较的处,这个原件他是一种调试性原件,就他不是用来做压力测试用的。当我们在做压力测试的时候,要把这个原件呢删除掉或者是禁用掉,我们选择右键 disneybook 掉, 变成灰色。因为这个原件呢,在测试过程中会占用比较多的系统资源,他占用的是你本机的系统资源,比如说占用一些 cpu 资源,因为他要去算这里面的数据,或者是不同的展示方式, 会占用一些内存资源。就在性能测试执行的时候,这个原件呢我们要删除掉或者是屏蔽掉。 在上一节课中呢,我们说过 杰米特呢,有两种运行模式,一种呢是 gui 模式,一种是 cra 模式。 gui 模式呢,就是现在我们看到这种图形界面模式,他是用来做调试脚本和编辑脚板用的。 cla 模式就是命令航模式,他是用来执行压力测试的时候来用。 如果你的这个代码很少,比如说这五个并发很短,其实你在 gy 模式上也可以运行,那这一次呢,我们是选择 cla 模式来执行压力测试,打开 cmd 就是 ctrl 啊运行,然后输入 cmd 进入到我们的脚本的存放位置, 我们看到 t 一点 g m s 就是我们的脚本。那直行测试的时候呢,我们要输入 全路径,因为我们并没有把杰米特加入到系统的镜中,他是没办法去找到杰米特的。所以呢,我们需要手工指定杰米特的位置是在地盘的阿帕奇杰米特二幺下面的,并下面 jamit, 这是我们要使用的程序,就是 jimita 去执行压力测试。在压力测试的时候呢,我们需要带上一些参数,参数杠 n 是表示说呢,我用 c l i 模式去运行,就是没有图形界面的模式。 参数杠 t 是指定我的测试脚本, t 一点 gmx, 杠 l 是保存测试结果, t 一点接 t m, t 一点接 t l。 这个文件名字说我们要自己来定义的,他不会自动生成,你要自己要定一个名字, 再增加参数。杠 e, 杠 e 呢是生成报告,杠 o 是报告的存放位置,他的存放位置呢,必须是一个目录,并且呢是一个空的目录,他会自动去创建目录,我们学会 t e report。 然后呢,我们可以直行测试,把屏幕放大一点, 在执行测试过程中呢,他每隔三十秒 会输出一条信息,我们可以看到这里面有萨摩瑞一后面有一系列数据, summery 呢是表示他是一个汇总信息,我们会看到呢,在 summer 后面有加号,有等号,对吧?有一个是加号,有一个是等号,那加号所表示的是从上一个时间到当前报告时间, 就从第一个报告开始,从他是从上一个时间到当前这个时间中间这一段的结果。比如说我们从开始 那到四九九这段时间,他是说从开始到四九九这一段时间,就中间这十九秒,那这里面显示十九秒,这十九秒他的请求次数 是四百九十九次,那后面呢,是平均的每秒请求次数是二十六点九次。 iron g 是他的享用时间一百八十五毫秒时间的单位呢,是毫秒,一秒呢等于一千毫秒, 一百八十五毫秒就是零点一八五秒,最小值是一百三十五毫秒,最大值是五百五十九毫秒。错误的次数啊,有多少个啊?个 tvt 啊,是表示说你有多少个现成在运行, 那么开始了多少个县城,结束了多少个县城这样一个汇总信息。注意啊,这个加号表示的是这一段时间,就是中间这一段时间的汇总信息。那 等号呢?是表示从测试开始到现在全部的汇总信息。比如说我们从开始测试到现在经过了一个小时,那加号所表示呢,就是前五分钟,就是以当前时间往前推算这前五分钟的平均值。 那等号呢,是表示这一个小时内的全部的请求数量。这是我们用撒门如何去看这个数据?这是在 cla 模式下去执行测试出的一些汇总信息。 测试完成之后呢,会生成 t 与 pot 目录,我们可以看一下。点二看一下 t report 是刚刚生成的目录,在目录中呢,他会用 h、 t、 m、 l 格式生成本次的测试报告, 这个报告呢我们可以直接拖到浏览器里面去观看, 在报告中呢会分为详细信息和汇总信息,左侧呢,可以去看某一个续详细的报告,但是 bur 的呢,就是他的汇总信息,你的脚本名称,什么时间开始测试的?什么时间结束的? 那么有多少个成功的,多少个失败的,那么绿色的就是表示成功的。在下面这一些呢,是统计信息,你的取先不来,就是取氧气,那么有五百个就 执行了五百次,那么错误的是多少?平均值是多少,以及这个错误的信息。前五个错误信息都在这里面有展示图表信息,那他会有汇总信息。 response time, 这个响时间,这里面的这个响时间呢,它是一个曲线,但是因为我们测的时间比较短,所以呢只有一个点, 他是成功的响应。时间分布,这里面呢会包含百分之九十的时间,百分之九十五的时间,百分之九十九的时间最大值和最小值,他会更加详细一些, 那县城的数量就是你有多少个并发用户,他也是一个曲线,但是 因为我们时间比较短,这个就只有一个点了,这是网络的吞吐量,他有多少个字节,延迟的时间,连接的时间, 在揭秘的中呢,他会把它定义为事物的数量,这是每秒的想啊,每秒的点击次数, 两百的时候没瞄多少个就是成功的事物,就是他的鱼是帮是扣的,是两百的,他们没瞄多少个, 那么请求的成功率是多少? 实木数量,每秒多少个 response time, 就是一些具体的统计词,在这里面呢有一个点跟大家特别说一下,就是这个 hit per second, 它每秒的点击四个数量,我们会看到呢,这里面每秒的点击数是八点三五, 我们会看到这边呢,这个三门里面的统计数据呢是每秒二十六次,看这个数据,这是我们的汇总信息,每秒是二十六次, 那我们看到报告中的每秒的点击次数呢是八点三五,八点几,这两个时间为什么会对不上呢?再看一下这边的报告呢,是二十六点几,二十六点二, 在报告中呢是八点几,这是因为他们两个的时间的单位是不一样的,你注意看这个黑特普再跟下面的单位,他的单位呢是一分钟,就是一分钟之内,你的这个平均的次数量是多少啊?就是一分钟之内他的点击次数是多少? 我们这一次的测试时间呢,很短,只有十九秒,那十九秒的数量在平摊到一分钟之后,相当于是我们看到这里面是十九秒, 十九秒是二十六次,那跟六一分钟六十秒呢,就会差三倍。如果你把二十六除上三,基本就是八点几,跟他这个时间是对的上, 就当我们去看这些图表的时候,一定要看他的时间单位跟你的单位是不是一致的。 当我们测试完成之后呢,这个测试报告就不能作为正式的测试报告发出去,为什么呢?因为这个报告呢,他只是给我们内部来用的,是用来评估本质的性能测试是不是达标。 那么系统有没有瓶颈,瓶颈可能出现在哪里?他是一个用来做分析的报告,这份报告呢,如果你拿给那些不是专业做行程测试的人员去看的话,他们可能看不懂,也不知道是什么意思。 所以呢,我们在做测试报告的时候呢,一定要去挑选一些数据出来,就挑选一些有代表性的数据,然后呢再增加一些描述性的信息,才是一个正式的测试报告。 这份报告呢只是用来帮助我们去定位问题,判断结果。 那我们再来简单的看一下我们的测试过程, 这一次呢,我们只是去了解一下如何去做一个完整的性能测试。在一个完整的性能测试过程中呢,我们先要去做脚本,脚本呢,你可以录制本次呢,我们是用手工的方式去编写脚本, 编写脚本的时候呢,他会有一些基本的主教,现成主就是最基本的主教。在现成组中呢,我们要设置并发的用户数量和循环次数,这是对现成主的设置。 在现成组的里面呢,我们要添加测试动作,测试动作呢要与你的协议相关,你的网络协议是什么?你就要选择相应的原件,选择相应的取样器。 在 jmit 中的这些请求都称之为取样性,他会有根据你的协议不同有多种请求, htdp 的,或者是 jdbc 的,或者是一些其他协议。我们选的呢是 http 协议,就是 http request。 那它的使用方式呢,也非常简单,你只要听上域名啊,请求地址啊,短口号啊这些基本信息很少需要我们去手写代码,你只要用配置的方式就可以实现一个测试脚本 取压器添加完成之后呢,我们再添加一个监听器, vivo xiaoshi, 它是用来查看测试结果。这个监听器呢,它主要是用来帮助我们去调试脚本,分析问题,查看结果。 在性能测试执行过程中呢,这个监听器要把它关闭掉或者是删除掉。 当我们确认脚本正确之后呢,我们还要增加这个断言,其实你在之前加断言也可以,这个没有一定,根据你的个人习惯,你提前加也可以,之后加也可以。 断言呢,也有很多种,我们现在选用的是一种比较简单的断言,使用筛子就是他的返回内容的长度去判断这个结果是不是正确。 脚本编写完成之后呢,我们记得把这个六比照的 three 关闭掉,保存脚本。 在性能测试的执行过程中呢,会用命令行的形式去执行压力测试。 jamitter 是我们调用的命令。杠 n 是说不使用图形界面,杠 t 呢是指定我的测试角, 问在哪里?杠 l 呢是把测试的结结果保存起来。杠一是生成报告,杠 o 呢是生成报告的名称,就你存到什么地方? 目标呢,一定要是一个目录,并且呢是一个空的目录,这个目录呢可以不存在,他会自动的去创建新目录。 在执行过程中呢,会每隔三十秒打印一条记录,做一个汇总信息。在汇总信息中呢,加号表示的是这一段时间内的汇总信息。 等号是指的是从测试开始到现在这一段时间的全部的汇总信息。 后面这个数字是你的取样器的执行次数, 零零零幺九是你的执行时间,后面这个数据呢,是每秒平均的取向,其数量。 在后面呢是响应时间,时间呢是以毫秒为单位,在后面呢是出错的失误数量,出错的请求数,或者起二级的数量。测试完成之后呢,他会自动的生成报告提意味。 pot 报告呢,只是用来帮助我们去分析问题,就确认是不是达标,有没有性能瓶颈。 如果说我们需要做专业的性能测试报告,可以从这里面抽取一些代表性的数据,再组成正式的测试报告,这个报告呢,不能作为正式的报告发出去。这一次的课程呢,是 让大家了解一下我们如何去做一个性能测试,基本上你需要有哪些原件,怎么去入手,怎么做这个事情。接下来我们再进行一次项目级的性能测试,一起来看看在一个项目中如何去做一个真正的性能测试。

启动 jimita 属于免安装模式,他一般呢只要把这个我们的压缩包给他解压好,然后配置环境变量以后,他就可以自己打开,直接用他的启动呢,是点进去到我们吉米特的这个安装目录下,闭目录像 找谁呢?找我们的吉米特点 b a t 啊,注意有些同学肯点吉米特 b a t, 那在这里面呢,我们还有一个吉米特点 s h, 这是拎六十下的启动,咱们在 windows 下用吉米特点 b a t 点进去 啊,那我们打开以后呢,这就是吉米特的启动,要注意的是这个黑窗口不要关掉。另外呢,注意一下这里面的这个信息啊,那我们说这一个现在打开的这个图形界面怎么办呢? 他是 to use for low testing, 就是你不需要按他来做什么做性能测试,那么这个界面只是用来做我们测试使用的脚本啊,测试使用的脚本。 本次知识输入就到这里啦,你学会了吗?还有哪些疑问,评论区留言将一一为大家解答。

那你说一下怎么用 jimmy 头找出某个接口的一个最大并发用处呢?嗯,用现成组设置并发用户数进行性能测试就可以了。面试官主要考察你有没有真正做过性能测试,有没有系统化的性能测试思维。可以设计一个阶梯的场景,然后呢,使用阶梯线程组, 每隔一段时间呢,自动的增加固定量的一个并发的用户数,然后通过这个监听器或者是监控的平台来查看运行的结果,来分析运行的结果,判断是否达到了一个性能瓶颈, 从而断定呢是否达到了一个最大并发用户数的一个区间。然后呢,再取这个最大并发用户数之间来缩小固定的一个地质部长,从而获得这个最大的一个并发用户数。

然后你们接口用的是什么工具去做的?是全密粉,你们说一下指明可测试接口的一个流程吧,就是会在呃这个信号上面添加个现成品,然后添加一个 app 的请求,比如说注册,然后添加一些信息图管理, 在就是注册上面会写上一些参数,请求参数,比如说他的 app 的一些协议,他的工作要地址,他的说完口号,还有一些请求参数,然后再添加一个查看结果数据, 打开大家的一个运行的一个结果。那你们怎么来判断一下我这个接口测试是通过的还是不通过的呢?啊?如果说没有,在没有加一个半年的一个情况下,他的一个反应结果是红色的话,就是要去 可以查看一下他的一个请求参数的一些设置上的填写上的视频是不是有问题,比如说一些地址上是不是有问题这些,然后查看要查看就是他的一个仿佛的一个状态吗?如果说他他说的是状态吗?显示的是四百这样子的话,很有可能就是要去看看他的地址 填错了,这样子。如果说这些请求参数这些数值都是没有问题的话,然后他又掏错的话,就有可能是一个 bug, 就主要是看这个查看结果是里面的返回结果,是吧?对,然后看一下一些请求参数,那你们这个时候会去同步查数据库吗?会会,因为如果说确认这个参数跟参数都是没有问题, 问题的话,可能就会去查看一下设计库那边是不是,是不是有,呃,就是有问题,这样就是有问题的时候会去通过查一下数据库,是吧?对,关注面试团,面试 offer 一级团。

董哥,如何使用洁面团对外板项目进行简单的压力测试?对于上图的 air 场景搭建,那么煎饼的搭建怎么样子呢?煎饼的场景搭建类似如下图案例 n 个形成组或夹板进行高面吧。一新建注册夹板 二新建登录脚本三新建组建同步定制器四、添加聚合报告对于部分请求,可能还需要带上复购管理器以及吸头管理器,还可以结合循环控制器来进行更复杂的业务实践。

前面的这个工具怎么测的吗?这个流程能跟我说一下吗?前面的工具先设置一个现成组,然后的话在里面填入相应的地址,然后的话接接口,还有请求方式和请求传入的参数,然后再设置一个进球头,再设置一个查看结果数就可以使用。那么如果说你们的这个接口测试里面有一些接口,他是依赖于之前的接口的,就是我们说的这种接口一些关联, 这个是怎么处理的呢?这个可以使用正正胶瓦或者尖身提取器,前面返回的结果提取出需要的,然后传到下一个模块中,是正泽提取器, 不是正交法,正交法是测试用力的一种方法啊,那么基本上有这种结构的关联的呢?我们肯定是要先取到这个数据,然后把它复制给一个变量,然后再把这个变量的传输给下一个接口。那么怎么去提取?我一般会用两种,如果说是结果是 js 格式的,我们会用 js 提取器,如果结果不是 js 的,我们可能会用正则提取器去做一个提取。这两个不是都可以吗? 刚刚说了呀,这两种事都可以啊,但如果说你的财务结果是 jcen 的,我用 jcen 会更方便一点,按上九秒二十也挺方便。都可以说啊,就是按照我刚刚说的那种场景,不同的场景可以用不同的这个方法吗?

高端的好用,紧密的好用,紧密的好用。哎,别吵了别吵了,别吵了别吵了,那个实践出真知,今天咱们就测一下哪个工具更好用。高端的是惠普公司的商业工具,是测试界的白富美,当然是他最好了。才不是的,紧密的是这几年非常火的开源工具,互联网大厂都在用, 他们两个说的都挺有道理,最后我们还是看测评结果决定吧,我们分别用 logon 跟 gmmit 去做三轮压测,每一轮压测我们分别用五十,一百、两百的并发,每轮压测我们压两分钟,这样的话,我们最后看最后的压缩结果,我们综合来评估哪个工具更好用。 low rond 五十并发测评开始 我们主要关注那个 tps 这个指标啊 啊,咱们第一轮的这个两分钟压完了啊,平均的这个 tps 是一千一百七十三。楼庄这一百并发的测评结果是 tps 是两千零三十三,楼庄这两百并发已经测完了,他的平均 tps 是一千九百八十二。 然后呢,不过他压测过程中出现了一些报错啊,我们看一下,报错呢是卢旺正,他一个通病,在高 tps 下的是 tcp 连接数,不够用,我们根据提示呢,修改了注册表也解决不了这个问题。 哎,他这个吉米特的五十并发跑完了,最后结果出来了一千四百一十三的 tps。 嗯,吉米特的那个第二轮一百并发也测结束了哈,他的最后的测试结果是两千零六十二。 吉米特的第三轮测试两百并发压缩开始。哎呀,同样也是出了一个坑啊,我估计后台也是有报错,我估计应该是和刘庄这遇到的问题是一样的 啊,清明是两百并发,我们也测出结果来了,结果是 tps 两千一百六十二啊,然后呢,刚才这个图形上出现了两个坑啊,其实 还是报错了的,我看了一下,报错日日,跟我的猜想是一样的,依然是连接数的问题,这应该是跟 lower 那一样,这其实是 windows 这块的一个问题。好,我们这次的测评结果出来了啊,根据测评数据来看呢,在对应的并发下,金比特跟 lower 的这个数据结果差距不大,但是金比特呢,略高一点,而 而刘庄那这块呢,其实图表这块呢,更加的友好一些,但是吉米斯毕竟是免费的,所以说还要什么自行车,所以说根据这次的测评结果我们来看呢,就是吉米斯小胜。

那你说一下你用 jimita 做接口测试的流程吧?没做过啊。行,第一步啊,通过接口文档或者抓包获取接口的 uil 和参数。第二步,创建县城组,创建 htvp 的请求,根据接口地址设置相关的信息。 第三步,根据测试用力情况修改接口参数,调动接口。第四,对接口的返回值做判断,也就是断言,你明白了吗?

华为一手我的梦 carry 全场,真的是鸡皮疙瘩都起来了,两分钟看完华为发布会,七款产品,手表和电视是主角,手机呢,一个字也没提。第一款产品,华为平板 matepad pro, 十三点二英寸,那轻薄是它最大的亮点, 重量是五百八十克,厚度是有五点五毫米。电池呢,一万零一百毫安时,八十八瓦的有线充电,六十五分钟充满,那相机就中规中矩,那黑白青三种颜色可选, 幺九五起步。那第二款产品呢?华为黄金智能腕表,那整个手表呢,都是金色的元素,里面还有六段十八 k 金, 不知道抠下来能卖多少钱,这是双向的北斗,微信消息支持百米潜水,正常续航是八天,就是卖的贵点。二一九九九起步。第三款产品,华为水平 vo pro, 九十八和八十五两个尺寸,那边框非常窄啊,不到一毫米。洪湖九百处理器,那做了一个新的遥控器,叫做明吸指向遥控器,一个就是指到哪里就可以 点击那里,相当于一个电视鼠标。第二个就是呼叫小艺找遥控器,那遥控器就会发出声音。宏图画质 ai 计算,可以把幺零八零 p 的片缘提升到四 k 画质。有一个新功能就是人走了自动熄屏,人来了自动亮屏,这功能真不错, 八十五寸的,二四九九九九十八寸的呢?三六九九九。第四款产品,新耳机 ip 五四 g 防水,蓝色、青色、白色和银色,搭载的星闪技术实现了声音无损传输,那这是降噪,这是插找三十三小时的续航。耳机这个东西呢,还是得听,不听,不知道谁好谁坏。 第五个产品呢?华为智慧眼镜二,那这个呢,就不多说了,幺六零零起步。第六个产品,华为 box gd 四,一个是四十六毫米的一点四三英寸的屏幕, 花边棱角的设计,那适合男生。一个是四十一毫米一点三二英寸,圆润的造型适合女生。一五八八起步。第七个产品,华为路由器 be 三 pro, 搭载红光四,支持游戏加速、儿童上网功能等功能。第八个产品,华为 mate 六零 rs 哦。