Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
xiaofang li
MeterSphere
Commits
759e6e7f
Commit
759e6e7f
authored
4 years ago
by
q4speed
Browse files
Options
Download
Email Patches
Plain Diff
fix(接口测试): 修复空指针bug
parent
fecc4c4a
dev
csv_split
dependabot/maven/backend/com.thoughtworks.xstream-xstream-1.4.18
dependabot/maven/backend/org.apache.commons-commons-compress-1.21
dependabot/maven/backend/org.jsoup-jsoup-1.14.2
dev-workstation
feat_api_custom_field
feat_custom_field
feat_custom_function
feat_environment_group
feat_environment_group_copy
feat_file_management
feat_issue_num
feat_jmeter_definition_import
feat_plugin
feat_remove_organization
feat_timing_clean
feat_user_group
feat_vc
feat_vc_testtrack
feat_用例步骤支持两种模式
feature_1000439
fix_definition_import
fix_lyh_v1.17
fix_stop_scenario
jmx-convert
local-api-delimit
master
pipeline-test
pr@custom_template@dev
pr@dev@SQL语句去掉库名
pr@dev@dev
pr@dev@feat@四种协议test、case页面优化
pr@dev@feat_Jira自定义提缺陷
pr@dev@feat_add_issueremark
pr@dev@feat_scenario_custom_id
pr@dev@feat_sync
pr@dev@feat_task_bug
pr@dev@feat_参数添加长度描述
pr@dev@feat_同步禅道缺陷
pr@dev@feat_同步第三方平台缺陷状态
pr@dev@feat_工作空间多项目环境组合
pr@dev@feat_性能测试版本对比页面修改_自动执行
pr@dev@feat_执行测试计划接口用例后更新关联的功能用例状态
pr@dev@feat_报告模板打包成一个html
pr@dev@feat_接口定义、批量场景转性能测试一键更新
pr@dev@feat_接口定义定时任务改造
pr@dev@feat_接口测试_文档结构断言
pr@dev@feat_接口用例列表添加批量执行
pr@dev@feat_提交缺陷自定义字段
pr@dev@feat_操作日志_变更历史
pr@dev@feat_测试计划报告分享
pr@dev@feat_测试计划用例自定义排序
pr@dev@feat_用例支持自定义排序
pr@dev@feat_用例步骤支持两种模式
pr@dev@feat_系统设置_SSL
pr@dev@feat_编辑模板-自定义字段设置
pr@dev@feat_缺陷列表添加缺陷缺陷来源
pr@dev@feat_脑图保存临时节点
pr@dev@feat_脑图用例没保存提示
pr@dev@feat_部分列表自定义表头重构支持保存列宽
pr@dev@feat_需求_plugin
pr@dev@fix
pr@dev@fix77
pr@dev@fix_
pr@dev@fix_23
pr@dev@fix_APIBackendListenerClient优化
pr@dev@fix_api_homepage
pr@dev@fix_batch_update_scenario_env
pr@dev@fix_bug
pr@dev@fix_bug09
pr@dev@fix_bug3306
pr@dev@fix_bug8877
pr@dev@fix_bug_07202243
pr@dev@fix_bug_0726
pr@dev@fix_jira提交空的非必填字段报错
pr@dev@fix_jira校验报错
pr@dev@fix_json-schema中填写的必填和字段描述不能被导出
pr@dev@fix_jsonSchema不生效
pr@dev@fix_my_v1.10_bug
pr@dev@fix_permission
pr@dev@fix_plan_relevance_scenario_env
pr@dev@fix_postman导入报错
pr@dev@fix_python后置脚本执行失败导致获取不到结果
pr@dev@fix_report_permission
pr@dev@fix_scenario_load_test
pr@dev@fix_sql版本冲突
pr@dev@fix_sql脚本中带了库名
pr@dev@fix_sql错误
pr@dev@fix_swagger导出报错
pr@dev@fix_swagger未导入到指定模块
pr@dev@fix_x-pack
pr@dev@fix_xmind格式导入优化标签
pr@dev@fix_zentao
pr@dev@fix_—swagger导入报错
pr@dev@fix_从公共用例库移除_再编辑用例发现无法加到公共用例库了
pr@dev@fix_代码扫描图标不显示
pr@dev@fix_保存后重新点击改模块无显示
pr@dev@fix_保存环境报错
pr@dev@fix_修复sql问题
pr@dev@fix_修复条件控制器变量值中有换行导致判断失败问题
pr@dev@fix_修复环境设置中编辑下模块和路径匹配时模块和路径允许为空的缺陷
pr@dev@fix_修改SQL中大小写与实际表名不一致问题
pr@dev@fix_修改db版本号
pr@dev@fix_修改prometheus内存使用率查询公式
pr@dev@fix_修改vue2-ace-editor依赖
pr@dev@fix_修改关联缺陷模板未生效
pr@dev@fix_关联测试保存失效
pr@dev@fix_关联用例无法展示步骤和结果
pr@dev@fix_列表展示模板字段失效
pr@dev@fix_列表展示自定义字段
pr@dev@fix_创建缺陷前端报错
pr@dev@fix_删除用例后数量统计错误
pr@dev@fix_删除缺陷
pr@dev@fix_删除项目清理定时任务
pr@dev@fix_功能用例版本切换
pr@dev@fix_去掉页面调试文字
pr@dev@fix_只读用户访问用例详情页面跳转到默认页
pr@dev@fix_同步缺陷失败
pr@dev@fix_回退问题PR
pr@dev@fix_场景导入按钮失效
pr@dev@fix_场景自定义ID导入保留ID
pr@dev@fix_复制模板没有复制关联的字段
pr@dev@fix_多余更多操作按钮
pr@dev@fix_失败继续无效
pr@dev@fix_导出swagger报错
pr@dev@fix_导出场景文件名为null
pr@dev@fix_应用管理没有自动保存
pr@dev@fix_开多个窗口编辑场景样式错乱
pr@dev@fix_性能测试_线程组
pr@dev@fix_批量操作数量显示错误
pr@dev@fix_接口case优化
pr@dev@fix_接口定义_列表筛选
pr@dev@fix_接口定义_用例执行
pr@dev@fix_接口定义_用例批量
pr@dev@fix_接口定义导入order字段为空
pr@dev@fix_接口定义导入用例id重复
pr@dev@fix_接口定义导出swagger报错
pr@dev@fix_接口定义导出为swagger
pr@dev@fix_接口导入MS格式报空指针
pr@dev@fix_接口模块名带有斜杠导出导入异常
pr@dev@fix_接口测试_复制接口
pr@dev@fix_接口测试_安全漏洞
pr@dev@fix_接口测试_引用问题
pr@dev@fix_接口用例在定义后面
pr@dev@fix_接口自动化_步骤
pr@dev@fix_接口自动化_缺陷修复
pr@dev@fix_接口详情-变更历史无变更详情日志
pr@dev@fix_操作日志_增删改查除系统设置中的操作均无法跳转
pr@dev@fix_操作日志列表报错
pr@dev@fix_文件上传接口优化
pr@dev@fix_新增测试阶段字段在筛选列表中未更新
pr@dev@fix_查看场景测试报告报错
pr@dev@fix_模板编辑页面点击浏览器回退异常
pr@dev@fix_测试执行打印错误日志
pr@dev@fix_测试用例关联Jira缺陷页面没有显示ID
pr@dev@fix_测试用例关联缺陷列表状态没更新
pr@dev@fix_测试用例只读用户样式
pr@dev@fix_测试用例导入创建人为空
pr@dev@fix_测试用例导入更新文本错误
pr@dev@fix_测试用例显示了已删除的缺陷
pr@dev@fix_测试用例更多操作按钮
pr@dev@fix_测试用例编辑默认值没回显
pr@dev@fix_测试计划-场景测试执行结果筛选失败
pr@dev@fix_测试计划-用例状态过滤失效
pr@dev@fix_测试计划_接口执行
pr@dev@fix_测试计划关联用例全选失效
pr@dev@fix_测试计划和评审关联用例列表没有去掉已经关联的用例
pr@dev@fix_测试计划场景用例环境校验
pr@dev@fix_测试计划实际结果无法编辑
pr@dev@fix_测试计划性能测试sql
pr@dev@fix_测试计划报告报错
pr@dev@fix_测试计划报告状态统计
pr@dev@fix_测试计划接口测试列表错位
pr@dev@fix_测试计划无法提缺陷
pr@dev@fix_测试计划测试用例编辑页面报错
pr@dev@fix_测试计划用例执行人显示
pr@dev@fix_测试计划用例自定义字段展示
pr@dev@fix_测试计划页面优化
pr@dev@fix_测试评审和计划使用模板报错
pr@dev@fix_测试跟踪_功能用例_公共用例库_选择修改用例责任人后,新的责任人仍不可编辑和删除该用例
pr@dev@fix_测试跟踪部分权限问题
pr@dev@fix_添加关联缺陷按钮
pr@dev@fix_用例导入文件限制改为100M
pr@dev@fix_用例导入无法显示责任人
pr@dev@fix_用例批量编辑自定义字段
pr@dev@fix_用例评审_测试计划_关注人支持多选
pr@dev@fix_禁止删除已关联的模板
pr@dev@fix_系统设置_操作日志
pr@dev@fix_编辑场景滑动滚动条控制台报错
pr@dev@fix_编辑用例关联缺陷
pr@dev@fix_编辑用例控制台报错
pr@dev@fix_编辑用例点击关联缺陷缺少数据
pr@dev@fix_编辑自定义字段报错
pr@dev@fix_脑图保存校验
pr@dev@fix_脑图创建用例自定义ID为空
pr@dev@fix_脑图无法删除用例
pr@dev@fix_自动化
pr@dev@fix_自定义字段选项值校验
pr@dev@fix_自定义字段默认值
pr@dev@fix_自定义表头国际化问题
pr@dev@fix_自定义请求会引用环境域名
pr@dev@fix_被引用的数据删除显示重复
pr@dev@fix_选中模块后删除用例会显示全部用例
pr@dev@fix_选择缺陷模板下拉框缺少新增系统模板
pr@dev@fix_页面样式
pr@dev@fix_项目模板显示id问题
pr@dev@refact_api_table
pr@dev@refactor_Jira接口使用v2版本
pr@dev@refactor_case_import
pr@dev@refactor_jira缺陷描述支持图片
pr@dev@refactor_jsonSchema转换
pr@dev@refactor_load_test
pr@dev@refactor_markdown替换富文本框
pr@dev@refactor_menu_pos
pr@dev@refactor_postman导入变量格式转换
pr@dev@refactor_swagger2导入之后默认值没有导入
pr@dev@refactor_swagger导入body参数的顺序不变
pr@dev@refactor_swagger导入弃用接口打上Deleted标签
pr@dev@refactor_tapd详情支持图片
pr@dev@refactor_user_search
pr@dev@refactor_优化ESB相关问题
pr@dev@refactor_修改cron默认值
pr@dev@refactor_修改数据库连接池默认配置
pr@dev@refactor_勾选批量操作提示
pr@dev@refactor_升级Jython版本
pr@dev@refactor_右上角的帮助文档,修改为新页面打开
pr@dev@refactor_场景导入页面高度优化
pr@dev@refactor_复制缺陷名字为copy
pr@dev@refactor_接口定时任务编辑页面样式优化
pr@dev@refactor_样式优化
pr@dev@refactor_步骤描述格式优化
pr@dev@refactor_测试用例模块树加载优化
pr@dev@refactor_测试用例页面创建人显示名称
pr@dev@refactor_测试计划去掉测试方式列
pr@dev@refactor_测试计划场景性能用例添加排序筛选
pr@dev@refactor_测试计划场景用例添加排序筛选
pr@dev@refactor_测试计划用例添加保存按钮
pr@dev@refactor_测试计划管理用例页面优化
pr@dev@refactor_用例上传大小限制改为50M
pr@dev@refactor_用例的子节点禁止打用例和优先级标签
pr@dev@refactor_缺陷列表增加用例数字段
pr@dev@refactor_缺陷列表添加过滤排序条件
pr@dev@refactor_缺陷列表点击关联用例跳转到用例列表过滤
pr@dev@refactor_缺陷添加创建人字段
pr@dev@refactor_自定义字段校验优化
pr@dev@refactor_自定义字段选项校验
pr@dev@refactor_自定义请求添加是否引用环境
pr@dev@refactor_获取场景报告接口效率优化
pr@dev@refactor_表格高度优化
pr@dev@refactor_规范建表语句
pr@dev@refactor_请求头加描述
pr@dev@refactor_重构测试计划-场景测试
pr@dev@refactor_重构测试计划-性能测试页面
pr@dev@refactor_重构测试计划-接口测试页面
pr@dev@refactor_首页定时任务展示优化
pr@dev@refator_permission
pr@dev@refator_将脑图整体布局保存在浏览器端
pr@dev@style_调整多处样式使布局更加紧凑
pr@dev@test_plan_issue
pr@dev@修复国际化英文文本
pr@dev@修复接口定义请求地址格式错误
pr@dev@修改接口测试环境配置弹框宽度
pr@dev@修改接口自动化场景变量弹框样式
pr@dev@修改禁用状态文本样式
pr@dev@内置函数构造器优化增加mock数据说明示例及场景变量
pr@dev@副驾的测试
pr@dev@去掉测试跟踪及接口测试首页tips
pr@dev@接口自动化导入无法添加断言等
pr@dev@更新submodule
pr@dev@更新测试跟踪用例步骤样式
pr@dev@构建完成后清理构建产物
pr@dev@编辑用例页面mock显示优化
pr@dev@解决冲突
pr@dev@解决多出的斜杠问题
pr@fix_sql@dev
pr@master@fix_plan_relevance_scenario_env
pr@master@fix_代码扫描图标不显示
pr@master@fix_测试计划_接口执行
pr@master@fix_自动化
pr@master@更新测试跟踪用例步骤样式
pr@v1.10@feat_参数添加长度描述
pr@v1.10@feat_同步禅道缺陷
pr@v1.10@feat_同步第三方平台缺陷状态
pr@v1.10@feat_执行测试计划接口用例后更新关联的功能用例状态
pr@v1.10@feat_接口定义定时任务改造
pr@v1.10@feat_部分列表自定义表头重构支持保存列宽
pr@v1.10@fix_
pr@v1.10@fix_32
pr@v1.10@fix_APIBackendListenerClient优化
pr@v1.10@fix_api_homepage
pr@v1.10@fix_bug09
pr@v1.10@fix_bug3306
pr@v1.10@fix_bug3307dev_bug
pr@v1.10@fix_bug8877
pr@v1.10@fix_jira提交空的非必填字段报错
pr@v1.10@fix_jira校验报错
pr@v1.10@fix_my_v1.10_bug
pr@v1.10@fix_postman导入报错
pr@v1.10@fix_sql脚本中带了库名
pr@v1.10@fix_swagger导入报错
pr@v1.10@fix_swagger未导入到指定模块
pr@v1.10@fix_zentao_issue
pr@v1.10@fix_修改SQL中大小写与实际表名不一致问题
pr@v1.10@fix_修改prometheus内存使用率查询公式
pr@v1.10@fix_修改vue2-ace-editor依赖
pr@v1.10@fix_列表展示模板字段失效
pr@v1.10@fix_列表展示自定义字段
pr@v1.10@fix_删除用例后数量统计错误
pr@v1.10@fix_删除项目清理定时任务
pr@v1.10@fix_同步缺陷失败
pr@v1.10@fix_回退问题PR
pr@v1.10@fix_场景自定义ID导入保留ID
pr@v1.10@fix_失败继续无效
pr@v1.10@fix_导出场景文件名为null
pr@v1.10@fix_开多个窗口编辑场景样式错乱
pr@v1.10@fix_批量操作数量显示错误
pr@v1.10@fix_接口定义_列表筛选
pr@v1.10@fix_接口定义导入用例id重复
pr@v1.10@fix_接口定义导出swagger报错
pr@v1.10@fix_接口导入MS格式报空指针
pr@v1.10@fix_接口模块名带有斜杠导出导入异常
pr@v1.10@fix_操作日志列表报错
pr@v1.10@fix_查看场景测试报告报错
pr@v1.10@fix_模板编辑页面点击浏览器回退异常
pr@v1.10@fix_测试用例关联缺陷列表状态没更新
pr@v1.10@fix_测试用例导入创建人为空
pr@v1.10@fix_测试用例导入更新文本错误
pr@v1.10@fix_测试用例显示了已删除的缺陷
pr@v1.10@fix_测试计划-场景测试执行结果筛选失败
pr@v1.10@fix_测试计划-用例状态过滤失效
pr@v1.10@fix_测试计划报告报错
pr@v1.10@fix_测试计划测试用例编辑页面报错
pr@v1.10@fix_测试计划用例执行人显示
pr@v1.10@fix_测试计划用例自定义字段展示
pr@v1.10@fix_测试计划页面优化
pr@v1.10@fix_用例导入文件限制改为100M
pr@v1.10@fix_用例导入无法显示责任人
pr@v1.10@fix_用例批量编辑自定义字段
pr@v1.10@fix_编辑场景滑动滚动条控制台报错
pr@v1.10@fix_编辑用例点击关联缺陷缺少数据
pr@v1.10@fix_脑图保存校验
pr@v1.10@fix_脑图创建用例自定义ID为空
pr@v1.10@fix_脑图无法删除用例
pr@v1.10@fix_自定义字段选项值校验
pr@v1.10@fix_自定义表头国际化问题
pr@v1.10@fix_选中模块后删除用例会显示全部用例
pr@v1.10@lyh_v1.10
pr@v1.10@refactor_Jira接口使用v2版本
pr@v1.10@refactor_jira缺陷描述支持图片
pr@v1.10@refactor_postman导入变量格式转换
pr@v1.10@refactor_tapd详情支持图片
pr@v1.10@refactor_勾选批量操作提示
pr@v1.10@refactor_右上角的帮助文档,修改为新页面打开
pr@v1.10@refactor_场景导入页面高度优化
pr@v1.10@refactor_接口定时任务编辑页面样式优化
pr@v1.10@refactor_测试用例页面创建人显示名称
pr@v1.10@refactor_测试计划用例添加保存按钮
pr@v1.10@refactor_用例上传大小限制改为50M
pr@v1.10@refactor_缺陷列表增加用例数字段
pr@v1.10@refactor_缺陷列表添加过滤排序条件
pr@v1.10@refactor_缺陷列表点击关联用例跳转到用例列表过滤
pr@v1.10@refactor_规范建表语句
pr@v1.10@refactor_重构测试计划-场景测试
pr@v1.10@refactor_重构测试计划-性能测试页面
pr@v1.10@refactor_重构测试计划-接口测试页面
pr@v1.10@refactor_首页定时任务展示优化
pr@v1.10@style_调整多处样式使布局更加紧凑
pr@v1.10@去掉测试跟踪及接口测试首页tips
pr@v1.10@构建完成后清理构建产物
pr@v1.10@编辑用例页面mock显示优化
pr@v1.11@feat_接口定义、批量场景转性能测试一键更新
pr@v1.11@feat_接口用例列表添加批量执行
pr@v1.11@fix_postman导入报错
pr@v1.11@fix_report_permission
pr@v1.11@fix_review_bug_0726
pr@v1.11@fix_zentao
pr@v1.11@fix_—swagger导入报错
pr@v1.11@fix_修改prometheus内存使用率查询公式
pr@v1.11@fix_关联测试保存失效
pr@v1.11@fix_删除项目清理定时任务
pr@v1.11@fix_接口自动化_步骤
pr@v1.11@fix_测试执行打印错误日志
pr@v1.11@fix_测试用例导入更新文本错误
pr@v1.11@fix_测试用例显示了已删除的缺陷
pr@v1.11@fix_测试计划报告报错
pr@v1.11@fix_消息通知
pr@v1.11@fix_用例导入文件限制改为100M
pr@v1.11@fix_脑图无法删除用例
pr@v1.11@fix_自动化_执行
pr@v1.11@fix_自定义表头国际化问题
pr@v1.11@refactor_修改数据库连接池默认配置
pr@v1.11@编辑用例页面mock显示优化
pr@v1.12@fix_json-schema中填写的必填和字段描述不能被导出
pr@v1.12@fix_修复条件控制器变量值中有换行导致判断失败问题
pr@v1.12@fix_接口定义_用例批量
pr@v1.12@fix_接口自动化_循环执行问题
pr@v1.12@fix_接口自动化_执行问题
pr@v1.12@fix_接口自动化_拖拽
pr@v1.12@fix_测试计划实际结果无法编辑
pr@v1.12@refactor_swagger2导入之后默认值没有导入
pr@v1.12@refactor_swagger导入弃用接口打上Deleted标签
pr@v1.12@refactor_升级Jython版本
pr@v1.12@refactor_步骤描述格式优化
pr@v1.14@fix_接口测试_复制接口
pr@v1.14@fix_用例评审_测试计划_关注人支持多选
pr@v1.15@fix_sync
pr@v1.16@fix_scenario_load
pr@v1.16@fix_接口测试_安全漏洞
pr@v1.16@fix_接口测试_引用问题
pr@v1.16@fix_接口详情-变更历史无变更详情日志
pr@v1.16@fix_测试跟踪_功能用例_公共用例库_选择修改用例责任人后,新的责任人仍不可编辑和删除该用例
pr@v1.16@refactor_获取场景报告接口效率优化
pr@v1.17@feat_我的工作台加版本筛选
pr@v1.17@fix
pr@v1.17@fix_功能用例版本切换
pr@v1.17@fix_新增测试阶段字段在筛选列表中未更新
pr@v1.18@fix_修复环境设置中编辑下模块和路径匹配时模块和路径允许为空的缺陷
pr@v1.8@feat_minder_tag_batch
pr@v1.8@fix_api_file_upload
pr@v1.8@fix_api_import_no_module_path
pr@v1.8@fix_minder_select_node
pr@v1.8@fix_plan_relevance_scenario_env
pr@v1.8@fix_测试计划_接口执行
pr@v1.8@refactor_sellect_all_style
pr@v1.8@更新测试跟踪用例步骤样式
pr@v1.9@feat_scenario_custom_id
pr@v1.9@feat_系统设置_SSL
pr@v1.9@fix_batch_update_scenario_env
pr@v1.9@fix_jsonSchema不生效
pr@v1.9@fix_保存环境报错
pr@v1.9@fix_创建缺陷前端报错
pr@v1.9@fix_去掉页面调试文字
pr@v1.9@fix_只读用户访问用例详情页面跳转到默认页
pr@v1.9@fix_测试用例只读用户样式
pr@v1.9@fix_测试计划和评审关联用例列表没有去掉已经关联的用例
pr@v1.9@fix_测试计划无法提缺陷
pr@v1.9@fix_测试评审和计划使用模板报错
pr@v1.9@fix_自定义请求会引用环境域名
pr@v1.9@refactor_markdown替换富文本框
pr@v1.9@refactor_修改cron默认值
pr@v1.9@refactor_复制缺陷名字为copy
pr@v1.9@refactor_缺陷添加创建人字段
pr@v1.9@refactor_自定义请求添加是否引用环境
pr@v1.9@修复国际化英文文本
pr@v1.9@修复接口定义请求地址格式错误
pr@v1.9@修改接口测试环境配置弹框宽度
pr@v1.9@修改接口自动化场景变量弹框样式
pr@v1.9@修改禁用状态文本样式
pr@v1.9@更新submodule
prv1.10@fix_测试跟踪_变更历史
refactor
refactor_environment_group
refactor_group_member
refactor_postman导入顺序保持一致
refactor_project_setting
refactor_user_batch
refactor_ws_notice_template
refator_issue_create
repr@dev@15f60fff44df8625408185381de1eb2366a42011@refactor_缺陷模板去掉Jira字段勾选项
repr@dev@527e95c1083edb1e637edf345b76364e5764d2b5@feat_Jira自定义字段提缺陷
repr@dev@7c38db9ad34ad57c62b4ff6126a7b0cc051d2d87@feat_测试计划导出html
repr@dev@feat_系统设置_SSL
repr@dev@v1.10@ac7c48d27fc5f4f16d6d7ab8e4456f66dfeb5462@fix_测试用例列表刷新问题
repr@dev_V1.10_v1.11@40cd10d7ebcfd984dcbf159aa43136493bf6cc0b@fix_接口定义批量操作报错
repr@dev_master_v1.16@
repr@dev_v1.0@0cf2d0a69ee2872@fix
repr@dev_v1.0@71d32d30@refactor_rampup
repr@dev_v1.0@c350f1c137b500@fix77
repr@dev_v1.0@e6f921547ae76395@fixdev_bug
repr@dev_v1.0@fdabf2cb4@fix_缺陷数量
repr@dev_v1.10@32de68664756f019@fix_定时同步跳转
repr@dev_v1.10@3ca0e91480b41667c@fix
repr@dev_v1.10@678b9a6a3a9c4636aa1b9493850d60c4a6aed2df@fix_接口模块名带有斜杠导出导入异常
repr@dev_v1.10@70bf87ed@fix_接口自动化_场景步骤
repr@dev_v1.10@82e11e464edb0da216c6660c8ffde45819d27570@refactor_重构测试计划-接口测试页面
repr@dev_v1.10@9dc0f51ea06584447020dcd946d291115362a1b1@feat_脑图用例没保存提示
repr@dev_v1.10@b045c163042fe3ef3549efaadc662760f23c6207@feat_执行测试计划接口用例后更新关联的功能用例状态
repr@dev_v1.10@cfebb59139baf5d4375384a15872ba6f90a7c6f1@refactor_重构测试计划-场景测试
repr@dev_v1.10@cff1e95686ce@fix_dev
repr@dev_v1.10@e9fceb49@fix_接口自动化_提示
repr@dev_v1.11@8cbdf7cb54ce7ea2097b43990f4f0f25602548ad@fix_其他平台缺陷添加取消关联缺陷
repr@dev_v1.11@dx@fix_接口自动化_执行报告处理
repr@dev_v1.11_v1.10@b590ba7d7a2079d331805573c279f71572f40fd4@fix_测试执行打印错误日志
repr@dev_v1.12@28a030cf@fix_接口定义_批量执行
repr@dev_v1.12@9f49f57a@fix_接口自动化_拖拽
repr@dev_v1.14@@fix_【接口定义】-添加mock函数时值生成优化+页面翻译“return”
repr@dev_v1.14@f7409212@fix_接口测试_CSV优化
repr@dev_v1.14_v1.16@fc598de402cffa8744ee656948f715c31e7d58a2@refactor_场景资源池执行添加日志打印
repr@dev_v1.16@1abe60fc@fix_接口测试_循环控制器
repr@dev_v1.16@22a21ac3@fix_接口测试_自动化步骤
repr@dev_v1.16@5d8ba4eb@fix_接口详情-变更历史无变更详情日志
repr@dev_v1.16@6de996ff@fix_接口定义_开启过多时环境与接口名称重叠
repr@dev_v1.16@a009bb38@fix_接口测试_场景执行
repr@dev_v1.16@e15672af3dc95618192ee81aedbefffdfd377b8a@fix_代码扫描图标不显示
repr@dev_v1.16@e43c11a7@fix_应用管理没有保存
repr@dev_v1.16@e43c11a7@fix_应用管理没有自动保存
repr@dev_v1.16_v1.17@430a1864ffe9800240f4fbd9b0c92991305c0baa@fix_脑图创建的用例导出状态和责任人为空
repr@dev_v1.16_v1.17@91c1b2a7@fix_接口测试_插件步骤
repr@dev_v1.17@0d05cd92d9a1b005aac8c07594625f3cda8319080d05cd92d9a1b005aac8c07594625f3cda831908@feat_测试跟踪用例版本相关
repr@dev_v1.17@0d05cd92d9a1b005aac8c07594625f3cda831908@fix_功能用例版本管理回收站
repr@dev_v1.18@abc86b09@fix_lyh_dev
repr@dev_v1.9@03defc8@feat_mock_info
repr@dev_v1.9@3e44cb0@feat_系统设置_SSL
repr@dev_v1.9@cc6ac8f768bcf72a02d6b2f39772b597ea2c02c2@fix_userId
repr@devev_v1.16@31e9453dccbf5b363f72b9a2c4d6b1f40d9e92f5@fix_tapd不显示图片
repr@v1.10_dev@10e3fbec@fix_api_homepage
repr@v1.10_dev@16ac406@fix_0615
repr@v1.10_dev@ab918f0@fix_scario_report_0616
repr@v1.11_dev@6fd05b82@fix_envparam
repr@v1.16@fix_JSONPATH断言等有200个字符限制
repr@v1.16_dev@09a4129d@fix_接口测试_调试状态
repr@v1.16_dev@11eb4bc6@feat_error_report
repr@v1.16_dev@6a89622f@fix_接口测试_JSON校验处理
repr@v1.16_dev@d5cf72dc@fix_接口测试_场景报告
repr@v1.16_dev@e2e90011@fix_testplan_用例执行
repr@v1.16_dev@ef78a7eb@fix_xpack_code
repr@v1.16_v1.17_dev@bfb01376@fix_bugs_import_api
repr@v1.16_v1.17_dev@dd1880fa@fix_bugs_0118
seleniumdocker获取报告图表
ui
v1.10
v1.11
v1.12
v1.13
v1.14
v1.15
v1.16
v1.17
v1.18
v1.6
v1.6-gtag
v1.7
v1.7-green
v1.8
v1.9
工作空间多项目环境组合
v1.18.2-rc2
v1.18.2-rc1
v1.18.2-rc0
v1.18.2-arm64
v1.18.1
v1.18.0
v1.17.3
v1.17.2
v1.17.1
v1.17.0
v1.16.6
v1.16.5
v1.16.4
v1.16.3
v1.16.2
v1.16.1
v1.16.0
v1.15.4
v1.15.3
v1.15.2
v1.15.1
v1.15.0
v1.14.7
v1.14.6
v1.14.5
v1.14.4
v1.14.3
v1.14.2
v1.14.1
v1.14.0
v1.14.0-rc3
v1.14.0-rc2
v1.14.0-rc1
v1.13.2
v1.13.1
v1.13.0
v1.12.3
v1.12.2
v1.12.1
v1.12.1-rc1
v1.12.0
v1.12.0-rc3
v1.12.0-rc2
v1.12.0-rc1
v1.11.3
v1.11.2
v1.11.2-rc1
v1.11.1
v1.11.0
v1.11-rc1
v1.10.11-lts
v1.10.10-lts
v1.10.9-lts
v1.10.8-lts
v1.10.7-lts
v1.10.7-lts-rc2
v1.10.7-lts-rc1
v1.10.6
v1.10.6-rc2
v1.10.6-rc1
v1.10.6-lts
v1.10.5
v1.10.5-rc1
v1.10.5-lts
v1.10.4
v1.10.4-rc2
v1.10.4-rc1
v1.10.4-lts
v1.10.3
v1.10.3-rc3
v1.10.3-rc2
v1.10.3-rc1
v1.10.3-lts
v1.10.2
v1.10.2-rc1
v1.10.2-lts
v1.10.1
v1.10.1-rc1
v1.10.1-lts
v1.10.0
v1.10.0-rc1
v1.10.0-lts
v1.9.3
v1.9.2
v1.9.2-rc1
v1.9.1
v1.9.0
v1.9.0-rc2
v1.9.0-rc1
v1.8.2
v1.8.1
v1.8.1-rc1
v1.8.0
v1.8.0-rc1
v1.7.3
v1.7.3-rc1
v1.7.2
v1.7.2-rc1
v1.7.1
v1.7.0
v1.7.0-rc1
v1.6.2
v1.6.2-rc1
v1.6.1
v1.6.1-rc1
v1.6.0
v1.6.0-rc2
v1.6.0-rc1
prune
No related merge requests found
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
backend/src/main/java/io/metersphere/api/dto/scenario/TCPConfig.java
+10
-10
.../main/java/io/metersphere/api/dto/scenario/TCPConfig.java
backend/src/main/java/io/metersphere/api/dto/scenario/request/TCPRequest.java
+10
-10
...a/io/metersphere/api/dto/scenario/request/TCPRequest.java
backend/src/main/java/io/metersphere/api/jmeter/JMXGenerator.java
+55
-22
...src/main/java/io/metersphere/api/jmeter/JMXGenerator.java
backend/src/main/java/io/metersphere/api/jmeter/JMeterService.java
+1
-0
...rc/main/java/io/metersphere/api/jmeter/JMeterService.java
backend/src/main/resources/jmeter/bin/saveservice.properties
+1
-12
backend/src/main/resources/jmeter/bin/saveservice.properties
with
77 additions
and
54 deletions
+77
-54
backend/src/main/java/io/metersphere/api/dto/scenario/TCPConfig.java
+
10
-
10
View file @
759e6e7f
...
...
@@ -4,16 +4,16 @@ import lombok.Data;
@Data
public
class
TCPConfig
{
private
String
classname
;
private
String
server
;
private
String
port
;
private
String
ctimeout
;
private
String
timeout
;
private
boolean
reUseConnection
;
private
String
classname
=
""
;
private
String
server
=
""
;
private
String
port
=
""
;
private
String
ctimeout
=
""
;
private
String
timeout
=
""
;
private
boolean
reUseConnection
=
true
;
private
boolean
nodelay
;
private
boolean
closeConnection
;
private
String
soLinger
;
private
String
eolByte
;
private
String
username
;
private
String
password
;
private
String
soLinger
=
""
;
private
String
eolByte
=
""
;
private
String
username
=
""
;
private
String
password
=
""
;
}
This diff is collapsed.
Click to expand it.
backend/src/main/java/io/metersphere/api/dto/scenario/request/TCPRequest.java
+
10
-
10
View file @
759e6e7f
...
...
@@ -12,15 +12,15 @@ public class TCPRequest extends Request {
// type 必须放最前面,以便能够转换正确的类
private
String
type
=
RequestType
.
TCP
;
@JSONField
(
ordinal
=
51
)
private
String
classname
;
private
String
classname
=
""
;
@JSONField
(
ordinal
=
52
)
private
String
server
;
private
String
server
=
""
;
@JSONField
(
ordinal
=
53
)
private
String
port
;
private
String
port
=
""
;
@JSONField
(
ordinal
=
54
)
private
String
ctimeout
;
private
String
ctimeout
=
""
;
@JSONField
(
ordinal
=
55
)
private
String
timeout
;
private
String
timeout
=
""
;
@JSONField
(
ordinal
=
56
)
private
boolean
reUseConnection
;
@JSONField
(
ordinal
=
57
)
...
...
@@ -28,13 +28,13 @@ public class TCPRequest extends Request {
@JSONField
(
ordinal
=
58
)
private
boolean
closeConnection
;
@JSONField
(
ordinal
=
59
)
private
String
soLinger
;
private
String
soLinger
=
""
;
@JSONField
(
ordinal
=
60
)
private
String
eolByte
;
private
String
eolByte
=
""
;
@JSONField
(
ordinal
=
61
)
private
String
request
;
private
String
request
=
""
;
@JSONField
(
ordinal
=
62
)
private
String
username
;
private
String
username
=
""
;
@JSONField
(
ordinal
=
63
)
private
String
password
;
private
String
password
=
""
;
}
This diff is collapsed.
Click to expand it.
backend/src/main/java/io/metersphere/api/jmeter/JMXGenerator.java
+
55
-
22
View file @
759e6e7f
...
...
@@ -10,6 +10,9 @@ import io.metersphere.api.dto.scenario.environment.EnvironmentConfig;
import
io.metersphere.api.dto.scenario.environment.Host
;
import
io.metersphere.api.dto.scenario.extract.*
;
import
io.metersphere.api.dto.scenario.request.*
;
import
io.metersphere.api.dto.scenario.request.dubbo.ConfigCenter
;
import
io.metersphere.api.dto.scenario.request.dubbo.ConsumerAndService
;
import
io.metersphere.api.dto.scenario.request.dubbo.RegistryCenter
;
import
io.metersphere.api.service.ApiTestEnvironmentService
;
import
io.metersphere.base.domain.ApiTestEnvironmentWithBLOBs
;
import
io.metersphere.commons.utils.LogUtil
;
...
...
@@ -90,6 +93,8 @@ public class JMXGenerator {
databaseConfigMap
.
put
(
databaseConfig
.
getId
(),
databaseConfig
.
getName
());
});
}
// DUBBO Config
threadGroupHashTree
.
add
(
dubboConfig
(
scenario
.
getName
()
+
"DUBBO Config"
,
scenario
.
getDubboConfig
()));
// 场景TCP Config
threadGroupHashTree
.
add
(
tcpConfig
(
scenario
.
getName
()
+
"TCP Config"
,
scenario
.
getTcpConfig
()));
...
...
@@ -356,6 +361,53 @@ public class JMXGenerator {
return
dataSourceElement
;
}
private
ConfigTestElement
dubboConfig
(
String
name
,
DubboConfig
dubboConfig
)
{
ConfigTestElement
configTestElement
=
new
ConfigTestElement
();
configTestElement
.
setEnabled
(
true
);
configTestElement
.
setName
(
name
);
configTestElement
.
setProperty
(
TestElement
.
TEST_CLASS
,
ConfigTestElement
.
class
.
getName
());
configTestElement
.
setProperty
(
TestElement
.
GUI_CLASS
,
SaveService
.
aliasToClass
(
"DubboDefaultConfigGui"
));
configTestElement
.
addConfigElement
(
configCenter
(
dubboConfig
.
getConfigCenter
()));
configTestElement
.
addConfigElement
(
registryCenter
(
dubboConfig
.
getRegistryCenter
()));
configTestElement
.
addConfigElement
(
consumerAndService
(
dubboConfig
.
getConsumerAndService
()));
return
configTestElement
;
}
private
ConfigTestElement
configCenter
(
ConfigCenter
configCenter
)
{
ConfigTestElement
configTestElement
=
new
ConfigTestElement
();
Constants
.
setConfigCenterProtocol
(
configCenter
.
getProtocol
(),
configTestElement
);
Constants
.
setConfigCenterGroup
(
configCenter
.
getGroup
(),
configTestElement
);
Constants
.
setConfigCenterNamespace
(
configCenter
.
getNamespace
(),
configTestElement
);
Constants
.
setConfigCenterUserName
(
configCenter
.
getUsername
(),
configTestElement
);
Constants
.
setConfigCenterPassword
(
configCenter
.
getPassword
(),
configTestElement
);
Constants
.
setConfigCenterAddress
(
configCenter
.
getAddress
(),
configTestElement
);
Constants
.
setConfigCenterTimeout
(
configCenter
.
getTimeout
(),
configTestElement
);
return
configTestElement
;
}
private
ConfigTestElement
registryCenter
(
RegistryCenter
registryCenter
)
{
ConfigTestElement
configTestElement
=
new
ConfigTestElement
();
Constants
.
setRegistryProtocol
(
registryCenter
.
getProtocol
(),
configTestElement
);
Constants
.
setRegistryGroup
(
registryCenter
.
getGroup
(),
configTestElement
);
Constants
.
setRegistryUserName
(
registryCenter
.
getUsername
(),
configTestElement
);
Constants
.
setRegistryPassword
(
registryCenter
.
getPassword
(),
configTestElement
);
Constants
.
setRegistryTimeout
(
registryCenter
.
getTimeout
(),
configTestElement
);
Constants
.
setAddress
(
registryCenter
.
getAddress
(),
configTestElement
);
return
configTestElement
;
}
private
ConfigTestElement
consumerAndService
(
ConsumerAndService
consumerAndService
)
{
ConfigTestElement
configTestElement
=
new
ConfigTestElement
();
Constants
.
setTimeout
(
consumerAndService
.
getTimeout
(),
configTestElement
);
Constants
.
setVersion
(
consumerAndService
.
getVersion
(),
configTestElement
);
Constants
.
setGroup
(
consumerAndService
.
getGroup
(),
configTestElement
);
Constants
.
setConnections
(
consumerAndService
.
getConnections
(),
configTestElement
);
Constants
.
setLoadbalance
(
consumerAndService
.
getLoadBalance
(),
configTestElement
);
Constants
.
setAsync
(
consumerAndService
.
getAsync
(),
configTestElement
);
Constants
.
setCluster
(
consumerAndService
.
getCluster
(),
configTestElement
);
return
configTestElement
;
}
private
ConfigTestElement
tcpConfig
(
String
name
,
TCPConfig
tcpConfig
)
{
ConfigTestElement
configTestElement
=
new
ConfigTestElement
();
configTestElement
.
setEnabled
(
true
);
...
...
@@ -537,28 +589,9 @@ public class JMXGenerator {
sampler
.
setProperty
(
TestElement
.
TEST_CLASS
,
DubboSample
.
class
.
getName
());
sampler
.
setProperty
(
TestElement
.
GUI_CLASS
,
SaveService
.
aliasToClass
(
"DubboSampleGui"
));
Constants
.
setConfigCenterProtocol
(
request
.
getConfigCenter
().
getProtocol
(),
sampler
);
Constants
.
setConfigCenterGroup
(
request
.
getConfigCenter
().
getGroup
(),
sampler
);
Constants
.
setConfigCenterNamespace
(
request
.
getConfigCenter
().
getNamespace
(),
sampler
);
Constants
.
setConfigCenterUserName
(
request
.
getConfigCenter
().
getUsername
(),
sampler
);
Constants
.
setConfigCenterPassword
(
request
.
getConfigCenter
().
getPassword
(),
sampler
);
Constants
.
setConfigCenterAddress
(
request
.
getConfigCenter
().
getAddress
(),
sampler
);
Constants
.
setConfigCenterTimeout
(
request
.
getConfigCenter
().
getTimeout
(),
sampler
);
Constants
.
setRegistryProtocol
(
request
.
getRegistryCenter
().
getProtocol
(),
sampler
);
Constants
.
setRegistryGroup
(
request
.
getRegistryCenter
().
getGroup
(),
sampler
);
Constants
.
setRegistryUserName
(
request
.
getRegistryCenter
().
getUsername
(),
sampler
);
Constants
.
setRegistryPassword
(
request
.
getRegistryCenter
().
getPassword
(),
sampler
);
Constants
.
setRegistryTimeout
(
request
.
getRegistryCenter
().
getTimeout
(),
sampler
);
Constants
.
setAddress
(
request
.
getRegistryCenter
().
getAddress
(),
sampler
);
Constants
.
setTimeout
(
request
.
getConsumerAndService
().
getTimeout
(),
sampler
);
Constants
.
setVersion
(
request
.
getConsumerAndService
().
getVersion
(),
sampler
);
Constants
.
setGroup
(
request
.
getConsumerAndService
().
getGroup
(),
sampler
);
Constants
.
setConnections
(
request
.
getConsumerAndService
().
getConnections
(),
sampler
);
Constants
.
setLoadbalance
(
request
.
getConsumerAndService
().
getLoadBalance
(),
sampler
);
Constants
.
setAsync
(
request
.
getConsumerAndService
().
getAsync
(),
sampler
);
Constants
.
setCluster
(
request
.
getConsumerAndService
().
getCluster
(),
sampler
);
sampler
.
addTestElement
(
configCenter
(
request
.
getConfigCenter
()));
sampler
.
addTestElement
(
registryCenter
(
request
.
getRegistryCenter
()));
sampler
.
addTestElement
(
consumerAndService
(
request
.
getConsumerAndService
()));
Constants
.
setRpcProtocol
(
request
.
getProtocol
(),
sampler
);
Constants
.
setInterfaceName
(
request
.
get_interface
(),
sampler
);
...
...
This diff is collapsed.
Click to expand it.
backend/src/main/java/io/metersphere/api/jmeter/JMeterService.java
+
1
-
0
View file @
759e6e7f
...
...
@@ -46,6 +46,7 @@ public class JMeterService {
public
void
run
(
String
testId
,
String
testName
,
List
<
Scenario
>
scenarios
,
String
debugReportId
)
{
try
{
init
();
HashTree
testPlan
=
getHashTree
(
testId
,
testName
,
scenarios
);
JMeterVars
.
addJSR223PostProcessor
(
testPlan
);
addBackendListener
(
testId
,
debugReportId
,
testPlan
);
...
...
This diff is collapsed.
Click to expand it.
backend/src/main/resources/jmeter/bin/saveservice.properties
+
1
-
12
View file @
759e6e7f
#---------------------------------------------------------
# SAVESERVICE PROPERTIES - JMETER INTERNAL USE ONLY
#---------------------------------------------------------
## Licensed to the Apache Software Foundation (ASF) under one or more
## contributor license agreements. See the NOTICE file distributed with
## this work for additional information regarding copyright ownership.
...
...
@@ -16,16 +15,11 @@
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
## See the License for the specific language governing permissions and
## limitations under the License.
# This file is used to define how XStream (de-)serializes classnames
# in JMX test plan files.
# FOR JMETER INTERNAL USE ONLY
#---------------------------------------------------------
# N.B. To ensure backward compatibility, please do NOT change or delete any entries
# New entries can be added as necessary.
#
# Note that keys starting with an underscore are special,
...
...
@@ -134,6 +128,7 @@ DNSCacheManager=org.apache.jmeter.protocol.http.control.DNSCacheManager
DNSCachePanel
=
org.apache.jmeter.protocol.http.gui.DNSCachePanel
DubboSample
=
io.github.ningyu.jmeter.plugin.dubbo.sample.DubboSample
DubboSampleGui
=
io.github.ningyu.jmeter.plugin.dubbo.gui.DubboSampleGui
DubboDefaultConfigGui
=
io.github.ningyu.jmeter.plugin.dubbo.gui.DubboDefaultConfigGui
DurationAssertion
=
org.apache.jmeter.assertions.DurationAssertion
DurationAssertionGui
=
org.apache.jmeter.assertions.gui.DurationAssertionGui
PreciseThroughputTimer
=
org.apache.jmeter.timers.poissonarrivals.PreciseThroughputTimer
...
...
@@ -244,10 +239,8 @@ ModuleController=org.apache.jmeter.control.ModuleController
ModuleControllerGui
=
org.apache.jmeter.control.gui.ModuleControllerGui
MongoScriptSampler
=
org.apache.jmeter.protocol.mongodb.sampler.MongoScriptSampler
MongoSourceElement
=
org.apache.jmeter.protocol.mongodb.config.MongoSourceElement
# removed in 3.2, class was deleted in r
MonitorHealthVisualizer
=
org.apache.jmeter.visualizers.MonitorHealthVisualizer
NamePanel
=
org.apache.jmeter.gui.NamePanel
BoltSampler
=
org.apache.jmeter.protocol.bolt.sampler.BoltSampler
BoltConnectionElement
=
org.apache.jmeter.protocol.bolt.config.BoltConnectionElement
...
...
@@ -303,12 +296,10 @@ SMIMEAssertion=org.apache.jmeter.assertions.SMIMEAssertionTestElement
SMIMEAssertionGui
=
org.apache.jmeter.assertions.gui.SMIMEAssertionGui
SmtpSampler
=
org.apache.jmeter.protocol.smtp.sampler.SmtpSampler
SmtpSamplerGui
=
org.apache.jmeter.protocol.smtp.sampler.gui.SmtpSamplerGui
# removed in 3.2, class was deleted in r
SoapSampler
=
org.apache.jmeter.protocol.http.sampler.SoapSampler
# removed in 3.2, class was deleted in r
SoapSamplerGui
=
org.apache.jmeter.protocol.http.control.gui.SoapSamplerGui
# removed in 3.1, class was deleted in r1763837
SplineVisualizer
=
org.apache.jmeter.visualizers.SplineVisualizer
# Originally deleted in r397955 as class is obsolete; needed for compat.
...
...
@@ -377,7 +368,6 @@ XPathExtractor=org.apache.jmeter.extractor.XPathExtractor
XPathExtractorGui
=
org.apache.jmeter.extractor.gui.XPathExtractorGui
XPath2Extractor
=
org.apache.jmeter.extractor.XPath2Extractor
XPath2ExtractorGui
=
org.apache.jmeter.extractor.gui.XPath2ExtractorGui
# Properties - all start with lower case letter and end with Prop
#
boolProp
=
org.apache.jmeter.testelement.property.BooleanProperty
...
...
@@ -402,7 +392,6 @@ httpSample=org.apache.jmeter.protocol.http.sampler.HTTPSampleResult
statSample
=
org.apache.jmeter.samplers.StatisticalSampleResult
testResults
=
org.apache.jmeter.save.TestResultWrapper
assertionResult
=
org.apache.jmeter.assertions.AssertionResult
# removed in 3.2, class was deleted in r
monitorStats
=
org.apache.jmeter.visualizers.MonitorStats
sampleEvent
=
org.apache.jmeter.samplers.SampleEvent
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment
Menu
Projects
Groups
Snippets
Help