区别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接口
区别4:自定义变量以及变量的作用域
除以下表格中所列的变量之外,两个工具也都有系统变量,没有列出。
区别5:数据源、生成器,进行参数化
区别6:流程控制
Jmeter:由Switch控制器、If控制器、随机控制器等一系列控制器实现流程控制,以及Beanshell脚本
Postman:通过JavaScript脚本控制
区别7:结果解析、展示
区别8:断言
Jmeter:TestPlan、Threads Group、Sampler均可添加断言
Postman:请求的Tests中可添加断言
区别9:脚本扩展能力
Jmeter:Bean shell(Java)
Postman:JavaScript
区别10:团队协作
Jmeter:一个TestPlan也是一个jmx(xml)文件,无法分割,但Jmeter有一个合并的功能,允许将多个文件合并在一起。只能每个团队成员自己建立一个TestPlan,分功能块进行测试。最后整理合并。
Postman:有团队协作的功能,需要付费。