Jmeter和Postman工具的区别

区别1::用例组织方式

不同的目录结构与组织方式代表不同工具的测试思想,学习一个测试工具应该首先了解其组织方式。
  • Jmeter的组织方式相对比较扁平,它首先没有WorkSpace(工作空间)的概念,直接是TestPlan(测试计划),TestPlan(测试计划)下创建的Threads Group(线程组)就相当于TestCase(测试用例),并没有TestSuite(测试模块)的层级。TheadsGroup(线程组)中的Sampler(取样器)、管理器代表一个Step(测试步骤)
  • Postman功能上更简单,组织方式也更轻量级,它主要针对的就是单个的HTTP请求。Collection就相当于是Project(项目),而Collection中可以创建不定层级的Folders(文件夹),可以自己组织TestSuite(测试模块)。每个Request(请求)可以当做是一个TestCase(测试用例)或者Step(测试步骤)

区别2:支持的接口类型与测试类型

  • Jmeter的功能更强大,可以测试各种类型的接口,不支持的也可以通过网上或自己编写的插件进行扩展
  • Postman更轻量级,定位也不同,可用来测试Rest接口

区别3:配置不同接口类型

  • Jmeter可以在线程组里添加HTTP、TCP或WebSocket的Sampler
  • Postman仅支持Rest接口
    Jmeter:
接口类型 测试类型
Rest、Soap等可扩展WebSocket、socket 功能、压力

Postman:

接口类型 测试类型
Rest 功能

区别4:自定义变量以及变量的作用域

除以下表格中所列的变量之外,两个工具也都有系统变量,没有列出。
Jmeter:

变量类型 作用域
TestPlan中用户定义的变量 所有Threads Group
配置元件 - 用户定义的变量 根据元件位置而定
CSV data set、random variable等 根据元件位置而定
前置、后置处理器 当前Threads Group

Postman:

变量类型 作用域
Environment Variable 当前环境的Collection
Global Variable 所有Collections
CSV/JSON datafile Runner当前的Collection

区别5:数据源、生成器,进行参数化

Jmeter:

数据源 生成器 循环
TCSV Data Set Config读取csv文件 Random Variable计数器 ForEach控制器、循环控制器、While控制器

Postman:

数据源 生成器 循环
Runner中运行时,可加载CSV/JSON文件 无(只能通过脚本) Runner中的Iteration

区别6:流程控制

  • Jmeter:由Switch控制器、If控制器、随机控制器等一系列控制器实现流程控制,以及Beanshell脚本
  • Postman:通过JavaScript脚本控制

区别7:结果解析、展示

Jmeter:

结果 日志 报告
各种监听器 统一的Jmeter log 监听器可导出到文件

Postman:

结果 日志 报告
Send可查看Request的Response、Runner可查看运行的Result Postman console、Chrome DevTools Request的Response以及Runner的Result均可导出json

区别8:断言

  • Jmeter:TestPlan、Threads Group、Sampler均可添加断言
  • Postman:请求的Tests中可添加断言

区别9:脚本扩展能力

  • Jmeter:Bean shell(Java)
  • Postman:JavaScript

区别10:团队协作

  • Jmeter:一个TestPlan也是一个jmx(xml)文件,无法分割,但Jmeter有一个合并的功能,允许将多个文件合并在一起。只能每个团队成员自己建立一个TestPlan,分功能块进行测试。最后整理合并。
  • Postman:有团队协作的功能,需要付费。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章