美文网首页测试技术
Jmeter使用总结

Jmeter使用总结

作者: 海的那一边 | 来源:发表于2018-12-14 17:24 被阅读199次

    jmeter用例结构

    在使用jmeter过程中经常使用的结构及各元件:


    image.png

    测试计划:一个功能集TestCase。
    线程组:一个独立的小功能测试用例集合,或多个相关小功能的用例集合。
    BeanShell Sampler:Sampler的一种,变量生成器,该变量可能被用到HTTP请求参数中。
    HTTP请求:Sampler的一种,发送一个http请求,该项中包含名称,协议,ip,端口号,方法,路径,Content encoding,Parameters或Body Data。
    HTTP信息头管理器:配置元件的一种,Headers的内容在这个填写
    jp@gc - JSON Content Assertion:断言的一种,验证http请求的返回值是否正确。

    • 只检查Json的key是否一样,不检查key的内容
    • 只检查数组中数据是否包含在预期结果中
    • Json结果检查时不检查内容的key:如果有key的内容不需要检查,则填写在这里,一般填写不是固定的值的key,比如创建时间,更新时间,或者服务端返回的随机id值
    • 需要存在的纯文本内容:如果关注某个文本内容,可以在这里填写
    • 需要不存在的纯文本内容:由于预期结果存在于返回值中就可以通过,所以返回值有多余的内容无法校验,可以在这里加上返回错误时可能出现的key值

    jp@gc - JSON Path Extractor:后置处理器的一种,用来从当前http的返回结果中获取某个值,当做后续请求中的变量。

    • Destination Variable Name:定义的变量名称
    • JSONPath Expression:以$.开头,即获取返回body中的那个key的值
    • Default Value:定义默认值,如果获取不到,则使用默认值
    • HTTP Request Defaults:配置元件的一种,设置请求默认值

    如何使用jmeter进行接口测试?

    1.步骤
    1)提测时或提测前,阅读提测接口的接口文档,了解每个接口实现的功能,了解每个接口的header、协议、ip、端口号、方法、路径、请求体及返回,了解必填参数及参数长度定义。
    2)了解各接口实现的业务功能,理清楚包含的业务逻辑。
    3)思考异常情况。
    4)编写测试用例及调试。

    2.具体实践
    1)需要测试的接口有:
    获取医生方案
    选为我的方案
    为患者分配方案
    查看当前医生与指定患者关联的随访信息
    查看执行进度
    2)业务逻辑:
    a.创建医生、创建患者、建立随访关系:
    用户注册,用户登录,完善用户基本信息,用户创建患者,患者扫描登记,医生同意申请。
    b.给医生分配方案,获取医生的方案,给患者分配方案,查看患者关联的随访信息,查看执行进度,移除患者方案,移除医生方案,获取医生方案。
    c.数据的删除,环境的清理:
    删除患者,注销用户。
    3)异常:
    a.重复操作。
    b.请求body中的参数异常:必填参数为空,必填参数类型错误,必填参数值内容错误,参数长度超限。

    3.注意点:

    1.运行时失败怎么办?
    1)环境检查,有些需要连接vpn
    2)在View Result Tree中查看请求及返回,在请求中查看url、body、header是否有问题
    a.有时是参数错误导致的,比如变量没有获取到(CSV文件及CSV文件配置问题导致没有获取到变量或者变量获取错误、使用到前面HTTP中的参数而该参数获取出错)
    b.请求中相关参数填写错误
    c.在返回中查看有用信息,如404一般时路径或端口有问题,400请求参数匹配问题,500一般是服务端的问题,可以自己查看报了什么错,然后找开发定位
    3)环境的清理问题:
    a.在一个线程组内部的最开始创建需要使用的数据,例如用户的注册及患者的添加。
    b.在在一个线程组内部的最后将创建的数据例如用户及患者删除。
    4)对于Pub和正式环境,很多值是不相同的,可以定义到CSV文件中,可以灵活配置和修改,在jmeter中使用${变量名}来获取。

    相关文章

      网友评论

        本文标题:Jmeter使用总结

        本文链接:https://www.haomeiwen.com/subject/hfighqtx.html