From 79132bf50e68131fff3e60c7433eb1b4f311dfc1 Mon Sep 17 00:00:00 2001 From: shenkaibo Date: Mon, 30 Oct 2023 02:32:29 +0000 Subject: [PATCH] Deployed 3a617e61 to v2.x with MkDocs 1.5.3 and mike 1.1.2 --- v2.x/404.html | 4 +- v2.x/about/changelog/index.html | 59 ++++- v2.x/about/contact/index.html | 4 +- v2.x/about/security_bulletins/index.html | 4 +- .../javascripts/lunr/min/lunr.el.min.js | 1 + v2.x/assets/stylesheets/main.4b4a2bd9.min.css | 1 + .../stylesheets/main.4b4a2bd9.min.css.map | 1 + v2.x/assets/stylesheets/main.6a10b989.min.css | 1 - .../stylesheets/main.6a10b989.min.css.map | 1 - v2.x/automation_plugin_dev/index.html | 4 +- v2.x/awesome-jmeter/index.html | 4 +- v2.x/case_studies/user_cases/index.html | 4 +- v2.x/dev_manual/index.html | 4 +- v2.x/enterprise/index.html | 4 +- v2.x/faq/api_test/index.html | 4 +- v2.x/faq/enterprise/index.html | 4 +- v2.x/faq/installation/index.html | 4 +- v2.x/faq/load_test/index.html | 4 +- v2.x/faq/report_statistics/index.html | 4 +- v2.x/faq/service_integration/index.html | 4 +- v2.x/faq/system_management/index.html | 4 +- v2.x/faq/test_track/index.html | 4 +- v2.x/faq/ui_test/index.html | 4 +- v2.x/index.html | 4 +- v2.x/installation/backup_data/index.html | 4 +- .../build_data_streaming/index.html | 4 +- v2.x/installation/build_kafka/index.html | 4 +- .../build_node_controller/index.html | 4 +- v2.x/installation/cli/index.html | 4 +- .../kubernetes_installation/index.html | 4 +- v2.x/installation/network_port/index.html | 4 +- .../offline_installation/index.html | 4 +- .../offline_installation_mac/index.html | 4 +- .../offline_installation_windows/index.html | 4 +- v2.x/installation/offline_upgrade/index.html | 4 +- .../online_installation/index.html | 4 +- v2.x/installation/online_upgrade/index.html | 4 +- v2.x/installation/pre_work/index.html | 4 +- v2.x/quick_start/api_test/index.html | 4 +- v2.x/quick_start/create_project/index.html | 4 +- v2.x/quick_start/load_test/index.html | 4 +- v2.x/quick_start/quick_start/index.html | 4 +- v2.x/quick_start/test_track/index.html | 4 +- v2.x/quick_start/ui_test/index.html | 4 +- v2.x/search/search_index.json | 2 +- v2.x/sitemap.xml | 202 +++++++++--------- v2.x/sitemap.xml.gz | Bin 1048 -> 1049 bytes v2.x/system_arch/index.html | 4 +- v2.x/teach_video/video_index/index.html | 4 +- v2.x/tutorial/use_tutorial/index.html | 4 +- v2.x/user_manual/access_matrix/index.html | 4 +- .../api_test/api_automation/index.html | 4 +- .../api_test/api_definition/index.html | 4 +- .../api_test/api_scenario/index.html | 4 +- v2.x/user_manual/api_test/api_step/index.html | 4 +- .../user_manual/api_test/functions/index.html | 4 +- v2.x/user_manual/api_test/home/index.html | 4 +- v2.x/user_manual/api_test/index.html | 4 +- v2.x/user_manual/api_test/intro/index.html | 4 +- .../api_test/test_report/index.html | 4 +- v2.x/user_manual/general/index.html | 4 +- v2.x/user_manual/load_test/home/index.html | 4 +- v2.x/user_manual/load_test/intro/index.html | 4 +- .../load_test/load_test/index.html | 4 +- .../load_test/test_report/index.html | 4 +- v2.x/user_manual/my_desk/attention/index.html | 4 +- v2.x/user_manual/my_desk/created/index.html | 4 +- v2.x/user_manual/my_desk/dashboard/index.html | 4 +- v2.x/user_manual/my_desk/todo/index.html | 4 +- .../plugin_use/api_test_plugin/index.html | 4 +- .../plugin_use/chrome_plugin/index.html | 4 +- .../plugin_use/idea_plugin/index.html | 4 +- .../plugin_use/jenkins_plugin/index.html | 4 +- .../plugin_use/selenium_ide_plugin/index.html | 4 +- .../service_integration_plugin/index.html | 4 +- .../application_management/index.html | 4 +- .../customcode_snippets/index.html | 4 +- .../false_library/index.html | 4 +- .../file_management/index.html | 4 +- .../notice_management/index.html | 4 +- .../operation_log/index.html | 4 +- .../project_environment/index.html | 4 +- .../project_info/index.html | 4 +- .../project_user/index.html | 4 +- .../template_management/index.html | 4 +- .../usergroup_permission/index.html | 4 +- .../version management/index.html | 4 +- .../project_statistics/index.html | 4 +- .../report_statistics/report/index.html | 4 +- .../system_management/intro/index.html | 4 +- .../system_management/system/index.html | 4 +- .../system_management/workspace/index.html | 4 +- v2.x/user_manual/test_track/home/index.html | 4 +- v2.x/user_manual/test_track/intro/index.html | 4 +- .../test_case/public_test_case/index.html | 4 +- .../test_case/switch_project/index.html | 4 +- .../test_track/test_case/test_case/index.html | 4 +- .../test_case/test_case_module/index.html | 4 +- .../test_track/test_case_review/index.html | 4 +- .../test_track/test_defect/index.html | 4 +- .../test_track/test_plan/index.html | 4 +- .../test_plan/test_plan_batch/index.html | 4 +- .../test_plan/test_plan_list/index.html | 4 +- .../test_plan/test_plan_manage/index.html | 4 +- .../test_track/test_report/index.html | 4 +- v2.x/user_manual/ui_test/info/index.html | 4 +- v2.x/user_manual/ui_test/intro/index.html | 4 +- .../ui_test/ui_automation/index.html | 4 +- .../ui_test/ui_element_store/index.html | 4 +- .../ui_test/ui_test_report/index.html | 4 +- versions.json | 2 +- 111 files changed, 365 insertions(+), 309 deletions(-) create mode 100644 v2.x/assets/javascripts/lunr/min/lunr.el.min.js create mode 100644 v2.x/assets/stylesheets/main.4b4a2bd9.min.css create mode 100644 v2.x/assets/stylesheets/main.4b4a2bd9.min.css.map delete mode 100644 v2.x/assets/stylesheets/main.6a10b989.min.css delete mode 100644 v2.x/assets/stylesheets/main.6a10b989.min.css.map diff --git a/v2.x/404.html b/v2.x/404.html index 21ac0fde3..2ffce285a 100644 --- a/v2.x/404.html +++ b/v2.x/404.html @@ -16,7 +16,7 @@ - + @@ -29,7 +29,7 @@ - + diff --git a/v2.x/about/changelog/index.html b/v2.x/about/changelog/index.html index 4655a4083..ddd6364ad 100644 --- a/v2.x/about/changelog/index.html +++ b/v2.x/about/changelog/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + @@ -3116,6 +3116,13 @@
软件测试
版本说明 + + +
  • + + v2.10.8-lts + +
  • @@ -3370,6 +3377,13 @@
    软件测试
    版本说明 +
  • + +
  • + + v2.10.8-lts + +
  • @@ -3575,6 +3589,47 @@

    版本说明
  • v2.10-lts:发布时间为 2023 年 5 月 25 日,每两周发布小版本,持续进行 Bug 修复和部分功能的有限优化。
  • +

    v2.10.8-lts

    +
    +

    2023年10月19日

    +
    +

    💥💥 重要提醒 💥💥
    +2.10 LTS 在架构上和 1.20 LTS 有很大变化,请务必升级前进行备份,并详细查阅此文档:1.20 lts至2.10 lts升级指南

    +
    +
    +

    新增功能 🌟

    +
      +
    • feat(性能测试): 性能测试支持结果抽样分析(X-Pack增强包)
    • +
    • feat(测试计划): 测试执行机新增运行状态和CPU监控
    • +
    +
    +
    +

    功能优化 🌻

    +
      +
    • refactor(性能测试): 调整性能测试资源文件上限数为50个文件
    • +
    • refactor(接口测试): JSONPath正则提取支持自定义匹配模版
    • +
    • refactor(测试跟踪): 测试计划报告详情支持通过用例ID快捷跳转
    • +
    +
    +
    +

    问题修复 🌴

    +
      +
    • fix(接口测试): 修复jsonSchema数据转json顺序发生改变的缺陷
    • +
    • fix(接口测试): 修复首页在偶发情况下接口覆盖率显示为0的问题
    • +
    • fix(接口测试): 修复编辑环境信息未更新的缺陷
    • +
    • fix(接口测试): 修复场景列表不显示创建性能测试按钮的缺陷
    • +
    • fix(接口测试): 修复测试计划执行本身无环境且关联时也不指定环境的场景会报错的问题
    • +
    • fix(测试跟踪): 修复测试计划报告导出html时的部分错误
    • +
    • fix(测试跟踪): 用例步骤为文本描述,导出xmind为步骤描述的内容
    • +
    • fix(测试跟踪): 用例富文本编辑器支持一些特殊标签
    • +
    • fix(测试跟踪): 测试计划关联功能用例添加评审结果列
    • +
    • fix(测试跟踪): 富文本框删除图片后,服务器上的图片未删除
    • +
    • fix(测试跟踪): 批量和编辑单个用例的标签时,统一长度限制
    • +
    • fix(缺陷管理): 缺陷关联用例列表展示有误
    • +
    • fix(项目设置): 环境通用配置筛选后保存有误
    • +
    • fix(项目设置): 项目消息设置,任务通知切换事件类型模板未同步更新
    • +
    +

    v2.10.7-lts


    2023年9月26日

    diff --git a/v2.x/about/contact/index.html b/v2.x/about/contact/index.html index f1ea27bd3..c50feda0f 100644 --- a/v2.x/about/contact/index.html +++ b/v2.x/about/contact/index.html @@ -20,7 +20,7 @@ - + @@ -33,7 +33,7 @@ - + diff --git a/v2.x/about/security_bulletins/index.html b/v2.x/about/security_bulletins/index.html index feb8361f0..bd8016714 100644 --- a/v2.x/about/security_bulletins/index.html +++ b/v2.x/about/security_bulletins/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/assets/javascripts/lunr/min/lunr.el.min.js b/v2.x/assets/javascripts/lunr/min/lunr.el.min.js new file mode 100644 index 000000000..ace017bd6 --- /dev/null +++ b/v2.x/assets/javascripts/lunr/min/lunr.el.min.js @@ -0,0 +1 @@ +!function(e,t){"function"==typeof define&&define.amd?define(t):"object"==typeof exports?module.exports=t():t()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.el=function(){this.pipeline.reset(),void 0===this.searchPipeline&&this.pipeline.add(e.el.trimmer,e.el.normilizer),this.pipeline.add(e.el.stopWordFilter,e.el.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.el.stemmer))},e.el.wordCharacters="A-Za-zΑαΒβΓγΔδΕεΖζΗηΘθΙιΚκΛλΜμΝνΞξΟοΠπΡρΣσςΤτΥυΦφΧχΨψΩωΆάΈέΉήΊίΌόΎύΏώΪΐΫΰΐΰ",e.el.trimmer=e.trimmerSupport.generateTrimmer(e.el.wordCharacters),e.Pipeline.registerFunction(e.el.trimmer,"trimmer-el"),e.el.stemmer=function(){function e(e){return s.test(e)}function t(e){return/[ΑΕΗΙΟΥΩ]$/.test(e)}function r(e){return/[ΑΕΗΙΟΩ]$/.test(e)}function n(n){var s=n;if(n.length<3)return s;if(!e(n))return s;if(i.indexOf(n)>=0)return s;var u=new RegExp("(.*)("+Object.keys(l).join("|")+")$"),o=u.exec(s);return null!==o&&(s=o[1]+l[o[2]]),null!==(o=/^(.+?)(ΑΔΕΣ|ΑΔΩΝ)$/.exec(s))&&(s=o[1],/(ΟΚ|ΜΑΜ|ΜΑΝ|ΜΠΑΜΠ|ΠΑΤΕΡ|ΓΙΑΓΙ|ΝΤΑΝΤ|ΚΥΡ|ΘΕΙ|ΠΕΘΕΡ|ΜΟΥΣΑΜ|ΚΑΠΛΑΜ|ΠΑΡ|ΨΑΡ|ΤΖΟΥΡ|ΤΑΜΠΟΥΡ|ΓΑΛΑΤ|ΦΑΦΛΑΤ)$/.test(o[1])||(s+="ΑΔ")),null!==(o=/^(.+?)(ΕΔΕΣ|ΕΔΩΝ)$/.exec(s))&&(s=o[1],/(ΟΠ|ΙΠ|ΕΜΠ|ΥΠ|ΓΗΠ|ΔΑΠ|ΚΡΑΣΠ|ΜΙΛ)$/.test(o[1])&&(s+="ΕΔ")),null!==(o=/^(.+?)(ΟΥΔΕΣ|ΟΥΔΩΝ)$/.exec(s))&&(s=o[1],/(ΑΡΚ|ΚΑΛΙΑΚ|ΠΕΤΑΛ|ΛΙΧ|ΠΛΕΞ|ΣΚ|Σ|ΦΛ|ΦΡ|ΒΕΛ|ΛΟΥΛ|ΧΝ|ΣΠ|ΤΡΑΓ|ΦΕ)$/.test(o[1])&&(s+="ΟΥΔ")),null!==(o=/^(.+?)(ΕΩΣ|ΕΩΝ|ΕΑΣ|ΕΑ)$/.exec(s))&&(s=o[1],/^(Θ|Δ|ΕΛ|ΓΑΛ|Ν|Π|ΙΔ|ΠΑΡ|ΣΤΕΡ|ΟΡΦ|ΑΝΔΡ|ΑΝΤΡ)$/.test(o[1])&&(s+="Ε")),null!==(o=/^(.+?)(ΕΙΟ|ΕΙΟΣ|ΕΙΟΙ|ΕΙΑ|ΕΙΑΣ|ΕΙΕΣ|ΕΙΟΥ|ΕΙΟΥΣ|ΕΙΩΝ)$/.exec(s))&&o[1].length>4&&(s=o[1]),null!==(o=/^(.+?)(ΙΟΥΣ|ΙΑΣ|ΙΕΣ|ΙΟΣ|ΙΟΥ|ΙΟΙ|ΙΩΝ|ΙΟΝ|ΙΑ|ΙΟ)$/.exec(s))&&(s=o[1],(t(s)||s.length<2||/^(ΑΓ|ΑΓΓΕΛ|ΑΓΡ|ΑΕΡ|ΑΘΛ|ΑΚΟΥΣ|ΑΞ|ΑΣ|Β|ΒΙΒΛ|ΒΥΤ|Γ|ΓΙΑΓ|ΓΩΝ|Δ|ΔΑΝ|ΔΗΛ|ΔΗΜ|ΔΟΚΙΜ|ΕΛ|ΖΑΧΑΡ|ΗΛ|ΗΠ|ΙΔ|ΙΣΚ|ΙΣΤ|ΙΟΝ|ΙΩΝ|ΚΙΜΩΛ|ΚΟΛΟΝ|ΚΟΡ|ΚΤΗΡ|ΚΥΡ|ΛΑΓ|ΛΟΓ|ΜΑΓ|ΜΠΑΝ|ΜΠΡ|ΝΑΥΤ|ΝΟΤ|ΟΠΑΛ|ΟΞ|ΟΡ|ΟΣ|ΠΑΝΑΓ|ΠΑΤΡ|ΠΗΛ|ΠΗΝ|ΠΛΑΙΣ|ΠΟΝΤ|ΡΑΔ|ΡΟΔ|ΣΚ|ΣΚΟΡΠ|ΣΟΥΝ|ΣΠΑΝ|ΣΤΑΔ|ΣΥΡ|ΤΗΛ|ΤΙΜ|ΤΟΚ|ΤΟΠ|ΤΡΟΧ|ΦΙΛ|ΦΩΤ|Χ|ΧΙΛ|ΧΡΩΜ|ΧΩΡ)$/.test(o[1]))&&(s+="Ι"),/^(ΠΑΛ)$/.test(o[1])&&(s+="ΑΙ")),null!==(o=/^(.+?)(ΙΚΟΣ|ΙΚΟΝ|ΙΚΕΙΣ|ΙΚΟΙ|ΙΚΕΣ|ΙΚΟΥΣ|ΙΚΗ|ΙΚΗΣ|ΙΚΟ|ΙΚΑ|ΙΚΟΥ|ΙΚΩΝ|ΙΚΩΣ)$/.exec(s))&&(s=o[1],(t(s)||/^(ΑΔ|ΑΛ|ΑΜΑΝ|ΑΜΕΡ|ΑΜΜΟΧΑΛ|ΑΝΗΘ|ΑΝΤΙΔ|ΑΠΛ|ΑΤΤ|ΑΦΡ|ΒΑΣ|ΒΡΩΜ|ΓΕΝ|ΓΕΡ|Δ|ΔΙΚΑΝ|ΔΥΤ|ΕΙΔ|ΕΝΔ|ΕΞΩΔ|ΗΘ|ΘΕΤ|ΚΑΛΛΙΝ|ΚΑΛΠ|ΚΑΤΑΔ|ΚΟΥΖΙΝ|ΚΡ|ΚΩΔ|ΛΟΓ|Μ|ΜΕΡ|ΜΟΝΑΔ|ΜΟΥΛ|ΜΟΥΣ|ΜΠΑΓΙΑΤ|ΜΠΑΝ|ΜΠΟΛ|ΜΠΟΣ|ΜΥΣΤ|Ν|ΝΙΤ|ΞΙΚ|ΟΠΤ|ΠΑΝ|ΠΕΤΣ|ΠΙΚΑΝΤ|ΠΙΤΣ|ΠΛΑΣΤ|ΠΛΙΑΤΣ|ΠΟΝΤ|ΠΟΣΤΕΛΝ|ΠΡΩΤΟΔ|ΣΕΡΤ|ΣΗΜΑΝΤ|ΣΤΑΤ|ΣΥΝΑΔ|ΣΥΝΟΜΗΛ|ΤΕΛ|ΤΕΧΝ|ΤΡΟΠ|ΤΣΑΜ|ΥΠΟΔ|Φ|ΦΙΛΟΝ|ΦΥΛΟΔ|ΦΥΣ|ΧΑΣ)$/.test(o[1])||/(ΦΟΙΝ)$/.test(o[1]))&&(s+="ΙΚ")),"ΑΓΑΜΕ"===s&&(s="ΑΓΑΜ"),null!==(o=/^(.+?)(ΑΓΑΜΕ|ΗΣΑΜΕ|ΟΥΣΑΜΕ|ΗΚΑΜΕ|ΗΘΗΚΑΜΕ)$/.exec(s))&&(s=o[1]),null!==(o=/^(.+?)(ΑΜΕ)$/.exec(s))&&(s=o[1],/^(ΑΝΑΠ|ΑΠΟΘ|ΑΠΟΚ|ΑΠΟΣΤ|ΒΟΥΒ|ΞΕΘ|ΟΥΛ|ΠΕΘ|ΠΙΚΡ|ΠΟΤ|ΣΙΧ|Χ)$/.test(o[1])&&(s+="ΑΜ")),null!==(o=/^(.+?)(ΑΓΑΝΕ|ΗΣΑΝΕ|ΟΥΣΑΝΕ|ΙΟΝΤΑΝΕ|ΙΟΤΑΝΕ|ΙΟΥΝΤΑΝΕ|ΟΝΤΑΝΕ|ΟΤΑΝΕ|ΟΥΝΤΑΝΕ|ΗΚΑΝΕ|ΗΘΗΚΑΝΕ)$/.exec(s))&&(s=o[1],/^(ΤΡ|ΤΣ)$/.test(o[1])&&(s+="ΑΓΑΝ")),null!==(o=/^(.+?)(ΑΝΕ)$/.exec(s))&&(s=o[1],(r(s)||/^(ΒΕΤΕΡ|ΒΟΥΛΚ|ΒΡΑΧΜ|Γ|ΔΡΑΔΟΥΜ|Θ|ΚΑΛΠΟΥΖ|ΚΑΣΤΕΛ|ΚΟΡΜΟΡ|ΛΑΟΠΛ|ΜΩΑΜΕΘ|Μ|ΜΟΥΣΟΥΛΜΑΝ|ΟΥΛ|Π|ΠΕΛΕΚ|ΠΛ|ΠΟΛΙΣ|ΠΟΡΤΟΛ|ΣΑΡΑΚΑΤΣ|ΣΟΥΛΤ|ΤΣΑΡΛΑΤ|ΟΡΦ|ΤΣΙΓΓ|ΤΣΟΠ|ΦΩΤΟΣΤΕΦ|Χ|ΨΥΧΟΠΛ|ΑΓ|ΟΡΦ|ΓΑΛ|ΓΕΡ|ΔΕΚ|ΔΙΠΛ|ΑΜΕΡΙΚΑΝ|ΟΥΡ|ΠΙΘ|ΠΟΥΡΙΤ|Σ|ΖΩΝΤ|ΙΚ|ΚΑΣΤ|ΚΟΠ|ΛΙΧ|ΛΟΥΘΗΡ|ΜΑΙΝΤ|ΜΕΛ|ΣΙΓ|ΣΠ|ΣΤΕΓ|ΤΡΑΓ|ΤΣΑΓ|Φ|ΕΡ|ΑΔΑΠ|ΑΘΙΓΓ|ΑΜΗΧ|ΑΝΙΚ|ΑΝΟΡΓ|ΑΠΗΓ|ΑΠΙΘ|ΑΤΣΙΓΓ|ΒΑΣ|ΒΑΣΚ|ΒΑΘΥΓΑΛ|ΒΙΟΜΗΧ|ΒΡΑΧΥΚ|ΔΙΑΤ|ΔΙΑΦ|ΕΝΟΡΓ|ΘΥΣ|ΚΑΠΝΟΒΙΟΜΗΧ|ΚΑΤΑΓΑΛ|ΚΛΙΒ|ΚΟΙΛΑΡΦ|ΛΙΒ|ΜΕΓΛΟΒΙΟΜΗΧ|ΜΙΚΡΟΒΙΟΜΗΧ|ΝΤΑΒ|ΞΗΡΟΚΛΙΒ|ΟΛΙΓΟΔΑΜ|ΟΛΟΓΑΛ|ΠΕΝΤΑΡΦ|ΠΕΡΗΦ|ΠΕΡΙΤΡ|ΠΛΑΤ|ΠΟΛΥΔΑΠ|ΠΟΛΥΜΗΧ|ΣΤΕΦ|ΤΑΒ|ΤΕΤ|ΥΠΕΡΗΦ|ΥΠΟΚΟΠ|ΧΑΜΗΛΟΔΑΠ|ΨΗΛΟΤΑΒ)$/.test(o[1]))&&(s+="ΑΝ")),null!==(o=/^(.+?)(ΗΣΕΤΕ)$/.exec(s))&&(s=o[1]),null!==(o=/^(.+?)(ΕΤΕ)$/.exec(s))&&(s=o[1],(r(s)||/(ΟΔ|ΑΙΡ|ΦΟΡ|ΤΑΘ|ΔΙΑΘ|ΣΧ|ΕΝΔ|ΕΥΡ|ΤΙΘ|ΥΠΕΡΘ|ΡΑΘ|ΕΝΘ|ΡΟΘ|ΣΘ|ΠΥΡ|ΑΙΝ|ΣΥΝΔ|ΣΥΝ|ΣΥΝΘ|ΧΩΡ|ΠΟΝ|ΒΡ|ΚΑΘ|ΕΥΘ|ΕΚΘ|ΝΕΤ|ΡΟΝ|ΑΡΚ|ΒΑΡ|ΒΟΛ|ΩΦΕΛ)$/.test(o[1])||/^(ΑΒΑΡ|ΒΕΝ|ΕΝΑΡ|ΑΒΡ|ΑΔ|ΑΘ|ΑΝ|ΑΠΛ|ΒΑΡΟΝ|ΝΤΡ|ΣΚ|ΚΟΠ|ΜΠΟΡ|ΝΙΦ|ΠΑΓ|ΠΑΡΑΚΑΛ|ΣΕΡΠ|ΣΚΕΛ|ΣΥΡΦ|ΤΟΚ|Υ|Δ|ΕΜ|ΘΑΡΡ|Θ)$/.test(o[1]))&&(s+="ΕΤ")),null!==(o=/^(.+?)(ΟΝΤΑΣ|ΩΝΤΑΣ)$/.exec(s))&&(s=o[1],/^ΑΡΧ$/.test(o[1])&&(s+="ΟΝΤ"),/ΚΡΕ$/.test(o[1])&&(s+="ΩΝΤ")),null!==(o=/^(.+?)(ΟΜΑΣΤΕ|ΙΟΜΑΣΤΕ)$/.exec(s))&&(s=o[1],/^ΟΝ$/.test(o[1])&&(s+="ΟΜΑΣΤ")),null!==(o=/^(.+?)(ΙΕΣΤΕ)$/.exec(s))&&(s=o[1],/^(Π|ΑΠ|ΣΥΜΠ|ΑΣΥΜΠ|ΑΚΑΤΑΠ|ΑΜΕΤΑΜΦ)$/.test(o[1])&&(s+="ΙΕΣΤ")),null!==(o=/^(.+?)(ΕΣΤΕ)$/.exec(s))&&(s=o[1],/^(ΑΛ|ΑΡ|ΕΚΤΕΛ|Ζ|Μ|Ξ|ΠΑΡΑΚΑΛ|ΠΡΟ|ΝΙΣ)$/.test(o[1])&&(s+="ΕΣΤ")),null!==(o=/^(.+?)(ΗΘΗΚΑ|ΗΘΗΚΕΣ|ΗΘΗΚΕ)$/.exec(s))&&(s=o[1]),null!==(o=/^(.+?)(ΗΚΑ|ΗΚΕΣ|ΗΚΕ)$/.exec(s))&&(s=o[1],(/(ΣΚΩΛ|ΣΚΟΥΛ|ΝΑΡΘ|ΣΦ|ΟΘ|ΠΙΘ)$/.test(o[1])||/^(ΔΙΑΘ|Θ|ΠΑΡΑΚΑΤΑΘ|ΠΡΟΣΘ|ΣΥΝΘ)$/.test(o[1]))&&(s+="ΗΚ")),null!==(o=/^(.+?)(ΟΥΣΑ|ΟΥΣΕΣ|ΟΥΣΕ)$/.exec(s))&&(s=o[1],(t(s)||/^(ΦΑΡΜΑΚ|ΧΑΔ|ΑΓΚ|ΑΝΑΡΡ|ΒΡΟΜ|ΕΚΛΙΠ|ΛΑΜΠΙΔ|ΛΕΧ|Μ|ΠΑΤ|Ρ|Λ|ΜΕΔ|ΜΕΣΑΖ|ΥΠΟΤΕΙΝ|ΑΜ|ΑΙΘ|ΑΝΗΚ|ΔΕΣΠΟΖ|ΕΝΔΙΑΦΕΡ)$/.test(o[1])||/(ΠΟΔΑΡ|ΒΛΕΠ|ΠΑΝΤΑΧ|ΦΡΥΔ|ΜΑΝΤΙΛ|ΜΑΛΛ|ΚΥΜΑΤ|ΛΑΧ|ΛΗΓ|ΦΑΓ|ΟΜ|ΠΡΩΤ)$/.test(o[1]))&&(s+="ΟΥΣ")),null!==(o=/^(.+?)(ΑΓΑ|ΑΓΕΣ|ΑΓΕ)$/.exec(s))&&(s=o[1],(/^(ΑΒΑΣΤ|ΠΟΛΥΦ|ΑΔΗΦ|ΠΑΜΦ|Ρ|ΑΣΠ|ΑΦ|ΑΜΑΛ|ΑΜΑΛΛΙ|ΑΝΥΣΤ|ΑΠΕΡ|ΑΣΠΑΡ|ΑΧΑΡ|ΔΕΡΒΕΝ|ΔΡΟΣΟΠ|ΞΕΦ|ΝΕΟΠ|ΝΟΜΟΤ|ΟΛΟΠ|ΟΜΟΤ|ΠΡΟΣΤ|ΠΡΟΣΩΠΟΠ|ΣΥΜΠ|ΣΥΝΤ|Τ|ΥΠΟΤ|ΧΑΡ|ΑΕΙΠ|ΑΙΜΟΣΤ|ΑΝΥΠ|ΑΠΟΤ|ΑΡΤΙΠ|ΔΙΑΤ|ΕΝ|ΕΠΙΤ|ΚΡΟΚΑΛΟΠ|ΣΙΔΗΡΟΠ|Λ|ΝΑΥ|ΟΥΛΑΜ|ΟΥΡ|Π|ΤΡ|Μ)$/.test(o[1])||/(ΟΦ|ΠΕΛ|ΧΟΡΤ|ΛΛ|ΣΦ|ΡΠ|ΦΡ|ΠΡ|ΛΟΧ|ΣΜΗΝ)$/.test(o[1])&&!/^(ΨΟΦ|ΝΑΥΛΟΧ)$/.test(o[1])||/(ΚΟΛΛ)$/.test(o[1]))&&(s+="ΑΓ")),null!==(o=/^(.+?)(ΗΣΕ|ΗΣΟΥ|ΗΣΑ)$/.exec(s))&&(s=o[1],/^(Ν|ΧΕΡΣΟΝ|ΔΩΔΕΚΑΝ|ΕΡΗΜΟΝ|ΜΕΓΑΛΟΝ|ΕΠΤΑΝ|Ι)$/.test(o[1])&&(s+="ΗΣ")),null!==(o=/^(.+?)(ΗΣΤΕ)$/.exec(s))&&(s=o[1],/^(ΑΣΒ|ΣΒ|ΑΧΡ|ΧΡ|ΑΠΛ|ΑΕΙΜΝ|ΔΥΣΧΡ|ΕΥΧΡ|ΚΟΙΝΟΧΡ|ΠΑΛΙΜΨ)$/.test(o[1])&&(s+="ΗΣΤ")),null!==(o=/^(.+?)(ΟΥΝΕ|ΗΣΟΥΝΕ|ΗΘΟΥΝΕ)$/.exec(s))&&(s=o[1],/^(Ν|Ρ|ΣΠΙ|ΣΤΡΑΒΟΜΟΥΤΣ|ΚΑΚΟΜΟΥΤΣ|ΕΞΩΝ)$/.test(o[1])&&(s+="ΟΥΝ")),null!==(o=/^(.+?)(ΟΥΜΕ|ΗΣΟΥΜΕ|ΗΘΟΥΜΕ)$/.exec(s))&&(s=o[1],/^(ΠΑΡΑΣΟΥΣ|Φ|Χ|ΩΡΙΟΠΛ|ΑΖ|ΑΛΛΟΣΟΥΣ|ΑΣΟΥΣ)$/.test(o[1])&&(s+="ΟΥΜ")),null!=(o=/^(.+?)(ΜΑΤΟΙ|ΜΑΤΟΥΣ|ΜΑΤΟ|ΜΑΤΑ|ΜΑΤΩΣ|ΜΑΤΩΝ|ΜΑΤΟΣ|ΜΑΤΕΣ|ΜΑΤΗ|ΜΑΤΗΣ|ΜΑΤΟΥ)$/.exec(s))&&(s=o[1]+"Μ",/^(ΓΡΑΜ)$/.test(o[1])?s+="Α":/^(ΓΕ|ΣΤΑ)$/.test(o[1])&&(s+="ΑΤ")),null!==(o=/^(.+?)(ΟΥΑ)$/.exec(s))&&(s=o[1]+"ΟΥ"),n.length===s.length&&null!==(o=/^(.+?)(Α|ΑΓΑΤΕ|ΑΓΑΝ|ΑΕΙ|ΑΜΑΙ|ΑΝ|ΑΣ|ΑΣΑΙ|ΑΤΑΙ|ΑΩ|Ε|ΕΙ|ΕΙΣ|ΕΙΤΕ|ΕΣΑΙ|ΕΣ|ΕΤΑΙ|Ι|ΙΕΜΑΙ|ΙΕΜΑΣΤΕ|ΙΕΤΑΙ|ΙΕΣΑΙ|ΙΕΣΑΣΤΕ|ΙΟΜΑΣΤΑΝ|ΙΟΜΟΥΝ|ΙΟΜΟΥΝΑ|ΙΟΝΤΑΝ|ΙΟΝΤΟΥΣΑΝ|ΙΟΣΑΣΤΑΝ|ΙΟΣΑΣΤΕ|ΙΟΣΟΥΝ|ΙΟΣΟΥΝΑ|ΙΟΤΑΝ|ΙΟΥΜΑ|ΙΟΥΜΑΣΤΕ|ΙΟΥΝΤΑΙ|ΙΟΥΝΤΑΝ|Η|ΗΔΕΣ|ΗΔΩΝ|ΗΘΕΙ|ΗΘΕΙΣ|ΗΘΕΙΤΕ|ΗΘΗΚΑΤΕ|ΗΘΗΚΑΝ|ΗΘΟΥΝ|ΗΘΩ|ΗΚΑΤΕ|ΗΚΑΝ|ΗΣ|ΗΣΑΝ|ΗΣΑΤΕ|ΗΣΕΙ|ΗΣΕΣ|ΗΣΟΥΝ|ΗΣΩ|Ο|ΟΙ|ΟΜΑΙ|ΟΜΑΣΤΑΝ|ΟΜΟΥΝ|ΟΜΟΥΝΑ|ΟΝΤΑΙ|ΟΝΤΑΝ|ΟΝΤΟΥΣΑΝ|ΟΣ|ΟΣΑΣΤΑΝ|ΟΣΑΣΤΕ|ΟΣΟΥΝ|ΟΣΟΥΝΑ|ΟΤΑΝ|ΟΥ|ΟΥΜΑΙ|ΟΥΜΑΣΤΕ|ΟΥΝ|ΟΥΝΤΑΙ|ΟΥΝΤΑΝ|ΟΥΣ|ΟΥΣΑΝ|ΟΥΣΑΤΕ|Υ||ΥΑ|ΥΣ|Ω|ΩΝ|ΟΙΣ)$/.exec(s))&&(s=o[1]),null!=(o=/^(.+?)(ΕΣΤΕΡ|ΕΣΤΑΤ|ΟΤΕΡ|ΟΤΑΤ|ΥΤΕΡ|ΥΤΑΤ|ΩΤΕΡ|ΩΤΑΤ)$/.exec(s))&&(/^(ΕΞ|ΕΣ|ΑΝ|ΚΑΤ|Κ|ΠΡ)$/.test(o[1])||(s=o[1]),/^(ΚΑ|Μ|ΕΛΕ|ΛΕ|ΔΕ)$/.test(o[1])&&(s+="ΥΤ")),s}var l={"ΦΑΓΙΑ":"ΦΑ","ΦΑΓΙΟΥ":"ΦΑ","ΦΑΓΙΩΝ":"ΦΑ","ΣΚΑΓΙΑ":"ΣΚΑ","ΣΚΑΓΙΟΥ":"ΣΚΑ","ΣΚΑΓΙΩΝ":"ΣΚΑ","ΣΟΓΙΟΥ":"ΣΟ","ΣΟΓΙΑ":"ΣΟ","ΣΟΓΙΩΝ":"ΣΟ","ΤΑΤΟΓΙΑ":"ΤΑΤΟ","ΤΑΤΟΓΙΟΥ":"ΤΑΤΟ","ΤΑΤΟΓΙΩΝ":"ΤΑΤΟ","ΚΡΕΑΣ":"ΚΡΕ","ΚΡΕΑΤΟΣ":"ΚΡΕ","ΚΡΕΑΤΑ":"ΚΡΕ","ΚΡΕΑΤΩΝ":"ΚΡΕ","ΠΕΡΑΣ":"ΠΕΡ","ΠΕΡΑΤΟΣ":"ΠΕΡ","ΠΕΡΑΤΑ":"ΠΕΡ","ΠΕΡΑΤΩΝ":"ΠΕΡ","ΤΕΡΑΣ":"ΤΕΡ","ΤΕΡΑΤΟΣ":"ΤΕΡ","ΤΕΡΑΤΑ":"ΤΕΡ","ΤΕΡΑΤΩΝ":"ΤΕΡ","ΦΩΣ":"ΦΩ","ΦΩΤΟΣ":"ΦΩ","ΦΩΤΑ":"ΦΩ","ΦΩΤΩΝ":"ΦΩ","ΚΑΘΕΣΤΩΣ":"ΚΑΘΕΣΤ","ΚΑΘΕΣΤΩΤΟΣ":"ΚΑΘΕΣΤ","ΚΑΘΕΣΤΩΤΑ":"ΚΑΘΕΣΤ","ΚΑΘΕΣΤΩΤΩΝ":"ΚΑΘΕΣΤ","ΓΕΓΟΝΟΣ":"ΓΕΓΟΝ","ΓΕΓΟΝΟΤΟΣ":"ΓΕΓΟΝ","ΓΕΓΟΝΟΤΑ":"ΓΕΓΟΝ","ΓΕΓΟΝΟΤΩΝ":"ΓΕΓΟΝ","ΕΥΑ":"ΕΥ"},i=["ΑΚΡΙΒΩΣ","ΑΛΑ","ΑΛΛΑ","ΑΛΛΙΩΣ","ΑΛΛΟΤΕ","ΑΜΑ","ΑΝΩ","ΑΝΑ","ΑΝΑΜΕΣΑ","ΑΝΑΜΕΤΑΞΥ","ΑΝΕΥ","ΑΝΤΙ","ΑΝΤΙΠΕΡΑ","ΑΝΤΙΟ","ΑΞΑΦΝΑ","ΑΠΟ","ΑΠΟΨΕ","ΑΡΑ","ΑΡΑΓΕ","ΑΥΡΙΟ","ΑΦΟΙ","ΑΦΟΥ","ΑΦΟΤΟΥ","ΒΡΕ","ΓΕΙΑ","ΓΙΑ","ΓΙΑΤΙ","ΓΡΑΜΜΑ","ΔΕΗ","ΔΕΝ","ΔΗΛΑΔΗ","ΔΙΧΩΣ","ΔΥΟ","ΕΑΝ","ΕΓΩ","ΕΔΩ","ΕΔΑ","ΕΙΘΕ","ΕΙΜΑΙ","ΕΙΜΑΣΤΕ","ΕΙΣΑΙ","ΕΙΣΑΣΤΕ","ΕΙΝΑΙ","ΕΙΣΤΕ","ΕΙΤΕ","ΕΚΕΙ","ΕΚΟ","ΕΛΑ","ΕΜΑΣ","ΕΜΕΙΣ","ΕΝΤΕΛΩΣ","ΕΝΤΟΣ","ΕΝΤΩΜΕΤΑΞΥ","ΕΝΩ","ΕΞΙ","ΕΞΙΣΟΥ","ΕΞΗΣ","ΕΞΩ","ΕΟΚ","ΕΠΑΝΩ","ΕΠΕΙΔΗ","ΕΠΕΙΤΑ","ΕΠΙ","ΕΠΙΣΗΣ","ΕΠΟΜΕΝΩΣ","ΕΠΤΑ","ΕΣΑΣ","ΕΣΕΙΣ","ΕΣΤΩ","ΕΣΥ","ΕΣΩ","ΕΤΣΙ","ΕΥΓΕ","ΕΦΕ","ΕΦΕΞΗΣ","ΕΧΤΕΣ","ΕΩΣ","ΗΔΗ","ΗΜΙ","ΗΠΑ","ΗΤΟΙ","ΘΕΣ","ΙΔΙΩΣ","ΙΔΗ","ΙΚΑ","ΙΣΩΣ","ΚΑΘΕ","ΚΑΘΕΤΙ","ΚΑΘΟΛΟΥ","ΚΑΘΩΣ","ΚΑΙ","ΚΑΝ","ΚΑΠΟΤΕ","ΚΑΠΟΥ","ΚΑΤΑ","ΚΑΤΙ","ΚΑΤΟΠΙΝ","ΚΑΤΩ","ΚΕΙ","ΚΙΧ","ΚΚΕ","ΚΟΛΑΝ","ΚΥΡΙΩΣ","ΚΩΣ","ΜΑΚΑΡΙ","ΜΑΛΙΣΤΑ","ΜΑΛΛΟΝ","ΜΑΙ","ΜΑΟ","ΜΑΟΥΣ","ΜΑΣ","ΜΕΘΑΥΡΙΟ","ΜΕΣ","ΜΕΣΑ","ΜΕΤΑ","ΜΕΤΑΞΥ","ΜΕΧΡΙ","ΜΗΔΕ","ΜΗΝ","ΜΗΠΩΣ","ΜΗΤΕ","ΜΙΑ","ΜΙΑΣ","ΜΙΣ","ΜΜΕ","ΜΟΛΟΝΟΤΙ","ΜΟΥ","ΜΠΑ","ΜΠΑΣ","ΜΠΟΥΦΑΝ","ΜΠΡΟΣ","ΝΑΙ","ΝΕΣ","ΝΤΑ","ΝΤΕ","ΞΑΝΑ","ΟΗΕ","ΟΚΤΩ","ΟΜΩΣ","ΟΝΕ","ΟΠΑ","ΟΠΟΥ","ΟΠΩΣ","ΟΣΟ","ΟΤΑΝ","ΟΤΕ","ΟΤΙ","ΟΥΤΕ","ΟΧΙ","ΠΑΛΙ","ΠΑΝ","ΠΑΝΟ","ΠΑΝΤΟΤΕ","ΠΑΝΤΟΥ","ΠΑΝΤΩΣ","ΠΑΝΩ","ΠΑΡΑ","ΠΕΡΑ","ΠΕΡΙ","ΠΕΡΙΠΟΥ","ΠΙΑ","ΠΙΟ","ΠΙΣΩ","ΠΛΑΙ","ΠΛΕΟΝ","ΠΛΗΝ","ΠΟΤΕ","ΠΟΥ","ΠΡΟ","ΠΡΟΣ","ΠΡΟΧΤΕΣ","ΠΡΟΧΘΕΣ","ΡΟΔΙ","ΠΩΣ","ΣΑΙ","ΣΑΣ","ΣΑΝ","ΣΕΙΣ","ΣΙΑ","ΣΚΙ","ΣΟΙ","ΣΟΥ","ΣΡΙ","ΣΥΝ","ΣΥΝΑΜΑ","ΣΧΕΔΟΝ","ΤΑΔΕ","ΤΑΞΙ","ΤΑΧΑ","ΤΕΙ","ΤΗΝ","ΤΗΣ","ΤΙΠΟΤΑ","ΤΙΠΟΤΕ","ΤΙΣ","ΤΟΝ","ΤΟΤΕ","ΤΟΥ","ΤΟΥΣ","ΤΣΑ","ΤΣΕ","ΤΣΙ","ΤΣΟΥ","ΤΩΝ","ΥΠΟ","ΥΠΟΨΗ","ΥΠΟΨΙΝ","ΥΣΤΕΡΑ","ΦΕΤΟΣ","ΦΙΣ","ΦΠΑ","ΧΑΦ","ΧΘΕΣ","ΧΤΕΣ","ΧΩΡΙΣ","ΩΣ","ΩΣΑΝ","ΩΣΟΤΟΥ","ΩΣΠΟΥ","ΩΣΤΕ","ΩΣΤΟΣΟ"],s=new RegExp("^[ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ]+$");return function(e){return"function"==typeof e.update?e.update(function(e){return n(e.toUpperCase()).toLowerCase()}):n(e.toUpperCase()).toLowerCase()}}(),e.Pipeline.registerFunction(e.el.stemmer,"stemmer-el"),e.el.stopWordFilter=e.generateStopWordFilter("αλλα αν αντι απο αυτα αυτεσ αυτη αυτο αυτοι αυτοσ αυτουσ αυτων για δε δεν εαν ειμαι ειμαστε ειναι εισαι ειστε εκεινα εκεινεσ εκεινη εκεινο εκεινοι εκεινοσ εκεινουσ εκεινων ενω επι η θα ισωσ κ και κατα κι μα με μετα μη μην να ο οι ομωσ οπωσ οσο οτι παρα ποια ποιεσ ποιο ποιοι ποιοσ ποιουσ ποιων που προσ πωσ σε στη στην στο στον τα την τησ το τον τοτε του των ωσ".split(" ")),e.Pipeline.registerFunction(e.el.stopWordFilter,"stopWordFilter-el"),e.el.normilizer=function(){var e={"Ά":"Α","ά":"α","Έ":"Ε","έ":"ε","Ή":"Η","ή":"η","Ί":"Ι","ί":"ι","Ό":"Ο","ο":"ο","Ύ":"Υ","ύ":"υ","Ώ":"Ω","ώ":"ω","Ϊ":"Ι","ϊ":"ι","Ϋ":"Υ","ϋ":"υ","ΐ":"ι","ΰ":"υ"};return function(t){if("function"==typeof t.update)return t.update(function(t){for(var r="",n=0;n');--md-typeset-table-sort-icon--asc:url('data:image/svg+xml;charset=utf-8,');--md-typeset-table-sort-icon--desc:url('data:image/svg+xml;charset=utf-8,')}.md-typeset{-webkit-print-color-adjust:exact;color-adjust:exact;font-size:.8rem;line-height:1.6}@media print{.md-typeset{font-size:.68rem}}.md-typeset blockquote,.md-typeset dl,.md-typeset figure,.md-typeset ol,.md-typeset pre,.md-typeset ul{margin-bottom:1em;margin-top:1em}.md-typeset h1{color:var(--md-default-fg-color--light);font-size:2em;line-height:1.3;margin:0 0 1.25em}.md-typeset h1,.md-typeset h2{font-weight:300;letter-spacing:-.01em}.md-typeset h2{font-size:1.5625em;line-height:1.4;margin:1.6em 0 .64em}.md-typeset h3{font-size:1.25em;font-weight:400;letter-spacing:-.01em;line-height:1.5;margin:1.6em 0 .8em}.md-typeset h2+h3{margin-top:.8em}.md-typeset h4{font-weight:700;letter-spacing:-.01em;margin:1em 0}.md-typeset h5,.md-typeset h6{color:var(--md-default-fg-color--light);font-size:.8em;font-weight:700;letter-spacing:-.01em;margin:1.25em 0}.md-typeset h5{text-transform:uppercase}.md-typeset hr{border-bottom:.05rem solid var(--md-default-fg-color--lightest);display:flow-root;margin:1.5em 0}.md-typeset a{color:var(--md-typeset-a-color);word-break:break-word}.md-typeset a,.md-typeset a:before{transition:color 125ms}.md-typeset a:focus,.md-typeset a:hover{color:var(--md-accent-fg-color)}.md-typeset a:focus code,.md-typeset a:hover code{background-color:var(--md-accent-fg-color--transparent)}.md-typeset a code{color:currentcolor;transition:background-color 125ms}.md-typeset a.focus-visible{outline-color:var(--md-accent-fg-color);outline-offset:.2rem}.md-typeset code,.md-typeset kbd,.md-typeset pre{color:var(--md-code-fg-color);direction:ltr;font-variant-ligatures:none}@media print{.md-typeset code,.md-typeset kbd,.md-typeset pre{white-space:pre-wrap}}.md-typeset code{background-color:var(--md-code-bg-color);border-radius:.1rem;-webkit-box-decoration-break:clone;box-decoration-break:clone;font-size:.85em;padding:0 .2941176471em;word-break:break-word}.md-typeset code:not(.focus-visible){-webkit-tap-highlight-color:transparent;outline:none}.md-typeset pre{display:flow-root;line-height:1.4;position:relative}.md-typeset pre>code{-webkit-box-decoration-break:slice;box-decoration-break:slice;box-shadow:none;display:block;margin:0;outline-color:var(--md-accent-fg-color);overflow:auto;padding:.7720588235em 1.1764705882em;scrollbar-color:var(--md-default-fg-color--lighter) #0000;scrollbar-width:thin;touch-action:auto;word-break:normal}.md-typeset pre>code:hover{scrollbar-color:var(--md-accent-fg-color) #0000}.md-typeset pre>code::-webkit-scrollbar{height:.2rem;width:.2rem}.md-typeset pre>code::-webkit-scrollbar-thumb{background-color:var(--md-default-fg-color--lighter)}.md-typeset pre>code::-webkit-scrollbar-thumb:hover{background-color:var(--md-accent-fg-color)}.md-typeset kbd{background-color:var(--md-typeset-kbd-color);border-radius:.1rem;box-shadow:0 .1rem 0 .05rem var(--md-typeset-kbd-border-color),0 .1rem 0 var(--md-typeset-kbd-border-color),0 -.1rem .2rem var(--md-typeset-kbd-accent-color) inset;color:var(--md-default-fg-color);display:inline-block;font-size:.75em;padding:0 .6666666667em;vertical-align:text-top;word-break:break-word}.md-typeset mark{background-color:var(--md-typeset-mark-color);-webkit-box-decoration-break:clone;box-decoration-break:clone;color:inherit;word-break:break-word}.md-typeset abbr{border-bottom:.05rem dotted var(--md-default-fg-color--light);cursor:help;text-decoration:none}@media (hover:none){.md-typeset abbr[title]:focus:after,.md-typeset abbr[title]:hover:after{background-color:var(--md-default-fg-color);border-radius:.1rem;box-shadow:var(--md-shadow-z3);color:var(--md-default-bg-color);content:attr(title);font-size:.7rem;left:.8rem;margin-top:2em;padding:.2rem .3rem;position:absolute;right:.8rem}}.md-typeset small{opacity:.75}[dir=ltr] .md-typeset sub,[dir=ltr] .md-typeset sup{margin-left:.078125em}[dir=rtl] .md-typeset sub,[dir=rtl] .md-typeset sup{margin-right:.078125em}[dir=ltr] .md-typeset blockquote{padding-left:.6rem}[dir=rtl] .md-typeset blockquote{padding-right:.6rem}[dir=ltr] .md-typeset blockquote{border-left:.2rem solid var(--md-default-fg-color--lighter)}[dir=rtl] .md-typeset blockquote{border-right:.2rem solid var(--md-default-fg-color--lighter)}.md-typeset blockquote{color:var(--md-default-fg-color--light);margin-left:0;margin-right:0}.md-typeset ul{list-style-type:disc}[dir=ltr] .md-typeset ol,[dir=ltr] .md-typeset ul{margin-left:.625em}[dir=rtl] .md-typeset ol,[dir=rtl] .md-typeset ul{margin-right:.625em}.md-typeset ol,.md-typeset ul{padding:0}.md-typeset ol:not([hidden]),.md-typeset ul:not([hidden]){display:flow-root}.md-typeset ol ol,.md-typeset ul ol{list-style-type:lower-alpha}.md-typeset ol ol ol,.md-typeset ul ol ol{list-style-type:lower-roman}[dir=ltr] .md-typeset ol li,[dir=ltr] .md-typeset ul li{margin-left:1.25em}[dir=rtl] .md-typeset ol li,[dir=rtl] .md-typeset ul li{margin-right:1.25em}.md-typeset ol li,.md-typeset ul li{margin-bottom:.5em}.md-typeset ol li blockquote,.md-typeset ol li p,.md-typeset ul li blockquote,.md-typeset ul li p{margin:.5em 0}.md-typeset ol li:last-child,.md-typeset ul li:last-child{margin-bottom:0}[dir=ltr] .md-typeset ol li ol,[dir=ltr] .md-typeset ol li ul,[dir=ltr] .md-typeset ul li ol,[dir=ltr] .md-typeset ul li ul{margin-left:.625em}[dir=rtl] .md-typeset ol li ol,[dir=rtl] .md-typeset ol li ul,[dir=rtl] .md-typeset ul li ol,[dir=rtl] .md-typeset ul li ul{margin-right:.625em}.md-typeset ol li ol,.md-typeset ol li ul,.md-typeset ul li ol,.md-typeset ul li ul{margin-bottom:.5em;margin-top:.5em}[dir=ltr] .md-typeset dd{margin-left:1.875em}[dir=rtl] .md-typeset dd{margin-right:1.875em}.md-typeset dd{margin-bottom:1.5em;margin-top:1em}.md-typeset img,.md-typeset svg,.md-typeset video{height:auto;max-width:100%}.md-typeset img[align=left]{margin:1em 1em 1em 0}.md-typeset img[align=right]{margin:1em 0 1em 1em}.md-typeset img[align]:only-child{margin-top:0}.md-typeset figure{display:flow-root;margin:1em auto;max-width:100%;text-align:center;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.md-typeset figure img{display:block}.md-typeset figcaption{font-style:italic;margin:1em auto;max-width:24rem}.md-typeset iframe{max-width:100%}.md-typeset table:not([class]){background-color:var(--md-default-bg-color);border:.05rem solid var(--md-typeset-table-color);border-radius:.1rem;display:inline-block;font-size:.64rem;max-width:100%;overflow:auto;touch-action:auto}@media print{.md-typeset table:not([class]){display:table}}.md-typeset table:not([class])+*{margin-top:1.5em}.md-typeset table:not([class]) td>:first-child,.md-typeset table:not([class]) th>:first-child{margin-top:0}.md-typeset table:not([class]) td>:last-child,.md-typeset table:not([class]) th>:last-child{margin-bottom:0}.md-typeset table:not([class]) td:not([align]),.md-typeset table:not([class]) th:not([align]){text-align:left}[dir=rtl] .md-typeset table:not([class]) td:not([align]),[dir=rtl] .md-typeset table:not([class]) th:not([align]){text-align:right}.md-typeset table:not([class]) th{font-weight:700;min-width:5rem;padding:.9375em 1.25em;vertical-align:top}.md-typeset table:not([class]) td{border-top:.05rem solid var(--md-typeset-table-color);padding:.9375em 1.25em;vertical-align:top}.md-typeset table:not([class]) tbody tr{transition:background-color 125ms}.md-typeset table:not([class]) tbody tr:hover{background-color:var(--md-typeset-table-color--light);box-shadow:0 .05rem 0 var(--md-default-bg-color) inset}.md-typeset table:not([class]) a{word-break:normal}.md-typeset table th[role=columnheader]{cursor:pointer}[dir=ltr] .md-typeset table th[role=columnheader]:after{margin-left:.5em}[dir=rtl] .md-typeset table th[role=columnheader]:after{margin-right:.5em}.md-typeset table th[role=columnheader]:after{content:"";display:inline-block;height:1.2em;-webkit-mask-image:var(--md-typeset-table-sort-icon);mask-image:var(--md-typeset-table-sort-icon);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;transition:background-color 125ms;vertical-align:text-bottom;width:1.2em}.md-typeset table th[role=columnheader]:hover:after{background-color:var(--md-default-fg-color--lighter)}.md-typeset table th[role=columnheader][aria-sort=ascending]:after{background-color:var(--md-default-fg-color--light);-webkit-mask-image:var(--md-typeset-table-sort-icon--asc);mask-image:var(--md-typeset-table-sort-icon--asc)}.md-typeset table th[role=columnheader][aria-sort=descending]:after{background-color:var(--md-default-fg-color--light);-webkit-mask-image:var(--md-typeset-table-sort-icon--desc);mask-image:var(--md-typeset-table-sort-icon--desc)}.md-typeset__scrollwrap{margin:1em -.8rem;overflow-x:auto;touch-action:auto}.md-typeset__table{display:inline-block;margin-bottom:.5em;padding:0 .8rem}@media print{.md-typeset__table{display:block}}html .md-typeset__table table{display:table;margin:0;overflow:hidden;width:100%}@media screen and (max-width:44.984375em){.md-content__inner>pre{margin:1em -.8rem}.md-content__inner>pre code{border-radius:0}}.md-typeset .md-author{display:block;flex-shrink:0;height:1.6rem;overflow:hidden;position:relative;transition:color 125ms,transform 125ms;width:1.6rem}.md-typeset .md-author img{border-radius:100%;display:block}.md-typeset .md-author--more{background:var(--md-default-fg-color--lightest);color:var(--md-default-fg-color--lighter);font-size:.6rem;font-weight:700;line-height:1.6rem;text-align:center}.md-typeset .md-author--long{height:2.4rem;width:2.4rem}.md-typeset a.md-author{transform:scale(1)}.md-typeset a.md-author img{filter:grayscale(100%) opacity(75%);transition:filter 125ms}.md-typeset a.md-author:focus,.md-typeset a.md-author:hover{transform:scale(1.1);z-index:1}.md-typeset a.md-author:focus img,.md-typeset a.md-author:hover img{filter:grayscale(0)}.md-banner{background-color:var(--md-footer-bg-color);color:var(--md-footer-fg-color);overflow:auto}@media print{.md-banner{display:none}}.md-banner--warning{background-color:var(--md-warning-bg-color);color:var(--md-warning-fg-color)}.md-banner__inner{font-size:.7rem;margin:.6rem auto;padding:0 .8rem}[dir=ltr] .md-banner__button{float:right}[dir=rtl] .md-banner__button{float:left}.md-banner__button{color:inherit;cursor:pointer;transition:opacity .25s}.no-js .md-banner__button{display:none}.md-banner__button:hover{opacity:.7}html{font-size:125%;height:100%;overflow-x:hidden}@media screen and (min-width:100em){html{font-size:137.5%}}@media screen and (min-width:125em){html{font-size:150%}}body{background-color:var(--md-default-bg-color);display:flex;flex-direction:column;font-size:.5rem;min-height:100%;position:relative;width:100%}@media print{body{display:block}}@media screen and (max-width:59.984375em){body[data-md-scrolllock]{position:fixed}}.md-grid{margin-left:auto;margin-right:auto;max-width:61rem}.md-container{display:flex;flex-direction:column;flex-grow:1}@media print{.md-container{display:block}}.md-main{flex-grow:1}.md-main__inner{display:flex;height:100%;margin-top:1.5rem}.md-ellipsis{overflow:hidden;text-overflow:ellipsis}.md-toggle{display:none}.md-option{height:0;opacity:0;position:absolute;width:0}.md-option:checked+label:not([hidden]){display:block}.md-option.focus-visible+label{outline-color:var(--md-accent-fg-color);outline-style:auto}.md-skip{background-color:var(--md-default-fg-color);border-radius:.1rem;color:var(--md-default-bg-color);font-size:.64rem;margin:.5rem;opacity:0;outline-color:var(--md-accent-fg-color);padding:.3rem .5rem;position:fixed;transform:translateY(.4rem);z-index:-1}.md-skip:focus{opacity:1;transform:translateY(0);transition:transform .25s cubic-bezier(.4,0,.2,1),opacity 175ms 75ms;z-index:10}@page{margin:25mm}:root{--md-clipboard-icon:url('data:image/svg+xml;charset=utf-8,')}.md-clipboard{border-radius:.1rem;color:var(--md-default-fg-color--lightest);cursor:pointer;height:1.5em;outline-color:var(--md-accent-fg-color);outline-offset:.1rem;position:absolute;right:.5em;top:.5em;transition:color .25s;width:1.5em;z-index:1}@media print{.md-clipboard{display:none}}.md-clipboard:not(.focus-visible){-webkit-tap-highlight-color:transparent;outline:none}:hover>.md-clipboard{color:var(--md-default-fg-color--light)}.md-clipboard:focus,.md-clipboard:hover{color:var(--md-accent-fg-color)}.md-clipboard:after{background-color:currentcolor;content:"";display:block;height:1.125em;margin:0 auto;-webkit-mask-image:var(--md-clipboard-icon);mask-image:var(--md-clipboard-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:1.125em}.md-clipboard--inline{cursor:pointer}.md-clipboard--inline code{transition:color .25s,background-color .25s}.md-clipboard--inline:focus code,.md-clipboard--inline:hover code{background-color:var(--md-accent-fg-color--transparent);color:var(--md-accent-fg-color)}@keyframes consent{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes overlay{0%{opacity:0}to{opacity:1}}.md-consent__overlay{animation:overlay .25s both;-webkit-backdrop-filter:blur(.1rem);backdrop-filter:blur(.1rem);background-color:#0000008a;height:100%;opacity:1;position:fixed;top:0;width:100%;z-index:5}.md-consent__inner{animation:consent .5s cubic-bezier(.1,.7,.1,1) both;background-color:var(--md-default-bg-color);border:0;border-radius:.1rem;bottom:0;box-shadow:0 0 .2rem #0000001a,0 .2rem .4rem #0003;max-height:100%;overflow:auto;padding:0;position:fixed;width:100%;z-index:5}.md-consent__form{padding:.8rem}.md-consent__settings{display:none;margin:1em 0}input:checked+.md-consent__settings{display:block}.md-consent__controls{margin-bottom:.8rem}.md-typeset .md-consent__controls .md-button{display:inline}@media screen and (max-width:44.984375em){.md-typeset .md-consent__controls .md-button{display:block;margin-top:.4rem;text-align:center;width:100%}}.md-consent label{cursor:pointer}.md-content{flex-grow:1;min-width:0}.md-content__inner{margin:0 .8rem 1.2rem;padding-top:.6rem}@media screen and (min-width:76.25em){[dir=ltr] .md-sidebar--primary:not([hidden])~.md-content>.md-content__inner{margin-left:1.2rem}[dir=ltr] .md-sidebar--secondary:not([hidden])~.md-content>.md-content__inner,[dir=rtl] .md-sidebar--primary:not([hidden])~.md-content>.md-content__inner{margin-right:1.2rem}[dir=rtl] .md-sidebar--secondary:not([hidden])~.md-content>.md-content__inner{margin-left:1.2rem}}.md-content__inner:before{content:"";display:block;height:.4rem}.md-content__inner>:last-child{margin-bottom:0}[dir=ltr] .md-content__button{float:right}[dir=rtl] .md-content__button{float:left}[dir=ltr] .md-content__button{margin-left:.4rem}[dir=rtl] .md-content__button{margin-right:.4rem}.md-content__button{margin:.4rem 0;padding:0}@media print{.md-content__button{display:none}}.md-typeset .md-content__button{color:var(--md-default-fg-color--lighter)}.md-content__button svg{display:inline;vertical-align:top}[dir=rtl] .md-content__button svg{transform:scaleX(-1)}[dir=ltr] .md-dialog{right:.8rem}[dir=rtl] .md-dialog{left:.8rem}.md-dialog{background-color:var(--md-default-fg-color);border-radius:.1rem;bottom:.8rem;box-shadow:var(--md-shadow-z3);min-width:11.1rem;opacity:0;padding:.4rem .6rem;pointer-events:none;position:fixed;transform:translateY(100%);transition:transform 0ms .4s,opacity .4s;z-index:4}@media print{.md-dialog{display:none}}.md-dialog--active{opacity:1;pointer-events:auto;transform:translateY(0);transition:transform .4s cubic-bezier(.075,.85,.175,1),opacity .4s}.md-dialog__inner{color:var(--md-default-bg-color);font-size:.7rem}.md-feedback{margin:2em 0 1em;text-align:center}.md-feedback fieldset{border:none;margin:0;padding:0}.md-feedback__title{font-weight:700;margin:1em auto}.md-feedback__inner{position:relative}.md-feedback__list{display:flex;flex-wrap:wrap;place-content:baseline center;position:relative}.md-feedback__list:hover .md-icon:not(:disabled){color:var(--md-default-fg-color--lighter)}:disabled .md-feedback__list{min-height:1.8rem}.md-feedback__icon{color:var(--md-default-fg-color--light);cursor:pointer;flex-shrink:0;margin:0 .1rem;transition:color 125ms}.md-feedback__icon:not(:disabled).md-icon:hover{color:var(--md-accent-fg-color)}.md-feedback__icon:disabled{color:var(--md-default-fg-color--lightest);pointer-events:none}.md-feedback__note{opacity:0;position:relative;transform:translateY(.4rem);transition:transform .4s cubic-bezier(.1,.7,.1,1),opacity .15s}.md-feedback__note>*{margin:0 auto;max-width:16rem}:disabled .md-feedback__note{opacity:1;transform:translateY(0)}.md-footer{background-color:var(--md-footer-bg-color);color:var(--md-footer-fg-color)}@media print{.md-footer{display:none}}.md-footer__inner{justify-content:space-between;overflow:auto;padding:.2rem}.md-footer__inner:not([hidden]){display:flex}.md-footer__link{align-items:end;display:flex;flex-grow:0.01;margin-bottom:.4rem;margin-top:1rem;max-width:100%;outline-color:var(--md-accent-fg-color);overflow:hidden;transition:opacity .25s}.md-footer__link:focus,.md-footer__link:hover{opacity:.7}[dir=rtl] .md-footer__link svg{transform:scaleX(-1)}@media screen and (max-width:44.984375em){.md-footer__link--prev{flex-shrink:0}.md-footer__link--prev .md-footer__title{display:none}}[dir=ltr] .md-footer__link--next{margin-left:auto}[dir=rtl] .md-footer__link--next{margin-right:auto}.md-footer__link--next{text-align:right}[dir=rtl] .md-footer__link--next{text-align:left}.md-footer__title{flex-grow:1;font-size:.9rem;margin-bottom:.7rem;max-width:calc(100% - 2.4rem);padding:0 1rem;white-space:nowrap}.md-footer__button{margin:.2rem;padding:.4rem}.md-footer__direction{font-size:.64rem;opacity:.7}.md-footer-meta{background-color:var(--md-footer-bg-color--dark)}.md-footer-meta__inner{display:flex;flex-wrap:wrap;justify-content:space-between;padding:.2rem}html .md-footer-meta.md-typeset a{color:var(--md-footer-fg-color--light)}html .md-footer-meta.md-typeset a:focus,html .md-footer-meta.md-typeset a:hover{color:var(--md-footer-fg-color)}.md-copyright{color:var(--md-footer-fg-color--lighter);font-size:.64rem;margin:auto .6rem;padding:.4rem 0;width:100%}@media screen and (min-width:45em){.md-copyright{width:auto}}.md-copyright__highlight{color:var(--md-footer-fg-color--light)}.md-social{display:inline-flex;gap:.2rem;margin:0 .4rem;padding:.2rem 0 .6rem}@media screen and (min-width:45em){.md-social{padding:.6rem 0}}.md-social__link{display:inline-block;height:1.6rem;text-align:center;width:1.6rem}.md-social__link:before{line-height:1.9}.md-social__link svg{fill:currentcolor;max-height:.8rem;vertical-align:-25%}.md-typeset .md-button{border:.1rem solid;border-radius:.1rem;color:var(--md-primary-fg-color);cursor:pointer;display:inline-block;font-weight:700;padding:.625em 2em;transition:color 125ms,background-color 125ms,border-color 125ms}.md-typeset .md-button--primary{background-color:var(--md-primary-fg-color);border-color:var(--md-primary-fg-color);color:var(--md-primary-bg-color)}.md-typeset .md-button:focus,.md-typeset .md-button:hover{background-color:var(--md-accent-fg-color);border-color:var(--md-accent-fg-color);color:var(--md-accent-bg-color)}[dir=ltr] .md-typeset .md-input{border-top-left-radius:.1rem}[dir=ltr] .md-typeset .md-input,[dir=rtl] .md-typeset .md-input{border-top-right-radius:.1rem}[dir=rtl] .md-typeset .md-input{border-top-left-radius:.1rem}.md-typeset .md-input{border-bottom:.1rem solid var(--md-default-fg-color--lighter);box-shadow:var(--md-shadow-z1);font-size:.8rem;height:1.8rem;padding:0 .6rem;transition:border .25s,box-shadow .25s}.md-typeset .md-input:focus,.md-typeset .md-input:hover{border-bottom-color:var(--md-accent-fg-color);box-shadow:var(--md-shadow-z2)}.md-typeset .md-input--stretch{width:100%}.md-header{background-color:var(--md-primary-fg-color);box-shadow:0 0 .2rem #0000,0 .2rem .4rem #0000;color:var(--md-primary-bg-color);display:block;left:0;position:sticky;right:0;top:0;z-index:4}@media print{.md-header{display:none}}.md-header[hidden]{transform:translateY(-100%);transition:transform .25s cubic-bezier(.8,0,.6,1),box-shadow .25s}.md-header--shadow{box-shadow:0 0 .2rem #0000001a,0 .2rem .4rem #0003;transition:transform .25s cubic-bezier(.1,.7,.1,1),box-shadow .25s}.md-header__inner{align-items:center;display:flex;padding:0 .2rem}.md-header__button{color:currentcolor;cursor:pointer;margin:.2rem;outline-color:var(--md-accent-fg-color);padding:.4rem;position:relative;transition:opacity .25s;vertical-align:middle;z-index:1}.md-header__button:hover{opacity:.7}.md-header__button:not([hidden]){display:inline-block}.md-header__button:not(.focus-visible){-webkit-tap-highlight-color:transparent;outline:none}.md-header__button.md-logo{margin:.2rem;padding:.4rem}@media screen and (max-width:76.234375em){.md-header__button.md-logo{display:none}}.md-header__button.md-logo img,.md-header__button.md-logo svg{fill:currentcolor;display:block;height:1.2rem;width:auto}@media screen and (min-width:60em){.md-header__button[for=__search]{display:none}}.no-js .md-header__button[for=__search]{display:none}[dir=rtl] .md-header__button[for=__search] svg{transform:scaleX(-1)}@media screen and (min-width:76.25em){.md-header__button[for=__drawer]{display:none}}.md-header__topic{display:flex;max-width:100%;position:absolute;transition:transform .4s cubic-bezier(.1,.7,.1,1),opacity .15s;white-space:nowrap}.md-header__topic+.md-header__topic{opacity:0;pointer-events:none;transform:translateX(1.25rem);transition:transform .4s cubic-bezier(1,.7,.1,.1),opacity .15s;z-index:-1}[dir=rtl] .md-header__topic+.md-header__topic{transform:translateX(-1.25rem)}.md-header__topic:first-child{font-weight:700}[dir=ltr] .md-header__title{margin-left:1rem;margin-right:.4rem}[dir=rtl] .md-header__title{margin-left:.4rem;margin-right:1rem}.md-header__title{flex-grow:1;font-size:.9rem;height:2.4rem;line-height:2.4rem}.md-header__title--active .md-header__topic{opacity:0;pointer-events:none;transform:translateX(-1.25rem);transition:transform .4s cubic-bezier(1,.7,.1,.1),opacity .15s;z-index:-1}[dir=rtl] .md-header__title--active .md-header__topic{transform:translateX(1.25rem)}.md-header__title--active .md-header__topic+.md-header__topic{opacity:1;pointer-events:auto;transform:translateX(0);transition:transform .4s cubic-bezier(.1,.7,.1,1),opacity .15s;z-index:0}.md-header__title>.md-header__ellipsis{height:100%;position:relative;width:100%}.md-header__option{display:flex;flex-shrink:0;max-width:100%;transition:max-width 0ms .25s,opacity .25s .25s;white-space:nowrap}[data-md-toggle=search]:checked~.md-header .md-header__option{max-width:0;opacity:0;transition:max-width 0ms,opacity 0ms}.md-header__option>input{bottom:0}.md-header__source{display:none}@media screen and (min-width:60em){[dir=ltr] .md-header__source{margin-left:1rem}[dir=rtl] .md-header__source{margin-right:1rem}.md-header__source{display:block;max-width:11.7rem;width:11.7rem}}@media screen and (min-width:76.25em){[dir=ltr] .md-header__source{margin-left:1.4rem}[dir=rtl] .md-header__source{margin-right:1.4rem}}.md-meta{color:var(--md-default-fg-color--light);font-size:.7rem;line-height:1.3}.md-meta__list{display:inline-flex;flex-wrap:wrap;list-style:none;margin:0;padding:0}.md-meta__item:not(:last-child):after{content:"·";margin-left:.2rem;margin-right:.2rem}.md-meta__link{color:var(--md-typeset-a-color)}.md-meta__link:focus,.md-meta__link:hover{color:var(--md-accent-fg-color)}.md-draft{background-color:#ff1744;border-radius:.125em;color:#fff;display:inline-block;font-weight:700;padding-left:.5714285714em;padding-right:.5714285714em}:root{--md-nav-icon--prev:url('data:image/svg+xml;charset=utf-8,');--md-nav-icon--next:url('data:image/svg+xml;charset=utf-8,');--md-toc-icon:url('data:image/svg+xml;charset=utf-8,')}.md-nav{font-size:.7rem;line-height:1.3}.md-nav__title{color:var(--md-default-fg-color--light);display:block;font-weight:700;overflow:hidden;padding:0 .6rem;text-overflow:ellipsis}.md-nav__title .md-nav__button{display:none}.md-nav__title .md-nav__button img{height:100%;width:auto}.md-nav__title .md-nav__button.md-logo img,.md-nav__title .md-nav__button.md-logo svg{fill:currentcolor;display:block;height:2.4rem;max-width:100%;object-fit:contain;width:auto}.md-nav__list{list-style:none;margin:0;padding:0}.md-nav__link{align-items:flex-start;display:flex;gap:.4rem;margin-top:.625em;scroll-snap-align:start;transition:color 125ms}.md-nav__link--passed{color:var(--md-default-fg-color--light)}.md-nav__item .md-nav__link--active,.md-nav__item .md-nav__link--active code{color:var(--md-typeset-a-color)}.md-nav__link .md-ellipsis{position:relative}[dir=ltr] .md-nav__link .md-icon:last-child{margin-left:auto}[dir=rtl] .md-nav__link .md-icon:last-child{margin-right:auto}.md-nav__link svg{fill:currentcolor;flex-shrink:0;height:1.3em}.md-nav__link[for]:focus,.md-nav__link[for]:hover,.md-nav__link[href]:focus,.md-nav__link[href]:hover{color:var(--md-accent-fg-color);cursor:pointer}.md-nav__link.focus-visible{outline-color:var(--md-accent-fg-color);outline-offset:.2rem}.md-nav--primary .md-nav__link[for=__toc]{display:none}.md-nav--primary .md-nav__link[for=__toc] .md-icon:after{background-color:currentcolor;display:block;height:100%;-webkit-mask-image:var(--md-toc-icon);mask-image:var(--md-toc-icon);width:100%}.md-nav--primary .md-nav__link[for=__toc]~.md-nav{display:none}.md-nav__container>.md-nav__link{margin-top:0}.md-nav__container>.md-nav__link:first-child{flex-grow:1;min-width:0}.md-nav__icon{flex-shrink:0}.md-nav__source{display:none}@media screen and (max-width:76.234375em){.md-nav--primary,.md-nav--primary .md-nav{background-color:var(--md-default-bg-color);display:flex;flex-direction:column;height:100%;left:0;position:absolute;right:0;top:0;z-index:1}.md-nav--primary .md-nav__item,.md-nav--primary .md-nav__title{font-size:.8rem;line-height:1.5}.md-nav--primary .md-nav__title{background-color:var(--md-default-fg-color--lightest);color:var(--md-default-fg-color--light);cursor:pointer;height:5.6rem;line-height:2.4rem;padding:3rem .8rem .2rem;position:relative;white-space:nowrap}[dir=ltr] .md-nav--primary .md-nav__title .md-nav__icon{left:.4rem}[dir=rtl] .md-nav--primary .md-nav__title .md-nav__icon{right:.4rem}.md-nav--primary .md-nav__title .md-nav__icon{display:block;height:1.2rem;margin:.2rem;position:absolute;top:.4rem;width:1.2rem}.md-nav--primary .md-nav__title .md-nav__icon:after{background-color:currentcolor;content:"";display:block;height:100%;-webkit-mask-image:var(--md-nav-icon--prev);mask-image:var(--md-nav-icon--prev);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:100%}.md-nav--primary .md-nav__title~.md-nav__list{background-color:var(--md-default-bg-color);box-shadow:0 .05rem 0 var(--md-default-fg-color--lightest) inset;overflow-y:auto;scroll-snap-type:y mandatory;touch-action:pan-y}.md-nav--primary .md-nav__title~.md-nav__list>:first-child{border-top:0}.md-nav--primary .md-nav__title[for=__drawer]{background-color:var(--md-primary-fg-color);color:var(--md-primary-bg-color);font-weight:700}.md-nav--primary .md-nav__title .md-logo{display:block;left:.2rem;margin:.2rem;padding:.4rem;position:absolute;right:.2rem;top:.2rem}.md-nav--primary .md-nav__list{flex:1}.md-nav--primary .md-nav__item{border-top:.05rem solid var(--md-default-fg-color--lightest)}.md-nav--primary .md-nav__item--active>.md-nav__link{color:var(--md-typeset-a-color)}.md-nav--primary .md-nav__item--active>.md-nav__link:focus,.md-nav--primary .md-nav__item--active>.md-nav__link:hover{color:var(--md-accent-fg-color)}.md-nav--primary .md-nav__link{margin-top:0;padding:.6rem .8rem}.md-nav--primary .md-nav__link svg{margin-top:.1em}.md-nav--primary .md-nav__link>.md-nav__link{padding:0}[dir=ltr] .md-nav--primary .md-nav__link .md-nav__icon{margin-right:-.2rem}[dir=rtl] .md-nav--primary .md-nav__link .md-nav__icon{margin-left:-.2rem}.md-nav--primary .md-nav__link .md-nav__icon{font-size:1.2rem;height:1.2rem;width:1.2rem}.md-nav--primary .md-nav__link .md-nav__icon:after{background-color:currentcolor;content:"";display:block;height:100%;-webkit-mask-image:var(--md-nav-icon--next);mask-image:var(--md-nav-icon--next);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:100%}[dir=rtl] .md-nav--primary .md-nav__icon:after{transform:scale(-1)}.md-nav--primary .md-nav--secondary .md-nav{background-color:initial;position:static}[dir=ltr] .md-nav--primary .md-nav--secondary .md-nav .md-nav__link{padding-left:1.4rem}[dir=rtl] .md-nav--primary .md-nav--secondary .md-nav .md-nav__link{padding-right:1.4rem}[dir=ltr] .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav__link{padding-left:2rem}[dir=rtl] .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav__link{padding-right:2rem}[dir=ltr] .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav .md-nav__link{padding-left:2.6rem}[dir=rtl] .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav .md-nav__link{padding-right:2.6rem}[dir=ltr] .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav .md-nav .md-nav__link{padding-left:3.2rem}[dir=rtl] .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav .md-nav .md-nav__link{padding-right:3.2rem}.md-nav--secondary{background-color:initial}.md-nav__toggle~.md-nav{display:flex;opacity:0;transform:translateX(100%);transition:transform .25s cubic-bezier(.8,0,.6,1),opacity 125ms 50ms}[dir=rtl] .md-nav__toggle~.md-nav{transform:translateX(-100%)}.md-nav__toggle:checked~.md-nav{opacity:1;transform:translateX(0);transition:transform .25s cubic-bezier(.4,0,.2,1),opacity 125ms 125ms}.md-nav__toggle:checked~.md-nav>.md-nav__list{-webkit-backface-visibility:hidden;backface-visibility:hidden}}@media screen and (max-width:59.984375em){.md-nav--primary .md-nav__link[for=__toc]{display:flex}.md-nav--primary .md-nav__link[for=__toc] .md-icon:after{content:""}.md-nav--primary .md-nav__link[for=__toc]+.md-nav__link{display:none}.md-nav--primary .md-nav__link[for=__toc]~.md-nav{display:flex}.md-nav__source{background-color:var(--md-primary-fg-color--dark);color:var(--md-primary-bg-color);display:block;padding:0 .2rem}}@media screen and (min-width:60em) and (max-width:76.234375em){.md-nav--integrated .md-nav__link[for=__toc]{display:flex}.md-nav--integrated .md-nav__link[for=__toc] .md-icon:after{content:""}.md-nav--integrated .md-nav__link[for=__toc]+.md-nav__link{display:none}.md-nav--integrated .md-nav__link[for=__toc]~.md-nav{display:flex}}@media screen and (min-width:60em){.md-nav{margin-bottom:-.4rem}.md-nav--secondary .md-nav__title{background:var(--md-default-bg-color);box-shadow:0 0 .4rem .4rem var(--md-default-bg-color);position:sticky;top:0;z-index:1}.md-nav--secondary .md-nav__title[for=__toc]{scroll-snap-align:start}.md-nav--secondary .md-nav__title .md-nav__icon{display:none}[dir=ltr] .md-nav--secondary .md-nav__list{padding-left:.6rem}[dir=rtl] .md-nav--secondary .md-nav__list{padding-right:.6rem}.md-nav--secondary .md-nav__list{padding-bottom:.4rem}[dir=ltr] .md-nav--secondary .md-nav__item>.md-nav__link{margin-right:.4rem}[dir=rtl] .md-nav--secondary .md-nav__item>.md-nav__link{margin-left:.4rem}}@media screen and (min-width:76.25em){.md-nav{margin-bottom:-.4rem;transition:max-height .25s cubic-bezier(.86,0,.07,1)}.md-nav--primary .md-nav__title{background:var(--md-default-bg-color);box-shadow:0 0 .4rem .4rem var(--md-default-bg-color);position:sticky;top:0;z-index:1}.md-nav--primary .md-nav__title[for=__drawer]{scroll-snap-align:start}.md-nav--primary .md-nav__title .md-nav__icon{display:none}[dir=ltr] .md-nav--primary .md-nav__list{padding-left:.6rem}[dir=rtl] .md-nav--primary .md-nav__list{padding-right:.6rem}.md-nav--primary .md-nav__list{padding-bottom:.4rem}[dir=ltr] .md-nav--primary .md-nav__item>.md-nav__link{margin-right:.4rem}[dir=rtl] .md-nav--primary .md-nav__item>.md-nav__link{margin-left:.4rem}.md-nav__toggle~.md-nav{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .25s cubic-bezier(.86,0,.07,1),opacity .25s,visibility 0ms .25s;visibility:collapse}.md-nav__toggle~.md-nav>.md-nav__list{overflow:hidden}.md-nav__toggle:checked~.md-nav,.md-nav__toggle:indeterminate~.md-nav{grid-template-rows:1fr;opacity:1;transition:grid-template-rows .25s cubic-bezier(.86,0,.07,1),opacity .15s .1s,visibility 0ms;visibility:visible}.md-nav__item--nested>.md-nav>.md-nav__title{display:none}.md-nav__item--section{display:block;margin:1.25em 0}.md-nav__item--section:last-child{margin-bottom:0}.md-nav__item--section>.md-nav__link{font-weight:700}.md-nav__item--section>.md-nav__link[for]{color:var(--md-default-fg-color--light)}.md-nav__item--section>.md-nav__link:not(.md-nav__container){pointer-events:none}.md-nav__item--section>.md-nav__link .md-icon,.md-nav__item--section>.md-nav__link>[for]{display:none}[dir=ltr] .md-nav__item--section>.md-nav{margin-left:-.6rem}[dir=rtl] .md-nav__item--section>.md-nav{margin-right:-.6rem}.md-nav__item--section>.md-nav{display:block;opacity:1;visibility:visible}.md-nav__item--section>.md-nav>.md-nav__list>.md-nav__item{padding:0}.md-nav__icon{border-radius:100%;height:.9rem;transition:background-color .25s;width:.9rem}.md-nav__icon:hover{background-color:var(--md-accent-fg-color--transparent)}.md-nav__icon:after{background-color:currentcolor;border-radius:100%;content:"";display:inline-block;height:100%;-webkit-mask-image:var(--md-nav-icon--next);mask-image:var(--md-nav-icon--next);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;transition:transform .25s;vertical-align:-.1rem;width:100%}[dir=rtl] .md-nav__icon:after{transform:rotate(180deg)}.md-nav__item--nested .md-nav__toggle:checked~.md-nav__link .md-nav__icon:after,.md-nav__item--nested .md-nav__toggle:indeterminate~.md-nav__link .md-nav__icon:after{transform:rotate(90deg)}.md-nav--lifted>.md-nav__list>.md-nav__item,.md-nav--lifted>.md-nav__title{display:none}.md-nav--lifted>.md-nav__list>.md-nav__item--active{display:block}.md-nav--lifted>.md-nav__list>.md-nav__item--active>.md-nav__link{background:var(--md-default-bg-color);box-shadow:0 0 .4rem .4rem var(--md-default-bg-color);margin-top:0;position:sticky;top:0;z-index:1}.md-nav--lifted>.md-nav__list>.md-nav__item--active>.md-nav__link:not(.md-nav__container){pointer-events:none}.md-nav--lifted>.md-nav__list>.md-nav__item--active.md-nav__item--section{margin:0}[dir=ltr] .md-nav--lifted>.md-nav__list>.md-nav__item>.md-nav{margin-left:-.6rem}[dir=rtl] .md-nav--lifted>.md-nav__list>.md-nav__item>.md-nav{margin-right:-.6rem}.md-nav--lifted>.md-nav__list>.md-nav__item>[for]{color:var(--md-default-fg-color--light)}.md-nav--lifted .md-nav[data-md-level="1"]{grid-template-rows:1fr;opacity:1;visibility:visible}.md-nav--integrated>.md-nav__list>.md-nav__item--active:not(.md-nav__item--nested){padding:0 .6rem}.md-nav--integrated>.md-nav__list>.md-nav__item--active:not(.md-nav__item--nested)>.md-nav__link{padding:0}[dir=ltr] .md-nav--integrated>.md-nav__list>.md-nav__item--active .md-nav--secondary{border-left:.05rem solid var(--md-primary-fg-color)}[dir=rtl] .md-nav--integrated>.md-nav__list>.md-nav__item--active .md-nav--secondary{border-right:.05rem solid var(--md-primary-fg-color)}.md-nav--integrated>.md-nav__list>.md-nav__item--active .md-nav--secondary{display:block;margin-bottom:1.25em;opacity:1;visibility:visible}.md-nav--integrated>.md-nav__list>.md-nav__item--active .md-nav--secondary>.md-nav__list{overflow:visible;padding-bottom:0}.md-nav--integrated>.md-nav__list>.md-nav__item--active .md-nav--secondary>.md-nav__title{display:none}}.md-pagination{font-size:.8rem;font-weight:700;gap:.4rem}.md-pagination,.md-pagination>*{align-items:center;display:flex;justify-content:center}.md-pagination>*{border-radius:.2rem;height:1.8rem;min-width:1.8rem;text-align:center}.md-pagination__current{background-color:var(--md-default-fg-color--lightest);color:var(--md-default-fg-color--light)}.md-pagination__link{transition:color 125ms,background-color 125ms}.md-pagination__link:focus,.md-pagination__link:hover{background-color:var(--md-accent-fg-color--transparent);color:var(--md-accent-fg-color)}.md-pagination__link:focus svg,.md-pagination__link:hover svg{color:var(--md-accent-fg-color)}.md-pagination__link.focus-visible{outline-color:var(--md-accent-fg-color);outline-offset:.2rem}.md-pagination__link svg{fill:currentcolor;color:var(--md-default-fg-color--lighter);display:block;max-height:100%;width:1.2rem}.md-post__back{border-bottom:.05rem solid var(--md-default-fg-color--lightest);margin-bottom:1.2rem;padding-bottom:1.2rem}@media screen and (max-width:76.234375em){.md-post__back{display:none}}[dir=rtl] .md-post__back svg{transform:scaleX(-1)}.md-post__authors{display:flex;flex-direction:column;gap:.6rem;margin:0 .6rem 1.2rem}.md-post .md-post__meta a{transition:color 125ms}.md-post .md-post__meta a:focus,.md-post .md-post__meta a:hover{color:var(--md-accent-fg-color)}.md-post__title{color:var(--md-default-fg-color--light);font-weight:700}.md-post--excerpt{margin-bottom:3.2rem}.md-post--excerpt .md-post__header{align-items:center;display:flex;gap:.6rem;min-height:1.6rem}.md-post--excerpt .md-post__authors{align-items:center;display:inline-flex;flex-direction:row;gap:.2rem;margin:0;min-height:2.4rem}[dir=ltr] .md-post--excerpt .md-post__meta .md-meta__list{margin-right:.4rem}[dir=rtl] .md-post--excerpt .md-post__meta .md-meta__list{margin-left:.4rem}.md-post--excerpt .md-post__content>:first-child{--md-scroll-margin:6rem;margin-top:0}.md-post>.md-nav--secondary{margin:1em 0}.md-profile{align-items:center;display:flex;font-size:.7rem;gap:.6rem;line-height:1.4;width:100%}.md-profile__description{flex-grow:1}.md-content--post{display:flex}@media screen and (max-width:76.234375em){.md-content--post{flex-flow:column-reverse}}.md-content--post>.md-content__inner{min-width:0}@media screen and (min-width:76.25em){[dir=ltr] .md-content--post>.md-content__inner{margin-left:1.2rem}[dir=rtl] .md-content--post>.md-content__inner{margin-right:1.2rem}}@media screen and (max-width:76.234375em){.md-sidebar.md-sidebar--post{padding:0;position:static;width:100%}.md-sidebar.md-sidebar--post .md-sidebar__scrollwrap{overflow:visible}.md-sidebar.md-sidebar--post .md-sidebar__inner{padding:0}.md-sidebar.md-sidebar--post .md-post__meta{margin-left:.6rem;margin-right:.6rem}.md-sidebar.md-sidebar--post .md-nav__item{border:none;display:inline}.md-sidebar.md-sidebar--post .md-nav__list{display:inline-flex;flex-wrap:wrap;gap:.6rem;padding-bottom:.6rem;padding-top:.6rem}.md-sidebar.md-sidebar--post .md-nav__link{padding:0}.md-sidebar.md-sidebar--post .md-nav{height:auto;margin-bottom:0;position:static}}:root{--md-progress-value:0;--md-progress-delay:400ms}.md-progress{background:var(--md-primary-bg-color);height:.075rem;opacity:min(clamp(0,var(--md-progress-value),1),clamp(0,100 - var(--md-progress-value),1));position:fixed;top:0;transform:scaleX(calc(var(--md-progress-value)*1%));transform-origin:left;transition:transform .5s cubic-bezier(.19,1,.22,1),opacity .25s var(--md-progress-delay);width:100%;z-index:4}:root{--md-search-result-icon:url('data:image/svg+xml;charset=utf-8,')}.md-search{position:relative}@media screen and (min-width:60em){.md-search{padding:.2rem 0}}.no-js .md-search{display:none}.md-search__overlay{opacity:0;z-index:1}@media screen and (max-width:59.984375em){[dir=ltr] .md-search__overlay{left:-2.2rem}[dir=rtl] .md-search__overlay{right:-2.2rem}.md-search__overlay{background-color:var(--md-default-bg-color);border-radius:1rem;height:2rem;overflow:hidden;pointer-events:none;position:absolute;top:-1rem;transform-origin:center;transition:transform .3s .1s,opacity .2s .2s;width:2rem}[data-md-toggle=search]:checked~.md-header .md-search__overlay{opacity:1;transition:transform .4s,opacity .1s}}@media screen and (min-width:60em){[dir=ltr] .md-search__overlay{left:0}[dir=rtl] .md-search__overlay{right:0}.md-search__overlay{background-color:#0000008a;cursor:pointer;height:0;position:fixed;top:0;transition:width 0ms .25s,height 0ms .25s,opacity .25s;width:0}[data-md-toggle=search]:checked~.md-header .md-search__overlay{height:200vh;opacity:1;transition:width 0ms,height 0ms,opacity .25s;width:100%}}@media screen and (max-width:29.984375em){[data-md-toggle=search]:checked~.md-header .md-search__overlay{transform:scale(45)}}@media screen and (min-width:30em) and (max-width:44.984375em){[data-md-toggle=search]:checked~.md-header .md-search__overlay{transform:scale(60)}}@media screen and (min-width:45em) and (max-width:59.984375em){[data-md-toggle=search]:checked~.md-header .md-search__overlay{transform:scale(75)}}.md-search__inner{-webkit-backface-visibility:hidden;backface-visibility:hidden}@media screen and (max-width:59.984375em){[dir=ltr] .md-search__inner{left:0}[dir=rtl] .md-search__inner{right:0}.md-search__inner{height:0;opacity:0;overflow:hidden;position:fixed;top:0;transform:translateX(5%);transition:width 0ms .3s,height 0ms .3s,transform .15s cubic-bezier(.4,0,.2,1) .15s,opacity .15s .15s;width:0;z-index:2}[dir=rtl] .md-search__inner{transform:translateX(-5%)}[data-md-toggle=search]:checked~.md-header .md-search__inner{height:100%;opacity:1;transform:translateX(0);transition:width 0ms 0ms,height 0ms 0ms,transform .15s cubic-bezier(.1,.7,.1,1) .15s,opacity .15s .15s;width:100%}}@media screen and (min-width:60em){[dir=ltr] .md-search__inner{float:right}[dir=rtl] .md-search__inner{float:left}.md-search__inner{padding:.1rem 0;position:relative;transition:width .25s cubic-bezier(.1,.7,.1,1);width:11.7rem}}@media screen and (min-width:60em) and (max-width:76.234375em){[data-md-toggle=search]:checked~.md-header .md-search__inner{width:23.4rem}}@media screen and (min-width:76.25em){[data-md-toggle=search]:checked~.md-header .md-search__inner{width:34.4rem}}.md-search__form{background-color:var(--md-default-bg-color);box-shadow:0 0 .6rem #0000;height:2.4rem;position:relative;transition:color .25s,background-color .25s;z-index:2}@media screen and (min-width:60em){.md-search__form{background-color:#00000042;border-radius:.1rem;height:1.8rem}.md-search__form:hover{background-color:#ffffff1f}}[data-md-toggle=search]:checked~.md-header .md-search__form{background-color:var(--md-default-bg-color);border-radius:.1rem .1rem 0 0;box-shadow:0 0 .6rem #00000012;color:var(--md-default-fg-color)}[dir=ltr] .md-search__input{padding-left:3.6rem;padding-right:2.2rem}[dir=rtl] .md-search__input{padding-left:2.2rem;padding-right:3.6rem}.md-search__input{background:#0000;font-size:.9rem;height:100%;position:relative;text-overflow:ellipsis;width:100%;z-index:2}.md-search__input::placeholder{transition:color .25s}.md-search__input::placeholder,.md-search__input~.md-search__icon{color:var(--md-default-fg-color--light)}.md-search__input::-ms-clear{display:none}@media screen and (max-width:59.984375em){.md-search__input{font-size:.9rem;height:2.4rem;width:100%}}@media screen and (min-width:60em){[dir=ltr] .md-search__input{padding-left:2.2rem}[dir=rtl] .md-search__input{padding-right:2.2rem}.md-search__input{color:inherit;font-size:.8rem}.md-search__input::placeholder{color:var(--md-primary-bg-color--light)}.md-search__input+.md-search__icon{color:var(--md-primary-bg-color)}[data-md-toggle=search]:checked~.md-header .md-search__input{text-overflow:clip}[data-md-toggle=search]:checked~.md-header .md-search__input+.md-search__icon{color:var(--md-default-fg-color--light)}[data-md-toggle=search]:checked~.md-header .md-search__input::placeholder{color:#0000}}.md-search__icon{cursor:pointer;display:inline-block;height:1.2rem;transition:color .25s,opacity .25s;width:1.2rem}.md-search__icon:hover{opacity:.7}[dir=ltr] .md-search__icon[for=__search]{left:.5rem}[dir=rtl] .md-search__icon[for=__search]{right:.5rem}.md-search__icon[for=__search]{position:absolute;top:.3rem;z-index:2}[dir=rtl] .md-search__icon[for=__search] svg{transform:scaleX(-1)}@media screen and (max-width:59.984375em){[dir=ltr] .md-search__icon[for=__search]{left:.8rem}[dir=rtl] .md-search__icon[for=__search]{right:.8rem}.md-search__icon[for=__search]{top:.6rem}.md-search__icon[for=__search] svg:first-child{display:none}}@media screen and (min-width:60em){.md-search__icon[for=__search]{pointer-events:none}.md-search__icon[for=__search] svg:last-child{display:none}}[dir=ltr] .md-search__options{right:.5rem}[dir=rtl] .md-search__options{left:.5rem}.md-search__options{pointer-events:none;position:absolute;top:.3rem;z-index:2}@media screen and (max-width:59.984375em){[dir=ltr] .md-search__options{right:.8rem}[dir=rtl] .md-search__options{left:.8rem}.md-search__options{top:.6rem}}[dir=ltr] .md-search__options>.md-icon{margin-left:.2rem}[dir=rtl] .md-search__options>.md-icon{margin-right:.2rem}.md-search__options>.md-icon{color:var(--md-default-fg-color--light);opacity:0;transform:scale(.75);transition:transform .15s cubic-bezier(.1,.7,.1,1),opacity .15s}.md-search__options>.md-icon:not(.focus-visible){-webkit-tap-highlight-color:transparent;outline:none}[data-md-toggle=search]:checked~.md-header .md-search__input:valid~.md-search__options>.md-icon{opacity:1;pointer-events:auto;transform:scale(1)}[data-md-toggle=search]:checked~.md-header .md-search__input:valid~.md-search__options>.md-icon:hover{opacity:.7}[dir=ltr] .md-search__suggest{padding-left:3.6rem;padding-right:2.2rem}[dir=rtl] .md-search__suggest{padding-left:2.2rem;padding-right:3.6rem}.md-search__suggest{align-items:center;color:var(--md-default-fg-color--lighter);display:flex;font-size:.9rem;height:100%;opacity:0;position:absolute;top:0;transition:opacity 50ms;white-space:nowrap;width:100%}@media screen and (min-width:60em){[dir=ltr] .md-search__suggest{padding-left:2.2rem}[dir=rtl] .md-search__suggest{padding-right:2.2rem}.md-search__suggest{font-size:.8rem}}[data-md-toggle=search]:checked~.md-header .md-search__suggest{opacity:1;transition:opacity .3s .1s}[dir=ltr] .md-search__output{border-bottom-left-radius:.1rem}[dir=ltr] .md-search__output,[dir=rtl] .md-search__output{border-bottom-right-radius:.1rem}[dir=rtl] .md-search__output{border-bottom-left-radius:.1rem}.md-search__output{overflow:hidden;position:absolute;width:100%;z-index:1}@media screen and (max-width:59.984375em){.md-search__output{bottom:0;top:2.4rem}}@media screen and (min-width:60em){.md-search__output{opacity:0;top:1.9rem;transition:opacity .4s}[data-md-toggle=search]:checked~.md-header .md-search__output{box-shadow:var(--md-shadow-z3);opacity:1}}.md-search__scrollwrap{-webkit-backface-visibility:hidden;backface-visibility:hidden;background-color:var(--md-default-bg-color);height:100%;overflow-y:auto;touch-action:pan-y}@media (-webkit-max-device-pixel-ratio:1),(max-resolution:1dppx){.md-search__scrollwrap{transform:translateZ(0)}}@media screen and (min-width:60em) and (max-width:76.234375em){.md-search__scrollwrap{width:23.4rem}}@media screen and (min-width:76.25em){.md-search__scrollwrap{width:34.4rem}}@media screen and (min-width:60em){.md-search__scrollwrap{max-height:0;scrollbar-color:var(--md-default-fg-color--lighter) #0000;scrollbar-width:thin}[data-md-toggle=search]:checked~.md-header .md-search__scrollwrap{max-height:75vh}.md-search__scrollwrap:hover{scrollbar-color:var(--md-accent-fg-color) #0000}.md-search__scrollwrap::-webkit-scrollbar{height:.2rem;width:.2rem}.md-search__scrollwrap::-webkit-scrollbar-thumb{background-color:var(--md-default-fg-color--lighter)}.md-search__scrollwrap::-webkit-scrollbar-thumb:hover{background-color:var(--md-accent-fg-color)}}.md-search-result{color:var(--md-default-fg-color);word-break:break-word}.md-search-result__meta{background-color:var(--md-default-fg-color--lightest);color:var(--md-default-fg-color--light);font-size:.64rem;line-height:1.8rem;padding:0 .8rem;scroll-snap-align:start}@media screen and (min-width:60em){[dir=ltr] .md-search-result__meta{padding-left:2.2rem}[dir=rtl] .md-search-result__meta{padding-right:2.2rem}}.md-search-result__list{list-style:none;margin:0;padding:0;-webkit-user-select:none;user-select:none}.md-search-result__item{box-shadow:0 -.05rem var(--md-default-fg-color--lightest)}.md-search-result__item:first-child{box-shadow:none}.md-search-result__link{display:block;outline:none;scroll-snap-align:start;transition:background-color .25s}.md-search-result__link:focus,.md-search-result__link:hover{background-color:var(--md-accent-fg-color--transparent)}.md-search-result__link:last-child p:last-child{margin-bottom:.6rem}.md-search-result__more>summary{cursor:pointer;display:block;outline:none;position:sticky;scroll-snap-align:start;top:0;z-index:1}.md-search-result__more>summary::marker{display:none}.md-search-result__more>summary::-webkit-details-marker{display:none}.md-search-result__more>summary>div{color:var(--md-typeset-a-color);font-size:.64rem;padding:.75em .8rem;transition:color .25s,background-color .25s}@media screen and (min-width:60em){[dir=ltr] .md-search-result__more>summary>div{padding-left:2.2rem}[dir=rtl] .md-search-result__more>summary>div{padding-right:2.2rem}}.md-search-result__more>summary:focus>div,.md-search-result__more>summary:hover>div{background-color:var(--md-accent-fg-color--transparent);color:var(--md-accent-fg-color)}.md-search-result__more[open]>summary{background-color:var(--md-default-bg-color)}.md-search-result__article{overflow:hidden;padding:0 .8rem;position:relative}@media screen and (min-width:60em){[dir=ltr] .md-search-result__article{padding-left:2.2rem}[dir=rtl] .md-search-result__article{padding-right:2.2rem}}[dir=ltr] .md-search-result__icon{left:0}[dir=rtl] .md-search-result__icon{right:0}.md-search-result__icon{color:var(--md-default-fg-color--light);height:1.2rem;margin:.5rem;position:absolute;width:1.2rem}@media screen and (max-width:59.984375em){.md-search-result__icon{display:none}}.md-search-result__icon:after{background-color:currentcolor;content:"";display:inline-block;height:100%;-webkit-mask-image:var(--md-search-result-icon);mask-image:var(--md-search-result-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:100%}[dir=rtl] .md-search-result__icon:after{transform:scaleX(-1)}.md-search-result .md-typeset{color:var(--md-default-fg-color--light);font-size:.64rem;line-height:1.6}.md-search-result .md-typeset h1{color:var(--md-default-fg-color);font-size:.8rem;font-weight:400;line-height:1.4;margin:.55rem 0}.md-search-result .md-typeset h1 mark{text-decoration:none}.md-search-result .md-typeset h2{color:var(--md-default-fg-color);font-size:.64rem;font-weight:700;line-height:1.6;margin:.5em 0}.md-search-result .md-typeset h2 mark{text-decoration:none}.md-search-result__terms{color:var(--md-default-fg-color);display:block;font-size:.64rem;font-style:italic;margin:.5em 0}.md-search-result mark{background-color:initial;color:var(--md-accent-fg-color);text-decoration:underline}.md-select{position:relative;z-index:1}.md-select__inner{background-color:var(--md-default-bg-color);border-radius:.1rem;box-shadow:var(--md-shadow-z2);color:var(--md-default-fg-color);left:50%;margin-top:.2rem;max-height:0;opacity:0;position:absolute;top:calc(100% - .2rem);transform:translate3d(-50%,.3rem,0);transition:transform .25s 375ms,opacity .25s .25s,max-height 0ms .5s}.md-select:focus-within .md-select__inner,.md-select:hover .md-select__inner{max-height:10rem;opacity:1;transform:translate3d(-50%,0,0);transition:transform .25s cubic-bezier(.1,.7,.1,1),opacity .25s,max-height 0ms}.md-select__inner:after{border-bottom:.2rem solid #0000;border-bottom-color:var(--md-default-bg-color);border-left:.2rem solid #0000;border-right:.2rem solid #0000;border-top:0;content:"";height:0;left:50%;margin-left:-.2rem;margin-top:-.2rem;position:absolute;top:0;width:0}.md-select__list{border-radius:.1rem;font-size:.8rem;list-style-type:none;margin:0;max-height:inherit;overflow:auto;padding:0}.md-select__item{line-height:1.8rem}[dir=ltr] .md-select__link{padding-left:.6rem;padding-right:1.2rem}[dir=rtl] .md-select__link{padding-left:1.2rem;padding-right:.6rem}.md-select__link{cursor:pointer;display:block;outline:none;scroll-snap-align:start;transition:background-color .25s,color .25s;width:100%}.md-select__link:focus,.md-select__link:hover{color:var(--md-accent-fg-color)}.md-select__link:focus{background-color:var(--md-default-fg-color--lightest)}.md-sidebar{align-self:flex-start;flex-shrink:0;padding:1.2rem 0;position:sticky;top:2.4rem;width:12.1rem}@media print{.md-sidebar{display:none}}@media screen and (max-width:76.234375em){[dir=ltr] .md-sidebar--primary{left:-12.1rem}[dir=rtl] .md-sidebar--primary{right:-12.1rem}.md-sidebar--primary{background-color:var(--md-default-bg-color);display:block;height:100%;position:fixed;top:0;transform:translateX(0);transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s;width:12.1rem;z-index:5}[data-md-toggle=drawer]:checked~.md-container .md-sidebar--primary{box-shadow:var(--md-shadow-z3);transform:translateX(12.1rem)}[dir=rtl] [data-md-toggle=drawer]:checked~.md-container .md-sidebar--primary{transform:translateX(-12.1rem)}.md-sidebar--primary .md-sidebar__scrollwrap{bottom:0;left:0;margin:0;overflow:hidden;position:absolute;right:0;scroll-snap-type:none;top:0}}@media screen and (min-width:76.25em){.md-sidebar{height:0}.no-js .md-sidebar{height:auto}.md-header--lifted~.md-container .md-sidebar{top:4.8rem}}.md-sidebar--secondary{display:none;order:2}@media screen and (min-width:60em){.md-sidebar--secondary{height:0}.no-js .md-sidebar--secondary{height:auto}.md-sidebar--secondary:not([hidden]){display:block}.md-sidebar--secondary .md-sidebar__scrollwrap{touch-action:pan-y}}.md-sidebar__scrollwrap{scrollbar-gutter:stable;-webkit-backface-visibility:hidden;backface-visibility:hidden;margin:0 .2rem;overflow-y:auto;scrollbar-color:var(--md-default-fg-color--lighter) #0000;scrollbar-width:thin}.md-sidebar__scrollwrap::-webkit-scrollbar{height:.2rem;width:.2rem}.md-sidebar__scrollwrap:focus-within,.md-sidebar__scrollwrap:hover{scrollbar-color:var(--md-accent-fg-color) #0000}.md-sidebar__scrollwrap:focus-within::-webkit-scrollbar-thumb,.md-sidebar__scrollwrap:hover::-webkit-scrollbar-thumb{background-color:var(--md-default-fg-color--lighter)}.md-sidebar__scrollwrap:focus-within::-webkit-scrollbar-thumb:hover,.md-sidebar__scrollwrap:hover::-webkit-scrollbar-thumb:hover{background-color:var(--md-accent-fg-color)}@supports selector(::-webkit-scrollbar){.md-sidebar__scrollwrap{scrollbar-gutter:auto}[dir=ltr] .md-sidebar__inner{padding-right:calc(100% - 11.5rem)}[dir=rtl] .md-sidebar__inner{padding-left:calc(100% - 11.5rem)}}@media screen and (max-width:76.234375em){.md-overlay{background-color:#0000008a;height:0;opacity:0;position:fixed;top:0;transition:width 0ms .25s,height 0ms .25s,opacity .25s;width:0;z-index:5}[data-md-toggle=drawer]:checked~.md-overlay{height:100%;opacity:1;transition:width 0ms,height 0ms,opacity .25s;width:100%}}@keyframes facts{0%{height:0}to{height:.65rem}}@keyframes fact{0%{opacity:0;transform:translateY(100%)}50%{opacity:0}to{opacity:1;transform:translateY(0)}}:root{--md-source-forks-icon:url('data:image/svg+xml;charset=utf-8,');--md-source-repositories-icon:url('data:image/svg+xml;charset=utf-8,');--md-source-stars-icon:url('data:image/svg+xml;charset=utf-8,');--md-source-version-icon:url('data:image/svg+xml;charset=utf-8,')}.md-source{-webkit-backface-visibility:hidden;backface-visibility:hidden;display:block;font-size:.65rem;line-height:1.2;outline-color:var(--md-accent-fg-color);transition:opacity .25s;white-space:nowrap}.md-source:hover{opacity:.7}.md-source__icon{display:inline-block;height:2.4rem;vertical-align:middle;width:2rem}[dir=ltr] .md-source__icon svg{margin-left:.6rem}[dir=rtl] .md-source__icon svg{margin-right:.6rem}.md-source__icon svg{margin-top:.6rem}[dir=ltr] .md-source__icon+.md-source__repository{padding-left:2rem}[dir=rtl] .md-source__icon+.md-source__repository{padding-right:2rem}[dir=ltr] .md-source__icon+.md-source__repository{margin-left:-2rem}[dir=rtl] .md-source__icon+.md-source__repository{margin-right:-2rem}[dir=ltr] .md-source__repository{margin-left:.6rem}[dir=rtl] .md-source__repository{margin-right:.6rem}.md-source__repository{display:inline-block;max-width:calc(100% - 1.2rem);overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.md-source__facts{display:flex;font-size:.55rem;gap:.4rem;list-style-type:none;margin:.1rem 0 0;opacity:.75;overflow:hidden;padding:0;width:100%}.md-source__repository--active .md-source__facts{animation:facts .25s ease-in}.md-source__fact{overflow:hidden;text-overflow:ellipsis}.md-source__repository--active .md-source__fact{animation:fact .4s ease-out}[dir=ltr] .md-source__fact:before{margin-right:.1rem}[dir=rtl] .md-source__fact:before{margin-left:.1rem}.md-source__fact:before{background-color:currentcolor;content:"";display:inline-block;height:.6rem;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;vertical-align:text-top;width:.6rem}.md-source__fact:nth-child(1n+2){flex-shrink:0}.md-source__fact--version:before{-webkit-mask-image:var(--md-source-version-icon);mask-image:var(--md-source-version-icon)}.md-source__fact--stars:before{-webkit-mask-image:var(--md-source-stars-icon);mask-image:var(--md-source-stars-icon)}.md-source__fact--forks:before{-webkit-mask-image:var(--md-source-forks-icon);mask-image:var(--md-source-forks-icon)}.md-source__fact--repositories:before{-webkit-mask-image:var(--md-source-repositories-icon);mask-image:var(--md-source-repositories-icon)}:root{--md-status:url('data:image/svg+xml;charset=utf-8,');--md-status--new:url('data:image/svg+xml;charset=utf-8,');--md-status--deprecated:url('data:image/svg+xml;charset=utf-8,');--md-status--encrypted:url('data:image/svg+xml;charset=utf-8,')}.md-status:after{background-color:var(--md-default-fg-color--light);content:"";display:inline-block;height:1.125em;-webkit-mask-image:var(--md-status);mask-image:var(--md-status);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;vertical-align:text-bottom;width:1.125em}.md-status:hover:after{background-color:currentcolor}.md-status--new:after{-webkit-mask-image:var(--md-status--new);mask-image:var(--md-status--new)}.md-status--deprecated:after{-webkit-mask-image:var(--md-status--deprecated);mask-image:var(--md-status--deprecated)}.md-status--encrypted:after{-webkit-mask-image:var(--md-status--encrypted);mask-image:var(--md-status--encrypted)}.md-tabs{background-color:var(--md-primary-fg-color);color:var(--md-primary-bg-color);display:block;line-height:1.3;overflow:auto;width:100%;z-index:3}@media print{.md-tabs{display:none}}@media screen and (max-width:76.234375em){.md-tabs{display:none}}.md-tabs[hidden]{pointer-events:none}[dir=ltr] .md-tabs__list{margin-left:.2rem}[dir=rtl] .md-tabs__list{margin-right:.2rem}.md-tabs__list{contain:content;display:flex;list-style:none;margin:0;overflow:auto;padding:0;scrollbar-width:none;white-space:nowrap}.md-tabs__list::-webkit-scrollbar{display:none}.md-tabs__item{height:2.4rem;padding-left:.6rem;padding-right:.6rem}.md-tabs__item--active .md-tabs__link{color:inherit;opacity:1}.md-tabs__link{-webkit-backface-visibility:hidden;backface-visibility:hidden;display:flex;font-size:.7rem;margin-top:.8rem;opacity:.7;outline-color:var(--md-accent-fg-color);outline-offset:.2rem;transition:transform .4s cubic-bezier(.1,.7,.1,1),opacity .25s}.md-tabs__link:focus,.md-tabs__link:hover{color:inherit;opacity:1}[dir=ltr] .md-tabs__link svg{margin-right:.4rem}[dir=rtl] .md-tabs__link svg{margin-left:.4rem}.md-tabs__link svg{fill:currentcolor;height:1.3em}.md-tabs__item:nth-child(2) .md-tabs__link{transition-delay:20ms}.md-tabs__item:nth-child(3) .md-tabs__link{transition-delay:40ms}.md-tabs__item:nth-child(4) .md-tabs__link{transition-delay:60ms}.md-tabs__item:nth-child(5) .md-tabs__link{transition-delay:80ms}.md-tabs__item:nth-child(6) .md-tabs__link{transition-delay:.1s}.md-tabs__item:nth-child(7) .md-tabs__link{transition-delay:.12s}.md-tabs__item:nth-child(8) .md-tabs__link{transition-delay:.14s}.md-tabs__item:nth-child(9) .md-tabs__link{transition-delay:.16s}.md-tabs__item:nth-child(10) .md-tabs__link{transition-delay:.18s}.md-tabs__item:nth-child(11) .md-tabs__link{transition-delay:.2s}.md-tabs__item:nth-child(12) .md-tabs__link{transition-delay:.22s}.md-tabs__item:nth-child(13) .md-tabs__link{transition-delay:.24s}.md-tabs__item:nth-child(14) .md-tabs__link{transition-delay:.26s}.md-tabs__item:nth-child(15) .md-tabs__link{transition-delay:.28s}.md-tabs__item:nth-child(16) .md-tabs__link{transition-delay:.3s}.md-tabs[hidden] .md-tabs__link{opacity:0;transform:translateY(50%);transition:transform 0ms .1s,opacity .1s}:root{--md-tag-icon:url('data:image/svg+xml;charset=utf-8,')}.md-typeset .md-tags:not([hidden]){display:inline-flex;flex-wrap:wrap;gap:.5em;margin-bottom:.75em;margin-top:-.125em}.md-typeset .md-tag{align-items:center;background:var(--md-default-fg-color--lightest);border-radius:2.4rem;display:inline-flex;font-size:.64rem;font-size:min(.8em,.64rem);font-weight:700;gap:.5em;letter-spacing:normal;line-height:1.6;padding:.3125em .78125em}.md-typeset .md-tag[href]{-webkit-tap-highlight-color:transparent;color:inherit;outline:none;transition:color 125ms,background-color 125ms}.md-typeset .md-tag[href]:focus,.md-typeset .md-tag[href]:hover{background-color:var(--md-accent-fg-color);color:var(--md-accent-bg-color)}[id]>.md-typeset .md-tag{vertical-align:text-top}.md-typeset .md-tag-icon:before{background-color:var(--md-default-fg-color--lighter);content:"";display:inline-block;height:1.2em;-webkit-mask-image:var(--md-tag-icon);mask-image:var(--md-tag-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;transition:background-color 125ms;vertical-align:text-bottom;width:1.2em}.md-typeset .md-tag-icon[href]:focus:before,.md-typeset .md-tag-icon[href]:hover:before{background-color:var(--md-accent-bg-color)}@keyframes pulse{0%{transform:scale(.95)}75%{transform:scale(1)}to{transform:scale(.95)}}:root{--md-annotation-bg-icon:url('data:image/svg+xml;charset=utf-8,');--md-annotation-icon:url('data:image/svg+xml;charset=utf-8,');--md-tooltip-width:20rem}.md-tooltip{-webkit-backface-visibility:hidden;backface-visibility:hidden;background-color:var(--md-default-bg-color);border-radius:.1rem;box-shadow:var(--md-shadow-z2);color:var(--md-default-fg-color);font-family:var(--md-text-font-family);left:clamp(var(--md-tooltip-0,0rem) + .8rem,var(--md-tooltip-x),100vw + var(--md-tooltip-0,0rem) + .8rem - var(--md-tooltip-width) - 2 * .8rem);max-width:calc(100vw - 1.6rem);opacity:0;position:absolute;top:var(--md-tooltip-y);transform:translateY(-.4rem);transition:transform 0ms .25s,opacity .25s,z-index .25s;width:var(--md-tooltip-width);z-index:0}.md-tooltip--active{opacity:1;transform:translateY(0);transition:transform .25s cubic-bezier(.1,.7,.1,1),opacity .25s,z-index 0ms;z-index:2}.focus-visible>.md-tooltip,.md-tooltip:target{outline:var(--md-accent-fg-color) auto}.md-tooltip__inner{font-size:.64rem;padding:.8rem}.md-tooltip__inner.md-typeset>:first-child{margin-top:0}.md-tooltip__inner.md-typeset>:last-child{margin-bottom:0}.md-annotation{font-weight:400;outline:none;vertical-align:text-bottom;white-space:normal}[dir=rtl] .md-annotation{direction:rtl}code .md-annotation{font-family:var(--md-code-font-family);font-size:inherit}.md-annotation:not([hidden]){display:inline-block;line-height:1.25}.md-annotation__index{border-radius:.01px;cursor:pointer;display:inline-block;margin-left:.4ch;margin-right:.4ch;outline:none;overflow:hidden;position:relative;-webkit-user-select:none;user-select:none;vertical-align:text-top;z-index:0}.md-annotation .md-annotation__index{transition:z-index .25s}@media screen{.md-annotation__index{width:2.2ch}[data-md-visible]>.md-annotation__index{animation:pulse 2s infinite}.md-annotation__index:before{background:var(--md-default-bg-color);-webkit-mask-image:var(--md-annotation-bg-icon);mask-image:var(--md-annotation-bg-icon)}.md-annotation__index:after,.md-annotation__index:before{content:"";height:2.2ch;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;position:absolute;top:-.1ch;width:2.2ch;z-index:-1}.md-annotation__index:after{background-color:var(--md-default-fg-color--lighter);-webkit-mask-image:var(--md-annotation-icon);mask-image:var(--md-annotation-icon);transform:scale(1.0001);transition:background-color .25s,transform .25s}.md-tooltip--active+.md-annotation__index:after{transform:rotate(45deg)}.md-tooltip--active+.md-annotation__index:after,:hover>.md-annotation__index:after{background-color:var(--md-accent-fg-color)}}.md-tooltip--active+.md-annotation__index{animation-play-state:paused;transition-duration:0ms;z-index:2}.md-annotation__index [data-md-annotation-id]{display:inline-block}@media print{.md-annotation__index [data-md-annotation-id]{background:var(--md-default-fg-color--lighter);border-radius:2ch;color:var(--md-default-bg-color);font-weight:700;padding:0 .6ch;white-space:nowrap}.md-annotation__index [data-md-annotation-id]:after{content:attr(data-md-annotation-id)}}.md-typeset .md-annotation-list{counter-reset:xxx;list-style:none}.md-typeset .md-annotation-list li{position:relative}[dir=ltr] .md-typeset .md-annotation-list li:before{left:-2.125em}[dir=rtl] .md-typeset .md-annotation-list li:before{right:-2.125em}.md-typeset .md-annotation-list li:before{background:var(--md-default-fg-color--lighter);border-radius:2ch;color:var(--md-default-bg-color);content:counter(xxx);counter-increment:xxx;font-size:.8875em;font-weight:700;height:2ch;line-height:1.25;min-width:2ch;padding:0 .6ch;position:absolute;text-align:center;top:.25em}[dir=ltr] .md-top{margin-left:50%}[dir=rtl] .md-top{margin-right:50%}.md-top{background-color:var(--md-default-bg-color);border-radius:1.6rem;box-shadow:var(--md-shadow-z2);color:var(--md-default-fg-color--light);cursor:pointer;display:block;font-size:.7rem;outline:none;padding:.4rem .8rem;position:fixed;top:3.2rem;transform:translate(-50%);transition:color 125ms,background-color 125ms,transform 125ms cubic-bezier(.4,0,.2,1),opacity 125ms;z-index:2}@media print{.md-top{display:none}}[dir=rtl] .md-top{transform:translate(50%)}.md-top[hidden]{opacity:0;pointer-events:none;transform:translate(-50%,.2rem);transition-duration:0ms}[dir=rtl] .md-top[hidden]{transform:translate(50%,.2rem)}.md-top:focus,.md-top:hover{background-color:var(--md-accent-fg-color);color:var(--md-accent-bg-color)}.md-top svg{display:inline-block;vertical-align:-.5em}@keyframes hoverfix{0%{pointer-events:none}}:root{--md-version-icon:url('data:image/svg+xml;charset=utf-8,')}.md-version{flex-shrink:0;font-size:.8rem;height:2.4rem}[dir=ltr] .md-version__current{margin-left:1.4rem;margin-right:.4rem}[dir=rtl] .md-version__current{margin-left:.4rem;margin-right:1.4rem}.md-version__current{color:inherit;cursor:pointer;outline:none;position:relative;top:.05rem}[dir=ltr] .md-version__current:after{margin-left:.4rem}[dir=rtl] .md-version__current:after{margin-right:.4rem}.md-version__current:after{background-color:currentcolor;content:"";display:inline-block;height:.6rem;-webkit-mask-image:var(--md-version-icon);mask-image:var(--md-version-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:.4rem}.md-version__list{background-color:var(--md-default-bg-color);border-radius:.1rem;box-shadow:var(--md-shadow-z2);color:var(--md-default-fg-color);list-style-type:none;margin:.2rem .8rem;max-height:0;opacity:0;overflow:auto;padding:0;position:absolute;scroll-snap-type:y mandatory;top:.15rem;transition:max-height 0ms .5s,opacity .25s .25s;z-index:3}.md-version:focus-within .md-version__list,.md-version:hover .md-version__list{max-height:10rem;opacity:1;transition:max-height 0ms,opacity .25s}@media (hover:none),(pointer:coarse){.md-version:hover .md-version__list{animation:hoverfix .25s forwards}.md-version:focus-within .md-version__list{animation:none}}.md-version__item{line-height:1.8rem}[dir=ltr] .md-version__link{padding-left:.6rem;padding-right:1.2rem}[dir=rtl] .md-version__link{padding-left:1.2rem;padding-right:.6rem}.md-version__link{cursor:pointer;display:block;outline:none;scroll-snap-align:start;transition:color .25s,background-color .25s;white-space:nowrap;width:100%}.md-version__link:focus,.md-version__link:hover{color:var(--md-accent-fg-color)}.md-version__link:focus{background-color:var(--md-default-fg-color--lightest)}:root{--md-admonition-icon--note:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--abstract:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--info:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--tip:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--success:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--question:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--warning:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--failure:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--danger:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--bug:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--example:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--quote:url('data:image/svg+xml;charset=utf-8,')}.md-typeset .admonition,.md-typeset details{background-color:var(--md-admonition-bg-color);border:.075rem solid #448aff;border-radius:.2rem;box-shadow:var(--md-shadow-z1);color:var(--md-admonition-fg-color);display:flow-root;font-size:.64rem;margin:1.5625em 0;padding:0 .6rem;page-break-inside:avoid;transition:box-shadow 125ms}@media print{.md-typeset .admonition,.md-typeset details{box-shadow:none}}.md-typeset .admonition:focus-within,.md-typeset details:focus-within{box-shadow:0 0 0 .2rem #448aff1a}.md-typeset .admonition>*,.md-typeset details>*{box-sizing:border-box}.md-typeset .admonition .admonition,.md-typeset .admonition details,.md-typeset details .admonition,.md-typeset details details{margin-bottom:1em;margin-top:1em}.md-typeset .admonition .md-typeset__scrollwrap,.md-typeset details .md-typeset__scrollwrap{margin:1em -.6rem}.md-typeset .admonition .md-typeset__table,.md-typeset details .md-typeset__table{padding:0 .6rem}.md-typeset .admonition>.tabbed-set:only-child,.md-typeset details>.tabbed-set:only-child{margin-top:0}html .md-typeset .admonition>:last-child,html .md-typeset details>:last-child{margin-bottom:.6rem}[dir=ltr] .md-typeset .admonition-title,[dir=ltr] .md-typeset summary{padding-left:2rem;padding-right:.6rem}[dir=rtl] .md-typeset .admonition-title,[dir=rtl] .md-typeset summary{padding-left:.6rem;padding-right:2rem}[dir=ltr] .md-typeset .admonition-title,[dir=ltr] .md-typeset summary{border-left-width:.2rem}[dir=rtl] .md-typeset .admonition-title,[dir=rtl] .md-typeset summary{border-right-width:.2rem}[dir=ltr] .md-typeset .admonition-title,[dir=ltr] .md-typeset summary{border-top-left-radius:.1rem}[dir=ltr] .md-typeset .admonition-title,[dir=ltr] .md-typeset summary,[dir=rtl] .md-typeset .admonition-title,[dir=rtl] .md-typeset summary{border-top-right-radius:.1rem}[dir=rtl] .md-typeset .admonition-title,[dir=rtl] .md-typeset summary{border-top-left-radius:.1rem}.md-typeset .admonition-title,.md-typeset summary{background-color:#448aff1a;border:none;font-weight:700;margin:0 -.6rem;padding-bottom:.4rem;padding-top:.4rem;position:relative}html .md-typeset .admonition-title:last-child,html .md-typeset summary:last-child{margin-bottom:0}[dir=ltr] .md-typeset .admonition-title:before,[dir=ltr] .md-typeset summary:before{left:.6rem}[dir=rtl] .md-typeset .admonition-title:before,[dir=rtl] .md-typeset summary:before{right:.6rem}.md-typeset .admonition-title:before,.md-typeset summary:before{background-color:#448aff;content:"";height:1rem;-webkit-mask-image:var(--md-admonition-icon--note);mask-image:var(--md-admonition-icon--note);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;position:absolute;top:.625em;width:1rem}.md-typeset .admonition-title code,.md-typeset summary code{box-shadow:0 0 0 .05rem var(--md-default-fg-color--lightest)}.md-typeset .admonition.note,.md-typeset details.note{border-color:#448aff}.md-typeset .admonition.note:focus-within,.md-typeset details.note:focus-within{box-shadow:0 0 0 .2rem #448aff1a}.md-typeset .note>.admonition-title,.md-typeset .note>summary{background-color:#448aff1a}.md-typeset .note>.admonition-title:before,.md-typeset .note>summary:before{background-color:#448aff;-webkit-mask-image:var(--md-admonition-icon--note);mask-image:var(--md-admonition-icon--note)}.md-typeset .note>.admonition-title:after,.md-typeset .note>summary:after{color:#448aff}.md-typeset .admonition.abstract,.md-typeset details.abstract{border-color:#00b0ff}.md-typeset .admonition.abstract:focus-within,.md-typeset details.abstract:focus-within{box-shadow:0 0 0 .2rem #00b0ff1a}.md-typeset .abstract>.admonition-title,.md-typeset .abstract>summary{background-color:#00b0ff1a}.md-typeset .abstract>.admonition-title:before,.md-typeset .abstract>summary:before{background-color:#00b0ff;-webkit-mask-image:var(--md-admonition-icon--abstract);mask-image:var(--md-admonition-icon--abstract)}.md-typeset .abstract>.admonition-title:after,.md-typeset .abstract>summary:after{color:#00b0ff}.md-typeset .admonition.info,.md-typeset details.info{border-color:#00b8d4}.md-typeset .admonition.info:focus-within,.md-typeset details.info:focus-within{box-shadow:0 0 0 .2rem #00b8d41a}.md-typeset .info>.admonition-title,.md-typeset .info>summary{background-color:#00b8d41a}.md-typeset .info>.admonition-title:before,.md-typeset .info>summary:before{background-color:#00b8d4;-webkit-mask-image:var(--md-admonition-icon--info);mask-image:var(--md-admonition-icon--info)}.md-typeset .info>.admonition-title:after,.md-typeset .info>summary:after{color:#00b8d4}.md-typeset .admonition.tip,.md-typeset details.tip{border-color:#00bfa5}.md-typeset .admonition.tip:focus-within,.md-typeset details.tip:focus-within{box-shadow:0 0 0 .2rem #00bfa51a}.md-typeset .tip>.admonition-title,.md-typeset .tip>summary{background-color:#00bfa51a}.md-typeset .tip>.admonition-title:before,.md-typeset .tip>summary:before{background-color:#00bfa5;-webkit-mask-image:var(--md-admonition-icon--tip);mask-image:var(--md-admonition-icon--tip)}.md-typeset .tip>.admonition-title:after,.md-typeset .tip>summary:after{color:#00bfa5}.md-typeset .admonition.success,.md-typeset details.success{border-color:#00c853}.md-typeset .admonition.success:focus-within,.md-typeset details.success:focus-within{box-shadow:0 0 0 .2rem #00c8531a}.md-typeset .success>.admonition-title,.md-typeset .success>summary{background-color:#00c8531a}.md-typeset .success>.admonition-title:before,.md-typeset .success>summary:before{background-color:#00c853;-webkit-mask-image:var(--md-admonition-icon--success);mask-image:var(--md-admonition-icon--success)}.md-typeset .success>.admonition-title:after,.md-typeset .success>summary:after{color:#00c853}.md-typeset .admonition.question,.md-typeset details.question{border-color:#64dd17}.md-typeset .admonition.question:focus-within,.md-typeset details.question:focus-within{box-shadow:0 0 0 .2rem #64dd171a}.md-typeset .question>.admonition-title,.md-typeset .question>summary{background-color:#64dd171a}.md-typeset .question>.admonition-title:before,.md-typeset .question>summary:before{background-color:#64dd17;-webkit-mask-image:var(--md-admonition-icon--question);mask-image:var(--md-admonition-icon--question)}.md-typeset .question>.admonition-title:after,.md-typeset .question>summary:after{color:#64dd17}.md-typeset .admonition.warning,.md-typeset details.warning{border-color:#ff9100}.md-typeset .admonition.warning:focus-within,.md-typeset details.warning:focus-within{box-shadow:0 0 0 .2rem #ff91001a}.md-typeset .warning>.admonition-title,.md-typeset .warning>summary{background-color:#ff91001a}.md-typeset .warning>.admonition-title:before,.md-typeset .warning>summary:before{background-color:#ff9100;-webkit-mask-image:var(--md-admonition-icon--warning);mask-image:var(--md-admonition-icon--warning)}.md-typeset .warning>.admonition-title:after,.md-typeset .warning>summary:after{color:#ff9100}.md-typeset .admonition.failure,.md-typeset details.failure{border-color:#ff5252}.md-typeset .admonition.failure:focus-within,.md-typeset details.failure:focus-within{box-shadow:0 0 0 .2rem #ff52521a}.md-typeset .failure>.admonition-title,.md-typeset .failure>summary{background-color:#ff52521a}.md-typeset .failure>.admonition-title:before,.md-typeset .failure>summary:before{background-color:#ff5252;-webkit-mask-image:var(--md-admonition-icon--failure);mask-image:var(--md-admonition-icon--failure)}.md-typeset .failure>.admonition-title:after,.md-typeset .failure>summary:after{color:#ff5252}.md-typeset .admonition.danger,.md-typeset details.danger{border-color:#ff1744}.md-typeset .admonition.danger:focus-within,.md-typeset details.danger:focus-within{box-shadow:0 0 0 .2rem #ff17441a}.md-typeset .danger>.admonition-title,.md-typeset .danger>summary{background-color:#ff17441a}.md-typeset .danger>.admonition-title:before,.md-typeset .danger>summary:before{background-color:#ff1744;-webkit-mask-image:var(--md-admonition-icon--danger);mask-image:var(--md-admonition-icon--danger)}.md-typeset .danger>.admonition-title:after,.md-typeset .danger>summary:after{color:#ff1744}.md-typeset .admonition.bug,.md-typeset details.bug{border-color:#f50057}.md-typeset .admonition.bug:focus-within,.md-typeset details.bug:focus-within{box-shadow:0 0 0 .2rem #f500571a}.md-typeset .bug>.admonition-title,.md-typeset .bug>summary{background-color:#f500571a}.md-typeset .bug>.admonition-title:before,.md-typeset .bug>summary:before{background-color:#f50057;-webkit-mask-image:var(--md-admonition-icon--bug);mask-image:var(--md-admonition-icon--bug)}.md-typeset .bug>.admonition-title:after,.md-typeset .bug>summary:after{color:#f50057}.md-typeset .admonition.example,.md-typeset details.example{border-color:#7c4dff}.md-typeset .admonition.example:focus-within,.md-typeset details.example:focus-within{box-shadow:0 0 0 .2rem #7c4dff1a}.md-typeset .example>.admonition-title,.md-typeset .example>summary{background-color:#7c4dff1a}.md-typeset .example>.admonition-title:before,.md-typeset .example>summary:before{background-color:#7c4dff;-webkit-mask-image:var(--md-admonition-icon--example);mask-image:var(--md-admonition-icon--example)}.md-typeset .example>.admonition-title:after,.md-typeset .example>summary:after{color:#7c4dff}.md-typeset .admonition.quote,.md-typeset details.quote{border-color:#9e9e9e}.md-typeset .admonition.quote:focus-within,.md-typeset details.quote:focus-within{box-shadow:0 0 0 .2rem #9e9e9e1a}.md-typeset .quote>.admonition-title,.md-typeset .quote>summary{background-color:#9e9e9e1a}.md-typeset .quote>.admonition-title:before,.md-typeset .quote>summary:before{background-color:#9e9e9e;-webkit-mask-image:var(--md-admonition-icon--quote);mask-image:var(--md-admonition-icon--quote)}.md-typeset .quote>.admonition-title:after,.md-typeset .quote>summary:after{color:#9e9e9e}:root{--md-footnotes-icon:url('data:image/svg+xml;charset=utf-8,')}.md-typeset .footnote{color:var(--md-default-fg-color--light);font-size:.64rem}[dir=ltr] .md-typeset .footnote>ol{margin-left:0}[dir=rtl] .md-typeset .footnote>ol{margin-right:0}.md-typeset .footnote>ol>li{transition:color 125ms}.md-typeset .footnote>ol>li:target{color:var(--md-default-fg-color)}.md-typeset .footnote>ol>li:focus-within .footnote-backref{opacity:1;transform:translateX(0);transition:none}.md-typeset .footnote>ol>li:hover .footnote-backref,.md-typeset .footnote>ol>li:target .footnote-backref{opacity:1;transform:translateX(0)}.md-typeset .footnote>ol>li>:first-child{margin-top:0}.md-typeset .footnote-ref{font-size:.75em;font-weight:700}html .md-typeset .footnote-ref{outline-offset:.1rem}.md-typeset [id^="fnref:"]:target>.footnote-ref{outline:auto}.md-typeset .footnote-backref{color:var(--md-typeset-a-color);display:inline-block;font-size:0;opacity:0;transform:translateX(.25rem);transition:color .25s,transform .25s .25s,opacity 125ms .25s;vertical-align:text-bottom}@media print{.md-typeset .footnote-backref{color:var(--md-typeset-a-color);opacity:1;transform:translateX(0)}}[dir=rtl] .md-typeset .footnote-backref{transform:translateX(-.25rem)}.md-typeset .footnote-backref:hover{color:var(--md-accent-fg-color)}.md-typeset .footnote-backref:before{background-color:currentcolor;content:"";display:inline-block;height:.8rem;-webkit-mask-image:var(--md-footnotes-icon);mask-image:var(--md-footnotes-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:.8rem}[dir=rtl] .md-typeset .footnote-backref:before svg{transform:scaleX(-1)}[dir=ltr] .md-typeset .headerlink{margin-left:.5rem}[dir=rtl] .md-typeset .headerlink{margin-right:.5rem}.md-typeset .headerlink{color:var(--md-default-fg-color--lighter);display:inline-block;opacity:0;transition:color .25s,opacity 125ms}@media print{.md-typeset .headerlink{display:none}}.md-typeset .headerlink:focus,.md-typeset :hover>.headerlink,.md-typeset :target>.headerlink{opacity:1;transition:color .25s,opacity 125ms}.md-typeset .headerlink:focus,.md-typeset .headerlink:hover,.md-typeset :target>.headerlink{color:var(--md-accent-fg-color)}.md-typeset :target{--md-scroll-margin:3.6rem;--md-scroll-offset:0rem;scroll-margin-top:calc(var(--md-scroll-margin) - var(--md-scroll-offset))}@media screen and (min-width:76.25em){.md-header--lifted~.md-container .md-typeset :target{--md-scroll-margin:6rem}}.md-typeset h1:target,.md-typeset h2:target,.md-typeset h3:target{--md-scroll-offset:0.2rem}.md-typeset h4:target{--md-scroll-offset:0.15rem}.md-typeset div.arithmatex{overflow:auto}@media screen and (max-width:44.984375em){.md-typeset div.arithmatex{margin:0 -.8rem}}.md-typeset div.arithmatex>*{margin-left:auto!important;margin-right:auto!important;padding:0 .8rem;touch-action:auto;width:-webkit-min-content;width:min-content}.md-typeset div.arithmatex>* mjx-container{margin:0!important}.md-typeset del.critic{background-color:var(--md-typeset-del-color)}.md-typeset del.critic,.md-typeset ins.critic{-webkit-box-decoration-break:clone;box-decoration-break:clone}.md-typeset ins.critic{background-color:var(--md-typeset-ins-color)}.md-typeset .critic.comment{-webkit-box-decoration-break:clone;box-decoration-break:clone;color:var(--md-code-hl-comment-color)}.md-typeset .critic.comment:before{content:"/* "}.md-typeset .critic.comment:after{content:" */"}.md-typeset .critic.block{box-shadow:none;display:block;margin:1em 0;overflow:auto;padding-left:.8rem;padding-right:.8rem}.md-typeset .critic.block>:first-child{margin-top:.5em}.md-typeset .critic.block>:last-child{margin-bottom:.5em}:root{--md-details-icon:url('data:image/svg+xml;charset=utf-8,')}.md-typeset details{display:flow-root;overflow:visible;padding-top:0}.md-typeset details[open]>summary:after{transform:rotate(90deg)}.md-typeset details:not([open]){box-shadow:none;padding-bottom:0}.md-typeset details:not([open])>summary{border-radius:.1rem}[dir=ltr] .md-typeset summary{padding-right:1.8rem}[dir=rtl] .md-typeset summary{padding-left:1.8rem}[dir=ltr] .md-typeset summary{border-top-left-radius:.1rem}[dir=ltr] .md-typeset summary,[dir=rtl] .md-typeset summary{border-top-right-radius:.1rem}[dir=rtl] .md-typeset summary{border-top-left-radius:.1rem}.md-typeset summary{cursor:pointer;display:block;min-height:1rem}.md-typeset summary.focus-visible{outline-color:var(--md-accent-fg-color);outline-offset:.2rem}.md-typeset summary:not(.focus-visible){-webkit-tap-highlight-color:transparent;outline:none}[dir=ltr] .md-typeset summary:after{right:.4rem}[dir=rtl] .md-typeset summary:after{left:.4rem}.md-typeset summary:after{background-color:currentcolor;content:"";height:1rem;-webkit-mask-image:var(--md-details-icon);mask-image:var(--md-details-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;position:absolute;top:.625em;transform:rotate(0deg);transition:transform .25s;width:1rem}[dir=rtl] .md-typeset summary:after{transform:rotate(180deg)}.md-typeset summary::marker{display:none}.md-typeset summary::-webkit-details-marker{display:none}.md-typeset .emojione,.md-typeset .gemoji,.md-typeset .twemoji{display:inline-flex;height:1.125em;vertical-align:text-top}.md-typeset .emojione svg,.md-typeset .gemoji svg,.md-typeset .twemoji svg{fill:currentcolor;max-height:100%;width:1.125em}.highlight .o,.highlight .ow{color:var(--md-code-hl-operator-color)}.highlight .p{color:var(--md-code-hl-punctuation-color)}.highlight .cpf,.highlight .l,.highlight .s,.highlight .s1,.highlight .s2,.highlight .sb,.highlight .sc,.highlight .si,.highlight .ss{color:var(--md-code-hl-string-color)}.highlight .cp,.highlight .se,.highlight .sh,.highlight .sr,.highlight .sx{color:var(--md-code-hl-special-color)}.highlight .il,.highlight .m,.highlight .mb,.highlight .mf,.highlight .mh,.highlight .mi,.highlight .mo{color:var(--md-code-hl-number-color)}.highlight .k,.highlight .kd,.highlight .kn,.highlight .kp,.highlight .kr,.highlight .kt{color:var(--md-code-hl-keyword-color)}.highlight .kc,.highlight .n{color:var(--md-code-hl-name-color)}.highlight .bp,.highlight .nb,.highlight .no{color:var(--md-code-hl-constant-color)}.highlight .nc,.highlight .ne,.highlight .nf,.highlight .nn{color:var(--md-code-hl-function-color)}.highlight .nd,.highlight .ni,.highlight .nl,.highlight .nt{color:var(--md-code-hl-keyword-color)}.highlight .c,.highlight .c1,.highlight .ch,.highlight .cm,.highlight .cs,.highlight .sd{color:var(--md-code-hl-comment-color)}.highlight .na,.highlight .nv,.highlight .vc,.highlight .vg,.highlight .vi{color:var(--md-code-hl-variable-color)}.highlight .ge,.highlight .gh,.highlight .go,.highlight .gp,.highlight .gr,.highlight .gs,.highlight .gt,.highlight .gu{color:var(--md-code-hl-generic-color)}.highlight .gd,.highlight .gi{border-radius:.1rem;margin:0 -.125em;padding:0 .125em}.highlight .gd{background-color:var(--md-typeset-del-color)}.highlight .gi{background-color:var(--md-typeset-ins-color)}.highlight .hll{background-color:var(--md-code-hl-color--light);box-shadow:2px 0 0 0 var(--md-code-hl-color) inset;display:block;margin:0 -1.1764705882em;padding:0 1.1764705882em}.highlight span.filename{background-color:var(--md-code-bg-color);border-bottom:.05rem solid var(--md-default-fg-color--lightest);border-top-left-radius:.1rem;border-top-right-radius:.1rem;display:flow-root;font-size:.85em;font-weight:700;margin-top:1em;padding:.6617647059em 1.1764705882em;position:relative}.highlight span.filename+pre{margin-top:0}.highlight span.filename+pre>code{border-top-left-radius:0;border-top-right-radius:0}.highlight [data-linenos]:before{background-color:var(--md-code-bg-color);box-shadow:-.05rem 0 var(--md-default-fg-color--lightest) inset;color:var(--md-default-fg-color--light);content:attr(data-linenos);float:left;left:-1.1764705882em;margin-left:-1.1764705882em;margin-right:1.1764705882em;padding-left:1.1764705882em;position:sticky;-webkit-user-select:none;user-select:none;z-index:3}.highlight code a[id]{position:absolute;visibility:hidden}.highlight code[data-md-copying] .hll{display:contents}.highlight code[data-md-copying] .md-annotation{display:none}.highlighttable{display:flow-root}.highlighttable tbody,.highlighttable td{display:block;padding:0}.highlighttable tr{display:flex}.highlighttable pre{margin:0}.highlighttable th.filename{flex-grow:1;padding:0;text-align:left}.highlighttable th.filename span.filename{margin-top:0}.highlighttable .linenos{background-color:var(--md-code-bg-color);border-bottom-left-radius:.1rem;border-top-left-radius:.1rem;font-size:.85em;padding:.7720588235em 0 .7720588235em 1.1764705882em;-webkit-user-select:none;user-select:none}.highlighttable .linenodiv{box-shadow:-.05rem 0 var(--md-default-fg-color--lightest) inset;padding-right:.5882352941em}.highlighttable .linenodiv pre{color:var(--md-default-fg-color--light);text-align:right}.highlighttable .code{flex:1;min-width:0}.linenodiv a{color:inherit}.md-typeset .highlighttable{direction:ltr;margin:1em 0}.md-typeset .highlighttable>tbody>tr>.code>div>pre>code{border-bottom-left-radius:0;border-top-left-radius:0}.md-typeset .highlight+.result{border:.05rem solid var(--md-code-bg-color);border-bottom-left-radius:.1rem;border-bottom-right-radius:.1rem;border-top-width:.1rem;margin-top:-1.125em;overflow:visible;padding:0 1em}.md-typeset .highlight+.result:after{clear:both;content:"";display:block}@media screen and (max-width:44.984375em){.md-content__inner>.highlight{margin:1em -.8rem}.md-content__inner>.highlight>.filename,.md-content__inner>.highlight>.highlighttable>tbody>tr>.code>div>pre>code,.md-content__inner>.highlight>.highlighttable>tbody>tr>.filename span.filename,.md-content__inner>.highlight>.highlighttable>tbody>tr>.linenos,.md-content__inner>.highlight>pre>code{border-radius:0}.md-content__inner>.highlight+.result{border-left-width:0;border-radius:0;border-right-width:0;margin-left:-.8rem;margin-right:-.8rem}}.md-typeset .keys kbd:after,.md-typeset .keys kbd:before{-moz-osx-font-smoothing:initial;-webkit-font-smoothing:initial;color:inherit;margin:0;position:relative}.md-typeset .keys span{color:var(--md-default-fg-color--light);padding:0 .2em}.md-typeset .keys .key-alt:before,.md-typeset .keys .key-left-alt:before,.md-typeset .keys .key-right-alt:before{content:"⎇";padding-right:.4em}.md-typeset .keys .key-command:before,.md-typeset .keys .key-left-command:before,.md-typeset .keys .key-right-command:before{content:"⌘";padding-right:.4em}.md-typeset .keys .key-control:before,.md-typeset .keys .key-left-control:before,.md-typeset .keys .key-right-control:before{content:"⌃";padding-right:.4em}.md-typeset .keys .key-left-meta:before,.md-typeset .keys .key-meta:before,.md-typeset .keys .key-right-meta:before{content:"◆";padding-right:.4em}.md-typeset .keys .key-left-option:before,.md-typeset .keys .key-option:before,.md-typeset .keys .key-right-option:before{content:"⌥";padding-right:.4em}.md-typeset .keys .key-left-shift:before,.md-typeset .keys .key-right-shift:before,.md-typeset .keys .key-shift:before{content:"⇧";padding-right:.4em}.md-typeset .keys .key-left-super:before,.md-typeset .keys .key-right-super:before,.md-typeset .keys .key-super:before{content:"❖";padding-right:.4em}.md-typeset .keys .key-left-windows:before,.md-typeset .keys .key-right-windows:before,.md-typeset .keys .key-windows:before{content:"⊞";padding-right:.4em}.md-typeset .keys .key-arrow-down:before{content:"↓";padding-right:.4em}.md-typeset .keys .key-arrow-left:before{content:"←";padding-right:.4em}.md-typeset .keys .key-arrow-right:before{content:"→";padding-right:.4em}.md-typeset .keys .key-arrow-up:before{content:"↑";padding-right:.4em}.md-typeset .keys .key-backspace:before{content:"⌫";padding-right:.4em}.md-typeset .keys .key-backtab:before{content:"⇤";padding-right:.4em}.md-typeset .keys .key-caps-lock:before{content:"⇪";padding-right:.4em}.md-typeset .keys .key-clear:before{content:"⌧";padding-right:.4em}.md-typeset .keys .key-context-menu:before{content:"☰";padding-right:.4em}.md-typeset .keys .key-delete:before{content:"⌦";padding-right:.4em}.md-typeset .keys .key-eject:before{content:"⏏";padding-right:.4em}.md-typeset .keys .key-end:before{content:"⤓";padding-right:.4em}.md-typeset .keys .key-escape:before{content:"⎋";padding-right:.4em}.md-typeset .keys .key-home:before{content:"⤒";padding-right:.4em}.md-typeset .keys .key-insert:before{content:"⎀";padding-right:.4em}.md-typeset .keys .key-page-down:before{content:"⇟";padding-right:.4em}.md-typeset .keys .key-page-up:before{content:"⇞";padding-right:.4em}.md-typeset .keys .key-print-screen:before{content:"⎙";padding-right:.4em}.md-typeset .keys .key-tab:after{content:"⇥";padding-left:.4em}.md-typeset .keys .key-num-enter:after{content:"⌤";padding-left:.4em}.md-typeset .keys .key-enter:after{content:"⏎";padding-left:.4em}:root{--md-tabbed-icon--prev:url('data:image/svg+xml;charset=utf-8,');--md-tabbed-icon--next:url('data:image/svg+xml;charset=utf-8,')}.md-typeset .tabbed-set{border-radius:.1rem;display:flex;flex-flow:column wrap;margin:1em 0;position:relative}.md-typeset .tabbed-set>input{height:0;opacity:0;position:absolute;width:0}.md-typeset .tabbed-set>input:target{--md-scroll-offset:0.625em}.md-typeset .tabbed-set>input.focus-visible~.tabbed-labels:before{background-color:var(--md-accent-fg-color)}.md-typeset .tabbed-labels{-ms-overflow-style:none;box-shadow:0 -.05rem var(--md-default-fg-color--lightest) inset;display:flex;max-width:100%;overflow:auto;scrollbar-width:none}@media print{.md-typeset .tabbed-labels{display:contents}}@media screen{.js .md-typeset .tabbed-labels{position:relative}.js .md-typeset .tabbed-labels:before{background:var(--md-default-fg-color);bottom:0;content:"";display:block;height:2px;left:0;position:absolute;transform:translateX(var(--md-indicator-x));transition:width 225ms,background-color .25s,transform .25s;transition-timing-function:cubic-bezier(.4,0,.2,1);width:var(--md-indicator-width)}}.md-typeset .tabbed-labels::-webkit-scrollbar{display:none}.md-typeset .tabbed-labels>label{border-bottom:.1rem solid #0000;border-radius:.1rem .1rem 0 0;color:var(--md-default-fg-color--light);cursor:pointer;flex-shrink:0;font-size:.64rem;font-weight:700;padding:.78125em 1.25em .625em;scroll-margin-inline-start:1rem;transition:background-color .25s,color .25s;white-space:nowrap;width:auto}@media print{.md-typeset .tabbed-labels>label:first-child{order:1}.md-typeset .tabbed-labels>label:nth-child(2){order:2}.md-typeset .tabbed-labels>label:nth-child(3){order:3}.md-typeset .tabbed-labels>label:nth-child(4){order:4}.md-typeset .tabbed-labels>label:nth-child(5){order:5}.md-typeset .tabbed-labels>label:nth-child(6){order:6}.md-typeset .tabbed-labels>label:nth-child(7){order:7}.md-typeset .tabbed-labels>label:nth-child(8){order:8}.md-typeset .tabbed-labels>label:nth-child(9){order:9}.md-typeset .tabbed-labels>label:nth-child(10){order:10}.md-typeset .tabbed-labels>label:nth-child(11){order:11}.md-typeset .tabbed-labels>label:nth-child(12){order:12}.md-typeset .tabbed-labels>label:nth-child(13){order:13}.md-typeset .tabbed-labels>label:nth-child(14){order:14}.md-typeset .tabbed-labels>label:nth-child(15){order:15}.md-typeset .tabbed-labels>label:nth-child(16){order:16}.md-typeset .tabbed-labels>label:nth-child(17){order:17}.md-typeset .tabbed-labels>label:nth-child(18){order:18}.md-typeset .tabbed-labels>label:nth-child(19){order:19}.md-typeset .tabbed-labels>label:nth-child(20){order:20}}.md-typeset .tabbed-labels>label:hover{color:var(--md-default-fg-color)}.md-typeset .tabbed-content{width:100%}@media print{.md-typeset .tabbed-content{display:contents}}.md-typeset .tabbed-block{display:none}@media print{.md-typeset .tabbed-block{display:block}.md-typeset .tabbed-block:first-child{order:1}.md-typeset .tabbed-block:nth-child(2){order:2}.md-typeset .tabbed-block:nth-child(3){order:3}.md-typeset .tabbed-block:nth-child(4){order:4}.md-typeset .tabbed-block:nth-child(5){order:5}.md-typeset .tabbed-block:nth-child(6){order:6}.md-typeset .tabbed-block:nth-child(7){order:7}.md-typeset .tabbed-block:nth-child(8){order:8}.md-typeset .tabbed-block:nth-child(9){order:9}.md-typeset .tabbed-block:nth-child(10){order:10}.md-typeset .tabbed-block:nth-child(11){order:11}.md-typeset .tabbed-block:nth-child(12){order:12}.md-typeset .tabbed-block:nth-child(13){order:13}.md-typeset .tabbed-block:nth-child(14){order:14}.md-typeset .tabbed-block:nth-child(15){order:15}.md-typeset .tabbed-block:nth-child(16){order:16}.md-typeset .tabbed-block:nth-child(17){order:17}.md-typeset .tabbed-block:nth-child(18){order:18}.md-typeset .tabbed-block:nth-child(19){order:19}.md-typeset .tabbed-block:nth-child(20){order:20}}.md-typeset .tabbed-block>.highlight:first-child>pre,.md-typeset .tabbed-block>pre:first-child{margin:0}.md-typeset .tabbed-block>.highlight:first-child>pre>code,.md-typeset .tabbed-block>pre:first-child>code{border-top-left-radius:0;border-top-right-radius:0}.md-typeset .tabbed-block>.highlight:first-child>.filename{border-top-left-radius:0;border-top-right-radius:0;margin:0}.md-typeset .tabbed-block>.highlight:first-child>.highlighttable{margin:0}.md-typeset .tabbed-block>.highlight:first-child>.highlighttable>tbody>tr>.filename span.filename,.md-typeset .tabbed-block>.highlight:first-child>.highlighttable>tbody>tr>.linenos{border-top-left-radius:0;border-top-right-radius:0;margin:0}.md-typeset .tabbed-block>.highlight:first-child>.highlighttable>tbody>tr>.code>div>pre>code{border-top-left-radius:0;border-top-right-radius:0}.md-typeset .tabbed-block>.highlight:first-child+.result{margin-top:-.125em}.md-typeset .tabbed-block>.tabbed-set{margin:0}.md-typeset .tabbed-button{align-self:center;border-radius:100%;color:var(--md-default-fg-color--light);cursor:pointer;display:block;height:.9rem;margin-top:.1rem;pointer-events:auto;transition:background-color .25s;width:.9rem}.md-typeset .tabbed-button:hover{background-color:var(--md-accent-fg-color--transparent);color:var(--md-accent-fg-color)}.md-typeset .tabbed-button:after{background-color:currentcolor;content:"";display:block;height:100%;-webkit-mask-image:var(--md-tabbed-icon--prev);mask-image:var(--md-tabbed-icon--prev);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;transition:background-color .25s,transform .25s;width:100%}.md-typeset .tabbed-control{background:linear-gradient(to right,var(--md-default-bg-color) 60%,#0000);display:flex;height:1.9rem;justify-content:start;pointer-events:none;position:absolute;transition:opacity 125ms;width:1.2rem}[dir=rtl] .md-typeset .tabbed-control{transform:rotate(180deg)}.md-typeset .tabbed-control[hidden]{opacity:0}.md-typeset .tabbed-control--next{background:linear-gradient(to left,var(--md-default-bg-color) 60%,#0000);justify-content:end;right:0}.md-typeset .tabbed-control--next .tabbed-button:after{-webkit-mask-image:var(--md-tabbed-icon--next);mask-image:var(--md-tabbed-icon--next)}@media screen and (max-width:44.984375em){[dir=ltr] .md-content__inner>.tabbed-set .tabbed-labels{padding-left:.8rem}[dir=rtl] .md-content__inner>.tabbed-set .tabbed-labels{padding-right:.8rem}.md-content__inner>.tabbed-set .tabbed-labels{margin:0 -.8rem;max-width:100vw;scroll-padding-inline-start:.8rem}[dir=ltr] .md-content__inner>.tabbed-set .tabbed-labels:after{padding-right:.8rem}[dir=rtl] .md-content__inner>.tabbed-set .tabbed-labels:after{padding-left:.8rem}.md-content__inner>.tabbed-set .tabbed-labels:after{content:""}[dir=ltr] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--prev{padding-left:.8rem}[dir=rtl] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--prev{padding-right:.8rem}[dir=ltr] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--prev{margin-left:-.8rem}[dir=rtl] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--prev{margin-right:-.8rem}.md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--prev{width:2rem}[dir=ltr] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--next{padding-right:.8rem}[dir=rtl] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--next{padding-left:.8rem}[dir=ltr] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--next{margin-right:-.8rem}[dir=rtl] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--next{margin-left:-.8rem}.md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--next{width:2rem}}@media screen{.md-typeset .tabbed-set>input:first-child:checked~.tabbed-labels>:first-child,.md-typeset .tabbed-set>input:nth-child(10):checked~.tabbed-labels>:nth-child(10),.md-typeset .tabbed-set>input:nth-child(11):checked~.tabbed-labels>:nth-child(11),.md-typeset .tabbed-set>input:nth-child(12):checked~.tabbed-labels>:nth-child(12),.md-typeset .tabbed-set>input:nth-child(13):checked~.tabbed-labels>:nth-child(13),.md-typeset .tabbed-set>input:nth-child(14):checked~.tabbed-labels>:nth-child(14),.md-typeset .tabbed-set>input:nth-child(15):checked~.tabbed-labels>:nth-child(15),.md-typeset .tabbed-set>input:nth-child(16):checked~.tabbed-labels>:nth-child(16),.md-typeset .tabbed-set>input:nth-child(17):checked~.tabbed-labels>:nth-child(17),.md-typeset .tabbed-set>input:nth-child(18):checked~.tabbed-labels>:nth-child(18),.md-typeset .tabbed-set>input:nth-child(19):checked~.tabbed-labels>:nth-child(19),.md-typeset .tabbed-set>input:nth-child(2):checked~.tabbed-labels>:nth-child(2),.md-typeset .tabbed-set>input:nth-child(20):checked~.tabbed-labels>:nth-child(20),.md-typeset .tabbed-set>input:nth-child(3):checked~.tabbed-labels>:nth-child(3),.md-typeset .tabbed-set>input:nth-child(4):checked~.tabbed-labels>:nth-child(4),.md-typeset .tabbed-set>input:nth-child(5):checked~.tabbed-labels>:nth-child(5),.md-typeset .tabbed-set>input:nth-child(6):checked~.tabbed-labels>:nth-child(6),.md-typeset .tabbed-set>input:nth-child(7):checked~.tabbed-labels>:nth-child(7),.md-typeset .tabbed-set>input:nth-child(8):checked~.tabbed-labels>:nth-child(8),.md-typeset .tabbed-set>input:nth-child(9):checked~.tabbed-labels>:nth-child(9){color:var(--md-default-fg-color)}.md-typeset .no-js .tabbed-set>input:first-child:checked~.tabbed-labels>:first-child,.md-typeset .no-js .tabbed-set>input:nth-child(10):checked~.tabbed-labels>:nth-child(10),.md-typeset .no-js .tabbed-set>input:nth-child(11):checked~.tabbed-labels>:nth-child(11),.md-typeset .no-js .tabbed-set>input:nth-child(12):checked~.tabbed-labels>:nth-child(12),.md-typeset .no-js .tabbed-set>input:nth-child(13):checked~.tabbed-labels>:nth-child(13),.md-typeset .no-js .tabbed-set>input:nth-child(14):checked~.tabbed-labels>:nth-child(14),.md-typeset .no-js .tabbed-set>input:nth-child(15):checked~.tabbed-labels>:nth-child(15),.md-typeset .no-js .tabbed-set>input:nth-child(16):checked~.tabbed-labels>:nth-child(16),.md-typeset .no-js .tabbed-set>input:nth-child(17):checked~.tabbed-labels>:nth-child(17),.md-typeset .no-js .tabbed-set>input:nth-child(18):checked~.tabbed-labels>:nth-child(18),.md-typeset .no-js .tabbed-set>input:nth-child(19):checked~.tabbed-labels>:nth-child(19),.md-typeset .no-js .tabbed-set>input:nth-child(2):checked~.tabbed-labels>:nth-child(2),.md-typeset .no-js .tabbed-set>input:nth-child(20):checked~.tabbed-labels>:nth-child(20),.md-typeset .no-js .tabbed-set>input:nth-child(3):checked~.tabbed-labels>:nth-child(3),.md-typeset .no-js .tabbed-set>input:nth-child(4):checked~.tabbed-labels>:nth-child(4),.md-typeset .no-js .tabbed-set>input:nth-child(5):checked~.tabbed-labels>:nth-child(5),.md-typeset .no-js .tabbed-set>input:nth-child(6):checked~.tabbed-labels>:nth-child(6),.md-typeset .no-js .tabbed-set>input:nth-child(7):checked~.tabbed-labels>:nth-child(7),.md-typeset .no-js .tabbed-set>input:nth-child(8):checked~.tabbed-labels>:nth-child(8),.md-typeset .no-js .tabbed-set>input:nth-child(9):checked~.tabbed-labels>:nth-child(9),.no-js .md-typeset .tabbed-set>input:first-child:checked~.tabbed-labels>:first-child,.no-js .md-typeset .tabbed-set>input:nth-child(10):checked~.tabbed-labels>:nth-child(10),.no-js .md-typeset .tabbed-set>input:nth-child(11):checked~.tabbed-labels>:nth-child(11),.no-js .md-typeset .tabbed-set>input:nth-child(12):checked~.tabbed-labels>:nth-child(12),.no-js .md-typeset .tabbed-set>input:nth-child(13):checked~.tabbed-labels>:nth-child(13),.no-js .md-typeset .tabbed-set>input:nth-child(14):checked~.tabbed-labels>:nth-child(14),.no-js .md-typeset .tabbed-set>input:nth-child(15):checked~.tabbed-labels>:nth-child(15),.no-js .md-typeset .tabbed-set>input:nth-child(16):checked~.tabbed-labels>:nth-child(16),.no-js .md-typeset .tabbed-set>input:nth-child(17):checked~.tabbed-labels>:nth-child(17),.no-js .md-typeset .tabbed-set>input:nth-child(18):checked~.tabbed-labels>:nth-child(18),.no-js .md-typeset .tabbed-set>input:nth-child(19):checked~.tabbed-labels>:nth-child(19),.no-js .md-typeset .tabbed-set>input:nth-child(2):checked~.tabbed-labels>:nth-child(2),.no-js .md-typeset .tabbed-set>input:nth-child(20):checked~.tabbed-labels>:nth-child(20),.no-js .md-typeset .tabbed-set>input:nth-child(3):checked~.tabbed-labels>:nth-child(3),.no-js .md-typeset .tabbed-set>input:nth-child(4):checked~.tabbed-labels>:nth-child(4),.no-js .md-typeset .tabbed-set>input:nth-child(5):checked~.tabbed-labels>:nth-child(5),.no-js .md-typeset .tabbed-set>input:nth-child(6):checked~.tabbed-labels>:nth-child(6),.no-js .md-typeset .tabbed-set>input:nth-child(7):checked~.tabbed-labels>:nth-child(7),.no-js .md-typeset .tabbed-set>input:nth-child(8):checked~.tabbed-labels>:nth-child(8),.no-js .md-typeset .tabbed-set>input:nth-child(9):checked~.tabbed-labels>:nth-child(9){border-color:var(--md-default-fg-color)}}.md-typeset .tabbed-set>input:first-child.focus-visible~.tabbed-labels>:first-child,.md-typeset .tabbed-set>input:nth-child(10).focus-visible~.tabbed-labels>:nth-child(10),.md-typeset .tabbed-set>input:nth-child(11).focus-visible~.tabbed-labels>:nth-child(11),.md-typeset .tabbed-set>input:nth-child(12).focus-visible~.tabbed-labels>:nth-child(12),.md-typeset .tabbed-set>input:nth-child(13).focus-visible~.tabbed-labels>:nth-child(13),.md-typeset .tabbed-set>input:nth-child(14).focus-visible~.tabbed-labels>:nth-child(14),.md-typeset .tabbed-set>input:nth-child(15).focus-visible~.tabbed-labels>:nth-child(15),.md-typeset .tabbed-set>input:nth-child(16).focus-visible~.tabbed-labels>:nth-child(16),.md-typeset .tabbed-set>input:nth-child(17).focus-visible~.tabbed-labels>:nth-child(17),.md-typeset .tabbed-set>input:nth-child(18).focus-visible~.tabbed-labels>:nth-child(18),.md-typeset .tabbed-set>input:nth-child(19).focus-visible~.tabbed-labels>:nth-child(19),.md-typeset .tabbed-set>input:nth-child(2).focus-visible~.tabbed-labels>:nth-child(2),.md-typeset .tabbed-set>input:nth-child(20).focus-visible~.tabbed-labels>:nth-child(20),.md-typeset .tabbed-set>input:nth-child(3).focus-visible~.tabbed-labels>:nth-child(3),.md-typeset .tabbed-set>input:nth-child(4).focus-visible~.tabbed-labels>:nth-child(4),.md-typeset .tabbed-set>input:nth-child(5).focus-visible~.tabbed-labels>:nth-child(5),.md-typeset .tabbed-set>input:nth-child(6).focus-visible~.tabbed-labels>:nth-child(6),.md-typeset .tabbed-set>input:nth-child(7).focus-visible~.tabbed-labels>:nth-child(7),.md-typeset .tabbed-set>input:nth-child(8).focus-visible~.tabbed-labels>:nth-child(8),.md-typeset .tabbed-set>input:nth-child(9).focus-visible~.tabbed-labels>:nth-child(9){color:var(--md-accent-fg-color)}.md-typeset .tabbed-set>input:first-child:checked~.tabbed-content>:first-child,.md-typeset .tabbed-set>input:nth-child(10):checked~.tabbed-content>:nth-child(10),.md-typeset .tabbed-set>input:nth-child(11):checked~.tabbed-content>:nth-child(11),.md-typeset .tabbed-set>input:nth-child(12):checked~.tabbed-content>:nth-child(12),.md-typeset .tabbed-set>input:nth-child(13):checked~.tabbed-content>:nth-child(13),.md-typeset .tabbed-set>input:nth-child(14):checked~.tabbed-content>:nth-child(14),.md-typeset .tabbed-set>input:nth-child(15):checked~.tabbed-content>:nth-child(15),.md-typeset .tabbed-set>input:nth-child(16):checked~.tabbed-content>:nth-child(16),.md-typeset .tabbed-set>input:nth-child(17):checked~.tabbed-content>:nth-child(17),.md-typeset .tabbed-set>input:nth-child(18):checked~.tabbed-content>:nth-child(18),.md-typeset .tabbed-set>input:nth-child(19):checked~.tabbed-content>:nth-child(19),.md-typeset .tabbed-set>input:nth-child(2):checked~.tabbed-content>:nth-child(2),.md-typeset .tabbed-set>input:nth-child(20):checked~.tabbed-content>:nth-child(20),.md-typeset .tabbed-set>input:nth-child(3):checked~.tabbed-content>:nth-child(3),.md-typeset .tabbed-set>input:nth-child(4):checked~.tabbed-content>:nth-child(4),.md-typeset .tabbed-set>input:nth-child(5):checked~.tabbed-content>:nth-child(5),.md-typeset .tabbed-set>input:nth-child(6):checked~.tabbed-content>:nth-child(6),.md-typeset .tabbed-set>input:nth-child(7):checked~.tabbed-content>:nth-child(7),.md-typeset .tabbed-set>input:nth-child(8):checked~.tabbed-content>:nth-child(8),.md-typeset .tabbed-set>input:nth-child(9):checked~.tabbed-content>:nth-child(9){display:block}:root{--md-tasklist-icon:url('data:image/svg+xml;charset=utf-8,');--md-tasklist-icon--checked:url('data:image/svg+xml;charset=utf-8,')}.md-typeset .task-list-item{list-style-type:none;position:relative}[dir=ltr] .md-typeset .task-list-item [type=checkbox]{left:-2em}[dir=rtl] .md-typeset .task-list-item [type=checkbox]{right:-2em}.md-typeset .task-list-item [type=checkbox]{position:absolute;top:.45em}.md-typeset .task-list-control [type=checkbox]{opacity:0;z-index:-1}[dir=ltr] .md-typeset .task-list-indicator:before{left:-1.5em}[dir=rtl] .md-typeset .task-list-indicator:before{right:-1.5em}.md-typeset .task-list-indicator:before{background-color:var(--md-default-fg-color--lightest);content:"";height:1.25em;-webkit-mask-image:var(--md-tasklist-icon);mask-image:var(--md-tasklist-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;position:absolute;top:.15em;width:1.25em}.md-typeset [type=checkbox]:checked+.task-list-indicator:before{background-color:#00e676;-webkit-mask-image:var(--md-tasklist-icon--checked);mask-image:var(--md-tasklist-icon--checked)}:root>*{--md-mermaid-font-family:var(--md-text-font-family),sans-serif;--md-mermaid-edge-color:var(--md-code-fg-color);--md-mermaid-node-bg-color:var(--md-accent-fg-color--transparent);--md-mermaid-node-fg-color:var(--md-accent-fg-color);--md-mermaid-label-bg-color:var(--md-default-bg-color);--md-mermaid-label-fg-color:var(--md-code-fg-color);--md-mermaid-sequence-actor-bg-color:var(--md-mermaid-label-bg-color);--md-mermaid-sequence-actor-fg-color:var(--md-mermaid-label-fg-color);--md-mermaid-sequence-actor-border-color:var(--md-mermaid-node-fg-color);--md-mermaid-sequence-actor-line-color:var(--md-default-fg-color--lighter);--md-mermaid-sequence-actorman-bg-color:var(--md-mermaid-label-bg-color);--md-mermaid-sequence-actorman-line-color:var(--md-mermaid-node-fg-color);--md-mermaid-sequence-box-bg-color:var(--md-mermaid-node-bg-color);--md-mermaid-sequence-box-fg-color:var(--md-mermaid-edge-color);--md-mermaid-sequence-label-bg-color:var(--md-mermaid-node-bg-color);--md-mermaid-sequence-label-fg-color:var(--md-mermaid-node-fg-color);--md-mermaid-sequence-loop-bg-color:var(--md-mermaid-node-bg-color);--md-mermaid-sequence-loop-fg-color:var(--md-mermaid-edge-color);--md-mermaid-sequence-loop-border-color:var(--md-mermaid-node-fg-color);--md-mermaid-sequence-message-fg-color:var(--md-mermaid-edge-color);--md-mermaid-sequence-message-line-color:var(--md-mermaid-edge-color);--md-mermaid-sequence-note-bg-color:var(--md-mermaid-label-bg-color);--md-mermaid-sequence-note-fg-color:var(--md-mermaid-edge-color);--md-mermaid-sequence-note-border-color:var(--md-mermaid-label-fg-color);--md-mermaid-sequence-number-bg-color:var(--md-mermaid-node-fg-color);--md-mermaid-sequence-number-fg-color:var(--md-accent-bg-color)}.mermaid{line-height:normal;margin:1em 0}@media screen and (min-width:45em){[dir=ltr] .md-typeset .inline{float:left}[dir=rtl] .md-typeset .inline{float:right}[dir=ltr] .md-typeset .inline{margin-right:.8rem}[dir=rtl] .md-typeset .inline{margin-left:.8rem}.md-typeset .inline{margin-bottom:.8rem;margin-top:0;width:11.7rem}[dir=ltr] .md-typeset .inline.end{float:right}[dir=rtl] .md-typeset .inline.end{float:left}[dir=ltr] .md-typeset .inline.end{margin-left:.8rem;margin-right:0}[dir=rtl] .md-typeset .inline.end{margin-left:0;margin-right:.8rem}} \ No newline at end of file diff --git a/v2.x/assets/stylesheets/main.4b4a2bd9.min.css.map b/v2.x/assets/stylesheets/main.4b4a2bd9.min.css.map new file mode 100644 index 000000000..801360fd4 --- /dev/null +++ b/v2.x/assets/stylesheets/main.4b4a2bd9.min.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["src/templates/assets/stylesheets/main/components/_meta.scss","../../../../src/templates/assets/stylesheets/main.scss","src/templates/assets/stylesheets/main/_resets.scss","src/templates/assets/stylesheets/main/_colors.scss","src/templates/assets/stylesheets/main/_icons.scss","src/templates/assets/stylesheets/main/_typeset.scss","src/templates/assets/stylesheets/utilities/_break.scss","src/templates/assets/stylesheets/main/components/_author.scss","src/templates/assets/stylesheets/main/components/_banner.scss","src/templates/assets/stylesheets/main/components/_base.scss","src/templates/assets/stylesheets/main/components/_clipboard.scss","src/templates/assets/stylesheets/main/components/_consent.scss","src/templates/assets/stylesheets/main/components/_content.scss","src/templates/assets/stylesheets/main/components/_dialog.scss","src/templates/assets/stylesheets/main/components/_feedback.scss","src/templates/assets/stylesheets/main/components/_footer.scss","src/templates/assets/stylesheets/main/components/_form.scss","src/templates/assets/stylesheets/main/components/_header.scss","node_modules/material-design-color/material-color.scss","src/templates/assets/stylesheets/main/components/_nav.scss","src/templates/assets/stylesheets/main/components/_pagination.scss","src/templates/assets/stylesheets/main/components/_post.scss","src/templates/assets/stylesheets/main/components/_progress.scss","src/templates/assets/stylesheets/main/components/_search.scss","src/templates/assets/stylesheets/main/components/_select.scss","src/templates/assets/stylesheets/main/components/_sidebar.scss","src/templates/assets/stylesheets/main/components/_source.scss","src/templates/assets/stylesheets/main/components/_status.scss","src/templates/assets/stylesheets/main/components/_tabs.scss","src/templates/assets/stylesheets/main/components/_tag.scss","src/templates/assets/stylesheets/main/components/_tooltip.scss","src/templates/assets/stylesheets/main/components/_top.scss","src/templates/assets/stylesheets/main/components/_version.scss","src/templates/assets/stylesheets/main/extensions/markdown/_admonition.scss","src/templates/assets/stylesheets/main/extensions/markdown/_footnotes.scss","src/templates/assets/stylesheets/main/extensions/markdown/_toc.scss","src/templates/assets/stylesheets/main/extensions/pymdownx/_arithmatex.scss","src/templates/assets/stylesheets/main/extensions/pymdownx/_critic.scss","src/templates/assets/stylesheets/main/extensions/pymdownx/_details.scss","src/templates/assets/stylesheets/main/extensions/pymdownx/_emoji.scss","src/templates/assets/stylesheets/main/extensions/pymdownx/_highlight.scss","src/templates/assets/stylesheets/main/extensions/pymdownx/_keys.scss","src/templates/assets/stylesheets/main/extensions/pymdownx/_tabbed.scss","src/templates/assets/stylesheets/main/extensions/pymdownx/_tasklist.scss","src/templates/assets/stylesheets/main/integrations/_mermaid.scss","src/templates/assets/stylesheets/main/_modifiers.scss"],"names":[],"mappings":"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oBhCoxGJ,CgCjxGI,sFACE,gChCmxGN,CgC9wGE,oEACE,0BhCixGJ,CgC9wGI,kFACE,wBAlBG,CAmBH,qDAAA,CAAA,6ChCgxGN,CgC5wGI,gFACE,ahC8wGN,CgCnyGE,4DACE,oBhCsyGJ,CgCnyGI,sFACE,gChCqyGN,CgChyGE,oEACE,0BhCmyGJ,CgChyGI,kFACE,wBAlBG,CAmBH,qDAAA,CAAA,6ChCkyGN,CgC9xGI,gFACE,ahCgyGN,CgCrzGE,0DACE,oBhCwzGJ,CgCrzGI,oFACE,gChCuzGN,CgClzGE,kEACE,0BhCqzGJ,CgClzGI,gFACE,wBAlBG,CAmBH,oDAAA,CAAA,4ChCozGN,CgChzGI,8EACE,ahCkzGN,CgCv0GE,oDACE,oBhC00GJ,CgCv0GI,8EACE,gChCy0GN,CgCp0GE,4DACE,0BhCu0GJ,CgCp0GI,0EACE,wBAlBG,CAmBH,iDAAA,CAAA,yChCs0GN,CgCl0GI,wEACE,ahCo0GN,CgCz1GE,4DACE,oBhC41GJ,CgCz1GI,sFACE,gChC21GN,CgCt1GE,oEACE,0BhCy1GJ,CgCt1GI,kFACE,wBAlBG,CAmBH,qDAAA,CAAA,6ChCw1GN,CgCp1GI,gFACE,ahCs1GN,CgC32GE,wDACE,oBhC82GJ,CgC32GI,kFACE,gChC62GN,CgCx2GE,gEACE,0BhC22GJ,CgCx2GI,8EACE,wBAlBG,CAmBH,mDAAA,CAAA,2ChC02GN,CgCt2GI,4EACE,ahCw2GN,CiC5gHA,MACE,wMjC+gHF,CiCtgHE,sBAEE,uCAAA,CADA,gBjC0gHJ,CiCtgHI,mCACE,ajCwgHN,CiCzgHI,mCACE,cjCwgHN,CiCpgHM,4BACE,sBjCsgHR,CiCngHQ,mCACE,gCjCqgHV,CiCjgHQ,2DACE,SAAA,CAEA,uBAAA,CADA,ejCogHV,CiC//GQ,yGACE,SAAA,CACA,uBjCigHV,CiC7/GQ,yCACE,YjC+/GV,CiCx/GE,0BACE,eAAA,CACA,ejC0/GJ,CiCv/GI,+BACE,oBjCy/GN,CiCp/GE,gDACE,YjCs/GJ,CiCl/GE,8BAIE,+BAAA,CAHA,oBAAA,CAEA,WAAA,CAGA,SAAA,CAKA,4BAAA,CAJ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","file":"main.css"} \ No newline at end of file diff --git a/v2.x/assets/stylesheets/main.6a10b989.min.css b/v2.x/assets/stylesheets/main.6a10b989.min.css deleted file mode 100644 index a794f3450..000000000 --- a/v2.x/assets/stylesheets/main.6a10b989.min.css +++ /dev/null @@ -1 +0,0 @@ -@charset "UTF-8";html{-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;box-sizing:border-box}*,:after,:before{box-sizing:inherit}@media (prefers-reduced-motion){*,:after,:before{transition:none!important}}body{margin:0}a,button,input,label{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}hr{border:0;box-sizing:initial;display:block;height:.05rem;overflow:visible;padding:0}small{font-size:80%}sub,sup{line-height:1em}img{border-style:none}table{border-collapse:initial;border-spacing:0}td,th{font-weight:400;vertical-align:top}button{background:#0000;border:0;font-family:inherit;font-size:inherit;margin:0;padding:0}input{border:0;outline:none}:root{--md-primary-fg-color:#4051b5;--md-primary-fg-color--light:#5d6cc0;--md-primary-fg-color--dark:#303fa1;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3;--md-accent-fg-color:#526cfe;--md-accent-fg-color--transparent:#526cfe1a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-scheme=default]{color-scheme:light}[data-md-color-scheme=default] img[src$="#gh-dark-mode-only"],[data-md-color-scheme=default] img[src$="#only-dark"]{display:none}:root,[data-md-color-scheme=default]{--md-hue:225deg;--md-default-fg-color:#000000de;--md-default-fg-color--light:#0000008a;--md-default-fg-color--lighter:#00000052;--md-default-fg-color--lightest:#00000012;--md-default-bg-color:#fff;--md-default-bg-color--light:#ffffffb3;--md-default-bg-color--lighter:#ffffff4d;--md-default-bg-color--lightest:#ffffff1f;--md-code-fg-color:#36464e;--md-code-bg-color:#f5f5f5;--md-code-hl-color:#4287ff;--md-code-hl-color--light:#4287ff1a;--md-code-hl-number-color:#d52a2a;--md-code-hl-special-color:#db1457;--md-code-hl-function-color:#a846b9;--md-code-hl-constant-color:#6e59d9;--md-code-hl-keyword-color:#3f6ec6;--md-code-hl-string-color:#1c7d4d;--md-code-hl-name-color:var(--md-code-fg-color);--md-code-hl-operator-color:var(--md-default-fg-color--light);--md-code-hl-punctuation-color:var(--md-default-fg-color--light);--md-code-hl-comment-color:var(--md-default-fg-color--light);--md-code-hl-generic-color:var(--md-default-fg-color--light);--md-code-hl-variable-color:var(--md-default-fg-color--light);--md-typeset-color:var(--md-default-fg-color);--md-typeset-a-color:var(--md-primary-fg-color);--md-typeset-del-color:#f5503d26;--md-typeset-ins-color:#0bd57026;--md-typeset-kbd-color:#fafafa;--md-typeset-kbd-accent-color:#fff;--md-typeset-kbd-border-color:#b8b8b8;--md-typeset-mark-color:#ffff0080;--md-typeset-table-color:#0000001f;--md-typeset-table-color--light:rgba(0,0,0,.035);--md-admonition-fg-color:var(--md-default-fg-color);--md-admonition-bg-color:var(--md-default-bg-color);--md-warning-fg-color:#000000de;--md-warning-bg-color:#ff9;--md-footer-fg-color:#fff;--md-footer-fg-color--light:#ffffffb3;--md-footer-fg-color--lighter:#ffffff73;--md-footer-bg-color:#000000de;--md-footer-bg-color--dark:#00000052;--md-shadow-z1:0 0.2rem 0.5rem #0000000d,0 0 0.05rem #0000001a;--md-shadow-z2:0 0.2rem 0.5rem #0000001a,0 0 0.05rem #00000040;--md-shadow-z3:0 0.2rem 0.5rem #0003,0 0 0.05rem #00000059}.md-icon svg{fill:currentcolor;display:block;height:1.2rem;width:1.2rem}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--md-text-font-family:var(--md-text-font,_),-apple-system,BlinkMacSystemFont,Helvetica,Arial,sans-serif;--md-code-font-family:var(--md-code-font,_),SFMono-Regular,Consolas,Menlo,monospace}aside,body,input{font-feature-settings:"kern","liga";color:var(--md-typeset-color);font-family:var(--md-text-font-family)}code,kbd,pre{font-feature-settings:"kern";font-family:var(--md-code-font-family)}:root{--md-typeset-table-sort-icon:url('data:image/svg+xml;charset=utf-8,');--md-typeset-table-sort-icon--asc:url('data:image/svg+xml;charset=utf-8,');--md-typeset-table-sort-icon--desc:url('data:image/svg+xml;charset=utf-8,')}.md-typeset{-webkit-print-color-adjust:exact;color-adjust:exact;font-size:.8rem;line-height:1.6}@media print{.md-typeset{font-size:.68rem}}.md-typeset blockquote,.md-typeset dl,.md-typeset figure,.md-typeset ol,.md-typeset pre,.md-typeset ul{margin-bottom:1em;margin-top:1em}.md-typeset h1{color:var(--md-default-fg-color--light);font-size:2em;line-height:1.3;margin:0 0 1.25em}.md-typeset h1,.md-typeset h2{font-weight:300;letter-spacing:-.01em}.md-typeset h2{font-size:1.5625em;line-height:1.4;margin:1.6em 0 .64em}.md-typeset h3{font-size:1.25em;font-weight:400;letter-spacing:-.01em;line-height:1.5;margin:1.6em 0 .8em}.md-typeset h2+h3{margin-top:.8em}.md-typeset h4{font-weight:700;letter-spacing:-.01em;margin:1em 0}.md-typeset h5,.md-typeset h6{color:var(--md-default-fg-color--light);font-size:.8em;font-weight:700;letter-spacing:-.01em;margin:1.25em 0}.md-typeset h5{text-transform:uppercase}.md-typeset hr{border-bottom:.05rem solid var(--md-default-fg-color--lightest);display:flow-root;margin:1.5em 0}.md-typeset a{color:var(--md-typeset-a-color);word-break:break-word}.md-typeset a,.md-typeset a:before{transition:color 125ms}.md-typeset a:focus,.md-typeset a:hover{color:var(--md-accent-fg-color)}.md-typeset a:focus code,.md-typeset a:hover code{background-color:var(--md-accent-fg-color--transparent)}.md-typeset a code{color:currentcolor;transition:background-color 125ms}.md-typeset a.focus-visible{outline-color:var(--md-accent-fg-color);outline-offset:.2rem}.md-typeset code,.md-typeset kbd,.md-typeset pre{color:var(--md-code-fg-color);direction:ltr;font-variant-ligatures:none}@media print{.md-typeset code,.md-typeset kbd,.md-typeset pre{white-space:pre-wrap}}.md-typeset code{background-color:var(--md-code-bg-color);border-radius:.1rem;-webkit-box-decoration-break:clone;box-decoration-break:clone;font-size:.85em;padding:0 .2941176471em;word-break:break-word}.md-typeset code:not(.focus-visible){-webkit-tap-highlight-color:transparent;outline:none}.md-typeset pre{display:flow-root;line-height:1.4;position:relative}.md-typeset pre>code{-webkit-box-decoration-break:slice;box-decoration-break:slice;box-shadow:none;display:block;margin:0;outline-color:var(--md-accent-fg-color);overflow:auto;padding:.7720588235em 1.1764705882em;scrollbar-color:var(--md-default-fg-color--lighter) #0000;scrollbar-width:thin;touch-action:auto;word-break:normal}.md-typeset pre>code:hover{scrollbar-color:var(--md-accent-fg-color) #0000}.md-typeset pre>code::-webkit-scrollbar{height:.2rem;width:.2rem}.md-typeset pre>code::-webkit-scrollbar-thumb{background-color:var(--md-default-fg-color--lighter)}.md-typeset pre>code::-webkit-scrollbar-thumb:hover{background-color:var(--md-accent-fg-color)}.md-typeset kbd{background-color:var(--md-typeset-kbd-color);border-radius:.1rem;box-shadow:0 .1rem 0 .05rem var(--md-typeset-kbd-border-color),0 .1rem 0 var(--md-typeset-kbd-border-color),0 -.1rem .2rem var(--md-typeset-kbd-accent-color) inset;color:var(--md-default-fg-color);display:inline-block;font-size:.75em;padding:0 .6666666667em;vertical-align:text-top;word-break:break-word}.md-typeset mark{background-color:var(--md-typeset-mark-color);-webkit-box-decoration-break:clone;box-decoration-break:clone;color:inherit;word-break:break-word}.md-typeset abbr{border-bottom:.05rem dotted var(--md-default-fg-color--light);cursor:help;text-decoration:none}@media (hover:none){.md-typeset abbr[title]:focus:after,.md-typeset abbr[title]:hover:after{background-color:var(--md-default-fg-color);border-radius:.1rem;box-shadow:var(--md-shadow-z3);color:var(--md-default-bg-color);content:attr(title);font-size:.7rem;left:.8rem;margin-top:2em;padding:.2rem .3rem;position:absolute;right:.8rem}}.md-typeset small{opacity:.75}[dir=ltr] .md-typeset sub,[dir=ltr] .md-typeset sup{margin-left:.078125em}[dir=rtl] .md-typeset sub,[dir=rtl] .md-typeset sup{margin-right:.078125em}[dir=ltr] .md-typeset blockquote{padding-left:.6rem}[dir=rtl] .md-typeset blockquote{padding-right:.6rem}[dir=ltr] .md-typeset blockquote{border-left:.2rem solid var(--md-default-fg-color--lighter)}[dir=rtl] .md-typeset blockquote{border-right:.2rem solid var(--md-default-fg-color--lighter)}.md-typeset blockquote{color:var(--md-default-fg-color--light);margin-left:0;margin-right:0}.md-typeset ul{list-style-type:disc}[dir=ltr] .md-typeset ol,[dir=ltr] .md-typeset ul{margin-left:.625em}[dir=rtl] .md-typeset ol,[dir=rtl] .md-typeset ul{margin-right:.625em}.md-typeset ol,.md-typeset ul{padding:0}.md-typeset ol:not([hidden]),.md-typeset ul:not([hidden]){display:flow-root}.md-typeset ol ol,.md-typeset ul ol{list-style-type:lower-alpha}.md-typeset ol ol ol,.md-typeset ul ol ol{list-style-type:lower-roman}[dir=ltr] .md-typeset ol li,[dir=ltr] .md-typeset ul li{margin-left:1.25em}[dir=rtl] .md-typeset ol li,[dir=rtl] .md-typeset ul li{margin-right:1.25em}.md-typeset ol li,.md-typeset ul li{margin-bottom:.5em}.md-typeset ol li blockquote,.md-typeset ol li p,.md-typeset ul li blockquote,.md-typeset ul li p{margin:.5em 0}.md-typeset ol li:last-child,.md-typeset ul li:last-child{margin-bottom:0}[dir=ltr] .md-typeset ol li ol,[dir=ltr] .md-typeset ol li ul,[dir=ltr] .md-typeset ul li ol,[dir=ltr] .md-typeset ul li ul{margin-left:.625em}[dir=rtl] .md-typeset ol li ol,[dir=rtl] .md-typeset ol li ul,[dir=rtl] .md-typeset ul li ol,[dir=rtl] .md-typeset ul li ul{margin-right:.625em}.md-typeset ol li ol,.md-typeset ol li ul,.md-typeset ul li ol,.md-typeset ul li ul{margin-bottom:.5em;margin-top:.5em}[dir=ltr] .md-typeset dd{margin-left:1.875em}[dir=rtl] .md-typeset dd{margin-right:1.875em}.md-typeset dd{margin-bottom:1.5em;margin-top:1em}.md-typeset img,.md-typeset svg,.md-typeset video{height:auto;max-width:100%}.md-typeset img[align=left]{margin:1em 1em 1em 0}.md-typeset img[align=right]{margin:1em 0 1em 1em}.md-typeset img[align]:only-child{margin-top:0}.md-typeset figure{display:flow-root;margin:1em auto;max-width:100%;text-align:center;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.md-typeset figure img{display:block}.md-typeset figcaption{font-style:italic;margin:1em auto;max-width:24rem}.md-typeset iframe{max-width:100%}.md-typeset table:not([class]){background-color:var(--md-default-bg-color);border:.05rem solid var(--md-typeset-table-color);border-radius:.1rem;display:inline-block;font-size:.64rem;max-width:100%;overflow:auto;touch-action:auto}@media print{.md-typeset table:not([class]){display:table}}.md-typeset table:not([class])+*{margin-top:1.5em}.md-typeset table:not([class]) td>:first-child,.md-typeset table:not([class]) th>:first-child{margin-top:0}.md-typeset table:not([class]) td>:last-child,.md-typeset table:not([class]) th>:last-child{margin-bottom:0}.md-typeset table:not([class]) td:not([align]),.md-typeset table:not([class]) th:not([align]){text-align:left}[dir=rtl] .md-typeset table:not([class]) td:not([align]),[dir=rtl] .md-typeset table:not([class]) th:not([align]){text-align:right}.md-typeset table:not([class]) th{font-weight:700;min-width:5rem;padding:.9375em 1.25em;vertical-align:top}.md-typeset table:not([class]) td{border-top:.05rem solid var(--md-typeset-table-color);padding:.9375em 1.25em;vertical-align:top}.md-typeset table:not([class]) tbody tr{transition:background-color 125ms}.md-typeset table:not([class]) tbody tr:hover{background-color:var(--md-typeset-table-color--light);box-shadow:0 .05rem 0 var(--md-default-bg-color) inset}.md-typeset table:not([class]) a{word-break:normal}.md-typeset table th[role=columnheader]{cursor:pointer}[dir=ltr] .md-typeset table th[role=columnheader]:after{margin-left:.5em}[dir=rtl] .md-typeset table th[role=columnheader]:after{margin-right:.5em}.md-typeset table th[role=columnheader]:after{content:"";display:inline-block;height:1.2em;-webkit-mask-image:var(--md-typeset-table-sort-icon);mask-image:var(--md-typeset-table-sort-icon);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;transition:background-color 125ms;vertical-align:text-bottom;width:1.2em}.md-typeset table th[role=columnheader]:hover:after{background-color:var(--md-default-fg-color--lighter)}.md-typeset table th[role=columnheader][aria-sort=ascending]:after{background-color:var(--md-default-fg-color--light);-webkit-mask-image:var(--md-typeset-table-sort-icon--asc);mask-image:var(--md-typeset-table-sort-icon--asc)}.md-typeset table th[role=columnheader][aria-sort=descending]:after{background-color:var(--md-default-fg-color--light);-webkit-mask-image:var(--md-typeset-table-sort-icon--desc);mask-image:var(--md-typeset-table-sort-icon--desc)}.md-typeset__scrollwrap{margin:1em -.8rem;overflow-x:auto;touch-action:auto}.md-typeset__table{display:inline-block;margin-bottom:.5em;padding:0 .8rem}@media print{.md-typeset__table{display:block}}html .md-typeset__table table{display:table;margin:0;overflow:hidden;width:100%}@media screen and (max-width:44.984375em){.md-content__inner>pre{margin:1em -.8rem}.md-content__inner>pre code{border-radius:0}}.md-typeset .md-author{display:block;flex-shrink:0;height:1.6rem;overflow:hidden;position:relative;transition:color 125ms,transform 125ms;width:1.6rem}.md-typeset .md-author img{border-radius:100%;display:block}.md-typeset .md-author--more{background:var(--md-default-fg-color--lightest);color:var(--md-default-fg-color--lighter);font-size:.6rem;font-weight:700;line-height:1.6rem;text-align:center}.md-typeset .md-author--long{height:2.4rem;width:2.4rem}.md-typeset a.md-author{transform:scale(1)}.md-typeset a.md-author img{filter:grayscale(100%) opacity(75%);transition:filter 125ms}.md-typeset a.md-author:focus,.md-typeset a.md-author:hover{transform:scale(1.1);z-index:1}.md-typeset a.md-author:focus img,.md-typeset a.md-author:hover img{filter:grayscale(0)}.md-banner{background-color:var(--md-footer-bg-color);color:var(--md-footer-fg-color);overflow:auto}@media print{.md-banner{display:none}}.md-banner--warning{background-color:var(--md-warning-bg-color);color:var(--md-warning-fg-color)}.md-banner__inner{font-size:.7rem;margin:.6rem auto;padding:0 .8rem}[dir=ltr] .md-banner__button{float:right}[dir=rtl] .md-banner__button{float:left}.md-banner__button{color:inherit;cursor:pointer;transition:opacity .25s}.no-js .md-banner__button{display:none}.md-banner__button:hover{opacity:.7}html{font-size:125%;height:100%;overflow-x:hidden}@media screen and (min-width:100em){html{font-size:137.5%}}@media screen and (min-width:125em){html{font-size:150%}}body{background-color:var(--md-default-bg-color);display:flex;flex-direction:column;font-size:.5rem;min-height:100%;position:relative;width:100%}@media print{body{display:block}}@media screen and (max-width:59.984375em){body[data-md-scrolllock]{position:fixed}}.md-grid{margin-left:auto;margin-right:auto;max-width:61rem}.md-container{display:flex;flex-direction:column;flex-grow:1}@media print{.md-container{display:block}}.md-main{flex-grow:1}.md-main__inner{display:flex;height:100%;margin-top:1.5rem}.md-ellipsis{overflow:hidden;text-overflow:ellipsis}.md-toggle{display:none}.md-option{height:0;opacity:0;position:absolute;width:0}.md-option:checked+label:not([hidden]){display:block}.md-option.focus-visible+label{outline-color:var(--md-accent-fg-color);outline-style:auto}.md-skip{background-color:var(--md-default-fg-color);border-radius:.1rem;color:var(--md-default-bg-color);font-size:.64rem;margin:.5rem;opacity:0;outline-color:var(--md-accent-fg-color);padding:.3rem .5rem;position:fixed;transform:translateY(.4rem);z-index:-1}.md-skip:focus{opacity:1;transform:translateY(0);transition:transform .25s cubic-bezier(.4,0,.2,1),opacity 175ms 75ms;z-index:10}@page{margin:25mm}:root{--md-clipboard-icon:url('data:image/svg+xml;charset=utf-8,')}.md-clipboard{border-radius:.1rem;color:var(--md-default-fg-color--lightest);cursor:pointer;height:1.5em;outline-color:var(--md-accent-fg-color);outline-offset:.1rem;position:absolute;right:.5em;top:.5em;transition:color .25s;width:1.5em;z-index:1}@media print{.md-clipboard{display:none}}.md-clipboard:not(.focus-visible){-webkit-tap-highlight-color:transparent;outline:none}:hover>.md-clipboard{color:var(--md-default-fg-color--light)}.md-clipboard:focus,.md-clipboard:hover{color:var(--md-accent-fg-color)}.md-clipboard:after{background-color:currentcolor;content:"";display:block;height:1.125em;margin:0 auto;-webkit-mask-image:var(--md-clipboard-icon);mask-image:var(--md-clipboard-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:1.125em}.md-clipboard--inline{cursor:pointer}.md-clipboard--inline code{transition:color .25s,background-color .25s}.md-clipboard--inline:focus code,.md-clipboard--inline:hover code{background-color:var(--md-accent-fg-color--transparent);color:var(--md-accent-fg-color)}@keyframes consent{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes overlay{0%{opacity:0}to{opacity:1}}.md-consent__overlay{animation:overlay .25s both;-webkit-backdrop-filter:blur(.1rem);backdrop-filter:blur(.1rem);background-color:#0000008a;height:100%;opacity:1;position:fixed;top:0;width:100%;z-index:5}.md-consent__inner{animation:consent .5s cubic-bezier(.1,.7,.1,1) both;background-color:var(--md-default-bg-color);border:0;border-radius:.1rem;bottom:0;box-shadow:0 0 .2rem #0000001a,0 .2rem .4rem #0003;max-height:100%;overflow:auto;padding:0;position:fixed;width:100%;z-index:5}.md-consent__form{padding:.8rem}.md-consent__settings{display:none;margin:1em 0}input:checked+.md-consent__settings{display:block}.md-consent__controls{margin-bottom:.8rem}.md-typeset .md-consent__controls .md-button{display:inline}@media screen and (max-width:44.984375em){.md-typeset .md-consent__controls .md-button{display:block;margin-top:.4rem;text-align:center;width:100%}}.md-consent label{cursor:pointer}.md-content{flex-grow:1;min-width:0}.md-content__inner{margin:0 .8rem 1.2rem;padding-top:.6rem}@media screen and (min-width:76.25em){[dir=ltr] .md-sidebar--primary:not([hidden])~.md-content>.md-content__inner{margin-left:1.2rem}[dir=ltr] .md-sidebar--secondary:not([hidden])~.md-content>.md-content__inner,[dir=rtl] .md-sidebar--primary:not([hidden])~.md-content>.md-content__inner{margin-right:1.2rem}[dir=rtl] .md-sidebar--secondary:not([hidden])~.md-content>.md-content__inner{margin-left:1.2rem}}.md-content__inner:before{content:"";display:block;height:.4rem}.md-content__inner>:last-child{margin-bottom:0}[dir=ltr] .md-content__button{float:right}[dir=rtl] .md-content__button{float:left}[dir=ltr] .md-content__button{margin-left:.4rem}[dir=rtl] .md-content__button{margin-right:.4rem}.md-content__button{margin:.4rem 0;padding:0}@media print{.md-content__button{display:none}}.md-typeset .md-content__button{color:var(--md-default-fg-color--lighter)}.md-content__button svg{display:inline;vertical-align:top}[dir=rtl] .md-content__button svg{transform:scaleX(-1)}[dir=ltr] .md-dialog{right:.8rem}[dir=rtl] .md-dialog{left:.8rem}.md-dialog{background-color:var(--md-default-fg-color);border-radius:.1rem;bottom:.8rem;box-shadow:var(--md-shadow-z3);min-width:11.1rem;opacity:0;padding:.4rem .6rem;pointer-events:none;position:fixed;transform:translateY(100%);transition:transform 0ms .4s,opacity .4s;z-index:4}@media print{.md-dialog{display:none}}.md-dialog--active{opacity:1;pointer-events:auto;transform:translateY(0);transition:transform .4s cubic-bezier(.075,.85,.175,1),opacity .4s}.md-dialog__inner{color:var(--md-default-bg-color);font-size:.7rem}.md-feedback{margin:2em 0 1em;text-align:center}.md-feedback fieldset{border:none;margin:0;padding:0}.md-feedback__title{font-weight:700;margin:1em auto}.md-feedback__inner{position:relative}.md-feedback__list{align-content:baseline;display:flex;flex-wrap:wrap;justify-content:center;position:relative}.md-feedback__list:hover .md-icon:not(:disabled){color:var(--md-default-fg-color--lighter)}:disabled .md-feedback__list{min-height:1.8rem}.md-feedback__icon{color:var(--md-default-fg-color--light);cursor:pointer;flex-shrink:0;margin:0 .1rem;transition:color 125ms}.md-feedback__icon:not(:disabled).md-icon:hover{color:var(--md-accent-fg-color)}.md-feedback__icon:disabled{color:var(--md-default-fg-color--lightest);pointer-events:none}.md-feedback__note{opacity:0;position:relative;transform:translateY(.4rem);transition:transform .4s cubic-bezier(.1,.7,.1,1),opacity .15s}.md-feedback__note>*{margin:0 auto;max-width:16rem}:disabled .md-feedback__note{opacity:1;transform:translateY(0)}.md-footer{background-color:var(--md-footer-bg-color);color:var(--md-footer-fg-color)}@media print{.md-footer{display:none}}.md-footer__inner{justify-content:space-between;overflow:auto;padding:.2rem}.md-footer__inner:not([hidden]){display:flex}.md-footer__link{align-items:end;display:flex;flex-grow:0.01;margin-bottom:.4rem;margin-top:1rem;max-width:100%;outline-color:var(--md-accent-fg-color);overflow:hidden;transition:opacity .25s}.md-footer__link:focus,.md-footer__link:hover{opacity:.7}[dir=rtl] .md-footer__link svg{transform:scaleX(-1)}@media screen and (max-width:44.984375em){.md-footer__link--prev{flex-shrink:0}.md-footer__link--prev .md-footer__title{display:none}}[dir=ltr] .md-footer__link--next{margin-left:auto}[dir=rtl] .md-footer__link--next{margin-right:auto}.md-footer__link--next{text-align:right}[dir=rtl] .md-footer__link--next{text-align:left}.md-footer__title{flex-grow:1;font-size:.9rem;margin-bottom:.7rem;max-width:calc(100% - 2.4rem);padding:0 1rem;white-space:nowrap}.md-footer__button{margin:.2rem;padding:.4rem}.md-footer__direction{font-size:.64rem;opacity:.7}.md-footer-meta{background-color:var(--md-footer-bg-color--dark)}.md-footer-meta__inner{display:flex;flex-wrap:wrap;justify-content:space-between;padding:.2rem}html .md-footer-meta.md-typeset a{color:var(--md-footer-fg-color--light)}html .md-footer-meta.md-typeset a:focus,html .md-footer-meta.md-typeset a:hover{color:var(--md-footer-fg-color)}.md-copyright{color:var(--md-footer-fg-color--lighter);font-size:.64rem;margin:auto .6rem;padding:.4rem 0;width:100%}@media screen and (min-width:45em){.md-copyright{width:auto}}.md-copyright__highlight{color:var(--md-footer-fg-color--light)}.md-social{display:inline-flex;gap:.2rem;margin:0 .4rem;padding:.2rem 0 .6rem}@media screen and (min-width:45em){.md-social{padding:.6rem 0}}.md-social__link{display:inline-block;height:1.6rem;text-align:center;width:1.6rem}.md-social__link:before{line-height:1.9}.md-social__link svg{fill:currentcolor;max-height:.8rem;vertical-align:-25%}.md-typeset .md-button{border:.1rem solid;border-radius:.1rem;color:var(--md-primary-fg-color);cursor:pointer;display:inline-block;font-weight:700;padding:.625em 2em;transition:color 125ms,background-color 125ms,border-color 125ms}.md-typeset .md-button--primary{background-color:var(--md-primary-fg-color);border-color:var(--md-primary-fg-color);color:var(--md-primary-bg-color)}.md-typeset .md-button:focus,.md-typeset .md-button:hover{background-color:var(--md-accent-fg-color);border-color:var(--md-accent-fg-color);color:var(--md-accent-bg-color)}[dir=ltr] .md-typeset .md-input{border-top-left-radius:.1rem}[dir=ltr] .md-typeset .md-input,[dir=rtl] .md-typeset .md-input{border-top-right-radius:.1rem}[dir=rtl] .md-typeset .md-input{border-top-left-radius:.1rem}.md-typeset .md-input{border-bottom:.1rem solid var(--md-default-fg-color--lighter);box-shadow:var(--md-shadow-z1);font-size:.8rem;height:1.8rem;padding:0 .6rem;transition:border .25s,box-shadow .25s}.md-typeset .md-input:focus,.md-typeset .md-input:hover{border-bottom-color:var(--md-accent-fg-color);box-shadow:var(--md-shadow-z2)}.md-typeset .md-input--stretch{width:100%}.md-header{background-color:var(--md-primary-fg-color);box-shadow:0 0 .2rem #0000,0 .2rem .4rem #0000;color:var(--md-primary-bg-color);display:block;left:0;position:sticky;right:0;top:0;z-index:4}@media print{.md-header{display:none}}.md-header[hidden]{transform:translateY(-100%);transition:transform .25s cubic-bezier(.8,0,.6,1),box-shadow .25s}.md-header--shadow{box-shadow:0 0 .2rem #0000001a,0 .2rem .4rem #0003;transition:transform .25s cubic-bezier(.1,.7,.1,1),box-shadow .25s}.md-header__inner{align-items:center;display:flex;padding:0 .2rem}.md-header__button{color:currentcolor;cursor:pointer;margin:.2rem;outline-color:var(--md-accent-fg-color);padding:.4rem;position:relative;transition:opacity .25s;vertical-align:middle;z-index:1}.md-header__button:hover{opacity:.7}.md-header__button:not([hidden]){display:inline-block}.md-header__button:not(.focus-visible){-webkit-tap-highlight-color:transparent;outline:none}.md-header__button.md-logo{margin:.2rem;padding:.4rem}@media screen and (max-width:76.234375em){.md-header__button.md-logo{display:none}}.md-header__button.md-logo img,.md-header__button.md-logo svg{fill:currentcolor;display:block;height:1.2rem;width:auto}@media screen and (min-width:60em){.md-header__button[for=__search]{display:none}}.no-js .md-header__button[for=__search]{display:none}[dir=rtl] .md-header__button[for=__search] svg{transform:scaleX(-1)}@media screen and (min-width:76.25em){.md-header__button[for=__drawer]{display:none}}.md-header__topic{display:flex;max-width:100%;position:absolute;transition:transform .4s cubic-bezier(.1,.7,.1,1),opacity .15s;white-space:nowrap}.md-header__topic+.md-header__topic{opacity:0;pointer-events:none;transform:translateX(1.25rem);transition:transform .4s cubic-bezier(1,.7,.1,.1),opacity .15s;z-index:-1}[dir=rtl] .md-header__topic+.md-header__topic{transform:translateX(-1.25rem)}.md-header__topic:first-child{font-weight:700}[dir=ltr] .md-header__title{margin-left:1rem}[dir=rtl] .md-header__title{margin-right:1rem}[dir=ltr] .md-header__title{margin-right:.4rem}[dir=rtl] .md-header__title{margin-left:.4rem}.md-header__title{flex-grow:1;font-size:.9rem;height:2.4rem;line-height:2.4rem}.md-header__title--active .md-header__topic{opacity:0;pointer-events:none;transform:translateX(-1.25rem);transition:transform .4s cubic-bezier(1,.7,.1,.1),opacity .15s;z-index:-1}[dir=rtl] .md-header__title--active .md-header__topic{transform:translateX(1.25rem)}.md-header__title--active .md-header__topic+.md-header__topic{opacity:1;pointer-events:auto;transform:translateX(0);transition:transform .4s cubic-bezier(.1,.7,.1,1),opacity .15s;z-index:0}.md-header__title>.md-header__ellipsis{height:100%;position:relative;width:100%}.md-header__option{display:flex;flex-shrink:0;max-width:100%;transition:max-width 0ms .25s,opacity .25s .25s;white-space:nowrap}[data-md-toggle=search]:checked~.md-header .md-header__option{max-width:0;opacity:0;transition:max-width 0ms,opacity 0ms}.md-header__option>input{bottom:0}.md-header__source{display:none}@media screen and (min-width:60em){[dir=ltr] .md-header__source{margin-left:1rem}[dir=rtl] .md-header__source{margin-right:1rem}.md-header__source{display:block;max-width:11.7rem;width:11.7rem}}@media screen and (min-width:76.25em){[dir=ltr] .md-header__source{margin-left:1.4rem}[dir=rtl] .md-header__source{margin-right:1.4rem}}.md-meta{color:var(--md-default-fg-color--light);font-size:.7rem;line-height:1.3}.md-meta__list{display:inline-flex;flex-wrap:wrap;list-style:none;margin:0;padding:0}.md-meta__item:not(:last-child):after{content:"·";margin-left:.2rem;margin-right:.2rem}.md-meta__link{color:var(--md-typeset-a-color)}.md-meta__link:focus,.md-meta__link:hover{color:var(--md-accent-fg-color)}.md-draft{background-color:#ff1744;border-radius:.125em;color:#fff;display:inline-block;font-weight:700;padding-left:.5714285714em;padding-right:.5714285714em}:root{--md-nav-icon--prev:url('data:image/svg+xml;charset=utf-8,');--md-nav-icon--next:url('data:image/svg+xml;charset=utf-8,');--md-toc-icon:url('data:image/svg+xml;charset=utf-8,')}.md-nav{font-size:.7rem;line-height:1.3}.md-nav__title{color:var(--md-default-fg-color--light);display:block;font-weight:700;overflow:hidden;padding:0 .6rem;text-overflow:ellipsis}.md-nav__title .md-nav__button{display:none}.md-nav__title .md-nav__button img{height:100%;width:auto}.md-nav__title .md-nav__button.md-logo img,.md-nav__title .md-nav__button.md-logo svg{fill:currentcolor;display:block;height:2.4rem;max-width:100%;object-fit:contain;width:auto}.md-nav__list{list-style:none;margin:0;padding:0}.md-nav__link{align-items:flex-start;display:flex;gap:.4rem;margin-top:.625em;scroll-snap-align:start;transition:color 125ms}.md-nav__link--passed{color:var(--md-default-fg-color--light)}.md-nav__item .md-nav__link--active,.md-nav__item .md-nav__link--active code{color:var(--md-typeset-a-color)}.md-nav__link .md-ellipsis{position:relative}[dir=ltr] .md-nav__link .md-icon:last-child{margin-left:auto}[dir=rtl] .md-nav__link .md-icon:last-child{margin-right:auto}.md-nav__link svg{fill:currentcolor;flex-shrink:0;height:1.3em}.md-nav__link[for]:focus,.md-nav__link[for]:hover,.md-nav__link[href]:focus,.md-nav__link[href]:hover{color:var(--md-accent-fg-color);cursor:pointer}.md-nav__link.focus-visible{outline-color:var(--md-accent-fg-color);outline-offset:.2rem}.md-nav--primary .md-nav__link[for=__toc]{display:none}.md-nav--primary .md-nav__link[for=__toc] .md-icon:after{background-color:currentcolor;display:block;height:100%;-webkit-mask-image:var(--md-toc-icon);mask-image:var(--md-toc-icon);width:100%}.md-nav--primary .md-nav__link[for=__toc]~.md-nav{display:none}.md-nav__container>.md-nav__link{margin-top:0}.md-nav__container>.md-nav__link:first-child{flex-grow:1;min-width:0}.md-nav__icon{flex-shrink:0}.md-nav__source{display:none}@media screen and (max-width:76.234375em){.md-nav--primary,.md-nav--primary .md-nav{background-color:var(--md-default-bg-color);display:flex;flex-direction:column;height:100%;left:0;position:absolute;right:0;top:0;z-index:1}.md-nav--primary .md-nav__item,.md-nav--primary .md-nav__title{font-size:.8rem;line-height:1.5}.md-nav--primary .md-nav__title{background-color:var(--md-default-fg-color--lightest);color:var(--md-default-fg-color--light);cursor:pointer;height:5.6rem;line-height:2.4rem;padding:3rem .8rem .2rem;position:relative;white-space:nowrap}[dir=ltr] .md-nav--primary .md-nav__title .md-nav__icon{left:.4rem}[dir=rtl] .md-nav--primary .md-nav__title .md-nav__icon{right:.4rem}.md-nav--primary .md-nav__title .md-nav__icon{display:block;height:1.2rem;margin:.2rem;position:absolute;top:.4rem;width:1.2rem}.md-nav--primary .md-nav__title .md-nav__icon:after{background-color:currentcolor;content:"";display:block;height:100%;-webkit-mask-image:var(--md-nav-icon--prev);mask-image:var(--md-nav-icon--prev);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:100%}.md-nav--primary .md-nav__title~.md-nav__list{background-color:var(--md-default-bg-color);box-shadow:0 .05rem 0 var(--md-default-fg-color--lightest) inset;overflow-y:auto;scroll-snap-type:y mandatory;touch-action:pan-y}.md-nav--primary .md-nav__title~.md-nav__list>:first-child{border-top:0}.md-nav--primary .md-nav__title[for=__drawer]{background-color:var(--md-primary-fg-color);color:var(--md-primary-bg-color);font-weight:700}.md-nav--primary .md-nav__title .md-logo{display:block;left:.2rem;margin:.2rem;padding:.4rem;position:absolute;right:.2rem;top:.2rem}.md-nav--primary .md-nav__list{flex:1}.md-nav--primary .md-nav__item{border-top:.05rem solid var(--md-default-fg-color--lightest)}.md-nav--primary .md-nav__item--active>.md-nav__link{color:var(--md-typeset-a-color)}.md-nav--primary .md-nav__item--active>.md-nav__link:focus,.md-nav--primary .md-nav__item--active>.md-nav__link:hover{color:var(--md-accent-fg-color)}.md-nav--primary .md-nav__link{margin-top:0;padding:.6rem .8rem}.md-nav--primary .md-nav__link svg{margin-top:.1em}.md-nav--primary .md-nav__link>.md-nav__link{padding:0}[dir=ltr] .md-nav--primary .md-nav__link .md-nav__icon{margin-right:-.2rem}[dir=rtl] .md-nav--primary .md-nav__link .md-nav__icon{margin-left:-.2rem}.md-nav--primary .md-nav__link .md-nav__icon{font-size:1.2rem;height:1.2rem;width:1.2rem}.md-nav--primary .md-nav__link .md-nav__icon:after{background-color:currentcolor;content:"";display:block;height:100%;-webkit-mask-image:var(--md-nav-icon--next);mask-image:var(--md-nav-icon--next);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:100%}[dir=rtl] .md-nav--primary .md-nav__icon:after{transform:scale(-1)}.md-nav--primary .md-nav--secondary .md-nav{background-color:initial;position:static}[dir=ltr] .md-nav--primary .md-nav--secondary .md-nav .md-nav__link{padding-left:1.4rem}[dir=rtl] .md-nav--primary .md-nav--secondary .md-nav .md-nav__link{padding-right:1.4rem}[dir=ltr] .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav__link{padding-left:2rem}[dir=rtl] .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav__link{padding-right:2rem}[dir=ltr] .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav .md-nav__link{padding-left:2.6rem}[dir=rtl] .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav .md-nav__link{padding-right:2.6rem}[dir=ltr] .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav .md-nav .md-nav__link{padding-left:3.2rem}[dir=rtl] .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav .md-nav .md-nav__link{padding-right:3.2rem}.md-nav--secondary{background-color:initial}.md-nav__toggle~.md-nav{display:flex;opacity:0;transform:translateX(100%);transition:transform .25s cubic-bezier(.8,0,.6,1),opacity 125ms 50ms}[dir=rtl] .md-nav__toggle~.md-nav{transform:translateX(-100%)}.md-nav__toggle:checked~.md-nav{opacity:1;transform:translateX(0);transition:transform .25s cubic-bezier(.4,0,.2,1),opacity 125ms 125ms}.md-nav__toggle:checked~.md-nav>.md-nav__list{-webkit-backface-visibility:hidden;backface-visibility:hidden}}@media screen and (max-width:59.984375em){.md-nav--primary .md-nav__link[for=__toc]{display:flex}.md-nav--primary .md-nav__link[for=__toc] .md-icon:after{content:""}.md-nav--primary .md-nav__link[for=__toc]+.md-nav__link{display:none}.md-nav--primary .md-nav__link[for=__toc]~.md-nav{display:flex}.md-nav__source{background-color:var(--md-primary-fg-color--dark);color:var(--md-primary-bg-color);display:block;padding:0 .2rem}}@media screen and (min-width:60em) and (max-width:76.234375em){.md-nav--integrated .md-nav__link[for=__toc]{display:flex}.md-nav--integrated .md-nav__link[for=__toc] .md-icon:after{content:""}.md-nav--integrated .md-nav__link[for=__toc]+.md-nav__link{display:none}.md-nav--integrated .md-nav__link[for=__toc]~.md-nav{display:flex}}@media screen and (min-width:60em){.md-nav{margin-bottom:-.4rem}.md-nav--secondary .md-nav__title{background:var(--md-default-bg-color);box-shadow:0 0 .4rem .4rem var(--md-default-bg-color);position:sticky;top:0;z-index:1}.md-nav--secondary .md-nav__title[for=__toc]{scroll-snap-align:start}.md-nav--secondary .md-nav__title .md-nav__icon{display:none}[dir=ltr] .md-nav--secondary .md-nav__list{padding-left:.6rem}[dir=rtl] .md-nav--secondary .md-nav__list{padding-right:.6rem}.md-nav--secondary .md-nav__list{padding-bottom:.4rem}[dir=ltr] .md-nav--secondary .md-nav__item>.md-nav__link{margin-right:.4rem}[dir=rtl] .md-nav--secondary .md-nav__item>.md-nav__link{margin-left:.4rem}}@media screen and (min-width:76.25em){.md-nav{margin-bottom:-.4rem;transition:max-height .25s cubic-bezier(.86,0,.07,1)}.md-nav--primary .md-nav__title{background:var(--md-default-bg-color);box-shadow:0 0 .4rem .4rem var(--md-default-bg-color);position:sticky;top:0;z-index:1}.md-nav--primary .md-nav__title[for=__drawer]{scroll-snap-align:start}.md-nav--primary .md-nav__title .md-nav__icon{display:none}[dir=ltr] .md-nav--primary .md-nav__list{padding-left:.6rem}[dir=rtl] .md-nav--primary .md-nav__list{padding-right:.6rem}.md-nav--primary .md-nav__list{padding-bottom:.4rem}[dir=ltr] .md-nav--primary .md-nav__item>.md-nav__link{margin-right:.4rem}[dir=rtl] .md-nav--primary .md-nav__item>.md-nav__link{margin-left:.4rem}.md-nav__toggle~.md-nav{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .25s cubic-bezier(.86,0,.07,1),opacity .25s,visibility 0ms .25s;visibility:collapse}.md-nav__toggle~.md-nav>.md-nav__list{overflow:hidden}.md-nav__toggle:checked~.md-nav,.md-nav__toggle:indeterminate~.md-nav{grid-template-rows:1fr;opacity:1;transition:grid-template-rows .25s cubic-bezier(.86,0,.07,1),opacity .15s .1s,visibility 0ms;visibility:visible}.md-nav__item--nested>.md-nav>.md-nav__title{display:none}.md-nav__item--section{display:block;margin:1.25em 0}.md-nav__item--section:last-child{margin-bottom:0}.md-nav__item--section>.md-nav__link{font-weight:700}.md-nav__item--section>.md-nav__link[for]{color:var(--md-default-fg-color--light)}.md-nav__item--section>.md-nav__link:not(.md-nav__container){pointer-events:none}.md-nav__item--section>.md-nav__link .md-icon,.md-nav__item--section>.md-nav__link>[for]{display:none}[dir=ltr] .md-nav__item--section>.md-nav{margin-left:-.6rem}[dir=rtl] .md-nav__item--section>.md-nav{margin-right:-.6rem}.md-nav__item--section>.md-nav{display:block;opacity:1;visibility:visible}.md-nav__item--section>.md-nav>.md-nav__list>.md-nav__item{padding:0}.md-nav__icon{border-radius:100%;height:.9rem;transition:background-color .25s;width:.9rem}.md-nav__icon:hover{background-color:var(--md-accent-fg-color--transparent)}.md-nav__icon:after{background-color:currentcolor;border-radius:100%;content:"";display:inline-block;height:100%;-webkit-mask-image:var(--md-nav-icon--next);mask-image:var(--md-nav-icon--next);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;transition:transform .25s;vertical-align:-.1rem;width:100%}[dir=rtl] .md-nav__icon:after{transform:rotate(180deg)}.md-nav__item--nested .md-nav__toggle:checked~.md-nav__link .md-nav__icon:after,.md-nav__item--nested .md-nav__toggle:indeterminate~.md-nav__link .md-nav__icon:after{transform:rotate(90deg)}.md-nav--lifted>.md-nav__list>.md-nav__item,.md-nav--lifted>.md-nav__title{display:none}.md-nav--lifted>.md-nav__list>.md-nav__item--active{display:block}.md-nav--lifted>.md-nav__list>.md-nav__item--active>.md-nav__link{background:var(--md-default-bg-color);box-shadow:0 0 .4rem .4rem var(--md-default-bg-color);margin-top:0;position:sticky;top:0;z-index:1}.md-nav--lifted>.md-nav__list>.md-nav__item--active>.md-nav__link:not(.md-nav__container){pointer-events:none}.md-nav--lifted>.md-nav__list>.md-nav__item--active.md-nav__item--section{margin:0}[dir=ltr] .md-nav--lifted>.md-nav__list>.md-nav__item>.md-nav{margin-left:-.6rem}[dir=rtl] .md-nav--lifted>.md-nav__list>.md-nav__item>.md-nav{margin-right:-.6rem}.md-nav--lifted>.md-nav__list>.md-nav__item>[for]{color:var(--md-default-fg-color--light)}.md-nav--lifted .md-nav[data-md-level="1"]{grid-template-rows:1fr;opacity:1;visibility:visible}.md-nav--integrated>.md-nav__list>.md-nav__item--active:not(.md-nav__item--nested){padding:0 .6rem}.md-nav--integrated>.md-nav__list>.md-nav__item--active:not(.md-nav__item--nested)>.md-nav__link{padding:0}[dir=ltr] .md-nav--integrated>.md-nav__list>.md-nav__item--active .md-nav--secondary{border-left:.05rem solid var(--md-primary-fg-color)}[dir=rtl] .md-nav--integrated>.md-nav__list>.md-nav__item--active .md-nav--secondary{border-right:.05rem solid var(--md-primary-fg-color)}.md-nav--integrated>.md-nav__list>.md-nav__item--active .md-nav--secondary{display:block;margin-bottom:1.25em;opacity:1;visibility:visible}.md-nav--integrated>.md-nav__list>.md-nav__item--active .md-nav--secondary>.md-nav__list{overflow:visible;padding-bottom:0}.md-nav--integrated>.md-nav__list>.md-nav__item--active .md-nav--secondary>.md-nav__title{display:none}}.md-pagination{font-size:.8rem;font-weight:700;gap:.4rem}.md-pagination,.md-pagination>*{align-items:center;display:flex;justify-content:center}.md-pagination>*{border-radius:.2rem;height:1.8rem;min-width:1.8rem;text-align:center}.md-pagination__current{background-color:var(--md-default-fg-color--lightest);color:var(--md-default-fg-color--light)}.md-pagination__link{transition:color 125ms,background-color 125ms}.md-pagination__link:focus,.md-pagination__link:hover{background-color:var(--md-accent-fg-color--transparent);color:var(--md-accent-fg-color)}.md-pagination__link:focus svg,.md-pagination__link:hover svg{color:var(--md-accent-fg-color)}.md-pagination__link.focus-visible{outline-color:var(--md-accent-fg-color);outline-offset:.2rem}.md-pagination__link svg{fill:currentcolor;color:var(--md-default-fg-color--lighter);display:block;max-height:100%;width:1.2rem}.md-post__back{border-bottom:.05rem solid var(--md-default-fg-color--lightest);margin-bottom:1.2rem;padding-bottom:1.2rem}@media screen and (max-width:76.234375em){.md-post__back{display:none}}[dir=rtl] .md-post__back svg{transform:scaleX(-1)}.md-post__authors{display:flex;flex-direction:column;gap:.6rem;margin:0 .6rem 1.2rem}.md-post .md-post__meta a{transition:color 125ms}.md-post .md-post__meta a:focus,.md-post .md-post__meta a:hover{color:var(--md-accent-fg-color)}.md-post__title{color:var(--md-default-fg-color--light);font-weight:700}.md-post--excerpt{margin-bottom:3.2rem}.md-post--excerpt .md-post__header{align-items:center;display:flex;gap:.6rem;min-height:1.6rem}.md-post--excerpt .md-post__authors{align-items:center;display:inline-flex;flex-direction:row;gap:.2rem;margin:0;min-height:2.4rem}[dir=ltr] .md-post--excerpt .md-post__meta .md-meta__list{margin-right:.4rem}[dir=rtl] .md-post--excerpt .md-post__meta .md-meta__list{margin-left:.4rem}.md-post--excerpt .md-post__content>:first-child{--md-scroll-margin:6rem;margin-top:0}.md-post>.md-nav--secondary{margin:1em 0}.md-profile{align-items:center;display:flex;font-size:.7rem;gap:.6rem;line-height:1.4;width:100%}.md-profile__description{flex-grow:1}.md-content--post{display:flex}@media screen and (max-width:76.234375em){.md-content--post{flex-flow:column-reverse}}.md-content--post>.md-content__inner{min-width:0}@media screen and (min-width:76.25em){[dir=ltr] .md-content--post>.md-content__inner{margin-left:1.2rem}[dir=rtl] .md-content--post>.md-content__inner{margin-right:1.2rem}}@media screen and (max-width:76.234375em){.md-sidebar.md-sidebar--post{padding:0;position:static;width:100%}.md-sidebar.md-sidebar--post .md-sidebar__inner{padding:0}.md-sidebar.md-sidebar--post .md-post__meta{margin-left:.6rem;margin-right:.6rem}.md-sidebar.md-sidebar--post .md-nav__item{border:none;display:inline}.md-sidebar.md-sidebar--post .md-nav__list{display:inline-flex;flex-wrap:wrap;gap:.6rem;padding-bottom:.6rem;padding-top:.6rem}.md-sidebar.md-sidebar--post .md-nav__link{padding:0}.md-sidebar.md-sidebar--post .md-nav{position:static}}:root{--md-progress-value:0;--md-progress-delay:400ms}.md-progress{background:var(--md-primary-bg-color);height:.075rem;opacity:min(clamp(0,var(--md-progress-value),1),clamp(0,100 - var(--md-progress-value),1));position:fixed;top:0;transform:scaleX(calc(var(--md-progress-value)*1%));transform-origin:left;transition:transform .5s cubic-bezier(.19,1,.22,1),opacity .25s var(--md-progress-delay);width:100%;z-index:4}:root{--md-search-result-icon:url('data:image/svg+xml;charset=utf-8,')}.md-search{position:relative}@media screen and (min-width:60em){.md-search{padding:.2rem 0}}.no-js .md-search{display:none}.md-search__overlay{opacity:0;z-index:1}@media screen and (max-width:59.984375em){[dir=ltr] .md-search__overlay{left:-2.2rem}[dir=rtl] .md-search__overlay{right:-2.2rem}.md-search__overlay{background-color:var(--md-default-bg-color);border-radius:1rem;height:2rem;overflow:hidden;pointer-events:none;position:absolute;top:-1rem;transform-origin:center;transition:transform .3s .1s,opacity .2s .2s;width:2rem}[data-md-toggle=search]:checked~.md-header .md-search__overlay{opacity:1;transition:transform .4s,opacity .1s}}@media screen and (min-width:60em){[dir=ltr] .md-search__overlay{left:0}[dir=rtl] .md-search__overlay{right:0}.md-search__overlay{background-color:#0000008a;cursor:pointer;height:0;position:fixed;top:0;transition:width 0ms .25s,height 0ms .25s,opacity .25s;width:0}[data-md-toggle=search]:checked~.md-header .md-search__overlay{height:200vh;opacity:1;transition:width 0ms,height 0ms,opacity .25s;width:100%}}@media screen and (max-width:29.984375em){[data-md-toggle=search]:checked~.md-header .md-search__overlay{transform:scale(45)}}@media screen and (min-width:30em) and (max-width:44.984375em){[data-md-toggle=search]:checked~.md-header .md-search__overlay{transform:scale(60)}}@media screen and (min-width:45em) and (max-width:59.984375em){[data-md-toggle=search]:checked~.md-header .md-search__overlay{transform:scale(75)}}.md-search__inner{-webkit-backface-visibility:hidden;backface-visibility:hidden}@media screen and (max-width:59.984375em){[dir=ltr] .md-search__inner{left:0}[dir=rtl] .md-search__inner{right:0}.md-search__inner{height:0;opacity:0;overflow:hidden;position:fixed;top:0;transform:translateX(5%);transition:width 0ms .3s,height 0ms .3s,transform .15s cubic-bezier(.4,0,.2,1) .15s,opacity .15s .15s;width:0;z-index:2}[dir=rtl] .md-search__inner{transform:translateX(-5%)}[data-md-toggle=search]:checked~.md-header .md-search__inner{height:100%;opacity:1;transform:translateX(0);transition:width 0ms 0ms,height 0ms 0ms,transform .15s cubic-bezier(.1,.7,.1,1) .15s,opacity .15s .15s;width:100%}}@media screen and (min-width:60em){[dir=ltr] .md-search__inner{float:right}[dir=rtl] .md-search__inner{float:left}.md-search__inner{padding:.1rem 0;position:relative;transition:width .25s cubic-bezier(.1,.7,.1,1);width:11.7rem}}@media screen and (min-width:60em) and (max-width:76.234375em){[data-md-toggle=search]:checked~.md-header .md-search__inner{width:23.4rem}}@media screen and (min-width:76.25em){[data-md-toggle=search]:checked~.md-header .md-search__inner{width:34.4rem}}.md-search__form{background-color:var(--md-default-bg-color);box-shadow:0 0 .6rem #0000;height:2.4rem;position:relative;transition:color .25s,background-color .25s;z-index:2}@media screen and (min-width:60em){.md-search__form{background-color:#00000042;border-radius:.1rem;height:1.8rem}.md-search__form:hover{background-color:#ffffff1f}}[data-md-toggle=search]:checked~.md-header .md-search__form{background-color:var(--md-default-bg-color);border-radius:.1rem .1rem 0 0;box-shadow:0 0 .6rem #00000012;color:var(--md-default-fg-color)}[dir=ltr] .md-search__input{padding-left:3.6rem;padding-right:2.2rem}[dir=rtl] .md-search__input{padding-left:2.2rem;padding-right:3.6rem}.md-search__input{background:#0000;font-size:.9rem;height:100%;position:relative;text-overflow:ellipsis;width:100%;z-index:2}.md-search__input::placeholder{transition:color .25s}.md-search__input::placeholder,.md-search__input~.md-search__icon{color:var(--md-default-fg-color--light)}.md-search__input::-ms-clear{display:none}@media screen and (max-width:59.984375em){.md-search__input{font-size:.9rem;height:2.4rem;width:100%}}@media screen and (min-width:60em){[dir=ltr] .md-search__input{padding-left:2.2rem}[dir=rtl] .md-search__input{padding-right:2.2rem}.md-search__input{color:inherit;font-size:.8rem}.md-search__input::placeholder{color:var(--md-primary-bg-color--light)}.md-search__input+.md-search__icon{color:var(--md-primary-bg-color)}[data-md-toggle=search]:checked~.md-header .md-search__input{text-overflow:clip}[data-md-toggle=search]:checked~.md-header .md-search__input+.md-search__icon{color:var(--md-default-fg-color--light)}[data-md-toggle=search]:checked~.md-header .md-search__input::placeholder{color:#0000}}.md-search__icon{cursor:pointer;display:inline-block;height:1.2rem;transition:color .25s,opacity .25s;width:1.2rem}.md-search__icon:hover{opacity:.7}[dir=ltr] .md-search__icon[for=__search]{left:.5rem}[dir=rtl] .md-search__icon[for=__search]{right:.5rem}.md-search__icon[for=__search]{position:absolute;top:.3rem;z-index:2}[dir=rtl] .md-search__icon[for=__search] svg{transform:scaleX(-1)}@media screen and (max-width:59.984375em){[dir=ltr] .md-search__icon[for=__search]{left:.8rem}[dir=rtl] .md-search__icon[for=__search]{right:.8rem}.md-search__icon[for=__search]{top:.6rem}.md-search__icon[for=__search] svg:first-child{display:none}}@media screen and (min-width:60em){.md-search__icon[for=__search]{pointer-events:none}.md-search__icon[for=__search] svg:last-child{display:none}}[dir=ltr] .md-search__options{right:.5rem}[dir=rtl] .md-search__options{left:.5rem}.md-search__options{pointer-events:none;position:absolute;top:.3rem;z-index:2}@media screen and (max-width:59.984375em){[dir=ltr] .md-search__options{right:.8rem}[dir=rtl] .md-search__options{left:.8rem}.md-search__options{top:.6rem}}[dir=ltr] .md-search__options>.md-icon{margin-left:.2rem}[dir=rtl] .md-search__options>.md-icon{margin-right:.2rem}.md-search__options>.md-icon{color:var(--md-default-fg-color--light);opacity:0;transform:scale(.75);transition:transform .15s cubic-bezier(.1,.7,.1,1),opacity .15s}.md-search__options>.md-icon:not(.focus-visible){-webkit-tap-highlight-color:transparent;outline:none}[data-md-toggle=search]:checked~.md-header .md-search__input:valid~.md-search__options>.md-icon{opacity:1;pointer-events:auto;transform:scale(1)}[data-md-toggle=search]:checked~.md-header .md-search__input:valid~.md-search__options>.md-icon:hover{opacity:.7}[dir=ltr] .md-search__suggest{padding-left:3.6rem;padding-right:2.2rem}[dir=rtl] .md-search__suggest{padding-left:2.2rem;padding-right:3.6rem}.md-search__suggest{align-items:center;color:var(--md-default-fg-color--lighter);display:flex;font-size:.9rem;height:100%;opacity:0;position:absolute;top:0;transition:opacity 50ms;white-space:nowrap;width:100%}@media screen and (min-width:60em){[dir=ltr] .md-search__suggest{padding-left:2.2rem}[dir=rtl] .md-search__suggest{padding-right:2.2rem}.md-search__suggest{font-size:.8rem}}[data-md-toggle=search]:checked~.md-header .md-search__suggest{opacity:1;transition:opacity .3s .1s}[dir=ltr] .md-search__output{border-bottom-left-radius:.1rem}[dir=ltr] .md-search__output,[dir=rtl] .md-search__output{border-bottom-right-radius:.1rem}[dir=rtl] .md-search__output{border-bottom-left-radius:.1rem}.md-search__output{overflow:hidden;position:absolute;width:100%;z-index:1}@media screen and (max-width:59.984375em){.md-search__output{bottom:0;top:2.4rem}}@media screen and (min-width:60em){.md-search__output{opacity:0;top:1.9rem;transition:opacity .4s}[data-md-toggle=search]:checked~.md-header .md-search__output{box-shadow:var(--md-shadow-z3);opacity:1}}.md-search__scrollwrap{-webkit-backface-visibility:hidden;backface-visibility:hidden;background-color:var(--md-default-bg-color);height:100%;overflow-y:auto;touch-action:pan-y}@media (-webkit-max-device-pixel-ratio:1),(max-resolution:1dppx){.md-search__scrollwrap{transform:translateZ(0)}}@media screen and (min-width:60em) and (max-width:76.234375em){.md-search__scrollwrap{width:23.4rem}}@media screen and (min-width:76.25em){.md-search__scrollwrap{width:34.4rem}}@media screen and (min-width:60em){.md-search__scrollwrap{max-height:0;scrollbar-color:var(--md-default-fg-color--lighter) #0000;scrollbar-width:thin}[data-md-toggle=search]:checked~.md-header .md-search__scrollwrap{max-height:75vh}.md-search__scrollwrap:hover{scrollbar-color:var(--md-accent-fg-color) #0000}.md-search__scrollwrap::-webkit-scrollbar{height:.2rem;width:.2rem}.md-search__scrollwrap::-webkit-scrollbar-thumb{background-color:var(--md-default-fg-color--lighter)}.md-search__scrollwrap::-webkit-scrollbar-thumb:hover{background-color:var(--md-accent-fg-color)}}.md-search-result{color:var(--md-default-fg-color);word-break:break-word}.md-search-result__meta{background-color:var(--md-default-fg-color--lightest);color:var(--md-default-fg-color--light);font-size:.64rem;line-height:1.8rem;padding:0 .8rem;scroll-snap-align:start}@media screen and (min-width:60em){[dir=ltr] .md-search-result__meta{padding-left:2.2rem}[dir=rtl] .md-search-result__meta{padding-right:2.2rem}}.md-search-result__list{list-style:none;margin:0;padding:0;-webkit-user-select:none;user-select:none}.md-search-result__item{box-shadow:0 -.05rem var(--md-default-fg-color--lightest)}.md-search-result__item:first-child{box-shadow:none}.md-search-result__link{display:block;outline:none;scroll-snap-align:start;transition:background-color .25s}.md-search-result__link:focus,.md-search-result__link:hover{background-color:var(--md-accent-fg-color--transparent)}.md-search-result__link:last-child p:last-child{margin-bottom:.6rem}.md-search-result__more>summary{cursor:pointer;display:block;outline:none;position:sticky;scroll-snap-align:start;top:0;z-index:1}.md-search-result__more>summary::marker{display:none}.md-search-result__more>summary::-webkit-details-marker{display:none}.md-search-result__more>summary>div{color:var(--md-typeset-a-color);font-size:.64rem;padding:.75em .8rem;transition:color .25s,background-color .25s}@media screen and (min-width:60em){[dir=ltr] .md-search-result__more>summary>div{padding-left:2.2rem}[dir=rtl] .md-search-result__more>summary>div{padding-right:2.2rem}}.md-search-result__more>summary:focus>div,.md-search-result__more>summary:hover>div{background-color:var(--md-accent-fg-color--transparent);color:var(--md-accent-fg-color)}.md-search-result__more[open]>summary{background-color:var(--md-default-bg-color)}.md-search-result__article{overflow:hidden;padding:0 .8rem;position:relative}@media screen and (min-width:60em){[dir=ltr] .md-search-result__article{padding-left:2.2rem}[dir=rtl] .md-search-result__article{padding-right:2.2rem}}[dir=ltr] .md-search-result__icon{left:0}[dir=rtl] .md-search-result__icon{right:0}.md-search-result__icon{color:var(--md-default-fg-color--light);height:1.2rem;margin:.5rem;position:absolute;width:1.2rem}@media screen and (max-width:59.984375em){.md-search-result__icon{display:none}}.md-search-result__icon:after{background-color:currentcolor;content:"";display:inline-block;height:100%;-webkit-mask-image:var(--md-search-result-icon);mask-image:var(--md-search-result-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:100%}[dir=rtl] .md-search-result__icon:after{transform:scaleX(-1)}.md-search-result .md-typeset{color:var(--md-default-fg-color--light);font-size:.64rem;line-height:1.6}.md-search-result .md-typeset h1{color:var(--md-default-fg-color);font-size:.8rem;font-weight:400;line-height:1.4;margin:.55rem 0}.md-search-result .md-typeset h1 mark{text-decoration:none}.md-search-result .md-typeset h2{color:var(--md-default-fg-color);font-size:.64rem;font-weight:700;line-height:1.6;margin:.5em 0}.md-search-result .md-typeset h2 mark{text-decoration:none}.md-search-result__terms{color:var(--md-default-fg-color);display:block;font-size:.64rem;font-style:italic;margin:.5em 0}.md-search-result mark{background-color:initial;color:var(--md-accent-fg-color);text-decoration:underline}.md-select{position:relative;z-index:1}.md-select__inner{background-color:var(--md-default-bg-color);border-radius:.1rem;box-shadow:var(--md-shadow-z2);color:var(--md-default-fg-color);left:50%;margin-top:.2rem;max-height:0;opacity:0;position:absolute;top:calc(100% - .2rem);transform:translate3d(-50%,.3rem,0);transition:transform .25s 375ms,opacity .25s .25s,max-height 0ms .5s}.md-select:focus-within .md-select__inner,.md-select:hover .md-select__inner{max-height:10rem;opacity:1;transform:translate3d(-50%,0,0);transition:transform .25s cubic-bezier(.1,.7,.1,1),opacity .25s,max-height 0ms}.md-select__inner:after{border-bottom:.2rem solid #0000;border-bottom-color:var(--md-default-bg-color);border-left:.2rem solid #0000;border-right:.2rem solid #0000;border-top:0;content:"";height:0;left:50%;margin-left:-.2rem;margin-top:-.2rem;position:absolute;top:0;width:0}.md-select__list{border-radius:.1rem;font-size:.8rem;list-style-type:none;margin:0;max-height:inherit;overflow:auto;padding:0}.md-select__item{line-height:1.8rem}[dir=ltr] .md-select__link{padding-left:.6rem;padding-right:1.2rem}[dir=rtl] .md-select__link{padding-left:1.2rem;padding-right:.6rem}.md-select__link{cursor:pointer;display:block;outline:none;scroll-snap-align:start;transition:background-color .25s,color .25s;width:100%}.md-select__link:focus,.md-select__link:hover{color:var(--md-accent-fg-color)}.md-select__link:focus{background-color:var(--md-default-fg-color--lightest)}.md-sidebar{align-self:flex-start;flex-shrink:0;padding:1.2rem 0;position:sticky;top:2.4rem;width:12.1rem}@media print{.md-sidebar{display:none}}@media screen and (max-width:76.234375em){[dir=ltr] .md-sidebar--primary{left:-12.1rem}[dir=rtl] .md-sidebar--primary{right:-12.1rem}.md-sidebar--primary{background-color:var(--md-default-bg-color);display:block;height:100%;position:fixed;top:0;transform:translateX(0);transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s;width:12.1rem;z-index:5}[data-md-toggle=drawer]:checked~.md-container .md-sidebar--primary{box-shadow:var(--md-shadow-z3);transform:translateX(12.1rem)}[dir=rtl] [data-md-toggle=drawer]:checked~.md-container .md-sidebar--primary{transform:translateX(-12.1rem)}.md-sidebar--primary .md-sidebar__scrollwrap{bottom:0;left:0;margin:0;overflow:hidden;position:absolute;right:0;scroll-snap-type:none;top:0}}@media screen and (min-width:76.25em){.md-sidebar{height:0}.no-js .md-sidebar{height:auto}.md-header--lifted~.md-container .md-sidebar{top:4.8rem}}.md-sidebar--secondary{display:none;order:2}@media screen and (min-width:60em){.md-sidebar--secondary{height:0}.no-js .md-sidebar--secondary{height:auto}.md-sidebar--secondary:not([hidden]){display:block}.md-sidebar--secondary .md-sidebar__scrollwrap{touch-action:pan-y}}.md-sidebar__scrollwrap{scrollbar-gutter:stable;-webkit-backface-visibility:hidden;backface-visibility:hidden;margin:0 .2rem;overflow-y:auto;scrollbar-color:var(--md-default-fg-color--lighter) #0000;scrollbar-width:thin}.md-sidebar__scrollwrap::-webkit-scrollbar{height:.2rem;width:.2rem}.md-sidebar__scrollwrap:focus-within,.md-sidebar__scrollwrap:hover{scrollbar-color:var(--md-accent-fg-color) #0000}.md-sidebar__scrollwrap:focus-within::-webkit-scrollbar-thumb,.md-sidebar__scrollwrap:hover::-webkit-scrollbar-thumb{background-color:var(--md-default-fg-color--lighter)}.md-sidebar__scrollwrap:focus-within::-webkit-scrollbar-thumb:hover,.md-sidebar__scrollwrap:hover::-webkit-scrollbar-thumb:hover{background-color:var(--md-accent-fg-color)}@supports selector(::-webkit-scrollbar){.md-sidebar__scrollwrap{scrollbar-gutter:auto}[dir=ltr] .md-sidebar__inner{padding-right:calc(100% - 11.5rem)}[dir=rtl] .md-sidebar__inner{padding-left:calc(100% - 11.5rem)}}@media screen and (max-width:76.234375em){.md-overlay{background-color:#0000008a;height:0;opacity:0;position:fixed;top:0;transition:width 0ms .25s,height 0ms .25s,opacity .25s;width:0;z-index:5}[data-md-toggle=drawer]:checked~.md-overlay{height:100%;opacity:1;transition:width 0ms,height 0ms,opacity .25s;width:100%}}@keyframes facts{0%{height:0}to{height:.65rem}}@keyframes fact{0%{opacity:0;transform:translateY(100%)}50%{opacity:0}to{opacity:1;transform:translateY(0)}}:root{--md-source-forks-icon:url('data:image/svg+xml;charset=utf-8,');--md-source-repositories-icon:url('data:image/svg+xml;charset=utf-8,');--md-source-stars-icon:url('data:image/svg+xml;charset=utf-8,');--md-source-version-icon:url('data:image/svg+xml;charset=utf-8,')}.md-source{-webkit-backface-visibility:hidden;backface-visibility:hidden;display:block;font-size:.65rem;line-height:1.2;outline-color:var(--md-accent-fg-color);transition:opacity .25s;white-space:nowrap}.md-source:hover{opacity:.7}.md-source__icon{display:inline-block;height:2.4rem;vertical-align:middle;width:2rem}[dir=ltr] .md-source__icon svg{margin-left:.6rem}[dir=rtl] .md-source__icon svg{margin-right:.6rem}.md-source__icon svg{margin-top:.6rem}[dir=ltr] .md-source__icon+.md-source__repository{padding-left:2rem}[dir=rtl] .md-source__icon+.md-source__repository{padding-right:2rem}[dir=ltr] .md-source__icon+.md-source__repository{margin-left:-2rem}[dir=rtl] .md-source__icon+.md-source__repository{margin-right:-2rem}[dir=ltr] .md-source__repository{margin-left:.6rem}[dir=rtl] .md-source__repository{margin-right:.6rem}.md-source__repository{display:inline-block;max-width:calc(100% - 1.2rem);overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.md-source__facts{display:flex;font-size:.55rem;gap:.4rem;list-style-type:none;margin:.1rem 0 0;opacity:.75;overflow:hidden;padding:0;width:100%}.md-source__repository--active .md-source__facts{animation:facts .25s ease-in}.md-source__fact{overflow:hidden;text-overflow:ellipsis}.md-source__repository--active .md-source__fact{animation:fact .4s ease-out}[dir=ltr] .md-source__fact:before{margin-right:.1rem}[dir=rtl] .md-source__fact:before{margin-left:.1rem}.md-source__fact:before{background-color:currentcolor;content:"";display:inline-block;height:.6rem;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;vertical-align:text-top;width:.6rem}.md-source__fact:nth-child(1n+2){flex-shrink:0}.md-source__fact--version:before{-webkit-mask-image:var(--md-source-version-icon);mask-image:var(--md-source-version-icon)}.md-source__fact--stars:before{-webkit-mask-image:var(--md-source-stars-icon);mask-image:var(--md-source-stars-icon)}.md-source__fact--forks:before{-webkit-mask-image:var(--md-source-forks-icon);mask-image:var(--md-source-forks-icon)}.md-source__fact--repositories:before{-webkit-mask-image:var(--md-source-repositories-icon);mask-image:var(--md-source-repositories-icon)}:root{--md-status:url('data:image/svg+xml;charset=utf-8,');--md-status--new:url('data:image/svg+xml;charset=utf-8,');--md-status--deprecated:url('data:image/svg+xml;charset=utf-8,');--md-status--encrypted:url('data:image/svg+xml;charset=utf-8,')}.md-status:after{background-color:var(--md-default-fg-color--light);content:"";display:inline-block;height:1.125em;-webkit-mask-image:var(--md-status);mask-image:var(--md-status);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;vertical-align:text-bottom;width:1.125em}.md-status:hover:after{background-color:currentcolor}.md-status--new:after{-webkit-mask-image:var(--md-status--new);mask-image:var(--md-status--new)}.md-status--deprecated:after{-webkit-mask-image:var(--md-status--deprecated);mask-image:var(--md-status--deprecated)}.md-status--encrypted:after{-webkit-mask-image:var(--md-status--encrypted);mask-image:var(--md-status--encrypted)}.md-tabs{background-color:var(--md-primary-fg-color);color:var(--md-primary-bg-color);display:block;line-height:1.3;overflow:auto;width:100%;z-index:3}@media print{.md-tabs{display:none}}@media screen and (max-width:76.234375em){.md-tabs{display:none}}.md-tabs[hidden]{pointer-events:none}[dir=ltr] .md-tabs__list{margin-left:.2rem}[dir=rtl] .md-tabs__list{margin-right:.2rem}.md-tabs__list{contain:content;display:flex;list-style:none;margin:0;overflow:auto;padding:0;scrollbar-width:none;white-space:nowrap}.md-tabs__list::-webkit-scrollbar{display:none}.md-tabs__item{height:2.4rem;padding-left:.6rem;padding-right:.6rem}.md-tabs__item--active .md-tabs__link{color:inherit;opacity:1}.md-tabs__link{-webkit-backface-visibility:hidden;backface-visibility:hidden;display:flex;font-size:.7rem;margin-top:.8rem;opacity:.7;outline-color:var(--md-accent-fg-color);outline-offset:.2rem;transition:transform .4s cubic-bezier(.1,.7,.1,1),opacity .25s}.md-tabs__link:focus,.md-tabs__link:hover{color:inherit;opacity:1}[dir=ltr] .md-tabs__link svg{margin-right:.4rem}[dir=rtl] .md-tabs__link svg{margin-left:.4rem}.md-tabs__link svg{fill:currentcolor;height:1.3em}.md-tabs__item:nth-child(2) .md-tabs__link{transition-delay:20ms}.md-tabs__item:nth-child(3) .md-tabs__link{transition-delay:40ms}.md-tabs__item:nth-child(4) .md-tabs__link{transition-delay:60ms}.md-tabs__item:nth-child(5) .md-tabs__link{transition-delay:80ms}.md-tabs__item:nth-child(6) .md-tabs__link{transition-delay:.1s}.md-tabs__item:nth-child(7) .md-tabs__link{transition-delay:.12s}.md-tabs__item:nth-child(8) .md-tabs__link{transition-delay:.14s}.md-tabs__item:nth-child(9) .md-tabs__link{transition-delay:.16s}.md-tabs__item:nth-child(10) .md-tabs__link{transition-delay:.18s}.md-tabs__item:nth-child(11) .md-tabs__link{transition-delay:.2s}.md-tabs__item:nth-child(12) .md-tabs__link{transition-delay:.22s}.md-tabs__item:nth-child(13) .md-tabs__link{transition-delay:.24s}.md-tabs__item:nth-child(14) .md-tabs__link{transition-delay:.26s}.md-tabs__item:nth-child(15) .md-tabs__link{transition-delay:.28s}.md-tabs__item:nth-child(16) .md-tabs__link{transition-delay:.3s}.md-tabs[hidden] .md-tabs__link{opacity:0;transform:translateY(50%);transition:transform 0ms .1s,opacity .1s}:root{--md-tag-icon:url('data:image/svg+xml;charset=utf-8,')}.md-typeset .md-tags:not([hidden]){display:inline-flex;flex-wrap:wrap;gap:.5em;margin-bottom:.75em;margin-top:-.125em}.md-typeset .md-tag{align-items:center;background:var(--md-default-fg-color--lightest);border-radius:2.4rem;display:inline-flex;font-size:.64rem;font-size:min(.8em,.64rem);font-weight:700;gap:.5em;letter-spacing:normal;line-height:1.6;padding:.3125em .78125em}.md-typeset .md-tag[href]{-webkit-tap-highlight-color:transparent;color:inherit;outline:none;transition:color 125ms,background-color 125ms}.md-typeset .md-tag[href]:focus,.md-typeset .md-tag[href]:hover{background-color:var(--md-accent-fg-color);color:var(--md-accent-bg-color)}[id]>.md-typeset .md-tag{vertical-align:text-top}.md-typeset .md-tag-icon:before{background-color:var(--md-default-fg-color--lighter);content:"";display:inline-block;height:1.2em;-webkit-mask-image:var(--md-tag-icon);mask-image:var(--md-tag-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;transition:background-color 125ms;vertical-align:text-bottom;width:1.2em}.md-typeset .md-tag-icon[href]:focus:before,.md-typeset .md-tag-icon[href]:hover:before{background-color:var(--md-accent-bg-color)}@keyframes pulse{0%{transform:scale(.95)}75%{transform:scale(1)}to{transform:scale(.95)}}:root{--md-annotation-bg-icon:url('data:image/svg+xml;charset=utf-8,');--md-annotation-icon:url('data:image/svg+xml;charset=utf-8,');--md-tooltip-width:20rem}.md-tooltip{-webkit-backface-visibility:hidden;backface-visibility:hidden;background-color:var(--md-default-bg-color);border-radius:.1rem;box-shadow:var(--md-shadow-z2);color:var(--md-default-fg-color);font-family:var(--md-text-font-family);left:clamp(var(--md-tooltip-0,0rem) + .8rem,var(--md-tooltip-x),100vw + var(--md-tooltip-0,0rem) + .8rem - var(--md-tooltip-width) - 2 * .8rem);max-width:calc(100vw - 1.6rem);opacity:0;position:absolute;top:var(--md-tooltip-y);transform:translateY(-.4rem);transition:transform 0ms .25s,opacity .25s,z-index .25s;width:var(--md-tooltip-width);z-index:0}.md-tooltip--active{opacity:1;transform:translateY(0);transition:transform .25s cubic-bezier(.1,.7,.1,1),opacity .25s,z-index 0ms;z-index:2}.focus-visible>.md-tooltip,.md-tooltip:target{outline:var(--md-accent-fg-color) auto}.md-tooltip__inner{font-size:.64rem;padding:.8rem}.md-tooltip__inner.md-typeset>:first-child{margin-top:0}.md-tooltip__inner.md-typeset>:last-child{margin-bottom:0}.md-annotation{font-weight:400;outline:none;vertical-align:text-bottom;white-space:normal}[dir=rtl] .md-annotation{direction:rtl}code .md-annotation{font-family:var(--md-code-font-family);font-size:inherit}.md-annotation:not([hidden]){display:inline-block;line-height:1.25}.md-annotation__index{border-radius:.01px;cursor:pointer;display:inline-block;margin-left:.4ch;margin-right:.4ch;outline:none;overflow:hidden;position:relative;-webkit-user-select:none;user-select:none;vertical-align:text-top;z-index:0}.md-annotation .md-annotation__index{transition:z-index .25s}@media screen{.md-annotation__index{width:2.2ch}[data-md-visible]>.md-annotation__index{animation:pulse 2s infinite}.md-annotation__index:before{background:var(--md-default-bg-color);-webkit-mask-image:var(--md-annotation-bg-icon);mask-image:var(--md-annotation-bg-icon)}.md-annotation__index:after,.md-annotation__index:before{content:"";height:2.2ch;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;position:absolute;top:-.1ch;width:2.2ch;z-index:-1}.md-annotation__index:after{background-color:var(--md-default-fg-color--lighter);-webkit-mask-image:var(--md-annotation-icon);mask-image:var(--md-annotation-icon);transform:scale(1.0001);transition:background-color .25s,transform .25s}.md-tooltip--active+.md-annotation__index:after{transform:rotate(45deg)}.md-tooltip--active+.md-annotation__index:after,:hover>.md-annotation__index:after{background-color:var(--md-accent-fg-color)}}.md-tooltip--active+.md-annotation__index{animation-play-state:paused;transition-duration:0ms;z-index:2}.md-annotation__index [data-md-annotation-id]{display:inline-block}@media print{.md-annotation__index [data-md-annotation-id]{background:var(--md-default-fg-color--lighter);border-radius:2ch;color:var(--md-default-bg-color);font-weight:700;padding:0 .6ch;white-space:nowrap}.md-annotation__index [data-md-annotation-id]:after{content:attr(data-md-annotation-id)}}.md-typeset .md-annotation-list{counter-reset:xxx;list-style:none}.md-typeset .md-annotation-list li{position:relative}[dir=ltr] .md-typeset .md-annotation-list li:before{left:-2.125em}[dir=rtl] .md-typeset .md-annotation-list li:before{right:-2.125em}.md-typeset .md-annotation-list li:before{background:var(--md-default-fg-color--lighter);border-radius:2ch;color:var(--md-default-bg-color);content:counter(xxx);counter-increment:xxx;font-size:.8875em;font-weight:700;height:2ch;line-height:1.25;min-width:2ch;padding:0 .6ch;position:absolute;text-align:center;top:.25em}[dir=ltr] .md-top{margin-left:50%}[dir=rtl] .md-top{margin-right:50%}.md-top{background-color:var(--md-default-bg-color);border-radius:1.6rem;box-shadow:var(--md-shadow-z2);color:var(--md-default-fg-color--light);cursor:pointer;display:block;font-size:.7rem;outline:none;padding:.4rem .8rem;position:fixed;top:3.2rem;transform:translate(-50%);transition:color 125ms,background-color 125ms,transform 125ms cubic-bezier(.4,0,.2,1),opacity 125ms;z-index:2}@media print{.md-top{display:none}}[dir=rtl] .md-top{transform:translate(50%)}.md-top[hidden]{opacity:0;pointer-events:none;transform:translate(-50%,.2rem);transition-duration:0ms}[dir=rtl] .md-top[hidden]{transform:translate(50%,.2rem)}.md-top:focus,.md-top:hover{background-color:var(--md-accent-fg-color);color:var(--md-accent-bg-color)}.md-top svg{display:inline-block;vertical-align:-.5em}@keyframes hoverfix{0%{pointer-events:none}}:root{--md-version-icon:url('data:image/svg+xml;charset=utf-8,')}.md-version{flex-shrink:0;font-size:.8rem;height:2.4rem}[dir=ltr] .md-version__current{margin-left:1.4rem;margin-right:.4rem}[dir=rtl] .md-version__current{margin-left:.4rem;margin-right:1.4rem}.md-version__current{color:inherit;cursor:pointer;outline:none;position:relative;top:.05rem}[dir=ltr] .md-version__current:after{margin-left:.4rem}[dir=rtl] .md-version__current:after{margin-right:.4rem}.md-version__current:after{background-color:currentcolor;content:"";display:inline-block;height:.6rem;-webkit-mask-image:var(--md-version-icon);mask-image:var(--md-version-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:.4rem}.md-version__list{background-color:var(--md-default-bg-color);border-radius:.1rem;box-shadow:var(--md-shadow-z2);color:var(--md-default-fg-color);list-style-type:none;margin:.2rem .8rem;max-height:0;opacity:0;overflow:auto;padding:0;position:absolute;scroll-snap-type:y mandatory;top:.15rem;transition:max-height 0ms .5s,opacity .25s .25s;z-index:3}.md-version:focus-within .md-version__list,.md-version:hover .md-version__list{max-height:10rem;opacity:1;transition:max-height 0ms,opacity .25s}@media (hover:none),(pointer:coarse){.md-version:hover .md-version__list{animation:hoverfix .25s forwards}.md-version:focus-within .md-version__list{animation:none}}.md-version__item{line-height:1.8rem}[dir=ltr] .md-version__link{padding-left:.6rem;padding-right:1.2rem}[dir=rtl] .md-version__link{padding-left:1.2rem;padding-right:.6rem}.md-version__link{cursor:pointer;display:block;outline:none;scroll-snap-align:start;transition:color .25s,background-color .25s;white-space:nowrap;width:100%}.md-version__link:focus,.md-version__link:hover{color:var(--md-accent-fg-color)}.md-version__link:focus{background-color:var(--md-default-fg-color--lightest)}:root{--md-admonition-icon--note:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--abstract:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--info:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--tip:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--success:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--question:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--warning:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--failure:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--danger:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--bug:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--example:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--quote:url('data:image/svg+xml;charset=utf-8,')}.md-typeset .admonition,.md-typeset details{background-color:var(--md-admonition-bg-color);border:.075rem solid #448aff;border-radius:.2rem;box-shadow:var(--md-shadow-z1);color:var(--md-admonition-fg-color);display:flow-root;font-size:.64rem;margin:1.5625em 0;padding:0 .6rem;page-break-inside:avoid;transition:box-shadow 125ms}@media print{.md-typeset .admonition,.md-typeset details{box-shadow:none}}.md-typeset .admonition:focus-within,.md-typeset details:focus-within{box-shadow:0 0 0 .2rem #448aff1a}.md-typeset .admonition>*,.md-typeset details>*{box-sizing:border-box}.md-typeset .admonition .admonition,.md-typeset .admonition details,.md-typeset details .admonition,.md-typeset details details{margin-bottom:1em;margin-top:1em}.md-typeset .admonition .md-typeset__scrollwrap,.md-typeset details .md-typeset__scrollwrap{margin:1em -.6rem}.md-typeset .admonition .md-typeset__table,.md-typeset details .md-typeset__table{padding:0 .6rem}.md-typeset .admonition>.tabbed-set:only-child,.md-typeset details>.tabbed-set:only-child{margin-top:0}html .md-typeset .admonition>:last-child,html .md-typeset details>:last-child{margin-bottom:.6rem}[dir=ltr] .md-typeset .admonition-title,[dir=ltr] .md-typeset summary{padding-left:2rem;padding-right:.6rem}[dir=rtl] .md-typeset .admonition-title,[dir=rtl] .md-typeset summary{padding-left:.6rem;padding-right:2rem}[dir=ltr] .md-typeset .admonition-title,[dir=ltr] .md-typeset summary{border-left-width:.2rem}[dir=rtl] .md-typeset .admonition-title,[dir=rtl] .md-typeset summary{border-right-width:.2rem}[dir=ltr] .md-typeset .admonition-title,[dir=ltr] .md-typeset summary{border-top-left-radius:.1rem}[dir=ltr] .md-typeset .admonition-title,[dir=ltr] .md-typeset summary,[dir=rtl] .md-typeset .admonition-title,[dir=rtl] .md-typeset summary{border-top-right-radius:.1rem}[dir=rtl] .md-typeset .admonition-title,[dir=rtl] .md-typeset summary{border-top-left-radius:.1rem}.md-typeset .admonition-title,.md-typeset summary{background-color:#448aff1a;border:none;font-weight:700;margin:0 -.6rem;padding-bottom:.4rem;padding-top:.4rem;position:relative}html .md-typeset .admonition-title:last-child,html .md-typeset summary:last-child{margin-bottom:0}[dir=ltr] .md-typeset .admonition-title:before,[dir=ltr] .md-typeset summary:before{left:.6rem}[dir=rtl] .md-typeset .admonition-title:before,[dir=rtl] .md-typeset summary:before{right:.6rem}.md-typeset .admonition-title:before,.md-typeset summary:before{background-color:#448aff;content:"";height:1rem;-webkit-mask-image:var(--md-admonition-icon--note);mask-image:var(--md-admonition-icon--note);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;position:absolute;top:.625em;width:1rem}.md-typeset .admonition-title code,.md-typeset summary code{box-shadow:0 0 0 .05rem var(--md-default-fg-color--lightest)}.md-typeset .admonition.note,.md-typeset details.note{border-color:#448aff}.md-typeset .admonition.note:focus-within,.md-typeset details.note:focus-within{box-shadow:0 0 0 .2rem #448aff1a}.md-typeset .note>.admonition-title,.md-typeset .note>summary{background-color:#448aff1a}.md-typeset .note>.admonition-title:before,.md-typeset .note>summary:before{background-color:#448aff;-webkit-mask-image:var(--md-admonition-icon--note);mask-image:var(--md-admonition-icon--note)}.md-typeset .note>.admonition-title:after,.md-typeset .note>summary:after{color:#448aff}.md-typeset .admonition.abstract,.md-typeset details.abstract{border-color:#00b0ff}.md-typeset .admonition.abstract:focus-within,.md-typeset details.abstract:focus-within{box-shadow:0 0 0 .2rem #00b0ff1a}.md-typeset .abstract>.admonition-title,.md-typeset .abstract>summary{background-color:#00b0ff1a}.md-typeset .abstract>.admonition-title:before,.md-typeset .abstract>summary:before{background-color:#00b0ff;-webkit-mask-image:var(--md-admonition-icon--abstract);mask-image:var(--md-admonition-icon--abstract)}.md-typeset .abstract>.admonition-title:after,.md-typeset .abstract>summary:after{color:#00b0ff}.md-typeset .admonition.info,.md-typeset details.info{border-color:#00b8d4}.md-typeset .admonition.info:focus-within,.md-typeset details.info:focus-within{box-shadow:0 0 0 .2rem #00b8d41a}.md-typeset .info>.admonition-title,.md-typeset .info>summary{background-color:#00b8d41a}.md-typeset .info>.admonition-title:before,.md-typeset .info>summary:before{background-color:#00b8d4;-webkit-mask-image:var(--md-admonition-icon--info);mask-image:var(--md-admonition-icon--info)}.md-typeset .info>.admonition-title:after,.md-typeset .info>summary:after{color:#00b8d4}.md-typeset .admonition.tip,.md-typeset details.tip{border-color:#00bfa5}.md-typeset .admonition.tip:focus-within,.md-typeset details.tip:focus-within{box-shadow:0 0 0 .2rem #00bfa51a}.md-typeset .tip>.admonition-title,.md-typeset .tip>summary{background-color:#00bfa51a}.md-typeset .tip>.admonition-title:before,.md-typeset .tip>summary:before{background-color:#00bfa5;-webkit-mask-image:var(--md-admonition-icon--tip);mask-image:var(--md-admonition-icon--tip)}.md-typeset .tip>.admonition-title:after,.md-typeset .tip>summary:after{color:#00bfa5}.md-typeset .admonition.success,.md-typeset details.success{border-color:#00c853}.md-typeset .admonition.success:focus-within,.md-typeset details.success:focus-within{box-shadow:0 0 0 .2rem #00c8531a}.md-typeset .success>.admonition-title,.md-typeset .success>summary{background-color:#00c8531a}.md-typeset .success>.admonition-title:before,.md-typeset .success>summary:before{background-color:#00c853;-webkit-mask-image:var(--md-admonition-icon--success);mask-image:var(--md-admonition-icon--success)}.md-typeset .success>.admonition-title:after,.md-typeset .success>summary:after{color:#00c853}.md-typeset .admonition.question,.md-typeset details.question{border-color:#64dd17}.md-typeset .admonition.question:focus-within,.md-typeset details.question:focus-within{box-shadow:0 0 0 .2rem #64dd171a}.md-typeset .question>.admonition-title,.md-typeset .question>summary{background-color:#64dd171a}.md-typeset .question>.admonition-title:before,.md-typeset .question>summary:before{background-color:#64dd17;-webkit-mask-image:var(--md-admonition-icon--question);mask-image:var(--md-admonition-icon--question)}.md-typeset .question>.admonition-title:after,.md-typeset .question>summary:after{color:#64dd17}.md-typeset .admonition.warning,.md-typeset details.warning{border-color:#ff9100}.md-typeset .admonition.warning:focus-within,.md-typeset details.warning:focus-within{box-shadow:0 0 0 .2rem #ff91001a}.md-typeset .warning>.admonition-title,.md-typeset .warning>summary{background-color:#ff91001a}.md-typeset .warning>.admonition-title:before,.md-typeset .warning>summary:before{background-color:#ff9100;-webkit-mask-image:var(--md-admonition-icon--warning);mask-image:var(--md-admonition-icon--warning)}.md-typeset .warning>.admonition-title:after,.md-typeset .warning>summary:after{color:#ff9100}.md-typeset .admonition.failure,.md-typeset details.failure{border-color:#ff5252}.md-typeset .admonition.failure:focus-within,.md-typeset details.failure:focus-within{box-shadow:0 0 0 .2rem #ff52521a}.md-typeset .failure>.admonition-title,.md-typeset .failure>summary{background-color:#ff52521a}.md-typeset .failure>.admonition-title:before,.md-typeset .failure>summary:before{background-color:#ff5252;-webkit-mask-image:var(--md-admonition-icon--failure);mask-image:var(--md-admonition-icon--failure)}.md-typeset .failure>.admonition-title:after,.md-typeset .failure>summary:after{color:#ff5252}.md-typeset .admonition.danger,.md-typeset details.danger{border-color:#ff1744}.md-typeset .admonition.danger:focus-within,.md-typeset details.danger:focus-within{box-shadow:0 0 0 .2rem #ff17441a}.md-typeset .danger>.admonition-title,.md-typeset .danger>summary{background-color:#ff17441a}.md-typeset .danger>.admonition-title:before,.md-typeset .danger>summary:before{background-color:#ff1744;-webkit-mask-image:var(--md-admonition-icon--danger);mask-image:var(--md-admonition-icon--danger)}.md-typeset .danger>.admonition-title:after,.md-typeset .danger>summary:after{color:#ff1744}.md-typeset .admonition.bug,.md-typeset details.bug{border-color:#f50057}.md-typeset .admonition.bug:focus-within,.md-typeset details.bug:focus-within{box-shadow:0 0 0 .2rem #f500571a}.md-typeset .bug>.admonition-title,.md-typeset .bug>summary{background-color:#f500571a}.md-typeset .bug>.admonition-title:before,.md-typeset .bug>summary:before{background-color:#f50057;-webkit-mask-image:var(--md-admonition-icon--bug);mask-image:var(--md-admonition-icon--bug)}.md-typeset .bug>.admonition-title:after,.md-typeset .bug>summary:after{color:#f50057}.md-typeset .admonition.example,.md-typeset details.example{border-color:#7c4dff}.md-typeset .admonition.example:focus-within,.md-typeset details.example:focus-within{box-shadow:0 0 0 .2rem #7c4dff1a}.md-typeset .example>.admonition-title,.md-typeset .example>summary{background-color:#7c4dff1a}.md-typeset .example>.admonition-title:before,.md-typeset .example>summary:before{background-color:#7c4dff;-webkit-mask-image:var(--md-admonition-icon--example);mask-image:var(--md-admonition-icon--example)}.md-typeset .example>.admonition-title:after,.md-typeset .example>summary:after{color:#7c4dff}.md-typeset .admonition.quote,.md-typeset details.quote{border-color:#9e9e9e}.md-typeset .admonition.quote:focus-within,.md-typeset details.quote:focus-within{box-shadow:0 0 0 .2rem #9e9e9e1a}.md-typeset .quote>.admonition-title,.md-typeset .quote>summary{background-color:#9e9e9e1a}.md-typeset .quote>.admonition-title:before,.md-typeset .quote>summary:before{background-color:#9e9e9e;-webkit-mask-image:var(--md-admonition-icon--quote);mask-image:var(--md-admonition-icon--quote)}.md-typeset .quote>.admonition-title:after,.md-typeset .quote>summary:after{color:#9e9e9e}:root{--md-footnotes-icon:url('data:image/svg+xml;charset=utf-8,')}.md-typeset .footnote{color:var(--md-default-fg-color--light);font-size:.64rem}[dir=ltr] .md-typeset .footnote>ol{margin-left:0}[dir=rtl] .md-typeset .footnote>ol{margin-right:0}.md-typeset .footnote>ol>li{transition:color 125ms}.md-typeset .footnote>ol>li:target{color:var(--md-default-fg-color)}.md-typeset .footnote>ol>li:focus-within .footnote-backref{opacity:1;transform:translateX(0);transition:none}.md-typeset .footnote>ol>li:hover .footnote-backref,.md-typeset .footnote>ol>li:target .footnote-backref{opacity:1;transform:translateX(0)}.md-typeset .footnote>ol>li>:first-child{margin-top:0}.md-typeset .footnote-ref{font-size:.75em;font-weight:700}html .md-typeset .footnote-ref{outline-offset:.1rem}.md-typeset [id^="fnref:"]:target>.footnote-ref{outline:auto}.md-typeset .footnote-backref{color:var(--md-typeset-a-color);display:inline-block;font-size:0;opacity:0;transform:translateX(.25rem);transition:color .25s,transform .25s .25s,opacity 125ms .25s;vertical-align:text-bottom}@media print{.md-typeset .footnote-backref{color:var(--md-typeset-a-color);opacity:1;transform:translateX(0)}}[dir=rtl] .md-typeset .footnote-backref{transform:translateX(-.25rem)}.md-typeset .footnote-backref:hover{color:var(--md-accent-fg-color)}.md-typeset .footnote-backref:before{background-color:currentcolor;content:"";display:inline-block;height:.8rem;-webkit-mask-image:var(--md-footnotes-icon);mask-image:var(--md-footnotes-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:.8rem}[dir=rtl] .md-typeset .footnote-backref:before svg{transform:scaleX(-1)}[dir=ltr] .md-typeset .headerlink{margin-left:.5rem}[dir=rtl] .md-typeset .headerlink{margin-right:.5rem}.md-typeset .headerlink{color:var(--md-default-fg-color--lighter);display:inline-block;opacity:0;transition:color .25s,opacity 125ms}@media print{.md-typeset .headerlink{display:none}}.md-typeset .headerlink:focus,.md-typeset :hover>.headerlink,.md-typeset :target>.headerlink{opacity:1;transition:color .25s,opacity 125ms}.md-typeset .headerlink:focus,.md-typeset .headerlink:hover,.md-typeset :target>.headerlink{color:var(--md-accent-fg-color)}.md-typeset :target{--md-scroll-margin:3.6rem;--md-scroll-offset:0rem;scroll-margin-top:calc(var(--md-scroll-margin) - var(--md-scroll-offset))}@media screen and (min-width:76.25em){.md-header--lifted~.md-container .md-typeset :target{--md-scroll-margin:6rem}}.md-typeset h1:target,.md-typeset h2:target,.md-typeset h3:target{--md-scroll-offset:0.2rem}.md-typeset h4:target{--md-scroll-offset:0.15rem}.md-typeset div.arithmatex{overflow:auto}@media screen and (max-width:44.984375em){.md-typeset div.arithmatex{margin:0 -.8rem}}.md-typeset div.arithmatex>*{margin-left:auto!important;margin-right:auto!important;padding:0 .8rem;touch-action:auto;width:-webkit-min-content;width:min-content}.md-typeset div.arithmatex>* mjx-container{margin:0!important}.md-typeset del.critic{background-color:var(--md-typeset-del-color)}.md-typeset del.critic,.md-typeset ins.critic{-webkit-box-decoration-break:clone;box-decoration-break:clone}.md-typeset ins.critic{background-color:var(--md-typeset-ins-color)}.md-typeset .critic.comment{-webkit-box-decoration-break:clone;box-decoration-break:clone;color:var(--md-code-hl-comment-color)}.md-typeset .critic.comment:before{content:"/* "}.md-typeset .critic.comment:after{content:" */"}.md-typeset .critic.block{box-shadow:none;display:block;margin:1em 0;overflow:auto;padding-left:.8rem;padding-right:.8rem}.md-typeset .critic.block>:first-child{margin-top:.5em}.md-typeset .critic.block>:last-child{margin-bottom:.5em}:root{--md-details-icon:url('data:image/svg+xml;charset=utf-8,')}.md-typeset details{display:flow-root;overflow:visible;padding-top:0}.md-typeset details[open]>summary:after{transform:rotate(90deg)}.md-typeset details:not([open]){box-shadow:none;padding-bottom:0}.md-typeset details:not([open])>summary{border-radius:.1rem}[dir=ltr] .md-typeset summary{padding-right:1.8rem}[dir=rtl] .md-typeset summary{padding-left:1.8rem}[dir=ltr] .md-typeset summary{border-top-left-radius:.1rem}[dir=ltr] .md-typeset summary,[dir=rtl] .md-typeset summary{border-top-right-radius:.1rem}[dir=rtl] .md-typeset summary{border-top-left-radius:.1rem}.md-typeset summary{cursor:pointer;display:block;min-height:1rem}.md-typeset summary.focus-visible{outline-color:var(--md-accent-fg-color);outline-offset:.2rem}.md-typeset summary:not(.focus-visible){-webkit-tap-highlight-color:transparent;outline:none}[dir=ltr] .md-typeset summary:after{right:.4rem}[dir=rtl] .md-typeset summary:after{left:.4rem}.md-typeset summary:after{background-color:currentcolor;content:"";height:1rem;-webkit-mask-image:var(--md-details-icon);mask-image:var(--md-details-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;position:absolute;top:.625em;transform:rotate(0deg);transition:transform .25s;width:1rem}[dir=rtl] .md-typeset summary:after{transform:rotate(180deg)}.md-typeset summary::marker{display:none}.md-typeset summary::-webkit-details-marker{display:none}.md-typeset .emojione,.md-typeset .gemoji,.md-typeset .twemoji{display:inline-flex;height:1.125em;vertical-align:text-top}.md-typeset .emojione svg,.md-typeset .gemoji svg,.md-typeset .twemoji svg{fill:currentcolor;max-height:100%;width:1.125em}.highlight .o,.highlight .ow{color:var(--md-code-hl-operator-color)}.highlight .p{color:var(--md-code-hl-punctuation-color)}.highlight .cpf,.highlight .l,.highlight .s,.highlight .s1,.highlight .s2,.highlight .sb,.highlight .sc,.highlight .si,.highlight .ss{color:var(--md-code-hl-string-color)}.highlight .cp,.highlight .se,.highlight .sh,.highlight .sr,.highlight .sx{color:var(--md-code-hl-special-color)}.highlight .il,.highlight .m,.highlight .mb,.highlight .mf,.highlight .mh,.highlight .mi,.highlight .mo{color:var(--md-code-hl-number-color)}.highlight .k,.highlight .kd,.highlight .kn,.highlight .kp,.highlight .kr,.highlight .kt{color:var(--md-code-hl-keyword-color)}.highlight .kc,.highlight .n{color:var(--md-code-hl-name-color)}.highlight .bp,.highlight .nb,.highlight .no{color:var(--md-code-hl-constant-color)}.highlight .nc,.highlight .ne,.highlight .nf,.highlight .nn{color:var(--md-code-hl-function-color)}.highlight .nd,.highlight .ni,.highlight .nl,.highlight .nt{color:var(--md-code-hl-keyword-color)}.highlight .c,.highlight .c1,.highlight .ch,.highlight .cm,.highlight .cs,.highlight .sd{color:var(--md-code-hl-comment-color)}.highlight .na,.highlight .nv,.highlight .vc,.highlight .vg,.highlight .vi{color:var(--md-code-hl-variable-color)}.highlight .ge,.highlight .gh,.highlight .go,.highlight .gp,.highlight .gr,.highlight .gs,.highlight .gt,.highlight .gu{color:var(--md-code-hl-generic-color)}.highlight .gd,.highlight .gi{border-radius:.1rem;margin:0 -.125em;padding:0 .125em}.highlight .gd{background-color:var(--md-typeset-del-color)}.highlight .gi{background-color:var(--md-typeset-ins-color)}.highlight .hll{background-color:var(--md-code-hl-color--light);box-shadow:2px 0 0 0 var(--md-code-hl-color) inset;display:block;margin:0 -1.1764705882em;padding:0 1.1764705882em}.highlight span.filename{background-color:var(--md-code-bg-color);border-bottom:.05rem solid var(--md-default-fg-color--lightest);border-top-left-radius:.1rem;border-top-right-radius:.1rem;display:flow-root;font-size:.85em;font-weight:700;margin-top:1em;padding:.6617647059em 1.1764705882em;position:relative}.highlight span.filename+pre{margin-top:0}.highlight span.filename+pre>code{border-top-left-radius:0;border-top-right-radius:0}.highlight [data-linenos]:before{background-color:var(--md-code-bg-color);box-shadow:-.05rem 0 var(--md-default-fg-color--lightest) inset;color:var(--md-default-fg-color--light);content:attr(data-linenos);float:left;left:-1.1764705882em;margin-left:-1.1764705882em;margin-right:1.1764705882em;padding-left:1.1764705882em;position:sticky;-webkit-user-select:none;user-select:none;z-index:3}.highlight code a[id]{position:absolute;visibility:hidden}.highlight code[data-md-copying] .hll{display:contents}.highlight code[data-md-copying] .md-annotation{display:none}.highlighttable{display:flow-root}.highlighttable tbody,.highlighttable td{display:block;padding:0}.highlighttable tr{display:flex}.highlighttable pre{margin:0}.highlighttable th.filename{flex-grow:1;padding:0;text-align:left}.highlighttable th.filename span.filename{margin-top:0}.highlighttable .linenos{background-color:var(--md-code-bg-color);border-bottom-left-radius:.1rem;border-top-left-radius:.1rem;font-size:.85em;padding:.7720588235em 0 .7720588235em 1.1764705882em;-webkit-user-select:none;user-select:none}.highlighttable .linenodiv{box-shadow:-.05rem 0 var(--md-default-fg-color--lightest) inset;padding-right:.5882352941em}.highlighttable .linenodiv pre{color:var(--md-default-fg-color--light);text-align:right}.highlighttable .code{flex:1;min-width:0}.linenodiv a{color:inherit}.md-typeset .highlighttable{direction:ltr;margin:1em 0}.md-typeset .highlighttable>tbody>tr>.code>div>pre>code{border-bottom-left-radius:0;border-top-left-radius:0}.md-typeset .highlight+.result{border:.05rem solid var(--md-code-bg-color);border-bottom-left-radius:.1rem;border-bottom-right-radius:.1rem;border-top-width:.1rem;margin-top:-1.125em;overflow:visible;padding:0 1em}.md-typeset .highlight+.result:after{clear:both;content:"";display:block}@media screen and (max-width:44.984375em){.md-content__inner>.highlight{margin:1em -.8rem}.md-content__inner>.highlight>.filename,.md-content__inner>.highlight>.highlighttable>tbody>tr>.code>div>pre>code,.md-content__inner>.highlight>.highlighttable>tbody>tr>.filename span.filename,.md-content__inner>.highlight>.highlighttable>tbody>tr>.linenos,.md-content__inner>.highlight>pre>code{border-radius:0}.md-content__inner>.highlight+.result{border-left-width:0;border-radius:0;border-right-width:0;margin-left:-.8rem;margin-right:-.8rem}}.md-typeset .keys kbd:after,.md-typeset .keys kbd:before{-moz-osx-font-smoothing:initial;-webkit-font-smoothing:initial;color:inherit;margin:0;position:relative}.md-typeset .keys span{color:var(--md-default-fg-color--light);padding:0 .2em}.md-typeset .keys .key-alt:before,.md-typeset .keys .key-left-alt:before,.md-typeset .keys .key-right-alt:before{content:"⎇";padding-right:.4em}.md-typeset .keys .key-command:before,.md-typeset .keys .key-left-command:before,.md-typeset .keys .key-right-command:before{content:"⌘";padding-right:.4em}.md-typeset .keys .key-control:before,.md-typeset .keys .key-left-control:before,.md-typeset .keys .key-right-control:before{content:"⌃";padding-right:.4em}.md-typeset .keys .key-left-meta:before,.md-typeset .keys .key-meta:before,.md-typeset .keys .key-right-meta:before{content:"◆";padding-right:.4em}.md-typeset .keys .key-left-option:before,.md-typeset .keys .key-option:before,.md-typeset .keys .key-right-option:before{content:"⌥";padding-right:.4em}.md-typeset .keys .key-left-shift:before,.md-typeset .keys .key-right-shift:before,.md-typeset .keys .key-shift:before{content:"⇧";padding-right:.4em}.md-typeset .keys .key-left-super:before,.md-typeset .keys .key-right-super:before,.md-typeset .keys .key-super:before{content:"❖";padding-right:.4em}.md-typeset .keys .key-left-windows:before,.md-typeset .keys .key-right-windows:before,.md-typeset .keys .key-windows:before{content:"⊞";padding-right:.4em}.md-typeset .keys .key-arrow-down:before{content:"↓";padding-right:.4em}.md-typeset .keys .key-arrow-left:before{content:"←";padding-right:.4em}.md-typeset .keys .key-arrow-right:before{content:"→";padding-right:.4em}.md-typeset .keys .key-arrow-up:before{content:"↑";padding-right:.4em}.md-typeset .keys .key-backspace:before{content:"⌫";padding-right:.4em}.md-typeset .keys .key-backtab:before{content:"⇤";padding-right:.4em}.md-typeset .keys .key-caps-lock:before{content:"⇪";padding-right:.4em}.md-typeset .keys .key-clear:before{content:"⌧";padding-right:.4em}.md-typeset .keys .key-context-menu:before{content:"☰";padding-right:.4em}.md-typeset .keys .key-delete:before{content:"⌦";padding-right:.4em}.md-typeset .keys .key-eject:before{content:"⏏";padding-right:.4em}.md-typeset .keys .key-end:before{content:"⤓";padding-right:.4em}.md-typeset .keys .key-escape:before{content:"⎋";padding-right:.4em}.md-typeset .keys .key-home:before{content:"⤒";padding-right:.4em}.md-typeset .keys .key-insert:before{content:"⎀";padding-right:.4em}.md-typeset .keys .key-page-down:before{content:"⇟";padding-right:.4em}.md-typeset .keys .key-page-up:before{content:"⇞";padding-right:.4em}.md-typeset .keys .key-print-screen:before{content:"⎙";padding-right:.4em}.md-typeset .keys .key-tab:after{content:"⇥";padding-left:.4em}.md-typeset .keys .key-num-enter:after{content:"⌤";padding-left:.4em}.md-typeset .keys .key-enter:after{content:"⏎";padding-left:.4em}:root{--md-tabbed-icon--prev:url('data:image/svg+xml;charset=utf-8,');--md-tabbed-icon--next:url('data:image/svg+xml;charset=utf-8,')}.md-typeset .tabbed-set{border-radius:.1rem;display:flex;flex-flow:column wrap;margin:1em 0;position:relative}.md-typeset .tabbed-set>input{height:0;opacity:0;position:absolute;width:0}.md-typeset .tabbed-set>input:target{--md-scroll-offset:0.625em}.md-typeset .tabbed-set>input.focus-visible~.tabbed-labels:before{background-color:var(--md-accent-fg-color)}.md-typeset .tabbed-labels{-ms-overflow-style:none;box-shadow:0 -.05rem var(--md-default-fg-color--lightest) inset;display:flex;max-width:100%;overflow:auto;scrollbar-width:none}@media print{.md-typeset .tabbed-labels{display:contents}}@media screen{.js .md-typeset .tabbed-labels{position:relative}.js .md-typeset .tabbed-labels:before{background:var(--md-default-fg-color);bottom:0;content:"";display:block;height:2px;left:0;position:absolute;transform:translateX(var(--md-indicator-x));transition:width 225ms,background-color .25s,transform .25s;transition-timing-function:cubic-bezier(.4,0,.2,1);width:var(--md-indicator-width)}}.md-typeset .tabbed-labels::-webkit-scrollbar{display:none}.md-typeset .tabbed-labels>label{border-bottom:.1rem solid #0000;border-radius:.1rem .1rem 0 0;color:var(--md-default-fg-color--light);cursor:pointer;flex-shrink:0;font-size:.64rem;font-weight:700;padding:.78125em 1.25em .625em;scroll-margin-inline-start:1rem;transition:background-color .25s,color .25s;white-space:nowrap;width:auto}@media print{.md-typeset .tabbed-labels>label:first-child{order:1}.md-typeset .tabbed-labels>label:nth-child(2){order:2}.md-typeset .tabbed-labels>label:nth-child(3){order:3}.md-typeset .tabbed-labels>label:nth-child(4){order:4}.md-typeset .tabbed-labels>label:nth-child(5){order:5}.md-typeset .tabbed-labels>label:nth-child(6){order:6}.md-typeset .tabbed-labels>label:nth-child(7){order:7}.md-typeset .tabbed-labels>label:nth-child(8){order:8}.md-typeset .tabbed-labels>label:nth-child(9){order:9}.md-typeset .tabbed-labels>label:nth-child(10){order:10}.md-typeset .tabbed-labels>label:nth-child(11){order:11}.md-typeset .tabbed-labels>label:nth-child(12){order:12}.md-typeset .tabbed-labels>label:nth-child(13){order:13}.md-typeset .tabbed-labels>label:nth-child(14){order:14}.md-typeset .tabbed-labels>label:nth-child(15){order:15}.md-typeset .tabbed-labels>label:nth-child(16){order:16}.md-typeset .tabbed-labels>label:nth-child(17){order:17}.md-typeset .tabbed-labels>label:nth-child(18){order:18}.md-typeset .tabbed-labels>label:nth-child(19){order:19}.md-typeset .tabbed-labels>label:nth-child(20){order:20}}.md-typeset .tabbed-labels>label:hover{color:var(--md-default-fg-color)}.md-typeset .tabbed-content{width:100%}@media print{.md-typeset .tabbed-content{display:contents}}.md-typeset .tabbed-block{display:none}@media print{.md-typeset .tabbed-block{display:block}.md-typeset .tabbed-block:first-child{order:1}.md-typeset .tabbed-block:nth-child(2){order:2}.md-typeset .tabbed-block:nth-child(3){order:3}.md-typeset .tabbed-block:nth-child(4){order:4}.md-typeset .tabbed-block:nth-child(5){order:5}.md-typeset .tabbed-block:nth-child(6){order:6}.md-typeset .tabbed-block:nth-child(7){order:7}.md-typeset .tabbed-block:nth-child(8){order:8}.md-typeset .tabbed-block:nth-child(9){order:9}.md-typeset .tabbed-block:nth-child(10){order:10}.md-typeset .tabbed-block:nth-child(11){order:11}.md-typeset .tabbed-block:nth-child(12){order:12}.md-typeset .tabbed-block:nth-child(13){order:13}.md-typeset .tabbed-block:nth-child(14){order:14}.md-typeset .tabbed-block:nth-child(15){order:15}.md-typeset .tabbed-block:nth-child(16){order:16}.md-typeset .tabbed-block:nth-child(17){order:17}.md-typeset .tabbed-block:nth-child(18){order:18}.md-typeset .tabbed-block:nth-child(19){order:19}.md-typeset .tabbed-block:nth-child(20){order:20}}.md-typeset .tabbed-block>.highlight:first-child>pre,.md-typeset .tabbed-block>pre:first-child{margin:0}.md-typeset .tabbed-block>.highlight:first-child>pre>code,.md-typeset .tabbed-block>pre:first-child>code{border-top-left-radius:0;border-top-right-radius:0}.md-typeset .tabbed-block>.highlight:first-child>.filename{border-top-left-radius:0;border-top-right-radius:0;margin:0}.md-typeset .tabbed-block>.highlight:first-child>.highlighttable{margin:0}.md-typeset .tabbed-block>.highlight:first-child>.highlighttable>tbody>tr>.filename span.filename,.md-typeset .tabbed-block>.highlight:first-child>.highlighttable>tbody>tr>.linenos{border-top-left-radius:0;border-top-right-radius:0;margin:0}.md-typeset .tabbed-block>.highlight:first-child>.highlighttable>tbody>tr>.code>div>pre>code{border-top-left-radius:0;border-top-right-radius:0}.md-typeset .tabbed-block>.highlight:first-child+.result{margin-top:-.125em}.md-typeset .tabbed-block>.tabbed-set{margin:0}.md-typeset .tabbed-button{align-self:center;border-radius:100%;color:var(--md-default-fg-color--light);cursor:pointer;display:block;height:.9rem;margin-top:.1rem;pointer-events:auto;transition:background-color .25s;width:.9rem}.md-typeset .tabbed-button:hover{background-color:var(--md-accent-fg-color--transparent);color:var(--md-accent-fg-color)}.md-typeset .tabbed-button:after{background-color:currentcolor;content:"";display:block;height:100%;-webkit-mask-image:var(--md-tabbed-icon--prev);mask-image:var(--md-tabbed-icon--prev);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;transition:background-color .25s,transform .25s;width:100%}.md-typeset .tabbed-control{background:linear-gradient(to right,var(--md-default-bg-color) 60%,#0000);display:flex;height:1.9rem;justify-content:start;pointer-events:none;position:absolute;transition:opacity 125ms;width:1.2rem}[dir=rtl] .md-typeset .tabbed-control{transform:rotate(180deg)}.md-typeset .tabbed-control[hidden]{opacity:0}.md-typeset .tabbed-control--next{background:linear-gradient(to left,var(--md-default-bg-color) 60%,#0000);justify-content:end;right:0}.md-typeset .tabbed-control--next .tabbed-button:after{-webkit-mask-image:var(--md-tabbed-icon--next);mask-image:var(--md-tabbed-icon--next)}@media screen and (max-width:44.984375em){[dir=ltr] .md-content__inner>.tabbed-set .tabbed-labels{padding-left:.8rem}[dir=rtl] .md-content__inner>.tabbed-set .tabbed-labels{padding-right:.8rem}.md-content__inner>.tabbed-set .tabbed-labels{margin:0 -.8rem;max-width:100vw;scroll-padding-inline-start:.8rem}[dir=ltr] .md-content__inner>.tabbed-set .tabbed-labels:after{padding-right:.8rem}[dir=rtl] .md-content__inner>.tabbed-set .tabbed-labels:after{padding-left:.8rem}.md-content__inner>.tabbed-set .tabbed-labels:after{content:""}[dir=ltr] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--prev{padding-left:.8rem}[dir=rtl] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--prev{padding-right:.8rem}[dir=ltr] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--prev{margin-left:-.8rem}[dir=rtl] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--prev{margin-right:-.8rem}.md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--prev{width:2rem}[dir=ltr] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--next{padding-right:.8rem}[dir=rtl] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--next{padding-left:.8rem}[dir=ltr] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--next{margin-right:-.8rem}[dir=rtl] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--next{margin-left:-.8rem}.md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--next{width:2rem}}@media screen{.md-typeset .tabbed-set>input:first-child:checked~.tabbed-labels>:first-child,.md-typeset .tabbed-set>input:nth-child(10):checked~.tabbed-labels>:nth-child(10),.md-typeset .tabbed-set>input:nth-child(11):checked~.tabbed-labels>:nth-child(11),.md-typeset .tabbed-set>input:nth-child(12):checked~.tabbed-labels>:nth-child(12),.md-typeset .tabbed-set>input:nth-child(13):checked~.tabbed-labels>:nth-child(13),.md-typeset .tabbed-set>input:nth-child(14):checked~.tabbed-labels>:nth-child(14),.md-typeset .tabbed-set>input:nth-child(15):checked~.tabbed-labels>:nth-child(15),.md-typeset .tabbed-set>input:nth-child(16):checked~.tabbed-labels>:nth-child(16),.md-typeset .tabbed-set>input:nth-child(17):checked~.tabbed-labels>:nth-child(17),.md-typeset .tabbed-set>input:nth-child(18):checked~.tabbed-labels>:nth-child(18),.md-typeset .tabbed-set>input:nth-child(19):checked~.tabbed-labels>:nth-child(19),.md-typeset .tabbed-set>input:nth-child(2):checked~.tabbed-labels>:nth-child(2),.md-typeset .tabbed-set>input:nth-child(20):checked~.tabbed-labels>:nth-child(20),.md-typeset .tabbed-set>input:nth-child(3):checked~.tabbed-labels>:nth-child(3),.md-typeset .tabbed-set>input:nth-child(4):checked~.tabbed-labels>:nth-child(4),.md-typeset .tabbed-set>input:nth-child(5):checked~.tabbed-labels>:nth-child(5),.md-typeset .tabbed-set>input:nth-child(6):checked~.tabbed-labels>:nth-child(6),.md-typeset .tabbed-set>input:nth-child(7):checked~.tabbed-labels>:nth-child(7),.md-typeset .tabbed-set>input:nth-child(8):checked~.tabbed-labels>:nth-child(8),.md-typeset .tabbed-set>input:nth-child(9):checked~.tabbed-labels>:nth-child(9){color:var(--md-default-fg-color)}.md-typeset .no-js .tabbed-set>input:first-child:checked~.tabbed-labels>:first-child,.md-typeset .no-js .tabbed-set>input:nth-child(10):checked~.tabbed-labels>:nth-child(10),.md-typeset .no-js .tabbed-set>input:nth-child(11):checked~.tabbed-labels>:nth-child(11),.md-typeset .no-js .tabbed-set>input:nth-child(12):checked~.tabbed-labels>:nth-child(12),.md-typeset .no-js .tabbed-set>input:nth-child(13):checked~.tabbed-labels>:nth-child(13),.md-typeset .no-js .tabbed-set>input:nth-child(14):checked~.tabbed-labels>:nth-child(14),.md-typeset .no-js .tabbed-set>input:nth-child(15):checked~.tabbed-labels>:nth-child(15),.md-typeset .no-js .tabbed-set>input:nth-child(16):checked~.tabbed-labels>:nth-child(16),.md-typeset .no-js .tabbed-set>input:nth-child(17):checked~.tabbed-labels>:nth-child(17),.md-typeset .no-js .tabbed-set>input:nth-child(18):checked~.tabbed-labels>:nth-child(18),.md-typeset .no-js .tabbed-set>input:nth-child(19):checked~.tabbed-labels>:nth-child(19),.md-typeset .no-js .tabbed-set>input:nth-child(2):checked~.tabbed-labels>:nth-child(2),.md-typeset .no-js .tabbed-set>input:nth-child(20):checked~.tabbed-labels>:nth-child(20),.md-typeset .no-js .tabbed-set>input:nth-child(3):checked~.tabbed-labels>:nth-child(3),.md-typeset .no-js .tabbed-set>input:nth-child(4):checked~.tabbed-labels>:nth-child(4),.md-typeset .no-js .tabbed-set>input:nth-child(5):checked~.tabbed-labels>:nth-child(5),.md-typeset .no-js .tabbed-set>input:nth-child(6):checked~.tabbed-labels>:nth-child(6),.md-typeset .no-js .tabbed-set>input:nth-child(7):checked~.tabbed-labels>:nth-child(7),.md-typeset .no-js .tabbed-set>input:nth-child(8):checked~.tabbed-labels>:nth-child(8),.md-typeset .no-js .tabbed-set>input:nth-child(9):checked~.tabbed-labels>:nth-child(9),.no-js .md-typeset .tabbed-set>input:first-child:checked~.tabbed-labels>:first-child,.no-js .md-typeset .tabbed-set>input:nth-child(10):checked~.tabbed-labels>:nth-child(10),.no-js .md-typeset .tabbed-set>input:nth-child(11):checked~.tabbed-labels>:nth-child(11),.no-js .md-typeset .tabbed-set>input:nth-child(12):checked~.tabbed-labels>:nth-child(12),.no-js .md-typeset .tabbed-set>input:nth-child(13):checked~.tabbed-labels>:nth-child(13),.no-js .md-typeset .tabbed-set>input:nth-child(14):checked~.tabbed-labels>:nth-child(14),.no-js .md-typeset .tabbed-set>input:nth-child(15):checked~.tabbed-labels>:nth-child(15),.no-js .md-typeset .tabbed-set>input:nth-child(16):checked~.tabbed-labels>:nth-child(16),.no-js .md-typeset .tabbed-set>input:nth-child(17):checked~.tabbed-labels>:nth-child(17),.no-js .md-typeset .tabbed-set>input:nth-child(18):checked~.tabbed-labels>:nth-child(18),.no-js .md-typeset .tabbed-set>input:nth-child(19):checked~.tabbed-labels>:nth-child(19),.no-js .md-typeset .tabbed-set>input:nth-child(2):checked~.tabbed-labels>:nth-child(2),.no-js .md-typeset .tabbed-set>input:nth-child(20):checked~.tabbed-labels>:nth-child(20),.no-js .md-typeset .tabbed-set>input:nth-child(3):checked~.tabbed-labels>:nth-child(3),.no-js .md-typeset .tabbed-set>input:nth-child(4):checked~.tabbed-labels>:nth-child(4),.no-js .md-typeset .tabbed-set>input:nth-child(5):checked~.tabbed-labels>:nth-child(5),.no-js .md-typeset .tabbed-set>input:nth-child(6):checked~.tabbed-labels>:nth-child(6),.no-js .md-typeset .tabbed-set>input:nth-child(7):checked~.tabbed-labels>:nth-child(7),.no-js .md-typeset .tabbed-set>input:nth-child(8):checked~.tabbed-labels>:nth-child(8),.no-js .md-typeset .tabbed-set>input:nth-child(9):checked~.tabbed-labels>:nth-child(9){border-color:var(--md-default-fg-color)}}.md-typeset .tabbed-set>input:first-child.focus-visible~.tabbed-labels>:first-child,.md-typeset .tabbed-set>input:nth-child(10).focus-visible~.tabbed-labels>:nth-child(10),.md-typeset .tabbed-set>input:nth-child(11).focus-visible~.tabbed-labels>:nth-child(11),.md-typeset .tabbed-set>input:nth-child(12).focus-visible~.tabbed-labels>:nth-child(12),.md-typeset .tabbed-set>input:nth-child(13).focus-visible~.tabbed-labels>:nth-child(13),.md-typeset .tabbed-set>input:nth-child(14).focus-visible~.tabbed-labels>:nth-child(14),.md-typeset .tabbed-set>input:nth-child(15).focus-visible~.tabbed-labels>:nth-child(15),.md-typeset .tabbed-set>input:nth-child(16).focus-visible~.tabbed-labels>:nth-child(16),.md-typeset .tabbed-set>input:nth-child(17).focus-visible~.tabbed-labels>:nth-child(17),.md-typeset .tabbed-set>input:nth-child(18).focus-visible~.tabbed-labels>:nth-child(18),.md-typeset .tabbed-set>input:nth-child(19).focus-visible~.tabbed-labels>:nth-child(19),.md-typeset .tabbed-set>input:nth-child(2).focus-visible~.tabbed-labels>:nth-child(2),.md-typeset .tabbed-set>input:nth-child(20).focus-visible~.tabbed-labels>:nth-child(20),.md-typeset .tabbed-set>input:nth-child(3).focus-visible~.tabbed-labels>:nth-child(3),.md-typeset .tabbed-set>input:nth-child(4).focus-visible~.tabbed-labels>:nth-child(4),.md-typeset .tabbed-set>input:nth-child(5).focus-visible~.tabbed-labels>:nth-child(5),.md-typeset .tabbed-set>input:nth-child(6).focus-visible~.tabbed-labels>:nth-child(6),.md-typeset .tabbed-set>input:nth-child(7).focus-visible~.tabbed-labels>:nth-child(7),.md-typeset .tabbed-set>input:nth-child(8).focus-visible~.tabbed-labels>:nth-child(8),.md-typeset .tabbed-set>input:nth-child(9).focus-visible~.tabbed-labels>:nth-child(9){color:var(--md-accent-fg-color)}.md-typeset .tabbed-set>input:first-child:checked~.tabbed-content>:first-child,.md-typeset .tabbed-set>input:nth-child(10):checked~.tabbed-content>:nth-child(10),.md-typeset .tabbed-set>input:nth-child(11):checked~.tabbed-content>:nth-child(11),.md-typeset .tabbed-set>input:nth-child(12):checked~.tabbed-content>:nth-child(12),.md-typeset .tabbed-set>input:nth-child(13):checked~.tabbed-content>:nth-child(13),.md-typeset .tabbed-set>input:nth-child(14):checked~.tabbed-content>:nth-child(14),.md-typeset .tabbed-set>input:nth-child(15):checked~.tabbed-content>:nth-child(15),.md-typeset .tabbed-set>input:nth-child(16):checked~.tabbed-content>:nth-child(16),.md-typeset .tabbed-set>input:nth-child(17):checked~.tabbed-content>:nth-child(17),.md-typeset .tabbed-set>input:nth-child(18):checked~.tabbed-content>:nth-child(18),.md-typeset .tabbed-set>input:nth-child(19):checked~.tabbed-content>:nth-child(19),.md-typeset .tabbed-set>input:nth-child(2):checked~.tabbed-content>:nth-child(2),.md-typeset .tabbed-set>input:nth-child(20):checked~.tabbed-content>:nth-child(20),.md-typeset .tabbed-set>input:nth-child(3):checked~.tabbed-content>:nth-child(3),.md-typeset .tabbed-set>input:nth-child(4):checked~.tabbed-content>:nth-child(4),.md-typeset .tabbed-set>input:nth-child(5):checked~.tabbed-content>:nth-child(5),.md-typeset .tabbed-set>input:nth-child(6):checked~.tabbed-content>:nth-child(6),.md-typeset .tabbed-set>input:nth-child(7):checked~.tabbed-content>:nth-child(7),.md-typeset .tabbed-set>input:nth-child(8):checked~.tabbed-content>:nth-child(8),.md-typeset .tabbed-set>input:nth-child(9):checked~.tabbed-content>:nth-child(9){display:block}:root{--md-tasklist-icon:url('data:image/svg+xml;charset=utf-8,');--md-tasklist-icon--checked:url('data:image/svg+xml;charset=utf-8,')}.md-typeset .task-list-item{list-style-type:none;position:relative}[dir=ltr] .md-typeset .task-list-item [type=checkbox]{left:-2em}[dir=rtl] .md-typeset .task-list-item [type=checkbox]{right:-2em}.md-typeset .task-list-item [type=checkbox]{position:absolute;top:.45em}.md-typeset .task-list-control [type=checkbox]{opacity:0;z-index:-1}[dir=ltr] .md-typeset .task-list-indicator:before{left:-1.5em}[dir=rtl] .md-typeset .task-list-indicator:before{right:-1.5em}.md-typeset .task-list-indicator:before{background-color:var(--md-default-fg-color--lightest);content:"";height:1.25em;-webkit-mask-image:var(--md-tasklist-icon);mask-image:var(--md-tasklist-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;position:absolute;top:.15em;width:1.25em}.md-typeset [type=checkbox]:checked+.task-list-indicator:before{background-color:#00e676;-webkit-mask-image:var(--md-tasklist-icon--checked);mask-image:var(--md-tasklist-icon--checked)}:root>*{--md-mermaid-font-family:var(--md-text-font-family),sans-serif;--md-mermaid-edge-color:var(--md-code-fg-color);--md-mermaid-node-bg-color:var(--md-accent-fg-color--transparent);--md-mermaid-node-fg-color:var(--md-accent-fg-color);--md-mermaid-label-bg-color:var(--md-default-bg-color);--md-mermaid-label-fg-color:var(--md-code-fg-color);--md-mermaid-sequence-actor-bg-color:var(--md-mermaid-label-bg-color);--md-mermaid-sequence-actor-fg-color:var(--md-mermaid-label-fg-color);--md-mermaid-sequence-actor-border-color:var(--md-mermaid-node-fg-color);--md-mermaid-sequence-actor-line-color:var(--md-default-fg-color--lighter);--md-mermaid-sequence-actorman-bg-color:var(--md-mermaid-label-bg-color);--md-mermaid-sequence-actorman-line-color:var(--md-mermaid-node-fg-color);--md-mermaid-sequence-box-bg-color:var(--md-mermaid-node-bg-color);--md-mermaid-sequence-box-fg-color:var(--md-mermaid-edge-color);--md-mermaid-sequence-label-bg-color:var(--md-mermaid-node-bg-color);--md-mermaid-sequence-label-fg-color:var(--md-mermaid-node-fg-color);--md-mermaid-sequence-loop-bg-color:var(--md-mermaid-node-bg-color);--md-mermaid-sequence-loop-fg-color:var(--md-mermaid-edge-color);--md-mermaid-sequence-loop-border-color:var(--md-mermaid-node-fg-color);--md-mermaid-sequence-message-fg-color:var(--md-mermaid-edge-color);--md-mermaid-sequence-message-line-color:var(--md-mermaid-edge-color);--md-mermaid-sequence-note-bg-color:var(--md-mermaid-label-bg-color);--md-mermaid-sequence-note-fg-color:var(--md-mermaid-edge-color);--md-mermaid-sequence-note-border-color:var(--md-mermaid-label-fg-color);--md-mermaid-sequence-number-bg-color:var(--md-mermaid-node-fg-color);--md-mermaid-sequence-number-fg-color:var(--md-accent-bg-color)}.mermaid{line-height:normal;margin:1em 0}@media screen and (min-width:45em){[dir=ltr] .md-typeset .inline{float:left}[dir=rtl] .md-typeset .inline{float:right}[dir=ltr] .md-typeset .inline{margin-right:.8rem}[dir=rtl] .md-typeset .inline{margin-left:.8rem}.md-typeset .inline{margin-bottom:.8rem;margin-top:0;width:11.7rem}[dir=ltr] .md-typeset .inline.end{float:right}[dir=rtl] .md-typeset .inline.end{float:left}[dir=ltr] .md-typeset .inline.end{margin-left:.8rem;margin-right:0}[dir=rtl] .md-typeset .inline.end{margin-left:0;margin-right:.8rem}} \ No newline at end of file diff --git a/v2.x/assets/stylesheets/main.6a10b989.min.css.map b/v2.x/assets/stylesheets/main.6a10b989.min.css.map deleted file mode 100644 index e9c64423c..000000000 --- a/v2.x/assets/stylesheets/main.6a10b989.min.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["src/templates/assets/stylesheets/main/components/_meta.scss","../../../../src/templates/assets/stylesheets/main.scss","src/templates/assets/stylesheets/main/_resets.scss","src/templates/assets/stylesheets/main/_colors.scss","src/templates/assets/stylesheets/main/_icons.scss","src/templates/assets/stylesheets/main/_typeset.scss","src/templates/assets/stylesheets/utilities/_break.scss","src/templates/assets/stylesheets/main/components/_author.scss","src/templates/assets/stylesheets/main/components/_banner.scss","src/templates/assets/stylesheets/main/components/_base.scss","src/templates/assets/stylesheets/main/components/_clipboard.scss","src/templates/assets/stylesheets/main/components/_consent.scss","src/templates/assets/stylesheets/main/components/_content.scss","src/templates/assets/stylesheets/main/components/_dialog.scss","src/templates/assets/stylesheets/main/components/_feedback.scss","src/templates/assets/stylesheets/main/components/_footer.scss","src/templates/assets/stylesheets/main/components/_form.scss","src/templates/assets/stylesheets/main/components/_header.scss","node_modules/material-design-color/material-color.scss","src/templates/assets/stylesheets/main/components/_nav.scss","src/templates/assets/stylesheets/main/components/_pagination.scss","src/templates/assets/stylesheets/main/components/_post.scss","src/templates/assets/stylesheets/main/components/_progress.scss","src/templates/assets/stylesheets/main/components/_search.scss","src/templates/assets/stylesheets/main/components/_select.scss","src/templates/assets/stylesheets/main/components/_sidebar.scss","src/templates/assets/stylesheets/main/components/_source.scss","src/templates/assets/stylesheets/main/components/_status.scss","src/templates/assets/stylesheets/main/components/_tabs.scss","src/templates/assets/stylesheets/main/components/_tag.scss","src/templates/assets/stylesheets/main/components/_tooltip.scss","src/templates/assets/stylesheets/main/components/_top.scss","src/templates/assets/stylesheets/main/components/_version.scss","src/templates/assets/stylesheets/main/extensions/markdown/_admonition.scss","src/templates/assets/stylesheets/main/extensions/markdown/_footnotes.scss","src/templates/assets/stylesheets/main/extensions/markdown/_toc.scss","src/templates/assets/stylesheets/main/extensions/pymdownx/_arithmatex.scss","src/templates/assets/stylesheets/main/extensions/pymdownx/_critic.scss","src/templates/assets/stylesheets/main/extensions/pymdownx/_details.scss","src/templates/assets/stylesheets/main/extensions/pymdownx/_emoji.scss","src/templates/assets/stylesheets/main/extensions/pymdownx/_highlight.scss","src/templates/assets/stylesheets/main/extensions/pymdownx/_keys.scss","src/templates/assets/stylesheets/main/extensions/pymdownx/_tabbed.scss","src/templates/assets/stylesheets/main/extensions/pymdownx/_tasklist.scss","src/templates/assets/stylesheets/main/integrations/_mermaid.scss","src/templates/assets/stylesheets/main/_modifiers.scss"],"names":[],"mappings":"AA0CE,gBC+xCF,CC7yCA,KAEE,6BAAA,CAAA,0BAAA,CAAA,qBAAA,CADA,qBDzBF,CC8BA,iBAGE,kBD3BF,CC8BE,gCANF,iBAOI,yBDzBF,CACF,CC6BA,KACE,QD1BF,CC8BA,qBAIE,uCD3BF,CC+BA,EACE,aAAA,CACA,oBD5BF,CCgCA,GAME,QAAA,CALA,kBAAA,CACA,aAAA,CACA,aAAA,CAEA,gBAAA,CADA,SD3BF,CCiCA,MACE,aD9BF,CCkCA,QAEE,eD/BF,CCmCA,IACE,iBDhCF,CCoCA,MAEE,uBAAA,CADA,gBDhCF,CCqCA,MAEE,eAAA,CACA,kBDlCF,CCsCA,OAKE,gBAAA,CACA,QAAA,CAHA,mBAAA,CACA,iBAAA,CAFA,QAAA,CADA,SD9BF,CCuCA,MACE,QAAA,CACA,YDpCF,CErDA,MAIE,6BAAA,CACA,oCAAA,CACA,mCAAA,CACA,0BAAA,CACA,sCAAA,CAGA,4BAAA,CACA,2CAAA,CACA,yBAAA,CACA,qCFmDF,CE7CA,+BAIE,kBF6CF,CE1CE,oHAEE,YF4CJ,CEnCA,qCAIE,eAAA,CAGA,+BAAA,CACA,sCAAA,CACA,wCAAA,CACA,yCAAA,CACA,0BAAA,CACA,sCAAA,CACA,wCAAA,CACA,yCAAA,CAGA,0BAAA,CACA,0BAAA,CAGA,0BAAA,CACA,mCAAA,CACA,iCAAA,CACA,kCAAA,CACA,mCAAA,CACA,mCAAA,CACA,kCAAA,CACA,iCAAA,CACA,+CAAA,CACA,6DAAA,CACA,gEAAA,CACA,4DAAA,CACA,4DAAA,CACA,6DAAA,CAGA,6CAAA,CAGA,+CAAA,CAGA,gCAAA,CACA,gCAAA,CAGA,8BAAA,CACA,kCAAA,CACA,qCAAA,CAGA,iCAAA,CAGA,kCAAA,CACA,gDAAA,CAGA,mDAAA,CACA,mDAAA,CAGA,+BAAA,CACA,0BAAA,CAGA,yBAAA,CACA,qCAAA,CACA,uCAAA,CACA,8BAAA,CACA,oCAAA,CAGA,8DAAA,CAKA,8DAAA,CAKA,0DFOF,CG9HE,aAIE,iBAAA,CAHA,aAAA,CAEA,aAAA,CADA,YHmIJ,CIxIA,KACE,kCAAA,CACA,iCAAA,CAGA,uGAAA,CAKA,mFJyIF,CInIA,iBAIE,mCAAA,CACA,6BAAA,CAFA,sCJwIF,CIlIA,aAIE,4BAAA,CADA,sCJsIF,CI7HA,MACE,0NAAA,CACA,mNAAA,CACA,oNJgIF,CIzHA,YAGE,gCAAA,CAAA,kBAAA,CAFA,eAAA,CACA,eJ6HF,CIxHE,aAPF,YAQI,gBJ2HF,CACF,CIxHE,uGAME,iBAAA,CAAA,cJ0HJ,CItHE,eAKE,uCAAA,CAHA,aAAA,CAEA,eAAA,CAHA,iBJ6HJ,CIpHE,8BAPE,eAAA,CAGA,qBJ+HJ,CI3HE,eAEE,kBAAA,CAEA,eAAA,CAHA,oBJ0HJ,CIlHE,eAEE,gBAAA,CACA,eAAA,CAEA,qBAAA,CADA,eAAA,CAHA,mBJwHJ,CIhHE,kBACE,eJkHJ,CI9GE,eAEE,eAAA,CACA,qBAAA,CAFA,YJkHJ,CI5GE,8BAKE,uCAAA,CAFA,cAAA,CACA,eAAA,CAEA,qBAAA,CAJA,eJkHJ,CI1GE,eACE,wBJ4GJ,CIxGE,eAGE,+DAAA,CAFA,iBAAA,CACA,cJ2GJ,CItGE,cACE,+BAAA,CACA,qBJwGJ,CIrGI,mCAEE,sBJsGN,CIlGI,wCACE,+BJoGN,CIjGM,kDACE,uDJmGR,CI9FI,mBACE,kBAAA,CACA,iCJgGN,CI5FI,4BACE,uCAAA,CACA,oBJ8FN,CIzFE,iDAIE,6BAAA,CACA,aAAA,CAFA,2BJ6FJ,CIxFI,aARF,iDASI,oBJ6FJ,CACF,CIzFE,iBAIE,wCAAA,CACA,mBAAA,CACA,kCAAA,CAAA,0BAAA,CAJA,eAAA,CADA,uBAAA,CAEA,qBJ8FJ,CIxFI,qCAEE,uCAAA,CADA,YJ2FN,CIrFE,gBAEE,iBAAA,CACA,eAAA,CAFA,iBJyFJ,CIpFI,qBASE,kCAAA,CAAA,0BAAA,CADA,eAAA,CAPA,aAAA,CAEA,QAAA,CAIA,uCAAA,CAHA,aAAA,CAFA,oCAAA,CASA,yDAAA,CADA,oBAAA,CAJA,iBAAA,CADA,iBJ4FN,CInFM,2BACE,+CJqFR,CIjFM,wCAEE,YAAA,CADA,WJoFR,CI/EM,8CACE,oDJiFR,CI9EQ,oDACE,0CJgFV,CIzEE,gBAOE,4CAAA,CACA,mBAAA,CACA,mKACE,CANF,gCAAA,CAHA,oBAAA,CAEA,eAAA,CADA,uBAAA,CAIA,uBAAA,CADA,qBJ+EJ,CIpEE,iBAGE,6CAAA,CACA,kCAAA,CAAA,0BAAA,CAHA,aAAA,CACA,qBJwEJ,CIlEE,iBAGE,6DAAA,CADA,WAAA,CADA,oBJsEJ,CIjEI,oBAGE,wEAQE,2CAAA,CACA,mBAAA,CACA,8BAAA,CAJA,gCAAA,CACA,mBAAA,CAFA,eAAA,CAHA,UAAA,CAEA,cAAA,CADA,mBAAA,CAFA,iBAAA,CACA,WJyEN,CACF,CI5DE,kBACE,WJ8DJ,CI1DE,oDAEE,qBJ4DJ,CI9DE,oDAEE,sBJ4DJ,CIxDE,iCACE,kBJ6DJ,CI9DE,iCACE,mBJ6DJ,CI9DE,iCAIE,2DJ0DJ,CI9DE,iCAIE,4DJ0DJ,CI9DE,uBAGE,uCAAA,CADA,aAAA,CAAA,cJ4DJ,CItDE,eACE,oBJwDJ,CIpDE,kDAGE,kBJsDJ,CIzDE,kDAGE,mBJsDJ,CIzDE,8BAEE,SJuDJ,CInDI,0DACE,iBJsDN,CIlDI,oCACE,2BJqDN,CIlDM,0CACE,2BJqDR,CIhDI,wDACE,kBJoDN,CIrDI,wDACE,mBJoDN,CIrDI,oCAEE,kBJmDN,CIhDM,kGAEE,aJoDR,CIhDM,0DACE,eJmDR,CI/CM,4HAEE,kBJkDR,CIpDM,4HAEE,mBJkDR,CIpDM,oFACE,kBAAA,CAAA,eJmDR,CI5CE,yBAEE,mBJ8CJ,CIhDE,yBAEE,oBJ8CJ,CIhDE,eACE,mBAAA,CAAA,cJ+CJ,CI1CE,kDAIE,WAAA,CADA,cJ6CJ,CIrCI,4BAEE,oBJuCN,CInCI,6BAEE,oBJqCN,CIjCI,kCACE,YJmCN,CI9BE,mBACE,iBAAA,CAGA,eAAA,CADA,cAAA,CAEA,iBAAA,CAHA,yBAAA,CAAA,sBAAA,CAAA,iBJmCJ,CI7BI,uBACE,aJ+BN,CI1BE,uBAGE,iBAAA,CADA,eAAA,CADA,eJ8BJ,CIxBE,mBACE,cJ0BJ,CItBE,+BAME,2CAAA,CACA,iDAAA,CACA,mBAAA,CAPA,oBAAA,CAGA,gBAAA,CAFA,cAAA,CACA,aAAA,CAEA,iBJ2BJ,CIrBI,aAXF,+BAYI,aJwBJ,CACF,CInBI,iCACE,gBJqBN,CIdM,8FACE,YJgBR,CIZM,4FACE,eJcR,CITI,8FACE,eJWN,CIRM,kHACE,gBJUR,CILI,kCAGE,eAAA,CAFA,cAAA,CACA,sBAAA,CAEA,kBJON,CIHI,kCAGE,qDAAA,CAFA,sBAAA,CACA,kBJMN,CIDI,wCACE,iCJGN,CIAM,8CACE,qDAAA,CACA,sDJER,CIGI,iCACE,iBJDN,CIME,wCACE,cJJJ,CIOI,wDAIE,gBJCN,CILI,wDAIE,iBJCN,CILI,8CAME,UAAA,CALA,oBAAA,CAEA,YAAA,CAKA,oDAAA,CAAA,4CAAA,CACA,6BAAA,CAAA,qBAAA,CACA,yBAAA,CAAA,iBAAA,CAHA,iCAAA,CAFA,0BAAA,CAHA,WJGN,CISI,oDACE,oDJPN,CIWI,mEACE,kDAAA,CACA,yDAAA,CAAA,iDJTN,CIaI,oEACE,kDAAA,CACA,0DAAA,CAAA,kDJXN,CIgBE,wBACE,iBAAA,CACA,eAAA,CACA,iBJdJ,CIkBE,mBACE,oBAAA,CAEA,kBAAA,CADA,eJfJ,CImBI,aANF,mBAOI,aJhBJ,CACF,CImBI,8BACE,aAAA,CAEA,QAAA,CACA,eAAA,CAFA,UJfN,CKhWI,0CD8XF,uBACE,iBJ1BF,CI6BE,4BACE,eJ3BJ,CACF,CM/hBE,uBAEE,aAAA,CACA,aAAA,CAEA,aAAA,CACA,eAAA,CALA,iBAAA,CAMA,sCACE,CAJF,YNoiBJ,CM5hBI,2BAEE,kBAAA,CADA,aN+hBN,CM1hBI,6BAME,+CAAA,CAFA,yCAAA,CAHA,eAAA,CACA,eAAA,CACA,kBAAA,CAEA,iBN6hBN,CMxhBI,6BAEE,aAAA,CADA,YN2hBN,CMrhBE,wBACE,kBNuhBJ,CMphBI,4BACE,mCAAA,CACA,uBNshBN,CMlhBI,4DAEE,oBAAA,CADA,SNqhBN,CMjhBM,oEACE,mBNmhBR,COzkBA,WAGE,0CAAA,CADA,+BAAA,CADA,aP8kBF,COzkBE,aANF,WAOI,YP4kBF,CACF,COzkBE,oBAEE,2CAAA,CADA,gCP4kBJ,COvkBE,kBAGE,eAAA,CADA,iBAAA,CADA,eP2kBJ,COrkBE,6BACE,WP0kBJ,CO3kBE,6BACE,UP0kBJ,CO3kBE,mBAEE,aAAA,CACA,cAAA,CACA,uBPukBJ,COpkBI,0BACE,YPskBN,COlkBI,yBACE,UPokBN,CQzmBA,KASE,cAAA,CARA,WAAA,CACA,iBR6mBF,CKzcI,oCGtKJ,KAaI,gBRsmBF,CACF,CK9cI,oCGtKJ,KAkBI,cRsmBF,CACF,CQjmBA,KASE,2CAAA,CAPA,YAAA,CACA,qBAAA,CAKA,eAAA,CAHA,eAAA,CAJA,iBAAA,CAGA,URumBF,CQ/lBE,aAZF,KAaI,aRkmBF,CACF,CK/cI,0CGhJF,yBAII,cR+lBJ,CACF,CQtlBA,SAEE,gBAAA,CAAA,iBAAA,CADA,eR0lBF,CQrlBA,cACE,YAAA,CACA,qBAAA,CACA,WRwlBF,CQrlBE,aANF,cAOI,aRwlBF,CACF,CQplBA,SACE,WRulBF,CQplBE,gBACE,YAAA,CACA,WAAA,CACA,iBRslBJ,CQjlBA,aACE,eAAA,CACA,sBRolBF,CQ3kBA,WACE,YR8kBF,CQzkBA,WAGE,QAAA,CACA,SAAA,CAHA,iBAAA,CACA,OR8kBF,CQzkBE,uCACE,aR2kBJ,CQvkBE,+BAEE,uCAAA,CADA,kBR0kBJ,CQpkBA,SASE,2CAAA,CACA,mBAAA,CAFA,gCAAA,CADA,gBAAA,CADA,YAAA,CAMA,SAAA,CADA,uCAAA,CANA,mBAAA,CAJA,cAAA,CAYA,2BAAA,CATA,UR8kBF,CQlkBE,eAEE,SAAA,CAIA,uBAAA,CAHA,oEACE,CAHF,URukBJ,CQzjBA,MACE,WR4jBF,CSrtBA,MACE,+PTutBF,CSjtBA,cASE,mBAAA,CAFA,0CAAA,CACA,cAAA,CAFA,YAAA,CAIA,uCAAA,CACA,oBAAA,CAVA,iBAAA,CAEA,UAAA,CADA,QAAA,CAUA,qBAAA,CAPA,WAAA,CADA,ST4tBF,CSjtBE,aAfF,cAgBI,YTotBF,CACF,CSjtBE,kCAEE,uCAAA,CADA,YTotBJ,CS/sBE,qBACE,uCTitBJ,CS7sBE,wCACE,+BT+sBJ,CS1sBE,oBAME,6BAAA,CADA,UAAA,CAJA,aAAA,CAEA,cAAA,CACA,aAAA,CAGA,2CAAA,CAAA,mCAAA,CACA,4BAAA,CAAA,oBAAA,CACA,6BAAA,CAAA,qBAAA,CACA,yBAAA,CAAA,iBAAA,CARA,aTotBJ,CSxsBE,sBACE,cT0sBJ,CSvsBI,2BACE,2CTysBN,CSnsBI,kEAEE,uDAAA,CADA,+BTssBN,CU5wBA,mBACE,GACE,SAAA,CACA,0BV+wBF,CU5wBA,GACE,SAAA,CACA,uBV8wBF,CACF,CU1wBA,mBACE,GACE,SV4wBF,CUzwBA,GACE,SV2wBF,CACF,CUhwBE,qBASE,2BAAA,CADA,mCAAA,CAAA,2BAAA,CAFA,0BAAA,CADA,WAAA,CAEA,SAAA,CANA,cAAA,CACA,KAAA,CAEA,UAAA,CADA,SVwwBJ,CU9vBE,mBAcE,mDAAA,CANA,2CAAA,CACA,QAAA,CACA,mBAAA,CARA,QAAA,CASA,kDACE,CAPF,eAAA,CAEA,aAAA,CADA,SAAA,CALA,cAAA,CAGA,UAAA,CADA,SVywBJ,CU1vBE,kBACE,aV4vBJ,CUxvBE,sBACE,YAAA,CACA,YV0vBJ,CUvvBI,oCACE,aVyvBN,CUpvBE,sBACE,mBVsvBJ,CUnvBI,6CACE,cVqvBN,CK/oBI,0CKvGA,6CAKI,aAAA,CAEA,gBAAA,CACA,iBAAA,CAFA,UVuvBN,CACF,CUhvBE,kBACE,cVkvBJ,CWn1BA,YACE,WAAA,CAIA,WXm1BF,CWh1BE,mBAEE,qBAAA,CADA,iBXm1BJ,CKtrBI,sCMtJE,4EACE,kBX+0BN,CW30BI,0JACE,mBX60BN,CW90BI,8EACE,kBX60BN,CACF,CWx0BI,0BAGE,UAAA,CAFA,aAAA,CACA,YX20BN,CWt0BI,+BACE,eXw0BN,CWl0BE,8BACE,WXu0BJ,CWx0BE,8BACE,UXu0BJ,CWx0BE,8BAIE,iBXo0BJ,CWx0BE,8BAIE,kBXo0BJ,CWx0BE,oBAGE,cAAA,CADA,SXs0BJ,CWj0BI,aAPF,oBAQI,YXo0BJ,CACF,CWj0BI,gCACE,yCXm0BN,CW/zBI,wBACE,cAAA,CACA,kBXi0BN,CW9zBM,kCACE,oBXg0BR,CYj4BA,qBAeE,WZk4BF,CYj5BA,qBAeE,UZk4BF,CYj5BA,WAOE,2CAAA,CACA,mBAAA,CANA,YAAA,CAOA,8BAAA,CALA,iBAAA,CAMA,SAAA,CALA,mBAAA,CACA,mBAAA,CALA,cAAA,CAaA,0BAAA,CAHA,wCACE,CATF,SZ84BF,CY/3BE,aAlBF,WAmBI,YZk4BF,CACF,CY/3BE,mBAEE,SAAA,CADA,mBAAA,CAKA,uBAAA,CAHA,kEZk4BJ,CY33BE,kBAEE,gCAAA,CADA,eZ83BJ,Cah6BA,aACE,gBAAA,CACA,iBbm6BF,Cah6BE,sBAGE,WAAA,CADA,QAAA,CADA,Sbo6BJ,Ca95BE,oBAEE,eAAA,CADA,ebi6BJ,Ca55BE,oBACE,iBb85BJ,Ca15BE,mBAIE,sBAAA,CAFA,YAAA,CACA,cAAA,CAEA,sBAAA,CAJA,iBbg6BJ,Caz5BI,iDACE,yCb25BN,Cav5BI,6BACE,iBby5BN,Cap5BE,mBAGE,uCAAA,CACA,cAAA,CAHA,aAAA,CACA,cAAA,CAGA,sBbs5BJ,Can5BI,gDACE,+Bbq5BN,Caj5BI,4BACE,0CAAA,CACA,mBbm5BN,Ca94BE,mBAEE,SAAA,CADA,iBAAA,CAKA,2BAAA,CAHA,8Dbi5BJ,Ca34BI,qBAEE,aAAA,CADA,eb84BN,Caz4BI,6BACE,SAAA,CACA,uBb24BN,Cc19BA,WAEE,0CAAA,CADA,+Bd89BF,Cc19BE,aALF,WAMI,Yd69BF,CACF,Cc19BE,kBACE,6BAAA,CAEA,aAAA,CADA,ad69BJ,Ccz9BI,gCACE,Yd29BN,Cct9BE,iBAOE,eAAA,CANA,YAAA,CAKA,cAAA,CAGA,mBAAA,CAAA,eAAA,CADA,cAAA,CAGA,uCAAA,CADA,eAAA,CAEA,uBdo9BJ,Ccj9BI,8CACE,Udm9BN,Cc/8BI,+BACE,oBdi9BN,CKn0BI,0CSvIE,uBACE,ad68BN,Cc18BM,yCACE,Yd48BR,CACF,Ccv8BI,iCACE,gBd08BN,Cc38BI,iCACE,iBd08BN,Cc38BI,uBAEE,gBdy8BN,Cct8BM,iCACE,edw8BR,Ccl8BE,kBACE,WAAA,CAIA,eAAA,CADA,mBAAA,CAFA,6BAAA,CACA,cAAA,CAGA,kBdo8BJ,Cch8BE,mBAEE,YAAA,CADA,adm8BJ,Cc97BE,sBACE,gBAAA,CACA,Udg8BJ,Cc37BA,gBACE,gDd87BF,Cc37BE,uBACE,YAAA,CACA,cAAA,CACA,6BAAA,CACA,ad67BJ,Ccz7BE,kCACE,sCd27BJ,Ccx7BI,gFACE,+Bd07BN,Ccl7BA,cAKE,wCAAA,CADA,gBAAA,CADA,iBAAA,CADA,eAAA,CADA,Udy7BF,CK74BI,mCS7CJ,cASI,Udq7BF,CACF,Ccj7BE,yBACE,sCdm7BJ,Cc56BA,WACE,mBAAA,CACA,SAAA,CAEA,cAAA,CADA,qBdg7BF,CK55BI,mCSvBJ,WAQI,ed+6BF,CACF,Cc56BE,iBACE,oBAAA,CAEA,aAAA,CACA,iBAAA,CAFA,Ydg7BJ,Cc36BI,wBACE,ed66BN,Ccz6BI,qBAGE,iBAAA,CAFA,gBAAA,CACA,mBd46BN,CellCE,uBAME,kBAAA,CACA,mBAAA,CAHA,gCAAA,CACA,cAAA,CAJA,oBAAA,CAEA,eAAA,CADA,kBAAA,CAMA,gEfqlCJ,Ce/kCI,gCAEE,2CAAA,CACA,uCAAA,CAFA,gCfmlCN,Ce7kCI,0DAEE,0CAAA,CACA,sCAAA,CAFA,+BfilCN,Ce1kCE,gCAKE,4Bf+kCJ,CeplCE,gEAME,6Bf8kCJ,CeplCE,gCAME,4Bf8kCJ,CeplCE,sBAIE,6DAAA,CAGA,8BAAA,CAJA,eAAA,CAFA,aAAA,CACA,eAAA,CAMA,sCf4kCJ,CevkCI,wDACE,6CAAA,CACA,8BfykCN,CerkCI,+BACE,UfukCN,CgB1nCA,WAOE,2CAAA,CAGA,8CACE,CALF,gCAAA,CADA,aAAA,CAHA,MAAA,CADA,eAAA,CACA,OAAA,CACA,KAAA,CACA,ShBioCF,CgBtnCE,aAfF,WAgBI,YhBynCF,CACF,CgBtnCE,mBAIE,2BAAA,CAHA,iEhBynCJ,CgBlnCE,mBACE,kDACE,CAEF,kEhBknCJ,CgB5mCE,kBAEE,kBAAA,CADA,YAAA,CAEA,ehB8mCJ,CgB1mCE,mBAKE,kBAAA,CAEA,cAAA,CAHA,YAAA,CAIA,uCAAA,CALA,aAAA,CAFA,iBAAA,CAQA,uBAAA,CAHA,qBAAA,CAJA,ShBmnCJ,CgBzmCI,yBACE,UhB2mCN,CgBvmCI,iCACE,oBhBymCN,CgBrmCI,uCAEE,uCAAA,CADA,YhBwmCN,CgBnmCI,2BAEE,YAAA,CADA,ahBsmCN,CKx/BI,0CW/GA,2BAMI,YhBqmCN,CACF,CgBlmCM,8DAIE,iBAAA,CAHA,aAAA,CAEA,aAAA,CADA,UhBsmCR,CKthCI,mCWzEA,iCAII,YhB+lCN,CACF,CgB5lCM,wCACE,YhB8lCR,CgB1lCM,+CACE,oBhB4lCR,CKjiCI,sCWtDA,iCAII,YhBulCN,CACF,CgBllCE,kBAEE,YAAA,CACA,cAAA,CAFA,iBAAA,CAIA,8DACE,CAFF,kBhBqlCJ,CgB/kCI,oCAGE,SAAA,CADA,mBAAA,CAKA,6BAAA,CAHA,8DACE,CAJF,UhBqlCN,CgB5kCM,8CACE,8BhB8kCR,CgBzkCI,8BACE,ehB2kCN,CgBtkCE,4BAGE,gBhB2kCJ,CgB9kCE,4BAGE,iBhB2kCJ,CgB9kCE,4BAIE,kBhB0kCJ,CgB9kCE,4BAIE,iBhB0kCJ,CgB9kCE,kBACE,WAAA,CAIA,eAAA,CAHA,aAAA,CAIA,kBhBwkCJ,CgBrkCI,4CAGE,SAAA,CADA,mBAAA,CAKA,8BAAA,CAHA,8DACE,CAJF,UhB2kCN,CgBlkCM,sDACE,6BhBokCR,CgBhkCM,8DAGE,SAAA,CADA,mBAAA,CAKA,uBAAA,CAHA,8DACE,CAJF,ShBskCR,CgB3jCI,uCAGE,WAAA,CAFA,iBAAA,CACA,UhB8jCN,CgBxjCE,mBACE,YAAA,CACA,aAAA,CACA,cAAA,CAEA,+CACE,CAFF,kBhB2jCJ,CgBrjCI,8DACE,WAAA,CACA,SAAA,CACA,oChBujCN,CgB9iCI,yBACE,QhBgjCN,CgB3iCE,mBACE,YhB6iCJ,CK1mCI,mCW4DF,6BAQI,gBhB6iCJ,CgBrjCA,6BAQI,iBhB6iCJ,CgBrjCA,mBAKI,aAAA,CAEA,iBAAA,CADA,ahB+iCJ,CACF,CKlnCI,sCW4DF,6BAaI,kBhB6iCJ,CgB1jCA,6BAaI,mBhB6iCJ,CACF,CD7xCA,SAGE,uCAAA,CAFA,eAAA,CACA,eCiyCF,CD7xCE,eACE,mBAAA,CACA,cAAA,CAGA,eAAA,CADA,QAAA,CADA,SCiyCJ,CD3xCE,sCAEE,WAAA,CADA,iBAAA,CAAA,kBC8xCJ,CDzxCE,eACE,+BC2xCJ,CDxxCI,0CACE,+BC0xCN,CDpxCA,UAKE,wBkBaa,ClBZb,oBAAA,CAFA,UAAA,CAHA,oBAAA,CAEA,eAAA,CADA,0BAAA,CAAA,2BC2xCF,CkB7zCA,MACE,0MAAA,CACA,gMAAA,CACA,yNlBg0CF,CkB1zCA,QACE,eAAA,CACA,elB6zCF,CkB1zCE,eAKE,uCAAA,CAJA,aAAA,CAGA,eAAA,CADA,eAAA,CADA,eAAA,CAIA,sBlB4zCJ,CkBzzCI,+BACE,YlB2zCN,CkBxzCM,mCAEE,WAAA,CADA,UlB2zCR,CkBnzCQ,sFAME,iBAAA,CALA,aAAA,CAGA,aAAA,CADA,cAAA,CAEA,kBAAA,CAHA,UlByzCV,CkB9yCE,cAGE,eAAA,CADA,QAAA,CADA,SlBkzCJ,CkB5yCE,cAGE,sBAAA,CAFA,YAAA,CACA,SAAA,CAEA,iBAAA,CAEA,uBAAA,CADA,sBlB+yCJ,CkB3yCI,sBACE,uClB6yCN,CkBtyCM,6EAEE,+BlBwyCR,CkBnyCI,2BAIE,iBlBkyCN,CkB9xCI,4CACE,gBlBgyCN,CkBjyCI,4CACE,iBlBgyCN,CkB5xCI,kBAGE,iBAAA,CAFA,aAAA,CACA,YlB+xCN,CkB1xCI,sGACE,+BAAA,CACA,clB4xCN,CkBxxCI,4BACE,uCAAA,CACA,oBlB0xCN,CkBtxCI,0CACE,YlBwxCN,CkBrxCM,yDAKE,6BAAA,CAJA,aAAA,CAEA,WAAA,CACA,qCAAA,CAAA,6BAAA,CAFA,UlB0xCR,CkBnxCM,kDACE,YlBqxCR,CkB/wCE,iCACE,YlBixCJ,CkB9wCI,6CACE,WAAA,CAGA,WlB8wCN,CkBzwCE,cACE,alB2wCJ,CkBvwCE,gBACE,YlBywCJ,CKvuCI,0Ca3BA,0CASE,2CAAA,CAHA,YAAA,CACA,qBAAA,CACA,WAAA,CALA,MAAA,CADA,iBAAA,CACA,OAAA,CACA,KAAA,CACA,SlBwwCJ,CkB7vCI,+DACE,eAAA,CACA,elB+vCN,CkB3vCI,gCAQE,qDAAA,CAHA,uCAAA,CAEA,cAAA,CALA,aAAA,CAEA,kBAAA,CADA,wBAAA,CAFA,iBAAA,CAKA,kBlB+vCN,CkB1vCM,wDAGE,UlBgwCR,CkBnwCM,wDAGE,WlBgwCR,CkBnwCM,8CAIE,aAAA,CAEA,aAAA,CACA,YAAA,CANA,iBAAA,CACA,SAAA,CAGA,YlB8vCR,CkBzvCQ,oDAKE,6BAAA,CADA,UAAA,CAHA,aAAA,CAEA,WAAA,CAGA,2CAAA,CAAA,mCAAA,CACA,4BAAA,CAAA,oBAAA,CACA,6BAAA,CAAA,qBAAA,CACA,yBAAA,CAAA,iBAAA,CAPA,UlBkwCV,CkBtvCM,8CAGE,2CAAA,CACA,gEACE,CAJF,eAAA,CAKA,4BAAA,CAJA,kBlB2vCR,CkBpvCQ,2DACE,YlBsvCV,CkBjvCM,8CAGE,2CAAA,CADA,gCAAA,CADA,elBqvCR,CkB/uCM,yCAIE,aAAA,CAFA,UAAA,CAIA,YAAA,CADA,aAAA,CAJA,iBAAA,CACA,WAAA,CACA,SlBovCR,CkB5uCI,+BACE,MlB8uCN,CkB1uCI,+BACE,4DlB4uCN,CkBzuCM,qDACE,+BlB2uCR,CkBxuCQ,sHACE,+BlB0uCV,CkBpuCI,+BAEE,YAAA,CADA,mBlBuuCN,CkBnuCM,mCACE,elBquCR,CkBjuCM,6CACE,SlBmuCR,CkB/tCM,uDAGE,mBlBkuCR,CkBruCM,uDAGE,kBlBkuCR,CkBruCM,6CAIE,gBAAA,CAFA,aAAA,CADA,YlBouCR,CkB9tCQ,mDAKE,6BAAA,CADA,UAAA,CAHA,aAAA,CAEA,WAAA,CAGA,2CAAA,CAAA,mCAAA,CACA,4BAAA,CAAA,oBAAA,CACA,6BAAA,CAAA,qBAAA,CACA,yBAAA,CAAA,iBAAA,CAPA,UlBuuCV,CkBvtCM,+CACE,mBlBytCR,CkBjtCM,4CAEE,wBAAA,CADA,elBotCR,CkBhtCQ,oEACE,mBlBktCV,CkBntCQ,oEACE,oBlBktCV,CkB9sCQ,4EACE,iBlBgtCV,CkBjtCQ,4EACE,kBlBgtCV,CkB5sCQ,oFACE,mBlB8sCV,CkB/sCQ,oFACE,oBlB8sCV,CkB1sCQ,4FACE,mBlB4sCV,CkB7sCQ,4FACE,oBlB4sCV,CkBrsCE,mBACE,wBlBusCJ,CkBnsCE,wBACE,YAAA,CACA,SAAA,CAIA,0BAAA,CAHA,oElBssCJ,CkBhsCI,kCACE,2BlBksCN,CkB7rCE,gCACE,SAAA,CAIA,uBAAA,CAHA,qElBgsCJ,CkB1rCI,8CAEE,kCAAA,CAAA,0BlB2rCN,CACF,CK13CI,0CauMA,0CACE,YlBsrCJ,CkBnrCI,yDACE,UlBqrCN,CkBjrCI,wDACE,YlBmrCN,CkB/qCI,kDACE,YlBirCN,CkB5qCE,gBAIE,iDAAA,CADA,gCAAA,CAFA,aAAA,CACA,elBgrCJ,CACF,CKv7CM,+DagRF,6CACE,YlB0qCJ,CkBvqCI,4DACE,UlByqCN,CkBrqCI,2DACE,YlBuqCN,CkBnqCI,qDACE,YlBqqCN,CACF,CK/6CI,mCa7JJ,QA6aI,oBlBmqCF,CkB7pCI,kCAME,qCAAA,CACA,qDAAA,CANA,eAAA,CACA,KAAA,CAGA,SlB+pCN,CkB1pCM,6CACE,uBlB4pCR,CkBxpCM,gDACE,YlB0pCR,CkBrpCI,2CACE,kBlBwpCN,CkBzpCI,2CACE,mBlBwpCN,CkBzpCI,iCAEE,oBlBupCN,CkBhpCI,yDACE,kBlBkpCN,CkBnpCI,yDACE,iBlBkpCN,CACF,CKx8CI,sCa7JJ,QAydI,oBAAA,CACA,oDlBgpCF,CkB1oCI,gCAME,qCAAA,CACA,qDAAA,CANA,eAAA,CACA,KAAA,CAGA,SlB4oCN,CkBvoCM,8CACE,uBlByoCR,CkBroCM,8CACE,YlBuoCR,CkBloCI,yCACE,kBlBqoCN,CkBtoCI,yCACE,mBlBqoCN,CkBtoCI,+BAEE,oBlBooCN,CkB7nCI,uDACE,kBlB+nCN,CkBhoCI,uDACE,iBlB+nCN,CkB1nCE,wBACE,YAAA,CACA,sBAAA,CAEA,SAAA,CACA,6FACE,CAHF,mBlB8nCJ,CkBtnCI,sCACE,elBwnCN,CkBnnCE,sEACE,sBAAA,CAEA,SAAA,CACA,4FACE,CAHF,kBlBunCJ,CkB9mCE,6CACE,YlBgnCJ,CkB5mCE,uBACE,aAAA,CACA,elB8mCJ,CkB3mCI,kCACE,elB6mCN,CkBzmCI,qCACE,elB2mCN,CkBxmCM,0CACE,uClB0mCR,CkBtmCM,6DACE,mBlBwmCR,CkBpmCM,yFAEE,YlBsmCR,CkBjmCI,yCAEE,kBlBqmCN,CkBvmCI,yCAEE,mBlBqmCN,CkBvmCI,+BACE,aAAA,CAGA,SAAA,CADA,kBlBomCN,CkBhmCM,2DACE,SlBkmCR,CkB5lCE,cAGE,kBAAA,CADA,YAAA,CAEA,gCAAA,CAHA,WlBimCJ,CkB3lCI,oBACE,uDlB6lCN,CkBzlCI,oBAME,6BAAA,CACA,kBAAA,CAFA,UAAA,CAJA,oBAAA,CAEA,WAAA,CAMA,2CAAA,CAAA,mCAAA,CACA,4BAAA,CAAA,oBAAA,CACA,6BAAA,CAAA,qBAAA,CACA,yBAAA,CAAA,iBAAA,CAJA,yBAAA,CAJA,qBAAA,CAFA,UlBqmCN,CkBxlCM,8BACE,wBlB0lCR,CkBtlCM,sKAEE,uBlBulCR,CkBzkCI,2EACE,YlB8kCN,CkB3kCM,oDACE,alB6kCR,CkB1kCQ,kEAKE,qCAAA,CACA,qDAAA,CAFA,YAAA,CAHA,eAAA,CACA,KAAA,CACA,SlB+kCV,CkBzkCU,0FACE,mBlB2kCZ,CkBtkCQ,0EACE,QlBwkCV,CkBnkCM,8DACE,kBlBqkCR,CkBtkCM,8DACE,mBlBqkCR,CkBjkCM,kDACE,uClBmkCR,CkB7jCI,2CACE,sBAAA,CAEA,SAAA,CADA,kBlBgkCN,CkBvjCI,mFACE,elByjCN,CkBtjCM,iGACE,SlBwjCR,CkBnjCI,qFAIE,mDlBsjCN,CkB1jCI,qFAIE,oDlBsjCN,CkB1jCI,2EACE,aAAA,CACA,oBAAA,CAGA,SAAA,CAFA,kBlBujCN,CkBljCM,yFAEE,gBAAA,CADA,gBlBqjCR,CkBhjCM,0FACE,YlBkjCR,CACF,CmB3wDA,eAKE,eAAA,CACA,eAAA,CAJA,SnBkxDF,CmB3wDE,gCANA,kBAAA,CAFA,YAAA,CAGA,sBnByxDF,CmBpxDE,iBAOE,mBAAA,CAFA,aAAA,CADA,gBAAA,CAEA,iBnB8wDJ,CmBzwDE,wBAEE,qDAAA,CADA,uCnB4wDJ,CmBvwDE,qBACE,6CnBywDJ,CmBpwDI,sDAEE,uDAAA,CADA,+BnBuwDN,CmBnwDM,8DACE,+BnBqwDR,CmBhwDI,mCACE,uCAAA,CACA,oBnBkwDN,CmB9vDI,yBAKE,iBAAA,CADA,yCAAA,CAHA,aAAA,CAEA,eAAA,CADA,YnBmwDN,CoBnzDE,eAGE,+DAAA,CADA,oBAAA,CADA,qBpBwzDJ,CKnoDI,0CetLF,eAOI,YpBszDJ,CACF,CoBhzDM,6BACE,oBpBkzDR,CoB5yDE,kBACE,YAAA,CACA,qBAAA,CACA,SAAA,CACA,qBpB8yDJ,CoBvyDI,0BACE,sBpByyDN,CoBtyDM,gEACE,+BpBwyDR,CoBlyDE,gBAEE,uCAAA,CADA,epBqyDJ,CoBhyDE,kBACE,oBpBkyDJ,CoB/xDI,mCAGE,kBAAA,CAFA,YAAA,CACA,SAAA,CAEA,iBpBiyDN,CoB7xDI,oCAIE,kBAAA,CAHA,mBAAA,CACA,kBAAA,CACA,SAAA,CAGA,QAAA,CADA,iBpBgyDN,CoB3xDI,0DACE,kBpB6xDN,CoB9xDI,0DACE,iBpB6xDN,CoBzxDI,iDACE,uBAAA,CAEA,YpB0xDN,CoBrxDE,4BACE,YpBuxDJ,CoBhxDA,YAGE,kBAAA,CAFA,YAAA,CAIA,eAAA,CAHA,SAAA,CAIA,eAAA,CAFA,UpBqxDF,CoBhxDE,yBACE,WpBkxDJ,CoB3wDA,kBACE,YpB8wDF,CKtsDI,0CezEJ,kBAKI,wBpB8wDF,CACF,CoB3wDE,qCACE,WpB6wDJ,CKjuDI,sCe7CF,+CAKI,kBpB6wDJ,CoBlxDA,+CAKI,mBpB6wDJ,CACF,CKntDI,0CerDJ,6BAMI,SAAA,CAFA,eAAA,CACA,UpB0wDF,CoBvwDE,gDACE,SpBywDJ,CoBtwDE,4CACE,iBAAA,CAAA,kBpBwwDJ,CoBrwDE,2CAEE,WAAA,CADA,cpBwwDJ,CoBpwDE,2CACE,mBAAA,CACA,cAAA,CACA,SAAA,CACA,oBAAA,CAAA,iBpBswDJ,CoBnwDE,2CACE,SpBqwDJ,CoBlwDE,qCACE,epBowDJ,CACF,CqB16DA,MACE,qBAAA,CACA,yBrB66DF,CqBv6DA,aAME,qCAAA,CADA,cAAA,CAEA,0FACE,CAPF,cAAA,CACA,KAAA,CAaA,mDAAA,CACA,qBAAA,CAJA,wFACE,CATF,UAAA,CADA,SrBi7DF,CsB57DA,MACE,igBtB+7DF,CsBz7DA,WACE,iBtB47DF,CK9xDI,mCiB/JJ,WAKI,etB47DF,CACF,CsBz7DE,kBACE,YtB27DJ,CsBv7DE,oBAEE,SAAA,CADA,StB07DJ,CKvxDI,0CiBpKF,8BAkBI,YtBu7DJ,CsBz8DA,8BAkBI,atBu7DJ,CsBz8DA,oBAYI,2CAAA,CACA,kBAAA,CAJA,WAAA,CACA,eAAA,CACA,mBAAA,CALA,iBAAA,CACA,SAAA,CAUA,uBAAA,CAHA,4CACE,CAPF,UtBi8DJ,CsBp7DI,+DACE,SAAA,CACA,oCtBs7DN,CACF,CK7zDI,mCiBjJF,8BAyCI,MtBg7DJ,CsBz9DA,8BAyCI,OtBg7DJ,CsBz9DA,oBAoCI,0BAAA,CADA,cAAA,CADA,QAAA,CAHA,cAAA,CACA,KAAA,CAKA,sDACE,CALF,OtBw7DJ,CsB76DI,+DAME,YAAA,CACA,SAAA,CACA,4CACE,CARF,UtBk7DN,CACF,CK5zDI,0CiBxGA,+DAII,mBtBo6DN,CACF,CK12DM,+DiB/DF,+DASI,mBtBo6DN,CACF,CK/2DM,+DiB/DF,+DAcI,mBtBo6DN,CACF,CsB/5DE,kBAEE,kCAAA,CAAA,0BtBg6DJ,CK90DI,0CiBpFF,4BAmBI,MtB45DJ,CsB/6DA,4BAmBI,OtB45DJ,CsB/6DA,kBAUI,QAAA,CAEA,SAAA,CADA,eAAA,CALA,cAAA,CACA,KAAA,CAWA,wBAAA,CALA,qGACE,CALF,OAAA,CADA,StBu6DJ,CsBz5DI,4BACE,yBtB25DN,CsBv5DI,6DAEE,WAAA,CACA,SAAA,CAMA,uBAAA,CALA,sGACE,CAJF,UtB65DN,CACF,CKz3DI,mCiBjEF,4BA2CI,WtBu5DJ,CsBl8DA,4BA2CI,UtBu5DJ,CsBl8DA,kBA6CI,eAAA,CAHA,iBAAA,CAIA,8CAAA,CAFA,atBs5DJ,CACF,CKx5DM,+DiBOF,6DAII,atBi5DN,CACF,CKv4DI,sCiBfA,6DASI,atBi5DN,CACF,CsB54DE,iBAIE,2CAAA,CACA,0BAAA,CAFA,aAAA,CAFA,iBAAA,CAKA,2CACE,CALF,StBk5DJ,CKp5DI,mCiBAF,iBAaI,0BAAA,CACA,mBAAA,CAFA,atB84DJ,CsBz4DI,uBACE,0BtB24DN,CACF,CsBv4DI,4DAEE,2CAAA,CACA,6BAAA,CACA,8BAAA,CAHA,gCtB44DN,CsBp4DE,4BAKE,mBAAA,CAAA,oBtBy4DJ,CsB94DE,4BAKE,mBAAA,CAAA,oBtBy4DJ,CsB94DE,kBAQE,gBAAA,CAFA,eAAA,CAFA,WAAA,CAHA,iBAAA,CAMA,sBAAA,CAJA,UAAA,CADA,StB44DJ,CsBn4DI,+BACE,qBtBq4DN,CsBj4DI,kEAEE,uCtBk4DN,CsB93DI,6BACE,YtBg4DN,CKp6DI,0CiBaF,kBA8BI,eAAA,CADA,aAAA,CADA,UtBi4DJ,CACF,CK97DI,mCiBgCF,4BAmCI,mBtBi4DJ,CsBp6DA,4BAmCI,oBtBi4DJ,CsBp6DA,kBAqCI,aAAA,CADA,etBg4DJ,CsB53DI,+BACE,uCtB83DN,CsB13DI,mCACE,gCtB43DN,CsBx3DI,6DACE,kBtB03DN,CsBv3DM,8EACE,uCtBy3DR,CsBr3DM,0EACE,WtBu3DR,CACF,CsBj3DE,iBAIE,cAAA,CAHA,oBAAA,CAEA,aAAA,CAEA,kCACE,CAJF,YtBs3DJ,CsB92DI,uBACE,UtBg3DN,CsB52DI,yCAGE,UtB+2DN,CsBl3DI,yCAGE,WtB+2DN,CsBl3DI,+BACE,iBAAA,CACA,SAAA,CAEA,StB82DN,CsB32DM,6CACE,oBtB62DR,CKp9DI,0CiB+FA,yCAcI,UtB42DN,CsB13DE,yCAcI,WtB42DN,CsB13DE,+BAaI,StB62DN,CsBz2DM,+CACE,YtB22DR,CACF,CKh/DI,mCiBkHA,+BAwBI,mBtB02DN,CsBv2DM,8CACE,YtBy2DR,CACF,CsBn2DE,8BAGE,WtBu2DJ,CsB12DE,8BAGE,UtBu2DJ,CsB12DE,oBAKE,mBAAA,CAJA,iBAAA,CACA,SAAA,CAEA,StBs2DJ,CK5+DI,0CiBkIF,8BAUI,WtBq2DJ,CsB/2DA,8BAUI,UtBq2DJ,CsB/2DA,oBASI,StBs2DJ,CACF,CsBl2DI,uCACE,iBtBw2DN,CsBz2DI,uCACE,kBtBw2DN,CsBz2DI,6BAEE,uCAAA,CACA,SAAA,CAIA,oBAAA,CAHA,+DtBq2DN,CsB/1DM,iDAEE,uCAAA,CADA,YtBk2DR,CsB71DM,gGAGE,SAAA,CADA,mBAAA,CAEA,kBtB81DR,CsB31DQ,sGACE,UtB61DV,CsBt1DE,8BAOE,mBAAA,CAAA,oBtB61DJ,CsBp2DE,8BAOE,mBAAA,CAAA,oBtB61DJ,CsBp2DE,oBAIE,kBAAA,CAKA,yCAAA,CANA,YAAA,CAKA,eAAA,CAFA,WAAA,CAKA,SAAA,CAVA,iBAAA,CACA,KAAA,CAUA,uBAAA,CAFA,kBAAA,CALA,UtB+1DJ,CKtiEI,mCiBkMF,8BAgBI,mBtBy1DJ,CsBz2DA,8BAgBI,oBtBy1DJ,CsBz2DA,oBAiBI,etBw1DJ,CACF,CsBr1DI,+DACE,SAAA,CACA,0BtBu1DN,CsBl1DE,6BAKE,+BtBq1DJ,CsB11DE,0DAME,gCtBo1DJ,CsB11DE,6BAME,+BtBo1DJ,CsB11DE,mBAIE,eAAA,CAHA,iBAAA,CAEA,UAAA,CADA,StBw1DJ,CKriEI,0CiB2MF,mBAWI,QAAA,CADA,UtBq1DJ,CACF,CK9jEI,mCiB8NF,mBAiBI,SAAA,CADA,UAAA,CAEA,sBtBo1DJ,CsBj1DI,8DACE,8BAAA,CACA,StBm1DN,CACF,CsB90DE,uBASE,kCAAA,CAAA,0BAAA,CAFA,2CAAA,CANA,WAAA,CACA,eAAA,CAIA,kBtB+0DJ,CsBz0DI,iEAZF,uBAaI,uBtB40DJ,CACF,CK3mEM,+DiBiRJ,uBAkBI,atB40DJ,CACF,CK1lEI,sCiB2PF,uBAuBI,atB40DJ,CACF,CK/lEI,mCiB2PF,uBA4BI,YAAA,CAEA,yDAAA,CADA,oBtB60DJ,CsBz0DI,kEACE,etB20DN,CsBv0DI,6BACE,+CtBy0DN,CsBr0DI,0CAEE,YAAA,CADA,WtBw0DN,CsBn0DI,gDACE,oDtBq0DN,CsBl0DM,sDACE,0CtBo0DR,CACF,CsB7zDA,kBACE,gCAAA,CACA,qBtBg0DF,CsB7zDE,wBAKE,qDAAA,CADA,uCAAA,CAFA,gBAAA,CACA,kBAAA,CAFA,eAAA,CAKA,uBtB+zDJ,CKnoEI,mCiB8TF,kCAUI,mBtB+zDJ,CsBz0DA,kCAUI,oBtB+zDJ,CACF,CsB3zDE,wBAGE,eAAA,CADA,QAAA,CADA,SAAA,CAIA,wBAAA,CAAA,gBtB4zDJ,CsBxzDE,wBACE,yDtB0zDJ,CsBvzDI,oCACE,etByzDN,CsBpzDE,wBACE,aAAA,CACA,YAAA,CAEA,uBAAA,CADA,gCtBuzDJ,CsBnzDI,4DACE,uDtBqzDN,CsBjzDI,gDACE,mBtBmzDN,CsB9yDE,gCAKE,cAAA,CADA,aAAA,CAEA,YAAA,CALA,eAAA,CAMA,uBAAA,CALA,KAAA,CACA,StBozDJ,CsB7yDI,wCACE,YtB+yDN,CsB1yDI,wDACE,YtB4yDN,CsBxyDI,oCAGE,+BAAA,CADA,gBAAA,CADA,mBAAA,CAGA,2CtB0yDN,CKrrEI,mCiBuYA,8CAUI,mBtBwyDN,CsBlzDE,8CAUI,oBtBwyDN,CACF,CsBpyDI,oFAEE,uDAAA,CADA,+BtBuyDN,CsBjyDE,sCACE,2CtBmyDJ,CsB9xDE,2BAGE,eAAA,CADA,eAAA,CADA,iBtBkyDJ,CKtsEI,mCiBmaF,qCAOI,mBtBgyDJ,CsBvyDA,qCAOI,oBtBgyDJ,CACF,CsB5xDE,kCAEE,MtBkyDJ,CsBpyDE,kCAEE,OtBkyDJ,CsBpyDE,wBAME,uCAAA,CAFA,aAAA,CACA,YAAA,CAJA,iBAAA,CAEA,YtBiyDJ,CKhsEI,0CiB4ZF,wBAUI,YtB8xDJ,CACF,CsB3xDI,8BAKE,6BAAA,CADA,UAAA,CAHA,oBAAA,CAEA,WAAA,CAGA,+CAAA,CAAA,uCAAA,CACA,4BAAA,CAAA,oBAAA,CACA,6BAAA,CAAA,qBAAA,CACA,yBAAA,CAAA,iBAAA,CAPA,UtBoyDN,CsB1xDM,wCACE,oBtB4xDR,CsBtxDE,8BAGE,uCAAA,CAFA,gBAAA,CACA,etByxDJ,CsBrxDI,iCAKE,gCAAA,CAHA,eAAA,CACA,eAAA,CACA,eAAA,CAHA,etB2xDN,CsBpxDM,sCACE,oBtBsxDR,CsBjxDI,iCAKE,gCAAA,CAHA,gBAAA,CACA,eAAA,CACA,eAAA,CAHA,atBuxDN,CsBhxDM,sCACE,oBtBkxDR,CsB5wDE,yBAKE,gCAAA,CAJA,aAAA,CAEA,gBAAA,CACA,iBAAA,CAFA,atBixDJ,CsB1wDE,uBAGE,wBAAA,CAFA,+BAAA,CACA,yBtB6wDJ,CuBj7EA,WACE,iBAAA,CACA,SvBo7EF,CuBj7EE,kBAOE,2CAAA,CACA,mBAAA,CACA,8BAAA,CAHA,gCAAA,CAHA,QAAA,CAEA,gBAAA,CADA,YAAA,CAMA,SAAA,CATA,iBAAA,CACA,sBAAA,CAaA,mCAAA,CAJA,oEvBo7EJ,CuB76EI,6EACE,gBAAA,CACA,SAAA,CAKA,+BAAA,CAJA,8EvBg7EN,CuBx6EI,wBAWE,+BAAA,CAAA,8CAAA,CAFA,6BAAA,CAAA,8BAAA,CACA,YAAA,CAFA,UAAA,CAHA,QAAA,CAFA,QAAA,CAIA,kBAAA,CADA,iBAAA,CALA,iBAAA,CACA,KAAA,CAEA,OvBi7EN,CuBr6EE,iBAOE,mBAAA,CAFA,eAAA,CACA,oBAAA,CAHA,QAAA,CAFA,kBAAA,CAGA,aAAA,CAFA,SvB46EJ,CuBn6EE,iBACE,kBvBq6EJ,CuBj6EE,2BAGE,kBAAA,CAAA,oBvBu6EJ,CuB16EE,2BAGE,mBAAA,CAAA,mBvBu6EJ,CuB16EE,iBAIE,cAAA,CAHA,aAAA,CAIA,YAAA,CAIA,uBAAA,CAHA,2CACE,CALF,UvBw6EJ,CuB95EI,8CACE,+BvBg6EN,CuB55EI,uBACE,qDvB85EN,CwBl/EA,YAIE,qBAAA,CADA,aAAA,CAGA,gBAAA,CALA,eAAA,CACA,UAAA,CAGA,axBs/EF,CwBl/EE,aATF,YAUI,YxBq/EF,CACF,CKv0EI,0CmB3KF,+BAeI,axBg/EJ,CwB//EA,+BAeI,cxBg/EJ,CwB//EA,qBAUI,2CAAA,CAHA,aAAA,CAEA,WAAA,CALA,cAAA,CACA,KAAA,CASA,uBAAA,CAHA,iEACE,CAJF,aAAA,CAFA,SxBy/EJ,CwB7+EI,mEACE,8BAAA,CACA,6BxB++EN,CwB5+EM,6EACE,8BxB8+ER,CwBz+EI,6CAEE,QAAA,CAAA,MAAA,CACA,QAAA,CAEA,eAAA,CAJA,iBAAA,CACA,OAAA,CAEA,qBAAA,CAFA,KxB8+EN,CACF,CKt3EI,sCmBtKJ,YAuDI,QxBy+EF,CwBt+EE,mBACE,WxBw+EJ,CwBp+EE,6CACE,UxBs+EJ,CACF,CwBl+EE,uBACE,YAAA,CACA,OxBo+EJ,CKr4EI,mCmBjGF,uBAMI,QxBo+EJ,CwBj+EI,8BACE,WxBm+EN,CwB/9EI,qCACE,axBi+EN,CwB79EI,+CACE,kBxB+9EN,CACF,CwB19EE,wBAUE,uBAAA,CANA,kCAAA,CAAA,0BAAA,CAHA,cAAA,CACA,eAAA,CASA,yDAAA,CAFA,oBxBy9EJ,CwBp9EI,2CAEE,YAAA,CADA,WxBu9EN,CwBl9EI,mEACE,+CxBo9EN,CwBj9EM,qHACE,oDxBm9ER,CwBh9EQ,iIACE,0CxBk9EV,CwBn8EE,wCAGE,wBACE,qBxBm8EJ,CwB/7EE,6BACE,kCxBi8EJ,CwBl8EE,6BACE,iCxBi8EJ,CACF,CK75EI,0CmB5BF,YAME,0BAAA,CADA,QAAA,CAEA,SAAA,CANA,cAAA,CACA,KAAA,CAMA,sDACE,CALF,OAAA,CADA,SxBk8EF,CwBv7EE,4CAEE,WAAA,CACA,SAAA,CACA,4CACE,CAJF,UxB47EJ,CACF,CyBzmFA,iBACE,GACE,QzB2mFF,CyBxmFA,GACE,azB0mFF,CACF,CyBtmFA,gBACE,GACE,SAAA,CACA,0BzBwmFF,CyBrmFA,IACE,SzBumFF,CyBpmFA,GACE,SAAA,CACA,uBzBsmFF,CACF,CyB9lFA,MACE,+eAAA,CACA,ygBAAA,CACA,mmBAAA,CACA,sfzBgmFF,CyB1lFA,WAOE,kCAAA,CAAA,0BAAA,CANA,aAAA,CACA,gBAAA,CACA,eAAA,CAEA,uCAAA,CAGA,uBAAA,CAJA,kBzBgmFF,CyBzlFE,iBACE,UzB2lFJ,CyBvlFE,iBACE,oBAAA,CAEA,aAAA,CACA,qBAAA,CAFA,UzB2lFJ,CyBtlFI,+BACE,iBzBylFN,CyB1lFI,+BACE,kBzBylFN,CyB1lFI,qBAEE,gBzBwlFN,CyBplFI,kDACE,iBzBulFN,CyBxlFI,kDACE,kBzBulFN,CyBxlFI,kDAEE,iBzBslFN,CyBxlFI,kDAEE,kBzBslFN,CyBjlFE,iCAGE,iBzBslFJ,CyBzlFE,iCAGE,kBzBslFJ,CyBzlFE,uBACE,oBAAA,CACA,6BAAA,CAEA,eAAA,CACA,sBAAA,CACA,qBzBmlFJ,CyB/kFE,kBACE,YAAA,CAMA,gBAAA,CALA,SAAA,CAMA,oBAAA,CAHA,gBAAA,CAIA,WAAA,CAHA,eAAA,CAFA,SAAA,CADA,UzBulFJ,CyB9kFI,iDACE,4BzBglFN,CyB3kFE,iBACE,eAAA,CACA,sBzB6kFJ,CyB1kFI,gDACE,2BzB4kFN,CyBxkFI,kCAIE,kBzBglFN,CyBplFI,kCAIE,iBzBglFN,CyBplFI,wBAOE,6BAAA,CADA,UAAA,CALA,oBAAA,CAEA,YAAA,CAKA,4BAAA,CAAA,oBAAA,CACA,6BAAA,CAAA,qBAAA,CACA,yBAAA,CAAA,iBAAA,CALA,uBAAA,CAHA,WzBklFN,CyBtkFI,iCACE,azBwkFN,CyBpkFI,iCACE,gDAAA,CAAA,wCzBskFN,CyBlkFI,+BACE,8CAAA,CAAA,sCzBokFN,CyBhkFI,+BACE,8CAAA,CAAA,sCzBkkFN,CyB9jFI,sCACE,qDAAA,CAAA,6CzBgkFN,C0BvtFA,MACE,mSAAA,CACA,oVAAA,CACA,mOAAA,CACA,qZ1B0tFF,C0BjtFE,iBAME,kDAAA,CADA,UAAA,CAJA,oBAAA,CAEA,cAAA,CAIA,mCAAA,CAAA,2BAAA,CACA,4BAAA,CAAA,oBAAA,CACA,6BAAA,CAAA,qBAAA,CACA,yBAAA,CAAA,iBAAA,CANA,0BAAA,CAFA,a1B4tFJ,C0BhtFE,uBACE,6B1BktFJ,C0B9sFE,sBACE,wCAAA,CAAA,gC1BgtFJ,C0B5sFE,6BACE,+CAAA,CAAA,uC1B8sFJ,C0B1sFE,4BACE,8CAAA,CAAA,sC1B4sFJ,C2BvvFA,SASE,2CAAA,CADA,gCAAA,CAJA,aAAA,CAGA,eAAA,CADA,aAAA,CADA,UAAA,CAFA,S3B8vFF,C2BrvFE,aAZF,SAaI,Y3BwvFF,CACF,CK7kFI,0CsBzLJ,SAkBI,Y3BwvFF,CACF,C2BrvFE,iBACE,mB3BuvFJ,C2BnvFE,yBAIE,iB3B0vFJ,C2B9vFE,yBAIE,kB3B0vFJ,C2B9vFE,eAQE,eAAA,CAPA,YAAA,CAMA,eAAA,CAJA,QAAA,CAEA,aAAA,CAHA,SAAA,CAWA,oBAAA,CAPA,kB3BwvFJ,C2B9uFI,kCACE,Y3BgvFN,C2B3uFE,eACE,aAAA,CACA,kBAAA,CAAA,mB3B6uFJ,C2B1uFI,sCACE,aAAA,CACA,S3B4uFN,C2BtuFE,eAOE,kCAAA,CAAA,0BAAA,CANA,YAAA,CAEA,eAAA,CADA,gBAAA,CAMA,UAAA,CAJA,uCAAA,CACA,oBAAA,CAIA,8D3BuuFJ,C2BluFI,0CACE,aAAA,CACA,S3BouFN,C2BhuFI,6BAEE,kB3BmuFN,C2BruFI,6BAEE,iB3BmuFN,C2BruFI,mBAGE,iBAAA,CAFA,Y3BouFN,C2B7tFM,2CACE,qB3B+tFR,C2BhuFM,2CACE,qB3BkuFR,C2BnuFM,2CACE,qB3BquFR,C2BtuFM,2CACE,qB3BwuFR,C2BzuFM,2CACE,oB3B2uFR,C2B5uFM,2CACE,qB3B8uFR,C2B/uFM,2CACE,qB3BivFR,C2BlvFM,2CACE,qB3BovFR,C2BrvFM,4CACE,qB3BuvFR,C2BxvFM,4CACE,oB3B0vFR,C2B3vFM,4CACE,qB3B6vFR,C2B9vFM,4CACE,qB3BgwFR,C2BjwFM,4CACE,qB3BmwFR,C2BpwFM,4CACE,qB3BswFR,C2BvwFM,4CACE,oB3BywFR,C2BnwFI,gCACE,SAAA,CAIA,yBAAA,CAHA,wC3BswFN,C4Bz2FA,MACE,wS5B42FF,C4Bn2FE,mCACE,mBAAA,CACA,cAAA,CACA,QAAA,CAEA,mBAAA,CADA,kB5Bu2FJ,C4Bl2FE,oBAGE,kBAAA,CAOA,+CAAA,CACA,oBAAA,CAVA,mBAAA,CAIA,gBAAA,CACA,0BAAA,CACA,eAAA,CALA,QAAA,CAOA,qBAAA,CADA,eAAA,CAJA,wB5B22FJ,C4Bj2FI,0BAGE,uCAAA,CAFA,aAAA,CACA,YAAA,CAEA,6C5Bm2FN,C4B91FM,gEAEE,0CAAA,CADA,+B5Bi2FR,C4B31FI,yBACE,uB5B61FN,C4Br1FI,gCAME,oDAAA,CADA,UAAA,CAJA,oBAAA,CAEA,YAAA,CAKA,qCAAA,CAAA,6BAAA,CACA,4BAAA,CAAA,oBAAA,CACA,6BAAA,CAAA,qBAAA,CACA,yBAAA,CAAA,iBAAA,CAJA,iCAAA,CAHA,0BAAA,CAFA,W5Bg2FN,C4Bn1FI,wFACE,0C5Bq1FN,C6B/5FA,iBACE,GACE,oB7Bk6FF,C6B/5FA,IACE,kB7Bi6FF,C6B95FA,GACE,oB7Bg6FF,CACF,C6Bx5FA,MACE,0NAAA,CACA,uPAAA,CACA,wB7B05FF,C6Bp5FA,YA6BE,kCAAA,CAAA,0BAAA,CAVA,2CAAA,CACA,mBAAA,CACA,8BAAA,CAHA,gCAAA,CADA,sCAAA,CAdA,+IACE,CAYF,8BAAA,CAMA,SAAA,CArBA,iBAAA,CACA,uBAAA,CAyBA,4BAAA,CAJA,uDACE,CATF,6BAAA,CADA,S7Bw5FF,C6Bt4FE,oBAEE,SAAA,CAKA,uBAAA,CAJA,2EACE,CAHF,S7B24FJ,C6Bj4FE,8CACE,sC7Bm4FJ,C6B/3FE,mBAEE,gBAAA,CADA,a7Bk4FJ,C6B93FI,2CACE,Y7Bg4FN,C6B53FI,0CACE,e7B83FN,C6Bt3FA,eACE,eAAA,CAGA,YAAA,CADA,0BAAA,CADA,kB7B23FF,C6Bt3FE,yBACE,a7Bw3FJ,C6Bp3FE,oBACE,sCAAA,CACA,iB7Bs3FJ,C6Bl3FE,6BACE,oBAAA,CAGA,gB7Bk3FJ,C6B92FE,sBAoBE,mBAAA,CAdA,cAAA,CAHA,oBAAA,CACA,gBAAA,CAAA,iBAAA,CAIA,YAAA,CAWA,eAAA,CAlBA,iBAAA,CAMA,wBAAA,CAAA,gBAAA,CAFA,uBAAA,CAHA,S7Bw3FJ,C6B92FI,qCACE,uB7Bg3FN,C6Bt2FI,cAvBF,sBAwBI,W7By2FJ,C6Bt2FI,wCACE,2B7Bw2FN,C6Bp2FI,6BAOE,qCAAA,CACA,+CAAA,CAAA,uC7By2FN,C6B/1FI,yDAZE,UAAA,CADA,YAAA,CAIA,4BAAA,CAAA,oBAAA,CACA,6BAAA,CAAA,qBAAA,CACA,yBAAA,CAAA,iBAAA,CAVA,iBAAA,CACA,SAAA,CAEA,WAAA,CADA,U7B63FN,C6B92FI,4BAOE,oDAAA,CAMA,4CAAA,CAAA,oCAAA,CADA,uBAAA,CAJA,+C7Bs2FN,C6B31FM,gDACE,uB7B61FR,C6Bz1FM,mFACE,0C7B21FR,CACF,C6Bt1FI,0CAGE,2BAAA,CADA,uBAAA,CADA,S7B01FN,C6Bp1FI,8CACE,oB7Bs1FN,C6Bn1FM,aAJF,8CASI,8CAAA,CACA,iBAAA,CAHA,gCAAA,CADA,eAAA,CADA,cAAA,CAGA,kB7Bw1FN,C6Bn1FM,oDACE,mC7Bq1FR,CACF,C6Bz0FE,gCAEE,iBAAA,CADA,e7B60FJ,C6Bz0FI,mCACE,iB7B20FN,C6Bx0FM,oDAGE,a7Bs1FR,C6Bz1FM,oDAGE,c7Bs1FR,C6Bz1FM,0CAcE,8CAAA,CACA,iBAAA,CALA,gCAAA,CAEA,oBAAA,CACA,qBAAA,CANA,iBAAA,CACA,eAAA,CAHA,UAAA,CAIA,gBAAA,CALA,aAAA,CAEA,cAAA,CALA,iBAAA,CAUA,iBAAA,CATA,S7Bu1FR,C8B9kGA,kBAME,e9B0lGF,C8BhmGA,kBAME,gB9B0lGF,C8BhmGA,QAUE,2CAAA,CACA,oBAAA,CAEA,8BAAA,CALA,uCAAA,CACA,cAAA,CALA,aAAA,CAGA,eAAA,CAKA,YAAA,CAPA,mBAAA,CAJA,cAAA,CACA,UAAA,CAiBA,yBAAA,CALA,mGACE,CAZF,S9B6lGF,C8B1kGE,aAtBF,QAuBI,Y9B6kGF,CACF,C8B1kGE,kBACE,wB9B4kGJ,C8BxkGE,gBAEE,SAAA,CADA,mBAAA,CAGA,+BAAA,CADA,uB9B2kGJ,C8BvkGI,0BACE,8B9BykGN,C8BpkGE,4BAEE,0CAAA,CADA,+B9BukGJ,C8BlkGE,YACE,oBAAA,CACA,oB9BokGJ,C+BznGA,oBACE,GACE,mB/B4nGF,CACF,C+BpnGA,MACE,wf/BsnGF,C+BhnGA,YACE,aAAA,CAEA,eAAA,CADA,a/BonGF,C+BhnGE,+BAOE,kBAAA,CAAA,kB/BinGJ,C+BxnGE,+BAOE,iBAAA,CAAA,mB/BinGJ,C+BxnGE,qBAQE,aAAA,CACA,cAAA,CACA,YAAA,CATA,iBAAA,CAKA,U/BknGJ,C+B3mGI,qCAIE,iB/BmnGN,C+BvnGI,qCAIE,kB/BmnGN,C+BvnGI,2BAME,6BAAA,CADA,UAAA,CAJA,oBAAA,CAEA,YAAA,CAIA,yCAAA,CAAA,iCAAA,CACA,4BAAA,CAAA,oBAAA,CACA,6BAAA,CAAA,qBAAA,CACA,yBAAA,CAAA,iBAAA,CARA,W/BqnGN,C+BxmGE,kBAUE,2CAAA,CACA,mBAAA,CACA,8BAAA,CAJA,gCAAA,CACA,oBAAA,CAHA,kBAAA,CAFA,YAAA,CASA,SAAA,CANA,aAAA,CAFA,SAAA,CAJA,iBAAA,CAgBA,4BAAA,CAfA,UAAA,CAYA,+CACE,CAZF,S/BsnGJ,C+BrmGI,+EACE,gBAAA,CACA,SAAA,CACA,sC/BumGN,C+BjmGI,qCAEE,oCACE,gC/BkmGN,C+B9lGI,2CACE,c/BgmGN,CACF,C+B3lGE,kBACE,kB/B6lGJ,C+BzlGE,4BAGE,kBAAA,CAAA,oB/BgmGJ,C+BnmGE,4BAGE,mBAAA,CAAA,mB/BgmGJ,C+BnmGE,kBAKE,cAAA,CAJA,aAAA,CAKA,YAAA,CAIA,uBAAA,CAHA,2CACE,CAJF,kBAAA,CAFA,U/BimGJ,C+BtlGI,gDACE,+B/BwlGN,C+BplGI,wBACE,qD/BslGN,CgCtrGA,MAEI,uWAAA,CAAA,8WAAA,CAAA,sPAAA,CAAA,8xBAAA,CAAA,0MAAA,CAAA,gbAAA,CAAA,gMAAA,CAAA,iQAAA,CAAA,0VAAA,CAAA,6aAAA,CAAA,8SAAA,CAAA,gMhC+sGJ,CgCnsGE,4CAME,8CAAA,CACA,4BAAA,CACA,mBAAA,CACA,8BAAA,CAJA,mCAAA,CAJA,iBAAA,CAGA,gBAAA,CADA,iBAAA,CADA,eAAA,CASA,uBAAA,CADA,2BhCusGJ,CgCnsGI,aAdF,4CAeI,ehCssGJ,CACF,CgCnsGI,sEACE,gChCqsGN,CgChsGI,gDACE,qBhCksGN,CgC9rGI,gIAEE,iBAAA,CADA,chCisGN,CgC5rGI,4FACE,iBhC8rGN,CgC1rGI,kFACE,ehC4rGN,CgCxrGI,0FACE,YhC0rGN,CgCtrGI,8EACE,mBhCwrGN,CgCnrGE,sEAGE,iBAAA,CAAA,mBhC6rGJ,CgChsGE,sEAGE,kBAAA,CAAA,kBhC6rGJ,CgChsGE,sEASE,uBhCurGJ,CgChsGE,sEASE,wBhCurGJ,CgChsGE,sEAUE,4BhCsrGJ,CgChsGE,4IAWE,6BhCqrGJ,CgChsGE,sEAWE,4BhCqrGJ,CgChsGE,kDAOE,0BAAA,CACA,WAAA,CAFA,eAAA,CADA,eAAA,CAHA,oBAAA,CAAA,iBAAA,CADA,iBhC+rGJ,CgClrGI,kFACE,ehCorGN,CgChrGI,oFAOE,UhCsrGN,CgC7rGI,oFAOE,WhCsrGN,CgC7rGI,gEAME,wBfkIU,CenIV,UAAA,CADA,WAAA,CAIA,kDAAA,CAAA,0CAAA,CACA,4BAAA,CAAA,oBAAA,CACA,6BAAA,CAAA,qBAAA,CACA,yBAAA,CAAA,iBAAA,CAVA,iBAAA,CACA,UAAA,CACA,UhC0rGN,CgC9qGI,4DACE,4DhCgrGN,CgClqGE,sDACE,oBhCqqGJ,CgClqGI,gFACE,gChCoqGN,CgC/pGE,8DACE,0BhCkqGJ,CgC/pGI,4EACE,wBAlBG,CAmBH,kDAAA,CAAA,0ChCiqGN,CgC7pGI,0EACE,ahC+pGN,CgCprGE,8DACE,oBhCurGJ,CgCprGI,wFACE,gChCsrGN,CgCjrGE,sEACE,0BhCorGJ,CgCjrGI,oFACE,wBAlBG,CAmBH,sDAAA,CAAA,8ChCmrGN,CgC/qGI,kFACE,ahCirGN,CgCtsGE,sDACE,oBhCysGJ,CgCtsGI,gFACE,gChCwsGN,CgCnsGE,8DACE,0BhCssGJ,CgCnsGI,4EACE,wBAlBG,CAmBH,kDAAA,CAAA,0ChCqsGN,CgCjsGI,0EACE,ahCmsGN,CgCxtGE,oDACE,oBhC2tGJ,CgCxtGI,8EACE,gChC0tGN,CgCrtGE,4DACE,0BhCwtGJ,CgCrtGI,0EACE,wBAlBG,CAmBH,iDAAA,CAAA,yChCutGN,CgCntGI,wEACE,ahCqtGN,CgC1uGE,4DACE,oBhC6uGJ,CgC1uGI,sFACE,gChC4uGN,CgCvuGE,oEACE,0BhC0uGJ,CgCvuGI,kFACE,wBAlBG,CAmBH,qDAAA,CAAA,6ChCyuGN,CgCruGI,gFACE,ahCuuGN,CgC5vGE,8DACE,oBhC+vGJ,CgC5vGI,wFACE,gChC8vGN,CgCzvGE,sEACE,0BhC4vGJ,CgCzvGI,oFACE,wBAlBG,CAmBH,sDAAA,CAAA,8ChC2vGN,CgCvvGI,kFACE,ahCyvGN,CgC9wGE,4DACE,oBhCixGJ,CgC9wGI,sFACE,gChCgxGN,CgC3wGE,oEACE,0BhC8wGJ,CgC3wGI,kFACE,wBAlBG,CAmBH,qDAAA,CAAA,6ChC6wGN,CgCzwGI,gFACE,ahC2wGN,CgChyGE,4DACE,oBhCmyGJ,CgChyGI,sFACE,gChCkyGN,CgC7xGE,oEACE,0BhCgyGJ,CgC7xGI,kFACE,wBAlBG,CAmBH,qDAAA,CAAA,6ChC+xGN,CgC3xGI,gFACE,ahC6xGN,CgClzGE,0DACE,oBhCqzGJ,CgClzGI,oFACE,gChCozGN,CgC/yGE,kEACE,0BhCkzGJ,CgC/yGI,gFACE,wBAlBG,CAmBH,oDAAA,CAAA,4ChCizGN,CgC7yGI,8EACE,ahC+yGN,CgCp0GE,oDACE,oBhCu0GJ,CgCp0GI,8EACE,gChCs0GN,CgCj0GE,4DACE,0BhCo0GJ,CgCj0GI,0EACE,wBAlBG,CAmBH,iDAAA,CAAA,yChCm0GN,CgC/zGI,wEACE,ahCi0GN,CgCt1GE,4DACE,oBhCy1GJ,CgCt1GI,sFACE,gChCw1GN,CgCn1GE,oEACE,0BhCs1GJ,CgCn1GI,kFACE,wBAlBG,CAmBH,qDAAA,CAAA,6ChCq1GN,CgCj1GI,gFACE,ahCm1GN,CgCx2GE,wDACE,oBhC22GJ,CgCx2GI,kFACE,gChC02GN,CgCr2GE,gEACE,0BhCw2GJ,CgCr2GI,8EACE,wBAlBG,CAmBH,mDAAA,CAAA,2ChCu2GN,CgCn2GI,4EACE,ahCq2GN,CiCzgHA,MACE,wMjC4gHF,CiCngHE,sBAEE,uCAAA,CADA,gBjCugHJ,CiCngHI,mCACE,ajCqgHN,CiCtgHI,mCACE,cjCqgHN,CiCjgHM,4BACE,sBjCmgHR,CiChgHQ,mCACE,gCjCkgHV,CiC9/GQ,2DACE,SAAA,CAEA,uBAAA,CADA,ejCigHV,CiC5/GQ,yGACE,SAAA,CACA,uBjC8/GV,CiC1/GQ,yCACE,YjC4/GV,CiCr/GE,0BACE,eAAA,CACA,ejCu/GJ,CiCp/GI,+BACE,oBjCs/GN,CiCj/GE,gDACE,YjCm/GJ,CiC/+GE,8BAIE,+BAAA,CAHA,oBAAA,CAEA,WAAA,CAGA,SAAA,CAKA,4BAAA,CAJA,4DACE,CAHF,0BjCm/GJ,CiC1+GI,aAdF,8BAeI,+BAAA,CACA,SAAA,CACA,uBjC6+GJ,CACF,CiC1+GI,wCACE,6BjC4+GN,CiCx+GI,oCACE,+BjC0+GN,CiCt+GI,qCAKE,6BAAA,CADA,UAAA,CAHA,oBAAA,CAEA,YAAA,CAGA,2CAAA,CAAA,mCAAA,CACA,4BAAA,CAAA,oBAAA,CACA,6BAAA,CAAA,qBAAA,CACA,yBAAA,CAAA,iBAAA,CAPA,WjC++GN,CiCl+GQ,mDACE,oBjCo+GV,CkCllHE,kCAEE,iBlCwlHJ,CkC1lHE,kCAEE,kBlCwlHJ,CkC1lHE,wBAGE,yCAAA,CAFA,oBAAA,CAGA,SAAA,CACA,mClCqlHJ,CkChlHI,aAVF,wBAWI,YlCmlHJ,CACF,CkC/kHE,6FAEE,SAAA,CACA,mClCilHJ,CkC3kHE,4FAEE,+BlC6kHJ,CkCzkHE,oBACE,yBAAA,CACA,uBAAA,CAGA,yElCykHJ,CK18GI,sC6BrHE,qDACE,uBlCkkHN,CACF,CkC7jHE,kEACE,yBlC+jHJ,CkC3jHE,sBACE,0BlC6jHJ,CmCxnHE,2BACE,anC2nHJ,CKt8GI,0C8BtLF,2BAKI,enC2nHJ,CACF,CmCxnHI,6BAGE,0BAAA,CAAA,2BAAA,CADA,eAAA,CAEA,iBAAA,CAHA,yBAAA,CAAA,iBnC6nHN,CmCvnHM,2CACE,kBnCynHR,CoC1oHE,uBACE,4CpC8oHJ,CoCzoHE,8CAJE,kCAAA,CAAA,0BpCipHJ,CoC7oHE,uBACE,4CpC4oHJ,CoCvoHE,4BAEE,kCAAA,CAAA,0BAAA,CADA,qCpC0oHJ,CoCtoHI,mCACE,apCwoHN,CoCpoHI,kCACE,apCsoHN,CoCjoHE,0BAKE,eAAA,CAJA,aAAA,CAEA,YAAA,CACA,aAAA,CAFA,kBAAA,CAAA,mBpCsoHJ,CoChoHI,uCACE,epCkoHN,CoC9nHI,sCACE,kBpCgoHN,CqC7qHA,MACE,8LrCgrHF,CqCvqHE,oBAGE,iBAAA,CAEA,gBAAA,CADA,arCyqHJ,CqCrqHI,wCACE,uBrCuqHN,CqCnqHI,gCAEE,eAAA,CADA,gBrCsqHN,CqC/pHM,wCACE,mBrCiqHR,CqC3pHE,8BAKE,oBrC8pHJ,CqCnqHE,8BAKE,mBrC8pHJ,CqCnqHE,8BAOE,4BrC4pHJ,CqCnqHE,4DAQE,6BrC2pHJ,CqCnqHE,8BAQE,4BrC2pHJ,CqCnqHE,oBAME,cAAA,CAHA,aAAA,CACA,erC+pHJ,CqCxpHI,kCACE,uCAAA,CACA,oBrC0pHN,CqCtpHI,wCAEE,uCAAA,CADA,YrCypHN,CqCppHI,oCASE,WrC0pHN,CqCnqHI,oCASE,UrC0pHN,CqCnqHI,0BAME,6BAAA,CADA,UAAA,CADA,WAAA,CAMA,yCAAA,CAAA,iCAAA,CACA,4BAAA,CAAA,oBAAA,CACA,6BAAA,CAAA,qBAAA,CACA,yBAAA,CAAA,iBAAA,CAZA,iBAAA,CACA,UAAA,CAMA,sBAAA,CADA,yBAAA,CAJA,UrCgqHN,CqCnpHM,oCACE,wBrCqpHR,CqChpHI,4BACE,YrCkpHN,CqC7oHI,4CACE,YrC+oHN,CsCtuHE,+DACE,mBAAA,CACA,cAAA,CACA,uBtCyuHJ,CsCtuHI,2EAGE,iBAAA,CADA,eAAA,CADA,atC0uHN,CuChvHE,6BACE,sCvCmvHJ,CuChvHE,cACE,yCvCkvHJ,CuCtuHE,sIACE,oCvCwuHJ,CuChuHE,2EACE,qCvCkuHJ,CuCxtHE,wGACE,oCvC0tHJ,CuCjtHE,yFACE,qCvCmtHJ,CuC9sHE,6BACE,kCvCgtHJ,CuC1sHE,6CACE,sCvC4sHJ,CuCrsHE,4DACE,sCvCusHJ,CuChsHE,4DACE,qCvCksHJ,CuCzrHE,yFACE,qCvC2rHJ,CuCnrHE,2EACE,sCvCqrHJ,CuC1qHE,wHACE,qCvC4qHJ,CuCvqHE,8BAGE,mBAAA,CADA,gBAAA,CADA,gBvC2qHJ,CuCtqHE,eACE,4CvCwqHJ,CuCrqHE,eACE,4CvCuqHJ,CuCnqHE,gBAIE,+CAAA,CACA,kDAAA,CAJA,aAAA,CAEA,wBAAA,CADA,wBvCwqHJ,CuCjqHE,yBAOE,wCAAA,CACA,+DAAA,CACA,4BAAA,CACA,6BAAA,CARA,iBAAA,CAGA,eAAA,CACA,eAAA,CAFA,cAAA,CADA,oCAAA,CAFA,iBvC4qHJ,CuChqHI,6BACE,YvCkqHN,CuC/pHM,kCACE,wBAAA,CACA,yBvCiqHR,CuC3pHE,iCAaE,wCAAA,CACA,+DAAA,CAJA,uCAAA,CACA,0BAAA,CALA,UAAA,CAJA,oBAAA,CAOA,2BAAA,CADA,2BAAA,CADA,2BAAA,CANA,eAAA,CAWA,wBAAA,CAAA,gBAAA,CAPA,SvCoqHJ,CuClpHE,sBACE,iBAAA,CACA,iBvCopHJ,CuC5oHI,sCACE,gBvC8oHN,CuC1oHI,gDACE,YvC4oHN,CuCloHA,gBACE,iBvCqoHF,CuCjoHE,yCACE,aAAA,CACA,SvCmoHJ,CuC9nHE,mBACE,YvCgoHJ,CuC3nHE,oBACE,QvC6nHJ,CuCznHE,4BACE,WAAA,CACA,SAAA,CACA,evC2nHJ,CuCxnHI,0CACE,YvC0nHN,CuCpnHE,yBAKE,wCAAA,CAEA,+BAAA,CADA,4BAAA,CAHA,eAAA,CADA,oDAAA,CAEA,wBAAA,CAAA,gBvCynHJ,CuClnHE,2BAEE,+DAAA,CADA,2BvCqnHJ,CuCjnHI,+BACE,uCAAA,CACA,gBvCmnHN,CuC9mHE,sBACE,MAAA,CACA,WvCgnHJ,CuC3mHA,aACE,avC8mHF,CuCpmHE,4BAEE,aAAA,CADA,YvCwmHJ,CuCpmHI,wDAEE,2BAAA,CADA,wBvCumHN,CuCjmHE,+BAKE,2CAAA,CAEA,+BAAA,CADA,gCAAA,CADA,sBAAA,CAHA,mBAAA,CACA,gBAAA,CAFA,avCymHJ,CuChmHI,qCAEE,UAAA,CACA,UAAA,CAFA,avComHN,CKtuHI,0CkCiJF,8BACE,iBvCylHF,CuC/kHE,wSAGE,evCqlHJ,CuCjlHE,sCAEE,mBAAA,CACA,eAAA,CADA,oBAAA,CADA,kBAAA,CAAA,mBvCqlHJ,CACF,CwC76HI,yDAIE,+BAAA,CACA,8BAAA,CAFA,aAAA,CADA,QAAA,CADA,iBxCm7HN,CwC36HI,uBAEE,uCAAA,CADA,cxC86HN,CwCz3HM,iHAEE,WAlDkB,CAiDlB,kBxCo4HR,CwCr4HM,6HAEE,WAlDkB,CAiDlB,kBxCg5HR,CwCj5HM,6HAEE,WAlDkB,CAiDlB,kBxC45HR,CwC75HM,oHAEE,WAlDkB,CAiDlB,kBxCw6HR,CwCz6HM,0HAEE,WAlDkB,CAiDlB,kBxCo7HR,CwCr7HM,uHAEE,WAlDkB,CAiDlB,kBxCg8HR,CwCj8HM,uHAEE,WAlDkB,CAiDlB,kBxC48HR,CwC78HM,6HAEE,WAlDkB,CAiDlB,kBxCw9HR,CwCz9HM,yCAEE,WAlDkB,CAiDlB,kBxC49HR,CwC79HM,yCAEE,WAlDkB,CAiDlB,kBxCg+HR,CwCj+HM,0CAEE,WAlDkB,CAiDlB,kBxCo+HR,CwCr+HM,uCAEE,WAlDkB,CAiDlB,kBxCw+HR,CwCz+HM,wCAEE,WAlDkB,CAiDlB,kBxC4+HR,CwC7+HM,sCAEE,WAlDkB,CAiDlB,kBxCg/HR,CwCj/HM,wCAEE,WAlDkB,CAiDlB,kBxCo/HR,CwCr/HM,oCAEE,WAlDkB,CAiDlB,kBxCw/HR,CwCz/HM,2CAEE,WAlDkB,CAiDlB,kBxC4/HR,CwC7/HM,qCAEE,WAlDkB,CAiDlB,kBxCggIR,CwCjgIM,oCAEE,WAlDkB,CAiDlB,kBxCogIR,CwCrgIM,kCAEE,WAlDkB,CAiDlB,kBxCwgIR,CwCzgIM,qCAEE,WAlDkB,CAiDlB,kBxC4gIR,CwC7gIM,mCAEE,WAlDkB,CAiDlB,kBxCghIR,CwCjhIM,qCAEE,WAlDkB,CAiDlB,kBxCohIR,CwCrhIM,wCAEE,WAlDkB,CAiDlB,kBxCwhIR,CwCzhIM,sCAEE,WAlDkB,CAiDlB,kBxC4hIR,CwC7hIM,2CAEE,WAlDkB,CAiDlB,kBxCgiIR,CwCrhIM,iCAEE,WAPkB,CAMlB,iBxCwhIR,CwCzhIM,uCAEE,WAPkB,CAMlB,iBxC4hIR,CwC7hIM,mCAEE,WAPkB,CAMlB,iBxCgiIR,CyClnIA,MACE,qMAAA,CACA,mMzCqnIF,CyC5mIE,wBAKE,mBAAA,CAHA,YAAA,CACA,qBAAA,CACA,YAAA,CAHA,iBzCmnIJ,CyCzmII,8BAGE,QAAA,CACA,SAAA,CAHA,iBAAA,CACA,OzC6mIN,CyCxmIM,qCACE,0BzC0mIR,CyC7kIM,kEACE,0CzC+kIR,CyCzkIE,2BAKE,uBAAA,CADA,+DAAA,CAHA,YAAA,CACA,cAAA,CACA,aAAA,CAGA,oBzC2kIJ,CyCxkII,aATF,2BAUI,gBzC2kIJ,CACF,CyCxkII,cAGE,+BACE,iBzCwkIN,CyCrkIM,sCAQE,qCAAA,CANA,QAAA,CAKA,UAAA,CAHA,aAAA,CAEA,UAAA,CAHA,MAAA,CAFA,iBAAA,CAaA,2CAAA,CALA,2DACE,CAGF,kDAAA,CARA,+BzC6kIR,CACF,CyC/jII,8CACE,YzCikIN,CyC7jII,iCASE,+BAAA,CACA,6BAAA,CAJA,uCAAA,CAEA,cAAA,CAPA,aAAA,CAGA,gBAAA,CACA,eAAA,CAFA,8BAAA,CAWA,+BAAA,CAHA,2CACE,CALF,kBAAA,CALA,UzCykIN,CyC1jIM,aAII,6CACE,OzCyjIV,CyC1jIQ,8CACE,OzC4jIV,CyC7jIQ,8CACE,OzC+jIV,CyChkIQ,8CACE,OzCkkIV,CyCnkIQ,8CACE,OzCqkIV,CyCtkIQ,8CACE,OzCwkIV,CyCzkIQ,8CACE,OzC2kIV,CyC5kIQ,8CACE,OzC8kIV,CyC/kIQ,8CACE,OzCilIV,CyCllIQ,+CACE,QzColIV,CyCrlIQ,+CACE,QzCulIV,CyCxlIQ,+CACE,QzC0lIV,CyC3lIQ,+CACE,QzC6lIV,CyC9lIQ,+CACE,QzCgmIV,CyCjmIQ,+CACE,QzCmmIV,CyCpmIQ,+CACE,QzCsmIV,CyCvmIQ,+CACE,QzCymIV,CyC1mIQ,+CACE,QzC4mIV,CyC7mIQ,+CACE,QzC+mIV,CyChnIQ,+CACE,QzCknIV,CACF,CyC7mIM,uCACE,gCzC+mIR,CyCzmIE,4BACE,UzC2mIJ,CyCxmII,aAJF,4BAKI,gBzC2mIJ,CACF,CyCvmIE,0BACE,YzCymIJ,CyCtmII,aAJF,0BAKI,azCymIJ,CyCrmIM,sCACE,OzCumIR,CyCxmIM,uCACE,OzC0mIR,CyC3mIM,uCACE,OzC6mIR,CyC9mIM,uCACE,OzCgnIR,CyCjnIM,uCACE,OzCmnIR,CyCpnIM,uCACE,OzCsnIR,CyCvnIM,uCACE,OzCynIR,CyC1nIM,uCACE,OzC4nIR,CyC7nIM,uCACE,OzC+nIR,CyChoIM,wCACE,QzCkoIR,CyCnoIM,wCACE,QzCqoIR,CyCtoIM,wCACE,QzCwoIR,CyCzoIM,wCACE,QzC2oIR,CyC5oIM,wCACE,QzC8oIR,CyC/oIM,wCACE,QzCipIR,CyClpIM,wCACE,QzCopIR,CyCrpIM,wCACE,QzCupIR,CyCxpIM,wCACE,QzC0pIR,CyC3pIM,wCACE,QzC6pIR,CyC9pIM,wCACE,QzCgqIR,CACF,CyC1pII,+FAEE,QzC4pIN,CyCzpIM,yGACE,wBAAA,CACA,yBzC4pIR,CyCnpIM,2DAEE,wBAAA,CACA,yBAAA,CAFA,QzCupIR,CyChpIM,iEACE,QzCkpIR,CyC/oIQ,qLAGE,wBAAA,CACA,yBAAA,CAFA,QzCmpIV,CyC7oIQ,6FACE,wBAAA,CACA,yBzC+oIV,CyC1oIM,yDACE,kBzC4oIR,CyCvoII,sCACE,QzCyoIN,CyCpoIE,2BAEE,iBAAA,CAOA,kBAAA,CAHA,uCAAA,CAEA,cAAA,CAPA,aAAA,CAGA,YAAA,CACA,gBAAA,CAEA,mBAAA,CAGA,gCAAA,CAPA,WzC6oIJ,CyCnoII,iCAEE,uDAAA,CADA,+BzCsoIN,CyCjoII,iCAKE,6BAAA,CADA,UAAA,CAHA,aAAA,CAEA,WAAA,CAMA,8CAAA,CAAA,sCAAA,CACA,4BAAA,CAAA,oBAAA,CACA,6BAAA,CAAA,qBAAA,CACA,yBAAA,CAAA,iBAAA,CANA,+CACE,CALF,UzC2oIN,CyC5nIE,4BAOE,yEACE,CANF,YAAA,CAGA,aAAA,CAFA,qBAAA,CAGA,mBAAA,CALA,iBAAA,CAYA,wBAAA,CATA,YzCkoIJ,CyCtnII,sCACE,wBzCwnIN,CyCpnII,oCACE,SzCsnIN,CyClnII,kCAGE,wEACE,CAFF,mBAAA,CADA,OzCsnIN,CyC5mIM,uDACE,8CAAA,CAAA,sCzC8mIR,CKpuII,0CoCoIF,wDAEE,kBzCsmIF,CyCxmIA,wDAEE,mBzCsmIF,CyCxmIA,8CAGE,eAAA,CAFA,eAAA,CAGA,iCzComIF,CyChmIE,8DACE,mBzCmmIJ,CyCpmIE,8DACE,kBzCmmIJ,CyCpmIE,oDAEE,UzCkmIJ,CyC9lIE,8EAEE,kBzCimIJ,CyCnmIE,8EAEE,mBzCimIJ,CyCnmIE,8EAGE,kBzCgmIJ,CyCnmIE,8EAGE,mBzCgmIJ,CyCnmIE,oEACE,UzCkmIJ,CyC5lIE,8EAEE,mBzC+lIJ,CyCjmIE,8EAEE,kBzC+lIJ,CyCjmIE,8EAGE,mBzC8lIJ,CyCjmIE,8EAGE,kBzC8lIJ,CyCjmIE,oEACE,UzCgmIJ,CACF,CyCllIE,cAHF,olDAII,gCzCqlIF,CyCllIE,g8GACE,uCzColIJ,CACF,CyC/kIA,4sDACE,+BzCklIF,CyC9kIA,wmDACE,azCilIF,C0Cp8IA,MACE,8WAAA,CACA,uX1Cu8IF,C0C97IE,4BAEE,oBAAA,CADA,iB1Ck8IJ,C0C77II,sDAGE,S1C+7IN,C0Cl8II,sDAGE,U1C+7IN,C0Cl8II,4CACE,iBAAA,CACA,S1Cg8IN,C0C17IE,+CAEE,SAAA,CADA,U1C67IJ,C0Cx7IE,kDAOE,W1C87IJ,C0Cr8IE,kDAOE,Y1C87IJ,C0Cr8IE,wCAME,qDAAA,CADA,UAAA,CADA,aAAA,CAIA,0CAAA,CAAA,kCAAA,CACA,4BAAA,CAAA,oBAAA,CACA,6BAAA,CAAA,qBAAA,CACA,yBAAA,CAAA,iBAAA,CAVA,iBAAA,CACA,SAAA,CACA,Y1Ck8IJ,C0Ct7IE,gEACE,wBzB2Wa,CyB1Wb,mDAAA,CAAA,2C1Cw7IJ,C2Cx+IA,QACE,8DAAA,CAGA,+CAAA,CACA,iEAAA,CACA,oDAAA,CACA,sDAAA,CACA,mDAAA,CAGA,qEAAA,CACA,qEAAA,CACA,wEAAA,CACA,0EAAA,CACA,wEAAA,CACA,yEAAA,CACA,kEAAA,CACA,+DAAA,CACA,oEAAA,CACA,oEAAA,CACA,mEAAA,CACA,gEAAA,CACA,uEAAA,CACA,mEAAA,CACA,qEAAA,CACA,oEAAA,CACA,gEAAA,CACA,wEAAA,CACA,qEAAA,CACA,+D3Cu+IF,C2Cj+IA,SAEE,kBAAA,CADA,Y3Cq+IF,CKp2II,mCuChKA,8BACE,U5C4gJJ,C4C7gJE,8BACE,W5C4gJJ,C4C7gJE,8BAGE,kB5C0gJJ,C4C7gJE,8BAGE,iB5C0gJJ,C4C7gJE,oBAKE,mBAAA,CADA,YAAA,CAFA,a5C2gJJ,C4CrgJI,kCACE,W5CwgJN,C4CzgJI,kCACE,U5CwgJN,C4CzgJI,kCAEE,iBAAA,CAAA,c5CugJN,C4CzgJI,kCAEE,aAAA,CAAA,kB5CugJN,CACF","file":"main.css"} \ No newline at end of file diff --git a/v2.x/automation_plugin_dev/index.html b/v2.x/automation_plugin_dev/index.html index 6c0c6a309..b15687997 100644 --- a/v2.x/automation_plugin_dev/index.html +++ b/v2.x/automation_plugin_dev/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/awesome-jmeter/index.html b/v2.x/awesome-jmeter/index.html index 84b848425..6714403b8 100644 --- a/v2.x/awesome-jmeter/index.html +++ b/v2.x/awesome-jmeter/index.html @@ -18,7 +18,7 @@ - + @@ -31,7 +31,7 @@ - + diff --git a/v2.x/case_studies/user_cases/index.html b/v2.x/case_studies/user_cases/index.html index d7844869e..6a7bbc90b 100644 --- a/v2.x/case_studies/user_cases/index.html +++ b/v2.x/case_studies/user_cases/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/dev_manual/index.html b/v2.x/dev_manual/index.html index cdab278b6..54c32f195 100644 --- a/v2.x/dev_manual/index.html +++ b/v2.x/dev_manual/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/enterprise/index.html b/v2.x/enterprise/index.html index 4d145ccc2..baa55d911 100644 --- a/v2.x/enterprise/index.html +++ b/v2.x/enterprise/index.html @@ -18,7 +18,7 @@ - + @@ -31,7 +31,7 @@ - + diff --git a/v2.x/faq/api_test/index.html b/v2.x/faq/api_test/index.html index 189156fe1..6aaaaabec 100644 --- a/v2.x/faq/api_test/index.html +++ b/v2.x/faq/api_test/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/faq/enterprise/index.html b/v2.x/faq/enterprise/index.html index 77eb9dcb7..dd40cdf86 100644 --- a/v2.x/faq/enterprise/index.html +++ b/v2.x/faq/enterprise/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/faq/installation/index.html b/v2.x/faq/installation/index.html index 690e51f6f..998502a7f 100644 --- a/v2.x/faq/installation/index.html +++ b/v2.x/faq/installation/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/faq/load_test/index.html b/v2.x/faq/load_test/index.html index baa3aebb2..56bf2c58d 100644 --- a/v2.x/faq/load_test/index.html +++ b/v2.x/faq/load_test/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/faq/report_statistics/index.html b/v2.x/faq/report_statistics/index.html index 988d76ddf..a6ba9ebd7 100644 --- a/v2.x/faq/report_statistics/index.html +++ b/v2.x/faq/report_statistics/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/faq/service_integration/index.html b/v2.x/faq/service_integration/index.html index 0baae88ea..8930e209c 100644 --- a/v2.x/faq/service_integration/index.html +++ b/v2.x/faq/service_integration/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/faq/system_management/index.html b/v2.x/faq/system_management/index.html index 70f948c1d..30272cf67 100644 --- a/v2.x/faq/system_management/index.html +++ b/v2.x/faq/system_management/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/faq/test_track/index.html b/v2.x/faq/test_track/index.html index 7ebc9dec5..1a482abf6 100644 --- a/v2.x/faq/test_track/index.html +++ b/v2.x/faq/test_track/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/faq/ui_test/index.html b/v2.x/faq/ui_test/index.html index c19e4bc0c..a538a2e03 100644 --- a/v2.x/faq/ui_test/index.html +++ b/v2.x/faq/ui_test/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/index.html b/v2.x/index.html index cfd431ea6..8282768ec 100644 --- a/v2.x/index.html +++ b/v2.x/index.html @@ -20,7 +20,7 @@ - + @@ -33,7 +33,7 @@ - + diff --git a/v2.x/installation/backup_data/index.html b/v2.x/installation/backup_data/index.html index 2a2def03f..40e7d2e6b 100644 --- a/v2.x/installation/backup_data/index.html +++ b/v2.x/installation/backup_data/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/installation/build_data_streaming/index.html b/v2.x/installation/build_data_streaming/index.html index 6d41d8910..ff2d82a08 100644 --- a/v2.x/installation/build_data_streaming/index.html +++ b/v2.x/installation/build_data_streaming/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/installation/build_kafka/index.html b/v2.x/installation/build_kafka/index.html index e6909007b..dfaee5175 100644 --- a/v2.x/installation/build_kafka/index.html +++ b/v2.x/installation/build_kafka/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/installation/build_node_controller/index.html b/v2.x/installation/build_node_controller/index.html index dac3ecf8f..fea224f7d 100644 --- a/v2.x/installation/build_node_controller/index.html +++ b/v2.x/installation/build_node_controller/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/installation/cli/index.html b/v2.x/installation/cli/index.html index 35a1fa335..b61cfd89c 100644 --- a/v2.x/installation/cli/index.html +++ b/v2.x/installation/cli/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/installation/kubernetes_installation/index.html b/v2.x/installation/kubernetes_installation/index.html index bad796d5d..611c3d6f9 100644 --- a/v2.x/installation/kubernetes_installation/index.html +++ b/v2.x/installation/kubernetes_installation/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/installation/network_port/index.html b/v2.x/installation/network_port/index.html index 7f1dd39ca..1f717a785 100644 --- a/v2.x/installation/network_port/index.html +++ b/v2.x/installation/network_port/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/installation/offline_installation/index.html b/v2.x/installation/offline_installation/index.html index a801974b4..1f841fd62 100644 --- a/v2.x/installation/offline_installation/index.html +++ b/v2.x/installation/offline_installation/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/installation/offline_installation_mac/index.html b/v2.x/installation/offline_installation_mac/index.html index 8da53a6a6..924c472ae 100644 --- a/v2.x/installation/offline_installation_mac/index.html +++ b/v2.x/installation/offline_installation_mac/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/installation/offline_installation_windows/index.html b/v2.x/installation/offline_installation_windows/index.html index 3c125390b..ca75b57ef 100644 --- a/v2.x/installation/offline_installation_windows/index.html +++ b/v2.x/installation/offline_installation_windows/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/installation/offline_upgrade/index.html b/v2.x/installation/offline_upgrade/index.html index 621ae0700..24be3e39d 100644 --- a/v2.x/installation/offline_upgrade/index.html +++ b/v2.x/installation/offline_upgrade/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/installation/online_installation/index.html b/v2.x/installation/online_installation/index.html index a4add1f36..8bbde755b 100644 --- a/v2.x/installation/online_installation/index.html +++ b/v2.x/installation/online_installation/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/installation/online_upgrade/index.html b/v2.x/installation/online_upgrade/index.html index 61474c2bd..5b0c03228 100644 --- a/v2.x/installation/online_upgrade/index.html +++ b/v2.x/installation/online_upgrade/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/installation/pre_work/index.html b/v2.x/installation/pre_work/index.html index 542fce2ce..38562a0f5 100644 --- a/v2.x/installation/pre_work/index.html +++ b/v2.x/installation/pre_work/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/quick_start/api_test/index.html b/v2.x/quick_start/api_test/index.html index 7aa4a4731..b71c3f580 100644 --- a/v2.x/quick_start/api_test/index.html +++ b/v2.x/quick_start/api_test/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/quick_start/create_project/index.html b/v2.x/quick_start/create_project/index.html index 3807ad36d..015992488 100644 --- a/v2.x/quick_start/create_project/index.html +++ b/v2.x/quick_start/create_project/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/quick_start/load_test/index.html b/v2.x/quick_start/load_test/index.html index c107905a9..bcdbac735 100644 --- a/v2.x/quick_start/load_test/index.html +++ b/v2.x/quick_start/load_test/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/quick_start/quick_start/index.html b/v2.x/quick_start/quick_start/index.html index c5ff91611..12212a117 100644 --- a/v2.x/quick_start/quick_start/index.html +++ b/v2.x/quick_start/quick_start/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/quick_start/test_track/index.html b/v2.x/quick_start/test_track/index.html index b99919581..7889940ec 100644 --- a/v2.x/quick_start/test_track/index.html +++ b/v2.x/quick_start/test_track/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/quick_start/ui_test/index.html b/v2.x/quick_start/ui_test/index.html index 6cb33f13c..05e0aca42 100644 --- a/v2.x/quick_start/ui_test/index.html +++ b/v2.x/quick_start/ui_test/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/search/search_index.json b/v2.x/search/search_index.json index 457dd2f0e..892ad86e1 100644 --- a/v2.x/search/search_index.json +++ b/v2.x/search/search_index.json @@ -1 +1 @@ -{"config":{"lang":["en","ja"],"separator":"[\\s\\-\\.]+","pipeline":["stemmer"]},"docs":[{"location":"","title":"\u9879\u76ee\u4ecb\u7ecd","text":"

    MeterSphere \u662f\u4e00\u7ad9\u5f0f\u5f00\u6e90\u6301\u7eed\u6d4b\u8bd5\u5e73\u53f0\uff0c\u6db5\u76d6\u6d4b\u8bd5\u8ddf\u8e2a\u3001\u63a5\u53e3\u6d4b\u8bd5\u3001UI \u6d4b\u8bd5\u548c\u6027\u80fd\u6d4b\u8bd5\u7b49\uff0c\u5168\u9762\u517c\u5bb9 JMeter\u3001Selenium \u7b49\u4e3b\u6d41\u5f00\u6e90\u6807\u51c6\uff0c\u6709\u6548\u52a9\u529b\u5f00\u53d1\u548c\u6d4b\u8bd5\u56e2\u961f\u5728\u7ebf\u5171\u4eab\u534f\u4f5c\uff0c\u5b9e\u73b0\u7aef\u5230\u7aef\u7684\u6d4b\u8bd5\u7ba1\u7406\u8ddf\u8e2a\u53ef\u89c6\u5316\u3001\u81ea\u52a8\u5316\u6d4b\u8bd5\u3001\u6027\u80fd\u6d4b\u8bd5\u53ca\u878d\u5165\u6301\u7eed\u4ea4\u4ed8 DevOps \u4f53\u7cfb\uff0c\u5e76\u5145\u5206\u5229\u7528\u4e91\u5f39\u6027\u8fdb\u884c\u9ad8\u5ea6\u53ef\u6269\u5c55\u7684\u81ea\u52a8\u5316\u6d4b\u8bd5\uff0c\u4ece\u800c\u52a0\u901f\u9ad8\u8d28\u91cf\u7684\u8f6f\u4ef6\u4ea4\u4ed8\uff0c\u63a8\u52a8\u4e2d\u56fd\u6d4b\u8bd5\u884c\u4e1a\u6574\u4f53\u6548\u7387\u7684\u63d0\u5347\u3002

    "},{"location":"#1","title":"1 \u4ea7\u54c1\u4f18\u52bf","text":"
    • \u5f00\u6e90\uff1a\u57fa\u4e8e\u5f00\u6e90\u3001\u517c\u5bb9\u5f00\u6e90\uff0c\u6309\u6708\u53d1\u5e03\u65b0\u7248\u672c\u3001\u65e5\u5747\u4e0b\u8f7d\u5b89\u88c5\u8d85\u8fc7100\u6b21\u3001\u88ab\u5927\u91cf\u7528\u6237\u9a8c\u8bc1\u3002
    • \u4e00\u7ad9\u5f0f\uff1a\u5168\u9762\u6db5\u76d6\u6d4b\u8bd5\u8ddf\u8e2a\u3001\u63a5\u53e3\u6d4b\u8bd5\u3001UI\u6d4b\u8bd5\u3001\u6027\u80fd\u6d4b\u8bd5\u5e76\u6253\u901a\u8054\u52a8\u3002
    • \u5168\u751f\u547d\u5468\u671f\uff1a\u6ee1\u8db3\u4ece\u6d4b\u8bd5\u8ba1\u5212\u3001\u6d4b\u8bd5\u6267\u884c\u5230\u6d4b\u8bd5\u62a5\u544a\u5206\u6790\u7684\u5168\u751f\u547d\u5468\u671f\u9700\u6c42\u3002
    • \u6301\u7eed\u6d4b\u8bd5\uff1a\u65e0\u7f1d\u5bf9\u63a5 Bug \u7ba1\u7406\u5de5\u5177\u548c\u6301\u7eed\u96c6\u6210\u5de5\u5177\u7b49\uff0c\u5c06\u6d4b\u8bd5\u878d\u5165\u6301\u7eed\u4ea4\u4ed8\u548c DevOps \u4f53\u7cfb\u3002
    • \u56e2\u961f\u534f\u4f5c\uff1a\u652f\u6301\u56e2\u961f\u534f\u4f5c\u548c\u8d44\u4ea7\u6c89\u6dc0\uff0c\u65e0\u8bba\u56e2\u961f\u89c4\u6a21\u5982\u4f55\uff0c\u603b\u6709\u9002\u5408\u7684\u843d\u5730\u65b9\u5f0f\u3002
    "},{"location":"#2","title":"2 \u4e3b\u8981\u529f\u80fd","text":"
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u5bf9\u63a5\u4e3b\u6d41\u9879\u76ee\u7ba1\u7406\u5e73\u53f0\uff0c\u6d4b\u8bd5\u8fc7\u7a0b\u5168\u94fe\u8def\u8ddf\u8e2a\u7ba1\u7406\uff1b\u5217\u8868\u8111\u56fe\u6a21\u5f0f\u81ea\u7531\u5207\u6362\uff0c\u7528\u4f8b\u7f16\u5199\u66f4\u7b80\u5355\u3001\u6d4b\u8bd5\u62a5\u544a\u66f4\u6e05\u6670\u3002
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u96c6 JMeter\u3001PostMan \u6613\u7528\u6027\u548c\u529f\u80fd\u6027\u4e8e\u4e00\u4f53\uff1b \u652f\u6301API \u7ba1\u7406\u3001Mock \u670d\u52a1\u3001\u573a\u666f\u7f16\u6392\u3001\u6269\u5c55\u534f\u8bae\u7b49\u3002
    • UI \u6d4b\u8bd5\uff1a\u57fa\u4e8e Selenium \u6d4f\u89c8\u5668\u81ea\u52a8\u5316\uff0c\u9ad8\u5ea6\u53ef\u590d\u7528\u7684\u6d4b\u8bd5\u811a\u672c\uff1b\u65e0\u9700\u590d\u6742\u7684\u4ee3\u7801\u7f16\u5199\uff0c\u4eba\u4eba\u90fd\u53ef\u5f00\u5c55\u7684\u4f4e\u4ee3\u7801\u81ea\u52a8\u5316\u6d4b\u8bd5\u3002
    • \u6027\u80fd\u6d4b\u8bd5\uff1a\u517c\u5bb9 JMeter \u7684\u540c\u65f6\u8865\u8db3\u5176\u5206\u5e03\u5f0f\u3001\u76d1\u63a7\u4e0e\u62a5\u544a\u4ee5\u53ca\u7ba1\u7406\u77ed\u677f\uff1b\u5e2e\u52a9\u56e2\u961f\u5b9e\u73b0\u9ad8\u5e76\u53d1\u3001\u5206\u5e03\u5f0f\u7684\u6027\u80fd\u538b\u6d4b\uff0c\u5b8c\u6210\u538b\u6d4b\u4efb\u52a1\u7684\u7edf\u4e00\u8c03\u5ea6\u4e0e\u7ba1\u7406\u3002
    "},{"location":"#3","title":"3 \u754c\u9762\u5c55\u793a","text":""},{"location":"#4","title":"4 \u7cbe\u54c1\u8bfe\u7a0b","text":"
    • \u73a9\u8f6c MeterSphere \u5f00\u6e90\u6301\u7eed\u6d4b\u8bd5\u5e73\u53f0\u7cfb\u5217\u6559\u7a0b\u4e4b\u6d4b\u8bd5\u8ddf\u8e2a
    • \u73a9\u8f6c MeterSphere \u5f00\u6e90\u6301\u7eed\u6d4b\u8bd5\u5e73\u53f0\u7cfb\u5217\u6559\u7a0b\u4e4b\u63a5\u53e3\u6d4b\u8bd5
    • \u73a9\u8f6c MeterSphere \u5f00\u6e90\u6301\u7eed\u6d4b\u8bd5\u5e73\u53f0\u7cfb\u5217\u6559\u7a0b\u4e4b\u6027\u80fd\u6d4b\u8bd5
    • \u73a9\u8f6c MeterSphere \u5f00\u6e90\u6301\u7eed\u6d4b\u8bd5\u5e73\u53f0\u7cfb\u5217\u6559\u7a0b\u4e4b UI \u6d4b\u8bd5
    "},{"location":"#5","title":"5 \u4e86\u89e3\u66f4\u591a","text":"
    • \u83b7\u53d6\u300a\u6301\u7eed\u6d4b\u8bd5\u767d\u76ae\u4e66\u300b
    • \u5982\u4f55\u5411\u56e2\u961f\u4ecb\u7ecd MeterSphere\uff1f
    • MeterSphere \u77e5\u8bc6\u5e93
    • MeterSphere \u793e\u533a\u8bba\u575b
    • MeterSphere \u57f9\u8bad\u548c\u8ba4\u8bc1
    "},{"location":"automation_plugin_dev/","title":"\u63a5\u53e3\u81ea\u52a8\u5316\u63d2\u4ef6\u5f00\u53d1","text":""},{"location":"automation_plugin_dev/#1","title":"1 \u80cc\u666f\u4ecb\u7ecd","text":"

    \u5728 JMeter \u4e2d\u4f7f\u7528 Dummy Sampler \u53ef\u4ee5\u6784\u9020\u51fa\u4e00\u4e2a\u8bf7\u6c42\u548c\u54cd\u5e94\u5b8c\u5168\u81ea\u5b9a\u4e49\u7684\u8bf7\u6c42\u53d6\u6837\u5668\uff0c\u5e76\u4e14\u8fd9\u79cd\u65b9\u5f0f\u53ef\u4ee5\u65b9\u4fbf\u5730\u5bf9\u65ad\u8a00\u3001\u53c2\u6570\u63d0\u53d6\u7b49\u5404\u79cd\u540e\u7f6e\u5904\u7406\u5668\u8fdb\u884c\u8c03\u8bd5\u3002\u9488\u5bf9 JMeter \u5df2\u6709\u7684\u529f\u80fd\u6216\u63d2\u4ef6\uff0c\u53ea\u9700\u8981\u8fdb\u884c\u5f88\u5c11\u91cf\u7684\u5f00\u53d1\u5de5\u4f5c\uff0c\u5c31\u53ef\u4ee5\u5c06\u5176\u5c01\u88c5\u6210 MeterSphere \u7684\u63a5\u53e3\u81ea\u52a8\u5316\u63d2\u4ef6\uff0c\u5bf9\u5e94\u7684\u63d2\u4ef6 Demo \u793a\u4f8b\u89c1: metersphere-plugin-DummySampler\u3002

    "},{"location":"automation_plugin_dev/#2","title":"2 \u5f00\u53d1\u6d41\u7a0b","text":""},{"location":"automation_plugin_dev/#21","title":"2.1 \u9879\u76ee\u521d\u59cb\u5316","text":"

    \u521d\u59cb\u5316\u4e00\u4e2a maven \u9879\u76ee\uff0c\u5e76\u6dfb\u52a0\u5982\u4e0b\u4f9d\u8d56\u3002

    <!-- \u7701\u7565\u5f00\u5934 -->\n    <dependencies>\n        <!-- \u516c\u5171\u63d2\u4ef6\u5305\uff0c\u5b9a\u4e49\u4e86\u6267\u884c\u6570\u636e\u7684\u57fa\u7c7b\u548c\u516c\u5171\u63a5\u53e3 -->\n        <dependency>\n            <groupId>io.metersphere</groupId>\n            <artifactId>metersphere-plugin-core</artifactId>\n            <version>1.0.1</version>\n            <scope>provided</scope>\n        </dependency>\n        <!-- \u539f\u59cb\u7684 JMeter DummySampler \u63d2\u4ef6 -->\n        <dependency>\n            <groupId>kg.apc</groupId>\n            <artifactId>jmeter-plugins-dummy</artifactId>\n            <version>0.4</version>\n            <scope>provided</scope>\n        </dependency>\n    </dependencies>\n<!-- \u7701\u7565\u7ed3\u5c3e -->\n

    "},{"location":"automation_plugin_dev/#22","title":"2.2 \u751f\u6210\u524d\u7aef\u8868\u5355","text":"

    \u5728 JMeter \u4e2d\u521b\u5efa\u4e00\u4e2a\u5305\u542b DummySampler \u6b65\u9aa4\u7684\u811a\u672c\uff0c\u5bf9\u7167 JMeter \u4e2d\u8be5\u6b65\u9aa4\u7684\u914d\u7f6e\u9875\u9762\uff0c\u4f7f\u7528 \u8868\u5355\u751f\u6210\u5668 \u751f\u6210\u524d\u7aef\u8868\u5355\u7684 json \u6587\u4ef6\u3002

    \u70b9\u51fb\u8868\u5355\u751f\u6210\u5668\u53f3\u4e0a\u89d2\u7684\u3010\u751f\u6210JSON\u3011\u6309\u94ae\uff0c\u5c06\u5185\u5bb9\u4fdd\u5b58\u5230src\\main\\resources\\json\\ui_dummy.json\u6587\u4ef6\u4e2d\uff1b\u70b9\u51fb\u53f3\u4e0a\u89d2\u7684\u3010\u751f\u6210Options\u3011\u6309\u94ae\uff0c\u5c06\u5185\u5bb9\u4fdd\u5b58\u5230src\\main\\resources\\json\\ui_form.json\u6587\u4ef6\u4e2d\u3002\u5bf9\u4e8e\u6ca1\u6709\u9ed8\u8ba4\u503c\u7684\u5b57\u6bb5\uff0c\u624b\u52a8\u7f16\u8f91 json \u6587\u4ef6\uff0c\u589e\u52a0\u7a7a\u9ed8\u8ba4\u503c\uff0c\u907f\u514d\u51fa\u73b0\u7a7a\u6307\u9488\u5f02\u5e38\u3002

    "},{"location":"automation_plugin_dev/#23","title":"2.3 \u521d\u59cb\u5316\u63d2\u4ef6\u8d44\u6e90","text":"

    \u5728src\\main\\java\\io\\metersphere\\plugin\\dummy\\UiScriptApiImpl.java\u4e2d\u4f7f\u7528\u4e0a\u9762\u751f\u6210\u7684\u8868\u5355 json\uff0c\u5bf9\u63d2\u4ef6\u5185\u5bb9\u8fdb\u884c\u521d\u59cb\u5316\u3002

    "},{"location":"automation_plugin_dev/#24-jmeter-hashtree","title":"2.4 \u8f6c\u6362\u751f\u6210 JMeter HashTree","text":"

    \u521b\u5efa\u4e0e\u4e0a\u4e00\u6b65\u5bf9\u5e94\u7684\u521d\u59cb\u5316 UiScript \u5bf9\u8c61\u65f6\u6307\u5b9a\u7c7b\u540d\u4e00\u81f4\u7684io.metersphere.plugin.dummy.sampler.MsDummySampler\u7c7b\uff0c\u5728\u8be5\u7c7b\u4e2d\u5b8c\u6210\u524d\u7aef\u8868\u5355\u6570\u636e\u5230 JMeter HashTree \u7684\u8f6c\u6362\u3002

    \u751f\u6210 DummySampler \u5bf9\u8c61\u65f6\uff0cguiclass\u3001testclass \u53ca\u5404\u4e2a\u5c5e\u6027\u5bf9\u5e94\u7684\u5b57\u6bb5\uff0c\u53ef\u4ee5\u901a\u8fc7\u521b\u5efa\u4e00\u4e2a\u5305\u542b DummySampler \u6b65\u9aa4\u7684 jmx \u811a\u672c\uff0c\u4ee5\u6587\u672c\u6a21\u5f0f\u6253\u5f00\u811a\u672c\u5feb\u901f\u83b7\u53d6\u3002

    "},{"location":"automation_plugin_dev/#25","title":"2.5 \u6253\u5305","text":"

    \u589e\u52a0\u4e00\u4e2a\u4e0e\u6253\u5305\u540e\u7684 jar \u5305\u540c\u540d\u7684\u6587\u4ef6 src\\main\\resources\\metersphere-plugin-DummySampler-1.0.0-jar-with-all-dependencies \u6307\u5b9a\u63d2\u4ef6\u5165\u53e3\u3002\u518d\u8865\u5145\u4e00\u4e9b\u5176\u4ed6\u7684\u5fc5\u8981\u5185\u5bb9\u540e\u5c31\u53ef\u4ee5\u6253\u5305\u4e86\u3002

    "},{"location":"automation_plugin_dev/#26","title":"2.6 \u4e0a\u4f20\u6d4b\u8bd5","text":"

    \u6253\u5305\u540e\u5c06\u751f\u6210\u7684 metersphere-plugin-DummySampler-1.0.0-jar-with-all-dependencies.jar \u5728 MeterSphere \u7684\u63d2\u4ef6\u7ba1\u7406\u9875\u9762\u8fdb\u884c\u4e0a\u4f20\uff0c\u4e0a\u4f20\u6210\u529f\u540e\u5c31\u53ef\u4ee5\u5728\u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u7f16\u8f91\u65f6\u67e5\u770b\u3001\u4f7f\u7528\u548c\u8c03\u8bd5\u63d2\u4ef6\u63d0\u4f9b\u7684\u8bf7\u6c42\u3002

    "},{"location":"awesome-jmeter/","title":"Awesome jmeter","text":"

    Apache JMeter \u662f\u4e00\u4e2a Java \u8bed\u8a00\u7f16\u5199\u7684\u5f00\u6e90\u6027\u80fd\u6d4b\u8bd5\u5de5\u5177\uff0c\u662f\u76ee\u524d\u6700\u4e3b\u6d41\u7684\u5f00\u6e90\u6027\u80fd\u6d4b\u8bd5\u5de5\u5177\u3002\u672c\u8d44\u6e90\u96c6\u6e90\u81ea awesome-jmeter\uff08CC-BY-4.0 license\uff09\uff0cMeterSphere \u56e2\u961f\u9488\u5bf9\u56fd\u5185\u7528\u6237\u8fdb\u884c\u4e86\u6c49\u5316\u3001\u4f18\u5316\u548c\u8fdb\u4e00\u6b65\u6574\u7406\u3002

    "},{"location":"awesome-jmeter/#1","title":"1 \u5b98\u65b9\u8d44\u6e90","text":"
    • Apache JMeter Project - Apache JMeter \u5b98\u65b9\u7f51\u7ad9
    • GitHub Repository - Apache JMeter GitHub \u4ee3\u7801\u5e93
    • JMeter Wiki - Apache JMeter \u5b98\u65b9\u6587\u6863
    • Issue Tracking - Apache JMeter \u7f3a\u9677\u8ddf\u8e2a\u7cfb\u7edf
    • Mailing Lists - Apache JMeter \u90ae\u4ef6\u5217\u8868
    "},{"location":"awesome-jmeter/#2","title":"2 \u5feb\u901f\u5165\u95e8","text":"
    • The Beginner's Guide to Performance Testing with Apache JMeter
    "},{"location":"awesome-jmeter/#3","title":"3 \u4f7f\u7528\u6559\u7a0b","text":"
    • JMeter Tutorials
    • JMeter Tutorial for Load Testing: The Ultimate Guide
    • RESTful API testing with JMeter
    • JMeter Tutorial - By Guru99
    "},{"location":"awesome-jmeter/#4","title":"4 \u6700\u4f73\u5b9e\u8df5","text":"
    • JMeter \u6700\u4f73\u5b9e\u8df5 - \u5b98\u65b9
    • JMeter \u6700\u4f73\u5b9e\u8df5 - BlazeMeter
    • Concurrent, High Throughput Performance Testing with JMeter
    "},{"location":"awesome-jmeter/#5-scripting","title":"5 Scripting","text":"
    • Beanshell vs JSR223 vs Java JMeter Scripting - Most popular scripting mechanisms performance comparison.
    • Testing with Groovy - Using JMeter and Groovy for load testing.
    "},{"location":"awesome-jmeter/#6","title":"6 \u6301\u7eed\u96c6\u6210","text":"
    • JMeter Ant Task - Ant task to automate running JMeter test plans.
    • JMeter Maven Plugin - Maven plugin that provides the ability to run JMeter tests as part of the build.
    • Jenkins Performance Plugin - Jenkins plugin to capture reports from JMeter and generate graphic charts with the trend report of performance and robustness.
    • Sonar JMeter Plugin - Plugin to collect JMeter performance tests results and display in Sonar dashboard (deprecated).
    "},{"location":"awesome-jmeter/#7","title":"7 \u5206\u5e03\u5f0f\u6d4b\u8bd5","text":"
    • JMeter Distributed Testing Step-by-step
    • JMeter Remote Testing
    • Setting up a JMeter Cluster for web server load testing
    "},{"location":"awesome-jmeter/#8","title":"8 \u5bb9\u5668\u5316","text":"
    • Dockerized JMeter - Distributed load testing workflow with Docker and JMeter.
    • JMeter Docker Images
    • Distributed JMeter testing using Docker
    • A Docker solution to JMeter + InfluxDB + Grafana performance testing
    • AutoMeter - An automation tool for scaling load tests using distributed slaves, based on JMeter master-slave architecture.
    "},{"location":"awesome-jmeter/#9","title":"9 \u4e0e\u516c\u6709\u4e91\u96c6\u6210","text":"
    • Amazon Web Services
      • jmeter-ec2 - Automates running Apache JMeter on Amazon EC2.
      • gee - A modified version of JMeter-EC2 project.
      • os-jmeter-aws - Run JMeter on multiple AWS instances, view results in ELK.
      • Load Testing with JMeter and Amazon EC2
      • Performance Testing in the Cloud with JMeter & AWS
      • JMeter distributed testing with Amazon EC2
    • Microsoft Azures
      • Load Testing Pipeline with JMeter, ACI and Terraform - Scalable cloud load/stress testing pipeline solution with Apache JMeter and Terraform to dynamically provision and destroy the required infrastructure on Azure.
    "},{"location":"awesome-jmeter/#10","title":"10 \u7ed3\u679c\u5904\u7406\u548c\u53ef\u89c6\u5316","text":"
    • JMeter Report Dashboard - JMeter supports dashboard report generation to get graphs and statistics from a test plan.
    • JMeter Log Analysis - Suggestions and recipes for JMeter log analysis.
    • Analyzing JMeter Results
    • JMeter Result Analysis: The Ultimate Guide
    • BlazeMeter Sense - Service for storing and analysing performance test results.
    • JAnalyser - Browser-based results analysis tool.
    • JMeter Result Analysis Plugin - Maven plugin that parses JMeter test results and generates detailed reports with charts.
    • JMeter Results Analyser - Web-based application for collating, analysing and reporting JMeter test results.
    • DB Results Collectors
      • JMeter MySQLCollector Plugin - Patch to configure listener to log into MySQL database.
    • InfluxDB & Grafana
      • Using JMeter with InfluxDB & Grafana - Collection of guides to collect and visualize real-time test-results and server monitoring stats using InfluxDB & Grafana.
      • How to Use Grafana to Monitor JMeter Non-GUI Results
    • Grafana Dashboards
      • JMeter Load Test Dashboard - Grafana dashboard shows live load test metrics provided by JMeter (by NovaTec-APM).
      • JMeter Dashboard using Core InfluxdbBackendListenerClient - Monitor your Apache JMeter load test in real time with InfluxDB and Grafana (by Philippe M).
      • JMeter Dashboard (3.2 and up) - Monitor JMeter load test in real time with InfluxDB and Grafana (by adrianbanu).
      • JMeter (via prometheus exporter) - A Grafana dashboard to inspect JMeter metrics via Prometheus exporter (by chiabre).
      • JMeter-InfluxBD-Writer Plugin - JMeter plugin to write load test data on-the-fly into InfluxDB.
      • JMeter Results to InfluxDB - Read JMeter results from csv file and put into InfluxDB database.
    • ELK Stack
      • Using ELK - Using Elasticsearch, Logstash, and Kibana to visualize JMeter test results.
      • JMeter + ElasticSearch Live Monitoring - Using the ElasticSearch Backend listener and Grafana/Kibana to monitor results in realtime.
    • Prometheus
      • jmeter-prometheus-plugin - A Prometheus Listener for Apache JMeter that exposes results in HTTP API.
    • Backend Listener Implementations
      • jmeter-elasticsearch-backend-listener - JMeter plugin to send test results to an ElasticSearch engine.
      • jmeter-backend-azure - JMeter plugin to send test results to Azure Application Insights.
      • jmeter-backend-listener-kafka - JMeter plugin to send test results to a Kafka server.
      • jmeter-listener - JMeter plugin to write load test data on-the-fly to ClickHouse, InfluxDB, ElasticSearch.
    "},{"location":"awesome-jmeter/#11-streaming-protocols","title":"11 Streaming Protocols","text":"
    • Easy and realistic Load Testing of HTTP Live Streaming (HLS) with Apache JMeter
    • Using JMeter to Load Test Live HLS Concurrency of Wowza Streaming Engine
    • Load testing HLS with Ruby JMeter
    • Media Live Streaming Load Testing with JMeter - Collection of articles by BlazeMeter (HLS, RTMP, WS, podcasts, etc.).
    • HLS JMeter Plugin
    "},{"location":"awesome-jmeter/#12-mobile-apps","title":"12 Mobile Apps","text":"
    • Record iOS application HTTP requests
    • Load Testing Mobile Apps Made Easy
    • Performance Testing for Native Mobile Apps
    "},{"location":"awesome-jmeter/#13-plugins","title":"13 Plugins \u5217\u8868\u3001\u4e8c\u6b21\u5f00\u53d1","text":"
    • JMeter Plugins list - List of available plugins and extensions.
    • JMeter Plugins - Independent set of plugins for Apache JMeter, with plugin manager references many plugins and simplifies installation.
    • Ubik Load Pack - Productivity extensions for Apache JMeter.
    • JMeter Developer Manual
    • How to write a plugin for JMeter
    • How to build a JMeter plugin utilising groovy
    • How to create a plugin in JMeter
    • Custom JMeter Samplers and Config Elements
    • Implement Custom JMeter Samplers
    "},{"location":"awesome-jmeter/#14-ide","title":"14 IDE \u96c6\u6210","text":"
    • Intellij IDEA IDE Plugin - Create run configurations and run JMeter tests from Intellij IDEA.
    • JMeter + Eclipse HOWTO - Develop the JMeter project with Eclipse IDE.
    "},{"location":"awesome-jmeter/#15","title":"15 \u76f8\u5173\u4e66\u7c4d","text":"
    • JMeter \u6027\u80fd\u6d4b\u8bd5\u5b9e\u6218 \u7b2c2\u7248
    "},{"location":"awesome-jmeter/#16","title":"16 \u57f9\u8bad\u8bfe\u7a0b","text":"
    • \u6781\u5ba2\u65f6\u95f4\uff1a\u6027\u80fd\u6d4b\u8bd5\u5b9e\u6218 30 \u8bb2
    • JMeter: Performance and Load Testing - By LinkedIn Learning.
    • BlazeMeter University - By BlazeMeter.
    • Apache JMeter Testing Courses - By QAInsights.
    "},{"location":"awesome-jmeter/#17","title":"17 \u76f8\u5173\u535a\u5ba2","text":"
    • BlazeMeter Blog - BlazeMeter blog about JMeter and performance testing.
    • Flood.io Blog - Load testing thoughts, stories and ideas from Flood IO.
    • JMeter Blog - Another blog for performance & automation testing using JMeter.
    "},{"location":"dev_manual/","title":"\u5f00\u53d1\u73af\u5883\u642d\u5efa","text":""},{"location":"dev_manual/#1","title":"1 \u9879\u76ee\u7ed3\u6784","text":"
    .\n\u251c\u2500\u2500 Jenkinsfile                                     # \u6784\u5efaJAR\u5305\u4f7f\u7528\u7684 jenkinsfile\n\u251c\u2500\u2500 LICENSE\n\u251c\u2500\u2500 OWNERS\n\u251c\u2500\u2500 README.md                                       # \u9879\u76ee\u4e2d\u6587\u4ecb\u7ecd\n\u251c\u2500\u2500 README-EN.md                                    # \u9879\u76ee\u82f1\u6587\u4ecb\u7ecd\n\u251c\u2500\u2500 SECURITY.md                                     # \u5b89\u5168\u8bf4\u660e\n\u251c\u2500\u2500 CODE_OF_CONDUCT.md                        \n\u251c\u2500\u2500 CONTRIBUTING.md \n\u251c\u2500\u2500 build.md                                        # \u6784\u5efa\u8fc7\u7a0b\n\u251c\u2500\u2500framework                                          \n\u2502\u00a0\u00a0 \u251c\u2500\u2500 eureka                                       # \u670d\u52a1\u6ce8\u518c\u4e2d\u5fc3\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 gateway                                      # API \u7f51\u5173\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 sdk-parent                                   # SDK\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 .gitignore                                    \n\u2502\u00a0\u00a0 \u2514\u2500\u2500 pom                                          # \u4e3b\u6846\u67b6\u7684 pom \u6587\u4ef6           \n\u251c\u2500\u2500test-track                                        # \u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 backend                                      # \u540e\u7aef\u4ee3\u7801\u76ee\u5f55\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 frontend                                     # \u524d\u7aef\u4ee3\u7801\u76ee\u5f55\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 Dockerfile                                   # \u6784\u5efa\u5bb9\u5668\u955c\u50cf\u4f7f\u7528\u7684 dockerfile\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 pom                                          # \u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757\u4f7f\u7528\u7684 pom \u6587\u4ef6   \n\u251c\u2500\u2500 api-test                                         # \u63a5\u53e3\u6d4b\u8bd5\u6a21\u5757\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 backend                                      # \u540e\u7aef\u4ee3\u7801\u76ee\u5f55\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 frontend                                     # \u524d\u7aef\u4ee3\u7801\u76ee\u5f55\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 Dockerfile                                   # \u6784\u5efa\u5bb9\u5668\u955c\u50cf\u4f7f\u7528\u7684 dockerfile\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 pom                                          # \u63a5\u53e3\u6d4b\u8bd5\u6a21\u5757\u4f7f\u7528\u7684 pom \u6587\u4ef6\n\u251c\u2500\u2500 performance-test                                 # \u6027\u80fd\u6d4b\u8bd5\u6a21\u5757\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 backend                                      # \u540e\u7aef\u4ee3\u7801\u76ee\u5f55\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 frontend                                     # \u524d\u7aef\u4ee3\u7801\u76ee\u5f55\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 Dockerfile                                   # \u6784\u5efa\u5bb9\u5668\u955c\u50cf\u4f7f\u7528\u7684 dockerfile\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 pom                                          # \u6027\u80fd\u6d4b\u8bd5\u6a21\u5757\u4f7f\u7528\u7684 pom \u6587\u4ef6\n\u251c\u2500\u2500 report-stat                                      # \u62a5\u8868\u7edf\u8ba1\u6a21\u5757\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 backend                                      # \u540e\u7aef\u4ee3\u7801\u76ee\u5f55\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 frontend                                     # \u524d\u7aef\u4ee3\u7801\u76ee\u5f55\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 Dockerfile                                   # \u6784\u5efa\u5bb9\u5668\u955c\u50cf\u4f7f\u7528\u7684 dockerfile\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 pom                                          # \u62a5\u8868\u7edf\u8ba1\u6a21\u5757\u4f7f\u7528\u7684 pom \u6587\u4ef6  \n\u251c\u2500\u2500 project-management                               # \u9879\u76ee\u7ba1\u7406\u6a21\u5757\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 backend                                      # \u540e\u7aef\u4ee3\u7801\u76ee\u5f55\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 frontend                                     # \u524d\u7aef\u4ee3\u7801\u76ee\u5f55\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 Dockerfile                                   # \u6784\u5efa\u5bb9\u5668\u955c\u50cf\u4f7f\u7528\u7684 dockerfile\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 pom                                          # \u9879\u76ee\u7ba1\u7406\u6a21\u5757\u4f7f\u7528\u7684 pom \u6587\u4ef6 \n\u251c\u2500\u2500 system-setting                                   # \u7cfb\u7edf\u8bbe\u7f6e\u6a21\u5757\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 backend                                      # \u540e\u7aef\u4ee3\u7801\u76ee\u5f55\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 frontend                                     # \u524d\u7aef\u4ee3\u7801\u76ee\u5f55\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 Dockerfile                                   # \u6784\u5efa\u5bb9\u5668\u955c\u50cf\u4f7f\u7528\u7684 dockerfile\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 pom                                          # \u7cfb\u7edf\u8bbe\u7f6e\u6a21\u5757\u4f7f\u7528\u7684 pom \u6587\u4ef6\n\u251c\u2500\u2500 .gitignore\n\u251c\u2500\u2500 .gitmodules\n\u2514\u2500\u2500 pom.xml                                         # \u6574\u4f53 maven \u9879\u76ee\u4f7f\u7528\u7684 pom \u6587\u4ef6\n
    "},{"location":"dev_manual/#2","title":"2 \u914d\u7f6e\u5f00\u53d1\u73af\u5883","text":""},{"location":"dev_manual/#21","title":"2.1 \u62c9\u53d6\u4ee3\u7801","text":"

    \u9700\u8981\u62c9\u53d6 metersphere, ms-jmeter-core\u3001jmeter-plugins-webdriver\u4e09\u4e2a\u670d\u52a1\u4ee3\u7801\uff0c\u5e76\u5207\u6362\u5230\u540c\u4e00\u5206\u652f\u3002

    "},{"location":"dev_manual/#22","title":"2.2 \u540e\u7aef","text":"

    \u5728\u542f\u52a8 MeterSphere \u670d\u52a1\u4e4b\u524d\u8981\u5148\u542f\u52a8 Mysql\u3001Redis\u3001Kafka\u3001Minio \u7b49\u670d\u52a1\u3002 MeterSphere \u540e\u7aef\u4f7f\u7528\u4e86 Java \u8bed\u8a00\u7684 Spring Cloud \u6846\u67b6\uff0c\u5e76\u4f7f\u7528 Maven \u4f5c\u4e3a\u9879\u76ee\u7ba1\u7406\u5de5\u5177\u3002\u5f00\u53d1\u8005\u9700\u8981\u5148\u5728\u5f00\u53d1\u73af\u5883\u4e2d\u5b89\u88c5 JDK 1.11 \u53ca Maven\u3002

    • \u521d\u59cb\u5316\u914d\u7f6e \uff081\uff09\u6570\u636e\u5e93\u521d\u59cb\u5316 MeterSphere \u4f7f\u7528 MySQL \u6570\u636e\u5e93 v8 \u7248\u672c\u3002\u540c\u65f6 MeterSphere \u5bf9\u6570\u636e\u5e93\u90e8\u5206\u914d\u7f6e\u9879\u6709\u8981\u6c42\uff0c\u8bf7\u53c2\u8003\u4e0b\u9644\u7684\u6570\u636e\u5e93\u914d\u7f6e\uff0c\u4fee\u6539\u5f00\u53d1\u73af\u5883\u4e2d\u7684\u6570\u636e\u5e93\u914d\u7f6e\u6587\u4ef6\u3002
    [mysqld]\ndatadir=/var/lib/mysql\n\ndefault-storage-engine=INNODB\ncharacter_set_server=utf8mb4\nlower_case_table_names=1\nperformance_schema=off\ntable_open_cache=128\ntransaction_isolation=READ-COMMITTED\nmax_connections=1000\nmax_connect_errors=6000\nmax_allowed_packet=64M\ninnodb_file_per_table=1\ninnodb_buffer_pool_size=512M\ninnodb_flush_method=O_DIRECT\ninnodb_lock_wait_timeout=1800\n\nserver-id=1\nlog-bin=mysql-bin\nexpire_logs_days = 2\nbinlog_format=mixed\n\ncharacter-set-client-handshake = FALSE\ncharacter-set-server=utf8mb4\ncollation-server=utf8mb4_general_ci\ninit_connect='SET default_collation_for_utf8mb4=utf8mb4_general_ci'\n\nsql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION\n\nskip-name-resolve\n\n[mysql]\ndefault-character-set=utf8mb4\n\n[mysql.server]\ndefault-character-set=utf8mb4\n

    \u8bf7\u53c2\u8003\u6587\u6863\u4e2d\u7684\u5efa\u5e93\u8bed\u53e5\u521b\u5efa MeterSphere \u4f7f\u7528\u7684\u6570\u636e\u5e93\uff0cMeterSphere \u670d\u52a1\u542f\u52a8\u65f6\u4f1a\u81ea\u52a8\u5728\u914d\u7f6e\u7684\u5e93\u4e2d\u521b\u5efa\u6240\u9700\u7684\u8868\u7ed3\u6784\u53ca\u521d\u59cb\u5316\u6570\u636e\u3002

    CREATE DATABASE metersphere_dev /*!40100 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci *//*!80016 DEFAULT ENCRYPTION='N'*/;\n

    \uff082\uff09MeterSphere \u914d\u7f6e\u6587\u4ef6 MeterSphere \u4f1a\u9ed8\u8ba4\u52a0\u8f7d\u8be5\u8def\u5f84\u4e0b\u7684\u914d\u7f6e\u6587\u4ef6 /opt/metersphere/conf/metersphere.properties\uff0c\u8bf7\u53c2\u8003\u4e0b\u5217\u914d\u7f6e\u521b\u5efa\u5bf9\u5e94\u76ee\u5f55\u53ca\u914d\u7f6e\u6587\u4ef6\u3002

    # eureka \u914d\u7f6e\neureka.client.service-url.defaultZone=http://localhost:8761/eureka/\n\n\n# \u6570\u636e\u5e93\u914d\u7f6e\nspring.datasource.url=jdbc:mysql://localhost:3306/metersphere_dev?autoReconnect=false&useUnicode=true&characterEncoding=UTF-8&characterSetResults=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false\nspring.datasource.username=root\nspring.datasource.password=Calong@2015\n\n\n# kafka \u914d\u7f6e\uff0cnode-controller \u4ee5\u53ca data-streaming \u670d\u52a1\u9700\u8981\u4f7f\u7528 kafka \u8fdb\u884c\u6d4b\u8bd5\u7ed3\u679c\u7684\u6536\u96c6\u548c\u5904\u7406\nkafka.partitions=1\nkafka.replicas=1\nkafka.topic=JMETER_METRICS\nkafka.test.topic=JMETER_TESTS\nkafka.bootstrap-servers=127.0.0.1:9092\nkafka.log.topic=JMETER_LOGS\nkafka.report.topic=JMETER_REPORT\n\n# node-controller \u6240\u4f7f\u7528\u7684 jmeter \u955c\u50cf\u7248\u672c\njmeter.image=registry.cn-qingdao.aliyuncs.com/metersphere/jmeter-master:5.5-ms2-jdk11\n\n# TCP Mock \u7aef\u53e3\u8303\u56f4\ntcp.mock.port=10000-10010\n\n# Redis \u914d\u7f6e\nspring.redis.host=localhost\nspring.session.store-type=redis\nspring.redis.port=6379\nspring.redis.password=Password123@redis\n\n\n# \u542f\u52a8\u6a21\u5f0f\uff0clcoal \u8868\u793a\u4ee5\u672c\u5730\u5f00\u53d1\u6a21\u5f0f\u542f\u52a8\nrun.mode=local\n\n# minio \u914d\u7f6e\nminio.endpoint=http://localhost:9000\nminio.accessKey=minioadmin\nminio.secretKey=minioadmin\n\n## CAS\n#cas.client.name=MS_SERVER\n## CAS SERVER URL\n#cas.server.url=http://xxx/cas\n## METERSPHERE SERVER URL\n#cas.client.url=http://IP:8081                          \n

    \uff083\uff09\u9879\u76ee\u6253\u5305 \u542f\u52a8 MeterSphere \u9700\u8981 jmeter \u4f9d\u8d56\uff0c\u56e0\u6b64\u5728\u542f\u52a8\u4e4b\u524d\u9700\u8981\u5c06 ms-jmeter-core \u548c jmeter-plugins-webdriver \u6253\u5305

    mvn clean install \n

    \u5728\u9879\u76ee\u6839\u76ee\u5f55\u4e0b\u6267\u884c\u4ee5\u4e0b\u547d\u4ee4

    1. \u4f9d\u8d56\u6253\u5305\n# parent pom \u5b89\u88c5\u5230\u672c\u5730\u4ed3\u5e93, sdk \u4e5f\u8fdb\u884c\u5b89\u88c5\n./mvnw install -N\n./mvnw clean install -pl framework,framework/sdk-parent,framework/sdk-parent/domain,framework/sdk-parent/sdk,framework/sdk-parent/xpack-interface,framework/sdk-parent/jmeter\n\n#  \u5982\u679c\u662f\u4f01\u4e1a\u7248\u672c \u9700\u8981\u52a0\u4e0a  framework/sdk-parent/xpack-interface\n\n2. \u6574\u4f53\u6253\u5305\n./mvnw clean package\n

    • \u542f\u52a8\u987a\u5e8f \u5148\u542f\u52a8 eureka \u670d\u52a1\uff0c\u518d\u542f\u52a8 system-setting\uff0c\u5230\u8fd9\u4e00\u6b65\u53ef\u4ee5\u542f\u52a8\u6210\u529f\uff0c\u53ef\u4ee5\u8bbf\u95ee\u9875\u9762\u4e86\u3002

    \u5982\u679c\u8981\u8fdb\u884c\u591a\u6a21\u5757\u8054\u8c03\u7684\u8bdd\u9700\u8981\u542f\u52a8 gateway \u548c\u5176\u4ed6\u670d\u52a1\uff0c\u53ef\u4ee5\u901a\u8fc7 eureka \u67e5\u770b\u670d\u52a1\u4fe1\u606f\uff0c\u6ce8\u518c\u6210\u529f\uff0c\u5c31\u53ef\u4ee5\u591a\u6a21\u5757\u8054\u8c03\u4e86\u3002

    • \u542f\u52a8 \u8fd0\u884c\u67d0\u4e00\u6a21\u5757\uff0c\u6bd4\u5982 \u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757\uff08test-track\uff09,\u9009\u62e9 test-track \u7684 Spring Boot \u542f\u52a8\u9879\uff0c\u76f4\u63a5\u542f\u52a8\u5373\u53ef\u3002
    "},{"location":"dev_manual/#23","title":"2.3 \u524d\u7aef","text":"

    MeterSphere \u524d\u7aef\u4f7f\u7528\u4e86 Vue.js \u4f5c\u4e3a\u524d\u7aef\u6846\u67b6\uff0cElementUI \u4f5c\u4e3a UI \u6846\u67b6\uff0c\u5e76\u4f7f\u7528 npm \u4f5c\u4e3a\u5305\u7ba1\u7406\u5de5\u5177\u3002\u5f00\u53d1\u8005\u8bf7\u5148\u4e0b\u8f7d Node.js \u4f5c\u4e3a\u8fd0\u884c\u73af\u5883\uff0cIDEA \u7528\u6237\u5efa\u8bae\u5b89\u88c5 Vue.js \u63d2\u4ef6\uff0c\u4fbf\u4e8e\u5f00\u53d1\u3002

    • \u521d\u59cb\u5316\u914d\u7f6e \u8fdb\u5165 metersphere-server/test-track/frontend/ \u76ee\u5f55\uff0c\u6267\u884c\u547d\u4ee4npm install\u5b89\u88c5\u76f8\u5173\u524d\u7aef\u7ec4\u4ef6\u3002
    • \u8fd0\u884c\u524d\u7aef\u670d\u52a1 \u8fdb\u5165\u5230 metersphere-server/test-track/frontend/ \u76ee\u5f55\uff0c\u6267\u884c\u547d\u4ee4npm run serve\u542f\u52a8\u524d\u7aef\u670d\u52a1\u3002
    "},{"location":"enterprise/","title":"Enterprise","text":"
    • \u7533\u8bf7\u4f01\u4e1a\u7248\u8bd5\u7528

    \u6ce8: \u4f01\u4e1a\u7248\u652f\u6301\u79bb\u7ebf\u5b89\u88c5\uff0c\u7533\u8bf7\u901a\u8fc7\u540e\u4f1a\u63d0\u4f9b\u9ad8\u901f\u4e0b\u8f7d\u94fe\u63a5\u3002

    "},{"location":"system_arch/","title":"\u7cfb\u7edf\u67b6\u6784","text":""},{"location":"system_arch/#1","title":"1 \u6574\u4f53\u67b6\u6784","text":"

    \u7ec4\u4ef6\u8bf4\u660e

    • Chrome \u6d4f\u89c8\u5668\u5f55\u5236\u63d2\u4ef6: \u5f55\u5236 Web \u8bbf\u95ee\u8bf7\u6c42\u751f\u6210 JMeter \u811a\u672c\u5e76\u5bfc\u5165\u5230 MeterSphere \u4e2d\u7528\u4e8e\u63a5\u53e3\u6d4b\u8bd5\u53ca\u6027\u80fd\u6d4b\u8bd5\u3002
    • Jenkins \u63d2\u4ef6: \u5728 Jenkins \u4e2d\u5b89\u88c5\u8be5\u63d2\u4ef6\u540e\u53ef\u5c06 Jenkins \u4efb\u52a1\u4e2d\u6dfb\u52a0 MeterSphere \u6784\u5efa\u73af\u8282,\u7528\u6237\u5728\u8be5\u6784\u5efa\u73af\u8282\u4e2d\u914d\u7f6e MeterSphere \u5e73\u53f0\u7684\u8ba4\u8bc1\u4fe1\u606f\u540e,\u53ef\u9009\u62e9\u6307\u5b9a\u9879\u76ee\u4e0b\u7684\u63a5\u53e3/\u6027\u80fd\u6d4b\u8bd5\u8fdb\u884c\u89e6\u53d1\u6267\u884c\u3002
    • IDEA \u63d2\u4ef6: IDEA \u63d2\u4ef6,\u57fa\u4e8ejavadoc\u89e3\u6790,\u80fd\u591f\u81ea\u52a8\u8bc6\u522b\u7c7b,\u540c\u6b65\u63a5\u53e3\u5b9a\u4e49\u5230 MeterSphere\u3002
    • GateWay: API \u7f51\u5173\u9879\u76ee\u3002
    • Eureka: \u670d\u52a1\u6ce8\u518c\u4e2d\u5fc3\u3002
    • \u5de5\u4f5c\u53f0: MeterSphere \u9879\u76ee\u7684\u5de5\u4f5c\u53f0\u6a21\u5757\u3002
    • \u9879\u76ee\u8bbe\u7f6e: MeterSphere \u9879\u76ee\u7684\u9879\u76ee\u8bbe\u7f6e\u6a21\u5757\u3002
    • \u6d4b\u8bd5\u8ddf\u8e2a: MeterSphere \u9879\u76ee\u7684\u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757\u3002
    • \u63a5\u53e3\u6d4b\u8bd5: MeterSphere \u9879\u76ee\u7684\u63a5\u53e3\u6d4b\u8bd5\u6a21\u5757\u3002
    • UI \u6d4b\u8bd5: MeterSphere \u9879\u76ee\u7684UI \u6d4b\u8bd5\u6a21\u5757\u3002
    • \u6027\u80fd\u6d4b\u8bd5: MeterSphere \u9879\u76ee\u7684\u6027\u80fd\u6d4b\u8bd5\u6a21\u5757\u3002
    • \u7cfb\u7edf\u8bbe\u7f6e: MeterSphere \u9879\u76ee\u7684\u7cfb\u7edf\u8bbe\u7f6e\u6a21\u5757\u3002
    • \u62a5\u544a\u7edf\u8ba1: MeterSphere \u9879\u76ee\u7684\u62a5\u544a\u7edf\u8ba1\u6a21\u5757\u3002
    • Node Controller: \u4e3a\u63a5\u53e3\u6216\u8005\u6027\u80fd\u6d4b\u8bd5\u63d0\u4f9b\u72ec\u7acb\u8282\u70b9\u7c7b\u578b\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60\u3002
    • MySQL: MeterSphere \u9879\u76ee\u7684\u4e3b\u8981\u6570\u636e\u5747\u5b58\u50a8\u5728 MySQL\u3002
    • Redis: MeterSphere \u9879\u76ee\u767b\u5f55\u7528\u6237\u7684 Session \u548c\u4efb\u52a1\u961f\u5217\u4fe1\u606f\u5b58\u50a8\u5728 Redis\u3002
    • Minio: MeterSphere \u9879\u76ee\u7684\u5206\u5e03\u5f0f\u5bf9\u8c61\u5b58\u50a8\u6a21\u5757\u3002
    • Kafka: \u63a5\u6536 JMeter \u4ea7\u751f\u7684\u63a5\u53e3\u6d4b\u8bd5\u6216\u8005\u6027\u80fd\u6d4b\u8bd5\u7684\u7ed3\u679c\u6570\u636e\u3002
    • Prometheus: \u6536\u96c6\u538b\u529b\u673a\u53ca\u88ab\u6d4b\u7cfb\u7edf\u7684\u76d1\u63a7\u6570\u636e\u3002
    • Data Streaming: \u4ece Kafka \u4e2d\u83b7\u53d6\u63a5\u53e3\u6d4b\u8bd5\u6216\u8005\u6027\u80fd\u6d4b\u8bd5\u7ed3\u679c\u6570\u636e\u8fdb\u884c\u5904\u7406\u540e\u5b58\u5165 MySQL \u6570\u636e\u5e93\u3002
    • Docker Engine: \u4e3a Node Controller \u63d0\u4f9b JMeter \u5bb9\u5668\u8fd0\u884c\u73af\u5883\u3002
    • Selenium Grid: \u4e3a UI\u81ea\u52a8\u5316\u6d4b\u8bd5\u63d0\u4f9b\u8fd0\u884c\u73af\u5883,\u652f\u6301\u5206\u5e03\u5f0f\u62d3\u5c55\u3002

    \u5404\u4e2a\u7ec4\u4ef6\u95f4\u7684\u5173\u7cfb\u53ef\u53c2\u8003\u4e0b\u56fe\uff1a

    "},{"location":"system_arch/#2","title":"2 \u7ba1\u7406\u6a21\u578b","text":"

    MeterSphere \u63d0\u4f9b\u4e86\u591a\u79df\u6237\u3001\u591a\u89d2\u8272\u7684\u7ba1\u7406\u6a21\u578b, \u7528\u6237\u53ef\u6839\u636e\u6240\u5728\u56e2\u961f\u7684\u5b9e\u9645\u60c5\u51b5\u8fdb\u884c\u7075\u6d3b\u7684\u79df\u6237\u4f53\u7cfb\u6620\u5c04\u3002

    • \u7cfb\u7edf: \u6bcf\u4e2a\u72ec\u7acb\u90e8\u7f72\u7684 MeterSphere \u5373\u79f0\u4e3a\u4e00\u5957\u7cfb\u7edf\u3002
    • \u7cfb\u7edf\u7ea7\u89d2\u8272: \u89d2\u8272\u7684\u6743\u9650\u8303\u56f4\u4e3a\u6574\u4e2a\u7cfb\u7edf, \u5e38\u89c1\u7684\u89d2\u8272\u5982\u7cfb\u7edf\u7ba1\u7406\u5458, \u53ef\u7ba1\u7406\u6574\u4e2a\u7cfb\u7edf\u5185\u7684\u79df\u6237\u3001\u7528\u6237\u53ca\u6d4b\u8bd5\u8d44\u6e90, \u540c\u65f6\u53ef\u53d8\u66f4\u4fee\u6539\u7cfb\u7edf\u7ea7\u914d\u7f6e\u53c2\u6570\u3002
    • \u5de5\u4f5c\u7a7a\u95f4: MeterSphere \u4e2d\u7684\u4e00\u7ea7\u79df\u6237, \u53ef\u6620\u5c04\u4e3a\u4e0d\u540c\u7684\u90e8\u95e8\u6216\u8005\u4ea7\u54c1\u7ebf\u3002
    • \u5de5\u4f5c\u7a7a\u95f4\u7ea7\u89d2\u8272: \u89d2\u8272\u7684\u6743\u9650\u8303\u56f4\u9650\u5b9a\u5728\u67d0\u4e2a\u5de5\u4f5c\u7a7a\u95f4\u5f53\u4e2d, \u5e38\u89c1\u7684\u89d2\u8272\u5982\u5de5\u4f5c\u7a7a\u95f4\u7ba1\u7406\u5458\u53ca\u666e\u901a\u7528\u6237, \u53ef\u5728\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u521b\u5efa\u9879\u76ee\u3001\u53d1\u8d77\u6d4b\u8bd5\u3001\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u7b49\u3002
    • \u9879\u76ee: \u4ee5\u9879\u76ee\u7eac\u5ea6\u7ba1\u7406\u5404\u79cd\u7c7b\u578b\u6d4b\u8bd5\u6570\u636e\uff0c\u5404\u4e2a\u9879\u76ee\u95f4\u6570\u636e\u9694\u79bb\u3002
    • \u9879\u76ee\u7ea7\u89d2\u8272: \u89d2\u8272\u7684\u6743\u9650\u8303\u56f4\u9650\u5b9a\u5728\u67d0\u4e2a\u9879\u76ee\u5f53\u4e2d, \u5e38\u89c1\u7684\u89d2\u8272\u5982\u9879\u76ee\u7ba1\u7406\u5458\u3001\u9879\u76ee\u6210\u5458\u3001\u53ea\u8bfb\u7528\u6237\u7b49\uff0c\u53ef\u5728\u9879\u76ee\u4e2d\u521b\u5efa\u3001\u4fee\u6539\u3001\u6267\u884c\u6d4b\u8bd5\u8ba1\u5212\u3001\u529f\u80fd\u6d4b\u8bd5\u7528\u4f8b\u3001\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u3001\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u3001\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u7b49\u3002
    • \u81ea\u5b9a\u4e49\u89d2\u8272: \u53ef\u521b\u5efa\u4e0d\u540c\u6240\u5c5e\u7c7b\u578b\u7684\u81ea\u5b9a\u4e49\u89d2\u8272\uff0c\u6ee1\u8db3\u66f4\u591a\u6837\u5316\u7684\u56e2\u961f\u7ba1\u7406\u53ca\u5728\u7ebf\u534f\u4f5c\u3002

    "},{"location":"system_arch/#3","title":"3 \u6280\u672f\u6808","text":"
    • \u540e\u7aef: Spring Cloud
    • \u524d\u7aef: Vue.js
    • \u4e2d\u95f4\u4ef6: MySQL, Kafka, Redis, Minio, Prometheus
    • \u57fa\u7840\u8bbe\u65bd: Docker, Kubernetes
    • \u6d4b\u8bd5\u5f15\u64ce: JMeter
    "},{"location":"about/changelog/","title":"\u66f4\u65b0\u65e5\u5fd7","text":""},{"location":"about/changelog/#_2","title":"\u7248\u672c\u8bf4\u660e","text":"

    MeterSphere \u7248\u672c\u53f7\u547d\u540d\u89c4\u5219\u4e3a\uff1a v \u5927\u7248\u672c\u53f7.\u529f\u80fd\u7248\u672c\u53f7.\u4fee\u590d\u7248\u672c\u53f7\uff0cMeterSphere \u6309\u6708\u8fed\u4ee3\u53d1\u5e03\u529f\u80fd\u7248\u672c\uff0c\u5e76\u6309\u5e74\u53d1\u5e03 LTS\uff08Long Term Support\uff09\u7248\u672c\uff0c\u76ee\u524d\u5df2\u7ecf\u53d1\u5e03\u4e86\u4e09\u4e2a LTS \u7248\u672c\uff1a

    • v1.10-lts\uff1a\u53d1\u5e03\u65f6\u95f4\u4e3a 2021 \u5e74 5 \u6708 27 \u65e5\uff0c\u76ee\u524d\u5df2\u7ecf\u505c\u6b62\u7ef4\u62a4\u3002
    • v1.20-lts\uff1a\u53d1\u5e03\u65f6\u95f4\u4e3a 2022 \u5e74 4 \u6708 27 \u65e5\uff0c\u76ee\u524d\u4ec5\u8fdb\u884c\u5fc5\u8981\u7684\u5b89\u5168\u7c7b Bug \u4fee\u590d\u548c\u4e25\u91cd Bug \u4fee\u590d\u3002
    • v2.10-lts\uff1a\u53d1\u5e03\u65f6\u95f4\u4e3a 2023 \u5e74 5 \u6708 25 \u65e5\uff0c\u6bcf\u4e24\u5468\u53d1\u5e03\u5c0f\u7248\u672c\uff0c\u6301\u7eed\u8fdb\u884c Bug \u4fee\u590d\u548c\u90e8\u5206\u529f\u80fd\u7684\u6709\u9650\u4f18\u5316\u3002
    "},{"location":"about/changelog/#v2107-lts","title":"v2.10.7-lts","text":"

    2023\u5e749\u670826\u65e5

    \ud83d\udca5\ud83d\udca5\u00a0\u91cd\u8981\u63d0\u9192\u00a0\ud83d\udca5\ud83d\udca5 2.10 LTS \u5728\u67b6\u6784\u4e0a\u548c 1.20 LTS \u6709\u5f88\u5927\u53d8\u5316\uff0c\u8bf7\u52a1\u5fc5\u5347\u7ea7\u524d\u8fdb\u884c\u5907\u4efd\uff0c\u5e76\u8be6\u7ec6\u67e5\u9605\u6b64\u6587\u6863\uff1a1.20 lts\u81f32.10 lts\u5347\u7ea7\u6307\u5357

    \u65b0\u589e\u529f\u80fd

    • feat(UI\u6d4b\u8bd5): UI\u6d4b\u8bd5\u65b0\u589e\u6d88\u606f\u901a\u77e5\u914d\u7f6e
    • feat(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u8868\u683c\u901a\u8fc7\u7387\u4fdd\u7559\u4e24\u4f4d\u5c0f\u6570

    \u529f\u80fd\u4f18\u5316

    • perf(\u63a5\u53e3\u6d4b\u8bd5): \u4f18\u5316\u63a5\u53e3\u6d4b\u8bd5\u9996\u9875\u7edf\u8ba1\u6548\u7387
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u6587\u6863\u652f\u6301\u5bfc\u51fahtml
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u63a5\u53e3\u7528\u4f8b\u8bf7\u6c42\u4f53\u6dfb\u52a0\u89d2\u6807\u7edf\u8ba1
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u9650\u5236\u6d4b\u8bd5\u8ba1\u5212\u5b9a\u65f6\u4efb\u52a1\u5355\u4e00\u6267\u884c
    • refactor(\u9879\u76ee\u7ba1\u7406): \u5168\u5c40XPath\u65ad\u8a00\u652f\u6301html\u5185\u5bb9\u65ad\u8a00

    \u95ee\u9898\u4fee\u590d

    • fix(UI\u6d4b\u8bd5): \u4fee\u590d\u9879\u76ee\u8bbe\u7f6e\u6d88\u606f\u7ba1\u7406/\u63a5\u53e3\u6d4b\u8bd5/UI\u6d4b\u8bd5\u7f16\u8f91\u6d88\u606f\u901a\u77e5\u540e\u53d6\u6d88\uff0c\u4ecd\u663e\u793a\u4fee\u6539\u5185\u5bb9\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): CSV\u9694\u79bb\u52a0\u8f7d\u7684\u540c\u65f6\u517c\u5bb9CSVRead\u51fd\u6570\u53d6\u503c
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u7f16\u8f91\u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u540d\u79f0\uff0c\u65e0\u6cd5\u9f20\u6807\u9009\u62e9\u6587\u5b57\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dk8s\u8d44\u6e90\u6c60\u5e76\u53d1\u6570\u8bbe\u7f6e\u4e0d\u751f\u6548\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dswagger\u7279\u6b8a\u6570\u636e\u5bfc\u5165\u5931\u8d25\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dtcp mock\u8bf7\u6c42\u5185\u5bb9\u8d85\u8fc71024\u4e2a\u5b57\u8282\u5931\u8d25\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u751f\u6210\u6d4b\u8bd5\u6570\u636e\u65f6\uff0c\u6700\u5927\u6700\u5c0f\u503c\u9650\u5236\u6ca1\u6709\u6548\u679c\u7684\u7f3a\u9677
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u62a5\u544a-\u63a5\u53e3\u7528\u4f8b-\u6267\u884c\u7ed3\u679cpending\u72b6\u6001\u540e\u591a\u663e\u793a\u4e86.
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u67e5\u770b\u7528\u4f8b\u7f3a\u9677\u5173\u8054TAB\u6743\u9650\u6821\u9a8c\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u62a5\u544a\u7edf\u8ba1\u548c\u8ba1\u5212\u5217\u8868-\u64cd\u4f5c\u67e5\u770b\u62a5\u544a-\u8fd0\u884c\u73af\u5883\u660e\u7ec6\u524d\u7a7a\u767d\u592a\u591a
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u5173\u8054\u7528\u4f8b\u5f39\u7a97\u5173\u952e\u5b57\u641c\u7d22\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u6267\u884c\u72b6\u6001\u6309\u94ae\u6837\u5f0f\u4e0d\u4e00\u81f4
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u8d85\u7ea7\u7ba1\u7406\u5458\u7528\u6237\u7ec4\u79fb\u9664\u516c\u5171\u7528\u4f8b\u5e93\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u5173\u8054\u7528\u4f8b\u5217\u8868\u7b5b\u9009\u65f6\u91cd\u7f6e\u5f53\u524d\u9875\u7801
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u5173\u8054\u7528\u4f8b\u5217\u8868\u7b5b\u9009\u540e\u672a\u91cd\u7f6e\u5f53\u524d\u9875\u7801
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7f3a\u9677\u7ba1\u7406\u5173\u8054\u529f\u80fd\u7528\u4f8b\u5f39\u7a97\u672a\u8fc7\u6ee4\u6389\u5df2\u5173\u8054\u7684\u7528\u4f8b
    • fix(\u9879\u76ee\u8bbe\u7f6e): UI\u4efb\u52a1\u901a\u77e5\u521b\u5efa\u4e0d\u663e\u793a\u9ed8\u8ba4\u4eba&\u4fdd\u5b58\u4e00\u76f4\u5b58\u5728\u521b\u5efa\u4eba\u95ee\u9898
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u6d88\u606f\u901a\u77e5UI\u6d88\u606f\u6807\u9898\u4f18\u5316
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u9879\u76ee\u5217\u8868\u5206\u9875\u67e5\u8be2\u53c2\u6570\u8bbe\u7f6e\u6709\u8bef
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u6027\u80fd\u6d4b\u8bd5\u67e5\u627e\u9644\u4ef6\u4e0d\u518d\u9650\u5236\u6587\u4ef6\u683c\u5f0f
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590d\u529f\u80fd\u7528\u4f8b\u5bfc\u51fa\u7cfb\u7edf\u5b57\u6bb5\u6ca1\u6709\u56fd\u9645\u5316\u95ee\u9898
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u5207\u6362\u65b0\u7684\u5de5\u4f5c\u7a7a\u95f4\u670d\u52a1\u96c6\u6210\u914d\u7f6e\u4fe1\u606f\u5c55\u793a\u6709\u8bef
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590dCAS\u767b\u5f55\u540e\u64cd\u4f5c\u65e5\u5fd7\u6ca1\u6709\u663e\u793a\u7528\u6237\u540d\u7684\u95ee\u9898
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590d\u67e5\u8be2\u5de5\u4f5c\u7a7a\u95f4-\u9879\u76ee\u5217\u8868\u65f6\u6ca1\u6709\u68c0\u67e5\u5de5\u4f5c\u7a7a\u95f4\u7684\u95ee\u9898
    "},{"location":"about/changelog/#v2106-lts","title":"v2.10.6-lts","text":"

    2023\u5e748\u670822\u65e5

    \ud83d\udca5\ud83d\udca5\u00a0\u91cd\u8981\u63d0\u9192\u00a0\ud83d\udca5\ud83d\udca5 2.10 LTS \u5728\u67b6\u6784\u4e0a\u548c 1.20 LTS \u6709\u5f88\u5927\u53d8\u5316\uff0c\u8bf7\u52a1\u5fc5\u5347\u7ea7\u524d\u8fdb\u884c\u5907\u4efd\uff0c\u5e76\u8be6\u7ec6\u67e5\u9605\u6b64\u6587\u6863\uff1a1.20 lts\u81f32.10 lts\u5347\u7ea7\u6307\u5357

    \u529f\u80fd\u4f18\u5316

    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u6807\u7b7e\u91cd\u6784
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u652f\u6301\u8de8\u9879\u76ee\u573a\u666f\u6267\u884c\u65f6\u53ef\u4ee5\u4e0d\u9009\u73af\u5883\uff0c\u9ed8\u8ba4\u53d6\u5f53\u524d\u9879\u76ee\u73af\u5883
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u652f\u6301\u5b9a\u65f6\u4efb\u52a1\u6267\u884c\u53d6\u9ed8\u8ba4\u73af\u5883
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a)): \u6d4b\u8bd5\u8ba1\u5212\u4e0d\u518d\u5f3a\u5236\u5173\u8054\u7528\u4f8b\u65f6\u9009\u62e9\u73af\u5883
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u5e73\u53f0\u63d2\u4ef6\u6784\u9020\u5668\u6dfb\u52a0\u4e2a\u4eba\u8d26\u53f7\u4fe1\u606f\u76f8\u5173\u53c2\u6570
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u7528\u4f8b\u8bc4\u5ba1\u5173\u8054\u529f\u80fd\u7528\u4f8b\u9875\u9762\uff0c\u67e5\u8be2\u6761\u4ef6\u63d0\u793a\u4f18\u5316
    • refactor(\u9879\u76ee\u8bbe\u7f6e): \u7ec6\u5316\u9879\u76ee\u5185\u67e5\u770b\u7528\u6237\u7ec4\u63a5\u53e3\u6743\u9650\u7684\u9897\u7c92\u5ea6
    • style(\u6027\u80fd\u6d4b\u8bd5): \u6027\u80fd\u6d4b\u8bd5\u62a5\u544a\u52a0\u8f7d\u6d4b\u8bd5\u914d\u7f6e\u65f6\u589e\u52a0loading
    • style(\u6027\u80fd\u6d4b\u8bd5): \u4f18\u5316\u6027\u80fd\u6d4b\u8bd5\u62a5\u544a\u4e2d\u73af\u5883\u7684\u5c55\u793a\u6548\u679c
    • perf(\u6d4b\u8bd5\u8ddf\u8e2a): \u4f18\u5316\u6d4b\u8bd5\u8ba1\u5212\u63a5\u53e3\u7528\u4f8b\u5207\u6362\u6a21\u5757\u6811\u7684\u54cd\u5e94\u901f\u5ea6
    • refactor: \u7cfb\u7edf\u914d\u7f6e\u652f\u6301\u4e0a\u4f20\u81ea\u5b9a\u4e49css

    \u95ee\u9898\u4fee\u590d

    • fix(\u5de5\u4f5c\u53f0): \u7528\u4f8b\u63cf\u8ff0\u9884\u89c8loading\u5173\u95ed
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dAPI\u591a\u6b21\u4fdd\u5b58\u6570\u636e\u91cd\u590d\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dAPI\u5217\u8868\u6279\u91cf\u590d\u5236\u6570\u636e\u4f1a\u53d1\u51fa\u591a\u4e2a\u8bf7\u6c42\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u5f15\u7528\u7684CASE\u6dfb\u52a0\u65ad\u8a00\u65e0\u6cd5\u751f\u6548\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u573a\u666f\u6b65\u9aa4\u63a5\u53e3\u5bfc\u5165\u53ca\u573a\u666f\u5bfc\u5165\u5f39\u7a97\u62d6\u62fd\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u5feb\u6377\u8c03\u8bd5\u53e6\u5b58\u4e3a\u7528\u4f8b\uff0c\u663e\u793a\u7684\u8fd8\u662f\u4e0a\u4e00\u6b21\u7528\u4f8b\u540d\u79f0\u7684\u7f3a\u9677
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6a21\u5757\u6811\u9876\u90e8\u7f3a\u5931\u641c\u7d22\u6846\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7f3a\u9677\u5bfc\u5165\u7279\u6b8a\u5b57\u7b26\u62a5\u9519\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u590d\u5236\u529f\u80fd\u7528\u4f8b\u8d23\u4efb\u4eba\u53d8\u66f4\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u5bcc\u6587\u672c\u6846\u82f1\u6587\u5f15\u53f7\u9884\u89c8\u65f6\u53d8\u6210\u4e2d\u6587\u5f15\u53f7
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7528\u4f8b\u7f16\u8f91\u9875\uff0c\u70b9\u51fb\u7248\u672c\u7f6e\u65b0\uff0c\u4e00\u76f4\u5904\u4e8e\u5237\u65b0\u72b6\u6001
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u8111\u56fe\u5c06\u7528\u4f8b\u62d6\u5165\u672a\u52a0\u8f7d\u7528\u4f8b\u7684\u6a21\u5757\uff0c\u4f1a\u4ea7\u751f\u6570\u636e\u4e22\u5931
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7528\u4f8b\u5bfc\u51fa\u652f\u6301\u5355\u5143\u683c\u5185\u5bb9\u6362\u884c
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u81ea\u5b9a\u4e49\u5b57\u6bb5\u4e0b\u62c9\u9009\u9879key\u957f\u5ea6\u9650\u5236\u8fc7\u77ed
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u81ea\u5b9a\u4e49\u76d1\u63a7\u67e5\u8be2\u65f6\uff0c\u8f93\u5165promQL\u4e2d\u5305\u62ec\u7279\u6b8a\u5b57\u7b26\u4e0d\u80fd\u6b63\u5e38\u4f7f\u7528\u7684\u95ee\u9898
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u591a\u8282\u70b9\u914d\u7f6e\u81ea\u5b9a\u4e49\u5360\u6bd4\u65f6\u6d6e\u70b9\u6570\u76f8\u52a0\u7cbe\u5ea6\u95ee\u9898\u4fee\u6539
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u8d44\u6e90\u6c60\u914d\u7f6e\u4fe1\u606f\u8fc7\u957f\u62a5\u9519\u95ee\u9898
    "},{"location":"about/changelog/#v2105-lts","title":"v2.10.5-lts","text":"

    2023\u5e748\u67081\u65e5

    \ud83d\udca5\ud83d\udca5\u00a0\u91cd\u8981\u63d0\u9192\u00a0\ud83d\udca5\ud83d\udca5 2.10 LTS \u5728\u67b6\u6784\u4e0a\u548c 1.20 LTS \u6709\u5f88\u5927\u53d8\u5316\uff0c\u8bf7\u52a1\u5fc5\u5347\u7ea7\u524d\u8fdb\u884c\u5907\u4efd\uff0c\u5e76\u8be6\u7ec6\u67e5\u9605\u6b64\u6587\u6863\uff1a1.20 lts\u81f32.10 lts\u5347\u7ea7\u6307\u5357

    \u529f\u80fd\u4f18\u5316

    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u4f18\u5316JSONPath\u65ad\u8a00\u5339\u914d\u673a\u5236\uff0c\u652f\u6301\u6b63\u5219\u5ffd\u7565\u6570\u5b57\u7cbe\u5ea6\u5339\u914d
    • refactor(\u6027\u80fd\u6d4b\u8bd5): \u5927\u5e45\u4f18\u5316\u6027\u80fd\u6d4b\u8bd5\u7684\u541e\u5410\u91cf\u548c\u7a33\u5b9a\u6027(\u4f01\u4e1a\u7248)
    • refactor(\u6027\u80fd\u6d4b\u8bd5): \u62a5\u544a\u5217\u8868\u9875\u51cf\u5c11\u6d4b\u8bd5\u5217\u663e\u793a
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u53d6\u6d88\u5de6\u4fa7\u6a21\u5757\u68118\u5c42\u9650\u5236
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u529f\u80fd\u7528\u4f8b\u5217\u8868\u548c\u8111\u56fe\u5207\u6362\u65f6\uff0c\u643a\u5e26\u7248\u672c\u7b5b\u9009\u6761\u4ef6
    • refactor(\u9879\u76ee\u8bbe\u7f6e): \u6dfb\u52a0\u9879\u76ee\u6210\u5458\u9009\u9879\u8fc7\u6ee4\u6389\u5df2\u7ecf\u6dfb\u52a0\u7684\u6210\u5458
    • refactor: \u8c03\u6574BufferMemory\u9ed8\u8ba4\u5927\u5c0f\u5e76\u652f\u6301\u81ea\u5b9a\u4e49\u914d\u7f6e

    \u95ee\u9898\u4fee\u590d

    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u5173\u8054\u7684case\u66f4\u65b0\u540e\u672a\u540c\u6b65\u66f4\u65b0\u7684\u95ee\u9898\uff08GitHub #25703\uff09
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u529f\u80fd\u7528\u4f8b\u4f7f\u7528\u7248\u672c\u7b5b\u9009\u6761\u4ef6\u540e\u5207\u6362\u81f3\u8111\u56fe\u67e5\u770b\u672a\u751f\u6548\u7684\u95ee\u9898\uff08GitHub #25848\uff09
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u201c\u63a8\u8350JSONPATH\u65ad\u8a00\u201d\u4e2d\u5f53\u54cd\u5e94\u5185\u5bb9\u4e3a\u6570\u5b57\u88ab\u5904\u7406\u6210\u5b57\u7b26\u4e32\u7684\u95ee\u9898\uff08GitHub #25109\uff09
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u901a\u8fc7\u201cJSON-SCHEMA\u201d\u67e5\u770b\u590d\u6742JSON\u8bf7\u6c42\u4f53\u5bfc\u81f4\u6d4f\u89c8\u5668\u5d29\u6e83\u7684\u95ee\u9898\uff08GitHub #25825\uff09
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dJmeter 5.4.1\u7248\u672c\u5bfc\u51fa\u5e26\u6709\u5faa\u73af\u63a7\u5236\u5668\u7684\u6587\u4ef6\u5bfc\u5165\u5230MeterSphere\u5e73\u53f0\u62a5\u9519\u7684\u95ee\u9898\uff08GitHub #25882\uff09
    • fix(UI\u6d4b\u8bd5): \u4fee\u590dUI\u5e76\u53d1\u6267\u884c\u7ebf\u7a0b\u6570\u4fee\u6539\u540e\u4e0d\u751f\u6548\u7684\u95ee\u9898\uff08GitHub #25755\uff09
    • fix(UI\u6d4b\u8bd5): \u4fee\u590dv2\u7248\u672c\u5bf9v1\u7248\u672cUI\u81ea\u52a8\u5316\u573a\u666f\u53d8\u91cf\u4e0d\u517c\u5bb9\u7684\u7684\u95ee\u9898\uff08GitHub #25607\uff09
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u6027\u80fd\u6d4b\u8bd5\u52a0\u8f7d\u5173\u8054jmx\u6587\u4ef6\u65f6\u4f1a\u91cd\u590d\u63d0\u793a\u7684\u95ee\u9898\uff08GitHub #25351\uff09
    "},{"location":"about/changelog/#v2104-lts","title":"v2.10.4-lts","text":"

    2023\u5e747\u670820\u65e5

    \ud83d\udca5\ud83d\udca5\u00a0\u91cd\u8981\u63d0\u9192\u00a0\ud83d\udca5\ud83d\udca5 2.10 LTS \u5728\u67b6\u6784\u4e0a\u548c 1.20 LTS \u6709\u5f88\u5927\u53d8\u5316\uff0c\u8bf7\u52a1\u5fc5\u5347\u7ea7\u524d\u8fdb\u884c\u5907\u4efd\uff0c\u5e76\u8be6\u7ec6\u67e5\u9605\u6b64\u6587\u6863\uff1a1.20 lts\u81f32.10 lts\u5347\u7ea7\u6307\u5357

    \u529f\u80fd\u4f18\u5316

    • refactor(\u63a5\u53e3\u6d4b\u8bd5): XPath\u65ad\u8a00\u652f\u6301html\u54cd\u5e94\u5185\u5bb9\u65ad\u8a00
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u4f18\u5316\u672c\u5730\u9644\u4ef6csv\u7684\u6e05\u7406\u903b\u8f91
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u62a5\u544a\u5bfc\u51fa\u573a\u666fcase\u5904\u7406size\u8c03\u6574
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u5173\u8054\u7528\u4f8b\u786e\u8ba4\u5f39\u7a97\u4f18\u5316
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u6267\u884c\u65b0\u589e\"\u4fdd\u5b58\u4e0b\u4e00\u6761\"\u6309\u94ae\u64cd\u4f5c
    • refactor: Swagger\u53ef\u4ee5\u914d\u7f6e\u662f\u5426\u5f00\u542f

    \u95ee\u9898\u4fee\u590d

    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dSQL\u534f\u8bae\u5bfc\u5165\u8986\u76d6\u8fd0\u884c\u73af\u5883\u53d8\u66f4\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u53d8\u66f4\u8bb0\u5f55\u76f8\u5173\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dChrome\u63d2\u4ef6\u5f55\u5236\u811a\u672c\u5bfc\u5165\u540e\u6b65\u9aa4\u987a\u5e8f\u9519\u4e71\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dTCP\u63a5\u53e3\u88ab\u5220\u9664\u540e\uff0c\u4ecd\u7136\u53ef\u4ee5\u8c03\u7528\u8be5\u63a5\u53e3Mock\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u5728\u4f7f\u7528\u5e73\u53f0\u505a\u6d4b\u8bd5\u65f6Chrome\u7ecf\u5e38\u51fa\u73b0\u5d29\u6e83\u95ee\u9898
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590d\u63d0\u793a\u76f8\u5173\u95ee\u9898
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590d\u901a\u7528\u914d\u7f6e\u7b5b\u9009\u95ee\u9898
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590d\u9879\u76ee\u73af\u5883\u521b\u5efa\u5931\u8d25\u7684\u7f3a\u9677
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590d\u5bfc\u822a\u680f\u5de5\u4f5c\u7a7a\u95f4\u641c\u7d22\u8f93\u5165\u65f6\u81ea\u52a8\u5931\u7126\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590djira\u4f7f\u7528\u81ea\u5b9a\u4e49\u6a21\u677f\u521b\u5efa\u7f3a\u9677\u5931\u8d25\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u529f\u80fd\u7528\u4f8b\u521b\u5efa\u7248\u672c\u5206\u652f, \u62a5\u529f\u80fd\u7528\u4f8b\u5df2\u5b58\u5728\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u7528\u4f8b\u8bc4\u5ba1\u5217\u8868\u8868\u5934\u663e\u793a\u540d\u79f0\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u8111\u56fe\u7f16\u8f91\u7528\u6237\u4f1a\u6e05\u7a7a\u5173\u8054\u7684\u9700\u6c42\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u529f\u80fd\u7528\u4f8b\u7f16\u8f91\u9875\uff0c\u7528\u4f8b\u72b6\u6001\u663e\u793a\u6709\u8bef
    • fix(\u65b0\u624b\u5f15\u5bfc): \u4fee\u590d\u65b0\u5efa\u8d85\u7ea7\u7ba1\u7406\u5458\u7528\u6237-\u9996\u6b21\u52a0\u8f7d\u4f1a\u51fa\u73b0\u4e24\u6b21\u65b0\u624b\u5f15\u5bfc\u5f39\u7a97
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u7528\u6237\u5bfc\u5165ID\u548c\u540d\u79f0\u6dfb\u52a0\u6821\u9a8c
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u7cfb\u7edf\u8bbe\u7f6e\u521b\u5efa\u7528\u6237\uff0c\u4e0b\u62c9\u6846option\u6837\u5f0f\u8ddf\u968fselect\u6837\u5f0f
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590d\u63d2\u4ef6\u5220\u9664\u540e\u518d\u6b21\u4e0a\u4f20\u63d2\u4ef6id\u9519\u8bef\u7684\u7f3a\u9677
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590d\u5de5\u4f5c\u7a7a\u95f4\u540d\u79f0\u8d85\u957f\uff0c\u521b\u5efa\u7528\u6237\u9009\u5219\u5de5\u4f5c\u7a7a\u95f4\u65f6\u6837\u5f0f\u95ee\u9898
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u6027\u80fd\u6d4b\u8bd5\u81ea\u5b9a\u4e49\u6267\u884c\u7684\u65f6\u5019\u6570\u5b57\u8f6c\u5316\u7684\u95ee\u9898
    • fix: \u4fee\u590dJenkins\u6267\u884c\u6d4b\u8bd5\u65f6\u7531\u4e8e\u6743\u9650\u4e0d\u591f\u5bfc\u81f4\u4e0d\u80fd\u6b63\u5e38\u6267\u884c\u7684\u95ee\u9898
    • fix: \u8d44\u6e90\u6c60\u955c\u50cf\u957f\u5ea6\u8fdb\u884c\u9650\u5236
    "},{"location":"about/changelog/#v2103-lts","title":"v2.10.3-lts","text":"

    2023\u5e747\u67086\u65e5

    \ud83d\udca5\ud83d\udca5\u00a0\u91cd\u8981\u63d0\u9192\u00a0\ud83d\udca5\ud83d\udca5 2.10 LTS \u5728\u67b6\u6784\u4e0a\u548c 1.20 LTS \u6709\u5f88\u5927\u53d8\u5316\uff0c\u8bf7\u52a1\u5fc5\u5347\u7ea7\u524d\u8fdb\u884c\u5907\u4efd\uff0c\u5e76\u8be6\u7ec6\u67e5\u9605\u6b64\u6587\u6863\uff1a1.20 lts\u81f32.10 lts\u5347\u7ea7\u6307\u5357

    \u529f\u80fd\u4f18\u5316

    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u53bb\u9664JMeter\u4e0d\u517c\u5bb9\u7684Mock\u51fd\u6570
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u573a\u666f\u8c03\u8bd5\u53bb\u6389\u901a\u77e5
    • refactor(\u4e2a\u4eba\u4fe1\u606f): \u7b2c\u4e09\u65b9\u5e73\u53f0\u8d26\u53f7\u914d\u7f6elabel\u5bbd\u5ea6\u8c03\u6574
    • refactor(\u4e2a\u4eba\u4fe1\u606f): \u7b2c\u4e09\u65b9\u5e73\u53f0\u8d26\u53f7\u5b57\u6bb5\u663e\u793a\u4f18\u5316
    • refactor(\u6d4b\u8bd5\u8ba1\u5212): \u91cd\u5199\u6d4b\u8bd5\u8ba1\u5212\u52a0\u8f7d\u573a\u666f\u62a5\u544a\u7684\u65b9\u5f0f
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u7b2c\u4e09\u65b9\u5e73\u53f0\u7f3a\u9677\u5220\u9664\u63d0\u793a\u4f18\u5316
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u521b\u5efa\u7f3a\u9677\u5f39\u6846\u6dfb\u52a0\u5168\u5c4f\u6309\u94ae
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u5217\u8868\u6392\u5e8f\u540e\uff0c\u8111\u56fe\u70b9\u51fb\u4e0a\u4e0b\u79fb\u52a8\uff0c\u63d0\u793a\u4f18\u5316
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u529f\u80fd\u7528\u4f8b\u5173\u8054\u7f3a\u9677\uff0c\u6dfb\u52a0\u6392\u5e8f\u5b57\u6bb5
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u7528\u4f8b\u5217\u8868\u4e0d\u5c55\u793a\u6587\u672c\u6846\u548c\u5bcc\u6587\u672c\u6846\u7c7b\u578b\u7684\u81ea\u5b9a\u4e49\u5b57\u6bb5
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u529f\u80fd\u7528\u4f8b\u5217\u8868\u4e0d\u5c55\u793a\u6587\u672c\u6846\u7c7b\u578b\u7684\u81ea\u5b9a\u4e49\u5b57\u6bb5\uff0c\u4f18\u5316\u6548\u7387
    • refactor(\u901a\u7528\u529f\u80fd): \u4e2a\u4eba\u4fe1\u606f\u7684\u7b2c\u4e09\u65b9\u5e73\u53f0\u8d26\u53f7\u4fe1\u606f\u6539\u4e3a\u975e\u5fc5\u586b
    • refactor(\u901a\u7528\u529f\u80fd): Jackson\u9ed8\u8ba4\u5e8f\u5217\u5316\u5b57\u7b26\u4e32\u957f\u5ea6\u8c03\u6574
    • style(\u6d4b\u8bd5\u8ba1\u5212): \u66f4\u6539\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u4e2d\u63a5\u53e3\u6d4b\u8bd5\u62a5\u544a\u7684\u5c55\u793a\u9ad8\u5ea6

    \u95ee\u9898\u4fee\u590d

    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u7279\u6b8a\u6570\u636e\u7684swagger3.0\u6570\u636e\u5bfc\u51fa\u5931\u8d25\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u573a\u666f\u5bfc\u5165\u975e\u6807\u51c6JMX\u6587\u4ef6\u5931\u8d25\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u53c2\u6570\u548c\u7c7b\u578b\u4e0d\u7b26\u5408\u7684json-schema\u6570\u636e\u8f6cjson\u9519\u8bef\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u540c\u6b65\u63a5\u6536\u62a5\u544a\u7ed3\u679c\u6709\u65f6\u95f4\u5dee\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u8bf7\u6c42\u4f53\u542b\u7279\u6b8a\u5b57\u7b26\u8f6c\u6362\u9519\u8bef\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u591a\u5c42\u5d4c\u5957\u5f15\u7528\u573a\u666f\u7981\u7528\u72b6\u6001\u4e0d\u751f\u6548\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): Tapd \u7f16\u8f91\u7f3a\u9677\u5904\u7406\u4eba\u663e\u793a\u5f02\u5e38
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u529f\u80fd\u8bc4\u5ba1\u9ad8\u7ea7\u641c\u7d22\u5f39\u7a97\u51fa\u73b0\u7a7a\u7684\u6eda\u52a8\u6761
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u65e5\u671f\u81ea\u5b9a\u4e49\u5b57\u6bb5\u5217\u8868\u663e\u793a\u5e26\u4e86\u51c6\u786e\u65f6\u95f4
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u516c\u5171\u7528\u4f8b\u5e93\u590d\u5236\u548c\u7f16\u8f91\u6839\u636e\u6743\u9650\u542f\u7528\u7981\u7528
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u529f\u80fd\u7528\u4f8b\u5217\u8868\u81ea\u5b9a\u4e49\u5b57\u6bb5\u7b5b\u9009\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u8bbf\u95ee\u6d4b\u8bd5\u8ddf\u8e2a\u9ed8\u8ba4\u8df3\u8f6c\u5230\u7b2c\u4e00\u4e2a\u6709\u6743\u9650\u7684\u83dc\u5355
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6574\u578b\u81ea\u5b9a\u4e49\u5b57\u6bb5\u4e0d\u4fee\u6539\u9ed8\u8ba4\u503c\uff0c\u4f1a\u4fdd\u5b58\u4e3a\u5b57\u7b26\u4e32
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u9009\u4e2d\u7528\u4f8b\u6570\u91cf\u8fc7\u591a\u751f\u6210\u4f9d\u8d56\u5173\u7cfb\u56fe\u9875\u9762\u52a0\u8f7d\u5f02\u5e38
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u6027\u80fd\u6d4b\u8bd5\u65f6\u6267\u884c\u65f6\u68c0\u67e5jmx\u6587\u4ef6
    • fix(\u9879\u76ee\u7ba1\u7406): \u6a21\u677f\u8bbe\u7f6e\u67e5\u8be2\u6743\u9650\u63a7\u5236\u95ee\u9898
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u521b\u5efa\u7f3a\u9677\u6a21\u677f\u4e0d\u6821\u9a8c\u6a21\u677f\u5b57\u6bb5\u6743\u9650
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4f18\u5316\u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5\u7684\u6743\u9650\u5224\u65ad\u65b9\u5f0f
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): ldap\u7528\u6237\u7b2c\u4e00\u6b21\u767b\u5f55\u5de5\u4f5c\u53f0\u6743\u9650\u95ee\u9898
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u5de5\u4f5c\u7a7a\u95f4\u6210\u5458\u4e0e\u73af\u5883\u7ba1\u7406\u5217\u8868\u9009\u4e2d\u6570\u91cf\u5c55\u793a\u9519\u8bef
    "},{"location":"about/changelog/#v2102-lts","title":"v2.10.2-lts","text":"

    2023\u5e746\u670820\u65e5

    \ud83d\udca5\ud83d\udca5\u00a0\u91cd\u8981\u63d0\u9192\u00a0\ud83d\udca5\ud83d\udca5 2.10 LTS \u5728\u67b6\u6784\u4e0a\u548c 1.20 LTS \u6709\u5f88\u5927\u53d8\u5316\uff0c\u8bf7\u52a1\u5fc5\u5347\u7ea7\u524d\u8fdb\u884c\u5907\u4efd\uff0c\u5e76\u8be6\u7ec6\u67e5\u9605\u6b64\u6587\u6863\uff1a1.20 lts\u81f32.10 lts\u5347\u7ea7\u6307\u5357

    \u529f\u80fd\u4f18\u5316

    • refactor: \u90e8\u5206\u63a5\u53e3\u6743\u9650\u8865\u5168
    • refactor: \u524d\u7aef\u62c6\u5305\u4f18\u5316

    \u95ee\u9898\u4fee\u590d

    • fix(UI\u6d4b\u8bd5): \u4fee\u590d\u8ffd\u52a0\u8f93\u5165\u63d0\u793a\u4fe1\u606f\u5e26\u7279\u6b8a\u5b57\u7b26\u95ee\u9898
    • fix(\u5de5\u4f5c\u53f0): \u4fee\u590d\u4eea\u8868\u76d8\u8fc7\u6ee4\u5f53\u524d\u7528\u6237\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u5f15\u7528\u7684case\u65e0\u6cd5\u6dfb\u52a0\u65ad\u8a00\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u573a\u666f\u5bfc\u5165\u63a5\u53e3\u5217\u8868\u9891\u7e41\u8c03\u63a5\u53e3\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u65ad\u8a00\u54cd\u5e94\u65f6\u95f4\u5f00\u542f\u5173\u95ed\u4e0d\u751f\u6548\u7684\u7f3a\u9677
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590dqiankun\u7ec4\u4ef6\u52a0\u8f7d\u62a5\u544a\u5207\u6362\u9519\u4e71\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u529f\u80fd\u7528\u4f8b\u7f16\u8f91\u8d23\u4efb\u4ebaID\u4e3a\u7eaf\u6570\u5b57\u663e\u793a\u5f02\u5e38\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u7528\u4f8b\u5217\u8868\u81ea\u5b9a\u4e49\u5217\u9009\u62e9\u540e\u5237\u65b0\u5931\u6548\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u4f7f\u7528\u7b2c\u4e09\u65b9\u7f3a\u9677\u6a21\u677f\uff0c\u5b58\u5728\u540c\u540d\u5b57\u6bb5\uff0c\u65e0\u6cd5\u4fdd\u5b58\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u6267\u884c\u961f\u5217\u4e0d\u518d\u8bb0\u5f55\u6267\u884c\u5931\u8d25\u7684\u6027\u80fd\u7528\u4f8b\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u7f3a\u9677\u81ea\u5b9a\u4e49\u5b57\u6bb5\u4e0b\u62c9\u9009\u9879\u8fdc\u7a0b\u68c0\u7d22\uff0c\u8f93\u5165\u5173\u952e\u5b57\u540e\u5931\u53bb\u7126\u70b9\uff0c\u9009\u9879\u6ca1\u6709\u91cd\u7f6e
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u5bfc\u5165\u7f3a\u9677\u6587\u4ef6\u5185\u5bb9\u9519\u8bef\u540e\uff0c\u4fee\u6539\u539f\u59cb\u6587\u4ef6\u5e76\u4fdd\u5b58\uff0c\u62a5network_error
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590d\u914d\u7f6e\u90ae\u4ef6Port\u53c2\u6570\u6821\u9a8c\u95ee\u9898
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u6027\u80fd\u6d4b\u8bd5\u573a\u666fCSV\u53d8\u66f4\u540e\u8fdb\u884c\u540c\u6b65\u65f6\u8868\u683c\u5185\u7684CSV\u6587\u4ef6\u4e5f\u540c\u6b65\u66f4\u6539
    • fix(\u6587\u4ef6\u7ba1\u7406): \u4fee\u590d\u6587\u4ef6\u7ba1\u7406\u589e\u52a0\u5bf9\u6a21\u5757id\u4e0d\u5b58\u5728\u7684\u65e7\u6570\u636e\u5904\u7406
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590dTCP\u914d\u7f6e\u5b57\u6bb5\u540d\u79f0\u663e\u793a\u95ee\u9898
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u5220\u9664\u6d88\u606f\u901a\u77e5\u6a21\u677f\u4e2d\u7684\u65e0\u6548\u53d8\u91cf
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590d\u81ea\u5b9a\u4e49\u5f85\u66f4\u65b0\u89c4\u5219\u914d\u7f6e\u63d0\u793a\u95ee\u9898
    "},{"location":"about/changelog/#v2101-lts","title":"v2.10.1-lts","text":"

    2023\u5e746\u67088\u65e5

    \ud83d\udca5\ud83d\udca5\u00a0\u91cd\u8981\u63d0\u9192\u00a0\ud83d\udca5\ud83d\udca5 2.10 LTS \u5728\u67b6\u6784\u4e0a\u548c 1.20 LTS \u6709\u5f88\u5927\u53d8\u5316\uff0c\u8bf7\u52a1\u5fc5\u5347\u7ea7\u524d\u8fdb\u884c\u5907\u4efd\uff0c\u5e76\u8be6\u7ec6\u67e5\u9605\u6b64\u6587\u6863\uff1a1.20 lts\u81f32.10 lts\u5347\u7ea7\u6307\u5357

    \u529f\u80fd\u4f18\u5316

    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u4f18\u5316\u573a\u666f\u73af\u5883\u6821\u9a8c\u903b\u8f91
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u4f18\u5316\u9009\u62e9\u8d44\u6e90\u6c60\u6267\u884c\u903b\u8f91
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u65b0\u589e\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u7f16\u8f91\u7684\u6743\u9650
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u7528\u4f8b\u8bc4\u5ba1\u5173\u8054\u7528\u4f8b\u65b0\u589e\u6392\u5e8f
    • refactor(\u7cfb\u7edf\u8bbe\u7f6e): \u64cd\u4f5c\u65e5\u5fd7\u7684\u64cd\u4f5c\u5bf9\u8c61\u589e\u52a0\u6e05\u7a7a
    • refactor(\u9879\u76ee\u8bbe\u7f6e): \u4f18\u5316\u7cfb\u7edf\u81ea\u5e26\u7684\u73af\u5883\u4e2d\u5e26\u811a\u672c\u65f6\u7684\u901a\u77e5\u903b\u8f91

    \u95ee\u9898\u4fee\u590d

    • fix(\u5de5\u4f5c\u53f0): \u529f\u80fd\u7528\u4f8b\u4eea\u8868\u76d8\u6570\u76ee\u4e0e\u5217\u8868\u4e0d\u4e00\u81f4
    • fix(\u5de5\u4f5c\u53f0)\uff1a\u5de5\u4f5c\u53f0\u67e5\u770bjira\u5e73\u53f0\u7f3a\u9677,\u7f3a\u9677\u5b57\u6bb5\u663e\u793a\u4e0d\u5168
    • fix(\u9879\u76ee\u8bbe\u7f6e): TCP\u914d\u7f6e\u540d\u79f0\u5c55\u793a\u95ee\u9898
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u6dfb\u52a0git\u6587\u4ef6\u5931\u8d25\u65f6\u4e0d\u4f1a\u518d\u5237\u65b0\u8868\u683c\u5185\u5bb9
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590djenkins\u89e6\u53d1\u63a5\u53e3\u7528\u4f8b\uff0c\u4e00\u76f4\u4e0d\u6267\u884c\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u573a\u666f\u6b65\u9aa4\u8de8\u5de5\u4f5c\u7a7a\u95f4\u8df3\u8f6c\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u96c6\u5408\u62a5\u544a\u505c\u6b62\u4e0d\u751f\u6548\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u573a\u666f\u6279\u91cf\u751f\u6210\u4f9d\u8d56\u5173\u7cfb\u62a5\u9519\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u81ea\u5b9a\u4e49\u8bf7\u6c42\u63a5\u53e3\u8986\u76d6\u7387\u8ba1\u7b97\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u53ea\u5173\u8054UI\u6267\u884c\u65f6\u8d44\u6e90\u6c60\u63d0\u793a\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u5f53\u524d\u9879\u76ee\u8d23\u4efb\u4eba\u5220\u9664\u65f6\u5c55\u793a\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7528\u4f8b\u8111\u56fe\u4fee\u6539\u4e00\u7ea7\u6a21\u5757\uff0c\u91cd\u540d\u6821\u9a8c\u4e0d\u51c6\u786e
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u5220\u9664\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u65f6\u540e\u53f0\u4f1a\u51fa\u73b0\u6d88\u606f\u901a\u77e5\u76f8\u5173\u7684\u62a5\u9519
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u6027\u80fd\u6d4b\u8bd5\u573a\u666fCSV\u53d8\u66f4\u540e\u8fdb\u884c\u540c\u6b65\u65f6\u8868\u683c\u5185\u7684CSV\u6587\u4ef6\u4e5f\u540c\u6b65\u66f4\u6539
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u6027\u80fd\u6d4b\u8bd5\u53d8\u66f4\u8bb0\u5f55\u76f8\u5173\u95ee\u9898
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u521b\u5efa\u6027\u80fd\u6d4b\u8bd5\u5076\u53d1\u7684\u4fdd\u5b58\u540e\u8d44\u6e90\u6c60\u88ab\u7f6e\u7a7a\u7684\u95ee\u9898
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590d\u5de5\u4f5c\u7a7a\u95f4\u914d\u989d\u9650\u5236\u8d44\u6e90\u6c60\u540e\u4efb\u7136\u53ef\u4ee5\u9009\u62e9\u88ab\u7981\u7528\u7684\u8d44\u6e90\u6c60\u6267\u884c\u7684\u7f3a\u9677
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590d\u4f4e\u7248\u672c\u5347\u7ea7\u4e0a\u6765\u7684\u9ed8\u8ba4\u914d\u989d\u663e\u793a\u9519\u8bef\u95ee\u9898
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590d\u901a\u77e5\u8df3\u8f6c\u73af\u5883\u63d0\u793a\u8d44\u6e90\u88ab\u5220\u7684\u7f3a\u9677
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590d\u9879\u76ee\u8bbe\u7f6e\u548c\u7cfb\u7edf\u8bbe\u7f6e\u4e2d\u6dfb\u52a0\u6210\u5458\u641c\u7d22\u7ed3\u679c\u4e0d\u7b26\u95ee\u9898
    • fix(\u901a\u77e5\u4e2d\u5fc3): \u901a\u77e5\u4e2d\u5fc3\u8df3\u8f6c\u5220\u9664\u7684\u8d44\u6e90\u65f6\u8fdb\u884c\u62a5\u9519\u63d0\u793a
    • fix(\u65b0\u624b\u5f15\u5bfc): \u65b0\u624b\u5f15\u5bfc\uff0c\u6b65\u9aa4\u4e3a\u521d\u59cb\u503c\u65f6\uff0c\u589e\u52a0\u8bb0\u5f55\u64cd\u4f5c
    • fix(\u6587\u4ef6\u7ba1\u7406): \u6587\u4ef6\u8be6\u60c5\u4e2d\u632a\u52a8\u6240\u5c5e\u6a21\u5757\u65f6\u4e0d\u518d\u63d0\u4f9b\u6e05\u7a7a\u6309\u94ae
    "},{"location":"about/changelog/#v2100-lts","title":"v2.10.0-lts","text":"

    2023\u5e745\u670825\u65e5

    \ud83d\udca5\ud83d\udca5\u00a0\u91cd\u8981\u63d0\u9192\u00a0\ud83d\udca5\ud83d\udca5 2.10 LTS \u5728\u67b6\u6784\u4e0a\u548c 1.20 LTS \u6709\u5f88\u5927\u53d8\u5316\uff0c\u8bf7\u52a1\u5fc5\u5347\u7ea7\u524d\u8fdb\u884c\u5907\u4efd\uff0c\u5e76\u8be6\u7ec6\u67e5\u9605\u6b64\u6587\u6863\uff1a1.20 lts\u81f32.10 lts\u5347\u7ea7\u6307\u5357

    \u6d4b\u8bd5\u80fd\u529b\u5347\u7ea7

    \u4e00\u7ad9\u5f0f\u6d4b\u8bd5\u80fd\u529b\u589e\u5f3a\uff1a MeterSphere v2.10 LTS\u7248\u672c\u5728\u6d4b\u8bd5\u7ba1\u7406\u4e0e\u6d4b\u8bd5\u6267\u884c\u4e0a\u91c7\u7528\u4e00\u7ad9\u5f0f\u5e73\u53f0\u8bbe\u8ba1\uff0c\u63d0\u4f9b\u529f\u80fd\u6d4b\u8bd5\u3001\u63a5\u53e3\u6d4b\u8bd5\u3001UI\u6d4b\u8bd5\u3001\u6027\u80fd\u6d4b\u8bd5\u7684\u540c\u65f6\uff0c\u89c4\u907f\u4e86\u6d4b\u8bd5\u4eba\u5458\u6267\u884c\u6d4b\u8bd5\u4efb\u52a1\u65f6\u56e0\u5de5\u5177\u7e41\u591a\u3001\u79cd\u7c7b\u5dee\u5f02\u5316\u5bfc\u81f4\u7684\u65e0\u6cd5\u6c89\u6dc0\u548c\u65e0\u6cd5\u8ffd\u6eaf\u7684\u95ee\u9898\u3002\u5168\u9762\u627f\u8f7d\u4e0d\u540c\u7c7b\u578b\u7684\u6d4b\u8bd5\u7528\u4f8b\u3001API\u3001\u6d4b\u8bd5\u6570\u636e\u3001\u6d4b\u8bd5\u73af\u5883\u7b49\u5173\u952e\u8d44\u4ea7\u7684\u96c6\u4e2d\u7ba1\u7406\u3002

    \u6d4b\u8bd5\u7ba1\u7406\u80fd\u529b\u589e\u5f3a\uff1a MeterSphere v2.10 LTS\u7248\u672c\u4e2d\uff0c\u6d4b\u8bd5\u8ba1\u5212\u529f\u80fd\u8fdb\u884c\u4e86\u589e\u5f3a\uff0c\u8986\u76d6\u529f\u80fd\u7528\u4f8b\u3001\u63a5\u53e3\u7528\u4f8b\u3001UI\u7528\u4f8b\u3001\u6027\u80fd\u7528\u4f8b\u3002

    \u63a5\u53e3\u6d4b\u8bd5\u80fd\u529b\u589e\u5f3a\uff1a MeterSphere v2.10 LTS\u7248\u672c\u4e2d\uff0c\u63a5\u53e3\u6d4b\u8bd5\u91cd\u70b9\u89e3\u51b3\u4e86API\u53d1\u751f\u53d8\u66f4\u4e00\u952e\u66f4\u65b0\u63a5\u53e3\u7528\u4f8b\u7684\u95ee\u9898\u3002

    UI \u6d4b\u8bd5\u80fd\u529b\u589e\u5f3a\u3010X-Pack\u3011\uff1a \u5728MeterSphere v2.10 LTS\u7248\u672c\u4e2d\uff0cUI\u6d4b\u8bd5\u6a21\u5757\u9488\u5bf9Selenium\u539f\u751f\u6307\u4ee4\u8fdb\u884c\u4e86\u8fdb\u4e00\u6b65\u7684\u6269\u5c55\uff0c\u4ee5\u8986\u76d6\u7279\u6b8a\u6d4b\u8bd5\u573a\u666f\u3002

    \u6027\u80fd\u6d4b\u8bd5\u80fd\u529b\u589e\u5f3a\uff1a \u5728MeterSphere v2.10 LTS\u7248\u672c\u4e2d\uff0c\u6027\u80fd\u6d4b\u8bd5\u5b9e\u65f6\u62a5\u544a\u8ba1\u7b97\u80fd\u529b\u589e\u5f3a\u3002\u5c06\u6027\u80fd\u6d4b\u8bd5\u751f\u6210\u7684jtl\u6587\u4ef6\u5206\u6210\u5c0f\u6bb5\uff0c\u5206\u6bb5\u8ba1\u7b97\u7ed3\u679c\uff0c\u8282\u7701\u4e86\u78c1\u76d8\u7a7a\u95f4\u548cIO\u6027\u80fd\u3002

    \u7528\u6237\u4f53\u9a8c\u5347\u7ea7

    \u6d4b\u8bd5\u8ddf\u8e2a\u9996\u9875\u3001\u63a5\u53e3\u6d4b\u8bd5\u9996\u9875UX\u4ea4\u4e92\u5347\u7ea7\uff1a MeterSphere v2.10 LTS\u7248\u672c\u4e2d\uff0c\u63a5\u53e3\u6d4b\u8bd5\u6a21\u5757\u9996\u9875\u793a\u4f8b\u56fe\u3002\u5c06\u6838\u5fc3\u6307\u6807\u4e0e\u660e\u7ec6\u6307\u6807\u5206\u5c42\u5c55\u793a\uff0c\u89c6\u89c9\u4e0a\u907f\u514d\u4e86\u56e0\u6570\u636e\u8fc7\u591a\u4ea7\u751f\u7684\u89c6\u89c9\u75b2\u52b3\u3002

    \u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757\u529f\u80fd\u7528\u4f8bUX\u4ea4\u4e92\u5347\u7ea7\uff1a MeterSphere v2.10 LTS\u7248\u672c\u4e2d\uff0c\u529f\u80fd\u7528\u4f8b\u8fdb\u884c\u4e86\u5168\u65b0\u4ea4\u4e92\u5347\u7ea7\uff0c\u6574\u4e2a\u9875\u9762\u91c7\u7528\u8f7b\u91cf\u5316\u8bbe\u8ba1\u8fdb\u884c\u6574\u4f53\u964d\u566a\uff0c\u9875\u9762\u4fe1\u606f\u66f4\u52a0\u6e05\u6670\u6613\u61c2\uff0c\u64cd\u4f5c\u6d41\u7a0b\u66f4\u987a\u7545\uff0c\u7528\u6237\u4f53\u9a8c\u5f97\u5230\u6574\u4f53\u63d0\u5347\u3002

    \u9664\u6b64\u4e4b\u5916\uff0cMeterSphere v2.10 LTS\u7248\u672c\u8fd8\u8fdb\u884c\u4e86\u4ee5\u4e0b\u9ad8\u9891\u4f7f\u7528\u529f\u80fd\u7684\u4f53\u9a8c\u4f18\u5316\uff1a

    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u9ad8\u7ea7\u641c\u7d22\u652f\u6301\u8f93\u5165\u591a\u4e2a\u6807\u7b7e\u641c\u7d22\uff1b
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u8111\u56fe\u7528\u4f8b\u5220\u9664\u65f6\u589e\u52a0\u4e8c\u6b21\u786e\u8ba4\uff1b
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a5\u53e3\u6d4b\u8bd5\u6279\u91cf\u6dfb\u52a0\u8bf7\u6c42\u53c2\u6570\u81ea\u52a8\u53bb\u7a7a\u683c\u5904\u7406\uff1b
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u652f\u6301\u901a\u8fc7\u8def\u5f84\u641c\u7d22\uff1b
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a5\u53e3\u6d4b\u8bd5\u5217\u8868\u5c55\u793a\u5b9a\u65f6\u4efb\u52a1\u5217\uff1b
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u56fa\u5b9a\u5355\u63a5\u53e3\u7528\u4f8b\u6267\u884c\u6309\u94ae\u4f4d\u7f6e\uff1b
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u8fd0\u884c\u73af\u5883\u5217\u8868\u652f\u6301\u6a21\u7cca\u641c\u7d22\uff1b
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u5355\u6b65\u8c03\u8bd5\u7528\u4f8b\u6216\u573a\u666f\u6b65\u9aa4\u65f6\u54cd\u5e94\u5185\u5bb9\u81ea\u52a8\u5c55\u5f00\uff1b
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a5\u53e3TEST\u652f\u6301\u4fdd\u7559\u6700\u8fd1\u4e00\u6b21\u7684\u6267\u884c\u8bb0\u5f55\uff1b
    • \u6027\u80fd\u6d4b\u8bd5\uff1a\u6d4b\u8bd5\u62a5\u544a\u589e\u52a0\u56fe\u8868\u5355\u4f4d\u5c55\u793a\uff1b
    • \u901a\u7528\u529f\u80fd\uff1a\u6807\u7b7e\u5b57\u6570\u8fc7\u591a\u65f6\u7684\u5c55\u793a\u4f18\u5316\uff1b

    \u7cfb\u7edf\u67b6\u6784\u5347\u7ea7

    \u7cfb\u7edf\u67b6\u6784\u5347\u7ea7\u4e3a\u5fae\u670d\u52a1\u67b6\u6784\uff1a MeterSphere v2.10 LTS\u7248\u672c\u91c7\u7528\u4e86\u5fae\u670d\u52a1\u67b6\u6784\uff0c\u65e2\u80fd\u6ee1\u8db3\u7528\u6237\u6309\u9700\u914d\u7f6e\u3001\u6c34\u5e73\u6269\u5c55\u7684\u9700\u6c42\uff0c\u53c8\u80fd\u89c4\u907f\u5355\u4e2a\u670d\u52a1\u6545\u969c\u5bfc\u81f4\u6574\u4f53\u670d\u52a1\u4e0d\u53ef\u7528\u7684\u73b0\u8c61\u3002

    \u5e73\u53f0\u6269\u5c55\u80fd\u529b\u589e\u5f3a\uff1a MeterSphere\u4f5c\u4e3a\u4e00\u7ad9\u5f0f\u6301\u7eed\u6d4b\u8bd5\u5e73\u53f0\uff0c\u65e2\u9700\u8981\u4e0e\u5404\u79cd\u5468\u8fb9\u7cfb\u7edf\u8fdb\u884c\u96c6\u6210\u5bf9\u63a5\uff0c\u4e5f\u9700\u8981\u652f\u6301\u5404\u79cd\u4e0d\u540c\u534f\u8bae\u7684\u63a5\u53e3\u6d4b\u8bd5\uff0c\u7075\u6d3b\u7684\u63d2\u4ef6\u4f53\u7cfb\u4fbf\u53ef\u4ee5\u5f88\u597d\u5730\u89e3\u51b3\u5e73\u53f0\u6269\u5c55\u6027\u7684\u95ee\u9898\u3002\u7528\u6237\u53ef\u4ee5\u6309\u9700\u5b89\u88c5\u3001\u5f00\u53d1\u5404\u79cd\u5f62\u5f0f\u5730\u63d2\u4ef6\u6765\u8986\u76d6\u5404\u79cd\u4e0d\u540c\u7684\u6d4b\u8bd5\u53ca\u5bf9\u63a5\u9700\u6c42\u3002

    \u6027\u80fd\u4f18\u5316\uff1a - UI\u6d4b\u8bd5\u6279\u91cf\u6267\u884c\u6027\u80fd\u4f18\u5316 - \u6d4b\u8bd5\u8ba1\u5212\u6267\u884c\u6548\u7387\u4f18\u5316 - \u63a5\u53e3\u6d4b\u8bd5\u6267\u884c\u8fc7\u7a0b\u9644\u4ef6\u52a0\u8f7d\u4f18\u5316 - \u52a0\u8f7d\u673a\u5236\u4ece\u5b9e\u65f6\u83b7\u53d6\u4f18\u5316\u4e3a\u672c\u5730\u7f13\u5b58\u52a0\u6587\u4ef6\u670d\u52a1\uff08MinIO\uff09\u4e2d\u6309\u9700\u83b7\u53d6\u3002 - \u5de6\u4fa7\u6a21\u5757\u6811\u6548\u7387\u4f18\u5316 - \u767b\u5f55\u7cfb\u7edf\u52a0\u8f7d\u8017\u65f6\u6027\u80fd\u4f18\u5316 - \u6279\u91cf\u5bfc\u51fa\u5927\u6570\u636e\u91cf\u7528\u4f8b\u6027\u80fd\u4f18\u5316 - \u6d4b\u8bd5\u8ba1\u5212\u6279\u91cf\u5173\u8054\u5927\u6570\u636e\u91cf\u7528\u4f8b\u6027\u80fd\u4f18\u5316

    \u8fd0\u884c\u7a33\u5b9a\u6027\u63d0\u5347\uff1a \u7528\u6237\u5bf9\u4e8e MeterSphere \u5e73\u53f0\u7684\u4f7f\u7528\u89c4\u6a21\u5f88\u591a\u65f6\u5019\u603b\u4f1a\u8d85\u4e4e\u6211\u4eec\u7684\u60f3\u8c61\u3002\u5728 MeterSphere v2.10 LTS \u7248\u672c\u7684\u8fed\u4ee3\u8fc7\u7a0b\u4e2d\uff0c\u6211\u4eec\u63a5\u89e6\u4e86\u5f88\u591a\u5927\u89c4\u6a21\u3001\u9ad8\u9891\u6b21\u4f7f\u7528 MeterSphere \u5f00\u5c55\u65e5\u5e38\u6d4b\u8bd5\u5de5\u4f5c\u7684\u6848\u4f8b\uff0c\u5305\u62ec\u8111\u56fe\u6a21\u5f0f\u4e0b\u7f16\u8f91\u5927\u91cf\u529f\u80fd\u7528\u4f8b\uff0c\u5927\u6279\u91cf\u7684\u63a5\u53e3\u6d4b\u8bd5\u3001UI \u6d4b\u8bd5\u6267\u884c\uff0c\u9ad8\u5e76\u53d1\u9ad8TPS\u7684\u6027\u80fd\u6d4b\u8bd5\u7b49\u4f17\u591a\u4f7f\u7528\u573a\u666f\uff0c\u8fd9\u4e9b\u573a\u666f\u7ed9 MeterSphere \u5e26\u6765\u4e86\u5f88\u5927\u7684\u6311\u6218\uff0c\u4f46\u7ecf\u8fc7\u6211\u4eec\u7684\u4e0d\u61c8\u4f18\u5316\u6700\u7ec8\u90fd\u8fbe\u5230\u4e86\u8ba9\u7528\u6237\u6ee1\u610f\u7684\u6548\u679c\u3002

    MeterSphere v2.10 LTS\u7248\u672c\u4e0d\u4ec5\u5305\u542b\u4e86\u4ee5\u4e0a\u6240\u6709\u771f\u5b9e\u4f7f\u7528\u6848\u4f8b\u4e2d\u7684\u7a33\u5b9a\u6027\u4f18\u5316\u6539\u8fdb\uff0c\u8fd8\u7ecf\u8fc7\u4e86\u6211\u4eec\u957f\u8fbe3\u4e2a\u6708\u7684\u5185\u90e8\u6d4b\u8bd5\u548c\u90e8\u5206\u7528\u6237\u7684\u7070\u5ea6\u6d4b\u8bd5\u3002

    \u7cfb\u7edf\u5b89\u5168\u5347\u7ea7\uff1a

    • \u63a5\u53e3\u6d4b\u8bd5\u7981\u7528\u672c\u5730\u6267\u884c\uff1a \u5728\u4e4b\u524d\u7684\u7248\u672c\u4e2d\uff0c\u63a5\u53e3\u6d4b\u8bd5\u63d0\u4f9b\u4e86\u672c\u5730\u6267\u884c\uff08\u5373\u5728\u63a5\u53e3\u6d4b\u8bd5\u670d\u52a1\u4e2d\u76f4\u63a5\u6267\u884c\uff09\u548c\u8d44\u6e90\u6c60\u6267\u884c\u4e24\u79cd\u65b9\u5f0f\u3002MeterSphere v2.10 LTS\u7248\u672c\u7981\u7528\u4e86\u63a5\u53e3\u672c\u5730\u6267\u884c\uff0c\u548c\u6027\u80fd\u6d4b\u8bd5\u4e00\u6837\uff0c\u5f53\u63a5\u53e3\u8c03\u8bd5\u6216\u8fd0\u884c\u65f6\u4f1a\u5728\u6307\u5b9a\u7684\u8d44\u6e90\u6c60\u4e0a\u8fd0\u884c\uff0c\u540c\u65f6\u8d44\u6e90\u6c60\u8282\u70b9\u4e0a\u7684 node-controller \u670d\u52a1\u9ed8\u8ba4\u4ee5\u5bb9\u5668\u65b9\u5f0f\u8fd0\u884c\uff0c\u8fd9\u6837\u5373\u4fbf\u5b58\u5728\u4e0a\u8ff0\u7528\u4f8b\u8bbe\u8ba1\u4e0d\u5f53\u7684\u95ee\u9898\u4e5f\u53ea\u4f1a\u5f71\u54cd\u5230\u5bf9\u5e94\u8d44\u6e90\u6c60\u8282\u70b9\u4e0a\u7684 node-controller \u5bb9\u5668\uff0c\u63a5\u53e3\u6d4b\u8bd5\u4e3b\u4f53\u670d\u52a1\u8fd8\u53ef\u4ee5\u6b63\u5e38\u4f7f\u7528\uff0cnode-controller \u6240\u5728\u670d\u52a1\u5668\u4e5f\u4e0d\u4f1a\u53d7\u5230\u5f71\u54cd\u3002

    \u6ce8\u610f\uff1a\u5f53\u5b58\u5728\u591a\u4e2a\u53ef\u7528\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60\u65f6\uff0c\u53ef\u4ee5\u5728\u3010\u9879\u76ee\u8bbe\u7f6e->\u5e94\u7528\u7ba1->\u63a5\u53e3\u6d4b\u8bd5\u3011\u83dc\u5355\u4e2d\u914d\u7f6e\u63a5\u53e3\u6267\u884c\u7684\u9ed8\u8ba4\u8d44\u6e90\u6c60\u3002

    • \u6d4b\u8bd5\u7528\u4f8b\u811a\u672c\u9884\u8b66\u901a\u77e5\uff1a \u9664\u4e86\u7981\u7528\u672c\u5730\u6267\u884c\uff0c\u4e3a\u63a5\u53e3\u6d4b\u8bd5\u63d0\u4f9b\u6c99\u7bb1\u6267\u884c\u73af\u5883\u5916\uff0cMeterSphere v2.10 LTS \u7248\u672c\u4e2d\u8fd8\u589e\u52a0\u4e86\u4e3b\u52a8\u9884\u8b66\u673a\u5236\uff0c\u5f53\u7528\u6237\u4fdd\u5b58\u6216\u4fee\u6539\u7684\u7528\u4f8b\u4e2d\u5305\u542b\u811a\u672c\u5185\u5bb9\u65f6\u53ef\u4ee5\u914d\u7f6e\u6307\u5b9a\u7528\u6237\u5ba1\u6838\uff0c\u5f53\u7cfb\u7edf\u68c0\u6d4b\u5230\u5305\u542b\u811a\u672c\u7684\u7528\u4f8b\u65f6\u4f1a\u89e6\u53d1\u7cfb\u7edf\u6d88\u606f\u901a\u77e5\u6307\u5b9a\u5ba1\u6838\u4eba\u5bf9\u8be5\u811a\u672c\u8fdb\u884c\u5ba1\u6838\u3002
    "},{"location":"about/changelog/#v291","title":"v2.9.1","text":"

    2023\u5e745\u670810\u65e5

    \u529f\u80fd\u4f18\u5316

    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u4f18\u5316\u6267\u884c\u8fc7\u7a0b\u8d44\u6e90\u6c60\u6821\u9a8c\u53ca\u7ed3\u679c\u5904\u7406
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u4f18\u5316\u6279\u91cf\u4fdd\u5b58\u73af\u5883\uff0c\u7f16\u8f91\u9875\u9762\u663e\u793a\u73af\u5883
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u7f3a\u9677\u5217\u8868\u5e73\u53f0\u72b6\u6001\u5b57\u6bb5\u5bbd\u5ea6\u663e\u793a\u4f18\u5316
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u5220\u9664\u6d4b\u8bd5\u8ba1\u5212\u6279\u91cf\u5173\u8054\u529f\u80fd\u7528\u4f8b\uff0c\u65e0\u7528\u4ee3\u7801
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u66f4\u65b0\u7528\u4f8b\u9700\u6c42\u65f6\uff0c\u8c03\u7528\u63d2\u4ef6\u9884\u7559\u7684\u9700\u6c42\u66f4\u65b0\u65b9\u6cd5
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u529f\u80fd\u7528\u4f8b\u81ea\u5b9a\u4e49\u5b57\u6bb5\u8868\u5355\u987a\u5e8f\u8ddf\u6a21\u677f\u914d\u7f6e\u4fdd\u6301\u4e00\u81f4
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u5173\u8054\u529f\u80fd\u7528\u4f8b\u9875\u9762\uff0c\u6253\u5f00\u65f6\u6e05\u9664\u4e0a\u6b21\u6392\u5e8f
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u7528\u4f8b\u6b65\u9aa4\u652f\u6301\u63d2\u5165\u6b65\u9aa4
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u6279\u91cf\u63d2\u5165\u6570\u636e\u8fc7\u591a\u5bfc\u81f4OOM\u4f18\u5316\uff0c\u65b0\u589e\u6279\u91cfutils
    • refactor(\u7f3a\u9677\u7ba1\u7406): \u7f3a\u9677\u5217\u8868\u5e73\u53f0\u72b6\u6001\u5217\u652f\u6301\u7b5b\u9009\u548c\u6392\u5e8f
    • refactor(\u7cfb\u7edf\u8bbe\u7f6e): \u7981\u7528\u672c\u5730\u8c03\u8bd5\u540e\u7ed9\u9879\u76ee\u521d\u59cb\u5316\u4e00\u4e2a\u9ed8\u8ba4\u8d44\u6e90\u6c60

    \u95ee\u9898\u4fee\u590d

    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): firefox\u6d4f\u89c8\u5668\u67e5\u770b\u529f\u80fd\u7528\u4f8b\u9875\u9762\u663e\u793a\u5f02\u5e38
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4ece1.20\u5347\u7ea7\u52302.8\u6d4b\u8bd5\u8ba1\u5212\u7528\u4f8b\u8bc4\u8bba\u4e0d\u663e\u793a
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u9996\u9875-\u6211\u521b\u5efa\u7684\u8bc4\u5ba1\u663e\u793a\u6709\u8bef
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u5173\u8054UI\u53ca\u573a\u666f\u7528\u4f8b\u5f39\u7a97\u5de6\u4fa7\u6a21\u5757\u6811\u7b5b\u9009\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212-\u529f\u80fd\u7528\u4f8b\u5217\u8868\u6392\u5e8f\u6709\u8bef
    • fix(\u9879\u76ee\u7ba1\u7406): \u4fee\u590dGit\u6587\u4ef6\u5f15\u5165\u5176\u4ed6\u5206\u652f\u6587\u4ef6\u65f6\u63d0\u793a\u6587\u4ef6\u5df2\u5b58\u5728\u7684bug\uff0c\u5e76\u5728\u8868\u683c\u5c55\u793agit\u6587\u4ef6\u65f6\u589e\u52a0\u5206\u652f\u663e\u793a
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590dgit\u6587\u4ef6\u6dfb\u52a0\u4ee5\u53ca\u62c9\u53d6\u65f6commitId\u5e76\u4e0d\u662f\u6587\u4ef6\u672c\u8eab\u6700\u540e\u4e00\u6b21commitId\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): TCPMock\u540e\u7f6e\u811a\u672c\u652f\u6301\u83b7\u53d6tcp\u8bf7\u6c42\u53c2\u6570
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dV1\u7248\u672c\u65e7\u6570\u636e\u4e2d\u524d\u540e\u7f6eSQL\u7ec4\u4ef6\u53d6\u4e0d\u5230\u73af\u5883\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590djmeter\u4e0d\u586b\u5199\u8def\u5f84\u5bfc\u51fa\u7684jmx\u6587\u4ef6\u5bfc\u5165\u5230ms\u5185\uff0c\u6dfb\u52a0\u8def\u5f84\u65e0\u6cd5\u6d4b\u8bd5\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590djsonschema\u9009\u62e9number\u7c7b\u578b\u6570\u636e\u7cbe\u5ea6\u7f3a\u5931\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dquery\u53c2\u6570\u662fjson\u6570\u636e\u65f6\uff0c\u9009\u62e9\u7f16\u7801\u4e0d\u751f\u6548\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dsql\u81ea\u5b9a\u4e49\u8bf7\u6c42\u6ca1\u6709\u540d\u5b57\uff0c\u751f\u6210\u62a5\u544a\u4e3a\u7a7a\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dswagger\u5bfc\u5165\u6709\u5927\u91cferror\u65e5\u5fd7\u8f93\u51fa\u7684\u7f3a\u9677
    "},{"location":"about/changelog/#v290","title":"v2.9.0","text":"

    2023\u5e744\u670827\u65e5

    \u529f\u80fd\u4f18\u5316

    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u6279\u91cf\u5bfc\u51fa\u529f\u80fd\u7528\u4f8b\u6027\u80fd\u4f18\u5316
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u6d4b\u8bd5\u8ba1\u5212\u5173\u8054\u7528\u4f8b\u6027\u80fd\u4f18\u5316
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u7528\u4f8b\u8bc4\u5ba1\u5217\u8868\u589e\u52a0\u6807\u7b7e\u5217
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u9ad8\u7ea7\u641c\u7d22\u652f\u6301\u8f93\u5165\u591a\u4e2a\u6807\u7b7e\u641c\u7d22
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a5\u53e3\u5bfc\u5165\u903b\u8f91\u4f18\u5316
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a5\u53e3CASE\u652f\u6301\u901a\u8fc7\u8def\u5f84\u5feb\u6377\u641c\u7d22
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a5\u53e3\u573a\u666f\u5217\u8868\u5c55\u793a\u5b9a\u65f6\u4efb\u52a1\u5217
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a5\u53e3\u81ea\u52a8\u5316\u6587\u6863\u7ed3\u6784\u65ad\u8a00\u589e\u52a0\u590d\u9009\u6846\u64cd\u4f5c
    • UI \u6d4b\u8bd5\uff1aUI\u573a\u666f\u5217\u8868\u5c55\u793a\u5b9a\u65f6\u4efb\u52a1\u5217
    • \u901a\u7528\u529f\u80fd\uff1a\u9996\u6b21\u767b\u5f55\u7cfb\u7edf\u52a0\u8f7d\u8017\u65f6\u4f18\u5316

    \u95ee\u9898\u4fee\u590d

    • fix\uff08\u6d4b\u8bd5\u8ddf\u8e2a\uff09\uff1a\u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u5931\u8d25\u91cd\u8bd5\u65f6\u5bfc\u81f4\u8ba1\u5212\u4e2d\u63a5\u53e3\u811a\u672c\u7684\u5faa\u73af\u6ca1\u6709\u88ab\u6267\u884c\u5b8c\u5168\u7684\u95ee\u9898\uff08GitHub #23509\uff09
    • fix\uff08\u6d4b\u8bd5\u8ddf\u8e2a\uff09\uff1a\u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u6267\u884c\u65f6\u81ea\u5b9a\u4e49\u5b57\u6bb5\u6587\u672c\u6846\u8f93\u5165{}\u4f1a\u663e\u793a\u4e3a[object Object]\u7684\u95ee\u9898\uff08GitHub #23515\uff09
    • fix\uff08\u6d4b\u8bd5\u8ddf\u8e2a\uff09\uff1a\u4fee\u590d\u4ece1.20LTS\u7248\u672c\u5347\u7ea7\u5230\u6700\u65b0\u7248\u672c\u7528\u4f8b\u6267\u884c\u4e0a\u4f20\u7684\u622a\u56fe\u548c\u8bc4\u8bba\u67e5\u8be2\u4e0d\u5230\u7684\u95ee\u9898\uff08GitHub #23500\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590dJMeter\u4e0d\u586b\u5199\u8def\u5f84\u5bfc\u51fa\u7684jmx\u6587\u4ef6\u5bfc\u5165\u5230ms\u5185\u6dfb\u52a0\u8def\u5f84\u65e0\u6cd5\u6d4b\u8bd5\u7684\u95ee\u9898\uff08GitHub #23416\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590dCASE \u6267\u884c\u5b8c\u8bf7\u6c42\u540e\uff0c\u624b\u52a8\u4fee\u6539\u9884\u89c8\u54cd\u5e94\u4f53\u4e3a json\uff0c\u518d\u6b21\u6267\u884c\u9884\u89c8\u683c\u5f0f\u6709\u8bef\u7684\u95ee\u9898\uff08GitHub #23350\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u63a5\u53e3\u7528\u4f8b\u6267\u884c\u5b8c\u6210\uff0c\u901a\u8fc7\u7387\u6570\u636e\u4e0d\u4f1a\u81ea\u52a8\u66f4\u65b0\u7684\u95ee\u9898\uff08GitHub #23386\uff09
    "},{"location":"about/changelog/#v280","title":"v2.8.0","text":"

    2023\u5e743\u670823\u65e5

    \u529f\u80fd\u4f18\u5316

    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u6027\u80fd\u4f18\u5316
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u6587\u4ef6\u5b58\u5728\u91cd\u590d\u63a5\u53e3\u7684\u5bfc\u5165\u4f18\u5316
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u8bef\u62a5\u673a\u5236\u4e0e\u5931\u8d25\u91cd\u8bd5\u673a\u5236\u4f18\u5316
    • UI \u6d4b\u8bd5\uff1aUI\u573a\u666f\u81ea\u52a8\u5316\u6279\u91cf\u6267\u884c\u6548\u7387\u4f18\u5316
    • \u901a\u7528\u529f\u80fd\uff1a\u7cfb\u7edf\u5de6\u4fa7\u6a21\u5757\u6811\u52a0\u8f7d\u6548\u7387\u4f18\u5316

    \u95ee\u9898\u4fee\u590d

    • fix\uff08\u6d4b\u8bd5\u8ddf\u8e2a\uff09\uff1a\u4fee\u590d\u5728\u6d4b\u8bd5\u8ba1\u5212\u4e2d\u9009\u62e9\u73af\u5883\u65f6\u65e0\u6cd5\u9009\u62e9\u591a\u4e2a\u9879\u76ee\u73af\u5883\uff0c\u5bfc\u81f4\u6267\u884c\u6d4b\u8bd5\u8ba1\u5212\u65f6\u4e00\u76f4running\u7684\u95ee\u9898\uff08GitHub #22858\uff09
    • fix\uff08\u6d4b\u8bd5\u8ddf\u8e2a\uff09\uff1a\u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u6267\u884c\u62a5\u544a\u540e\u5728\u7ebf\u770b\u5355\u6b65\u7ed3\u679c\u662f\u6210\u529f\u7684\uff0c\u4f46\u662f\u5bfc\u51fa\u5c31\u53d8\u6210\u4e86\u5931\u8d25\u7684\u95ee\u9898\uff08GitHub #22067\uff09
    • fix\uff08\u6d4b\u8bd5\u8ddf\u8e2a\uff09\uff1a\u4fee\u590dAzure Devops \u5e73\u53f0\u540c\u6b65\u7f3a\u9677\u62a5\u6570\u7ec4\u8d8a\u754c\u7684\u95ee\u9898\uff08GitHub #22943\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u8fd0\u884c\u73af\u5883Http\u57df\u540d\u914d\u7f6e\u5305\u542b\u7aef\u53e3\u53f7\u4f1a\u5bfc\u81f4\u63a5\u53e3\u8bf7\u6c42URL\u4e2d\u591a\u4e86\"[ ]\"\u7684\u95ee\u9898\uff08GitHub #22857\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590dTCP\u534f\u8bae\u7684\u63a5\u53e3\u5b9a\u4e49\u672a\u6309\u7167\u9009\u53d6\u7684\u7f16\u7801\u683c\u5f0f\u52a8\u6001\u751f\u6210xml\u8868\u5934\u7684\u95ee\u9898\uff08GitHub #22540\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u63a5\u53e3\u5b9a\u4e49\u8bbe\u7f6e\u4e86swagger\uff08\u6709\u6dfb\u52a0\u8bf7\u6c42\u53c2\u6570\uff09\u5b9a\u65f6\u4efb\u52a1\uff0c\u4e0d\u4f1a\u81ea\u52a8\u89e6\u53d1\u7684\u95ee\u9898\uff08GitHub #22044\uff09
    • fix\uff08UI \u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u5143\u7d20\u5e93&UI\u81ea\u52a8\u5316\u5217\u8868\u8bbe\u7f6e\u8868\u5934\u540e\uff0c\u9020\u6210\u6279\u91cf\u64cd\u4f5c\u7684\u70b9\u51fb\u6309\u94ae\u6ca1\u6709\u7684\u95ee\u9898\uff08GitHub #22914\uff09
    • fix\uff08UI \u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u573a\u666f\u5f15\u7528\u540e\u540d\u79f0\u663e\u793a\u4e0d\u6b63\u786e\u7684\u95ee\u9898\uff08GitHub #22914\uff09
    • fix\uff08UI \u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u672c\u5730\u8c03\u8bd5\u65f6\uff0c\u70b9\u51fb\u201c\u505c\u6b62\u201d\u6309\u94ae\uff0c\u6d4f\u89c8\u5668\u6ca1\u6709\u7684\u95ee\u9898\uff08GitHub #22557\uff09
    "},{"location":"about/changelog/#v270","title":"v2.7.0","text":"

    2023\u5e742\u670823\u65e5

    \u65b0\u589e\u529f\u80fd

    • \u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757UX\u4ea4\u4e92\u5347\u7ea7
    • \u7528\u4f8b\u8bc4\u5ba1\u652f\u6301\u591a\u4eba\u8bc4\u5ba1
    • \u8fd0\u884c\u914d\u7f6e\u652f\u6301\u5931\u8d25\u91cd\u8bd5\uff08X-Pack\u529f\u80fd\u5f00\u653e\u81f3\u5f00\u6e90\u7248\uff09
    • \u63a5\u53e3\u6d4b\u8bd5\u652f\u6301\u4e00\u952e\u5931\u8d25\u91cd\u8dd1\uff08X-Pack\u529f\u80fd\u5f00\u653e\u81f3\u5f00\u6e90\u7248\uff09
    • \u6587\u4ef6\u7ba1\u7406\u652f\u6301\u5bf9\u63a5\u7b2c\u4e09\u65b9\u4ed3\u5e93\uff08X-Pack\u529f\u80fd\u5f00\u653e\u81f3\u5f00\u6e90\u7248\uff09
    • \u4e00\u7ea7\u529f\u80fd\u6a21\u5757\u542f\u7528/\u7981\u7528\uff08X-Pack\u529f\u80fd\u5f00\u653e\u81f3\u5f00\u6e90\u7248\uff09

    \u529f\u80fd\u4f18\u5316

    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u652f\u6301\u6dfb\u52a0\u529f\u80fd\u7528\u4f8b\u4f9d\u8d56\u5173\u7cfb\u5e76\u751f\u6210\u62d3\u6251\u56fe\uff08X-Pack\u529f\u80fd\u5f00\u653e\u81f3\u5f00\u6e90\u7248\uff09
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u67e5\u770b\u5f15\u7528\u5173\u7cfb\u5217\u8868\u65b0\u589e\u201c\u590d\u5236\u201d\u5173\u7cfb\u7684\u6570\u636e
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u652f\u6301\u6dfb\u52a0\u63a5\u53e3\u4f9d\u8d56\u5173\u7cfb\u5e76\u751f\u6210\u62d3\u6251\u56fe\uff08X-Pack\u529f\u80fd\u5f00\u653e\u81f3\u5f00\u6e90\u7248\uff09
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u652f\u6301\u81ea\u52a8\u751f\u6210\u63a5\u53e3\u7528\u4f8b\u6570\u636e\uff08X-Pack\u529f\u80fd\u5f00\u653e\u81f3\u5f00\u6e90\u7248\uff09
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u652f\u6301\u914d\u7f6e\u7981\u7528\u672c\u5730\u6267\u884c\u7684\u5b89\u5168\u7b56\u7565\uff08X-Pack\u529f\u80fd\u5f00\u653e\u81f3\u5f00\u6e90\u7248\uff09
    • \u901a\u7528\u529f\u80fd\uff1a\u652f\u6301\u914d\u7f6e\u79df\u6237\u4f7f\u7528\u914d\u989d\uff08X-Pack\u529f\u80fd\u5f00\u653e\u81f3\u5f00\u6e90\u7248\uff09
    • \u901a\u7528\u529f\u80fd\uff1a\u652f\u6301\u53d1\u9001\u9879\u76ee\u5b9a\u65f6\u62a5\u544a\uff08X-Pack\u529f\u80fd\u5f00\u653e\u81f3\u5f00\u6e90\u7248\uff09

    \u95ee\u9898\u4fee\u590d

    • fix\uff08\u5b89\u5168\u6f0f\u6d1e\uff09\uff1a\u4fee\u590d\u6587\u4ef6\u4e0b\u8f7d\u8bbf\u95ee\u6743\u9650\u6821\u9a8c\u63a7\u5236\u4e0d\u5f53\u7684\u7f3a\u9677\uff08CVE-2023-25573\u53caCVE-2023-25814\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590dIDEA\u63d2\u4ef6\u5bfc\u51fa\u90e8\u5206\u63a5\u53e3\u65f6\u62a5\u9519\u7684\u95ee\u9898\uff08GitHub #21213\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u5728\u63a5\u53e3\u5b9a\u4e49\u6a21\u5757\u7f16\u8f91CASE\u65f6\uff0c\u4fee\u6539\u540e\u7f6e\u64cd\u4f5c\u4e2d\u7684\u811a\u672c\u4e0d\u751f\u6548\u7684\u95ee\u9898\uff08GitHub #21425\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u4f7f\u7528\u73af\u5883\u7ec4\u6267\u884c\u573a\u666f\u7528\u4f8b\u65f6\uff0c\u4e0d\u80fd\u4fdd\u5b58\u6570\u636e\u5230\u53e6\u5916\u4e00\u4e2a\u9879\u76ee\u7684\u73af\u5883\u53d8\u91cf\u95ee\u9898\uff08GitHub #21345\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u63a5\u53e3\u4fdd\u5b58\u63d0\u793a\u5bf9\u8bdd\u6846\u6709\u6587\u5b57\u9519\u8bef\u7684\u95ee\u9898\uff08GitHub #21367\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u63a5\u53e3\u62a5\u544a\u5bfc\u51faPDF\u6587\u4ef6\u542b\u6709\u7a7a\u767d\u9875\u7684\u95ee\u9898\uff08GitHub #21515\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u5728\u67e5\u770b\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u4e2d\u7684\u65ad\u8a00\u5931\u8d25\u811a\u672c\u65f6\uff0c\u5f39\u51fa\u7684\u5bf9\u8bdd\u6846\u663e\u793a\u5c42\u7ea7\u9519\u8bef\u7684\u95ee\u9898\uff08GitHub #21266\uff09
    • fix\uff08\u7cfb\u7edf\u8bbe\u7f6e\uff09\uff1a\u4fee\u590d\u5347\u7ea7\u5230v2.4.1\u540e/project/list\u67e5\u8be2\u63a5\u53e3\u4e0d\u652f\u6301\u53c2\u6570\u8fc7\u6ee4\u7684\u95ee\u9898\uff08GitHub #20961\uff09
    "},{"location":"about/changelog/#v261","title":"v2.6.1","text":"

    2023\u5e742\u67087\u65e5

    \u529f\u80fd\u4f18\u5316

    • refactor(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u6539\u67e5\u8be2\u6a21\u7248\u7684\u63a5\u53e3\u8c03\u7528
    • refactor(\u63a5\u53e3\u5b9a\u4e49): \u4f18\u5316\u83b7\u53d6\u5f53\u524d\u7528\u6237\u540d\u79f0\u7684\u65b9\u6cd5
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): log\u4f18\u5316\u53bb\u9664\u4e0d\u5fc5\u8981\u5e72\u6270\u65e5\u5fd7\uff0c\u589e\u52a0jvm\u4fe1\u606f
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u5386\u53f2\u6570\u636e\u517c\u5bb9\uff0c\u9ed8\u8ba4\u4e0d\u5f00\u542f\u53d8\u91cf\u89c4\u5219
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u573a\u666f\u53d8\u91cf\u5f53\u6240\u6709\u4f18\u5148\u89c4\u5219\u4e0d\u9009\u65f6\uff0c\u9ed8\u8ba4\u8fc7\u7a0b\u53d8\u91cf\u4f18\u5148\u5e76\u517c\u5bb9\u5386\u53f2\u6570\u636e

    \u95ee\u9898\u4fee\u590d

    • fix(\u5de5\u4f5c\u53f0): \u5de5\u4f5c\u53f0\u6211\u7684\u5f85\u529e\u5c55\u793a\u4e86\u5df2\u5173\u95ed\u7684\u7f3a\u9677
    • fix(\u5de5\u4f5c\u53f0): \u4fee\u590d\u63a5\u53e3\u5b9a\u4e49\u4ee5\u53ca\u63a5\u53e3\u7528\u4f8b\u5728\u5207\u6362\u5f85\u5b8c\u6210\u65f6\u8fc7\u6ee4\u6761\u4ef6\u4e0d\u6e05\u7a7a\u95ee\u9898
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590dcase\u6dfb\u52a0\u540e\u7f6e\u811a\u672c\uff0c\u591a\u6b21\u4fdd\u5b58\uff0c\u5185\u5bb9\u8fd8\u662f\u4e0a\u4e00\u6b21\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u63a8\u8350jsonpath\u65ad\u8a00\u7d22\u5f15\u8d85\u8fc710\u65e0\u6cd5\u751f\u6210\u9884\u671f\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u5b9a\u65f6\u4efb\u52a1\u9009\u62e9cron\u8868\u8fbe\u5f0f\u65e0\u6cd5\u9009\u62e9\u5e74\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u73af\u5883\u53d8\u91cf\u663e\u793a\u591a\u9009\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u573a\u666f\u8de8\u9879\u76ee\u6267\u884c\u65e0\u6cd5\u4fdd\u5b58\u522b\u7684\u9879\u76ee\u7684\u73af\u5883\u53d8\u91cf\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u6267\u884c\u5faa\u73af\u63a7\u5236\u5668\u4e0b\u9762\u7684\u6b65\u9aa4\u6ca1\u6709\u7ed3\u679c\u72b6\u6001\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u5bfc\u5165\u90e8\u5206postman\u6587\u4ef6\u62a5\u9519\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u6587\u5b57\u7edf\u4e00\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u90e8\u5206\u63a5\u53e3\u5bfc\u51faswagger\u6587\u4ef6\u62a5\u9519\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u5bfc\u5165\u9875\u9762\u4fdd\u7559swagger\u4e0a\u6b21\u914d\u7f6e\u53c2\u6570\u8bb0\u5f55\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u6539\u8fdb\u63a5\u53e3\u6d4b\u8bd5\u9996\u9875\u7684\u63a5\u53e3\u7528\u4f8b\u7edf\u8ba1\u65b9\u6cd5
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u7981\u7528\u672c\u5730\u6267\u884c\u540e\u5355\u6b65\u8c03\u8bd5\u63d0\u793a\u9519\u8bef\u95ee\u9898
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u6267\u884c\u8fc7\u7a0b\u5305\u62ecCSV\uff0c\u90e8\u5206\u53c2\u6570\u6ca1\u6709\u521d\u59cb\u5316\u7684\u95ee\u9898
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u67e5\u8be2\u9879\u76ee\u63a5\u53e3\u652f\u6301\u6839\u636eJira\u548cZentao\u7684\u5173\u8054ID\u67e5\u8be2
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u67e5\u770bcase\u65ad\u8a00\u811a\u672c\u4e0d\u663e\u793a\u7684\u7f3a\u9677
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7528\u4f8b\u5173\u8054\u591a\u5c42\u7ea7\u9700\u6c42\u663e\u793a\u4e3a\u7a7a
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u8111\u56fe\u590d\u5236\u7c98\u8d34\u540e\u6570\u636e\u5c55\u793a\u9519\u8bef
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7528\u4f8b\u5217\u8868\u5bfc\u5165\u591a\u9009\u8f93\u5165\u5b57\u6bb5\u65f6\uff0c \u89e3\u6790\u503c\u6709\u8bef
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u82f1\u6587\u73af\u5883\u4e0b\uff0c\u7528\u4f8b\u5bfc\u5165\u8d23\u4efb\u4eba\u5931\u8d25
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u82f1\u6587\u8bed\u5883\u4e0b\uff0c\u7528\u4f8b\u5bfc\u5165\u7528\u4f8b\u7b49\u7ea7\u5931\u8d25
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u7528\u4f8b\u5927\u6279\u91cf\u6267\u884c\u8d85\u65f6\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u8111\u56fe\u66f4\u65b0\u7528\u4f8b\u540e\u6267\u884c\u4eba\u6ca1\u6709\u66f4\u65b0
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u529f\u80fd\u7528\u4f8b\u5bfc\u5165\u591a\u503c\u8f93\u5165\u540e\uff0c\u5217\u8868\u4e0d\u5c55\u793a\u6570\u636e
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u8111\u56fe\u63d0\u793a\u9519\u8bef\u4fe1\u606f\u540e\uff0c\u518d\u6b21\u4fdd\u5b58\u4f1a\u5bfc\u81f4\u7528\u4f8b\u4e22\u5931
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u53d6\u6d88\u8bb0\u4f4f\u8de8\u9875\u9009\u62e9\u7684\u8bb0\u5f55\u524d\u4e00\u9875\u7684\u6570\u636e\u4e0d\u80fd\u5220\u9664\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u5bfc\u51fa\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u7528\u4f8b\u8d44\u6e90\u6c60\u73af\u5883\u663e\u793a\u4e0d\u6b63\u786e\u7684\u7f3a\u9677
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u4e2d\u6279\u91cf\u6267\u884c\u63a5\u53e3\u7528\u4f8b\u6ca1\u6709\u6309\u7167\u8868\u683c\u987a\u5e8f\u6267\u884c\u7684\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ba1\u5212): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u53d1\u9001\u901a\u77e5\u65f6\u672a\u6267\u884c\u72b6\u6001\u6ca1\u6709\u7edf\u8ba1\u6570\u7684\u95ee\u9898
    • fix(\u901a\u7528\u529f\u80fd): \u5168\u9009\u6846\u4e0b\u62c9\u5217\u8868\uff0c\u70b9\u51fb\u9009\u62e9\u6240\u6709\u6570\u636e\u6216\u8005\u53ef\u89c1\u6570\u636e\uff0c\u4e0d\u51fa\u73b0\u52fe\u9009\u6548\u679c
    "},{"location":"about/changelog/#v260","title":"v2.6.0","text":"

    2023\u5e741\u670812\u65e5

    \u65b0\u589e\u529f\u80fd

    • UI\u81ea\u52a8\u5316\u6d4b\u8bd5\u6a21\u5757\u4e0e\u73af\u5883\u7ba1\u7406\u5168\u9762\u6253\u901a\uff08X-Pack\uff09
    • \u6d4b\u8bd5\u8ba1\u5212\u5173\u8054\u7528\u4f8b\u652f\u6301\u8bb0\u4f4f\u8de8\u9875\u9009\u62e9\u7684\u8bb0\u5f55
    • \u63a5\u53e3\u5b9a\u4e49\u5217\u8868\u652f\u6301\u6279\u91cf\u590d\u5236\u6307\u5b9a\u7248\u672c\u7684CASE\u548cMOCK\u6570\u636e\uff08X-Pack\uff09
    • \u53d8\u66f4Jenkins Job\u8fd0\u884c\u7ed3\u679c\u4e3a\u6d4b\u8bd5\u8ba1\u5212\u7528\u4f8b\u8fd0\u884c\u7ed3\u679c

    \u529f\u80fd\u4f18\u5316

    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u8c03\u6574\u6d4b\u8bd5\u8ba1\u5212\u5b9e\u9645\u7ed3\u679c\u5b57\u6570\u9650\u5236\uff08\u5c06300\u5b57\u6570\u8c03\u6574\u4e3a500\uff09
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u5b9a\u65f6\u4efb\u52a1\u6267\u884c\u7684\u6d4b\u8bd5\u8ba1\u5212\u751f\u6210\u62a5\u544a\u540e\u652f\u6301\u7f16\u8f91\u62a5\u544a\u603b\u7ed3
    • \u63a5\u53e3\u6d4b\u8bd5\uff1aMOCK\u7684\u540e\u7f6e\u811a\u672c\u652f\u6301\u83b7\u53d6\u4e0d\u540c\u683c\u5f0f\u7684\u8bf7\u6c42\u6570\u636e
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u8fd0\u884c\u73af\u5883\u5217\u8868\u652f\u6301\u6a21\u7cca\u641c\u7d22
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u5355\u6b65\u8c03\u8bd5\u7528\u4f8b\u6216\u573a\u666f\u6b65\u9aa4\u65f6\u54cd\u5e94\u5185\u5bb9\u81ea\u52a8\u5c55\u5f00
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a5\u53e3TEST\u652f\u6301\u4fdd\u7559\u6700\u8fd1\u4e00\u6b21\u6267\u884c\u8bb0\u5f55
    • \u901a\u7528\u529f\u80fd\uff1a\u6807\u7b7e\u5b57\u6570\u8fc7\u591a\u5c55\u793a\u4f18\u5316
    • \u901a\u7528\u529f\u80fd\uff1a\u63a5\u53e3\u573a\u666f\u5b9a\u65f6\u4efb\u52a1\u901a\u77e5\u589e\u52a0\u914d\u7f6e\u6d4b\u8bd5\u62a5\u544a\u514d\u767b\u5f55\u53c2\u6570\uff08X-Pack\uff09

    \u95ee\u9898\u4fee\u590d

    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u901a\u8fc7\u6279\u91cf\u4fee\u6539\u7684\u65b9\u5f0f\u4fee\u6539\u6307\u5b9a\u81ea\u5b9a\u4e49\u5b57\u6bb5\u4f1a\u5bfc\u81f4\u5168\u90e8\u5b57\u6bb5\u88ab\u4fee\u6539\u7684\u95ee\u9898\uff08GitHub #21075\uff09
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dAPI\u81ea\u52a8\u5316\u9996\u9875\u7edf\u8ba1\u4fe1\u606f\u5728\u5207\u6362table\u9875\u540e\u76f8\u5173\u7edf\u8ba1\u4fe1\u606f\u4e0d\u5c55\u793a\u7684\u95ee\u9898\uff08GitHub #21120\uff09
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u4f7f\u7528\u63a5\u53e3\u81ea\u52a8\u5316\u8f6c\u6027\u80fd\u6d4b\u8bd5\u6267\u884c\u65f6\u83b7\u53d6\u4e0d\u5230\u8fd0\u884c\u73af\u5883\u7684\u73af\u5883\u53d8\u91cf\u7684\u95ee\u9898\uff08GitHub #21150\uff09
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u4e2d\u5355\u72ec\u6267\u884c\u7528\u4f8b\u4e0d\u80fd\u8c03\u7528\u73af\u5883\u53d8\u91cf\u7684\u95ee\u9898\uff08GitHub #21116\uff09
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590d\u663e\u793a\u8bbe\u7f6e\u4fee\u6539\u7cfb\u7edf\u540d\u79f0\u4e0d\u751f\u6548\u7684\u95ee\u9898\uff08GitHub #21247\uff09
    "},{"location":"about/changelog/#v251","title":"v2.5.1","text":"

    2022\u5e7412\u670830\u65e5

    \u529f\u80fd\u4f18\u5316

    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u4f18\u5316\u6a21\u5757\u6811\u591a\u6b21\u4fdd\u5b58
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u7981\u6b62\u6279\u91cf\u5220\u9664\u8fd0\u884c\u4e2d\u7684\u6d4b\u8bd5\u8ba1\u5212

    \u95ee\u9898\u4fee\u590d

    • fix(\u5b89\u5168\u6f0f\u6d1e): \u4fee\u590d\u672a\u68c0\u67e5\u6587\u4ef6\u540d\u5bfc\u81f4\u6587\u4ef6\u53ef\u80fd\u88ab\u4e0a\u4f20\u5230\u4efb\u610f\u8def\u5f84\u7684\u95ee\u9898 (CVE-2022-46178)
    • fix(\u5de5\u4f5c\u53f0): \u5de5\u4f5c\u53f0\u9996\u9875\u7f3a\u9677\u7edf\u8ba1\u6709\u8bef
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dJson\u6570\u7ec4\u65e0\u6cd5\u4f7f\u7528mock\u6570\u636e\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590djson\u683c\u5f0f\u7684\u8bf7\u6c42\u6570\u636e\u5192\u53f7\u88ab\u66ff\u6362\u6210\u7b49\u53f7\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dswagger3.0\u6587\u4ef6\u5bfc\u5165\u5bf9content\u7684example\u6ca1\u6709\u5904\u7406\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u63a5\u53e3\u53c2\u6570\u6dfb\u52a0mock\u6570\u636e\u65f6\u6e05\u7a7a\u5386\u53f2\u51fd\u6570
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u7edf\u4e00\u63a5\u53e3\u6d4b\u8bd5\u8f6c\u6027\u80fd\u6d4b\u8bd5\u65f6storage\u5e26\u7684\u53c2\u6570
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u91cd\u590d\u521b\u5efa\u672a\u89c4\u5212\u63a5\u53e3\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u548c\u573a\u666f\u8f6c\u6027\u80fd\u6d4b\u8bd5\u65f6\u4f1a\u5076\u53d1\u91cd\u590djmx\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u70b9\u51fb\u573a\u666f\u62a5\u544a\u8df3\u8f6c\u94fe\u63a5\u6ca1\u6709\u8df3\u8f6c\u5230\u5bf9\u5e94\u9879\u76ee\u7684\u7f3a\u9677
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212-\u573a\u666f/\u6027\u80fd\u6d4b\u8bd5\u62a5\u544a \u4e0d\u663e\u793a\u8fd0\u884c\u6a21\u5f0f\u548c\u8d44\u6e90\u6c60
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u529f\u80fd\u7528\u4f8b\u4e0d\u5c55\u793a\u81ea\u5b9a\u4e49\u5b57\u6bb5
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u529f\u80fd\u7528\u4f8b\u5bfc\u51fa\u591a\u503c\u8f93\u5165\u81ea\u5b9a\u4e49\u5b57\u6bb5\u4e3a\u7a7a
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u4fdd\u5b58\u62a5\u544a\u5185\u5bb9\u65f6\u4e0d\u8d4b\u5f00\u59cb\u65f6\u95f4\u548c\u7ed3\u675f\u65f6\u95f4
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u67e5\u8be2\u62a5\u544a\u65f6\u65e0\u6cd5\u67e5\u51fa\u5df2\u5220\u9664\u4eba\u6267\u884c\u7684\u62a5\u544a
    "},{"location":"about/changelog/#v250","title":"v2.5.0","text":"

    2022\u5e7412\u670827\u65e5

    \u65b0\u589e\u529f\u80fd

    • \u5de5\u4f5c\u53f0UX\u4ea4\u4e92\u5347\u7ea7
    • \u63a5\u53e3\u6d4b\u8bd5\u9996\u9875\u589e\u52a0\u201c\u7248\u672c\u201d\u7edf\u8ba1\u53e3\u5f84\uff08X-Pack\uff09
    • \u63a5\u53e3\u5b9a\u4e49\u8bf7\u6c42\u53c2\u6570\u4ea4\u4e92\u4f18\u5316
    • \u6d4b\u8bd5\u62a5\u544a\u652f\u6301\u5c55\u793a\u8fd0\u884c\u6a21\u5f0f\u4ee5\u53ca\u8fd0\u884c\u7684\u8d44\u6e90\u6c60
    • \u65b0\u589e\u8d85\u7ea7\u7ba1\u7406\u5458\u7528\u6237\u7ec4

    \u529f\u80fd\u4f18\u5316

    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u670d\u52a1\u96c6\u6210\u5bf9\u63a5\u7b2c\u4e09\u65b9\u5e73\u53f0\u5b9e\u73b0\u63d2\u4ef6\u5316\uff08\u76ee\u524d\u652f\u6301\u7985\u9053\u3001Jira\uff09
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u6d4b\u8bd5\u8ddf\u8e2a\u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\u652f\u6301\u5173\u8054UI\u6d4b\u8bd5\u7528\u4f8b
    • \u63a5\u53e3\u6d4b\u8bd5\uff1aMQTT\u63d2\u4ef6\u53d6\u6d88\u8fde\u63a5\u540d\u5fc5\u586b
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u573a\u666f\u5d4c\u5957\u5f15\u7528\u7684\u53d8\u91cf\u53d6\u503c\u4f18\u5316
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u652f\u6301\u914d\u7f6e\u81ea\u52a8\u91cd\u5b9a\u5411
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u573a\u666f\u53d8\u91cf-\u8ba1\u6570\u5668\u652f\u6301\u53c2\u6570\u5316
    • \u63a5\u53e3\u6d4b\u8bd5\uff1ajson\u7ed3\u6784\u5316\u7684\u65f6\u5019\u4f1a\u63d0\u4f9bnull\u7c7b\u578b\u6765\u652f\u6301\u4f20null\u503c
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a5\u53e3\u6d4b\u8bd5\u524d\u540e\u7f6e\u811a\u672c\u652f\u6301beanshell\u5904\u7406\u5668
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a5\u53e3\u5bfc\u5165\u903b\u8f91\u4f18\u5316\uff08\u652f\u6301\u7248\u672c\u5bf9\u6bd4\uff09
    • UI\u6d4b\u8bd5\uff1aUI\u6d4b\u8bd5\u7b2c\u4e00\u6b65\u652f\u6301\u903b\u8f91\u63a7\u5236\u5668\uff08X-Pack\uff09
    • UI\u6d4b\u8bd5\uff1aUI\u6d4b\u8bd5\u8be6\u60c5\u9875\u6279\u91cf\u7f16\u8f91\u589e\u52a0\u65ad\u8a00\u914d\u7f6e\u7684\u9009\u9879\uff08X-Pack\uff09
    • \u901a\u7528\u529f\u80fd\uff1a\u6d88\u606f\u901a\u77e5\u589e\u52a0\u5b9a\u65f6\u6e05\u7406\u673a\u5236
    • \u901a\u7528\u529f\u80fd\uff1aJenkins\u751f\u6210\u7684\u62a5\u544a\u94fe\u63a5\u652f\u6301\u914d\u7f6e\u514d\u767b\u5f55\uff08X-Pack\uff09

    \u95ee\u9898\u4fee\u590d

    • fix\uff08\u5b89\u5168\u6f0f\u6d1e\uff09\uff1a\u4fee\u590dIssueProxyResourceService::getMdImageByUrl \u4e2d\u7684\u670d\u52a1\u5668\u7aef\u8bf7\u6c42\u4f2a\u9020 (CVE-2022-23544)
    • fix\uff08\u5b89\u5168\u6f0f\u6d1e\uff09\uff1a\u4fee\u590dApiTestCaseService::deleteBodyFiles \u4e2d\u7684\u8def\u5f84\u6ce8\u5165 (CVE-2022-23512)
    • fix\uff08\u6d4b\u8bd5\u8ddf\u8e2a\uff09\uff1a\u4fee\u590d\u529f\u80fd\u7528\u4f8b\u5217\u8868\uff0c\u5168\u9009\u518d\u5c06\u90e8\u5206\u7528\u4f8b\u53d6\u6d88\u52fe\u9009\uff0c\u70b9\u51fb\u6279\u91cf\u5220\u9664\u540e\u4ecd\u4f1a\u5220\u9664\u6240\u6709\u7528\u4f8b\u7684\u95ee\u9898\uff08GitHub #20553\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u63a5\u53e3\u7f16\u8f91\uff0c\u5f00\u542f\u540c\u6b65case\u6216\u8005\u53d8\u66f4\u901a\u77e5\u4fdd\u5b58\u540e\u62a5\u9519\u7684\u95ee\u9898\uff08GitHub #20376\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u573a\u666f\u6d4b\u8bd5\u62a5\u544a\u5bfc\u51fa\u7684PDF\u6587\u4ef6\u67e5\u770b\u65f6\u6bd4\u8f83\u6a21\u7cca\u7684\u95ee\u9898\uff08GitHub #20738\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u73af\u5883\u914d\u7f6e\u91cc\u9762\u7684\u8bf7\u6c42\u5934Cookie\u548c\u5355\u4e2a\u63a5\u53e3\u91cc\u9762\u8bf7\u6c42\u5934\u51b2\u7a81\u7684\u95ee\u9898\uff08GitHub #20467\uff09
    • fix\uff08UI\u6d4b\u8bd5\uff09\uff1a\u4fee\u590dUI\u8fdb\u884cdiv\u5143\u7d20\u62d6\u62fd\u65f6\u81ea\u52a8\u5168\u5c4f\uff0c\u90e8\u5206\u5143\u7d20\u5b9a\u4f4d\u8def\u5f84\u65e0\u6cd5\u8bc6\u522b\u7684\u95ee\u9898\uff08GitHub #20447\uff09
    • fix\uff08\u6027\u80fd\u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u6027\u80fd\u6d4b\u8bd5\u8bbe\u7f6e\u5b8c\u8d44\u6e90\u6c60\u4e2d\u538b\u529b\u673a\u7684\u6700\u5927\u5e76\u53d1\u6570\uff0c\u538b\u6d4b\u6267\u884c\u65f6\u6ca1\u9650\u5236\u4f4f\u5355\u4e2a\u538b\u529b\u673a\u7684\u6700\u5927\u5e76\u53d1\u6570\u7684\u95ee\u9898\uff08GitHub - #20103\uff09
    • fix\uff08\u901a\u7528\u529f\u80fd\uff09\uff1a\u4fee\u590d\u4efb\u52a1\u4e2d\u5fc3\u63a5\u53e3\u8bf7\u6c42\u65f6\u95f4\u957f\uff0c\u5bfc\u81f4\u4efb\u52a1\u4e2d\u5fc3\u8bbf\u95ee\u65f6\u7a7a\u767d\u9875\u7ecf\u5e38\u51fa\u73b0\u7684\u95ee\u9898\uff08GitHub #20425\uff09
    "},{"location":"about/changelog/#v241","title":"v2.4.1","text":"

    2022\u5e7412\u67088\u65e5

    \u529f\u80fd\u4f18\u5316

    • feat(\u63a5\u53e3\u6d4b\u8bd5): HTTP\u90e8\u5206\u53c2\u6570\u5217\u652f\u6301\u53ef\u914d\u7f6e
    • refactor(\u63a5\u53e3\u8bbe\u7f6e): \u4f18\u5316\u56fd\u9645\u5316\u663e\u793a
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u4f18\u5316\u5927\u91cf\u7528\u4f8b\u6267\u884c\u5b58\u50a8\u6548\u7387
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u7f3a\u9677\u5217\u8868\u9875\u9762\u6e32\u67d3\u6027\u80fd\u4f18\u5316
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u573a\u666f\u6b65\u9aa4\u89e3\u6790\u4f18\u5316\u7edf\u4e00\u89e3\u6790\u65b9\u5f0f
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u517c\u5bb9\u5386\u53f2\u6267\u884c\u7ed3\u679c\u5904\u7406\u65e5\u5fd7\u4e2d\u51fa\u73b0\u5f02\u5e38\u95ee\u9898#20236
    • style(\u63a5\u53e3\u6d4b\u8bd5): \u63a5\u53e3\u7f16\u8f91\u9875\u9762\u9875\u5934\u90e8\u5206\u6837\u5f0f\u4f18\u5316

    \u95ee\u9898\u4fee\u590d

    • fix(UI\u81ea\u52a8\u5316): \u5173\u8054\u4e00\u4e2aui\u573a\u666f\u7528\u4f8b\uff0c\u6ca1\u6709\u6267\u884c\uff0c\u6d4b\u8bd5\u8ba1\u5212\u7684\u6d4b\u8bd5\u8fdb\u5ea6\u53d8\u6210100%\u4e86
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dcase\u7f16\u8f91\u65f6\u65e5\u5fd7\u4e2d\u51fa\u73b0\u5f02\u5e38\u4fe1\u606f
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u89e3\u51b3har\u6587\u4ef6\u5bfc\u5165\u62a5\u9519\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dswagger\u5bfc\u5165\u5931\u8d25\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u5f15\u7528\u7684case\u4ecd\u53ef\u4ee5\u7f16\u8f91\u53c2\u6570\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u5d4c\u5957\u4e8b\u52a1\u62c6\u5206\uff0c\u89e3\u51b3\u5e76\u53d1\u8fc7\u7a0b\u53ef\u80fd\u4ea7\u751f\u6b7b\u9501\u7684\u65b9\u6cd5
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u6d4b\u8bd5\u90e8\u5206tcp\u54cd\u5e94\u4f53\u5185\u4f9d\u7136\u5305\u542burl\u7b49\u975etcp\u4fe1\u606f\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u573a\u666f\u5220\u9664\u590d\u5236\u7684case\uff0c\u522b\u7684\u6b65\u9aa4\u7684\u65ad\u8a00\u548c\u524d\u540e\u7f6e\u64cd\u4f5c\u4e5f\u88ab\u5220\u9664\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u5b9a\u4e49\u6267\u884c\u65f6string\u53d6\u679a\u4e3e\u503c\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u5386\u53f2\u573a\u666f\u7684\u590d\u5236\u7684\u63a5\u53e3\u65e0\u6cd5\u53e6\u5b58\u4e3acase\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u4efb\u52a1\u4e2d\u5fc3\u6761\u4ef6\u5207\u6362\u4e0d\u5237\u65b0\u7edf\u8ba1\u72b6\u6001\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u573a\u666f\u62a5\u544a\u540d\u79f0\u5e26\u7279\u6b8a\u5b57\u7b26\u5bfc\u51fa\u5931\u8d25\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u540c\u540d\u6570\u636e\u6e90\u6267\u884c\u8fc7\u7a0b\u4ea7\u751f\u5927\u91cf\u9519\u8bef\u65e5\u5fd7\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u573a\u666f\u5f15\u7528\u591a\u4e2a\u4e8b\u52a1\u63a7\u5236\u5668\u72b6\u6001\u663e\u793a\u9519\u8bef\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u6587\u6863\u54cd\u5e94\u4f53\u90e8\u5206\u5b57\u6bb5\u6ca1\u6709\u683c\u5f0f\u5316\u89e3\u6790\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u6d4b\u8bd5\u6587\u6863\u6837\u5f0f\u4fee\u6539\u4e2d\u51fa\u73b0\u7684\u90e8\u5206\u6570\u636e\u4e0d\u663e\u793a\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u63a5\u53e3\u6d4b\u8bd5\u90e8\u5206\u53c2\u6570\u6837\u5f0f\u6539\u4e3a\u8868\u683c\uff0c\u5e76\u9488\u5bf9\u4e00\u7cfb\u5217\u95ee\u9898\u6c47\u603b\u8fdb\u884c\u4f18\u5316
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u573a\u666f\u4e2d\u6279\u91cf\u5220\u9664\u590d\u5236\u7684case\u6b65\u9aa4\u65f6\uff0c\u524d\u540e\u7f6e\u64cd\u4f5c\uff0c\u65ad\u8a00\u4e5f\u88ab\u5220\u9664\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u7528\u4f8b\u9644\u4ef6\u88ab\u76f4\u63a5\u5220\u9664\u6f0f\u6d1e
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u8bbe\u7f6e\u5bfc\u5165\u63a5\u53e3\u6216\u7528\u4f8b\u9ed8\u8ba4\u542f\u7528\u72b6\u6001
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590d\u65e0xpack\u6743\u9650\u521b\u5efa\u9879\u76ee\u5931\u8d25\u95ee\u9898
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u64cd\u4f5c\u65e5\u5fd7\u5bf9\u8c61\u4e2d\u6dfb\u52a0\u7528\u6237\u7ec4\u548c\u6743\u9650\u9009\u9879
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): Jira\u540c\u6b65\u5168\u91cf\u7f3a\u9677\u5931\u8d25
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212-\u5173\u8054ui-\u6267\u884c\u8ba1\u5212-\u6d4b\u8bd5\u62a5\u544a\u7684id\u4e3a\u7a7a
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7f3a\u9677\u7ba1\u7406\u5bfc\u51faEXCEL\u5355\u5143\u683cTEXT\u957f\u5ea6\u5927\u4e8ePOI\u9650\u5236\u7684\u5355\u5143\u683c\u957f\u5ea6\u65f6\u9519\u8bef
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ddf\u8e2a\u9996\u9875TABLE\u5217\u5bf9\u9f50
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6279\u91cf\u5173\u8054\u9700\u6c42\u5931\u6548
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u7f3a\u9677\u7ba1\u7406\u5173\u8054Azure\u81ea\u5b9a\u4e49\u5b57\u6bb5\u5bfc\u5165\u62a5\u9519
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7981\u7528\u672c\u5730\u6267\u884c\u540e\u53ea\u6709UI\u6d4b\u8bd5\u4e0d\u505a\u6821\u9a8c
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u5bfc\u51fa\u62a5\u9519
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7f3a\u9677\u5bfc\u51fa\u7cfb\u7edf\u72b6\u6001\u5b57\u6bb5\u6709\u8bef
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u529f\u80fd\u7528\u4f8b\u7684\u5173\u8054\u9700\u6c42\u663e\u793a\u6709\u8bef
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7985\u9053\u540c\u6b65\u7f3a\u9677\u540e\u56fe\u7247\u65e0\u6cd5\u5c55\u793a
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7f3a\u9677\u7ba1\u7406\u81ea\u5b9a\u4e49\u5b57\u6bb5\u7b5b\u9009\u65e0\u6548
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4f9d\u8d56\u5173\u7cfb\u56fe\u663e\u793a\u4e86\u4e0b\u5c42\u7684\u5bcc\u6587\u672c\u6846
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u5207\u6362\u6d4b\u8bd5\u8ba1\u5212\u65f6\u641c\u7d22\u6846\u5185\u5bb9\u672a\u91cd\u7f6e
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u5173\u8054\u7f3a\u9677\uff0c\u7528\u4f8b\u5217\u8868\u4e0d\u53ef\u89c1
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6570\u636e\u592a\u591a\u65f6\uff0c\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u5217\u8868\u5185\u5b58\u6ea2\u51fa
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u7528\u4f8b\u5217\u8868\u7f13\u5b58\u641c\u7d22\u6846\u5185\u5bb9\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7985\u9053\u7f3a\u9677\u4e0a\u4f20\u56fe\u7247\u94fe\u63a5\u540e\u540c\u6b65\uff0c\u56fe\u7247\u4e0d\u663e\u793a
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ddf\u8e2a\u9996\u9875\u7a7a\u6570\u636e\u6837\u5f0f\u53ca\u7f3a\u9677\u540c\u6b65\u65f6\u95f4\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u6267\u884c\u5224\u65ad\u6ca1\u6709\u6267\u884c\u8d44\u6e90\u5219\u4e0d\u8c03\u7528\u8be5\u63a5\u53e3
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u5f15\u7528\u573a\u666f\u81ea\u52a8\u5316\u7ffb\u9875\u4fdd\u7559\u9009\u9879\u95ee\u9898
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u56fa\u5b9a\u8282\u70b9\u6216\u81ea\u5b9a\u4e49\u5206\u914d\u7528\u6237\u6570\u65f6\u6700\u5927\u5e76\u53d1\u6570\u4e0d\u80fd\u9650\u5236\u7684\u95ee\u9898
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590d\u73af\u5883\u8bbe\u7f6e\u5386\u53f2\u6570\u636e\u4e0d\u80fd\u7f16\u8f91\u5907\u6ce8\u7684\u7f3a\u9677
    • fix(\u901a\u7528\u529f\u80fd): \u4fee\u590d\u5b9a\u65f6\u4efb\u52a1\u8f93\u5165\u9519\u8bef\u8868\u8fbe\u5f0f\u53cd\u89e3\u6790\u9875\u9762\u5d29\u6e83\u95ee\u9898
    "},{"location":"about/changelog/#v240","title":"v2.4.0","text":"

    2022\u5e7411\u670824\u65e5

    \u65b0\u589e\u529f\u80fd

    • \u6a21\u5757\u9996\u9875 UX \u4ea4\u4e92\u5347\u7ea7
    • \u7f3a\u9677\u7ba1\u7406\u652f\u6301 Excel \u5bfc\u5165/\u5bfc\u51fa\u7f3a\u9677
    • \u6d4b\u8bd5\u8ba1\u5212\u652f\u6301\u533a\u5206\u73af\u5883\u540c\u6b65\u8fd0\u884c
    • \u63a5\u53e3\u6d4b\u8bd5\u652f\u6301\u7981\u7528\u672c\u5730\u6267\u884c \uff08X-Pack \u589e\u5f3a\u5305\u5185\uff09
    • UI \u81ea\u5b9a\u4e49\u6307\u4ee4\u652f\u6301\u53c2\u6570\u5316\u914d\u7f6e\uff08X-Pack \u589e\u5f3a\u5305\u5185\uff09
    • \u5355\u70b9\u767b\u5f55\u65b0\u589e OAuth 2.0 \u534f\u8bae\uff08X-Pack \u589e\u5f3a\u5305\u5185\uff09

    \u529f\u80fd\u4f18\u5316

    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u670d\u52a1\u96c6\u6210\u5bf9\u63a5\u7b2c\u4e09\u65b9\u5e73\u53f0\u63d2\u4ef6\u5316\uff08\u7528\u6237\u53ef\u4ee5\u81ea\u884c\u5bf9\u63a5\u7b2c\u4e09\u65b9\u9879\u76ee\u7ba1\u7406\u5e73\u53f0\uff09
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u6d4b\u8bd5\u8ba1\u5212\u7528\u4f8b\u5217\u8868\u9ad8\u7ea7\u641c\u7d22\u589e\u52a0\u7528\u4f8b\u72b6\u6001\u3001\u5173\u8054\u9700\u6c42\u641c\u7d22
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u6d4b\u8bd5\u8ba1\u5212\u652f\u6301\u6279\u91cf\u5220\u9664\u529f\u80fd
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u573a\u666f\u7528\u4f8b\u4e2d\u590d\u5236\u7684 API \u6b65\u9aa4\u652f\u6301\u53e6\u5b58\u4e3a\u5355\u63a5\u53e3\u7528\u4f8b
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a5\u53e3 CASE \u5f15\u7528\u5173\u7cfb\u67e5\u770b\u4f18\u5316
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a7\u5236\u5668\u5185\u5f15\u7528\u7684\u573a\u666f\u6216\u7528\u4f8b\u652f\u6301\u542f\u7528/\u7981\u7528\u64cd\u4f5c
    • UI\u6d4b\u8bd5\uff1aUI \u6d4b\u8bd5\u652f\u6301\u5173\u8054\u201c\u6587\u4ef6\u7ba1\u7406\u201d\u4e2d\u7684\u6587\u4ef6\uff08X-Pack\uff09
    • UI\u6d4b\u8bd5\uff1aUI \u6d4b\u8bd5\u8be6\u60c5\u9875\u652f\u6301\u6279\u91cf\u7f16\u8f91\u64cd\u4f5c\uff08X-Pack\uff09
    • UI\u6d4b\u8bd5\uff1aUI \u6d4b\u8bd5\u652f\u6301\u914d\u7f6e\u662f\u5426\u5ffd\u7565\u8bc1\u4e66\uff08X-Pack\uff09
    • UI\u6d4b\u8bd5\uff1aUI \u6d4b\u8bd5\u652f\u6301\u83b7\u53d6\u9875\u9762\u5143\u7d20\u7684CSS\u5c5e\u6027\uff08X-Pack\uff09
    • \u6027\u80fd\u6d4b\u8bd5\uff1a\u6027\u80fd\u6d4b\u8bd5\u5217\u8868\u589e\u52a0\u8868\u5934\u5b57\u6bb5\u6392\u5e8f
    • \u6027\u80fd\u6d4b\u8bd5\uff1a\u6027\u80fd\u6d4b\u8bd5 Kubernetes \u8d44\u6e90\u6c60\u652f\u6301\u81ea\u5b9a\u4e49 Job \u6a21\u677f\uff08X-Pack\uff09
    • \u6027\u80fd\u6d4b\u8bd5\uff1a\u5b9e\u65f6\u62a5\u544a\u8ba1\u7b97\u4f18\u5316
    • \u901a\u7528\u529f\u80fd\uff1aJenkins \u63d2\u4ef6\u652f\u6301\u53c2\u6570\u5316
    • \u901a\u7528\u529f\u80fd\uff1aJenkins \u63d2\u4ef6\u652f\u6301\u9009\u62e9UI\u6d4b\u8bd5

    \u95ee\u9898\u4fee\u590d

    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u5728\u6d4b\u8bd5\u8ba1\u5212\u8bbe\u7f6e\u5931\u8d25\u91cd\u8bd5\uff0c\u4f46\u6ca1\u6709\u91cd\u65b0\u6267\u884c\u7684\u95ee\u9898\uff08GitHub #19228\uff09
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u7528\u4f8b\u6267\u884c\u7684\u65f6\u5019\u4e0d\u80fd\u5207\u6362\u6b65\u9aa4\u63cf\u8ff0\u7684\u95ee\u9898\uff08GitHub #19851\uff09
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u6d4b\u8bd5\u7528\u4f8b\u81ea\u5b9a\u4e49 ID \u540e\uff0c\u5728\u7528\u4f8b\u8bc4\u5ba1\u5217\u8868\u8fd8\u663e\u793a\u4e3a\u7cfb\u7edf ID \u7684\u95ee\u9898\uff08GitHub #19730\uff09
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u591a\u9879\u76ee\u540c\u540d\u73af\u5883\u53d8\u91cf\u5b58\u5728\u8986\u76d6\u7684\u95ee\u9898\uff08GitHub #19931\uff09
    • fix(UI\u6d4b\u8bd5): \u4fee\u590d UI \u573a\u666f\u8f6c\u4e3a\u6307\u4ee4\u65f6\uff0c\u5bf9\u5e94\u7684 UI \u573a\u666f\u53d8\u91cf\u6ca1\u6709\u540c\u6b65\u8fc7\u53bb\uff0c\u9700\u8981\u624b\u52a8\u91cd\u65b0\u6dfb\u52a0\u7684\u95ee\u9898\uff08GitHub #19424\uff09
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u4fdd\u5b58\u6027\u80fd\u6d4b\u8bd5\u63d0\u793a\u9519\u8bef\u7684\u95ee\u9898\uff08GitHub #19734\uff09
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590d\u6d88\u606f\u901a\u77e5\u4e0d\u80fd\u901a\u77e5\u7f3a\u9677\u5904\u7406\u4eba\u7684\u95ee\u9898\uff08GitHub #19855\uff09
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590d Minio \u6302\u6389\u540e\uff0c\u9875\u9762\u8fd8\u80fd\u4e0a\u4f20\u6587\u4ef6\u7684\u95ee\u9898\uff08GitHub #19860\uff09
    "},{"location":"about/changelog/#v231","title":"v2.3.1","text":"

    2022\u5e7411\u670810\u65e5

    \u529f\u80fd\u4f18\u5316

    • refactor(\u5de5\u4f5c\u53f0): \u66f4\u6539\u6211\u7684\u5f85\u529e\u6d4b\u8bd5\u8ba1\u5212\u5217\u8868\u7b5b\u9009\u6761\u4ef6
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u7edf\u4e00\u4efb\u52a1\u4e2d\u5fc3Jenkins\u8c03\u7528\u72b6\u6001
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u8111\u56fe\u7f3a\u9677\u56fd\u9645\u5316
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u4ee3\u7801\u4f18\u5316
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u589e\u52a0\u7528\u4f8b\u8bc4\u5ba1\u540d\u79f0\u957f\u5ea6\u9650\u5236
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u529f\u80fd\u7528\u4f8b\u8de8\u9879\u76ee\u8df3\u8f6c\u4f18\u5316
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u6ca1\u6709\u63a5\u53e3\u6d4b\u8bd5\u6743\u9650\u7684\u5173\u8054\u8868\u4e0d\u53ef\u4ee5\u70b9\u51fb\u8df3\u8f6c
    • refactor(\u4efb\u52a1\u4e2d\u5fc3): \u4f18\u5316\u4efb\u52a1\u4e2d\u5fc3\u6309\u7167\u4efb\u52a1\u7c7b\u578b\u52a0\u8f7d
    • refactor(\u4efb\u52a1\u4e2d\u5fc3): \u4efb\u52a1\u7edf\u8ba1\u4f18\u5316\u53ea\u7edf\u8ba1\u5df2\u7ecf\u5f00\u59cb\u6267

    \u95ee\u9898\u4fee\u590d

    • fix(\u5de5\u4f5c\u53f0): \u4fee\u590d\u6267\u884c\u5931\u8d25\u5c31\u8fdb\u5165\u5de5\u4f5c\u53f0\u5f85\u66f4\u65b0\u5217\u8868\u95ee\u9898
    • fix(UI\u81ea\u52a8\u5316): jenkins\u6267\u884c-\u6d4b\u8bd5\u62a5\u544a\u5217\u8868\u89e6\u53d1\u65b9\u5f0f\u7f3a\u5c11API\u8c03\u7528
    • fix(UI\u81ea\u52a8\u5316): \u4fee\u590dUI\u64cd\u4f5c\u65e5\u5fd7\u4e0d\u663e\u793a\u95ee\u9898
    • fix(UI\u81ea\u52a8\u5316): \u4fee\u590d\u8bbe\u7f6e\u6a21\u5757\u64cd\u4f5c\u65e5\u5fd7UI\u6620\u5c04\u95ee\u9898
    • fix(UI\u81ea\u52a8\u5316): \u4fee\u590d\u5f00\u6e90\u7248\u4efb\u52a1\u4e2d\u5fc3\u62a5\u9519\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u590d\u5236\u6d4b\u8bd5\u8ba1\u5212\u6ca1\u6709\u64cd\u4f5c\u65e5\u5fd7\u7684\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u7f3a\u9677\u72b6\u6001\u7edf\u8ba1\u4e0d\u51c6\u786e
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u9996\u9875\u9057\u7559\u7f3a\u9677\u7edf\u8ba1\u603b\u6570\u548c\u5360\u6bd4\u7edf\u8ba1
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u516c\u5171\u7528\u4f8b\u5e93\u7248\u672c\u5b57\u6bb5\u4e0d\u652f\u6301\u7b5b\u9009\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u67e5\u770b\u63a5\u53e3\u6587\u6863\u9875\u9762\u62a5\u9519\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u6267\u884c\u573a\u666f\uff0c\u901a\u8fc7\u7387\u4e0d\u66f4\u65b0\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u73af\u5883\u914d\u7f6e\u5168\u5c40\u8ba4\u8bc1\u4e0d\u751f\u6548\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u5f15\u7528\u573a\u666f\u6b65\u9aa4\u80fd\u6dfb\u52a0\u540c\u7ea7\u6b65\u9aa4\u95ee\u9898
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590dtcp\u6267\u884c\u6ca1\u6709\u63d0\u793a\u9009\u62e9\u73af\u5883\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u81ea\u5b9a\u4e49\u8bf7\u6c42\u6267\u884c\u53d8\u91cf\u503c\u7f3a\u5931\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u63a5\u53e3\u5b9a\u4e49\u65b0\u503c\u548c\u65e7\u503c\u663e\u793a\u4e00\u6837\u7684\u7f3a\u9677
    • fix(\u4efb\u52a1\u4e2d\u5fc3): \u4fee\u590dui\u6d4b\u8bd5\u4efb\u52a1\u6ca1\u6709\u5206\u9875\u95ee\u9898
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u66f4\u6362\u7cfb\u7edfLOGO\u540e\u4e0d\u751f\u6548
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u64cd\u4f5c\u65e5\u5fd7\u64cd\u4f5c\u5bf9\u8c61\u73af\u5883\u8bbe\u7f6e\u66f4\u6539\u540d\u79f0\u4e3a\u73af\u5883\u7ba1\u7406
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u64cd\u4f5c\u65e5\u5fd7\u4e2d\u64cd\u4f5c\u5bf9\u8c61\u7f3a\u5c11\u5de5\u4f5c\u7a7a\u95f4\u7684\u73af\u5883\u7ba1\u7406\u6a21\u5757
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590d\u6d88\u606f\u901a\u77e5\u63a5\u53e3\u5b9a\u4e49API\u66f4\u65b0\u4e8b\u4ef6\u4e00\u4e9b\u6a21\u7248\u5b57\u6bb5\u83b7\u53d6\u4e0d\u5230\u503c\u95ee\u9898
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u7f16\u8f91\u6a21\u677f\u81ea\u5b9a\u4e49\u5b57\u6bb5\u9ed8\u8ba4\u503c\uff0c\u6587\u672c\u8fc7\u5927\u65e0\u6cd5\u7f16\u8f91
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u663e\u793a\u62a5\u544a\u65f6\u6d4b\u8bd5\u8be6\u60c5\u7a7a\u767d\u7684\u95ee\u9898
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u589e\u52a0\u4e86\u81ea\u5b9a\u4e49\u76d1\u63a7\u65f6\u4e0d\u80fd\u6b63\u5e38\u663e\u793a\u76d1\u63a7\u7684\u95ee\u9898
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u7f16\u8f91\u6d4b\u8bd5\u65f6\u5220\u9664\u6587\u4ef6\u540e\u4e0d\u80fd\u7ee7\u7eed\u5bfc\u5165\u540c\u540d\u6587\u4ef6\u7684\u95ee\u9898
    • fix(\u62a5\u544a\u7edf\u8ba1): \u4fee\u590d\u5173\u95ed\u5b9a\u65f6\u4efb\u52a1\u63d0\u793a\u6846\u63d0\u793a\u9519\u8bef\u7684\u95ee\u9898
    • fix(\u62a5\u544a\u7edf\u8ba1): \u6d4b\u8bd5\u7528\u4f8b\u8d8b\u52bf\u62a5\u8868\u67e5\u770b\u9879\u76ee\u4e0d\u518d\u4ee5\u5de5\u4f5c\u7a7a\u95f4\u4e3a\u6761\u4ef6
    "},{"location":"about/changelog/#v230","title":"v2.3.0","text":"

    2022\u5e7410\u670827\u65e5

    \u65b0\u589e\u529f\u80fd

    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u589e\u52a0 XML \u6587\u672c\u81ea\u52a8\u683c\u5f0f\u5316\u529f\u80fd
    • \u63a5\u53e3\u6d4b\u8bd5\uff1aMOCK \u53d8\u66f4\u589e\u52a0\u6d88\u606f\u901a\u77e5
    • \u7f3a\u9677\u7ba1\u7406\uff1a\u652f\u6301\u589e\u91cf\u540c\u6b65\u7b2c\u4e09\u65b9\u5e73\u53f0\u7f3a\u9677

    \u529f\u80fd\u4f18\u5316

    • \u67b6\u6784\u5347\u7ea7\uff1a\u5fae\u670d\u52a1\u6539\u9020
    "},{"location":"about/changelog/#v221","title":"v2.2.1","text":"

    2022\u5e7411\u67082\u65e5

    \u529f\u80fd\u4f18\u5316

    • refactor(\u6027\u80fd\u6d4b\u8bd5): \u6027\u80fd\u6d4b\u8bd5\u53bb\u6389\u6587\u4ef6\u4e0a\u4f20\u6570\u91cf\u7684\u9650\u5236
    • refactor: \u524d\u7aef\u8f93\u5165\u6846Mock\u8865\u5168JMeter\u5185\u7f6e\u51fd\u6570\u7684\u63d0\u793a

    \u95ee\u9898\u4fee\u590d

    • fix(UI\u81ea\u52a8\u5316): \u89e3\u51b3UI\u5e76\u53d1\u62a5\u544a\u90e8\u5206\u672a\u6267\u884c\u95ee\u9898
    • fix(UI\u81ea\u52a8\u5316): \u89e3\u51b3UI\u62a5\u544a\u6267\u884c\u65f6\u95f4\u548c\u672a\u6267\u884c\u5217\u8868\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): Jira\u540c\u6b65\u7ecf\u529e\u4eba\u53ca\u9879\u76ee\u96c6\u5b57\u6bb5\u6709\u8bef (#18282)
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u8bc4\u5ba1\u8bc4\u8bba\u663e\u793a\u95ee\u9898 (#18206)
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): Jira\u6ca1\u52fe\u9009\u7b2c\u4e09\u65b9\u6a21\u677f\uff0c\u63d0\u4ea4\u7f3a\u9677\u56fe\u7247\u4e0d\u663e\u793a
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7528\u4f8b\u8bc4\u5ba1ID\u6392\u5e8f\u663e\u793a\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4f9d\u8d56\u5173\u7cfb\u5217\u8868\u5e03\u5c40\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u529f\u80fd\u7528\u4f8b\u5bfc\u51fa\u4e71\u5e8f\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4f18\u5316\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u67e5\u770b\u901f\u5ea6
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u529f\u80fd\u7528\u4f8b\u8bc4\u5ba1\u72b6\u6001\u7b5b\u9009\u5931\u6548
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u8bc4\u5ba1\u7528\u4f8b\u5168\u9009\u6279\u91cf\u7f16\u8f91\u7b5b\u9009\u5931\u6548
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u53ca\u7528\u4f8b\u8bc4\u5ba1\u4f9d\u8d56\u5173\u7cfb\u7684\u663e\u793a\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u6267\u884c\u573a\u666f\u65f6\u62a5\u544a\u5185\u5bb9\u4e3a\u7a7a\u7684\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u81ea\u5b9a\u4e49\u5b57\u6bb5\u9ad8\u7ea7\u641c\u7d22\u7ed3\u679c\u6709\u591a\u6761\u4f1a\u62a5\u9519
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u5173\u8054Jira\u5e73\u53f0\u4f7f\u7528\u9ed8\u8ba4\u6a21\u677f\u4fee\u6539\u5e73\u53f0\u72b6\u6001\u62a5\u9519\u95ee\u9898
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u63a5\u53e3\u5b9a\u4e49\u4fdd\u5b58\u62a5\u9519\u7684\u7f3a\u9677 (#18258)
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590dcase\u7f16\u8f91\u9875\u9762\u81ea\u5b9a\u4e49\u5b57\u6bb5\u5bcc\u6587\u672c\u5e93\u906e\u6321\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u5faa\u73af\u63a7\u5236\u5668\u4e0b\u573a\u666f\u53d8\u91cfcsv\u53d6\u503c\u4e0d\u5bf9\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u62a5\u544a\u91cd\u7f6e\u89e6\u53d1\u65b9\u5f0f\u9875\u9762\u62a5\u9519\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u5bfc\u5165\u7684\u63a5\u53e3\u5b9a\u4e49\u65e0\u6cd5\u6dfb\u52a0\u6587\u4ef6\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u6587\u6863\u7b5b\u9009\u4e0d\u751f\u6548\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u573a\u666f\u521b\u5efa\u65b0\u7248\u672c\uff0c\u4e0d\u663e\u793a\u521b\u5efa\u4eba\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u63a5\u53e3\u5b9a\u4e49\u81ea\u5b9a\u4e49\u5b57\u6bb5\u8f93\u5165\u6846\uff0c\u8f93\u5165\u957f\u5b57\u7b26\u4fdd\u5b58\u62a5\u9519\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): get\u65b9\u5f0f\u7684mock\u63a5\u53e3\uff0c\u4e0d\u8bbe\u7f6e\u4efb\u4f55\u5339\u914d\u6761\u4ef6\u65f6\uff0c\u54cd\u5e94\u4f53\u4e3a\u7a7a
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u89e3\u51b3\u63a5\u53e3API\u70b9\u51fb\u4fdd\u5b58\u4e00\u952e\u540c\u6b65\u529f\u80fd\u5bfc\u81f4\u63a5\u53e3case\u53c2\u6570\u65e0\u6cd5\u65b0\u589e\u548c\u8986\u76d6\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u89e3\u51b3\u63a5\u53e3swagger\u6587\u4ef6\u5bfc\u5165\u89e3\u6790\u9519\u8bef\u95ee\u9898\u4ee5\u53ca\u975eHTTP\u534f\u8bae\u8986\u76d6\u6a21\u5757\u5bfc\u5165\u62a5\u9519\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u89e3\u51b3\u573a\u666f\u7f16\u8f91-\u63a5\u53e3\u5217\u8868\u5bfc\u5165-\u5207\u6362\u5de5\u4f5c\u7a7a\u95f4\u540e\u70b9\u51fb\u6a21\u5757-\u6a21\u5757\u6811\u53d1\u751f\u53d8\u66f4\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u573a\u666f\u6b65\u9aa4\u62d6\u62fd\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u6539\u8ba1\u7b97\u63a5\u53e3\u8986\u76d6\u7387\u7684\u903b\u8f91
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u5f15\u7528\u573a\u666f\u6b65\u9aa4\u80fd\u6dfb\u52a0\u540c\u7ea7\u6b65\u9aa4\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u63a5\u53e3\u5b9a\u4e49\u6587\u6863\u7684\u9ad8\u7ea7\u8bbe\u7f6e\u4e00\u952e\u5c55\u5f00\u529f\u80fd\u589e\u52a0\u5bf9jsonschema\u8282\u70b9\u7684\u5c55\u5f00
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u6d4b\u8bd5\u62a5\u544a\u4e2d\u63a5\u53e3\u7528\u4f8b\u89e6\u53d1\u65b9\u5f0f\u8bc6\u522b\u4e0d\u51fajenkins\u6267\u884c\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u7528\u4f8b\u6309\u7167\u6267\u884c\u72b6\u6001\u67e5\u8be2\u65f6\u5bf9\u505c\u6b62\u72b6\u6001\u7684\u6570\u636e\u5f52\u7c7b\u9519\u8bef\u7684\u95ee\u9898
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u6587\u4ef6\u5e93\u8282\u70b9\u7684token\u8f93\u5165\u6846\u6539\u4e3a\u5bc6\u7801\u6846\uff0ctoken\u4e0d\u4f1a\u660e\u6587\u5c55\u793a
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u81ea\u5b9a\u4e49\u5b57\u6bb5\u4f7f\u7528\u573a\u666f\u7b5b\u9009\uff0c\u7f3a\u5c11\u6d4b\u8bd5\u8ba1\u5212\u9009\u9879
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590d\u7cfb\u7edf\u8bbe\u7f6e\u7f16\u8f91\u9879\u76ee\u8bbe\u7f6e\u9009\u62e9\u63a5\u53e3\u6a21\u7248\u4e0d\u751f\u6548\u7684\u7f3a\u9677 (#18253)
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u89e3\u51b3\u53ea\u6388\u4e88\u4e2a\u4eba\u4fe1\u606f-ui\u8bbe\u7f6e\u6743\u9650\u65f6\uff0c\u4e2a\u4eba\u4fe1\u606f\u5f39\u6846\u70b9\u4e0d\u5f00\u7684\u95ee\u9898
    • fix(\u6d88\u606f\u901a\u77e5): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u53d1\u9001\u901a\u77e5\u53d8\u91cf\u83b7\u53d6\u7684\u95ee\u9898
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u5728\u5f39\u6846\u4e2d\u4fee\u6539\u5b9a\u65f6\u4efb\u52a1\u72b6\u6001\u4e0d\u751f\u6548\u7684\u95ee\u9898
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u573a\u666f\u6279\u91cf\u8f6c\u6210\u6027\u80fd\u6d4b\u8bd5\u65f6\u91cd\u590d\u5bfc\u5165\u7684\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ba1\u5212): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u8df3\u8f6c\u573a\u666f\u63d0\u793a\u573a\u666f\u88ab\u5220\u9664\u7684\u7f3a\u9677

    \u6f0f\u6d1e\u4fee\u590d

    • \u672c\u6b21\u5347\u7ea7\u5305\u62ec\u4fee\u590dshiro\u7684\u5b89\u5168\u6f0f\u6d1e\uff0c\u8bf7\u5c3d\u5feb\u5347\u7ea7
    "},{"location":"about/changelog/#v220","title":"v2.2.0","text":"

    2022\u5e749\u670822\u65e5

    \u65b0\u589e\u529f\u80fd

    • \u63a5\u53e3\u6d4b\u8bd5\u652f\u6301\u81ea\u5b9a\u4e49\u6a21\u677f
    • UI \u6d4b\u8bd5\u652f\u6301\u81ea\u5b9a\u4e49\u7ec4\u5408\u6307\u4ee4(X-Pack \u589e\u5f3a\u5305\u5185)
    • \u6587\u4ef6\u7ba1\u7406\u652f\u6301\u5bf9\u63a5\u7b2c\u4e09\u65b9\u4ed3\u5e93(X-Pack\u589e\u5f3a\u5305\u5185)

    \u529f\u80fd\u4f18\u5316

    • \u6d4b\u8bd5\u8ddf\u8e2a: \u6d4b\u8bd5\u8ba1\u5212/\u7528\u4f8b\u8bc4\u5ba1\u9875\u7528\u4f8b\u6807\u9898\u5c55\u793a\u4f18\u5316
    • \u63a5\u53e3\u6d4b\u8bd5: \u63a5\u53e3 CASE \u9ad8\u7ea7\u641c\u7d22\u589e\u52a0\u8def\u5f84\u641c\u7d22
    • \u63a5\u53e3\u6d4b\u8bd5: TCP \u534f\u8bae\u652f\u6301\u4e00\u952e\u5c06 xml \u6587\u672c\u683c\u5f0f\u8f6c\u6362\u6210\u8868\u683c\u683c\u5f0f
    • UI\u6d4b\u8bd5: \u5217\u8868\u6279\u91cf\u6267\u884c\u4e0e\u6d4b\u8bd5\u8ba1\u5212\u6267\u884c\u65f6\u589e\u52a0\u5931\u8d25\u91cd\u8bd5\u673a\u5236(X-Pack)
    • UI\u6d4b\u8bd5: \u6d4b\u8bd5\u62a5\u544a\u652f\u6301\u4e00\u952e\u5206\u4eab(X-Pack)
    • UI\u6d4b\u8bd5: UI \u573a\u666f\u652f\u6301\u67e5\u770b\u88ab\u5f15\u7528\u5217\u8868(X-Pack)
    • UI\u6d4b\u8bd5: \u652f\u6301\u5728\u914d\u7f6e\u6587\u4ef6\u4e2d\u914d\u7f6e\u6d4f\u89c8\u5668\u7684\u9ed8\u8ba4\u5206\u8fa8\u7387(X-Pack)
    • \u7cfb\u7edf\u8bbe\u7f6e: \u6d88\u606f\u901a\u77e5\u6a21\u677f\u65b0\u589e\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u76f8\u5173\u5b57\u6bb5(X-Pack)
    • \u901a\u7528\u529f\u80fd: \u7248\u672c\u7b5b\u9009\u652f\u6301\u624b\u52a8\u5f55\u5165\u7248\u672c\u53f7(X-Pack)

    \u95ee\u9898\u4fee\u590d

    • \u6d4b\u8bd5\u8ddf\u8e2a: \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u70b9\u51fb\u540d\u79f0\u94fe\u63a5\u4f1a\u76f4\u63a5\u8df3\u8f6c\u5230\u63a5\u53e3\u7528\u4f8b\u6216\u8005\u573a\u666f\u7528\u4f8b\u8be6\u60c5\u9875\u7684\u95ee\u9898(GitHub #17993)
    • \u6d4b\u8bd5\u8ddf\u8e2a: \u4fee\u590d\u6d4b\u8bd5\u8ddf\u8e2a\u9996\u9875\u672a\u8bc4\u5ba1\u201c\u6570\u91cf\u201d\u3001\u8986\u76d6\u201c\u6570\u91cf\u201d\u4e0e\u8df3\u8f6c\u540e\u5217\u8868\u7528\u4f8b\u6570\u91cf\u4e0d\u4e00\u81f4\u7684\u95ee\u9898(GitHub #17910)
    • \u6d4b\u8bd5\u8ddf\u8e2a: \u4fee\u590d\u9879\u76ee\u81ea\u5b9a\u4e49 ID \u5f00\u542f\u5bfc\u5165\u663e\u793a\u7684\u662f\u7cfb\u7edf\u9ed8\u8ba4 ID \u7684\u95ee\u9898(GitHub #17928)
    • \u63a5\u53e3\u6d4b\u8bd5: \u4fee\u590d\u73af\u5883\u53d8\u91cf\u4f18\u5148\u7ea7\u5927\u4e8e\u573a\u666f\u53d8\u91cf\u7684\u95ee\u9898(GitHub #17873)
    • \u63a5\u53e3\u6d4b\u8bd5: \u4fee\u590d\u63a5\u53e3\u81ea\u52a8\u5316\u7f16\u8f91\u573a\u666f\u4fdd\u5b58\u540e\uff0c\u5217\u8868\u4e2d\u201c\u901a\u8fc7\u7387\u201d\u672a\u66f4\u65b0\u7684\u95ee\u9898(GitHub #17784)
    • UI\u6d4b\u8bd5: \u4fee\u590d UI \u81ea\u52a8\u5316\u573a\u666f\u91cc\u590d\u5236\u5bfc\u5165\u4e86\u5df2\u6709\u573a\u666f\uff0c\u5bfc\u81f4\u573a\u666f\u4ee5\u53ca\u5b50\u573a\u666f\u8c03\u8bd5\u6a21\u5f0f\u548c\u6d4b\u8bd5\u8ba1\u5212\u91cc\u4e0d\u4f1a\u88ab\u6267\u884c\u7684\u95ee\u9898(GitHub #17649)
    • UI\u6d4b\u8bd5: \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u4e2d\u5b9a\u65f6\u6267\u884c\u591a\u4e2a UI \u81ea\u52a8\u5316\u573a\u666f\uff0c\u5b58\u5728\u5df2\u6267\u884c\u5931\u8d25\u7684\u573a\u666f\u88ab\u6807\u6ce8\u4e3a\u201c\u672a\u6267\u884c\u201d\u7684\u95ee\u9898(GitHub #17649)
    "},{"location":"about/changelog/#v210","title":"v2.1.0","text":"

    2022\u5e748\u670825\u65e5

    \u65b0\u589e\u529f\u80fd

    • UI\u6d4b\u8bd5\u8986\u76d6\u7ed8\u56fe\u6838\u5fc3\u573a\u666f
    • \u529f\u80fd\u7528\u4f8b\u652f\u6301\u81ea\u5b9a\u4e49\u5b57\u6bb5\u5bfc\u5165\u3001\u5bfc\u51fa
    • \u6587\u4ef6\u7ba1\u7406\u91cd\u6784

    \u529f\u80fd\u4f18\u5316

    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u529f\u80fd\u6d4b\u8bd5\u7528\u4f8b\u6a21\u677f\u5bfc\u5165\u4f18\u5316
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a5\u53e3\u5bfc\u5165\u66f4\u65b0\u589e\u52a0\u6d88\u606f\u901a\u77e5
    • \u63a5\u53e3\u6d4b\u8bd5\uff1aAPI\u6587\u6863\u5c55\u793a\u4f18\u5316\u652f\u6301\u5c55\u793a\u9ad8\u7ea7\u8bbe\u7f6e
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u573a\u666f\u53d8\u91cf\u652f\u6301\u67e5\u8be2\u4ee5\u53ca\u5bfc\u5165\u5bfc\u51fa
    • UI\u6d4b\u8bd5\uff1a\u652f\u6301\u4efb\u610f\u4f4d\u7f6e\u6dfb\u52a0\u622a\u56fe\u6b65\u9aa4(X-Pack)
    • UI\u6d4b\u8bd5\uff1a\u8f93\u5165\u6b65\u9aa4\u652f\u6301\u952e\u76d8\u529f\u80fd\u952e(X-Pack)
    • \u9879\u76ee\u8bbe\u7f6e\uff1a\u652f\u6301\u4e8c\u7ea7\u83dc\u5355\u6743\u9650\u7ba1\u63a7
    • \u9879\u76ee\u8bbe\u7f6e\uff1a\u73af\u5883\u914d\u7f6e\u4e2d\u5168\u5c40\u53d8\u91cf\u652f\u6301\u67e5\u8be2\u4ee5\u53ca\u5bfc\u5165\u5bfc\u51fa
    • \u7cfb\u7edf\u8bbe\u7f6e\uff1aOIDC\u548cCAS\u8ba4\u8bc1\u652f\u6301\u914d\u7f6e Callback URL

    \u95ee\u9898\u4fee\u590d

    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u8868\u683c\u7528\u4f8b\u5bfc\u5165\u66f4\u65b0\uff0c\u63d0\u793a\u66f4\u65b0\u6210\u529f\uff0c\u4f46\u662f\u5185\u5bb9\u6ca1\u6709\u66f4\u65b0\u7684\u95ee\u9898\uff08GitHub - #17077\uff09
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u7f3a\u9677\u7ba1\u7406\u7684\u9ad8\u7ea7\u641c\u7d22\u4e2d\u521b\u5efa\u4eba\u65e0\u6cd5\u5217\u51fa\u6240\u6709\u9879\u76ee\u6210\u5458\u7684\u95ee\u9898\uff08GitHub - #16974\uff09
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u4ee3\u7801\u7247\u6bb5\u4e2d\u5bfc\u5165python ssl\u6a21\u5757\u5728\u5347\u7ea7\u52302.0.1\u540e\u6267\u884c\u51fa\u9519\u7684\u95ee\u9898\uff08GitHub - #16945\uff09
    • fix(UI\u6d4b\u8bd5): \u4fee\u590dUI\u81ea\u52a8\u5316\u70b9\u51fb\u540e\u7aef\u8c03\u8bd5\u4e0e\u751f\u6210\u62a5\u544a\u6267\u884c\u7ed3\u679c\u4e0d\u4e00\u81f4\u7684\u95ee\u9898\uff08GitHub #16523\uff09
    • fix(UI\u6d4b\u8bd5): \u4fee\u590dUI\u81ea\u52a8\u5316\u573a\u666f\u65b0\u590d\u5236\u7684\u573a\u666f\u65e0\u521b\u5efa\u4eba\u4fe1\u606f\u7684\u95ee\u9898\uff08GitHub #16732\uff09
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590d\u6d88\u606f\u8bbe\u7f6e\u65b0\u5efa\u7f3a\u9677\u7684\u63a5\u6536\u4eba\u662f\u5904\u7406\u4eba\u4f46\u5728\u6d88\u606f\u901a\u77e5\u65f6\u6ca1\u6709@\u5904\u7406\u4eba\u7684\u95ee\u9898\uff08GitHub #16751\uff09
    "},{"location":"about/changelog/#v201","title":"v2.0.1","text":"

    2022\u5e748\u67084\u65e5

    \u529f\u80fd\u4f18\u5316

    • feat(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u4fdd\u5b58\u7684\u8fd0\u884c\u73af\u5883\u56de\u663e\uff0c\u5e76\u4e14\u4f5c\u4e3a\u5f53\u524d\u8ba1\u5212\u4e0b\u6240\u6709\u7528\u4f8b\u7684\u73af\u5883\u7684\u9ed8\u8ba4\u503c
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u8c03\u6574UI\u548c\u6027\u80fd\u7684\u987a\u5e8f
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u5220\u9664\u529f\u80fd\u4e8c\u6b21\u63d0\u9192\u5f39\u6846\u4fe1\u606f\u4f18\u5316
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u4fdd\u5b58\u7684\u8fd0\u884c\u73af\u5883\u540e\u5237\u65b0\u5217\u8868
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u81ea\u5b9a\u4e49\u5b57\u6bb5\u4e0b\u62c9\u6846\u9009\u9879\u88ab\u5220\u9664\u5219\u7f6e\u7a7a
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u6539\u6210\u540c\u6b65\u53d1\u9001\u6267\u884c\u6307\u4ee4\uff0c\u8c03\u6574\u8fde\u63a5\u53c2\u6570
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u4f18\u5316\u6d4b\u8bd5\u8ba1\u5212\u8fd0\u884c\u68c0\u67e5\u53ef\u6267\u884c\u7528\u4f8b\u7684\u65b9\u6cd5 (#16525)
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u4fdd\u5b58\u7684\u914d\u7f6e\u4fe1\u606f\u7684\u8fd0\u884c\u73af\u5883\u4fe1\u606f\u7528\u4e8e\u9ed8\u8ba4\u503c
    • style(\u63a5\u53e3\u6d4b\u8bd5): \u4f18\u5316mock\u671f\u671b\u5220\u9664\u65f6\u7684\u63d0\u793a\u8bed
    • style(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u6d4b\u8bd5\u9996\u9875swagger\u8df3\u8f6c\u7684\u95ee\u9898
    • style(\u63a5\u53e3\u6d4b\u8bd5): \u573a\u666f\u5bfc\u5165\u529f\u80fd\uff0c\u9875\u9762\u6837\u5f0f\u8c03\u6574
    • style(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u6d4b\u8bd5\u9996\u9875\u7528\u4f8b\u6570\u91cf\u7edf\u8ba1\u9875\u7b7e\u7edf\u8ba1\u8f83\u6162\u7684\u95ee\u9898
    • style(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u6d4b\u8bd5\u9996\u9875\u672a\u8986\u76d6\u63a5\u53e3\u8df3\u8f6c\u65f6\u6570\u636e\u6ca1\u6709\u5237\u65b0\u7684\u95ee\u9898
    • style(\u62a5\u8868\u7edf\u8ba1): \u4f18\u5316\u6d4b\u8bd5\u7528\u4f8b\u7edf\u8ba1\u56fe\u8868\u6700\u5927\u5316\u65f6\u7684\u5c55\u793a

    \u95ee\u9898\u4fee\u590d

    • fix(UI\u81ea\u52a8\u5316): UI \u6d4b\u8bd5\u4e0d\u8d70\u8d44\u6e90\u6c60
    • fix(UI\u81ea\u52a8\u5316): \u6d4b\u8bd5\u8ba1\u5212 UI \u6d4b\u8bd5\u7ed3\u679c\u4e0e\u603b\u62a5\u544a\u7ed3\u679c\u4e0d\u540c\u6b65
    • fix(UI\u81ea\u52a8\u5316): \u5173\u8054\u672a\u6267\u884c\u7684ui\u573a\u666f\u67e5\u770b\u5b9e\u65f6\u62a5\u544a\u4e0d\u5c55\u793a\u6d4b\u8bd5\u7ed3\u679c\u6570\u636e
    • fix(UI\u81ea\u52a8\u5316): \u5bfc\u51fa\u6d4b\u8bd5\u62a5\u544a\uff0c\u65e0\u6cd5\u67e5\u770bui\u7528\u4f8b\u6267\u884c\u7ed3\u679c
    • fix(UI\u81ea\u52a8\u5316): \u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u6210\u529f\u7387\u663e\u793a\u4e0d\u5bf9
    • fix(UI\u81ea\u52a8\u5316): \u4fee\u590d\u975e\u6027\u80fd\u6a21\u5f0f\u4e0b\u62a5\u544a\u622a\u56fe\u8bed\u8a00\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dcsv\u573a\u666f\u53d8\u91cf\u5c5e\u6027\u56de\u663e\u9519\u8bef\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dxmind\u89e3\u6790\u4e0d\u652f\u6301xmind\u7ecf\u5178\u7248\u672c\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u5305\u542bexcel\u6587\u4ef6\u7684\u8bf7\u6c42\u6267\u884c\u5931\u8d25\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u5bfc\u5165ESB\u6587\u4ef6\u4fdd\u5b58\u6570\u636e\u4e0d\u5168\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u63a5\u53e3\u5bfc\u5165\u7528\u4f8bID\u751f\u6210\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u5bfc\u5165\u7528\u4f8bID\u751f\u6210\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u5b9a\u4e49\u5bfc\u5165jmx\u6587\u4ef6\u9009\u62e9\u7f16\u7801\uff0cms\u4e0d\u663e\u793a\u7f16\u7801\u7684\u7f3a\u9677 (#16573)
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u573a\u666f\u6267\u884c\u7ed3\u679c\u663e\u793a\u4e86unexecute\u7684\u7f3a\u9677 (#16610)
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u89e3\u51b3\u63a5\u53e3\u5bfc\u5165\u8986\u76d6\u6a21\u5f0f\uff0c\u88ab\u8986\u76d6\u63a5\u53e3\u65e0case\uff0c\u65b0case\u5bfc\u5165\u5931\u8d25\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u6d4b\u8bd5\u9996\u9875\u5b9a\u65f6\u4efb\u52a1\u8df3\u8f6c\u4e0d\u5bf9\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4f18\u5316\u63a5\u53e3\u5bfc\u5165\u7cfb\u7edf\u5185\u67d0\u4e2a\u63a5\u53e3\u6709\u91cd\u540d\u7528\u4f8b\u7684\u60c5\u51b5
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u6d4b\u8bd5\u9996\u9875\u573a\u666f\u901a\u8fc7\u7387\u8ba1\u7b97\u4e0d\u6b63\u786e\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u5bfc\u5165\u63a5\u53e3\u540e\uff0c\u624b\u52a8\u6dfb\u52a0\u4e00\u4e2a\u63a5\u53e3\u7528\u4f8b\uff0c\u5220\u9664\u5176\u4ed6\u7528\u4f8b\uff0c\u518d\u6b21\u5bfc\u5165\uff0c\u62a5\u9519
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590dsql\u52a0\u8f7d\u7528\u4f8b\uff0csql\u811a\u672c\u6ca1\u6709\u540c\u6b65\u7684\u7f3a\u9677 (#16483)
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u9664http\u534f\u8baeTEST\u9875\u9762\u52a0\u8f7d\u7528\u4f8b\u663e\u793a\u6210\u4e86\u65b0\u5efa\u7528\u4f8b\u9875\u9762\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u524d\u7f6esql\u7684\u6837\u5f0f
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4ece\u56de\u6536\u7ad9\u6062\u590d\u63a5\u53e3\u7528\u4f8b\u589e\u52a0\u91cd\u540d\u6821\u9a8c
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590d\u7528\u6237\u901a\u8fc7api\u8c03\u7528\u63a5\u53e3\u540e\uff0c\u672c\u8eab\u6743\u9650\u6ca1\u6709\u53ca\u65f6\u5237\u65b0\u7684\u95ee\u9898
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u521b\u5efa\u9879\u76ee\u63a5\u53e3\u5de5\u4f5c\u7a7a\u95f4ID\u4e3a\u7a7a\u53ef\u6210\u529f\u521b\u5efa
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590d\u521b\u5efa\u9879\u76ee\u65f6\u6743\u9650\u62e6\u622a\u7684\u95ee\u9898
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u7528\u6237\u4ec5\u6709\u9879\u76ee\u6743\u9650\u65f6\u4e0d\u5360\u5de5\u4f5c\u7a7a\u95f4\u914d\u989d
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u591a\u8282\u70b9\u90e8\u7f72\u65f6\u67e5\u8be2\u76d1\u63a7targets\u6570\u636e\u4e0d\u4e00\u81f4\u7684\u95ee\u9898
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u62a5\u544a\u5bf9\u6bd4\u65f6\u663e\u793a\u591a\u4f59\u7684y\u8f74\u7684\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): excel\u5bfc\u5165\u5bfc\u51fa\u62a5\u9519
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u8111\u56fe\u521b\u5efa\u7528\u4f8b\u62a5\u9519
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u529f\u80fd\u7528\u4f8b\u6279\u91cf\u5220\u9664\u7684\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u529f\u80fd\u7528\u4f8b\u5bfc\u51fa\u6a21\u677f\u6ca1\u6709\u6807\u6ce8
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u529f\u80fd\u7528\u4f8b\u5bfc\u51fa\u7f3a\u5c11\u6b65\u9aa4\u7b49\u4fe1\u606f
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7f3a\u9677\u5217\u8868\u81ea\u5b9a\u4e49\u591a\u9009\u6846\u7b5b\u9009\u5931\u6548
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u8111\u56fe\u4e00\u952e\u5c55\u5f00\u6ca1\u6709\u5c55\u5f00\u4e34\u65f6\u8282\u70b9
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4f01\u4e1a\u7248\u7985\u9053\u540c\u6b65\u7f3a\u9677\u56fe\u7247\u65e0\u6cd5\u663e\u793a
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7b2c\u4e09\u65b9\u5e73\u53f0\u7f3a\u9677\u90e8\u5206\u5b57\u6bb5\u540c\u6b65\u51fa\u9519
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7f3a\u9677\u5217\u8868\u81ea\u5b9a\u4e49\u5b57\u6bb5\u70b9\u51fb\u6392\u5e8f\u62a5\u9519
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u5206\u4eab\u529f\u80fd\u7528\u4f8b\u7edf\u8ba1\u65e0\u6cd5\u5c55\u793a
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u9996\u9875\u7f3a\u9677\u6570\u4e0d\u5e94\u8be5\u7edf\u8ba1\u5df2\u5173\u95ed\u7684\u7f3a\u9677
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u8111\u56fe\u4fdd\u5b58\u4e34\u65f6\u8282\u70b9\u540e\uff0c\u90e8\u5206\u8282\u70b9\u6ca1\u4fdd\u5b58\u6210\u529f
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7528\u4f8b\u8bc4\u5ba1\u4e2d\u7528\u4f8b\u5217\u8868\u7684\u72b6\u6001\u4e0e\u7f16\u8f91\u7684\u72b6\u6001\u4e0d\u4e00\u81f4
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u8fd0\u884c\u68c0\u67e5\u662f\u5426\u6709\u53ef\u7528\u884c\u7528\u4f8b\u7684\u7f3a\u9677 (#16497)
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ddf\u8e2a\u9996\u9875\u5173\u8054\u7528\u4f8b\u6570\u91cf\u7edf\u8ba1\u5ffd\u7565\u6389\u56de\u6536\u7ad9\u4e2d\u7684\u63a5\u53e3\u548c\u573a\u666f
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u5173\u8054\u7528\u4f8b\u5220\u9664\u65f6\u6d4b\u8bd5\u8ba1\u5212\u8be6\u60c5\u4e2d\u76f8\u5e94\u7528\u4f8b\u5217\u8868\u7684\u6a21\u5757\u6811\u663e\u793a\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u63a5\u53e3\u8c03\u7528\u6ca1\u6709\u5173\u8054\u53ef\u6267\u884c\u7528\u4f8b\u6d4b\u8bd5\u8ba1\u5212\u6267\u884c\u65f6\u6ca1\u6709\u63d0\u793a\u7684\u7f3a\u9677
    • fix(\u9ad8\u7ea7\u641c\u7d22): \u63a5\u53e3\u81ea\u52a8\u5316\u56de\u6536\u7ad9\u9ad8\u7ea7\u641c\u7d22\u72b6\u6001\u5b57\u6bb5\u548c\u5217\u8868\u72b6\u6001\u4e0d\u4e00\u81f4
    "},{"location":"about/changelog/#v200","title":"v2.0.0","text":"

    2022\u5e747\u670827\u65e5

    \u65b0\u589e\u529f\u80fd

    • \u5bfc\u822a\u680f\u5168\u65b0\u5347\u7ea7
    • \u6d4b\u8bd5\u8ba1\u5212\u652f\u6301\u5173\u8054UI\u6d4b\u8bd5\u7528\u4f8b\u6267\u884c
    • \u6d4b\u8bd5\u8ba1\u5212\u4e2d\u8fd0\u884c\u7684\u63a5\u53e3\u6d4b\u8bd5\u652f\u6301\u5931\u8d25\u91cd\u8bd5
    • UI\u6d4b\u8bd5\u573a\u666f\u652f\u6301\u6279\u91cf\u6267\u884c
    • \u5de5\u4f5c\u53f0-\u63a5\u53e3\u7528\u4f8b\u201c\u5f85\u66f4\u65b0\u201d\u5217\u8868\uff0c\u652f\u6301\u4e00\u952e\u540c\u6b65\u63a5\u53e3\u53d8\u66f4
    • \u9ad8\u7ea7\u641c\u7d22\u652f\u6301\u81ea\u5b9a\u4e49\u5b57\u6bb5\u641c\u7d22

    \u529f\u80fd\u4f18\u5316

    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u9644\u4ef6\u529f\u80fd\u652f\u6301\u4e0a\u4f20\u89c6\u9891\u6587\u4ef6
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u529f\u80fd\u7528\u4f8b\u652f\u6301\u6279\u91cf\u5173\u8054\u9700\u6c42
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u6d4b\u8bd5\u8ba1\u5212\u3001\u6d4b\u8bd5\u8bc4\u5ba1\u5173\u8054\u7528\u4f8b\u652f\u6301\u6309\u5173\u8054\u9700\u6c42\u7b5b\u9009\u7528\u4f8b
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u589e\u52a0\u8fd0\u884c\u73af\u5883\u5c55\u793a
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u652f\u6301\u63a5\u53e3\u5931\u8d25\u7528\u4f8b\u4e00\u952e\u91cd\u8dd1\uff08X-Pack\uff09
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u9996\u9875\u6570\u636e\u7edf\u8ba1\u4f18\u5316
    • \u63a5\u53e3\u6d4b\u8bd5\uff1aAPI\u5bfc\u5165\u903b\u8f91\u91cd\u6784
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u6d4b\u8bd5\u62a5\u544a\u589e\u52a0\u8fd0\u884c\u73af\u5883\u5c55\u793a
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u652f\u6301\u6dfb\u52a0\u573a\u666f\u7ea7\u522b\u65ad\u8a00
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u96c6\u5408\u62a5\u544a\u652f\u6301\u5931\u8d25\u7528\u4f8b\u4e00\u952e\u91cd\u8dd1\uff08X-Pack\uff09
    • UI\u6d4b\u8bd5\uff1a\u9875\u9762\u5143\u7d20\u652f\u6301Excel\u5bfc\u5165\u5bfc\u51fa\u7ba1\u7406\uff08X-Pack\uff09
    • UI\u6d4b\u8bd5\uff1aUI\u573a\u666f\u53d8\u91cf\u4f18\u5316\uff08X-Pack\uff09
    • UI\u6d4b\u8bd5\uff1a\u9ad8\u7ea7\u8bbe\u7f6e\u65ad\u8a00\u548c\u6570\u636e\u63d0\u53d6\u5c55\u793a\u4f18\u5316\uff08X-Pack\uff09
    • \u9879\u76ee\u8bbe\u7f6e\uff1a\u6d88\u606f\u901a\u77e5\u652f\u6301\u5bf9\u63a5\u81ea\u5b9a\u4e49webhook\uff08X-Pack\uff09
    "},{"location":"about/contact/","title":"\u8054\u7cfb\u6211\u4eec","text":""},{"location":"about/contact/#1","title":"1 \u5fae\u4fe1\u516c\u4f17\u53f7","text":""},{"location":"about/contact/#2","title":"2 \u5fae\u4fe1\u7fa4","text":"

    \u5982\u60a8\u5728\u4f7f\u7528\u8fc7\u7a0b\u4e2d\u9047\u5230\u95ee\u9898\uff0c\u6b22\u8fce\u60a8\u5728\u7fa4\u91cc\u8fdb\u884c\u53cd\u9988\u4e0e\u54a8\u8be2\uff08\u6dfb\u52a0\u4e0b\u65b9\u5c0f\u52a9\u624b\u5fae\u4fe1\uff0c\u4ed6\u5c06\u4f1a\u5c06\u60a8\u62c9\u8fdb MeterSphere \u4ea4\u6d41\u7fa4\u4e2d\uff09\uff0c\u8bf7\u60a8\u5728\u8be2\u95ee\u524d\u5c3d\u53ef\u80fd\u5168\u9762\u7684\u63cf\u8ff0\u60a8\u7684\u60c5\u51b5\uff0c\u4f8b\u5982\uff1a

    • \u5f53\u524d\u4f7f\u7528\u7684 MeterSphere \u7248\u672c\u3002
    • \u5f53\u524d\u4f7f\u7528\u7684\u6d4f\u89c8\u5668\u7c7b\u578b\u3002
    • \u8be6\u7ec6\u7684\u95ee\u9898\u63cf\u8ff0\u3002
    • \u95ee\u9898\u7684\u622a\u56fe\u8bf4\u660e\u3002

    "},{"location":"about/contact/#3","title":"3 \u5f00\u6e90\u793e\u533a\u8bba\u575b","text":"

    \u60a8\u53ef\u4ee5\u5728\u98de\u81f4\u4e91\u5b98\u65b9\u7684 \u5f00\u6e90\u793e\u533a\u8bba\u575b \u641c\u7d22\u3001\u54a8\u8be2\u3001\u8ba8\u8bba\u4ea4\u6d41\u4ea7\u54c1\u76f8\u5173\u7684\u6280\u672f\u95ee\u9898\u3002

    "},{"location":"about/contact/#4","title":"4 \u5176\u4ed6\u65b9\u5f0f","text":"
    • \u6280\u672f\u54a8\u8be2\uff1ahttps://jinshuju.net/f/qQOZj1
    • \u4f01\u4e1a\u7248\u8bd5\u7528\uff1ahttps://jinshuju.net/f/CzzAOe
    • \u5b98\u7f51\uff1ahttp://www.metersphere.io
    • \u90ae\u7bb1\uff1asupport@fit2cloud.com
    • \u7535\u8bdd\uff1a400-052-0755
    "},{"location":"about/security_bulletins/","title":"\u5b89\u5168\u516c\u544a","text":"
    • \u91cd\u8981\u901a\u77e5\u4e28MeterSphere\u6f0f\u6d1e\u901a\u77e5\u53ca\u4fee\u590d\u65b9\u6848\uff082023.05.26\uff09
    • \u91cd\u8981\u901a\u77e5\u4e28MeterSphere\u6f0f\u6d1e\u901a\u77e5\u53ca\u4fee\u590d\u65b9\u6848\uff082023.03.10\uff09
    • \u91cd\u8981\u901a\u77e5\u4e28MeterSphere\u6f0f\u6d1e\u901a\u77e5\u53ca\u4fee\u590d\u65b9\u6848\uff082023.01.04\uff09
    "},{"location":"case_studies/user_cases/","title":"\u7528\u6237\u6848\u4f8b","text":"
    • \u4e2d\u56fd\u79fb\u52a8\u4e0a\u7814\u9662\u57fa\u4e8e MeterSphere \u6784\u5efa\u89c4\u8303\u5316\u6d4b\u8bd5\u4f53\u7cfb
    • 88 \u5b8c\u7f8e\u90ae\u7bb1\u5168\u9762\u63d0\u5347\u4ea7\u54c1\u8d28\u91cf\u7684\u843d\u5730\u6307\u5357
    • \u851a\u6f9c\u73af\u4fdd\u57fa\u4e8e MeterSphere \u7684\u81ea\u52a8\u5316\u6d4b\u8bd5\u5b9e\u8df5
    • \u6613\u76db\u4fe1\u606f MeterSphere \u63a5\u53e3\u6d4b\u8bd5\u4f7f\u7528\u7ecf\u9a8c
    • \u6613\u76db\u4fe1\u606f\u5728 MeterSphere \u4e0a\u5b9e\u73b0\u591a\u7c7b\u578b\u63a5\u53e3\u573a\u666f\u81ea\u52a8\u5316\u6d4b\u8bd5
    • \u6c38\u798f\u4fe1\u606f\u57fa\u4e8e MeterSphere \u4ece\u9879\u76ee\u7ef4\u5ea6\u6301\u7eed\u63a8\u8fdb\u6d4b\u8bd5\u4efb\u52a1
    • \u4e5d\u91cc\u4e91\u57fa\u4e8e MeterSphere \u843d\u5730\u4e00\u7ad9\u5f0f\u81ea\u52a8\u5316\u6d4b\u8bd5\u5e73\u53f0
    • \u6c11\u751f\u79d1\u6280\u57fa\u4e8e MeterSphere \u5e73\u53f0\u5b9e\u73b0\u6d4b\u8bd5\u7528\u4f8b\u590d\u7528
    • 360\u501f\u52a9 MeterSphere \u63d0\u5347\u81ea\u52a8\u5316\u6d4b\u8bd5\u6c34\u5e73
    • \u7528\u53cb\u878d\u8054\u501f\u52a9 MeterSphere \u5f00\u6e90\u6301\u7eed\u6d4b\u8bd5\u5e73\u53f0\u63d0\u5347\u6d4b\u8bd5\u6548\u7387
    • \u9886\u5148\u672a\u6765\u7684 MeterSphere \u63a5\u53e3\u6d4b\u8bd5\u5b9e\u8df5
    • MeterSphere \u63a5\u53e3\u6d4b\u8bd5\u5728\u4e92\u8054\u7f51\u96f6\u552e\u5e73\u53f0\u6734\u6734\u8d85\u5e02\u7684\u5b9e\u8df5\u5206\u4eab
    • \u5546\u7c73\u79d1\u6280\u57fa\u4e8e MeterSphere \u7684\u5168\u7403\u5316\u4e91\u670d\u52a1\u63a5\u53e3\u6d4b\u8bd5\u5b9e\u8df5
    "},{"location":"faq/api_test/","title":"\u63a5\u53e3\u6d4b\u8bd5\u76f8\u5173","text":""},{"location":"faq/api_test/#1","title":"1 \u5728\u63a5\u53e3\u81ea\u52a8\u5316\u7684\u4e00\u4e2a\u573a\u666f\u91cc\u9762\uff0c\u4e2a\u522b\u63a5\u53e3\u9700\u8981\u4f7f\u7528\u4e0d\u540c\u7684\u73af\u5883\u53bb\u8fd0\u884c\uff0c\u8be5\u600e\u4e48\u5904\u7406\uff1f","text":"

    \u53ef\u4ee5\u901a\u8fc7\u6dfb\u52a0\u81ea\u5b9a\u4e49\u8bf7\u6c42\u7684\u65b9\u5f0f\u5b9e\u73b0\u3002

    "},{"location":"faq/api_test/#2","title":"2 \u63a5\u53e3\u4f20\u53c2\u9700\u8981\u4f7f\u7528\u968f\u673a\u6570\uff0c\u6709\u54ea\u4e9b\u5185\u7f6e\u65b9\u6cd5\uff1f","text":"

    \u53ef\u4ee5\u53c2\u8003\u4f7f\u7528 JMeter \u5185\u7f6e\u51fd\u6570\u6216\u8005 Mock.js \u51fd\u6570\u751f\u6210\u968f\u673a\u503c\u3002\u8bf7\u53c2\u8003\u5185\u7f6e\u51fd\u6570

    "},{"location":"faq/api_test/#3","title":"3 \u63a5\u53e3\u81ea\u52a8\u5316\u591a\u573a\u666f\u5982\u4f55\u8fdb\u884c\u6279\u91cf\u8fd0\u884c\uff1f","text":"

    \u5728\u573a\u666f\u5217\u8868\u9009\u4e2d\u573a\u666f\uff0c\u70b9\u51fb\u3010\u00b7\u00b7\u00b7\u3011\u5f39\u51fa\u4e0b\u62c9\u6846\uff0c\u9009\u62e9\u3010\u6279\u91cf\u8fd0\u884c\u3011\u3002

    "},{"location":"faq/api_test/#4","title":"4 \u63a5\u53e3\u6d4b\u8bd5\u5982\u4f55\u652f\u6301\u4e0a\u4f20\u6587\u4ef6\u7684\u63a5\u53e3\u5417\uff1f","text":"

    \u6839\u636e\u63a5\u53e3\u8981\u6c42\u7684\u8bf7\u6c42\u4f53\u7c7b\u578b\uff0c\u9009\u62e9 form-data\u3001x-www-form-urlencoded \u683c\u5f0f\u7684\u8bf7\u6c42\u4f53\uff0c\u53c2\u6570\u7c7b\u578b\u9009\u62e9 file\uff0c\u9009\u62e9\u8981\u6dfb\u52a0\u7684\u6587\u4ef6\u3002\u4e5f\u53ef\u4ee5\u4f7f\u7528 binary \u683c\u5f0f\u7684\u8bf7\u6c42\u4f53\uff0c\u76f4\u63a5\u9009\u62e9\u8981\u6dfb\u52a0\u7684\u6587\u4ef6\u3002

    "},{"location":"faq/api_test/#5-cookie","title":"5 \u63a5\u53e3\u81ea\u52a8\u5316\u4e2d\u6a21\u5757\u4e4b\u95f4\u662f\u5426\u652f\u6301\u5171\u4eab cookie?","text":"

    \u73af\u5883\u914d\u7f6e-http \u914d\u7f6e\uff0c\u652f\u6301\u6309\u6a21\u5757\u4e0d\u540c\u73af\u5883\u3002\u540c\u4e00\u6a21\u5757\u4e0b\u4e0d\u540c\u573a\u666f\u53ef\u4ee5\u5f00\u542f\u5171\u4eab cookie\uff0c\u4e0d\u540c\u6a21\u5757\u4e0d\u652f\u6301\u5171\u4eab cookie\u3002

    "},{"location":"faq/api_test/#6","title":"6 \u63a5\u53e3\u6d4b\u8bd5\u4e2d\uff0c\u671f\u671b\u7ed3\u679c\u4e0d\u4e3a\u7a7a\uff0c\u5982\u4f55\u5199\u65ad\u8a00\uff1f","text":"

    \u53ef\u4ee5\u5728\u671f\u671b\u503c\u4e2d\u4f7f\u7528\u5339\u914d\u4efb\u610f\u975e\u7a7a\u5b57\u7b26\u7684\u6b63\u5219\u8868\u8fbe\u5f0f \\S+ \u8fdb\u884c\u5224\u65ad\u3002

    "},{"location":"faq/api_test/#7-sql","title":"7 \u5bf9SQL\u8bf7\u6c42\uff0c\u5982\u4f55\u65ad\u8a00\uff1f","text":"

    SQL\u8bf7\u6c42\u7684\u65ad\u8a00\u53ef\u901a\u8fc7\u5982\u4e0b\u6b65\u9aa4\u8fdb\u884c\uff1a

    • \u914d\u7f6e\u201c\u5b58\u50a8\u7ed3\u679c\u201d\u548c\u201c\u6309\u5217\u5b58\u50a8\u201d\uff0c\u5b58\u50a8\u6570\u636e\u3002
    • \u914d\u7f6eSQL\u811a\u672c\uff0c\u53d6\u51fa\u9700\u8981\u65ad\u8a00\u7684\u53c2\u6570\u3002
    • \u6dfb\u52a0\u811a\u672c\u65ad\u8a00\uff0c\u5224\u65ad\u5b58\u50a8 SQL \u7ed3\u679c\u6570\u636e\u7684\u53d8\u91cf\u7684\u53d8\u91cf\u503c\u3002
    • \u53ef\u53c2\u8003MeterSphere \u6570\u636e\u5e93\u63d0\u53d6\u53c2\u6570\u548c\u65ad\u8a00
    "},{"location":"faq/api_test/#8","title":"8 \u5168\u5c40\u53d8\u91cf\u548c\u573a\u666f\u53d8\u91cf\u91cc\uff0c\u5305\u542b\u76f8\u540c\u53d8\u91cf\u540d\u7684\u53d8\u91cf\uff0c\u4f18\u5148\u7ea7\u5982\u4f55\u5224\u65ad\uff1f","text":"

    \u5f53\u5168\u5c40\u53d8\u91cf\u548c\u573a\u666f\u53d8\u91cf\u53d8\u91cf\u540d\u76f8\u540c\u65f6\uff0c\u4f18\u5148\u4f7f\u7528\u573a\u666f\u53d8\u91cf\u3002

    "},{"location":"faq/api_test/#9","title":"9 \u573a\u666f\u4e2d\u4f7f\u7528\u5f15\u7528\u65b9\u5f0f\u5bfc\u5165\u63a5\u53e3\uff0c\u4f46\u53c2\u6570\u53c8\u9700\u8981\u91cd\u5199\uff0c\u5e94\u8be5\u5982\u4f55\u5904\u7406\uff1f","text":"

    \u63a5\u53e3\u5bfc\u5165\u573a\u666f\u6709\u4e24\u79cd\u65b9\u5f0f\uff0c\u7b2c\u4e00\u79cd\u65b9\u5f0f\u662f\u590d\u5236\uff0c\u590d\u5236\u7684\u63a5\u53e3\u53ef\u4ee5\u5728\u573a\u666f\u4e2d\u4fee\u6539\u53c2\u6570\uff1b\u7b2c\u4e8c\u79cd\u65b9\u5f0f\u662f\u5f15\u7528\uff0c\u5f15\u7528\u7684\u63a5\u53e3\u53ea\u80fd\u5728\u63a5\u53e3\u5b9a\u4e49\u4e2d\u8fdb\u884c\u4fee\u6539\uff0c\u4fee\u6539\u5b8c\u6210\u540e\u4f1a\u81ea\u52a8\u540c\u6b65\u5230\u573a\u666f\u91cc\u3002

    "},{"location":"faq/api_test/#10","title":"10 \u573a\u666f\u4e2d\u6dfb\u52a0\u4e86\u6761\u4ef6\u63a7\u5236\u5668\uff0c\u4e14\u5339\u914d\u5931\u8d25\u4e86\uff0c\u4e3a\u4ec0\u4e48\u540e\u7eed\u7684\u63a5\u53e3\u8fd8\u4f1a\u6267\u884c\uff1f","text":"

    \u540e\u7eed\u7684\u5c06\u63a5\u53e3\u62d6\u5165\u5230\u6761\u4ef6\u63a7\u5236\u5668\u4e0b\u6210\u4e3a\u5b50\u6b65\u9aa4\u624d\u6709\u6548\u3002

    "},{"location":"faq/api_test/#11","title":"11 \u63a5\u53e3\u6d4b\u8bd5\u4e2d\uff0c\u5982\u4f55\u83b7\u53d6\u5f53\u524d\u7684\u65f6\u95f4\u6765\u505a\u4e3a\u53d8\u91cf\uff1f","text":"

    \u53ef\u4ee5\u4f7f\u7528 ${__time()} \u5185\u7f6e\u51fd\u6570\u3002

    "},{"location":"faq/api_test/#12-sql","title":"12 \u5982\u4f55\u521b\u5efa SQL \u534f\u8bae\u7684\u63a5\u53e3\u6d4b\u8bd5\uff1f","text":"

    \u5177\u4f53\u64cd\u4f5c\u8bf7\u53c2\u8003\uff1ahttps://brucelong.blog.csdn.net/article/details/110133647 \u3002

    "},{"location":"faq/api_test/#13","title":"13 \u63a5\u53e3\u81ea\u52a8\u5316\u6d4b\u8bd5\uff0c\u4e00\u4e2a\u9879\u76ee\u4e0b\u7684\u4e0d\u540c\u63a5\u53e3\u573a\u666f\uff0c\u662f\u5426\u53ef\u4ee5\u5f15\u7528\u540c\u4e00\u4e2a\u811a\u672c\uff1f","text":"

    \u53ef\u4ee5\u4f7f\u7528\u516c\u5171\u4ee3\u7801\u7247\u6bb5\u3002\u53ef\u4ee5\u5728\u201c\u7cfb\u7edf\u8bbe\u7f6e\u201d - \u201c\u9879\u76ee\u7ba1\u7406\u201d\uff0c\u7ed9\u6307\u5b9a\u7684\u9879\u76ee\u4e0a\u4f20jar\u5305\uff0c\u7136\u540e\u5728\u9879\u76ee\u8bbe\u7f6e-\u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5\u4e0b\u7f16\u5199\u811a\u672c\uff0c\u4e4b\u540e\u6b64\u9879\u76ee\u4e0b\u7684\u4e0d\u540c\u573a\u666f\u5c31\u53ef\u4ee5\u5f15\u7528\u3002

    "},{"location":"faq/api_test/#14","title":"14 \u573a\u666f\u53d8\u91cf\u7684\u7c7b\u578b\u4e3a\u968f\u673a\u6570\uff0c\u4f46\u6267\u884c\u8fc7\u7a0b\u4e2d\u4e3a\u4ec0\u4e48\u6ca1\u6709\u5b9e\u9645\u751f\u6210\uff1f","text":"

    \u8bf7\u68c0\u67e5\u914d\u7f6e\u7684\u968f\u673a\u6570\u957f\u5ea6\uff0c\u968f\u673a\u6570\u957f\u5ea6\u9700\u8981\u5728 MeterSphere \u9650\u5b9a\u8303\u56f4\u5185\u3002

    "},{"location":"faq/api_test/#15-csv","title":"15 \u5982\u4f55\u901a\u8fc7\u53d8\u91cf\u5f15\u7528 CSV \u6570\u636e\uff1f","text":"

    \u5728\u573a\u666f\u7f16\u8f91\u9875\u9762\uff0c\u70b9\u51fb\u573a\u666f\u53d8\u91cf\u6dfb\u52a0 CSV \u7c7b\u578b\u7684\u573a\u666f\u53d8\u91cf\u3002\u5177\u4f53\u64cd\u4f5c\u53c2\u8003 \u573a\u666f\u53d8\u91cf\u914d\u7f6e \u3002

    "},{"location":"faq/api_test/#16","title":"16 \u63a5\u53e3\u81ea\u52a8\u5316\u91cc\uff0c\u540c\u4e00\u573a\u666f\u4e0b\u662f\u5426\u652f\u6301\u914d\u7f6e\u591a\u4e2a\u63a5\u53e3\u57df\u540d\uff1f","text":"

    \u5728\u73af\u5883\u914d\u7f6e\u91cc\u9762\uff0c\u53ef\u4ee5\u5206\u522b\u6309\u63a5\u53e3\u6240\u5c5e\u6a21\u5757\uff0c\u6216\u8005\u63a5\u53e3\u8def\u5f84\u8fd9\u4e24\u79cd\u65b9\u5f0f\uff0c\u6765\u8bbe\u8ba1\u548c\u5339\u914d\u4e0d\u540c\u63a5\u53e3\u5bf9\u5e94\u7684\u57df\u540d\u3002

    "},{"location":"faq/api_test/#17-code","title":"17 \u8bf7\u6c42\u91cc\u9762\u6d89\u53ca\u5230\u4e86\u8f6c\u53d1\u91cd\u5b9a\u5411\uff0c\u5982\u4f55\u83b7\u53d6\u63a5\u53e3\u8fd4\u56de\u7684code\uff1f","text":"

    \u5728\u63a5\u53e3\u7684\u3010\u8bf7\u6c42\u53c2\u6570\u3011\u533a\u57df\u7684\u3010\u5176\u4ed6\u8bbe\u7f6e\u3011\u9875\u9762\u4e2d\uff0c\u53d6\u6d88\u52fe\u9009 \u3010\u8ddf\u968f\u91cd\u5b9a\u5411\u3011\u9009\u9879\u3002

    "},{"location":"faq/api_test/#18","title":"18 \u63a5\u53e3\u81ea\u52a8\u5316\u6279\u91cf\u6267\u884c\uff0c\u662f\u5e76\u884c\u8fd8\u662f\u4e32\u884c\uff1f","text":"

    \u63a5\u53e3\u81ea\u52a8\u5316\u6279\u91cf\u6267\u884c\u540c\u65f6\u652f\u6301\u4e32\u884c\u548c\u5e76\u884c\u4e24\u79cd\u65b9\u5f0f\uff0c\u53ef\u4ee5\u5728\u9009\u62e9\u8fd0\u884c\u573a\u666f\u540e\uff0c\u5728 \u8fd0\u884c\u914d\u7f6e \u5f39\u7a97\u8fdb\u884c\u9009\u62e9\u3002

    "},{"location":"faq/api_test/#19","title":"19 \u6279\u91cf\u6267\u884c\u63a5\u53e3\u81ea\u52a8\u5316\uff0c\u662f\u5426\u53ef\u4ee5\u6309\u573a\u666f\u5355\u72ec\u663e\u793a\u6d4b\u8bd5\u62a5\u544a\uff1f","text":"

    \u5728 \u8fd0\u884c\u914d\u7f6e \u5f39\u7a97\u7684 \u5176\u4ed6\u914d\u7f6e \u9009\u9879\u4e2d\u9009\u62e9\u751f\u6210 \u72ec\u7acb\u62a5\u544a\u3002

    "},{"location":"faq/api_test/#20","title":"20 \u63a5\u53e3\u81ea\u52a8\u5316\u9009\u62e9\u591a\u573a\u666f\u540c\u65f6\u8fd0\u884c\u65f6\uff0c\u53ef\u4ee5\u628a\u6267\u884c\u7ed3\u679c\u6574\u5408\u6210\u4e00\u4e2a\u6d4b\u8bd5\u62a5\u544a\u5417\uff1f","text":"

    \u5728\u3010\u8fd0\u884c\u914d\u7f6e\u3011\u5f39\u7a97\u7684 \u3010\u5176\u4ed6\u914d\u7f6e\u3011\u9009\u9879\u4e2d\u9009\u62e9\u751f\u6210\u3010\u96c6\u5408\u62a5\u544a\u3011\u3002

    "},{"location":"faq/api_test/#21","title":"21 \u63a5\u53e3\u5b9a\u4e49\u6a21\u5757\uff0c\u7f16\u8f91\u63a5\u53e3\u7684\u9875\u9762\uff0c\u5982\u4f55\u4fdd\u5b58\uff1f","text":"

    \u5728\u7f16\u8f91\u63a5\u53e3\u9875\u9762\u201c\u57fa\u7840\u4fe1\u606f\u201d\u533a\u57df\uff0c\u70b9\u51fb\u6d4b\u8bd5\u6309\u94ae\u540e\u9762\u7684\u5411\u4e0b\u6309\u94ae\uff0c\u70b9\u51fb\u3010\u66f4\u65b0\u63a5\u53e3\u3011\u9009\u9879\u5373\u53ef\u3002

    "},{"location":"faq/api_test/#22-non-http-response-code-javanetsockettimeoutexception","title":"22 \u6267\u884c\u63a5\u53e3\u62a5\u9519\uff1aNon HTTP response code: java.net.SocketTimeoutException","text":"

    \u5728\u63a5\u53e3\u3010\u5176\u4ed6\u8bbe\u7f6e\u3011\u4e2d\u589e\u52a0\u7684\u8fde\u63a5\u8d85\u65f6\u65f6\u95f4\u3002

    "},{"location":"faq/api_test/#23","title":"23 \u63a5\u53e3\u5b9a\u4e49\u91cc\u7684\u5355\u63a5\u53e3\uff0c\u53ef\u4ee5\u6279\u91cf\u6267\u884c\u5417\uff1f","text":"

    \u76ee\u524d\u53ef\u4ee5\u901a\u8fc7\u63a5\u53e3\u5b9a\u4e49\u6a21\u5757\u7684CASE\u5217\u8868\u6765\u6279\u91cf\u6267\u884c\u7528\u4f8b\u3002

    "},{"location":"faq/api_test/#24-httptcpsqldubbo","title":"24 \u63a5\u53e3\u6d4b\u8bd5\u6a21\u5757\u91cc\uff0c\u76ee\u524d\u9664\u4e86\u73b0\u6709\u7684HTTP\u3001TCP\u3001SQL\u3001DUBBO\uff0c\u8fd8\u652f\u6301\u5176\u4ed6\u534f\u8bae\u5417\uff1f","text":"

    1.13 \u7248\u672c\u5df2\u7ecf\u901a\u8fc7\u63d2\u4ef6\u7684\u65b9\u5f0f\u5b9e\u73b0\u4e86\u5bf9 MQTT \u534f\u8bae\u7684\u652f\u6301\uff0c\u8be5\u63d2\u4ef6\u662f\u4f01\u4e1a\u7248\u7684\u529f\u80fd\uff0c\u5728 MeterSphere \u3010\u7cfb\u7edf\u8bbe\u7f6e-\u7cfb\u7edf-\u63d2\u4ef6\u7ba1\u7406\u3011\u4e2d\u4e0a\u4f20\u3002

    "},{"location":"faq/api_test/#25-metersphere-ide-api","title":"25 MeterSphere \u53ef\u4ee5\u76f4\u63a5\u5728 IDE \u4e2d\u540c\u6b65 API \u5417\uff1f","text":"

    MeterSphere \u5df2\u652f\u6301 IDEA API\u540c\u6b65\u63d2\u4ef6\uff0c\u8be6\u7ec6\u4f7f\u7528\u65b9\u6cd5\u89c1metersphere-idea\u63d2\u4ef6\u3002

    "},{"location":"faq/api_test/#26","title":"26 \u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u91cc\u53ef\u4ee5\u8de8\u9879\u76ee\u5f15\u7528\u63a5\u53e3/\u7528\u4f8b\u5417\uff1f","text":"

    \u652f\u6301\u8de8\u9879\u76ee\u5f15\u7528\u63a5\u53e3\u3001\u7528\u4f8b\u3001\u573a\u666f\u3002

    "},{"location":"faq/api_test/#27","title":"27 \u5feb\u6377\u8c03\u8bd5\u7684\u65f6\u5019\uff0c\u4e00\u76f4\u8f6c\u5708\u7b49\u5f85\u662f\u4ec0\u4e48\u539f\u56e0?","text":"

    MeterSphere \u7684\u670d\u52a1\u5668\u5230\u88ab\u6d4b\u670d\u52a1\u7684\u5730\u5740\u7f51\u7edc\u4e0d\u901a\uff0c\u53ef\u5728 MeterSphere \u4e0a telnet \u88ab\u6d4b\u670d\u52a1\u7aef\u53e3\u68c0\u67e5\u7f51\u7edc\u3002

    "},{"location":"faq/api_test/#28-case","title":"28 \u8fdb\u884c\u63a5\u53e3 case \u8c03\u8bd5\u65f6\uff0c\u8c03\u7528\u4e0d\u540c\u63a7\u5236\u53f0\u4fe1\u606f\u663e\u793a\u8fde\u63a5\u67d0\u5730\u5740\u8d85\u65f6\uff0c\u5982\u4f55\u6392\u67e5\uff1f","text":"

    \u8fd9\u79cd\u60c5\u51b5\u5927\u6982\u7387\u662f\u7f51\u7edc\u4e0d\u901a\u9020\u6210\u7684\uff0c\u53ef\u4ee5\u4f7f\u7528 curl \u547d\u4ee4\u5728 ms-node-controller \u5bb9\u5668\u548c\u670d\u52a1\u5668\u4e0a\u8fdb\u884c\u6d4b\u8bd5\uff1b

    "},{"location":"faq/api_test/#29-linuxhost","title":"29 \u5728\u63a5\u53e3\u8c03\u8bd5\u65f6\u4f7f\u7528\u65b0\u7684\u57df\u540d\uff0c\u5728Linux\u7684host\u6587\u4ef6\u4e2d\u6dfb\u52a0\u4e86\u57df\u540d\u89e3\u6790\uff0c\u4f46\u4f9d\u7136\u8c03\u8bd5\u4e0d\u901a\uff0c\u5982\u4f55\u6392\u67e5\uff1f","text":"

    \u56e0\u4e3a node-controller \u5bb9\u5668\u4e2d\u65e0\u6cd5\u89e3\u6790\u51fa\u57df\u540d\uff0c\u56e0\u6b64\u9700\u8981\u8fdb\u5165\u5230 node-controller \u5bb9\u5668\u4e2dhost\u6587\u4ef6\u4e2d\u8fdb\u884c\u914d\u7f6e\uff0c\u7136\u540e\u91cd\u542f node-controller \u5bb9\u5668\u3002

    "},{"location":"faq/api_test/#30","title":"30 \u5982\u4f55\u5faa\u73af\u53d6\u51fa\u5217\u8868\u53d8\u91cf\u7684\u6bcf\u4e00\u4e2a\u503c\uff1f","text":"

    \u7ed3\u5408\u5faa\u73af\u63a7\u5236\u5668\u548c\u8ba1\u6570\u5668\u53d6\u503c\u3002\u53c2\u8003\u65b9\u6cd5\u63a5\u53e3\u6d4b\u8bd5\u5982\u4f55\u4f7f\u7528\u591a\u4e2aList\u8fdb\u5165ForEach\u5faa\u73af\u63a7\u5236\u5668

    "},{"location":"faq/api_test/#31-unicode","title":"31 \u63a5\u53e3\u54cd\u5e94\u5185\u5bb9\u4e3a Unicode \u5b57\u7b26\u5bfc\u81f4\u4e2d\u6587\u663e\u793a\u4e3a\u4e71\u7801\uff0c\u5982\u4f55\u5904\u7406\uff1f","text":"

    \u65b9\u6cd51\uff1a \u5728\u540e\u7f6e\u811a\u672c\u4e2d\u9009\u62e9BeanShell\u8bed\u8a00\u5904\u7406\u7f16\u7801\uff0c\u7136\u540e\u5199\u5165prev.setDataEncoding(\"UTF-8\"); \u65b9\u6cd52\uff1a \u5728\u540e\u7f6e\u811a\u672c\u4e2d\u9009\u62e9BeanShell\uff0c\u7136\u540e\u5199\u5165\u5982\u4e0b\u4ee3\u7801\uff1a

    String response_value=new String(prev.getResponseData(),\"UTF-8\");\nchar aChar;\nint num= response_value.length();\nStringBuffer outBuffer=new StringBuffer(num);\nfor(int x =0; x <num;){\n    aChar= response_value.charAt(x++);\n    if(aChar=='\\\\'){\n        aChar= response_value.charAt(x++);\n        if(aChar=='u'){\n            int value =0;\n            for(int i=0;i<4;i++){\n                aChar= response_value.charAt(x++);\n                switch(aChar){\n                    case'0':\n                    case'1':\n                    case'2':\n                    case'3':\n                    case'4':\n                    case'5':\n                    case'6':\n                    case'7':\n                    case'8':\n                    case'9':\n                        value=(value <<4)+aChar-'0';\n                        break;\n                    case'a':\n                    case'b':\n                    case'c':\n                    case'd':\n                    case'e':\n                    case'f':\n                        value=(value <<4)+10+aChar-'a';\n                        break;\n                    case'A':\n                    case'B':\n                    case'C':\n                    case'D':\n                    case'E':\n                    case'F':\n                        value=(value <<4)+10+aChar-'A';\n                        break;\n                    default:\n                        throw new IllegalArgumentException(\n                                \"Malformed   \\\\uxxxx  encoding.\");}}\n            outBuffer.append((char) value);}else{\n            if(aChar=='t')\n                aChar='\\t';\n            else if(aChar=='r')\n            aChar='\\r';\n            else if(aChar=='n')\n            aChar='\\n';\n            else if(aChar=='f')\n            aChar='\\f';\n            outBuffer.append(aChar);}}else\n        outBuffer.append(aChar);}\nprev.setResponseData(outBuffer.toString());\n

    "},{"location":"faq/api_test/#32","title":"32 \u63a7\u5236\u53f0\u4e2d\u6587\u8f93\u51fa\u4e71\u7801\uff0c\u5982\u4f55\u5904\u7406\uff1f","text":"

    \u4f7f\u7528UTF\u7f16\u7801\uff0clog.info(u\"MeterSphere \u4e00\u7ad9\u5f0f\u6301\u7eed\u6d4b\u8bd5\u5e73\u53f0\")\u3002

    "},{"location":"faq/api_test/#33-jmeter","title":"33 \u63a5\u53e3\u6d4b\u8bd5\u662f\u5426\u53ef\u4ee5\u5bfc\u51fa\u5230 JMeter\uff1f","text":"

    \u53ef\u4ee5\u52fe\u9009\u5bf9\u5e94\u7684\u573a\u666f\u6216\u63a5\u53e3\uff0c\u5bfc\u51fa\u4e3a JMX \u683c\u5f0f\uff0c\u7136\u540e\u518d\u7528 JMeter \u6253\u5f00 JMX \u6587\u4ef6

    "},{"location":"faq/api_test/#34-metersphere-csv","title":"34 MeterSphere \u4e2d CSV \u6587\u4ef6\u7684\u4e3b\u8981\u5e94\u7528\u573a\u666f\u6709\u54ea\u4e9b\uff1f","text":"
    • \u5728\u63a5\u53e3\u81ea\u52a8\u5316\u4e2d\u53ef\u4ee5\u5c06 CSV \u6587\u4ef6\u4f5c\u4e3a\u6279\u91cf\u4f20\u53c2\u6587\u4ef6\u53ef\u4ee5\u7528\u4f5c\u573a\u666f\u53d8\u91cf\u4f7f\u7528\uff0c\u914d\u5408\u5faa\u73af\u63a7\u5236\u5668\u4f7f\u7528\u3002
    • \u5728\u6027\u80fd\u6d4b\u8bd5\u4e2d\u4f5c\u4e3a\u53c2\u6570\u88ab\u5f15\u7528\u3002
    "},{"location":"faq/api_test/#35-csv","title":"35 \u573a\u666f\u4e2d\u5982\u4f55\u4f7f\u7528 CSV \u6587\u4ef6\u53c2\u6570\uff1f","text":"

    \u5728\u573a\u666f\u53d8\u91cf\u4e2d\u6dfb\u52a0 CSV \u6587\u4ef6\uff0c\u5728\u8bf7\u6c42\u4e2d\u901a\u8fc7 ${CSV\u7684\u6587\u4ef6\u5217\u540d} \u8fdb\u884c\u5f15\u7528\u3002

    "},{"location":"faq/api_test/#36-jar","title":"36 \u524d\u7f6e/\u540e\u7f6e\u811a\u672c\u5982\u4f55\u5f15\u7528\u5916\u90e8 jar \u5305\uff1f","text":"

    \u5728\u9879\u76ee\u8bbe\u7f6e-\u6587\u4ef6\u7ba1\u7406\u4e2d\u4e0a\u4f20 jar \u5305\u4e4b\u540e\uff0c\u5728\u524d\u7f6e/\u540e\u7f6e\u811a\u672c\u4e2d\u4f7f\u7528 import \u5373\u53ef\u5f15\u7528\u3002

    "},{"location":"faq/api_test/#37-js","title":"37 \u540e\u7f6e\u811a\u672c\u4e2d\u5982\u4f55\u5f15\u7528 js \u6587\u4ef6\uff1f","text":"

    \u5c06 js \u6587\u4ef6\u4e0a\u4f20\u5230\u670d\u52a1\u5668 /opt/ms/data/\u76ee\u5f55\u4e0b\uff0c\u5728\u540e\u7f6e\u811a\u672c\u4e2d\u9009\u62e9 JavaScript\uff0c\u901a\u8fc7 load \u5f15\u7528 js\u6587\u4ef6\uff1aload(\u201c/opt/ms/data/xx.js\u201d)\u3002

    "},{"location":"faq/api_test/#38-http","title":"38 HTTP \u534f\u8bae\u63a5\u53e3\u652f\u6301\u54ea\u4e9b\u6587\u4ef6\u683c\u5f0f\u5bfc\u5165\uff1f","text":"

    HTTP \u534f\u8bae\u652f\u6301\u4e94\u79cd\u6587\u4ef6\u683c\u5f0f\uff1aMeterSphere\u683c\u5f0f\u3001Postman\u683c\u5f0f\u3001Swagger\u683c\u5f0f\u3001HAR\u683c\u5f0f\u3001JMeter\u683c\u5f0f\uff1a

    • MeterSphere \u683c\u5f0f\uff1a\u901a\u8fc7 MeterSphere \u63a5\u53e3\u6d4b\u8bd5\u9875\u9762\u6216\u8005\u6d4f\u89c8\u5668\u63d2\u4ef6\u5bfc\u51fa\u7684 json \u683c\u5f0f\u6587\u4ef6\u3002
    • Postman \u683c\u5f0f\uff1a\u652f\u6301 Postman Collection v2.1 \u683c\u5f0f\u7684 json \u6587\u4ef6\uff0c\u901a\u8fc7 Postman \u5bfc\u51fa\u6d4b\u8bd5\u96c6\u5408\u3002
    • Swagger \u683c\u5f0f\uff1a\u652f\u6301 Swagger 2.0 \u4e0e 3.0 \u7248\u672c\u7684 json \u6587\u4ef6\uff0c\u901a\u8fc7 Swagger \u9875\u9762\u5bfc\u51fa\u6216\u8005URL\u76f4\u63a5\u5bfc\u5165\u3002
    • HAR \u683c\u5f0f\uff1a\u901a\u8fc7\u6d4f\u89c8\u5668\u7684\u5f00\u53d1\u8005\u5de5\u5177\u5bfc\u51fa HAR \u683c\u5f0f\u6587\u4ef6\u3002
    • JMeter \u683c\u5f0f\uff1a\u652f\u6301 JMeter5.2-5.4 \u7248\u672c\u7684 JMX \u6587\u4ef6\uff0c\u901a\u8fc7 JMeter \u751f\u6210 JMX \u6587\u4ef6\u3002

    "},{"location":"faq/api_test/#39-tcp","title":"39 TCP \u534f\u8bae\u63a5\u53e3\u652f\u6301\u54ea\u4e9b\u6587\u4ef6\u683c\u5f0f\u5bfc\u5165\uff1f","text":"

    TCP \u534f\u8bae\u652f\u6301\u4e09\u79cd\u6587\u4ef6\u683c\u5f0f\uff1a MeterSphere\u683c\u5f0f\u3001JMeter\u683c\u5f0f\u3001ESB\u683c\u5f0f\uff1a

    • MeterSphere \u683c\u5f0f\uff1a\u901a\u8fc7 MeterSphere \u63a5\u53e3\u6d4b\u8bd5\u9875\u9762\u6216\u8005\u6d4f\u89c8\u5668\u63d2\u4ef6\u5bfc\u51fa\u7684 json \u683c\u5f0f\u6587\u4ef6
    • JMeter \u683c\u5f0f\uff1a\u652f\u6301 JMeter5.2-5.4\u7248\u672c\u7684 JMX \u6587\u4ef6\uff0c\u901a\u8fc7 JMeter \u751f\u6210 JMX \u6587\u4ef6
    • ESB \u683c\u5f0f\uff1a\u652f\u6301 ESB \u6a21\u7248\u7684 xlsx \u6587\u4ef6\uff08\u652f\u6301\u6a21\u7248\u4e0b\u8f7d/\u4e0a\u4f20\uff09

    "},{"location":"faq/api_test/#40-sql","title":"40 SQL \u534f\u8bae\u63a5\u53e3\u652f\u6301\u54ea\u4e9b\u6587\u4ef6\u683c\u5f0f\u5bfc\u5165\uff1f","text":"

    SQL \u534f\u8bae\u652f\u6301\u4e24\u79cd\u6587\u4ef6\u683c\u5f0f\uff1aMeterSphere\u683c\u5f0f\u3001JMeter\u683c\u5f0f\uff1a

    • MeterSphere \u683c\u5f0f\uff1a\u901a\u8fc7 MeterSphere \u63a5\u53e3\u6d4b\u8bd5\u9875\u9762\u6216\u8005\u6d4f\u89c8\u5668\u63d2\u4ef6\u5bfc\u51fa\u7684 json \u683c\u5f0f\u6587\u4ef6
    • JMeter \u683c\u5f0f\uff1a\u652f\u6301 JMeter5.2-5.4 \u7248\u672c\u7684 JMX \u6587\u4ef6\uff0c\u901a\u8fc7 JMeter \u751f\u6210 JMX \u6587\u4ef6

    "},{"location":"faq/api_test/#41-dubbo","title":"41 DUBBO \u534f\u8bae\u63a5\u53e3\u652f\u6301\u54ea\u4e9b\u6587\u4ef6\u683c\u5f0f\u5bfc\u5165\uff1f","text":"

    DUBBO \u534f\u8bae\u63a5\u53e3\u652f\u6301\u4e24\u79cd\u6587\u4ef6\u683c\u5f0f\uff1aMeterSphere\u683c\u5f0f\u3001JMeter\u683c\u5f0f\uff1a

    • MeterSphere \u683c\u5f0f\uff1a\u901a\u8fc7 MeterSphere \u63a5\u53e3\u6d4b\u8bd5\u9875\u9762\u6216\u8005\u6d4f\u89c8\u5668\u63d2\u4ef6\u5bfc\u51fa\u7684 json \u683c\u5f0f\u6587\u4ef6\u3002
    • JMeter \u683c\u5f0f\uff1a\u652f\u6301 JMeter5.2-5.4 \u7248\u672c\u7684 JMX \u6587\u4ef6\uff0c\u901a\u8fc7 JMeter \u751f\u6210 JMX \u6587\u4ef6\u3002

    "},{"location":"faq/api_test/#42-metersphere-url","title":"42 MeterSphere \u6839\u636e\u4ec0\u4e48\u89c4\u5219\u5224\u65ad\u540d\u79f0\u76f8\u540c\u6216 URL \u76f8\u540c\u7684\u63a5\u53e3\u662f\u5426\u4e3a\u540c\u4e00\u63a5\u53e3\uff1f","text":"
    • TCP\u3001SQL\u3001DUBBO \u8bf7\u6c42\uff0c\u540c\u9879\u76ee\u540c\u6a21\u5757\u540c\u7248\u672c\u4e0b\uff0c\u63a5\u53e3\u540d\u79f0\u76f8\u540c\u5c31\u662f\u540c\u4e00\u63a5\u53e3
    • \u9488\u5bf9HTTP\u8bf7\u6c42\uff0c\u540c\u9879\u76ee\u540c\u6a21\u5757\u540c\u7248\u672c\u4e0b\uff0c\u5206\u4e3a\u63a5\u53e3\u5b9a\u4e49\u672a\u5f00\u542f url \u53ef\u91cd\u590d\u548c\u5df2\u5f00\u542f url \u53ef\u91cd\u590d\u4e24\u79cd\u60c5\u51b5
    • \u672a\u5f00\u542f URL \u91cd\u590d\uff1a\u8bf7\u6c42\u7c7b\u578b+\u8def\u5f84\u76f8\u540c\u5219\u4e3a\u540c\u4e00\u63a5\u53e3\uff0c\u5982\uff1a
    • \u5f00\u542f URL \u91cd\u590d\uff1a\u63a5\u53e3\u540d\u79f0+\u8bf7\u6c42\u7c7b\u578b+\u8def\u5f84\u76f8\u540c\u5219\u4e3a\u540c\u4e00\u63a5\u53e3\uff0c\u5982\uff1a
    "},{"location":"faq/api_test/#43","title":"43 \u63a5\u53e3\u5bfc\u5165\u7684\u8be6\u7ec6\u903b\u8f91\u662f\u4ec0\u4e48\uff1f","text":"

    \u63a5\u53e3\u5bfc\u5165\u4e3b\u8981\u6d89\u53ca\u5404\u7c7b\u6761\u4ef6\u7684\u5224\u65ad\uff0c\u8be6\u7ec6\u903b\u8f91\u89c1\u4e0b\u56fe\uff1a

    "},{"location":"faq/api_test/#44","title":"44 \u914d\u7f6e\u4e86\u5b9a\u65f6\u4efb\u52a1\uff0c\u6ca1\u6709\u5728\u9489\u9489\u7fa4\u53d1\u6d88\u606f\uff1f","text":"
    • \u786e\u8ba4\u6d88\u606f\u901a\u77e5\u662f\u5426\u6b63\u786e\u586b\u5199\u3002
    • \u5b9a\u65f6\u4efb\u52a1\u662f\u624b\u52a8\u6267\u884c\uff0c\u4e0d\u4f1a\u53d1\u9001\u6d88\u606f\u3002
    "},{"location":"faq/api_test/#45-httpip","title":"45 \u9009\u62e9\u73af\u5883\u540d\u79f0\u540e\uff0c\u8bf7\u6c42\u5185\u5bb9\u91cc\u53ea\u6709http://\u63a5\u53e3\uff0c\u6ca1\u6709\u4f7f\u7528\u5230\u5728\u73af\u5883\u914d\u7f6e\u7684ip\u548c\u7aef\u53e3\uff0c\u5e94\u8be5\u5982\u4f55\u8fdb\u884c\uff1f","text":"

    \u5728\u73af\u5883\u914d\u7f6e\u5904\uff0c\u4e0d\u9009\u62e9\u201c\u6a21\u5757\u201d\u6216\u8005\u201c\u8def\u5f84\u201d\uff0c\u9009\u62e9\u201c\u65e0\u201d\u5373\u53ef

    "},{"location":"faq/api_test/#46","title":"46 \u63a5\u53e3\u6d4b\u8bd5\u65ad\u8a00\u6210\u529f\uff0c\u4e3a\u4ec0\u4e48\u7528\u4f8b\u663e\u793a\u672a\u901a\u8fc7\uff1f","text":"

    \u5982\u679c\u54cd\u5e94\u7801\u4e0d\u662f200\uff0c\u9700\u8981\u52fe\u9009\"\u5ffd\u7565\u72b6\u6001\"\u5ffd\u7565\u72b6\u6001\u7801\u7684\u5224\u65ad\u3002

    "},{"location":"faq/api_test/#47","title":"47 \u5728\u540e\u7f6e\u811a\u672c\u4e2d\u5982\u4f55\u83b7\u53d6\u54cd\u5e94\u7ed3\u679c\uff1f","text":"

    prev.getResponseDataAsString()

    "},{"location":"faq/api_test/#48-jmeter","title":"48 \u63a5\u53e3\u6d4b\u8bd5\u4e2d\u5bfc\u5165 JMeter \u811a\u672c\u540e\uff0c\u6ca1\u6709\u4efb\u4f55\u8bf7\u6c42\u5185\u5bb9\uff1f","text":"

    \u4f7f\u7528 JMeter \u6253\u5f00 jmx \u6587\u4ef6\uff0c\u786e\u8ba4\u63a5\u53e3\u662f\u5426\u88ab\u7981\u7528\uff0c \u5982\u7981\u7528\u624b\u52a8\u5f00\u542f\u4fdd\u5b58\u540e\u518d\u5bfc\u5165\u3002

    "},{"location":"faq/api_test/#49-error-standardjmeterengine-jdbc-data-source-already-defined-for-mysql","title":"49 \u540e\u53f0\u65e5\u5fd7\u62a5\u9519\uff1aERROR StandardJMeterEngine JDBC data source already defined for: mysql","text":"

    \u67e5\u770b\u6570\u636e\u5e93-\u6570\u636e\u6e90\uff0c\u4fee\u6539\u6700\u5927\u8fde\u63a5\u6570\u3002

    "},{"location":"faq/api_test/#50-4m","title":"50 \u63a5\u53e3\u54cd\u5e94\u5185\u5bb9\u8fc7\u5927\uff08\u7ea64M\uff09\u5bfc\u81f4\u8bf7\u6c42\u5361\u4f4f\u4e0d\u52a8\uff0c\u5982\u4f55\u5904\u7406\uff1f","text":"

    \u5f53\u54cd\u5e94\u5185\u5bb9\u8fc7\u5927\u65f6\uff0c\u5728 gateway \u65e5\u5fd7\u4e2d\u53ef\u4ee5\u53d1\u73b0\u5bf9\u5e94\u63d0\u793a\u65e5\u5fd7\uff1a Max frame length of 10485760 has been exceeded\u3002 \u5728 /opt/metersphere/conf/metersphere.properties \u6dfb\u52a0\u5c5e\u6027\uff1aspring.cloud.gateway.httpclient.websocket.max-frame-payload-length=\u81ea\u5b9a\u4e49\u5927\u5c0f\uff0c\u4fee\u6539\u5b8c\u540e msctl reload \u91cd\u65b0\u52a0\u8f7d\u5728\u914d\u7f6e\u6587\u4ef6\u5373\u53ef\u3002

    "},{"location":"faq/api_test/#51-geturlnon-http-response-code-iavaneturisyntaxexception","title":"51 \u63a5\u53e3\u6d4b\u8bd5get\u8bf7\u6c42\u5728URL\u540e\u9762\u4f20\u4e2d\u6587\u3001\u7279\u6b8a\u5b57\u7b26\u53c2\u6570\uff0c\u63a5\u53e3\u8fd4\u56deNon HTTP response code: iava.net.URISyntaxException\u62a5\u9519","text":"

    \u9700\u8981\u5148\u5728\u524d\u7f6e\u811a\u672c\u4e2d\uff0c\u5bf9\u4e2d\u6587\u3001\u7279\u6b8a\u5b57\u7b26\u7b49\u5148\u8fdb\u884c\u7f16\u7801\u5e76\u5b58\u50a8\u4e3a\u53d8\u91cf\uff0c\u7136\u540e\u5728\u4f20\u53c2\u5904\u5f15\u7528\u5bf9\u5e94\u7684\u53d8\u91cf\u5373\u53ef\uff0c\u5bf9\u5e94\u7684\u524d\u7f6e\u811a\u672c\u6837\u4f8b\u5982\u4e0b\uff1a

    import java.net.URLDecoder;\nimport java.net.URLEncoder;\n\nString strTest = \"?=abc?\u4e2d%1&2<3,4>\";\nstrTest = URLEncoder.encode(strTest, \"UTF-8\");//\u8f6c\u7801\nvars.put(\"str\",strTest );\n
    "},{"location":"faq/api_test/#52-finishconnect-failed-connection-refused-1723010148003","title":"52 \u63a5\u53e3\u6d4b\u8bd5\u9875\u9762\u5f39\u51fa\u7ea2\u8272\u62a5\u9519finishConnect(.) failed: Connection refused: /172.30.10.14:8003","text":"

    \u51fa\u73b0\u539f\u56e0\uff1a\u5e38\u89c1\u4e3a\u63a5\u53e3\u6d4b\u8bd5 api-test \u5bb9\u5668\u5185\u5b58\u6ea2\u51fa\u5bfc\u81f4\u5fae\u670d\u52a1\u8fde\u63a5\u5931\u8d25\u3002 \u5904\u7406\u65b9\u6cd5\uff1a\u53ef\u4ee5\u589e\u5927 api-test \u5bb9\u5668\u5185\u5b58\u5e76\u91cd\u542f\u8be5\u5bb9\u5668\u3002 vi /opt/metersphere/docker-compose-api-test.yml \u8c03\u5927mem_limit: \u53ef\u4ee5\u4e3a2g\uff0c\u4fee\u6539\u4fdd\u5b58\u540e msctl reload \u751f\u6548\u3002

    "},{"location":"faq/enterprise/","title":"\u4f01\u4e1a\u7248\u76f8\u5173","text":""},{"location":"faq/enterprise/#1","title":"1 \u5f00\u6e90\u7248\u548c\u4f01\u4e1a\u7248\u7684\u533a\u522b\u662f\u4ec0\u4e48\uff1f","text":"

    MeterSphere \u6838\u5fc3\u529f\u80fd\u5168\u90e8\u5f00\u6e90\uff0c\u575a\u6301\u6309\u6708\u53d1\u5e03\u65b0\u7248\u672c\uff0c\u6c38\u4e45\u514d\u8d39\u4f7f\u7528\u3002 \u76f8\u6bd4 MeterSphere \u5f00\u6e90\u7248\uff0cMeterSphere \u4f01\u4e1a\u7248\u5728\u529f\u80fd\u4e0a\u63d0\u4f9b\u9762\u5411\u4f01\u4e1a\u7ea7\u5e94\u7528\u573a\u666f\u7684 X-Pack \u589e\u5f3a\u5305\uff0c\u5305\u542bUI\u6d4b\u8bd5\u3001\u7248\u672c\u7ba1\u7406\u3001\u7f3a\u9677\u53cc\u5411\u540c\u6b65\u3001\u5355\u70b9\u767b\u5f55\u7b49\u589e\u5f3a\u529f\u80fd\uff0c\u5e76\u968f\u4ea7\u54c1\u8fed\u4ee3\u6301\u7eed\u589e\u52a0\u3002\u540c\u65f6\u4f01\u4e1a\u7248\u672c\u63d0\u4f9b\u539f\u5382\u6280\u672f\u652f\u6301\u670d\u52a1\uff0c\u670d\u52a1\u5185\u5bb9\u5305\u62ec\u90e8\u7f72\u5347\u7ea7\u3001\u4f7f\u7528\u57f9\u8bad\u3001\u6700\u4f73\u5b9e\u8df5\u8d4b\u80fd\u3001\u95ee\u9898\u6392\u67e5\u7b49\u3002

    \u66f4\u591a\u4f01\u4e1a\u7248\u8be6\u60c5\u8bf7\u67e5\u770b\uff1aMeterSphere \u4f01\u4e1a\u7248\u3002

    "},{"location":"faq/enterprise/#2","title":"2 \u5982\u4f55\u7533\u8bf7\u4f01\u4e1a\u7248\u8bd5\u7528\uff1f","text":"

    \u7533\u8bf7 MeterSphere \u4f01\u4e1a\u7248\u8bd5\u7528\uff0c\u8bf7\u70b9\u51fb\uff1aMeterSphere \u4f01\u4e1a\u7248\u8bd5\u7528\u7533\u8bf7\u3002

    "},{"location":"faq/enterprise/#3-metersphere","title":"3 \u5728\u54ea\u91cc\u53ef\u4ee5\u770b\u5230MeterSphere\u540e\u7eed\u7248\u672c\u66f4\u65b0\u7684\u91cd\u70b9\uff1f","text":"

    \u5728 GitHub \u7684\u7f6e\u9876 Issue \u4e2d\u53ef\u4ee5\u67e5\u770b\u540e\u7eed\u7248\u672c\u7684\u89c4\u5212\uff1aMeterSphere \u540e\u7eed\u89c4\u5212 \u3002

    "},{"location":"faq/installation/","title":"\u5b89\u88c5\u90e8\u7f72\u76f8\u5173","text":""},{"location":"faq/installation/#1-metersphere","title":"1 \u5982\u4f55\u8bbe\u7f6e MeterSphere \u5f00\u673a\u540e\u81ea\u52a8\u542f\u52a8\uff1f","text":"

    MeterSphere \u5728\u5b89\u88c5\u811a\u672c\u4e2d\u6ca1\u6709\u914d\u7f6e docker \u670d\u52a1\u53ca\u4ee5\u53ca MeterSphere \u670d\u52a1\u81ea\u542f\u52a8\uff0c\u53ef\u53c2\u8003MeterSphere\u4e4b\u8bbe\u7f6e\u670d\u52a1\u5f00\u673a\u81ea\u542f\u52a8 \u8fdb\u884c\u914d\u7f6e\u3002

    "},{"location":"faq/installation/#2","title":"2 \u5982\u4f55\u4fee\u6539\u5e94\u7528\u7684\u9ed8\u8ba4\u7aef\u53e3\uff1f","text":"

    MeterSphere \u9ed8\u8ba4\u7684 HTTP \u670d\u52a1\u76d1\u542c\u7aef\u53e3\u4e3a8081\uff0c\u5b89\u88c5\u4e4b\u524d\u53ef\u4ee5\u5728\u914d\u7f6e\u6587\u4ef6 install.conf \u4e2d\u4fee\u6539 MS_SERVER_PORT \u5b57\u6bb5\uff0c\u7136\u540e\u518d\u8fdb\u884c\u5b89\u88c5\u3002 \u5b89\u88c5\u5b8c\u6210\u540e\u5982\u679c\u9700\u8981\u4fee\u6539\u9ed8\u8ba4\u7684\u5e94\u7528\u7aef\u53e3\uff0c\u5219\u9700\u8981\u4fee\u6539 /opt/metersphere/.env \u6587\u4ef6\u4e2d\u7684 MS_SERVER_PORT \u5b57\u6bb5\uff0c\u7136\u540e\u6267\u884c msctl reload \u547d\u4ee4\u91cd\u65b0\u52a0\u8f7d\u5e94\u7528\u3002

    "},{"location":"faq/installation/#3-kubernetes-metersphere","title":"3 \u5982\u4f55\u5728 Kubernetes \u4e2d\u642d\u5efa MeterSphere\uff1f","text":"

    MeterSphere Kubernetes \u90e8\u7f72\u64cd\u4f5c\u89c1 MeterSphere Kubernetes \u90e8\u7f72

    "},{"location":"faq/installation/#4-docker-compose-docker-compose","title":"4 docker-compose \u7248\u672c\u4e0e\u914d\u7f6e\u6587\u4ef6\u4e0d\u517c\u5bb9\u6216\u914d\u7f6e\u6587\u4ef6\u5b58\u5728\u95ee\u9898\uff0c\u8bf7\u91cd\u65b0\u5b89\u88c5\u6700\u65b0\u7248\u672c\u7684 docker-compose \u6216\u68c0\u67e5\u914d\u7f6e\u6587\u4ef6?","text":"

    \u5982\u679c\u670d\u52a1\u5668\u5df2\u7ecf\u5b89\u88c5\u4e86 docker-compose\uff0c MeterSphere \u5b89\u88c5\u811a\u672c\u68c0\u6d4b\u5230 docker-compose \u5df2\u5b89\u88c5\uff0c\u5c31\u4f1a\u8df3\u8fc7\u81ea\u52a8\u5b89\u88c5 docker-compose \u7684\u6b65\u9aa4\uff0c\u800c\u5df2\u5b89\u88c5\u7684\u7248\u672c\u4e0e MeterSphere \u8981\u6c42\u7684\u7248\u672c\u4e0d\u5339\u914d\u5c31\u4f1a\u5bfc\u81f4\u8fd9\u4e2a\u95ee\u9898\u3002\u9700\u8981\u624b\u52a8\u5347\u7ea7\u670d\u52a1\u5668\u4e0a\u7684 docker-compose \u7248\u672c\u4e3a /opt/metersphere/docker-compose_*.yml \u4e2d\u6307\u5b9a\u7684\u7248\u672c\uff0c\u6216\u8005\u628a\u79bb\u7ebf\u5b89\u88c5\u5305\u91cc\u7684 docker-compose \u6587\u4ef6\u62f7\u8d1d\u5230\u7cfb\u7edf\u76ee\u5f55\u5e76\u4fee\u6539\u6743\u9650\u5373\u53ef\uff1a

    cp docker/bin/docker-compose /usr/bin/\nchmod +x /usr/bin/docker-compose\n
    "},{"location":"faq/installation/#5","title":"5 \u5982\u4f55\u5347\u7ea7\u5230\u6307\u5b9a\u7248\u672c\uff1f","text":"

    msctl upgrade \u540e\u8fb9\u8ddf\u7248\u672c\u53f7\uff0c\u4f8b\u5982\uff1amsctl upgrade v2.10.1-lts \u3002

    "},{"location":"faq/installation/#6","title":"6 \u5982\u4f55\u5378\u8f7d\uff1f","text":"

    \u5148\u505c\u6b62\u6b63\u5728\u8fd0\u884c\u7684 MeterSphere \u5bb9\u5668\uff0c\u7136\u540e\u518d\u5220\u9664\u5bb9\u5668\uff0c\u6700\u540e\u5220\u9664\u5e94\u7528\u6570\u636e\u76ee\u5f55\u4ee5\u53ca docker \u73af\u5883\u7b49\uff0c\u5177\u4f53\u64cd\u4f5c\u89c1\u5982\u4e0b\u547d\u4ee4\uff1a

    #1\u3001\u5148\u505c\u6b62\u6b63\u5728\u8fd0\u884c\u7684 MeterSphere \u5bb9\u5668\uff0c\u7136\u540e\u518d\u5220\u9664\u5bb9\u5668\nmsctl uninstall\n\n#\u5378\u8f7d\u5e94\u7528\u6570\u636e\nrm -rf /opt/metersphere\nrm -rf /usr/local/bin/msctl\nrm -rf ~/.msrc\n\n#\u5378\u8f7d docker \u548c docker-compose\nsystemctl stop docker\nrm -rf /usr/bin/docker*\nrm -rf /usr/bin/containerd*\nrm -rf /usr/bin/ctr\nrm -rf /usr/bin/runc\nrm -rf /etc/systemd/system/docker.service\nsystemctl daemon-reload\n
    "},{"location":"faq/installation/#7","title":"7 \u5378\u8f7d\u4f1a\u5bfc\u81f4\u6570\u636e\u6e05\u7a7a\u4e48\uff1f","text":"

    MerterSphere \u5e94\u7528\u6570\u636e\u8fdb\u884c\u4e86\u672c\u5730\u7684\u6301\u4e45\u5316\u5b58\u50a8\uff0c\u6240\u4ee5 msctl uninstall \u5378\u8f7d\u4e0d\u4f1a\u5f71\u54cd\u6570\u636e\u3002

    "},{"location":"faq/installation/#8-usrlocalbinmsctl-line-115","title":"8 \u5347\u7ea7\u8fc7\u7a0b\u4e2d\u62a5\u9519\uff1a/usr/local/bin/msctl: line 115 ....","text":"

    \u4e3b\u8981\u539f\u56e0\u662f msctl \u7684 shell \u517c\u5bb9\u6027\u5bfc\u81f4\uff0ccat /usr/local/bin/msctl \u67e5\u770b\u8fd9\u4e2a\u6587\u4ef6\u5bf9\u5e94\u884c\u6570\u7684\u4ee3\u7801\uff0c\u5e76\u8fdb\u884c\u517c\u5bb9\u6027\u5904\u7406\u3002

    "},{"location":"faq/installation/#9-schema-metersphere-contains-a-failed-migration-to-version-86","title":"9 \u5347\u7ea7\u62a5\u9519\uff1aSchema metersphere contains a failed migration to version 86 !","text":"

    sql \u521d\u59cb\u5316\u5931\u8d25\u5bfc\u81f4\uff0c\u9700\u8981\u8fde\u63a5 metersphere \u6570\u636e\u5e93\u624b\u52a8\u6267\u884csql\u3002

    • \u5230 github \u6e90\u7801\u4e0a https://github.com/metersphere/metersphere/tree/v2.3.1/system-setting/backend/src/main/resources/db/migration \u4e0b\u8f7d\u5bf9\u5e94\u6587\u4ef6\u540d\u5e26 86 \u7684 flyway sql\u3002\u6b64\u5904\u94fe\u63a5v2.3.1\u4e3a\u5b89\u88c5\u7684\u7248\u672c\u53f7\uff0c\u5982\u679c\u4e0d\u662f\u8be5\u7248\u672c\uff0c\u53ef\u5207\u6362\u5230\u76ee\u6807\u7248\u672c\u518d\u4e0b\u8f7dsql\u6587\u4ef6.
    • \u5c06\u6587\u4ef6\u4e0a\u4f20\u5230 MeterSphere \u670d\u52a1\u5668\uff0c\u5e76\u5c06sql\u6587\u4ef6 copy \u5230\u5bb9\u5668\u4e2d
          #\u5c06\u5907\u4efd\u7684sql\u6570\u636e\u590d\u5236\u81f3mysql\u5bb9\u5668\n    docker cp V86__v1.10.1_release.sql mysql:/\n    #\u4f7f\u7528 metersphere \u5e76\u6267\u884csql\n    docker exec -it mysql bash\n    mysql -uroot -pPassword123@mysql\n    use metersphere;\n    #\u5bfc\u5165\u6570\u636e\u5e93\u6587\u4ef6\n    source /V86__v1.10.1_release.sql\n
    • \u5168\u90e8\u6267\u884c\u6210\u529f\u540e\uff0c\u4fee\u6539 metersphere_version \u8868\u5bf9\u5e94\u7248\u672c 86 \u7684 success \u503c\u4e3a1\uff0c\u9000\u51famysql\u5bb9\u5668\u7136\u540e msctl reload \u91cd\u542f\u670d\u52a1\u5373\u53ef\u3002 update metersphere_version set success=1 where version=86;
    "},{"location":"faq/installation/#10","title":"10 \u5982\u4f55\u5907\u4efd\u6570\u636e\u5e93?","text":"

    \u5177\u4f53\u64cd\u4f5c\u8be6\u7ec6\u89c1 MeterSphere \u6570\u636e\u5907\u4efd\u3002

    "},{"location":"faq/installation/#11-mysqldump-error-2020-got-packet-bigger-than-max_allowed_packet-bytes-when-dumping-table-api_scenario_report_detail-at-row-94","title":"11 mysqldump \u5bfc\u51fa\u6570\u636e\u5e93\u65f6\u62a5\u9519\uff1a Error 2020: Got packet bigger than 'max_allowed_packet' bytes when dumping table `api_scenario_report_detail` at row: 94","text":"

    mysqldump \u6267\u884c\u65f6\u6dfb\u52a0 max_allowed_packet \u53c2\u6570\uff1a

    docker exec -i mysql mysqldump -uroot -pPassword123@mysql metersphere --max_allowed_packet=2G > metersphere.sql\n

    "},{"location":"faq/installation/#12-non-http-response-code-javanetsockettimeoutexception","title":"12 \u6027\u80fd\u6d4b\u8bd5\u65f6\u5e76\u53d1\u91cf\u52a0\u5927\u7684\u65f6\u5019\u62a5\u9519\uff1aNon HTTP response code: java.net.SocketTimeoutException","text":"

    \u591a\u662f\u56e0\u4e3a\u670d\u52a1\u7aef\u6709\u8f83\u591a\u8bf7\u6c42\u6b63\u5728\u5904\u7406\uff08\u4e14\u5904\u7406\u65f6\u95f4\u8f83\u957f\uff09\uff0c\u5bfc\u81f4 MeterSphere \u5728\u6709\u6548\u65f6\u95f4\u5185\u65e0\u6cd5\u8fde\u63a5\u4e0a\u670d\u52a1\u5668\u800c\u51fa\u73b0\uff0c\u53ef\u901a\u8fc7\u4fee\u6539\u5355\u4e2a\u63a5\u53e3\u7684\u8fde\u63a5\u8d85\u65f6\u65f6\u95f4\u89e3\u51b3\u3002

    "},{"location":"faq/installation/#13-mysql-lower_case_table_names1","title":"13 MySQL \u6570\u636e\u5e93\u8bbe\u7f6e\u4e86\u5ffd\u7565\u5927\u5c0f\u4f46\u672a\u751f\u6548\uff0clower_case_table_names=1","text":"

    \u53ef\u80fd\u662f\u56e0\u4e3a my.cnf \u6587\u4ef6\u6743\u9650\u4e0d\u5bf9\u5bfc\u81f4\uff0c\u4fee\u6539\u6743\u9650\u540e\u91cd\u542f\u6570\u636e\u5e93\u3002

    # chmod 655 /opt/metersphere/conf/my.cnf \n# docker restart mysql\n

    "},{"location":"faq/installation/#14-kafka","title":"14 \u5982\u4f55\u5220\u9664kafka\u4e2d\u7684\u4e34\u65f6\u6570\u636e\uff0c\u51cf\u4f4e\u78c1\u76d8\u4f7f\u7528\u7387\uff1f","text":"

    v1.20.x-lts\uff0c\u9700\u8981\u540c\u65f6\u5220\u9664 Kafka \u548c Zookeeper \u7684\u4e34\u65f6\u6587\u4ef6

    msctl uninstall\nrm -rf /opt/metersphere/data/kafka/kafka   \nrm -rf  /opt/metersphere/data/zookeeper/zookeeper\nmsctl reload   #\u91cd\u65b0\u521b\u5efa\u76ee\u5f55\u548c\u57fa\u7840\u6587\u4ef6  \n

    v2.x \u5fae\u670d\u52a1\u67b6\u6784\uff0c Kafka \u4f7f\u7528\u7248\u672c\u5347\u7ea7\uff0c\u53ea\u9700\u5220\u9664 Kafka \u7684\u4e34\u65f6\u6587\u4ef6

    msctl uninstall\nrm -rf /opt/metersphere/data/kafka/kafka   \nmsctl reload   #\u91cd\u65b0\u521b\u5efa\u76ee\u5f55\u548c\u57fa\u7840\u6587\u4ef6 \n
    "},{"location":"faq/installation/#15-terminating-due-to-javalangoutofmemoryerror-gc-overhead-limit-exceeded","title":"15 \u6267\u884c\u673a\u7ecf\u5e38\u62a5\u5185\u5b58\u6ea2\u51fa\uff1aTerminating due to java.lang.OutOfMemoryError: GC overhead limit exceeded","text":"

    \u589e\u5927\u5806\u5185\u5b58\uff1a

    set JAVA_OPTS=-server -Xms512m -Xmx1024m -XX:MaxNewSize=1024m -XX:MaxPermSize=1024m;\n

    "},{"location":"faq/installation/#16-metersphere-jenkins","title":"16 MeterSphere jenkins \u63d2\u4ef6\u9a8c\u8bc1\u901a\u8fc7\u540e\u627e\u4e0d\u5230\u5de5\u4f5c\u7a7a\u95f4","text":"

    \u68c0\u67e5\u914d\u7f6e\u7684 MeterSphere URL \u5730\u5740\uff0c\u5982\u679c\u5730\u5740\u91cc\u591a\u4e86/login\u8def\u5f84\u4f1a\u51fa\u73b0\u8fd9\u4e2a\u73b0\u8c61\u3002

    "},{"location":"faq/installation/#17-jenkins-metersphere-jenkins-metersphere-meterspherejavalangruntimeexceptionhttpclient","title":"17 Jenkins \u63d2\u4ef6\u4e0e MeterSphere \u7248\u672c\u4e00\u81f4\uff0c\u5e76\u4e14\u5df2\u786e\u8ba4 Jenkins \u4e3b\u673a\u4e0e MeterSphere \u670d\u52a1\u5668\u4e4b\u95f4\u7f51\u7edc\u901a\u7545\uff0c\u4f46\u9a8c\u8bc1\u8d26\u6237\u65f6\u63d0\u793a:\u201c\u9a8c\u8bc1MeterSphere\u8d26\u53f7\u5931\u8d25\uff01java.lang.RuntimeException:HttpClient\u67e5\u8be2\u5931\u8d25\u201d\uff0c\u539f\u56e0\u662f\u4ec0\u4e48\uff1f\u5982\u4f55\u89e3\u51b3\uff1f","text":"

    \u67e5\u770b\u5e76\u786e\u8ba4 MeterSphere \u670d\u52a1\u5668\u4e0e Jenkins \u670d\u52a1\u5668\u65f6\u95f4\u662f\u5426\u4e00\u81f4\uff0c\u5982\u679c\u4e0d\u4e00\u81f4\u5c06\u4f1a\u56e0\u4e3a\u7b7e\u540d\u5931\u6548\u5bfc\u81f4\u9a8c\u8bc1\u8d26\u6237\u65f6\u5f02\u5e38\u3002

    "},{"location":"faq/installation/#18-image-not-found-xxxxxx","title":"18 \u5347\u7ea7\u6216\u5b89\u88c5\u65f6\u540e\u53f0\u62a5\u9519:image not found : xxxxxx","text":"

    \u955c\u50cf\u88ab\u8bef\u5220\u9664\u4e86\uff0c\u9700\u8981\u5728 MeterSphere \u4e3b\u673a\u4e0a\u91cd\u65b0docker pull\u8be5\u955c\u50cf\uff0c\u6216\u4e0b\u8f7d\u5b8c\u6574\u79bb\u7ebf\u5b89\u88c5\u5305\u8fdb\u884c\u79bb\u7ebf\u5347\u7ea7\u6216\u5b89\u88c5\u3002

    "},{"location":"faq/installation/#19-url","title":"19 \u524d\u7aef\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u6216\u63a5\u53e3\u573a\u666f\u62a5\u9519\uff1a\u8bf7\u68c0\u67e5\u5f53\u524d\u7ad9\u70b9url\u914d\u7f6e\uff1b","text":"

    \u672c\u5730\u642d\u5efa\u7684\u9700\u8981\u8981\u628alocalhost `\u6539\u4e3a\u5177\u4f53 IP\u3002

    "},{"location":"faq/installation/#20","title":"20 \u5982\u4f55\u76d1\u63a7\u88ab\u538b\u6d4b\u7684\u673a\u5668\uff1f","text":"

    \u5728\u88ab\u6d4b\u670d\u52a1\u5668\u4e0a\u5b89\u88c5 node-exporter \u670d\u52a1\uff0c\u7136\u540e\u5728 \u6027\u80fd\u6d4b\u8bd5-\u9ad8\u7ea7\u914d\u7f6e \u91cc\u6dfb\u52a0\u76d1\u63a7\uff0c\u586b\u5199\u88ab\u6d4b\u670d\u52a1\u5668\u4e0a node-exporter \u670d\u52a1\u7684 ip \u548c\u7aef\u53e3\u4ee5\u53ca\u76d1\u63a7\u9879\u3002\u8be6\u7ec6\u64cd\u4f5c\u89c1\u6027\u80fd\u6d4b\u8bd5-\u76d1\u63a7

    "},{"location":"faq/installation/#21","title":"21 \u5fd8\u8bb0 \u5bc6\u7801\u5982\u4f55\u5904\u7406\uff1f","text":"

    MeterSphere \u666e\u901a\u7528\u6237\u5fd8\u8bb0\u5bc6\u7801\uff0c\u7ba1\u7406\u5458\u53ef\u4ee5\u5728\u7cfb\u7edf\u8bbe\u7f6e-\u7528\u6237\u9875\u9762\u4e2d\u8fdb\u884c\u4fee\u6539\u3002

    "},{"location":"faq/installation/#22","title":"22 \u7cfb\u7edf\u8fd0\u884c\u4e00\u6bb5\u65f6\u95f4\u540e\u78c1\u76d8\u53ef\u4ee5\u6e05\u7406\u54ea\u4e9b\u65e0\u7528\u7684\u6587\u4ef6\u6765\u91ca\u653e\u78c1\u76d8","text":"
    • \u5220\u9664\u4e4b\u524d\u7248\u672c\u591a\u4f59\u7684\u955c\u50cf\u3002 docker rmi 'docker images -q' docker images # \u68c0\u67e5\u5269\u4f59\u955c\u50cf
    • \u5220\u9664\u4e4b\u524d\u7684MeterSphere \u5b89\u88c5\u5305\u548c\u89e3\u538b\u5305\u3002
    • \u51cf\u5c11\u7cfb\u7edf\u65e5\u5fd7\u4fdd\u7559\u5929\u6570\uff1a vi /opt/metersphere/conf/metersphere.properties \u589e\u52a0\u914d\u7f6e\u9879\u8bbe\u7f6e\u65e5\u5fd7\u4fdd\u5b58\u5929\u6570\uff0c\u5982\uff1a logger.max.history=3\u3002
    • \u505c\u6b62\u5b9a\u65f6\u4efb\u52a1\uff0c\u5e76\u505c\u6b62 MeterSphere \u670d\u52a1\uff0c\u5220\u9664/opt/metersphere/data/kafka/kafka\u548c/opt/metersphere/data/zookeeper/zookeeper\uff08v2.3\u4e4b\u524d\uff09\u76ee\u5f55\uff0c\u7136\u540e\u518d\u91cd\u542f MeterSphere \u670d\u52a1\u3002
    "},{"location":"faq/installation/#23-metersphere-prometheus-restarting","title":"23 MeterSphere \u90e8\u7f72\u4e2d\u9047\u5230 Prometheus \u542f\u52a8\u4e0d\u8d77\u6765\uff0c\u4e00\u76f4\u5904\u4e8e Restarting \u7684\u95ee\u9898","text":"

    \u53ef\u80fd\u662f\u56e0\u4e3a\u6587\u4ef6\u6743\u9650\u4e0d\u5bf9\u5bfc\u81f4\uff0c\u4fee\u6539\u6743\u9650\u540e\u5220\u9664\u4e4b\u524d\u7684 prometheus \u5bb9\u5668\u5e76 reload\u3002

    chmod -R 755 /opt/metersphere/conf/prometheus\ndocker stop ms-prometheus\ndocker rm ms-prometheus\nmsctl reload\n

    "},{"location":"faq/installation/#24-redis-restarting","title":"24 \u9047\u5230 redis \u542f\u52a8\u4e0d\u8d77\u6765\uff0c\u4e00\u76f4\u5904\u4e8e Restarting \u7684\u95ee\u9898","text":"

    \u53ef\u80fd\u662f\u56e0\u4e3a redis.conf \u6587\u4ef6\u6743\u9650\u4e0d\u5bf9\u5bfc\u81f4\uff0c\u4fee\u6539\u6743\u9650\u540e\u5220\u9664\u4e4b\u524d\u7684 redis \u5bb9\u5668\u5e76 reload\u3002

    chmod -R 755 /opt/metersphere/conf/redis.conf\ndocker stop redis\ndocker rm redis\nmsctl reload\n

    "},{"location":"faq/installation/#25-redis","title":"25 Redis \u65e0\u6cd5\u8fde\u63a5","text":"
    • \u68c0\u67e5\u9632\u706b\u5899\u662f\u5426\u5f00\u542f\u3002
    • \u68c0\u67e5 6379\u7aef\u53e3\u662f\u5426\u5f00\u653e\u3002
    • \u68c0\u67e5 opt/metersphere/.env \u6587\u4ef6\u4e2d\u914d\u7f6e\u7684 Redis \u5730\u5740\u662f\u5426\u662f\u5bf9\u4e8e\u7684\u670d\u52a1\u5668\u7684IP\u5730\u5740\u3002\u5982\u5730\u5740\u6b63\u786e\u4efb\u65e0\u6cd5\u8fde\u63a5\u53ef\u4fee\u6539 opt/metersphere/.env \u6587\u4ef6\u628aMS_REDIS_HOST=redis
    "},{"location":"faq/installation/#26-docker-docker-error-response-from-daemon-oci-runtime-create-failed-systemd-cgroup-flag-passed-but-systemd-support-for-managing-cgroups-is-not-available","title":"26 docker \u8fd0\u884c\u9519\u8bef\uff1adocker: Error response from daemon: OCI runtime create failed: systemd cgroup flag passed, but systemd support for managing cgroups is not available:\u2026\u2026","text":"
    • \u6253\u5f00 daemon.json \u6587\u4ef6\uff0c \u5c06 \"exec-opts\": [\"native.cgroupdriver=systemd\"] \u5220\u9664\u3002
    • \u91cd\u542f docker\uff1aservice docker restart\u3002
    • \u91cd\u542f\u670d\u52a1: msctl reload\u3002
    "},{"location":"faq/installation/#27-javasqlsqlnontransientconnectionexception-data-source-rejected-establishment-of-connection-message-from-server-too-many-connection","title":"27 \u540e\u53f0\u65e5\u5fd7\u63d0\u793a\u6570\u636e\u5e93\u8fde\u63a5\u6570\u5f02\u5e38\uff1ajava.sql.SQLNonTransientConnectionException: Data source rejected establishment of connection, message from server, too many connection","text":"

    \u53ef\u80fd\u662f\u56e0\u4e3a my.cnf \u6587\u4ef6\u6743\u9650\u4e0d\u5bf9\u5bfc\u81f4\u914d\u7f6e\u6587\u4ef6\u6ca1\u6709\u751f\u6548\uff0c\u4fee\u6539\u6743\u9650\u540e\u5220\u9664\u4e4b\u524d\u7684 mysql \u5bb9\u5668\u5e76 reload\u3002

    chmod -R 655 /opt/metersphere/conf/my.cnf\ndocker stop mysql\ndocker rm mysql\nmsctl reload\n

    "},{"location":"faq/installation/#28-sqlsyntaxerrorexceptionexpression-3-of-select-list-is-not-in-group-by-clause-and-contains-nonaggregated-column-metersphere-_devapi_definition_exec_resultstart_time","title":"28 \u540e\u53f0\u65e5\u5fd7\u63d0\u793a\u6570\u636e\u5e93\u8bed\u6cd5\u5f02\u5e38\uff1aSQLSyntaxErrorException\uff1aExpression #3 of SELECT list is not in GROUP BY clause and contains nonaggregated column \u201cmetersphere\u201d _dev.api_definition_exec_result.start_time\u2019","text":"

    \u4fee\u6539\u6570\u636e\u5e93\u914d\u7f6e\u6587\u4ef6 my.cnf\uff0c\u589e\u52a0\u914d\u7f6e\u8bed\u6cd5\u6821\u9a8c\u89c4\u5219\uff1asql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE

    "},{"location":"faq/installation/#29-sqljavaxnetsslsslhandshakeexception-no-appropriate-protocol","title":"29 \u524d\u540e\u7f6eSQL\u811a\u672c\u6267\u884c\u62a5\u9519\uff1ajavax.net.ssl.SSLHandshakeException: No appropriate protocol\u2026\u2026","text":"

    \u5728\u73af\u5883\u7ba1\u7406-\u6570\u636e\u5e93\u914d\u7f6e\u4e2d\u7684\"\u6570\u636e\u5e93\u8fde\u63a5URL\"\u540e\u9762\u6dfb\u52a0 '?createDatabaseIfNotExist=true&useSSL=false'\u3002

    "},{"location":"faq/installation/#30-msctl-status","title":"30 msctl status\u663e\u793a\u670d\u52a1\u6b63\u5e38\uff0c\u4f46\u662f\u5b9e\u9645\u670d\u52a1\u5374\u8bbf\u95ee\u4e0d\u4e86\u600e\u4e48\u529e\uff1f","text":"

    \u5982\u679c MeterSphere \u4e3b\u673a\u7f51\u7edc\u914d\u7f6e\uff08IP\u3001firewalld\u3001iptables\u7b49\uff09\u53d1\u751f\u4e86\u53d8\u5316\uff0c\u4f1a\u5bfc\u81f4\u4e4b\u524d\u7684\u5bb9\u5668\u7f51\u7edc\u5931\u6548\uff0c\u51fa\u73b0\u6d4f\u89c8\u5668\u65e0\u6cd5\u8bbf\u4f46\u4f7f\u7528 msctl status \u547d\u4ee4\u67e5\u770b\u5982MeterSphere \u5404\u670d\u52a1\u7ec4\u4ef6\u8fd0\u884c\u90fd\u6b63\u5e38\u5f97\u73b0\u8c61\u3002\u9700\u8981\u5148\u91cd\u542f docker\uff0c\u518d\u91cd\u542f MeterSphere \u670d\u52a1\u3002

    "},{"location":"faq/installation/#31-session","title":"31 \u5982\u4f55\u4fee\u6539 session \u8fc7\u671f\u65f6\u95f4\uff1f","text":"

    \u5728 /opt/metersphere/conf/metersphere.properties \u4e2d\u6dfb\u52a0\u5b57\u6bb5 session.timeout\uff0c\u5355\u4f4d\u79d2\u3002

    "},{"location":"faq/installation/#32-k8s-metersphere-413-request-entity-too-large","title":"32 K8S \u90e8\u7f72 metersphere \u5728\u4e0a\u4f20\u6587\u4ef6\u65f6\u63d0\u793a\uff1a413 request entity too large","text":"

    \u914d\u7f6e ngnix \u8bf7\u6c42\u89e3\u9664\u9ed8\u8ba4\u7684 1M \u9650\u5236\uff1a

    kubectl edit ingress metersphere\napiVersion: extensions/v1beta1\nkind: Ingress\nmetadata:\nannotations:\nmeta.helm.sh/release-name: metersphere\nmeta.helm.sh/release-namespace: default\nnginx.ingress.kubernetes.io/proxy-body-size: 50m\n

    "},{"location":"faq/installation/#33-metersphere-413-request-entity-too-large","title":"33 \u4e3b\u673a\u90e8\u7f72 metersphere \u5728\u4e0a\u4f20\u6587\u4ef6\u65f6\u63d0\u793a\uff1a413 request entity too large","text":"

    \u5728 nginx \u670d\u52a1\u7684\u914d\u7f6e\u6587\u4ef6 nginx.conf \u7684 http \u6bb5\u4e2d\u52a0\u5165 client_max_body_size xxm\uff0c xx\u6839\u636e\u9700\u6c42\u6539\u52a8\uff0c\u4fdd\u5b58\u540e\u91cd\u542f nginx\u3002

    "},{"location":"faq/installation/#34-nginx-f12-websocket","title":"34 \u4f7f\u7528Nginx\u914d\u7f6e\u53cd\u5411\u4ee3\u7406\u540e\uff0c\u5728\u8fdb\u884c\u63a5\u53e3\u6d4b\u8bd5\u65f6\uff0c\u9875\u9762\u5361\u5728\u52a0\u8f7d\u72b6\u6001\uff0c\u6309 F12 \u53ef\u4ee5\u770b\u5230 websocket \u8fde\u63a5\u5931\u8d25","text":"

    \u9700\u8981\u52a0\u4e0a Nginx websocket \u914d\u7f6e:

    server{\n  ...\n  location / {\n    proxy_pass http://jumpserver_nginx;\n    proxy_set_header X-Real-IP $remote_addr;\n    proxy_set_header Host $host;\n    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\n\n    #\u52a0\u4e0a\u8fd9\u6bb5\n    proxy_http_version 1.1;\n    proxy_set_header Upgrade $http_upgrade;\n    proxy_set_header Connection \"upgrade\";\n  }\n}\n
    "},{"location":"faq/installation/#35-the-connection-is-abnormal-please-check-the-environment-configuration","title":"35 \u63a5\u53e3\u8fd0\u884c\u65f6\uff0c\u9875\u9762\u62a5\u9519:The connection is abnormal\uff0c please check the environment configuration","text":"
    • \u5982\u679c\u4f7f\u7528\u4e86Nginx\uff0c \u8bf7\u53c2\u8003 \u914d\u7f6e\u53cd\u5411\u4ee3\u7406\u3002
    • \u5982\u679c\u4f7f\u7528\u4e86fidder\u3001charles\u7b49\u4ee3\u7406\u4ee3\u5de5\u5177\uff0c\u5148\u5173\u95ed\u3002
    • \u5982\u679c https://ip:8081 \u88ab\u62e6\u622a\u4e86\uff0c\u8bf7\u4f7f\u7528 http://ip:8081 \u3002
    "},{"location":"faq/installation/#36-http-error-500-javaxservletservletexception-filtered-request-failed","title":"36 \u5347\u7ea7\u540e\u670d\u52a1\u6b63\u5e38\uff0c\u4f46\u662f\u8bbf\u95ee\u9875\u9762\u63d0\u793a\uff1aHTTP ERROR 500 javax.servlet.ServletException: Filtered request failed.","text":"
    • \u6e05\u6d4f\u89c8\u5668\u7f13\u5b58\uff0c\u91cd\u65b0\u6253\u5f00\u6d4f\u89c8\u5668\u8fdb\u884c\u8bbf\u95ee\u3002
    • \u6e05\u9664 redis \u6570\u636e\uff1a
    docker exec -it redis sh\nredis-cli   \nauth Password123@redis\nflushall\n
    "},{"location":"faq/installation/#37-javaiofilenotfoundexceptionoptmeterspherelogsmeterspherems-jmeter-run-loglogno-such-file-or-directory","title":"37 \u65e5\u5fd7\u4e2d\u63d0\u793a\uff1ajava.io.FileNotFoundException\uff1a/opt/metersphere/logs/metersphere/ms-jmeter-run-log.log(no such file or directory)","text":"

    \u68c0\u67e5 selinux \u72b6\u6001\uff0c\u5982\u679c\u662f\u5f00\u542f\u72b6\u6001\uff0c\u5c1d\u8bd5\u5173\u95ed\u540e\u518d\u91cd\u542f docker\uff0c\u91cd\u65b0\u52a0\u8f7d MeterSphere\u3002

    "},{"location":"faq/installation/#38-metersphere-k8s","title":"38 MeterSphere k8s\u90e8\u7f72\u540e\u5982\u4f55\u63a7\u5236\u6570\u636e\u5e93\u7684\u8fde\u63a5\u6570","text":"
    • \u5728 metersphere-config \u7684 ConfigMap \u6587\u4ef6\u91cc\uff0cDATABASE \u5904\u65b0\u589e\u5982\u4e0b\u4e24\u884c\u53c2\u6570\u3002
    • \u5728 values.yml \u6587\u4ef6\u91cc\uff0cDATABASE \u5904\u65b0\u589e\u5982\u4e0b\u4e24\u884c\u53c2\u6570\u3002
      spring.datasource.hikari.maximum-pool-size=\u4f60\u60f3\u8981\u7684\u6570\u503c\nspring.datasource.quartz.hikari.maximum-pool-size=\u4f60\u60f3\u8981\u7684\u6570\u503c\n
    "},{"location":"faq/installation/#39-encountered-error-while-bringing-up-the-project-msctl-status-mysql-restarting","title":"39 \u5b89\u88c5\u65f6\u51fa\u73b0\uff1aEncountered error while bringing up the project\uff0c msctl status \u65f6\u770b\u5230 mysql \u5bb9\u5668\u4e00\u76f4 Restarting","text":"

    \u5728 /opt/metersphere/docker-compose-mysql.yml \u6587\u4ef6 restart: always \u540e\u9762\u4e00\u884c\u52a0 privileged: true \u8fd9\u4e2a\u53c2\u6570\uff0c\u7136\u540e\u518d\u6267\u884c msctl reload \u5373\u53ef\u3002

    "},{"location":"faq/installation/#40-creating-network-metersphere_ms-network-with-driver-brige-pool-overlaps-with-other-one-on-this-address-space","title":"40 \u5b89\u88c5\u90e8\u7f72\u65f6\u62a5\u9519\uff1aCreating network \"metersphere_ms-network\" with driver \"brige\" Pool overlaps with other one on this address space","text":"

    \u4e3b\u8981\u539f\u56e0\u662f MeterSphere \u9ed8\u8ba4\u7684\u5bb9\u5668\u7f51\u7edc\u5730\u5740\u7a7a\u95f4\u5176\u5b83\u5730\u5740\u51b2\u7a81\uff0c\u9700\u8981\u91cd\u65b0\u624b\u52a8\u4fee\u6539\u5e76\u91cd\u65b0\u521b\u5efa\u3002

    • \u6e05\u9664\u5b50\u7f51\u7f51\u6bb5\uff1adocker network prune
    • \u5c06 opt/metersphere/.env \u91cc MS_DOCKER_SUBNET \u6539\u6210\u5176\u5b83\u7f51\u7edc\u6bb5
    • \u624b\u52a8\u521b\u5efa\u5bb9\u5668\u7f51\u7edc\uff1adocker network create metersphere_ms-network
    • \u91cd\u542f\u670d\u52a1\u5668\uff1amsctl reload
    "},{"location":"faq/installation/#41","title":"41 \u6570\u636e\u5e93\u91c7\u7528\u5b89\u88c5\u5305\u5185\u7f6e\u6570\u636e\uff0c\u672a\u5f00\u542f\u5668\u9632\u706b\u5899\u7684\u60c5\u51b5\u4e0b\uff0c\u4e3a\u4f55\u670d\u52a1\u8fde\u4e0d\u4e0a\u6570\u636e\u5e93\uff1f","text":"

    \u68c0\u67e5 /opt/metersphere/.env \u4e2d\u7684 DOCKER_SUBNET \u4e0e\u670d\u52a1\u5668\u7f51\u5361\u662f\u5426\u5728\u540c\u4e00\u7f51\u6bb5\uff0c\u5982\u679c\u662f\u540c\u4e00\u7f51\u6bb5\u5c06\u5f71\u54cd\u8def\u7531\u8f6c\u53d1\uff0c\u5bfc\u81f4\u670d\u52a1\u8fde\u4e0d\u4e0a\u6570\u636e\u5e93\u3002

    • \u4fee\u6539env\u6587\u4ef6\u4e2d\u7684 DOCKER_SUBNET \u7684\u7f51\u6bb5\u914d\u7f6e\uff0c\u4e0e\u4e3b\u673a\u4e0d\u5728\u540c\u4e00\u7f51\u6bb5\u3002
    • \u6267\u884c msctl uninstall -v \u5148\u8fdb\u884c\u5378\u8f7d\uff0c\u518d\u6267\u884c msctl reload \u91cd\u65b0\u521b\u5efa\u5bb9\u5668\u3002
    "},{"location":"faq/load_test/","title":"\u6027\u80fd\u6d4b\u8bd5\u76f8\u5173","text":""},{"location":"faq/load_test/#1","title":"1 \u662f\u5426\u652f\u6301/\u5982\u4f55\u652f\u6301\u5206\u5e03\u5f0f\u7684\u6027\u80fd\u6d4b\u8bd5\uff1f","text":"

    MeterSphere \u901a\u8fc7\u5728\u6d4b\u8bd5\u8d44\u6e90\u6c60\u4e2d\u6dfb\u52a0\u591a\u4e2a\u6d4b\u8bd5\u6267\u884c\u8282\u70b9\u7684\u65b9\u5f0f\u6765\u652f\u6301\u5206\u5e03\u5f0f\u7684\u6027\u80fd\u6d4b\u8bd5\u3002\u5728\u6211\u4eec\u5411\u4e00\u4e2a\u6d4b\u8bd5\u8d44\u6e90\u6c60\u4e2d\u6dfb\u52a0\u8282\u70b9\u65f6\uff0c\u9664\u4e86\u8282\u70b9\u7684 IP\u3001\u7aef\u53e3\u4fe1\u606f\u5916\uff0c\u8fd8\u9700\u8981\u6839\u636e\u8be5\u8282\u70b9\u7684\u673a\u5668\u89c4\u683c\uff0c\u914d\u7f6e\u8be5\u8282\u70b9\u53ef\u4ee5\u652f\u6301\u7684\u6700\u5927\u5e76\u53d1\u6570\u3002\u5f53\u6211\u4eec\u5728\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u7684\u8fc7\u7a0b\u4e2d\u9009\u62e9\u4e86\u67d0\u4e2a\u6d4b\u8bd5\u8d44\u6e90\u6c60\u65f6\uff0cMeterSphere \u4f1a\u5c06\u672c\u6b21\u6027\u80fd\u6d4b\u8bd5\u5b9a\u4e49\u7684\u5e76\u53d1\u7528\u6237\u6570\uff0c\u6309\u7167\u6240\u9009\u6d4b\u8bd5\u8d44\u6e90\u6c60\u7684\u8282\u70b9\u652f\u6301\u7684\u6700\u5927\u5e76\u53d1\u6570\u8fdb\u884c\u6309\u6bd4\u4f8b\u62c6\u5206\uff0c\u5728\u6d4b\u8bd5\u5f00\u59cb\u6267\u884c\u540e\uff0c\u6bcf\u4e2a\u6d4b\u8bd5\u6267\u884c\u8282\u70b9\u4f1a\u5c06\u6d4b\u8bd5\u7ed3\u679c\u3001\u6d4b\u8bd5\u65e5\u5fd7\u7b49\u4fe1\u606f\u8f93\u9001\u5230\u6267\u884c\u7684 Kafka \u961f\u5217\u4e2d\uff0cMeterSphere \u4e2d\u7684 data-streaming \u7ec4\u4ef6\u4f1a\u4ece Kafka \u4e2d\u6536\u96c6\u8fd9\u4e9b\u4fe1\u606f\u5e76\u8fdb\u884c\u6c47\u603b\u5904\u7406\u3002

    \u4f8b\u5982\u5f53\u6211\u4eec\u5728\u7cfb\u7edf\u4e2d\u5b58\u5728\u4e00\u4e2a\u5982\u4e0b\u914d\u7f6e\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60\uff0c\u5e76\u9009\u62e9\u8be5\u6d4b\u8bd5\u8d44\u6e90\u6c60\u6267\u884c\u4e00\u4e2a 10000 \u5e76\u53d1\u7528\u6237\u7684\u6027\u80fd\u6d4b\u8bd5\u65f6\uff0cnode1 \u53ca node2 \u5c06\u5404\u5206\u914d 4000 \u4e2a\u5e76\u53d1\u7528\u6237\uff0cnode3 \u5c06\u5206\u914d 2000 \u4e2a\u5e76\u53d1\u7528\u6237\u3002

    "},{"location":"faq/load_test/#2","title":"2 \u5982\u4f55\u5411\u6d4b\u8bd5\u8d44\u6e90\u6c60\u4e2d\u6dfb\u52a0\u8282\u70b9\uff1f","text":"

    \u9996\u5148\u9700\u8981\u5728\u8981\u6dfb\u52a0\u7684\u8282\u70b9\u4e0a\u90e8\u7f72 MeterSphere \u7684 node-controller \u7ec4\u4ef6\uff0c\u5b89\u88c5\u65b9\u5f0f\u53c2\u8003\u672c\u6587\u6863\u300c\u5728\u7ebf\u5b89\u88c5\u300d\u6216\u300c\u79bb\u7ebf\u5b89\u88c5\u300d\u7ae0\u8282\u5185\u5bb9\uff0c\u5728\u6267\u884c\u5b89\u88c5\u811a\u672c\u524d\uff0c\u4fee\u6539 install.conf \u6587\u4ef6\u4e2d\u7684 MS_INSTALL_MODE \u5b57\u6bb5\u7684\u503c\u4e3a node-controller \u540e\u6267\u884c\u5b89\u88c5\u811a\u672c\u3002\u5b89\u88c5\u5b8c\u6210\u901a\u8fc7 msctl status \u67e5\u770b\u7ec4\u4ef6\u72b6\u6001\u662f\u5426\u6b63\u5e38\u3002 \u8282\u70b9\u6dfb\u52a0\u5b8c\u6210\u70b9\u51fb\u786e\u5b9a\u540e\u7cfb\u7edf\u5c06\u5bf9\u8282\u70b9\u72b6\u6001\u8fdb\u884c\u68c0\u67e5\uff0c\u82e5\u6d4b\u8bd5\u8d44\u6e90\u6c60\u4e3a\u53ef\u7528\u72b6\u6001\u5219\u8bf4\u660e\u8be5\u6d4b\u8bd5\u8d44\u6e90\u6c60\u53ca\u5176\u4e2d\u7684\u8282\u70b9\u53ef\u4ee5\u6b63\u5e38\u4f7f\u7528\u3002

    "},{"location":"faq/load_test/#3-metersphere-jmeter","title":"3 \u91c7\u7528 MeterSphere \u538b\u6d4b\u548c\u624b\u52a8\u4f7f\u7528 JMeter \u547d\u4ee4\u884c\u538b\u6d4b\u5f97\u5230\u6027\u80fd\u6d4b\u8bd5\u7ed3\u679c\u5dee\u8ddd\u5f88\u5927\u8be5\u5982\u4f55\u4f18\u5316\uff1f","text":"
    • \u793e\u533a\u7248 \u793e\u533a\u7248\u9ed8\u8ba4\u91c7\u7528\u540e\u7f6e\u76d1\u542c\u7684\u65b9\u5f0f\u5b9e\u65f6\u5904\u7406\u62a5\u544a\uff0c\u5373\u5728 JMX \u811a\u672c\u6587\u4ef6\u4e2d\u589e\u52a0 Kafka BackendListener \u914d\u7f6e\uff0c\u5404\u4e2a NodeController \u8282\u70b9\u5728\u672c\u5730\u542f\u52a8 JMeter \u5bb9\u5668\u6267\u884c\u8be5 JMX \u811a\u672c\uff0c\u8fc7\u7a0b\u4e2d\u901a\u8fc7 Kafka BackendListener \u5c06\u539f\u59cb\u7684 JTL \u7ed3\u679c\u6570\u636e\u4e0a\u4f20\u5230\u6307\u5b9a\u7684 Kafka Topic \u4e2d\uff0cDataStreaming \u4f5c\u4e3a\u8be5 Kafka Topic \u7684\u6d88\u8d39\u8005\u5bf9\u5404\u4e2a\u8282\u70b9\u7684\u6570\u636e\u8fdb\u884c\u6c47\u603b\uff0c\u5e76\u8ba1\u7b97\u6027\u80fd\u6d4b\u8bd5\u62a5\u544a\u4e2d\u7684\u5404\u9879\u6307\u6807\u3002 \u56e0\u6b64\u5728\u9ad8\u5e76\u53d1\u65f6 Kafka \u548c DataStreaming \u5f88\u5bb9\u6613\u6210\u4e3a\u74f6\u9888\uff0c\u53ef\u4ee5\u90e8\u7f72 Kafka \u548c DataStreaming \u96c6\u7fa4\u4ee5\u53ca\u589e\u52a0 Partition \u7684\u6570\u91cf\u6765\u589e\u52a0 Kafka \u7684\u541e\u5410\u91cf\u548c\u5904\u7406\u80fd\u529b\u3002\u4f18\u5316\u540e\u6b63\u5e38\u53ef\u4ee5\u8fbe\u5230\u2154\u5de6\u53f3\u7684\u5dee\u8ddd\u3002
    • \u4f01\u4e1a\u7248 \u9488\u5bf9\u793e\u533a\u7248 Kafka BackendListener \u65b9\u5f0f\uff0c\u9700\u8981\u4e0a\u4f20\u548c\u5904\u7406\u539f\u59cb\u7684 JTL \u7ed3\u679c\uff0c\u8fc7\u7a0b\u4e2d\u9700\u8981\u5904\u7406\u5927\u91cf\u7684\u6570\u636e\uff0c\u4f01\u4e1a\u7248\u4e2d\u505a\u4e86\u76f8\u5173\u4f18\u5316\uff0c\u5373\u5728\u6267\u884c\u6d4b\u8bd5\u8fc7\u7a0b\u4e2d\u4e0d\u518d\u4f7f\u7528 BackendListener\uff0c\u5404\u4e2a NodeController \u542f\u52a8 JMeter \u5bb9\u5668\u65f6\u9644\u5e26\u542f\u52a8\u4e00\u4e2a Java \u7a0b\u5e8f\uff0c\u8be5 Java \u7a0b\u5e8f\u8d1f\u8d23\u5b9e\u65f6\u5904\u7406\u672c\u5730 JMeter \u4ea7\u751f\u7684 JTL \u7ed3\u679c\u6570\u636e\uff0c\u751f\u6210\u6027\u80fd\u6d4b\u8bd5\u62a5\u544a\u4e2d\u7684\u5404\u9879\u6307\u6807\u540e\u4e0a\u4f20\u5230\u6307\u5b9a\u7684 Kafka Topic \u4e2d\uff0cDataStreaming \u4f5c\u4e3a\u8be5 Kafka Topic \u7684\u6d88\u8d39\u8005\u5bf9\u5404\u4e2a\u8282\u70b9\u7684\u6570\u636e\u8fdb\u884c\u6c47\u603b\u3002 \u4e0e\u4f18\u5316\u524d\u65b9\u6848\u76f8\u6bd4\uff0cKafka \u548c DataStreaming \u9700\u8981\u5904\u7406\u7684\u6570\u636e\u5927\u5927\u964d\u4f4e\uff0c\u6574\u4f53\u4e0a\u5bf9\u4e8e\u5e76\u53d1\u91cf\u8f83\u5927\u60c5\u51b5\u4e0b\u7684\u7ed3\u679c\u5904\u7406\u80fd\u529b\u5927\u5927\u63d0\u5347\u3002 \u540c\u65f6\u53ef\u4ee5\u91c7\u7528 \u90e8\u7f72 Kafka \u548c DataStreaming \u96c6\u7fa4\u4ee5\u53ca\u589e\u52a0 Partition \u6570\u91cf\u7684\u6765\u589e\u52a0 Kafka \u7684\u541e\u5410\u91cf\u548c\u5904\u7406\u80fd\u529b\uff0c\u53ef\u66f4\u52a0\u63a5\u8fd1 JMeter \u7684\u771f\u5b9e\u503c\u3002
    "},{"location":"faq/load_test/#4-kafka","title":"4 \u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u65f6\u63d0\u793aKafka \u4e0d\u53ef\u7528\uff0c\u8bf7\u68c0\u67e5\u914d\u7f6e\uff0c\u5982\u4f55\u89e3\u51b3\uff1f","text":"

    \u7cfb\u7edf\u5728\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u4e4b\u524d\uff0c\u4f1a\u5148\u68c0\u67e5\u5b89\u88c5\u7cfb\u7edf\u65f6\u914d\u7f6e\u7684 Kafka \u5730\u5740\u662f\u5426\u53ef\u7528\u3002\u5f53\u63d0\u793a\u8be5\u4fe1\u606f\u65f6\uff0c\u8868\u660e MeterSphere \u65e0\u6cd5\u6b63\u5e38\u8fde\u63a5\u5230 Kafka\uff0c\u53ef\u4ee5\u6309\u7167\u4ee5\u4e0b\u6392\u67e5\u601d\u8def\u8fdb\u884c\u5206\u6790\u548c\u5b9a\u4f4d\uff1a

    \uff081\uff09\u68c0\u67e5 Kafka \u662f\u5426\u6b63\u5e38\u8fd0\u884c \u5982\u679c\u5728\u5b89\u88c5\u65f6\u4f7f\u7528\u7684\u5916\u90e8\u7684 Kafka\uff0c\u8bf7\u8054\u7cfb\u76f8\u5173\u4eba\u5458\u8fdb\u884c\u6392\u67e5\uff0c\u68c0\u67e5 Kafka \u670d\u52a1\u662f\u5426\u6b63\u5e38\uff1b\u5982\u679c\u5b89\u88c5\u65f6\u4f7f\u7528 MeterSphere \u9ed8\u8ba4\u914d\u7f6e\u8fdb\u884c\u5b89\u88c5\uff0c\u4f7f\u7528\u4e86\u81ea\u5e26\u7684 Kafka \u670d\u52a1\uff0c\u8bf7\u901a\u8fc7\u5982\u4e0b\u547d\u4ee4\u8fdb\u884c\u6392\u67e5\u3002

    # \u68c0\u67e5\u5404\u7ec4\u4ef6\u7684\u8fd0\u884c\u72b6\u6001\nmsctl status\n# \u82e5 Kafka \u5bb9\u5668\u4e0d\u5904\u4e8e `healthy` \u72b6\u6001\uff0c\u67e5\u770b Kafka \u65e5\u5fd7\u8fdb\u884c\u8fdb\u4e00\u6b65\u6392\u67e5\ndocker logs kafka\n

    \uff082\uff09\u68c0\u67e5 MeterSphere \u5230 Kafka \u670d\u52a1\u7684\u7f51\u7edc\u8fde\u63a5 \u5982\u679c Kafka \u670d\u52a1\u72b6\u6001\u6b63\u5e38\uff0c\u8bf7\u901a\u8fc7\u5982\u4e0b\u547d\u4ee4\u68c0\u67e5 ms-server \u5bb9\u5668\u662f\u5426\u80fd\u6b63\u5e38\u8fde\u63a5\u5230 Kafka \u670d\u52a1\u3002

    # \u68c0\u67e5 ms-server \u662f\u5426\u80fd\u6b63\u5e38\u8bbf\u95ee Kafka \u670d\u52a1\n[root@meter-prototype ~]# docker exec ms-server nc -zv ${kafka \u670d\u52a1 IP} ${kafka \u670d\u52a1\u7aef\u53e3}\nkafka (172.23.0.5:19092) open\n
    \u5982\u679c ms-server \u4e0d\u80fd\u6b63\u5e38\u8bbf\u95ee Kafka \u670d\u52a1\uff0c\u63d0\u793ahost is unreachable\uff0c\u6267\u884c ifconfig \u5c06 br-XXX \u548c docker-XX \u7684\u7f51\u6bb5\uff0c\u52a0\u5165\u5230\u9632\u706b\u5899\u7b56\u7565\u4e2d
    firewall-cmd --zone=trusted --add-source=172.18.0.1/16 --permanent\uff1b\nfirewall-cmd --zone=trusted --add-source=172.19.0.1/16 --permanent\uff1b\nfirewall-cmd --reload\n

    \u5982\u679c\u5728\u5b89\u88c5\u65f6\u4f7f\u7528\u7684\u5916\u90e8\u7684 Kafka\uff0c\u8bf7\u8054\u7cfb\u76f8\u5173\u4eba\u5458\u8fdb\u884c\u6392\u67e5\uff0c\u68c0\u67e5 MeterSphere \u90e8\u7f72\u670d\u52a1\u5668\u5230 Kafka \u670d\u52a1\u4e4b\u95f4\u7684\u7f51\u7edc\u8fde\u63a5\u662f\u5426\u6b63\u5e38\uff0c\u662f\u5426\u6709\u9632\u706b\u5899\u3001\u5b89\u5168\u7ec4\u7b49\u5b89\u5168\u7b56\u7565\u7684\u5f71\u54cd\uff1b\u5982\u679c\u5b89\u88c5\u65f6\u4f7f\u7528 MeterSphere \u9ed8\u8ba4\u914d\u7f6e\u8fdb\u884c\u5b89\u88c5\uff0c\u4f7f\u7528\u4e86\u81ea\u5e26\u7684 Kafka \u670d\u52a1\uff0c\u8bf7\u68c0\u67e5 MeterSphere \u90e8\u7f72\u670d\u52a1\u5668\u4e0a\u7684\u9632\u706b\u5899\u914d\u7f6e\uff0c\u662f\u5426\u653e\u901a\u4e86 Kafka \u7684\u670d\u52a1\u7aef\u53e3\uff08\u9ed8\u8ba4 19092\uff09\uff0c\u4e5f\u53ef\u4ee5\u9009\u62e9\u76f4\u63a5\u7981\u7528\u9632\u706b\u5899\u540e\uff0c\u91cd\u542f docker \u670d\u52a1\u548c MeterSphere \u7ec4\u4ef6\u8fdb\u884c\u91cd\u8bd5\u3002

    # \u4ee5 CentOS 7 \u64cd\u4f5c\u7cfb\u7edf\u4e3a\u4f8b\uff0c\u7981\u7528\u9632\u706b\u5899\u53ca\u91cd\u542f\u670d\u52a1\u547d\u4ee4\nsystemctl stop firewalld\nsystemctl restart docker\nmsctl start\n
    \u82e5\u68c0\u67e5\u53d1\u73b0\u7f51\u7edc\u8fde\u63a5\u72b6\u6001\u6b63\u5e38\uff0c\u5728\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u65f6\u4ecd\u65e7\u63d0\u793a\u8be5\u9519\u8bef\uff0c\u8bf7\u8054\u7cfb\u6211\u4eec\u7684\u56e2\u961f\u8fdb\u884c\u8fdb\u4e00\u6b65\u5b9a\u4f4d\u3002

    "},{"location":"faq/load_test/#5","title":"5 \u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u65f6\u63d0\u793a \u65e0\u6cd5\u8fd0\u884c\u6d4b\u8bd5\uff0c\u8bf7\u68c0\u67e5\u5f53\u524d\u7ad9\u70b9\u914d\u7f6e \u5982\u4f55\u89e3\u51b3\uff1f","text":"

    \u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u8fc7\u7a0b\u4e2d\uff0cnode-controller \u8282\u70b9\u9700\u8981\u901a\u8fc7 \u7cfb\u7edf-\u7cfb\u7edf\u8bbe\u7f6e-\u7cfb\u7edf\u53c2\u6570\u8bbe\u7f6e \u4e2d\u914d\u7f6e\u7684 \u5f53\u524d\u7ad9\u70b9 URL \u4e0b\u8f7d\u76f8\u5173\u6587\u4ef6\u3002\u51fa\u73b0\u8be5\u95ee\u9898\u65f6\u7528\u6237\u9700\u8981\u68c0\u67e5\u8be5\u914d\u7f6e\u53c2\u6570\uff0c\u786e\u4fdd node-controller \u8282\u70b9\u53ef\u4ee5\u6b63\u5e38\u8bbf\u95ee\u5230\u8be5 URL\u3002 URL \u5730\u5740\u4e00\u822c\u4e3a\u901a\u8fc7\u6d4f\u89c8\u5668\u8bbf\u95ee MeterSphere \u7684\u5730\u5740\uff0c\u4f8b\u5982 https://demo.metersphere.com\u3002

    "},{"location":"faq/load_test/#6-url","title":"6 \u7ad9\u70b9\u914d\u7f6e\u7684 URL \u662f\u4ec0\u4e48\uff1f","text":"

    \u7ad9\u70b9\u914d\u7f6e\u4e3a\u90e8\u7f72MeterSphere Sever\u7684\u5730\u5740\uff0c\u53ef\u4ee5\u662f\u57df\u540d\u6216\u8005\u662fIP\u5730\u5740\u3002

    "},{"location":"faq/load_test/#7-jmeter","title":"7 \u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u65f6 JMeter \u5bb9\u5668\u5185\u5b58\u6ea2\u51fa\u5982\u4f55\u89e3\u51b3?","text":"

    \u4fee\u6539\u7cfb\u7edf\u8bbe\u7f6e\u4e2d\u6240\u4f7f\u7528\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60\u914d\u7f6e\u4e2d\u7684 HEAP \u914d\u7f6e\u6765\u8c03\u6574 JMeter \u5bb9\u5668\u7684\u5185\u5b58\u53c2\u6570\u3002

    -Xms2g -Xmx2g -XX:MaxMetaspaceSize=256m\n

    "},{"location":"faq/load_test/#8-jmxjar","title":"8 \u5982\u679c\u6027\u80fd\u6d4b\u8bd5jmx\u6709\u4f9d\u8d56\u7684jar\u5305\uff0c\u9700\u8981\u600e\u4e48\u5904\u7406\uff1f","text":"

    \u5728\u521b\u5efa\u6027\u80fd\u6d4b\u8bd5\u65f6\uff0c\u53ef\u4ee5\u5c06\u4f9d\u8d56\u7684 jar \u5305\u4e0e jmx \u6587\u4ef6\u4e00\u8d77\u4e0a\u4f20\u3002

    "},{"location":"faq/load_test/#9","title":"9 \u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u65f6\uff0c\u63d0\u793a\u5e76\u53d1\u6570\u8d85\u989d\uff0c\u8be5\u600e\u4e48\u89e3\u51b3\uff1f","text":"

    \u4fee\u6539\u7cfb\u7edf\u8bbe\u7f6e-\u6d4b\u8bd5\u8d44\u6e90\u6c60\u4e2d\u7684\u6700\u5927\u5e76\u53d1\u6570\u540e\u518d\u6b21\u6267\u884c\u6d4b\u8bd5\u3002

    "},{"location":"faq/load_test/#10-image-not-found","title":"10 \u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u65f6\uff0c\u663e\u793aimage not found\u5982\u4f55\u5904\u7406\uff1f","text":"

    \u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u6240\u9700\u7684 JMeter \u5bb9\u5668\u9700\u8981\u4e8b\u5148\u5b58\u5728\u4e8e\u6240\u9009\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60\u7684\u8282\u70b9\u4e0a\uff0c\u8bf7\u68c0\u67e5\u786e\u4fdd\u5bb9\u5668\u955c\u50cf\u5b58\u5728\u540e\uff0c\u66f4\u65b0\u6d4b\u8bd5\u8d44\u6e90\u6c60\u7684\u955c\u50cf\u914d\u7f6e\u4e3a\u6b63\u786e\u7684\u955c\u50cf\u6807\u7b7e\u3002

    "},{"location":"faq/load_test/#11-error-check-node-controller-etchosts127001-hostnamemust-be-contained-please-delete-the-report-and-rerun","title":"11 \u538b\u6d4b\u6267\u884c\u65f6\u62a5\u9519\uff1aError: Check node-controller /etc/hosts,127.0.0.1 ${hostname}must be contained. Please delete the report and rerun.","text":"

    \u5728\u90e8\u7f72 node-controller \u7684\u673a\u5668\u4e0a\uff0c\u4f7f\u7528hostname\u547d\u4ee4\u83b7\u53d6\u4e3b\u673a\u540d\u3002

    [root@nginx metersphere-release-v1.8.0]# hostname\nnginx.novalocal\n
    \u5c06\u83b7\u53d6\u5230\u7684\u4e3b\u673a\u540d nginx.novalocal \u914d\u7f6e\u5230 /etc/hosts \u6587\u4ef6\u4e2d\uff0c\u914d\u7f6e\u5b8c\u6210\u6548\u679c\u5982\u4e0b\u3002 \u914d\u7f6e\u524d
    127.0.0.1       localhost\n::1         localhost localhost.localdomain localhost6 localhost6.localdomain6\n10.110.149.133 nginx111\n
    \u914d\u7f6e\u540e
    127.0.0.1       localhost\n127.0.0.1       nginx.novalocal\n::1         localhost localhost.localdomain localhost6 localhost6.localdomain6\n10.110.149.133 nginx111\n

    "},{"location":"faq/load_test/#12","title":"12 \u540c\u4e00\u811a\u672c\u6267\u884c\u591a\u6b21\uff0c\u53ef\u4ee5\u5c06\u591a\u6b21\u7684\u62a5\u544a\u7ed3\u679c\u8fdb\u884c\u5bf9\u6bd4\u5417\uff1f","text":"

    \u5728\u62a5\u544a\u5217\u8868\uff0c\u540c\u4e2a\u4efb\u52a1\u4e0b\uff0c\u5df2\u5b8c\u6210\u72b6\u6001\u7684\u62a5\u544a\u53ef\u4ee5\u8fdb\u884c\u5bf9\u6bd4\u3002

    "},{"location":"faq/load_test/#13","title":"13 \u6267\u884c\u538b\u6d4b\u65f6\uff0c\u591a\u53f0\u53d1\u538b\u673a\u7684\u60c5\u51b5\u4e0b\uff0c\u53ef\u4ee5\u8bbe\u7f6e\u53d8\u91cf\u4e0d\u91cd\u590d\u6267\u884c\u5417\uff1f","text":"

    \u53ef\u4ee5\u5728\u6027\u80fd\u6d4b\u8bd5\u7684\u9ad8\u7ea7\u914d\u7f6e\u9875\u9762\uff0c\u4f7f\u7528CSV\u5206\u5272\u529f\u80fd\uff0c\u7cfb\u7edf\u4f1a\u628a\u53d8\u91cf\u5e73\u5747\u5206\u914d\u7ed9\u538b\u529b\u673a\uff0c\u4fdd\u8bc1\u6570\u503c\u7684\u552f\u4e00\u6027\u3002

    "},{"location":"faq/load_test/#14-metersphere","title":"14 MeterSphere\u53ef\u4ee5\u76d1\u63a7\u88ab\u6d4b\u7cfb\u7edf\u670d\u52a1\u5668\u6307\u6807\u5417\uff1f","text":"

    MeterSphere \u4f7f\u7528 Prometheus \u8fdb\u884c\u53d1\u538b\u673a\u4ee5\u53ca\u88ab\u6d4b\u7cfb\u7edf\u670d\u52a1\u5668\u7684\u76d1\u63a7\uff0c\u53ef\u4ee5\u5728\u6027\u80fd\u6d4b\u8bd5-\u9ad8\u7ea7\u914d\u7f6e\u91cc\u9762\uff0c\u6dfb\u52a0\u88ab\u6d4b\u7cfb\u7edf\u670d\u52a1\u5668\u7684 node_exporter \u7684\u5730\u5740\u3002\u4e3b\u670d\u52a1\u4f1a\u5728\u5b89\u88c5 MeterSphere \u7cfb\u7edf\u65f6\u9ed8\u8ba4\u5b89\u88c5\uff0c\u800c\u5176\u4ed6\u670d\u52a1\u5668\uff0c\u5219\u9700\u8981\u5355\u72ec\u5b89\u88c5 node_exporter\uff0c\u5373\u53ef\u5728\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u7684\u65f6\u5019\u5b8c\u6210\u76f8\u5173\u6307\u6807\u7684\u76d1\u63a7\u3002

    "},{"location":"faq/load_test/#15-node_exporter","title":"15 \u5982\u4f55\u5b89\u88c5 node_exporter \u63d2\u4ef6\uff1f","text":"
    • \u65b9\u6cd51\uff1a docker pull prom/node-exporter \u62c9\u53d6 node_export \u955c\u50cf\uff0c\u4e4b\u540e\u8fd0\u884c\u5bb9\u5668

      docker pull prom/node-exporter # \u62c9\u53d6\u955c\u50cf\ndocker run -d -p 9100:9100 -v \"/proc:/host/proc:ro\" -v \"/sys:/host/sys:ro\" -v \"/:/rootfs:ro\" --net=\"host\" prom/node-exporter # \u542f\u52a8\u5bb9\u5668\n\nhttp://\u670d\u52a1\u5668IP:9100/metrics # \u8bbf\u95ee\u67e5\u770b node_export \u662f\u5426\u6b63\u5e38\u542f\u52a8\n

    • \u65b9\u6cd52\uff1a\u4e0b\u8f7d node_exporter \u79bb\u7ebf\u5305\uff0c\u89e3\u538b\u4e4b\u540e\u53ef\u6267\u884c\u547d\u4ee4\u8fdb\u884c\u542f\u52a8

      wget https://github.com/prometheus/node_exporter/releases/download/v1.3.1/node_exporter-1.3.1.linux-amd64.tar.gz\ntar -zxvf node_exporter-1.3.1.linux-amd64.tar.gz\ncd node_exporter-1.3.1-amd64\n./node_exporter  # \u542f\u52a8 (nohup ./node_exporter & \u540e\u53f0\u542f\u52a8)\n\nhttp://\u670d\u52a1\u5668IP:9100/metrics # \u8bbf\u95ee\u67e5\u770b node_export \u662f\u5426\u6b63\u5e38\u542f\u52a8\n

    "},{"location":"faq/load_test/#16","title":"16 \u538b\u529b\u914d\u7f6e\u4e2d\uff0c\u6bcf\u4e2a\u7ebf\u7a0b\u7ec4\u662f\u5426\u80fd\u5206\u522b\u9009\u62e9\u538b\u529b\u673a\uff1f","text":"

    \u5728\u538b\u529b\u914d\u7f6e\u91cc\uff0c\u63d0\u4f9b\u4e863\u79cd\u5206\u914d\u7b56\u7565\uff0c\u5206\u522b\u4e3a\u201c\u81ea\u52a8\u5206\u914d\u3001\u56fa\u5b9a\u8282\u70b9\u3001\u81ea\u5b9a\u4e49\u201d\uff0c\u53ef\u4ee5\u4e3a\u6bcf\u4e2a\u7ebf\u7a0b\u7ec4\u6307\u5b9a\u4e00\u4e2a\u8282\u70b9\uff0c\u6216\u8005\u6309\u6bd4\u4f8b\u5206\u914d\u591a\u4e2a\u8282\u70b9\u3002

    "},{"location":"faq/load_test/#17-non-http-response-code-javanetsockettimeoutexception","title":"17 \u6027\u80fd\u6d4b\u8bd5\u5e76\u53d1\u91cf\u52a0\u5927\u7684\u65f6\u5019\u62a5\u9519\uff1aNon HTTP response code: java.net.SocketTimeoutException","text":"

    \u5728\u9ad8\u7ea7\u914d\u7f6e\u589e\u52a0\u8d85\u65f6\u65f6\u95f4\u3002

    "},{"location":"faq/load_test/#18-50100","title":"18 \u8fdb\u884c\u538b\u6d4b\u65f6\uff0c\u6700\u5927\u7528\u6237\u52a0\u5230 50/100 \u5c31\u4e0d\u80fd\u7ee7\u7eed\u52a0\u5417\uff1f","text":"

    \u53ef\u5728\u7cfb\u7edf\u8bbe\u7f6e-\u6d4b\u8bd5\u8d44\u6e90\u6c60-\u4fee\u6539\u8d44\u6e90\u6c60\u91cc\u201c\u6700\u5927\u5e76\u53d1\u6570\u201d\u4e2d\u914d\u7f6e\u3002

    "},{"location":"faq/load_test/#19-jmeter","title":"19 \u6027\u80fd\u6d4b\u8bd5\u76f8\u5173\u6587\u4ef6\u5b58\u50a8\u5728 JMeter \u5bb9\u5668\u4e2d\u7684\u54ea\u4e2a\u76ee\u5f55\uff1f","text":"

    \u5728\u5bb9\u5668\u91cc\u7684/test\u76ee\u5f55\u4e0b\u3002

    "},{"location":"faq/load_test/#20-starting","title":"20 \u6027\u80fd\u6d4b\u8bd5\u72b6\u6001\u4e00\u76f4\u662f starting \u4e14\u65e0\u6570\u636e\uff0c\u5982\u4f55\u6392\u67e5\uff1f","text":"
    • \u68c0\u67e5\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u7cfb\u7edf-\u7cfb\u7edf\u53c2\u6570\u8bbe\u7f6e\u3011\uff0c\u5f53\u524d\u7ad9\u70b9\u914d\u7f6e\u662f\u4e0d\u662f\u6b63\u786e\u7684
    • \u5230\u670d\u52a1\u5668\u6216\u8005\u538b\u529b\u673a\u7684\u67e5\u770b /opt/metersphere/logs/node-controler/ \u4e0b\u7684 ms-jmeter-run-log.log \u548c info.log\uff0c\u770b\u65e5\u5fd7\u4e2d\u662f\u5426\u6709\u62a5\u9519\u4fe1\u606f\u3002
    "},{"location":"faq/load_test/#21-k8s-node-controller","title":"21 k8s\u8d44\u6e90\u6c60\u662f\u5426\u9700\u8981\u5b89\u88c5 node-controller \uff1f","text":"
    • \u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u4e0d\u9700\u8981 \u6027\u80fd\u6d4b\u8bd5\u53ea\u9700\u8981\u5728\u4ed3\u5e93\u4e2d\u914d\u7f6e\u597d JMeter \u955c\u50cf\u7684\u5730\u5740\uff0c\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u7684\u65f6\u5019\u4f1a\u81ea\u52a8\u521b\u5efa JMeter POD \u8fdb\u884c\u538b\u6d4b\uff0c\u6267\u884c\u5b8c\u4e4b\u540e\u81ea\u52a8\u9500\u6bc1\u3002
    • \u6267\u884c\u63a5\u53e3\u6d4b\u8bd5\u9700\u8981 \u6267\u884c\u63a5\u53e3\u6d4b\u8bd5\u9700\u8981\u90e8\u7f72 DaemonSet \u6216 Deployment\uff0c\u53ef\u4e0b\u8f7d\u793a\u4f8b yaml \u6587\u4ef6\u8fdb\u884c\u90e8\u7f72\uff0c\u90e8\u7f72\u597d\u4e4b\u540e\u53ef\u4ee5\u8bbe\u7f6e\u5f39\u6027\u4f38\u7f29\u53c2\u6570\uff0c\u4ece\u800c\u5b9e\u73b0\u8d44\u6e90\u6c60\u7684\u5f39\u6027\u4f38\u7f29\u3002
    "},{"location":"faq/load_test/#22-check-node-controller-status","title":"22 \u64cd\u4f5c\u65f6\u63d0\u793a\uff1acheck node-controller status","text":"
    • \u68c0\u67e5\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u7cfb\u7edf\u53c2\u6570\u8bbe\u7f6e-\u5f53\u524d\u7ad9\u70b9URL\u3011\u662f\u5426\u6b63\u786e\uff0c\u662f\u4e0d\u662f\u591a\u4e86\"/\"
    • docker exec ms-server nc -zv ms-node-controller 8082 \u6216\u8005\u53bbms-server\u5bb9\u5668\u91cc curl localhost:8082/status \u8bd5\u8bd5\uff0c\u5b9e\u5728\u4e0d\u884c\u5c31\u91cd\u542fdocker\u3001\u91cd\u542f\u670d\u52a1\u5668\u8bd5\u8bd5
    • \u68c0\u67e5 JMeter \u7684\u955c\u50cf\u7248\u672c\u662f\u4e0d\u662f\u5bf9\u7684\uff0c\u68c0\u67e5 JMeter \u955c\u50cf\u6709\u6ca1\u6709\u52a0\u8f7d\u5230 docker \u4e2d\uff0c\u6267\u884cdocker load -i jmeter-master.tar\uff0c\u770b\u80fd\u5426\u52a0\u8f7d\u5230docker\u4e2d\uff0c\u82e5\u4e0d\u80fd\u5219\u91cd\u65b0\u4e0a\u4f20JMeter\u955c\u50cf\uff0c\u6267\u884cdocker load -i jmeter-master.tar\uff0c\u4fee\u6539.env\u73af\u5883\u91cc\u7684JMeter\u955c\u50cf\uff0c\u91cd\u65b0\u52a0\u8f7d\u9879\u76eemsctl reload\u3002
    "},{"location":"faq/load_test/#23-error","title":"23 \u64cd\u4f5c\u63d0\u793a\uff1aError:\u6ca1\u6709\u8db3\u591f\u7684\u8d44\u6e90\u542f\u52a8\u6d4b\u8bd5","text":"

    \u5c06\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u6d4b\u8bd5\u8d44\u6e90\u6c60-JMeter HEAP\u3011\u8c03\u5927\u3002

    "},{"location":"faq/load_test/#24","title":"24 \u6027\u80fd\u6d4b\u8bd5\u4e2d\u600e\u4e48\u8de8\u7ebf\u7a0b\u4f20\u9012\u53d8\u91cf\uff1f","text":"

    \u6027\u80fd\u6d4b\u8bd5\u91cc\u52a8\u6001\u8bbe\u7f6e\u53d8\u91cf\u53ef\u4ee5\u7528\u5c5e\u6027\u7684\u65b9\u5f0f\uff0c{__setProperty(var,value,)} \u8bbe\u7f6e\u5c5e\u6027\uff0c \u5f15\u7528\u5c5e\u6027\u3002\u7528\u5c5e\u6027\u65b9\u6cd5\u5728\u6027\u80fd\u6d4b\u8bd5\u4e2d\u53ef\u4ee5\u52a8\u6001\u4f20\u9012\u5e76\u4e14\u53ef\u4ee5\u8de8\u7ebf\u7a0b\u4f20\u9012

    "},{"location":"faq/load_test/#25","title":"25 \u6027\u80fd\u6d4b\u8bd5\u65e0\u6cd5\u6b63\u5e38\u6267\u884c\uff0c\u63d0\u793a\u8d44\u6e90\u4e0d\u591f\uff1f","text":"

    \u53ef\u80fd\u7684\u539f\u56e0\u6709:

    • \u6027\u80fd\u6d4b\u8bd5\u91cc\u6709\u6dfb\u52a0\u524d\u540e\u7f6e\u811a\u672c\uff0c\u5c24\u5176\u662fpython\uff0c\u6d88\u8017\u6027\u80fd\u6bd4\u8f83\u5927\u3002
    • \u6d4b\u8bd5\u8d44\u6e90\u6c60\u4e3b\u673a\u8d44\u6e90\uff08\u5c24\u5176\u662f\u5185\u5b58\uff09\u4e0d\u8db3\u3002

    \u89e3\u51b3\u65b9\u6cd5:

    • \u5c3d\u91cf\u4e0d\u8981\u4f7f\u7528\u524d\u540e\u7f6e\u811a\u672c\uff0c\u6216\u8005\u6362\u7528\u8d44\u6e90\u6d88\u8017\u5c0f\u7684\u811a\u672c\uff0c\u5982 groovy\u3002
    • \u6362\u7528\u5355\u72ec\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60\uff0c\u4f7f\u7528 node-controller \u6a21\u5f0f\u5b89\u88c5\u3002
    "},{"location":"faq/load_test/#26","title":"26 \u6027\u80fd\u6d4b\u8bd5\u62a5\u544a\u4e2d\uff0c\u5e76\u53d1\u7528\u6237\u6570\u663e\u793a\u548c\u8bbe\u7f6e\u4e0d\u4e00\u81f4","text":"

    \u53ef\u80fd\u7684\u539f\u56e0\u6709:

    • \u5e76\u53d1\u7528\u6237\u6570\u592a\u5c11\uff0cramp-up\u8bbe\u7f6e\u7684\u65f6\u95f4\u957f\uff0c\u5bfc\u81f4\u52a0\u538b\u540e\u7b2c\u4e00\u4e2a\u7528\u6237\u5df2\u7ecf\u6267\u884c\u5b8c\u6d4b\u8bd5\u4e86\uff0c\u7b2c\u4e8c\u4e2a\u7528\u6237\u624d\u521b\u5efa\u51fa\u6765\uff0c\u770b\u8d77\u6765\u5e76\u53d1\u7528\u6237\u6570\u5c31\u4e00\u76f4\u662f1\u3002
    • \u62a5\u544a\u5de6\u4e0a\u89d2\u7684\u5e76\u53d1\u7528\u6237\u6570\u5728\u62a5\u544a\u91cc\u663e\u793a\u7684\u662f\u5e73\u5747\u503c\uff0c\u4e0d\u662f\u5b9e\u65f6\u53d8\u5316\u7684\u3002

    \u89e3\u51b3\u65b9\u6cd5\uff1a\u51cf\u5c11ramp-up\u65f6\u95f4\uff0c\u53ef\u4ee5\u770b\u5230\u5e76\u53d1\u7528\u6237\u6570\u4e0e\u8bbe\u7f6e\u4e00\u81f4\u3002

    "},{"location":"faq/load_test/#27-kafka","title":"27 \u5982\u4f55\u4fee\u6539 kafka \u7684\u65e5\u5fd7\u4fdd\u7559\u65f6\u95f4\uff1f","text":"

    \u4fee\u6539 /opt/metersphere/docker-compose-kafka.yml \u914d\u7f6e\u6587\u6863\u91cc\u7684 KAFKA_CFG_LOG_RETENTION_HOURS \u53c2\u6570\u3002

    "},{"location":"faq/load_test/#28-csv","title":"28 \u6027\u80fd\u6d4b\u8bd5\u65f6\u63a5\u53e3\u8bfb\u53d6 csv \u4e0d\u80fd\u6309\u987a\u5e8f\u8bfb\u53d6","text":"

    \u6240\u9009\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60\u6709\u591a\u4e2a\u8282\u70b9\uff0c\u591a\u4e2a\u8282\u70b9\u5171\u7528\u4e00\u5957 CSV \u5bfc\u81f4\u53d6\u503c\u91cd\u590d\uff0c\u5728\u6027\u80fd\u6d4b\u8bd5\u7684\u9ad8\u7ea7\u914d\u7f6e\u91cc\uff0c\u5f00\u542f CSV \u5206\u5272\uff0c\u591a\u51c6\u5907\u70b9\u6d4b\u8bd5\u6570\u636e\u3002CSV \u5206\u5272\u662f: \u5047\u8bbe\u67092\u4e2a\u8282\u70b9\uff0cCSV \u91cc\u6709100\u6761\u6570\u636e\uff0c\u5c31\u4f1a\u628a CSV \u91cc\u7684\u6570\u636e\u5747\u5206\u62102\u4efd\uff0c\u7136\u540e\u8282\u70b91 \u4f7f\u7528 1-50 \u6761\u6570\u636e\uff0c\u8282\u70b92 \u4f7f\u7528 51-100 \u6761\u6570\u636e\u3002

    "},{"location":"faq/load_test/#29-csv","title":"29 \u6027\u80fd\u6d4b\u8bd5\u914d\u7f6e\u91cc\u9762\u4e0a\u4f20 CSV \u6587\u4ef6\uff0c\u5728\u9ad8\u7ea7\u914d\u7f6e\u91cc\u9762\u770b\u4e0d\u5230","text":"

    csv \u6587\u4ef6\u6ca1\u6709\u88ab\u6027\u80fd jmx \u811a\u672c\u5f15\u7528\uff0cjmx \u5f15\u7528\u4e86\u624d\u80fd\u770b\u89c1\u3002\u4fee\u6539 jmx \u6587\u4ef6\uff0c\u5f15\u7528\u4e0a\u4f20\u7684 CSV \u6587\u4ef6\uff0c\u6216\u8005\u5728\u573a\u666f\u91cc\u6dfb\u52a0 CSV \u6587\u4ef6\u540e\u8f6c\u6027\u80fd\u6d4b\u8bd5\u3002

    "},{"location":"faq/load_test/#30-windows","title":"30 \u6027\u80fd\u6d4b\u8bd5\u6a21\u5757\uff0c\u81ea\u5b9a\u4e49\u76d1\u63a7\u9879\u4e0d\u652f\u6301 windows \u670d\u52a1\u5668","text":"

    \u9ed8\u8ba4\u63d0\u4f9b\u7684 promQL \u662f\u4e0e linux \u64cd\u4f5c\u7cfb\u7edf\u9002\u914d\uff0cwindows \u64cd\u4f5c\u7cfb\u7edf\u7684\u76d1\u63a7\u9879\u9700\u8981\u81ea\u884c\u7f16\u5199\uff0c\u4f8b\u5982\uff1a\u67e5\u8be2 windows \u7684 cpu \u4f7f\u7528\u7387: 100 - (avg by (instance) (irate(windows_cpu_time_total{mode=\"idle\", instance=\"%1$s\"}[1m])) * 100)

    \u5176\u4e2d %1$s \u662f\u88ab\u76d1\u63a7\u8282\u70b9\u7684ip\u548c\u7aef\u53e3\uff0c\u4e0a\u9762\u8fd9\u6761\u8bed\u53e5\u5728\u6267\u884c\u65f6\u4f1a\u53d8\u6210 100 - (avg by (instance) (irate(windows_cpu_time_total{mode=\"idle\", instance=\"172.16.10.54:9182\"}[1m])) * 100) \u5176\u4ed6\u76d1\u63a7\u9879\u53ef\u4ee5\u81ea\u884c\u67e5\u8be2\u6765\u5199\uff0c\u5185\u5b58\u3001\u78c1\u76d8\u7b49\uff0c\u8fd8\u53ef\u4ee5\u81ea\u884c\u76d1\u63a7\u4e0d\u540c\u7684 exporter\uff0c\u53ea\u8981\u662f\u7b26\u5408 exporter\u89c4\u8303\u7684\u90fd\u53ef\u4ee5\u5728\u81ea\u5b9a\u4e49\u76d1\u63a7\u4e2d\u914d\u7f6e

    "},{"location":"faq/load_test/#31-k8s-ms","title":"31 \u90e8\u7f72\u5728 K8S \u4e0b\u7684 MS \u81ea\u5b9a\u4e49\u76d1\u63a7\u914d\u7f6e\u65b9\u6cd5\uff0c\u9ed8\u8ba4\u65b9\u6cd5\u65e0\u6cd5\u751f\u6548\uff0c\u5e76\u4e14\u76d1\u63a7\u8be6\u60c5\u6ca1\u6709\u6570\u636e","text":"

    \u5728 prometheus.yml \u4e2d\u914d\u7f6e

    consul_sd_configs:\n- server: 'k8s\u4e2dms\u7684ip:port'\nservices: []\n
    \u81ea\u5b9a\u4e49\u76d1\u63a7\u4e2d\u52a0\u4e0a\u9700\u8981\u7684\u8282\u70b9\uff0c\u7cfb\u7edf\u53c2\u6570\u6d4b\u8bd5\u4e2d\u8bbe\u7f6e prometheus \u7684\u5b9e\u9645\u5730\u5740\uff0c\u6267\u884c\u6d4b\u8bd5\u53ef\u4ee5\u663e\u793a\u76d1\u63a7\u3002

    "},{"location":"faq/load_test/#32","title":"32 \u63a5\u53e3\u81ea\u52a8\u5316\u521b\u5efa\u7684\u6027\u80fd\u6d4b\u8bd5\uff0c\u811a\u672c\u53ca\u6587\u4ef6\u5185\u5bb9\u66f4\u65b0\u540e\uff0c\u5df2\u8f6c\u6027\u80fd\u6d4b\u8bd5\u7684\u7528\u4f8b\u6ca1\u6709\u540c\u6b65\u66f4\u65b0","text":"

    \u8f6c\u6027\u80fd\u6d4b\u8bd5\u7684\u65f6\u5019\u751f\u6210\u7684 jmx \u6587\u4ef6\u5c31\u662f\u5f53\u524d\u7684\u914d\u7f6e\uff0c\u4e4b\u540e\u518d\u4fee\u6539\u63a5\u53e3\u5bf9\u6027\u80fd\u6d4b\u8bd5\u65e0\u6548\uff0c\u70b9\u51fb\u6027\u80fd\u6d4b\u8bd5\u53f3\u4e0a\u89d2\u201c\u540c\u6b65\u573a\u666f\u6d4b\u8bd5\u6700\u65b0\u53d8\u66f4\u201d\u6309\u94ae\u624b\u52a8\u540c\u6b65\u5373\u53ef\u3002

    "},{"location":"faq/load_test/#33-image-not-found-registrycn-qingdaoaliyuncscommeterspherejmeter-master543-ms5-jdk11","title":"33 \u8fd0\u884c\u6027\u80fd\u6d4b\u8bd5\u7684\u65f6\u5019\u62a5\u9519Image Not Found: registry.cn-qingdao.aliyuncs.com/metersphere/jmeter-master:5.4.3-ms5-jdk11","text":"

    \u670d\u52a1\u5668\u672c\u5730\u7684 jmeter-master \u955c\u50cf\u88ab\u5220\u9664\u4e86\uff0c\u9700\u8981\u624b\u52a8\u6267\u884c\u547d\u4ee4\u624b\u52a8\u62c9\u53d6\u955c\u50cf docker pull registry.cn-qingdao.aliyuncs.com/metersphere/jmeter-master:5.4.3-ms5-jdk11\u3002

    "},{"location":"faq/load_test/#34-k8s-sa-token","title":"34 \u5982\u679c\u91c7\u7528 K8S \u96c6\u7fa4\u538b\u6d4b\uff0c\u5982\u4f55\u83b7\u53d6 SA \u548c Token\uff1f","text":"
    // \u521b\u5efa namespaces\nkubectl create namespace metersphere\n\n// \u521b\u5efa SA\nkubectl create serviceaccount ms -n metersphere\n\n// \u521b\u5efa namespace \u6388\u6743 SA\nkubectl create clusterrolebinding ms --clusterrole=admin --serviceaccount=metersphere:ms -n metersphere\n\n// \u67e5\u8be2 SA token\nkubectl describe sa/ms -n metersphere\nkubectl describe secrets -n metersphere ms-token-xxxx\n
    "},{"location":"faq/report_statistics/","title":"\u62a5\u8868\u7edf\u8ba1\u76f8\u5173","text":""},{"location":"faq/report_statistics/#1-metersphere","title":"1 MeterSphere \u63d0\u4f9b\u8d28\u91cf\u5927\u5c4f\u5417\uff1f","text":"

    \u76ee\u524d\uff0cMeterSphere \u7684\u3010\u62a5\u8868\u7edf\u8ba1\u3011\u6a21\u5757\u63d0\u4f9b\u4e86\u6d4b\u8bd5\u7528\u4f8b\u5206\u6790\u62a5\u8868\u3002\u5982\u9700\u66f4\u591a\u7ef4\u5ea6\u7684\u5927\u5c4f\u5c55\u793a\uff0c\u53ef\u4ee5\u4f7f\u7528\u53ef\u89c6\u5316\u5206\u6790\u5de5\u5177 DataEase\uff0c\u901a\u8fc7\u8fde\u63a5 MeterSphere \u6570\u636e\u5e93\u83b7\u53d6\u6570\u636e\u8be6\u60c5\uff0c\u521b\u5efa\u6ee1\u8db3\u4e1a\u52a1\u9700\u6c42\u7684\u81ea\u5b9a\u4e49\u8d28\u91cf\u5927\u5c4f\u3002 \u53c2\u7167 \u7528DataEase\u5f00\u6e90\u5de5\u5177\u6784\u5efaMeterSphere\u4eea\u8868\u677f\u3002

    "},{"location":"faq/service_integration/","title":"\u670d\u52a1\u96c6\u6210\u76f8\u5173","text":""},{"location":"faq/service_integration/#1-metersphere","title":"1 MeterSphere \u5982\u4f55\u5bf9\u63a5\u7b2c\u4e09\u65b9\u5e73\u53f0\uff1f","text":"

    TAPD\uff1a \u8bf7\u53c2\u8003MeterSphere \u670d\u52a1\u96c6\u6210\u4e4b TAPD \u5bf9\u63a5 JIRA\uff1a \u8bf7\u53c2\u8003 MeterSphere \u670d\u52a1\u96c6\u6210\u4e4b JIRA \u5bf9\u63a5 \u7985\u9053\uff1a \u8bf7\u53c2\u8003MeterSphere \u670d\u52a1\u96c6\u6210\u4e4b \u7985\u9053 \u5bf9\u63a5 Azure Devops\uff1a \u8bf7\u53c2\u8003MeterSphere \u670d\u52a1\u96c6\u6210\u4e4b Azure Devops \u5bf9\u63a5

    "},{"location":"faq/service_integration/#2-ms","title":"2 \u5728\u7985\u9053\u4e0a\u5df2\u521b\u5efa\u7684\u7f3a\u9677\uff0cMS \u4e0a\u70b9\u51fb\u3010\u540c\u6b65\u7f3a\u9677\u3011\uff0c\u4e3a\u4ec0\u4e48\u672a\u6210\u529f\u540c\u6b65\uff1f","text":"

    \u7985\u9053\u7f3a\u9677\u540c\u6b65\u5230 MS \u662f\u4f01\u4e1a\u7248\u529f\u80fd\uff0c\u5f00\u6e90\u7248\u53ea\u652f\u6301\u5355\u5411\u540c\u6b65\uff0c\u53ea\u80fd\u5c06 MS \u7f3a\u9677\u540c\u6b65\u5230\u7985\u9053\u4e0a\u3002

    "},{"location":"faq/service_integration/#3-path_info","title":"3 \u7985\u9053\u5728 PATH_INFO \u4e0b\uff0c\u9879\u76ee\u96c6\u6210\u63d0\u793a\u5931\u8d25\u600e\u4e48\u5904\u7406?","text":"

    \u4fee\u6539\u7985\u9053\u914d\u7f6e\u6216 MS \u5e73\u53f0\u8bbe\u7f6e\uff0c\u786e\u4fdd\u4e24\u4e2a\u7cfb\u7edf\u4e2d\u7684\u8bf7\u6c42\u65b9\u5f0f\u4fdd\u6301\u4e00\u81f4\uff1a \uff081\uff09\u3010\u4fee\u6539\u7985\u9053\u914d\u7f6e\u3011\u914d\u7f6e\u6587\u4ef6\u8def\u5f84\uff1a/opt/zbox/app/zentao/config/my.php\uff0c\u4fee\u6539 $config->requestType = 'PATH_INFO' \u6216 'GET'\uff0c\u7136\u540e\u91cd\u542f\u7985\u9053/opt/zbox/zbox restart\u3002 \uff082\uff09\u3010\u4fee\u6539MS\u914d\u7f6e\u3011\u5728\u201c\u7cfb\u7edf\u8bbe\u7f6e-\u5de5\u4f5c\u7a7a\u95f4-\u670d\u52a1\u96c6\u6210-\u7985\u9053\u201d\u914d\u7f6e\u9875\u9762\uff0c\u9009\u62e9\u8bf7\u6c42\u65b9\u5f0f\u4e3aPATH_INFO\u6216 GET\u3002

    "},{"location":"faq/service_integration/#4-ms-tapd-ms-tapd","title":"4 MS \u96c6\u6210 TAPD\uff0c\u5728 MS \u5e73\u53f0\u4e0a\u63d0\u4ea4\u7f3a\u9677\u65f6\u4e0a\u4f20\u56fe\u7247\uff0c\u4f46\u5728 TAPD \u4e2d\u65e0\u6cd5\u6b63\u786e\u663e\u793a\u56fe\u7247\uff0c\u5982\u4f55\u5904\u7406\uff1f","text":"

    \u6d4f\u89c8\u5668\u7684\u9ed8\u8ba4\u5b89\u5168\u7b56\u7565\u5bfc\u81f4\uff0c\u9700\u8981\u5728MS\u5e73\u53f0\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u7cfb\u7edf-\u7cfb\u7edf\u53c2\u6570\u8bbe\u7f6e-\u57fa\u672c\u914d\u7f6e-\u5f53\u524d\u7ad9\u70b9URL\u3011\u4e2d\u914d\u7f6e\u4e3a https \u7684\u5730\u5740\u3002

    "},{"location":"faq/service_integration/#5-ms-metersphere-id-id","title":"5 MS \u96c6\u6210\u7985\u9053\uff0c\u5728 MeterSphere \u5e73\u53f0\u4e0a\u9879\u76ee ID \u586b\u5199\u6b63\u786e\uff0c\u68c0\u67e5\u65f6\u63d0\u793aID\u4e0d\u5b58\u5728\u6216\u8005\u5176\u4ed6\u9519\u8bef\u5982\u4f55\u5904\u7406\uff1f","text":"

    \u53ef\u80fd\u539f\u56e0\u5305\u62ec\uff1a

    • v2.4 \u7248\u672c\u4e4b\u540e\uff0c\u670d\u52a1\u96c6\u6210\u4fee\u6539\u4e3a\u63d2\u4ef6\u65b9\u5f0f\uff0c\u7985\u9053\u63d2\u4ef6\u7248\u672c\u548c\u5f53\u524d MeterSphere \u7248\u672c\u4e0d\u4e00\u81f4\u3002
    • \u6ca1\u6709\u5bf9\u5e94\u4ea7\u54c1\u6216\u8005\u9879\u76ee\u7684\u6743\u9650\uff0c\u6216\u8005\u6709\u6743\u9650\u4f46\u662f\u9700\u8981\u586b\u4ea7\u54c1 ID\uff0c\u5b9e\u9645\u586b\u4e86\u9879\u76ee ID\u3002
    • \u7985\u9053\u670d\u52a1\u6ca1\u6709\u542f\u7528api\u8c03\u7528\u6743\u9650\uff1a\u7f3a\u5c11\u914d\u7f6e $config->features->apiGetModel\u3002
    • \u670d\u52a1\u96c6\u6210\u5904\u5bf9\u63a5\u7684\u7985\u9053\u7528\u6237\uff0c\u6ca1\u6709\u52fe\u9009\u8d4b\u4e88\"\u8d85\u7ea7model\u8c03\u7528\u63a5\u53e3\"\u6743\u9650\u3002

    \u89e3\u51b3\u65b9\u6cd5\uff1a

    • \u5728 github\u4e0a\u4e0b\u8f7d\u548c MeterSphere \u7248\u672c\u4e00\u81f4\u7684\u63d2\u4ef6metersphere-platform-plugin \u5e76\u4e0a\u4f20\u5230\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u63d2\u4ef6\u7ba1\u7406\u3011\uff0c\u7528\u6cd5\u53c2\u8003\u670d\u52a1\u96c6\u6210\u63d2\u4ef6\u3002
    • \u5728 MeterSphere \u9879\u76ee\u7f16\u8f91\u6846-\u9879\u76eeID \u5904\u6709\u201ci\u201d\u63d0\u793a\u8bf4\u660e\uff0c\u6309\u7167\u914d\u7f6e\u8bf4\u660e\u586b\u5199\u5bf9\u5e94 \u4ea7\u54c1ID \u6216\u8005 \u9879\u76eeID\u3002
    • \u5728\u7985\u9053\u5b89\u88c5\u8def\u5f84\u4e2d\uff1a${\u5b89\u88c5\u8def\u5f84}/zentao/config/ \u76ee\u5f55\u4e0b my.php (\u5982\u679c\u6ca1\u6709\uff0c\u65b0\u5efa my.php \u6587\u4ef6)\u4e2d\u6dfb\u52a0\u5982\u4e0b\u5185\u5bb9\uff1a$config->features->apiGetModel = true;\u7136\u540e\u91cd\u542f\u7985\u9053\u670d\u52a1\u5668\uff1a/opt/zbox/zbox restart\u3002
    • \u7528\u4e8e\u5bf9\u63a5\u7684\u7985\u9053\u7528\u6237\uff0c\u786e\u8ba4\u5728\u7985\u9053 web \u7aef\u3010\u7ec4\u7ec7-\u6743\u9650-\u6743\u9650\u7ef4\u62a4-API \u63a5\u53e3\u3011\u52fe\u9009\u4e86\u201c\u8d85\u7ea7model\u8c03\u7528\u63a5\u53e3\u201d\u3002
    "},{"location":"faq/service_integration/#6-ms-jira-jirakey-id","title":"6 MS \u96c6\u6210 JIRA \u5e73\u53f0\uff0c\u586b\u5199\u3010JIRA\u9879\u76eekey\u3011\u540e\u8fdb\u884c\u4fdd\u5b58\u65f6\uff0c\u9875\u9762\u63d0\u793a \"ID\u4e0d\u5b58\u5728\u6216\u5176\u4ed6\u9519\u8bef\"\u5982\u4f55\u5904\u7406\uff1f","text":"

    \u4e00\u822c\u4e3a\u7528\u6237\u6ca1\u6709\u6743\u9650\u8bbf\u95ee\u6b64\u9879\u76ee\uff0c\u68c0\u67e5 JIRA \u5bf9\u5e94\u9879\u76ee\u7684\u7ba1\u7406\u5458\u7528\u6237\u662f\u5426\u548c MS \u7cfb\u7edf\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u670d\u52a1\u96c6\u6210-JIRA\u3011\u5904\u914d\u7f6e\u7684\u8d26\u53f7\u4e00\u81f4\uff0c\u53ef\u914d\u5408\u540e\u53f0\u65e5\u5fd7/opt/metersphere/logs/system-setting/info.log\u67e5\u770b\u62a5\u9519\u539f\u56e0\u3002

    "},{"location":"faq/service_integration/#7-jira","title":"7 \u540c\u6b65\u7f3a\u9677\u5230JIRA\uff0c\u5982\u4f55\u5b9e\u73b0\u81ea\u5b9a\u4e49\u5b57\u6bb5\uff1f","text":"

    \u53ef\u4ee5\u5728\u3010\u9879\u76ee\u8bbe\u7f6e-\u66f4\u591a\u9009\u9879-\u6a21\u7248\u7ba1\u7406\u3011\uff0c\u521b\u5efa\u6a21\u677f\u5b57\u6bb5\uff1b\u7136\u540e\u6253\u5f00\u7f3a\u9677\u6a21\u677f-JIRA\u9ed8\u8ba4\u6a21\u7248\uff0c\u6dfb\u52a0\u521b\u5efa\u597d\u7684\u81ea\u5b9a\u4e49\u5b57\u6bb5\uff0c\u5728 MeterSphere \u4e0a\u63d0\u4ea4\u7f3a\u9677\u65f6\u5c31\u4f1a\u51fa\u73b0\u8be5\u5b57\u6bb5\u3002

    "},{"location":"faq/service_integration/#8-jira","title":"8 \u96c6\u6210JIRA\u65f6\uff0c\u5982\u4f55\u5b9e\u73b0\u7ed1\u5b9a\u6307\u5b9a\u8d26\u53f7\uff1f","text":"

    \u53ef\u4ee5\u5728\u3010\u4e2a\u4eba\u8d26\u53f7-\u4e2a\u4eba\u4fe1\u606f-\u7b2c\u4e09\u65b9\u5e73\u53f0\u8d26\u53f7\u3011\u5f39\u7a97\uff0c\u914d\u7f6e JIRA \u8d26\u53f7\u548c\u5bc6\u7801\uff0c\u5c31\u53ef\u4ee5\u7ed1\u5b9a\u8d26\u53f7\u5173\u8054\u9700\u6c42\u4ee5\u53ca\u540c\u6b65\u7f3a\u9677\u4e86\u3002

    "},{"location":"faq/system_management/","title":"\u7cfb\u7edf\u8bbe\u7f6e\u76f8\u5173","text":""},{"location":"faq/system_management/#1-metersphere","title":"1 \u5982\u4f55\u7406\u89e3 MeterSphere \u6d4b\u8bd5\u8d44\u6e90\u6c60\uff1f","text":"

    \u6d4b\u8bd5\u8d44\u6e90\u6c60\u662f MeterSphere \u4e2d\u7684\u6267\u884c\u673a\u96c6\u5408\uff0c\u7528\u4e8e\u6267\u884c\u6307\u5b9a\u7684\u63a5\u53e3\u6216\u6027\u80fd\u6d4b\u8bd5\u3002\u76ee\u524d\u652f\u6301\u6dfb\u52a0 Node \u8d44\u6e90\u6c60\u548c K8S \u8d44\u6e90\u6c60\uff0c\u8be6\u7ec6\u8bf4\u660e\u8bf7\u53c2\u8003\u8d44\u6e90\u6c60\u914d\u7f6e\u3002

    "},{"location":"faq/system_management/#2-ldap","title":"2 LDAP\u6d4b\u8bd5\u8fde\u63a5\uff0c\u63d0\u793a\u7528\u6237\u4e0d\u5b58\u5728\u6216\u8005\u4e0d\u552f\u4e00\u5982\u4f55\u5904\u7406\uff1f","text":"

    \u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u7cfb\u7edf\u53c2\u6570\u8bbe\u7f6e-LDAP \u8bbe\u7f6e\u3011\u66f4\u6539\u7528\u6237\u8fc7\u6ee4\u5668\u4e3a(cn={0})\uff1bLDAP\u5c5e\u6027\u6620\u5c04\u4e3a\uff5b\"username\": \"cn\"\uff5d\u3002

    "},{"location":"faq/system_management/#3","title":"3 \u9879\u76ee\u5982\u4f55\u914d\u7f6e\u901a\u7528\u7684\u57df\u540d\uff1f","text":"

    \u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u5de5\u4f5c\u7a7a\u95f4-\u73af\u5883\u914d\u7f6e\u3011\u9875\u9762\uff0c\u3010\u901a\u7528\u8bbe\u7f6e\u3011\u542f\u7528 Hosts\uff0c\u53ef\u4ee5\u4e3a\u9879\u76ee\u914d\u7f6e\u901a\u7528\u7684\u57df\u540d\u3002

    "},{"location":"faq/system_management/#4","title":"4 \u90ae\u4ef6\u670d\u52a1\u5668\u8fde\u63a5\u4e0d\u6210\u529f\u5982\u4f55\u5904\u7406\uff1f","text":"

    \u5bfc\u81f4\u90ae\u7bb1\u94fe\u63a5\u4e0d\u6210\u529f\u7684\u539f\u56e0\u53ef\u80fd\u662f 465 \u7aef\u53e3\u672a\u5f00\u653e\uff0c \u53ef\u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u7cfb\u7edf\u53c2\u6570\u8bbe\u7f6e-\u90ae\u4ef6\u8bbe\u7f6e\u8bbe\u7f6e\u3011\u5c06\u90ae\u4ef6\u8bbe\u7f6e\u4e2d\u7684 465 \u7aef\u53e3\u6539\u6210 25 \u7aef\u53e3\u5e76\u53bb\u6389 ssl \u9009\u9879.

    "},{"location":"faq/system_management/#5-warn-establishing-ssl-connection-without-servers-identity-verification-is-not-recommended","title":"5 \u73af\u5883\u914d\u7f6e\u6570\u636e\u5e93\u8fde\u63a5\u4e0d\u901a\uff0c \u63d0\u793a\uff1aWARN: Establishing SSL connection without server's identity verification is not recommended.","text":"

    \u6570\u636e\u5e93\u9ed8\u8ba4\u5f00\u542f\u4e86 SSL \u9a8c\u8bc1\u76f8\u5e94\u7684\u914d\u7f6e\u5bfc\u81f4\uff0c\u53ef\u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u73af\u5883\u7ba1\u7406\u3011\u6570\u636e\u5e93\u7684 URL \u589e\u52a0\uff1fuseSSL=false \u6765\u89e3\u51b3\u3002

    "},{"location":"faq/system_management/#6-sqlsql","title":"6 \u5728\u4e00\u4e2aSQL\u8bf7\u6c42\u4e0b\u5982\u4f55\u6267\u884c\u591a\u6761SQL\uff1f","text":"

    \u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u73af\u5883\u7ba1\u7406\u3011\u7f16\u8f91\u73af\u5883\u6570\u636e\u6e90\u914d\u7f6e\u7684 URL \u540e\u9762\u52a0\u4e0a allowMultiQueries=true\u3002

    "},{"location":"faq/system_management/#7-no-database-selected","title":"7 \u73af\u5883\u914d\u7f6e\u6570\u636e\u5e93\u914d\u7f6e\u63d0\u793a\uff1ano database selected\uff0c\u5982\u4f55\u89e3\u51b3\uff1f","text":"

    \u9700\u8981\u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u73af\u5883\u7ba1\u7406\u3011\u7f16\u8f91\u73af\u5883\u6570\u636e\u6e90\u8fde\u63a5 URL \u4e2d\u589e\u52a0\u6570\u636e\u5e93\u5e93\u540d\u4fe1\u606f\u3002\u4f8b\u5982\uff1ajdbc:mysql://127.0.0.1:3306/database\u3002

    "},{"location":"faq/test_track/","title":"\u6d4b\u8bd5\u8ddf\u8e2a\u76f8\u5173","text":""},{"location":"faq/test_track/#1-metersphere","title":"1 MeterSphere \u4e2d\u6d4b\u8bd5\u8ba1\u5212\u5177\u4f53\u7684\u573a\u666f\u662f\u4ec0\u4e48\uff1f","text":"

    \u53c2\u8003\u6587\u7ae0\uff1a \u4ea7\u54c1\u89e3\u8bfb\u4e28MeterSphere\u4e2d\u6d4b\u8bd5\u8ba1\u5212\u7684\u573a\u666f\u8bbe\u8ba1\u4e0e\u5b9e\u73b0\u3002

    "},{"location":"faq/test_track/#2","title":"2 \u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757\uff0c\u7528\u4f8b\u8bc4\u5ba1\u5982\u4f55\u8fdb\u884c\u6279\u91cf\u5904\u7406\uff1f","text":"

    \u9009\u4e2d\u6d4b\u8bd5\u8bc4\u5ba1\u7528\u4f8b\u5217\u8868\u4e2d\u9700\u8981\u6279\u91cf\u5904\u7406\u7684\u7528\u4f8b\uff0c\u70b9\u51fb\u3010\u00b7\u00b7\u00b7\u3011\u5f39\u51fa\u4e0b\u62c9\u6846\uff0c\u9009\u62e9\u6279\u91cf\u7f16\u8f91\uff0c\u53ef\u4ee5\u6279\u91cf\u8bbe\u7f6e\u8bc4\u5ba1\u7ed3\u679c\u3002

    "},{"location":"faq/test_track/#3","title":"3 \u6d4b\u8bd5\u8ba1\u5212\u91cc\uff0c\u5982\u4f55\u6279\u91cf\u5206\u914d\u6267\u884c\u4eba\uff1f","text":"

    \u9009\u4e2d\u6d4b\u8bd5\u8ba1\u5212\u7528\u4f8b\u5217\u8868\u4e2d\u9700\u8981\u6279\u91cf\u5904\u7406\u7684\u7528\u4f8b\uff0c\u70b9\u51fb\u3010\u00b7\u00b7\u00b7\u3011\u5f39\u51fa\u4e0b\u62c9\u6846\uff0c\u9009\u62e9\u6279\u91cf\u7f16\u8f91\uff0c\u53ef\u4ee5\u5206\u914d\u6267\u884c\u4eba\u3002

    "},{"location":"faq/test_track/#4","title":"4 \u6d4b\u8bd5\u8ba1\u5212\u6267\u884c\u5b9a\u65f6\u4efb\u52a1\uff0c\u662f\u5426\u4f1a\u81ea\u52a8\u89e6\u53d1\u63a5\u53e3\u6d4b\u8bd5\u548c\u6027\u80fd\u6d4b\u8bd5\uff1f\u5b9a\u65f6\u4efb\u52a1\u6dfb\u52a0\u540e\u5982\u4f55\u5220\u9664\uff1f","text":"

    \u6d4b\u8bd5\u8ba1\u5212\u7684\u5b9a\u65f6\u4efb\u52a1\u652f\u6301\u5173\u8054\u7ba1\u7406\u63a5\u53e3\u6d4b\u8bd5\u3001\u6027\u80fd\u6d4b\u8bd5\u5e76\u5b9a\u65f6\u89e6\u53d1\uff1b\u914d\u7f6e\u5b9a\u65f6\u4efb\u52a1\u540e\uff0c\u5173\u95ed SCHEDULER \u5f00\u5173\u5373\u53ef\u53d6\u6d88\u5b9a\u65f6\u4efb\u52a1\u3002

    "},{"location":"faq/test_track/#5","title":"5 \u6d4b\u8bd5\u7528\u4f8b\u53ef\u4ee5\u81ea\u5b9a\u4e49\u663e\u793a\u5b57\u6bb5\u5417\uff1f","text":"

    \u5728\u6d4b\u8bd5\u7528\u4f8b\u5217\u8868\uff0c\u70b9\u51fb\u3010\u64cd\u4f5c\u3011\u5217\u4e2d\u7684\u9f7f\u8f6e\u6309\u94ae\u8fdb\u884c\u914d\u7f6e\u3002

    "},{"location":"faq/test_track/#6-jira-metersphere","title":"6 \u5982\u679c\u96c6\u6210\u4e86 JIRA\uff0c\u7f3a\u9677\u72b6\u6001\u53ef\u4ee5\u540c\u6b65\u66f4\u65b0 MeterSphere \u5417\uff1f","text":"

    \u5f00\u6e90\u7248\u4ec5\u652f\u6301\u5355\u5411\u540c\u6b65\uff0c\u5373 MeterSphere \u7f3a\u9677\u540c\u6b65\u5230\u7b2c\u4e09\u65b9\u5e73\u53f0\u3002\u4f01\u4e1a\u7248\u652f\u6301\u53cc\u5411\u540c\u6b65\uff0c\u5373 MeterSphere \u7f3a\u9677\u540c\u6b65\u5230\u7b2c\u4e09\u65b9\u5e73\u53f0\uff0c\u7b2c\u4e09\u65b9\u5e73\u53f0\u4e0a\u7684\u7f3a\u9677\u540c\u6b65\u5230 MeterSphere

    "},{"location":"faq/test_track/#7-jira","title":"7 \u7f3a\u9677\u7ba1\u7406\u81ea\u5b9a\u4e49\u5b57\u6bb5\uff0c\u5982\u4f55\u8ddf JIRA \u7aef\u7684\u5b57\u6bb5\u5173\u8054\uff1f","text":"

    \u5728 Jira \u91cc\u67e5\u770b network\uff0c\u627e\u5230\u5bf9\u5e94\u7684\u81ea\u5b9a\u4e49\u5b57\u6bb5\u7684\u5b57\u6bb5\u540d\u79f0\uff0c\u7136\u540e\u5230 MeterSphere \u7f3a\u9677\u6a21\u7248\u91cc\u8bbe\u7f6e\u4e0a\u5bf9\u5e94\u7684 api \u5b57\u6bb5\u540d\u3002

    "},{"location":"faq/test_track/#8","title":"8 \u6d4b\u8bd5\u7528\u4f8b\u53ef\u4ee5\u81ea\u5b9a\u4e49\u6dfb\u52a0\u5b57\u6bb5\u5417\uff1f","text":"

    \u5728\u3010\u9879\u76ee\u8bbe\u7f6e-\u66f4\u591a\u9009\u9879-\u6a21\u7248\u7ba1\u7406-\u6a21\u677f\u5b57\u6bb5\u3011\uff0c\u53ef\u4ee5\u521b\u5efa\u6a21\u677f\u5b57\u6bb5\uff0c\u521b\u5efa\u65f6\u9009\u62e9\u7528\u4f8b\u6a21\u7248\uff0c\u4fdd\u5b58\u6210\u529f\u540e\u6253\u5f00\u7528\u4f8b\u6a21\u7248\uff0c\u6dfb\u52a0\u521b\u5efa\u7684\u6a21\u677f\u5b57\u6bb5\u3002\u7136\u540e\u5728\u7f16\u5199\u7528\u4f8b\u7684\u9875\u9762\u5c31\u4f1a\u51fa\u73b0\u6a21\u677f\u5b57\u6bb5\u3002

    "},{"location":"faq/test_track/#9","title":"9 \u5982\u4f55\u627e\u56de\u8bef\u5220\u9664\u7684\u6d4b\u8bd5\u7528\u4f8b\uff1f","text":"

    \u5220\u9664\u7684\u6d4b\u8bd5\u7528\u4f8b\u5e76\u4e0d\u4f1a\u7acb\u5373\u5220\u9664\uff0c\u800c\u662f\u79fb\u52a8\u5230\u3010\u56de\u6536\u7ad9\u3011\u4e2d\uff0c\u53ef\u4ee5\u5728\u3010\u6d4b\u8bd5\u8ddf\u8e2a-\u6d4b\u8bd5\u7528\u4f8b\u3011\u6a21\u5757\uff0c\u70b9\u51fb\u3010\u56de\u6536\u7ad9\u3011\u627e\u56de\u3002

    "},{"location":"faq/test_track/#10","title":"10 \u6d4b\u8bd5\u7528\u4f8b\u9875\u9762\u7684\u5b57\u6bb5\u5982\u4f55\u589e\u52a0\u81ea\u5b9a\u4e49\u5b57\u6bb5\uff1f","text":"
    • \u5728\u3010\u9879\u76ee\u8bbe\u7f6e-\u6a21\u7248\u7ba1\u7406-\u7528\u4f8b\u6a21\u7248\u3011\u9875\u9762\u4e2d\uff0c\u9009\u62e9\u8981\u6dfb\u52a0\u5b57\u6bb5\u7684\u7528\u4f8b\u6a21\u7248\uff0c\u6253\u5f00\u3010\u7f16\u8f91\u7528\u4f8b\u6a21\u7248\u3011\u9875\u9762\u3002
    • \u5728\u3010\u7f16\u8f91\u7528\u4f8b\u6a21\u7248\u3011\u9875\u9762\uff0c\u70b9\u51fb\u3010\u8bbe\u7f6e\u81ea\u5b9a\u4e49\u5b57\u6bb5\u3011\u6309\u94ae\u6253\u5f00\u3010\u521b\u5efa\u5b57\u6bb5\u3011\u5bf9\u8bdd\u6846\uff0c\u5728\u5bf9\u8bdd\u6846\u4e2d\u586b\u5199\u5b57\u6bb5\u540d\u79f0\u3001\u5907\u6ce8\uff0c\u9009\u62e9\u3010\u5b57\u6bb5\u7c7b\u578b\u3011\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u4fdd\u5b58\u3002
    "},{"location":"faq/test_track/#11","title":"11 \u63d0\u4ea4\u7f3a\u9677\u9875\u9762\u7684\u5b57\u6bb5\u5982\u4f55\u8fdb\u884c\u81ea\u5b9a\u4e49\u914d\u7f6e\uff1f","text":"

    \u91c7\u7528\u7528\u4f8b\u6a21\u7248\u5b9e\u73b0\u81ea\u5b9a\u4e49\u5b57\u6bb5\u3002

    • \u5728\u3010\u9879\u76ee\u8bbe\u7f6e-\u6a21\u7248\u7ba1\u7406-\u7f3a\u9677\u6a21\u7248\u3011\u9875\u9762\u4e2d\uff0c\u9009\u62e9\u8981\u6dfb\u52a0\u5b57\u6bb5\u7684\u7f3a\u9677\u6a21\u7248\uff0c\u6253\u5f00\u3010\u7f16\u8f91\u7f3a\u9677\u6a21\u7248\u3011\u9875\u9762\u3002
    • \u5728\u3010\u7f16\u8f91\u7f3a\u9677\u6a21\u7248\u3011\u9875\u9762\uff0c\u70b9\u51fb\u3010\u8bbe\u7f6e\u81ea\u5b9a\u4e49\u5b57\u6bb5\u3011\u6309\u94ae\u6253\u5f00\u3010\u521b\u5efa\u5b57\u6bb5\u3011\u5bf9\u8bdd\u6846\uff0c\u5728\u5bf9\u8bdd\u6846\u4e2d\u586b\u5199\u5b57\u6bb5\u540d\u79f0\u3001\u5907\u6ce8\uff0c\u9009\u62e9\u3010\u5b57\u6bb5\u7c7b\u578b\u3011\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u4fdd\u5b58\u3002
    "},{"location":"faq/test_track/#12-jiratapdms","title":"12 \u5728 JIRA\u3001TAPD\u3001\u7985\u9053\u4e0a\u5df2\u521b\u5efa\u7684\u7f3a\u9677\uff0cMS\u4e0a\u70b9\u51fb\u201c\u540c\u6b65\u7f3a\u9677\u201d\uff0c\u672a\u6210\u529f\u540c\u6b65","text":"

    \u9879\u76ee\u4e0e\u8fd9\u4e9b\u5de5\u5177\u8bbe\u7f6e\u4e86\u96c6\u6210\u540e\uff0c\u5f00\u6e90\u7248\u4ec5\u652f\u6301\u5355\u5411\u540c\u6b65\uff0c\u5373 MeterSphere \u7f3a\u9677\u540c\u6b65\u5230\u7b2c\u4e09\u65b9\u5e73\u53f0\u3002\u4f01\u4e1a\u7248\u652f\u6301\u53cc\u5411\u540c\u6b65\uff0c\u5373 MeterSphere \u7f3a\u9677\u540c\u6b65\u5230\u7b2c\u4e09\u65b9\u5e73\u53f0\uff0c\u540c\u65f6\u4e5f\u652f\u6301\u7b2c\u4e09\u65b9\u5e73\u53f0\u4e0a\u7684\u7f3a\u9677\u540c\u6b65\u5230 MeterSphere\u3002

    "},{"location":"faq/test_track/#13","title":"13 \u6d4b\u8bd5\u7528\u4f8b\u6a21\u7248\u6dfb\u52a0\u7684\u81ea\u5b9a\u4e49\u5b57\u6bb5\u5982\u4f55\u5728\u5217\u8868\u5c55\u793a\uff1f","text":"

    \u5728\u6d4b\u8bd5\u7528\u4f8b\u5217\u8868\u4e2d\uff0c\u70b9\u51fb\u3010\u64cd\u4f5c\u3011\u5217\u4e2d\u7684\u9f7f\u8f6e\u6309\u94ae\u8fdb\u884c\u914d\u7f6e\u3002

    "},{"location":"faq/test_track/#14","title":"14 \u540c\u4e00\u4e2a\u6d4b\u8bd5\u8ba1\u5212\uff0c\u65e2\u5305\u542b\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\uff0c\u4e5f\u5305\u542b\u573a\u666f\u7528\u4f8b\u65f6\uff0c\u6267\u884c\u987a\u5e8f\u662f\u600e\u6837\u7684\uff1f","text":"
    • \u4e0d\u540c\u7c7b\u578b\u7684\u7528\u4f8b\u4e4b\u95f4\uff08\u63a5\u53e3\u7528\u4f8b\u3001\u573a\u666f\u7528\u4f8b\u548c\u6027\u80fd\u7528\u4f8b\u7b49\uff09\u6ca1\u6709\u5148\u540e\u5173\u7cfb\uff0c\u662f\u5e76\u884c\u6267\u884c\u3002
    • \u540c\u7c7b\u578b\u7684\u591a\u4e2a\u6d4b\u8bd5\u6839\u636e\u8fd0\u884c\u65f6\u914d\u7f6e\u6267\u884c\uff08\u4e32\u884c\u6216\u8005\u5e76\u884c\uff09\u3002
    "},{"location":"faq/test_track/#15-xmind-metersphere","title":"15 \u4ece\u672c\u5730 xmind \u590d\u5236\u6570\u636e\u7c98\u8d34\u5230 MeterSphere \u7528\u4f8b\u8111\u56fe\u76f4\u63a5\u4fdd\u5b58\u540e\u6ca1\u6709\u6570\u636e","text":"

    \u9700\u8981\u5c06\u76f8\u5e94\u7684\u6570\u636e\u6807\u8bb0\u4e3a\u6a21\u5757\u6216\u8005\u7528\u4f8b\u624d\u80fd\u4fdd\u5b58\u3002

    "},{"location":"faq/test_track/#16-ms-tapd-ms-tapd","title":"16 MS \u96c6\u6210 TAPD\uff0c\u5728 MS \u5e73\u53f0\u63d0\u4ea4\u7f3a\u9677\u65f6\u4e0a\u4f20\u56fe\u7247\u6587\u4ef6\uff0c\u4f46 TAPD \u4e2d\u65e0\u6cd5\u6b63\u786e\u663e\u793a\u56fe\u7247","text":"

    \u95ee\u9898\u539f\u56e0\uff1a \u6d4f\u89c8\u5668\u7684\u9ed8\u8ba4\u5b89\u5168\u7b56\u7565\u5bfc\u81f4\u7684\uff0c\u56e0\u4e3a\u56fe\u7247\u5b9e\u9645\u4e0a\u662f\u653e\u5728\u7985\u9053\u7684\uff0cMS \u662fhttps\u7684\uff0cTAPD \u7684\u5730\u5740\u662fhttp\uff0c\u8bbf\u95ee http \u7684\u7985\u9053\u4f1a\u81ea\u52a8\u8f6c\u6210 https\u3002

    \u89e3\u51b3\u65b9\u6cd5\uff1a MS\u5e73\u53f0\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u7cfb\u7edf-\u7cfb\u7edf\u53c2\u6570\u8bbe\u7f6e-\u57fa\u672c\u914d\u7f6e-\u5f53\u524d\u7ad9\u70b9URL\u3011\uff0c\u9700\u8981\u914d\u7f6e\u6210 https \u7684\u5730\u5740

    "},{"location":"faq/test_track/#17-ms-ms-id-id","title":"17 MS\u96c6\u6210\u7985\u9053\uff0c\u5728 MS\u5e73\u53f0\u4e0a \u9879\u76eeID \u586b\u5199\u6b63\u786e\uff0c\u68c0\u67e5\u65f6\u63d0\u793aID\u4e0d\u5b58\u5728\u6216\u8005\u5176\u4ed6\u9519\u8bef\uff0c\u5982\u4f55\u89e3\u51b3\uff1f","text":"

    \u53ef\u80fd\u539f\u56e0\u5305\u62ec\uff1a

    • v2.4 \u7248\u672c\u4e4b\u540e\uff0c\u670d\u52a1\u96c6\u6210\u4fee\u6539\u4e3a\u63d2\u4ef6\u65b9\u5f0f\uff0c\u7985\u9053\u63d2\u4ef6\u7248\u672c\u548c\u5f53\u524d MeterSphere \u7248\u672c\u4e0d\u4e00\u81f4\u3002
    • \u6ca1\u6709\u5bf9\u5e94\u4ea7\u54c1\u6216\u8005\u9879\u76ee\u7684\u6743\u9650\uff0c\u6216\u8005\u6709\u6743\u9650\u4f46\u662f\u9700\u8981\u586b\u4ea7\u54c1 ID\uff0c\u5b9e\u9645\u586b\u4e86\u9879\u76ee ID\u3002
    • \u7985\u9053\u670d\u52a1\u6ca1\u6709\u542f\u7528api\u8c03\u7528\u6743\u9650\uff1a\u7f3a\u5c11\u914d\u7f6e $config->features->apiGetModel\u3002
    • \u670d\u52a1\u96c6\u6210\u5904\u5bf9\u63a5\u7684\u7985\u9053\u7528\u6237\uff0c\u6ca1\u6709\u52fe\u9009\u8d4b\u4e88\"\u8d85\u7ea7model\u8c03\u7528\u63a5\u53e3\"\u6743\u9650\u3002

    \u89e3\u51b3\u65b9\u6cd5\uff1a

    • \u5728 github\u4e0a\u4e0b\u8f7d\u548c MeterSphere \u7248\u672c\u4e00\u81f4\u7684\u63d2\u4ef6metersphere-platform-plugin \u5e76\u4e0a\u4f20\u5230\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u63d2\u4ef6\u7ba1\u7406\u3011\uff0c\u7528\u6cd5\u53c2\u8003\u670d\u52a1\u96c6\u6210\u63d2\u4ef6\u3002
    • \u5728 MeterSphere \u9879\u76ee\u7f16\u8f91\u6846-\u9879\u76eeID \u5904\u6709\u201ci\u201d\u63d0\u793a\u8bf4\u660e\uff0c\u6309\u7167\u914d\u7f6e\u8bf4\u660e\u586b\u5199\u5bf9\u5e94 \u4ea7\u54c1ID \u6216\u8005 \u9879\u76eeID\u3002
    • \u5728\u7985\u9053\u5b89\u88c5\u8def\u5f84\u4e2d\uff1a${\u5b89\u88c5\u8def\u5f84}/zentao/config/ \u76ee\u5f55\u4e0b my.php (\u5982\u679c\u6ca1\u6709\uff0c\u65b0\u5efa my.php \u6587\u4ef6)\u4e2d\u6dfb\u52a0\u5982\u4e0b\u5185\u5bb9\uff1a$config->features->apiGetModel = true;\u7136\u540e\u91cd\u542f\u7985\u9053\u670d\u52a1\u5668\uff1a/opt/zbox/zbox restart\u3002
    • \u7528\u4e8e\u5bf9\u63a5\u7684\u7985\u9053\u7528\u6237\uff0c\u786e\u8ba4\u5728\u7985\u9053 web \u7aef\u3010\u7ec4\u7ec7-\u6743\u9650-\u6743\u9650\u7ef4\u62a4-API \u63a5\u53e3\u3011\u52fe\u9009\u4e86\u201c\u8d85\u7ea7model\u8c03\u7528\u63a5\u53e3\u201d\u3002
    "},{"location":"faq/ui_test/","title":"UI \u6d4b\u8bd5\u76f8\u5173","text":""},{"location":"faq/ui_test/#1-chromedriver","title":"1.\u672c\u5730\u8c03\u8bd5\u65f6\uff0c\u542f\u52a8\u65e5\u5fd7\u4e2d\u51fa\u73b0\u4e24\u4e2a ChromeDriver \u7248\u672c\u53f7\uff0c\u539f\u56e0\u662f\uff1f","text":"

    \u672c\u5730\u6d4f\u89c8\u5668\u7684\u7248\u672c\u53f7\u4e0e\u4e0b\u8f7d\u7684\u9a71\u52a8\u7248\u672c\u4e0d\u5339\u914d\uff0c\u53ef\u67e5\u770b\u6d4f\u89c8\u5668\u7248\u672c\u540e\uff0c\u91cd\u65b0\u4e0b\u8f7d\u5bf9\u5e94\u7248\u672c\u7684\u9a71\u52a8\u3002

    "},{"location":"faq/ui_test/#2cannot-find-chrome-binary","title":"2.\u672c\u5730\u8c03\u8bd5\uff0c\u542f\u52a8\u65e5\u5fd7\u4e2d\u62a5\u9519\uff1acannot find Chrome binary\uff0c\u5982\u4f55\u89e3\u51b3\uff1f","text":"

    \u5c06 chrome.exe \u7684\u8def\u5f84\u914d\u7f6e\u5230\u73af\u5883\u53d8\u91cf PATH \u91cc\u3002

    "},{"location":"faq/ui_test/#3","title":"3.\u672c\u5730\u8c03\u8bd5\uff0c\u65e5\u5fd7\u6ca1\u6709\u4efb\u4f55\u62a5\u9519\u60c5\u51b5\uff0c\u4f46\u662f\u9875\u9762\u6d4f\u89c8\u5668\u6ca1\u6709\u88ab\u8c03\u7528\u8d77\u6765\uff0c\u5982\u4f55\u5904\u7406\uff1f","text":"

    \u5728UI\u573a\u666f\u4e2d\uff0c\u4e0d\u52fe\u9009\u3010\u6027\u80fd\u6a21\u5f0f\u3011\uff0c\u5373\u53ef\u770b\u5230\u6d4f\u89c8\u5668\u88ab\u8c03\u7528\u7684\u8fc7\u7a0b\u3002

    "},{"location":"installation/backup_data/","title":"\u6570\u636e\u5907\u4efd\u4e0e\u8fd8\u539f","text":"

    \u6ce8\u610f

    \u4e3b\u8981\u662f MySQL \u6570\u636e\u5e93\u7684\u6570\u636e\u5907\u4efd\u548c /opt/metersphere/data \u8def\u5f84\u4e0b\u7684\u76ee\u5f55\u5907\u4efd\u3002 \u6570\u636e\u5e93\u4e3b\u8981\u6709 mysqldump \u548c \u624b\u52a8\u5907\u4efd /opt/metersphere/data/mysql \u76ee\u5f55\u4e24\u79cd\u65b9\u5f0f\uff0c\u53ef\u6839\u636e\u4f01\u4e1a\u5b9e\u9645\u60c5\u51b5\u548c\u5df2\u6709\u5907\u4efd\u5de5\u5177\u5236\u5b9a\u5907\u4efd\u7b56\u7565\u548c\u5907\u4efd\u624b\u6bb5

    "},{"location":"installation/backup_data/#1","title":"1 \u6570\u636e\u5907\u4efd","text":""},{"location":"installation/backup_data/#11","title":"1.1 \u624b\u52a8\u5907\u4efd","text":"

    #\u6570\u636e\u5e93\u5907\u4efd\uff1a\ndocker exec -i mysql mysqldump -uroot -pPassword123@mysql metersphere > metersphere.sql\n\n#data \u76ee\u5f55\u5907\u4efd\ntar -cvf data_backup.tar /opt/metersphere/data\n
    \u82e5\u5907\u4efd\u6570\u636e\u5e93\u65f6\u51fa\u73b0mysqldump: Error 2020: Got packet bigger than \u2018max_allowed_packet\u2019 bytes when dumping tableapi_scenario_report_detailat row: 94\uff0c\u5219\u6dfb\u52a0max_allowed_packet\u53c2\u6570\uff0c\u5982\u4e0b:
    docker exec -i mysql mysqldump -uroot -pPassword123@mysql metersphere --max_allowed_packet=2G > metersphere.sql\n

    "},{"location":"installation/backup_data/#12","title":"1.2 \u81ea\u52a8\u5907\u4efd","text":"

    ms_backup.sh

    #!/bin/bash\n\nbackupDir=/opt/db_bak    \ndata=/opt/metersphere/data\ncurrentTime=`date \"+%Y-%m-%d-%H-%M-%S\"`   \nbackupZipFileName=ms_db_$currentTime.zip  \ndumpSqlFilePath=$backupDir/ms_db_$currentTime.sql  \necho dumpSqlFilePath=$dumpSqlFilePath\ndocker exec -i mysql mysqldump -uroot -pPassword123@mysql metersphere --max_allowed_packet=2G > $dumpSqlFilePath\ncd $backupDir\nzip -r $backupZipFileName $dumpSqlFilePath $data\necho rm -rf dumpSqlFilePath\nrm -rf $backupDir/ms_db_$currentTime.sql\n\n#remove outdated backup files\nkeepBackupNum=3\noutput=`ls -lt $backupDir/*.zip | awk '{print $9}'`\nstep=0\nfor backupFile in $output ;do\n    step=$((step+1))\n    echo step=$step\n    echo $backupFile\n    if [ $step -gt $keepBackupNum ];then\n        echo Remove outdated backup $backupFile\n        rm -rf  $backupFile\n    fi\ndone\n

    install_ms_backup.sh

    #!/bin/bash\n\ntimedate_fields=\"0 1 * * *\"  #\u6bcf\u5929\u51cc\u66681:00\u6267\u884c\u5907\u4efd\u7a0b\u5e8f\ncmd=\"bash /opt/db_bak/ms_backup.sh\"\ncrontab -l | grep \"$cmd \" > /dev/null 2>&1\nif test $? -ne 0; then\n    crontab -l > crontab.tmp\n    echo \"$timedate_fields $cmd\" >> crontab.tmp\n    crontab crontab.tmp\nfi\n

    \u6267\u884c crontab -l \u5373\u53ef\u67e5\u770b\u5b9a\u65f6\u4efb\u52a1

    "},{"location":"installation/backup_data/#2","title":"2 \u6570\u636e\u8fd8\u539f","text":"

    \u8fdb\u5165\u5907\u4efd sql \u76ee\u5f55\uff0c\u5c06 sql \u590d\u5236\u5230 mysql \u5bb9\u5668\u7684\u6302\u8f7d\u76ee\u5f55 /opt/metersphere/data/mysql \u4e0b

    cp metersphere.sql /opt/metersphere/data/mysql\n

    \u8fdb\u5165 mysql \u5bb9\u5668\uff0c\u767b\u5f55\u6570\u636e\u5e93

    docker exec -it mysql sh\nmysql -uroot -pPassword123@mysql\n

    \u4f7f\u7528 metersphere \u5e93\uff0c\u5e76\u5c06\u6570\u636e\u5bfc\u5165\u5230\u5e93\u91cc

    use metersphere;\nsource /var/lib/mysql/metersphere.sql\n

    "},{"location":"installation/build_data_streaming/","title":"\u90e8\u7f72Data-Streaming\u96c6\u7fa4","text":"

    \u51c6\u5907\u597d\u73af\u5883\u53d8\u91cf\u6587\u4ef6\u3001compose \u6587\u4ef6\uff0c\u4e09\u53f0\u673a\u5668\u90e8\u7f72\u4e00\u6837

    \u73af\u5883\u53d8\u91cf\u6587\u4ef6 .env

    vim .env   #\u53c2\u8003ms\u7684.env\u6587\u4ef6\u8fdb\u884c\u4fee\u6539\n\nMS_KAFKA_TOPIC=JMETER_METRICS\nMS_MYSQL_HOST=10.1.240.110 #\u4fee\u6539MS\u7684\u6570\u636e\u5e93\nMS_KAFKA_LOG_TOPIC=JMETER_LOGS\nMS_TAG=v1.9.3\nMS_JMETER_DATA_PATH=metersphere/data/jmeter\nMS_BASE=/opt\nMS_KAFKA_TEST_TOPIC=LOAD_TESTS\nMS_MYSQL_USER=root\nMS_EXTERNAL_MYSQL=true\nMS_PREFIX=registry.cn-qingdao.aliyuncs.com/metersphere\nMS_MYSQL_DB=metersphere\nMS_MYSQL_PASSWORD=Password123@mysql\nMS_JMETER_TAG=5.4.1-ms3-jdk8\nMS_MYSQL_PORT=3307\n\nMS_KAFKA_BOOTSTRAP_SERVERS=10.1.240.154:9092,10.1.240.155:9092,10.1.240.156:9092  #\u65b0\u52a0\n

    docker-compose-base.yml

    vim docker-compose-base.yml #\u62f7\u8d1dms\u670d\u52a1\u5668\u7684docker-compose-base.yml \n\nversion: \"2.1\"\nvolumes:\n  ms-conf:\n    driver_opts:\n      type: none\n      device: ${MS_BASE}/metersphere/conf\n      o: bind\n  ms-logs:\n    driver_opts:\n      type: none\n      device: ${MS_BASE}/metersphere/logs\n      o: bind\n  ms-data:\n    driver_opts:\n      type: none\n      device: ${MS_BASE}/metersphere/data\n      o: bind\n\nnetworks:\n  ms-network:\n    driver: bridge\n    ipam:\n      driver: default\n      config:\n        - subnet: ${MS_DOCKER_SUBNET}\n

    docker-compose-ds.yml

    vim docker-compose-ds.yml #\u65b0\u52a0ds yaml\u6587\u4ef6\n\nversion: \"2.1\"\nservices:\n  ms-data-streaming:\n    image: ${MS_IMAGE_PREFIX}/ms-data-streaming:${MS_IMAGE_TAG}\n    container_name: ms-data-streaming\n    environment:\n      HOST_HOSTNAME: $HOSTNAME\n      SPRING_DATASOURCE_URL: jdbc:mysql://${MS_MYSQL_HOST}:${MS_MYSQL_PORT}/${MS_MYSQL_DB}?autoReconnect=false&useUnicode=true&characterEncoding=UTF-8&characterSetResults=UTF-8&zeroDateTimeBehavior=convertToNull&allowPublicKeyRetrieval=true&useSSL=false\n      SPRING_DATASOURCE_USERNAME: ${MS_MYSQL_USER}\n      SPRING_DATASOURCE_PASSWORD: ${MS_MYSQL_PASSWORD}\n      KAFKA_PARTITIONS: 4\n      KAFKA_REPLICAS: 1\n      KAFKA_TOPIC: ${MS_KAFKA_TOPIC}\n      KAFKA_LOG_TOPIC: ${MS_KAFKA_LOG_TOPIC}\n      KAFKA_TEST_TOPIC: ${MS_KAFKA_TEST_TOPIC}\n      KAFKA_REPORT_TOPIC: ${MS_KAFKA_REPORT_TOPIC}\n      KAFKA_BOOTSTRAP-SERVERS: ${MS_KAFKA_HOST}:${MS_KAFKA_PORT}\n      FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS: 'true'\n    healthcheck:\n      test: [\"CMD\", \"nc\", \"-zv\", \"localhost\", \"8084\"]\n      interval: 6s\n      timeout: 10s\n      retries: 20\n    restart: always\n    volumes:\n      - ./conf/metersphere.properties:/opt/metersphere/conf/metersphere.properties\n      - ${MS_BASE}/metersphere/logs/data-streaming:/opt/metersphere/logs/data-streaming\n    networks:\n      - ms-network\n

    \u542f\u52a8 Data-Streaming\uff0c\u6267\u884c\u547d\u4ee4:

    source .env \ndocker-compose -f docker-compose-base.yml -f docker-compose-ds.yml up -d\n

    "},{"location":"installation/build_kafka/","title":"\u90e8\u7f72Kafka\u96c6\u7fa4","text":"

    MeterSphere \u914d\u7f6e kafka \u96c6\u7fa4\u65b9\u6848\u91c7\u7528\u5b89\u88c5\u5305\u81ea\u5e26\u7684 kafka3.4 \u914d\u7f6e\u96c6\u7fa4\u3002\u672c\u65b9\u6848\u5206\u522b\u90e8\u7f72\u4e86\u4e09\u4e2a\u72ec\u7acb\u7684 MeterSphere \u670d\u52a1\uff0c\u7136\u540e\u628a\u8fd9\u4e09\u4e2a\u72ec\u7acb\u7684 MeterSphere \u7684 kafka \u5173\u8054\u6210\u96c6\u7fa4\u3002\u5982\u9700\u505a\u6d41\u91cf\u8f6c\u53d1\u53ef\u4ee5\u5c06\u4e09\u4e2a\u670d\u52a1\u914d\u7f6e\u5230 NGINX \u505a\u6d41\u91cf\u8f6c\u53d1\u3002 Kafka 3.0 \u4e4b\u524d\u7684\u67b6\u6784: \u5143\u6570\u636e\u5728 zookeeper \u4e2d\uff0c\u8fd0\u884c\u65f6\u52a8\u6001\u9009\u4e3e controller\uff0c\u7531 controller \u8fdb\u884c Kafka \u96c6\u7fa4\u7ba1\u7406\u3002kraft \u6a21\u5f0f\u67b6\u6784: \u4e0d\u518d\u4f9d\u8d56 zookeeper \u96c6\u7fa4\uff0c\u800c\u662f\u7528\u4e09\u53f0 controller \u8282\u70b9\u4ee3\u66ff zookeeper\uff0c\u5143\u6570\u636e\u4fdd\u5b58\u5728 controller \u4e2d\uff0c\u7531 controller \u76f4\u63a5\u8fdb\u884c Kafka \u96c6\u7fa4\u7ba1\u7406\u3002 Kafka \u96c6\u7fa4\u63d0\u4f9b\u4e86\u9ad8\u53ef\u9760\u6027\u3001\u9ad8\u541e\u5410\u91cf\u3001\u6c34\u5e73\u6269\u5c55\u6027\u3001\u5bb9\u9519\u6027\u3001\u5b9e\u65f6\u5904\u7406\u548c\u6301\u4e45\u6027\u5b58\u50a8\u7b49\u4f18\u52bf\uff0c\u4f7f\u5176\u6210\u4e3a\u5353\u8d8a\u7684\u5206\u5e03\u5f0f\u6d88\u606f\u961f\u5217\u548c\u6570\u636e\u6d41\u5e73\u53f0\uff0c\u5728\u5927\u89c4\u6a21\u6570\u636e\u5904\u7406\u3001\u5b9e\u65f6\u6570\u636e\u7ba1\u9053\u548c\u6d41\u5f0f\u5904\u7406\u7b49\u65b9\u9762\u53d1\u6325\u7740\u5173\u952e\u4f5c\u7528\u3002

    "},{"location":"installation/build_kafka/#1-kraft","title":"1 kraft \u67b6\u6784\u7684\u597d\u5904","text":"
    • Kafka \u4e0d\u518d\u4f9d\u8d56\u5916\u90e8\u6846\u67b6\uff0c\u800c\u662f\u80fd\u591f\u72ec\u7acb\u8fd0\u884c\u3002
    • controller \u7ba1\u7406\u96c6\u7fa4\u65f6\uff0c\u4e0d\u518d\u9700\u8981\u4ece zookeeper \u4e2d\u5148\u8bfb\u53d6\u6570\u636e\uff0c\u96c6\u7fa4\u6027\u80fd\u4e0a\u5347\u3002
    • \u7531\u4e8e\u4e0d\u4f9d\u8d56 zookeeper\uff0c\u96c6\u7fa4\u6269\u5c55\u65f6\u4e0d\u518d\u53d7\u5230 zookeeper \u8bfb\u5199\u80fd\u529b\u9650\u5236 controller \u4e0d\u518d\u52a8\u6001\u9009\u4e3e\uff0c\u800c\u662f\u7531\u914d\u7f6e\u6587\u4ef6\u89c4\u5b9a\uff0c\u8fd9\u6837\u6211\u4eec\u53ef\u4ee5\u6709\u9488\u5bf9\u6027\u7684\u52a0\u5f3a controller \u8282\u70b9\u7684\u914d\u7f6e\u3002
    • \u540e\u7eed\u7248\u672c\u5347\u7ea7\u65b9\u4fbf\uff0c\u4e0d\u7528\u548c zookeeper \u4e00\u8d77\u7ef4\u62a4\u3002
    "},{"location":"installation/build_kafka/#2-metersphere","title":"2 \u90e8\u7f72 MeterSphere \u670d\u52a1","text":"

    \u7533\u8bf7\u4e09\u53f0\u670d\u52a1\u5668\u5206\u522b\u90e8\u7f72 MeterSphere \u670d\u52a1\uff0c\u90e8\u7f72\u6b65\u9aa4\u8bf7\u53c2\u8003 Linux\u5355\u673a\u90e8\u7f72\u79bb\u7ebf\u5b89\u88c5\u3002

    "},{"location":"installation/build_kafka/#3-docker-compose-kafkayml","title":"3 \u670d\u52a1\u5b89\u88c5\u5b8c\u6210\u540e\uff0c\u4e09\u53f0\u670d\u52a1\u5206\u522b\u4fee\u6539docker-compose-kafka.yml \u914d\u7f6e\u6587\u4ef6\u4e3a\u96c6\u7fa4\u6a21\u5f0f\u3002","text":"

    vi /opt/metersphere/docker-compose-kafka.yml \u914d\u7f6e

        version: \"2.1\"\n  services:\n    kafka:\n      image: '${MS_IMAGE_PREFIX}/kafka:3.4.0'\n      container_name: kafka\n      ports:\n        - '${MS_KAFKA_PORT}:9092'\n        - '9093:9093'     #\u5f00\u653e9093\u7aef\u53e3\n      healthcheck:\n        test: [\"CMD\", \"bash\", \"-c\", \"< /dev/tcp/localhost/9093\"]\n        interval: 6s\n        timeout: 10s\n        retries: 50\n      restart: always\n      environment:\n        KAFKA_ENABLE_KRAFT: 'yes'\n        KAFKA_BROKER_ID: 3        #\u6807\u8bc6 Kafka \u96c6\u7fa4\u4e2d\u7684\u6bcf\u4e2a Broker\uff08\u4ee3\u7406\uff09\u7684\u552f\u4e00ID\u4e09\u4e2a\u670d\u52a1\u5668\u4e0a\u914d\u7f6e\u5206\u522b\u4e3a 1 2 3 \n        KAFKA_KRAFT_CLUSTER_ID: LelM2dIFQkiUFVXCECqRWA  #\u96c6\u7fa4\u914d\u7f6e\u4e00\u4e2a\u96c6\u7fa4ID\n        ALLOW_PLAINTEXT_LISTENER: 'yes'\n        KAFKA_CFG_ADVERTISED_LISTENERS: PLAINTEXT://10.1.11.58:9092  #roker \u5bf9\u5916\u66b4\u9732\u7684\u5730\u5740\uff0c\u9700\u8981\u586b\u5199\u6bcf\u4e2a\u8282\u70b9\u771f\u5b9e\u7684 ip \u548c\u7aef\u53e3\n        KAFKA_CFG_CONTROLLER_QUORUM_VOTERS: 1@10.1.11.53:9093,2@10.1.11.54:9093,3@10.1.11.58:9093  #\u6240\u6709\u7684 controller \u5217\u8868\uff0c\u4e09\u4e2a\u914d\u7f6e\u6587\u4ef6\u90fd\u586b\u4e00\u6837\u3002\u683c\u5f0f\uff1a1@ip1:9093\uff0c2@ip2:9093\uff0c3@ip3:9093\n        KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP: CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT\n        KAFKA_CFG_CONTROLLER_LISTENER_NAMES: CONTROLLER\n        KAFKA_CFG_LISTENERS: PLAINTEXT://:9092,CONTROLLER://:9093\n        KAFKA_CFG_PROCESS_ROLES: broker,controller\n        KAFKA_CFG_LOG_RETENTION_HOURS: 64\n        KAFKA_CFG_MAX_REQUEST_SIZE: 52428800\n        KAFKA_CFG_MESSAGE_MAX_BYTES: 52428800\n        KAFKA_CFG_REPLICA_FETCH_MAX_BYTES: 52428800\n        KAFKA_CFG_FETCH_MESSAGE_MAX_BYTES: 52428800\n        KAFKA_CFG_PARTITION_FETCH_BYTES: 52428800\n        KAFKA_HEAP_OPTS: '-Xmx512m -Xms256m'\n        FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS: 'true'\n      networks:\n        - ms-network\n    data-streaming:\n      depends_on:\n        kafka:\n          condition: service_healthy\n
    \u4ee5 v2.10.0 \u7248\u672c\u4e3a\u4f8b\uff0cKAFKA_ENABLE_KRAFT: 'yes'\uff0c\u9ed8\u8ba4\u5141\u8bb8 kraft \u96c6\u7fa4\u6a21\u5f0f\uff0c\u6211\u4eec\u53ea\u9700\u8981\u628a\u5176\u4ed6\u8282\u70b9\u52a0\u5165\u5230\u96c6\u7fa4\u4e2d\u5373\u53ef\u3002\u9700\u8981\u4fee\u6539\u7684\u914d\u7f6e\u9879\u5305\u62ec KAFKA_CFG_ADVERTISED_LISTENERS\u3001KAFKA_CFG_CONTROLLER_QUORUM_VOTERS\u3001KAFKA_BROKER_ID\u9700\u8981\u6dfb\u52a0\u7684\u914d\u7f6e\u9879\u5305\u62ec KAFKA_KRAFT_CLUSTER_ID\u3001ports 9093\u7aef\u53e3\uff1b\u5177\u4f53\u5185\u5bb9\u89c1\u4e0a\u8ff0\u914d\u7f6e\u6587\u4ef6\u6ce8\u91ca\u8bf4\u660e\u3002

    "},{"location":"installation/build_kafka/#4-metersphere-docker-kafka-kafka_bootstrap-serversip19092ip29092ip39092","title":"4 \u5206\u522b\u4fee\u6539\u4e09\u53f0 MeterSphere \u670d\u52a1docker\u914d\u7f6e\u6587\u4ef6\uff0c\u5c06\u4f7f\u7528\u5230 kafka \u96c6\u7fa4\u7684\u914d\u7f6e\u9879\u6539\u4e3a KAFKA_BOOTSTRAP-SERVERS\uff1aip1:9092,ip2:9092,ip3:9092\u3002","text":"

    cd /opt/metersphere \u9700\u4fee\u6539\u6587\u4ef6:

    • vi docker-compose-project-management.yml
    • vi docker-compose-ui-test.yml
    • vi docker-compose-gateway.yml
    • vi docker-compose-workstation.yml
    • vi docker-compose-report-stat.yml
    • vi docker-compose-api-test.yml
    • vi docker-compose-seleniarm.yml
    • vi docker-compose-system-setting.yml
    • vi docker-compose-data-streaming.yml
    • vi docker-compose-performance-test.yml
    • vi docker-compose-test-track.yml

    "},{"location":"installation/build_kafka/#5-msctl-reload-kraft","title":"5 \u6240\u6709\u914d\u7f6e\u4fee\u6539\u5b8c\u6210\uff0cmsctl reload \u751f\u6548\u5373\u53ef\u521b\u5efa kraft \u96c6\u7fa4\u3002","text":"

    \u4ee5\u4e0a\u5185\u5bb9\u914d\u7f6e\u597d\u4e4b\u540e\uff0c\u4f7f\u7528 msctl reload \u547d\u4ee4\u91cd\u65b0\u52a0\u8f7d\u914d\u7f6e\u6587\u4ef6\uff0c\u5373\u53ef\u521b\u5efa kraft \u96c6\u7fa4\u3002

    "},{"location":"installation/build_node_controller/","title":"\u90e8\u7f72Node-Controller\u96c6\u7fa4","text":"

    \u5982\u91c7\u7528\u72ec\u7acb\u4e3b\u673a\u538b\u6d4b\uff0c\u9700\u8981\u90e8\u7f72 Node-Controller\uff0c\u90e8\u7f72\u8fc7\u7a0b\u53ef\u4ee5\u53c2\u8003 https://metersphere.io/docs/v2.x/installation/online_installation/ \u3002 \u8fdb\u5165\u5b89\u88c5\u5305\u6240\u5728\u76ee\u5f55\uff0c\u5c06 install.conf \u4e2d\u4fee\u6539\u5b89\u88c5\u6a21\u5f0f MS_INSTALL_MODE \u7684\u503c(\u7531\u539f\u5148\u7684 allinone \u6539\u4e3a node-controller)\uff0c\u5b89\u88c5\u5305\u8def\u5f84\u4e0b\u6267\u884c /bin/bash install.sh \u5373\u53ef\u3002

    • \u5b89\u88c5\u5b8c\u6210\u540e\uff0c\u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u6d4b\u8bd5\u8d44\u6e90\u6c60\u3011\u6dfb\u52a0\u8d44\u6e90\u6c60\uff0c\u586b\u5199\u5b8c\u6574\u8d44\u6e90\u6c60 ip\u3001\u7aef\u53e3\u4fe1\u606f\u5373\u53ef\u3002
    • \u5982\u679c\u6d4b\u8bd5\u8d44\u6e90\u5e76\u53d1\u8981\u6c42\u8f83\u5927\uff0c\u53ef\u4ee5\u5c06\u8d44\u6e90\u6c60\u4e2d JMeter \u7684\u5185\u5b58\u914d\u7f6e\uff0c\u5efa\u8bae\u8c03\u6574\u5230 4G \u4ee5\u4e0a\u3002-Xms4g -Xmx4g -XX:MaxMetaspaceSize=256m
    • \u6700\u540e\uff0c\u8d44\u6e90\u6c60\u914d\u7f6e\u5b8c\u6210\u540e\uff0c\u9700\u8981\u5728\u8d44\u6e90\u6c60\u5217\u8868\u542f\u7528\u8d44\u6e90\u6c60\uff0c\u6821\u9a8c\u901a\u8fc7\u5373\u53ef\u4f7f\u7528\u3002

    "},{"location":"installation/cli/","title":"\u547d\u4ee4\u884c\u5de5\u5177","text":"

    MeterSphere \u9ed8\u8ba4\u5185\u7f6e\u4e86\u547d\u4ee4\u884c\u8fd0\u7ef4\u5de5\u5177\u3010msctl\u3011\uff0c\u901a\u8fc7\u6267\u884c\u3010msctl help\u3011\u547d\u4ee4\uff0c\u53ef\u4ee5\u67e5\u770b\u76f8\u5173\u7684\u5e2e\u52a9\u6587\u6863\u3002

    MeterSphere \u63a7\u5236\u811a\u672c\n\nUsage: \n  ./msctl.sh [COMMAND] [ARGS...]\n  ./msctl.sh --help\n\nCommands: \n  status    \u67e5\u770b MeterSphere \u670d\u52a1\u8fd0\u884c\u72b6\u6001\n  start     \u542f\u52a8 MeterSphere \u670d\u52a1\n  stop      \u505c\u6b62 MeterSphere \u670d\u52a1\n  restart   \u91cd\u542f MeterSphere \u670d\u52a1\n  reload    \u91cd\u65b0\u52a0\u8f7d MeterSphere \u670d\u52a1\uff08\u4fee\u6539\u914d\u7f6e\u6587\u4ef6 /opt/metersphere/.env \u65f6\uff0c\u8fd0\u884c\u6b64\u547d\u4ee4\u4f7f\u914d\u7f6e\u751f\u6548\uff09\n  upgrade   \u5347\u7ea7 MeterSphere \u81f3\u6700\u65b0\u7248\u672c\n  upgrade [RELEASE]  \u6839\u636e\u7248\u672c\u53f7\u641c\u7d22\u79bb\u7ebf\u5305\uff0c\u5347\u7ea7 MeterSphere \u81f3\u5bf9\u5e94\u7248\u672c\n  uninstall \u5378\u8f7d MeterSphere \u670d\u52a1\n  version   \u67e5\u770b MeterSphere \u7248\u672c\u4fe1\u606f\n
    "},{"location":"installation/kubernetes_installation/","title":"Kubernetes \u90e8\u7f72","text":""},{"location":"installation/kubernetes_installation/#1-helm-charts","title":"1 Helm Charts \u5728\u7ebf\u90e8\u7f72","text":"
    kubectl create ns ms\nhelm repo add bitnami https://charts.bitnami.com/bitnami\nhelm repo add metersphere https://metersphere.github.io/helm-chart/\n# \u4ece chart \u4ed3\u5e93\u4e2d\u66f4\u65b0\u672c\u5730\u53ef\u7528chart\u7684\u4fe1\u606f\nhelm repo update  \nhelm install metersphere metersphere/metersphere -n ms\n
    "},{"location":"installation/kubernetes_installation/#2-helm-charts","title":"2 Helm Charts \u79bb\u7ebf\u90e8\u7f72","text":"
    • \u5bfc\u5165\u955c\u50cf \u4e0b\u8f7d MeterSphere \u6700\u65b0\u7248\u672c\u7684\u79bb\u7ebf\u5b89\u88c5\u5305\u5e76\u4e14\u89e3\u538b\uff0c\u5c06\u5b89\u88c5\u5305\u91cc image \u76ee\u5f55\u4e0b\u7684\u955c\u50cf tar \u5305\u4e0a\u4f20\u5230 kubernetes \u7684\u955c\u50cf\u5e93\u91cc\u6216\u8005\u624b\u52a8 load \u5230 kubernetes \u5404\u4e2a\u5bbf\u4e3b\u673a\u8282\u70b9\u4e0a\u3002 MeterSphere \u79bb\u7ebf\u5b89\u88c5\u5305\u4e0b\u8f7d\u94fe\u63a5: https://community.fit2cloud.com/#/products/metersphere/downloads

    • \u4e0b\u8f7d\u79bb\u7ebf Chart \u5305 helm-chart \u5b89\u88c5\u5305\u4e0b\u8f7d\u94fe\u63a5: https://github.com/metersphere/helm-chart/releases,\u5982\uff1ahttps://github.com/metersphere/helm-chart/releases/download/metersphere-2.3.0/metersphere-2.3.0.tgz

    • \u8fdb\u884c\u5b89\u88c5

      helm install metersphere metersphere-2.3.0.tgz -n ms\n\n# \u6839\u636e\u9700\u8981\u4fee\u6539 values.yml \u6587\u4ef6\u914d\u7f6e\u540e\u5b89\u88c5\nhelm install metersphere metersphere-2.3.0.tgz -f metersphere/values.yml -n ms\n

    "},{"location":"installation/kubernetes_installation/#3-helm-charts","title":"3 Helm Charts \u5728\u7ebf\u5347\u7ea7","text":"
    helm repo update  # \u4ece chart \u4ed3\u5e93\u4e2d\u66f4\u65b0\u672c\u5730\u53ef\u7528chart\u7684\u4fe1\u606f\nhelm upgrade metersphere metersphere/metersphere -n ms\n
    "},{"location":"installation/kubernetes_installation/#4-helm-charts","title":"4 Helm Charts \u79bb\u7ebf\u5347\u7ea7","text":"
    • \u5bfc\u5165\u65b0\u7248\u672c\u955c\u50cf \u4e0b\u8f7d MeterSphere \u6700\u65b0\u7248\u672c\u7684\u79bb\u7ebf\u5b89\u88c5\u5305\u5e76\u4e14\u89e3\u538b\uff0c\u5c06\u5b89\u88c5\u5305\u91cc image \u76ee\u5f55\u4e0b\u7684\u955c\u50cf tar \u5305\u4e0a\u4f20\u5230 kubernetes \u7684\u955c\u50cf\u5e93\u91cc\u6216\u8005\u624b\u52a8 load \u5230 kubernetes \u5404\u4e2a\u5bbf\u4e3b\u673a\u8282\u70b9\u4e0a\u3002 MeterSphere \u79bb\u7ebf\u5b89\u88c5\u5305\u4e0b\u8f7d\u94fe\u63a5: https://community.fit2cloud.com/#/products/metersphere/downloads

    • \u4e0b\u8f7d\u6700\u65b0\u79bb\u7ebf Chart \u5305 helm-chart \u5b89\u88c5\u5305\u4e0b\u8f7d\u94fe\u63a5: https://github.com/metersphere/helm-chart/releases \u5982\uff1ahttps://github.com/metersphere/helm-chart/releases/download/metersphere-2.3.0/metersphere-2.3.0.tgz

    • \u8fdb\u884c\u5347\u7ea7

      helm upgrade metersphere metersphere-2.3.0.tgz -n ms\n\n# \u6839\u636e\u9700\u8981\u4fee\u6539 values.yml \u6587\u4ef6\u914d\u7f6e\u540e\u5347\u7ea7\nhelm upgrade metersphere metersphere-1.0.10.tgz -f metersphere/values.yml -n ms\n

    "},{"location":"installation/kubernetes_installation/#5-valuesyaml","title":"5 values.yaml","text":"

    \u4ee5\u4e0b values.yaml \u5185\u5bb9\u5bf9\u5e94\u7248\u672c\u4e3a v2.3.0\uff0c\u6700\u65b0\u7684 values.yaml \u53ef\u5230 github \u4e0a metersphere helm-chart \u4ed3\u5e93\u4e2d\u67e5\u627e\u5bf9\u5e94\u7248\u672c\u7684 values.yaml\uff0c\u4f8b\u5982\uff1av2.9.1 \u7248\u672c value.yaml \u6587\u4ef6\u4e3a https://github.com/metersphere/helm-chart/blob/metersphere-2.9.1/charts/metersphere/values.yaml

    ingress: # \u4e0d\u4f7f\u7528 ingress \u53ef\u4ee5\u5173\u95ed\n  enabled: true\n  host: ms-dev.apps.metersphere.com\n  annotations: {}\n    ## example for ingress annotions.\n    # kubernetes.io/ingress.class: nginx\n    # kubernetes.io/tls-acme: \"true\"      \n  https:\n    enabled: false\n    secretName: \"\"\n\ncommon:\n  imagePrefix: \"registry.cn-qingdao.aliyuncs.com/metersphere/\"\n  imagePullSecrets: nil\n  storageClass: default\n  imageTag: v2.3.0     # \u5b89\u88c5\u7684\u7248\u672c\u53f7\n  imagePullPolicy: Always  # \u955c\u50cf\u62c9\u53d6\u7b56\u7565\n  properties: |-\n    ## DATABASE\n    spring.datasource.url=jdbc:mysql://{{.Values.mysql.host}}:{{.Values.mysql.port}}/metersphere?autoReconnect=false&useUnicode=true&characterEncoding=UTF-8&characterSetResults=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true\n    spring.datasource.username={{.Values.mysql.username}}\n    spring.datasource.password={{.Values.mysql.password}}\n    ## redis\n    spring.session.store-type=redis\n    spring.redis.host={{.Values.redis.host}}\n    spring.redis.port={{.Values.redis.port}}\n    spring.redis.database={{.Values.redis.database}}\n    spring.redis.password={{.Values.redis.password}}\n    ## KAFKA\n    kafka.partitions=1\n    kafka.replicas=1\n    kafka.topic={{.Values.kafka.metricTopic}}\n    kafka.bootstrap-servers={{.Values.kafka.host}}.{{.Release.Namespace}}:{{.Values.kafka.port}}\n    kafka.log.topic={{.Values.kafka.logTopic}}\n    kafka.test.topic={{.Values.kafka.testTopic}}\n    kafka.report.topic={{.Values.kafka.reportTopic}}\n    tcp.mock.port=10000\n    ## minio\n    minio.endpoint=http://{{.Values.minio.host}}:{{.Values.minio.port}}\n    minio.access-key={{.Values.minio.username}}\n    minio.secret-key={{.Values.minio.password}}\n    ## JMETER\n    jmeter.image={{ .Values.common.imagePrefix }}{{.Values.jmeter.image}}:{{.Values.jmeter.imageTag}}\n    jmeter.pod.threads.limit=500\n    ## K8S\n    k8s.node-controller-image={{ .Values.common.imagePrefix }}{{.Values.nodeController.image}}:{{.Values.common.imageTag}}\n    ## spring cloud\n    eureka.client.service-url.defaultZone=http://{{.Values.eureka.host}}:{{.Values.eureka.port}}/eureka/\n    logger.sql.level=info\napiTest:  # \u63a5\u53e3\u6d4b\u8bd5\u6a21\u5757,\u53ef\u4ee5\u4fee\u6539\u4e3afalse,\u542f\u52a8\u65f6\u4e0d\u518d\u5b89\u88c5\u63a5\u53e3\u6d4b\u8bd5\u6a21\u5757\n  enabled: true\n  image: api-test\n  replicas: 1\n\nperformanceTest: # \u6027\u80fd\u6d4b\u8bd5\u6a21\u5757,\u53ef\u4ee5\u4fee\u6539\u4e3afalse,\u542f\u52a8\u65f6\u4e0d\u518d\u5b89\u88c5\u6027\u80fd\u6d4b\u8bd5\u6a21\u5757\n  enabled: true\n  image: performance-test\n  replicas: 1\n\nsystemSetting: # \u7cfb\u7edf\u8bbe\u7f6e\u6a21\u5757,\u53ef\u4ee5\u4fee\u6539\u4e3afalse,\u542f\u52a8\u65f6\u4e0d\u518d\u5b89\u88c5\u7cfb\u7edf\u8bbe\u7f6e\u6a21\u5757\n  enabled: true\n  image: system-setting\n  replicas: 1\n\nprojectManagement: # \u9879\u76ee\u7ba1\u7406\u6a21\u5757,\u53ef\u4ee5\u4fee\u6539\u4e3afalse,\u542f\u52a8\u65f6\u4e0d\u518d\u5b89\u88c5\u9879\u76ee\u7ba1\u7406\u6a21\u5757\n  enabled: true\n  image: project-management\n  replicas: 1\n\nreportStat:  # \u62a5\u544a\u7ba1\u7406\u6a21\u5757,\u53ef\u4ee5\u4fee\u6539\u4e3afalse,\u542f\u52a8\u65f6\u4e0d\u518d\u5b89\u88c5\u62a5\u544a\u7ba1\u7406\u6a21\u5757\n  enabled: true\n  image: report-stat\n  replicas: 1\n\ntestTrack: # \u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757,\u53ef\u4ee5\u4fee\u6539\u4e3afalse,\u542f\u52a8\u65f6\u4e0d\u518d\u5b89\u88c5\u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757\n  enabled: true\n  image: test-track\n  replicas: 1\n\ngateway: # \u7f51\u5173,\u53ef\u4ee5\u4fee\u6539\u4e3afalse,\u542f\u52a8\u65f6\u4e0d\u518d\u5b89\u88c5\n  enabled: true\n  image: gateway\n  replicas: 1\n\neureka: # \u670d\u52a1\u6ce8\u518c\u4e2d\u5fc3,\u53ef\u4ee5\u4fee\u6539\u4e3afalse,\u542f\u52a8\u65f6\u4e0d\u518d\u5b89\u88c5\n  enabled: true\n  image: eureka\n  host: metersphere-eureka\n  port: 8761\n  replicas: 1\n\ndataStreaming: \n  enabled: true\n  image: data-streaming\n  replicas: 1\n  properties: |-\n    ## DATABASE\n    spring.datasource.url=jdbc:mysql://{{.Values.mysql.host}}:{{.Values.mysql.port}}/metersphere?autoReconnect=false&useUnicode=true&characterEncoding=UTF-8&characterSetResults=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true\n    spring.datasource.username={{.Values.mysql.username}}\n    spring.datasource.password={{.Values.mysql.password}}\n    ## KAFKA\n    kafka.partitions=1\n    kafka.replicas=1\n    kafka.topic={{.Values.kafka.metricTopic}}\n    kafka.bootstrap-servers={{.Values.kafka.host}}:{{.Values.kafka.port}}\n    kafka.log.topic={{.Values.kafka.logTopic}}\n    kafka.test.topic={{.Values.kafka.testTopic}}\n    kafka.report.topic={{.Values.kafka.reportTopic}}\n    jmeter.report.granularity=5000\n    ## minio\n    minio.endpoint=http://{{.Values.minio.host}}:{{.Values.minio.port}}\n    minio.access-key={{.Values.minio.username}}\n    minio.secret-key={{.Values.minio.password}}\nnodeController:\n  enabled: true\n  image: node-controller\n  replicas: 1\n  properties: |-\n    ## TBD\njmeter:\n  image: jmeter-master\n  imageTag: 5.4.3-ms5-jdk11\n\nlogPersistence:\n  enabled: true\n  accessModes: ReadWriteOnce\n  size: 10Gi\n\ndataPersistence:\n  enabled: true\n  accessModes: ReadWriteOnce\n  size: 10Gi\n\nmysql:  # \u5f15\u7528\u5916\u90e8\u6570\u636e\u5e93\u65f6\uff0c\u53ef\u4ee5\u4fee\u6539\u4e3afalse,\u542f\u52a8\u65f6\u4e0d\u518d\u5b89\u88c5mysql\n  enabled: true\n  image: mysql\n  imageTag: \"8.0.30\"\n  host: metersphere-mysql\n  port: 3306\n  username: root\n  password: Password123@mysql\n  persistence:\n    enabled: true\n    accessModes: ReadWriteOnce\n    size: 20Gi\nminio:\n  enabled: true\n  image: minio\n  imageTag: \"latest\"\n  username: admin\n  password: Password123@minio\n  host: metersphere-minio\n  port: 9000\n  persistence:\n    enabled: true\n    accessModes: ReadWriteOnce\n    size: 20Gi\nredis:   # \u5f15\u7528\u5916\u90e8redis\u65f6\uff0c\u53ef\u4ee5\u4fee\u6539\u4e3afalse,\u542f\u52a8\u65f6\u4e0d\u518d\u5b89\u88c5redis\n  enabled: true\n  image: redis\n  imageTag: \"6.2.6\"\n  password: Password123@redis\n  host: metersphere-redis\n  port: 6379\n  database: 1\n  persistence:\n    enabled: true\n    accessModes: ReadWriteOnce\n    size: 10Gi\nkafka:   # \u5f15\u7528\u5916\u90e8kafka\u65f6\uff0c\u53ef\u4ee5\u4fee\u6539\u4e3afalse,\u542f\u52a8\u65f6\u4e0d\u518d\u5b89\u88c5kafka\n  enabled: true\n  fullnameOverride: metersphere-kafka\n  host: metersphere-kafka\n  port: 9092\n  metricTopic: JMETER_METRICS\n  logTopic: JMETER_LOGS\n  testTopic: LOAD_TESTS\n  reportTopic: JMETER_REPORTS\n  persistence:\n    enabled: false\n  logPersistence:\n    enabled: false\n  logFlushIntervalMessages: _10000\n  logFlushIntervalMs: 1000\n  logRetentionBytes: _1073741824\n  logRetentionCheckIntervalMs: 300000\n  logRetentionHours: 168\n  logSegmentBytes: _1073741824\n  maxMessageBytes: _1000012\n  livenessProbe:\n    initialDelaySeconds: 20\n    periodSeconds: 15\n    timeoutSeconds: 15\n  readinessProbe:\n    initialDelaySeconds: 20\n    periodSeconds: 15\n    timeoutSeconds: 15\n  externalAccess:\n    enabled: true\n    service:\n      type: NodePort\n      useHostIPs: true\n    autoDiscovery:\n      enabled: true\n  serviceAccount:\n    create: true\n  rbac:\n    create: true\n  zookeeper:\n    enabled: true\n    logLevel: ERROR\n    persistence:\n      enabled: false\n    fullnameOverride: metersphere-zookeeper\n  extraEnvVars:\n    - name: FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS\n      value: \"true\"\nzookeeper:\n  enabled: true\n
    "},{"location":"installation/kubernetes_installation/#51-kafka","title":"5.1 \u5f15\u7528\u5916\u90e8 Kafka","text":"
    vim values.yaml\n\u5c06 values.yaml \u4e2d zookeeper.enabled \u548c kafka.enabled \u6539\u4e3a false\ncommon.kafka.host\u3001common.kafka.port \u6539\u4e3a\u5916\u90e8 kafka \u7684\u5730\u5740\u548c\u7aef\u53e3\n
    "},{"location":"installation/kubernetes_installation/#52-mysql","title":"5.2 \u5f15\u7528\u5916\u90e8 MySQL","text":"
    vim values.yaml\n\u5c06 values.yaml \u4e2d mysql.enabled \u6539\u4e3a false\ncommon.host.host\u3001common.host.port\u3001common.host.username\u3001common.host.password \u6539\u4e3a\u5916\u90e8 mysql \u7684\u5730\u5740\u3001\u7aef\u53e3\u53ca\u7528\u6237\u540d\u3001\u5bc6\u7801\n
    "},{"location":"installation/kubernetes_installation/#53-redis","title":"5.3 \u5f15\u7528\u5916\u90e8 Redis","text":"
    vim values.yaml\n\u5c06 values.yaml \u4e2d redis.enabled \u6539\u4e3a false\ncommon.redis.host\u3001common.redis.port\u3001common.redis.password \u6539\u4e3a\u5916\u90e8 redis \u7684\u5730\u5740\u3001\u7aef\u53e3\u548c\u5bc6\u7801\n
    "},{"location":"installation/kubernetes_installation/#54-valueyaml","title":"5.4 \u4f7f\u7528\u4fee\u6539\u540e\u7684 value.yaml \u90e8\u7f72","text":"
    helm -n ms install metersphere ./metersphere-2.3.0.tgz -f values.yaml\n
    "},{"location":"installation/kubernetes_installation/#55-node-port","title":"5.5 \u521b\u5efa Node Port \u8bbf\u95ee\u65b9\u5f0f","text":"

    \u4f7f\u7528\u547d\u4ee4 kubectl get svc -n ms \u53ef\u67e5\u770b metersphere-gateway \u6240\u5360\u7528\u7684\u7aef\u53e3\u53f7\u3002\u5982\u679c\u4e0d\u4f7f\u7528 ingress \u7684\u8bbf\u95ee\u65b9\u5f0f\uff0c\u53ef\u4ee5\u521b\u5efa\u4e00\u4e2a nodeport\u3002

    vi ms-gateway-nodeport.yaml\n\napiVersion: v1\nkind: Service\nmetadata:\n  name: metersphere-gateway-nodeport\n  namespace: ms\nspec:\n  ports:\n    - name: metersphere-gateway\n      protocol: TCP\n      port: 8000\n      targetPort: 8000\n      nodePort: 30801\n  type: NodePort\n  selector:\n    app: metersphere-gateway\n\nkubectl create -f ms-gateway-nodeport.yaml \n

    \u8bbf\u95ee MeterSphere \u9875\u9762: http://nodeIP:30801

    "},{"location":"installation/network_port/","title":"\u7f51\u7edc\u7aef\u53e3\u8981\u6c42","text":"

    MeterSphere \u4f5c\u4e3a\u4e00\u7ad9\u5f0f\u6301\u7eed\u6d4b\u8bd5\u5e73\u53f0\uff0c\u5176\u6b63\u5e38\u8fd0\u884c\u9700\u8981\u5f00\u653e\u5982\u4e0b\u7f51\u7edc\u7aef\u53e3\uff0c\u7ba1\u7406\u5458\u53ef\u6839\u636e\u5b9e\u9645\u73af\u5883\u4e2d MeterSphere \u7ec4\u4ef6\u90e8\u7f72\u7684\u65b9\u6848\uff0c\u5728\u7f51\u7edc\u4fa7\u548c\u4e3b\u673a\u4fa7\u5f00\u653e\u76f8\u5173\u7aef\u53e3\u3002

    \u7ec4\u4ef6 \u9ed8\u8ba4\u7aef\u53e3 \u8bf4\u660e GateWay 8081 API \u7f51\u5173\u9879\u76ee\uff0c\u6d4f\u89c8\u5668\u8bbf\u95ee\u7aef\u53e3 Node Controller 8082 \u4e3a\u63a5\u53e3\u6216\u8005\u6027\u80fd\u6d4b\u8bd5\u63d0\u4f9b\u72ec\u7acb\u8282\u70b9\u7c7b\u578b\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60 Prometheus 9090 \u6536\u96c6\u538b\u529b\u673a\u53ca\u88ab\u6d4b\u7cfb\u7edf\u7684\u76d1\u63a7\u6570\u636e Node Exporter 9100 \u7528\u4e8e\u91c7\u96c6 Node \u7684\u8fd0\u884c\u6307\u6807 Selenium Grid 4444 \u4e3a UI\u81ea\u52a8\u5316\u6d4b\u8bd5\u63d0\u4f9b\u8fd0\u884c\u73af\u5883\uff0c\u652f\u6301\u5206\u5e03\u5f0f\u62d3\u5c55 TCP Mock 10000-10010 TCP Mock \u5bf9\u5916\u63d0\u4f9b\u670d\u52a1\u9700\u8981\u5f00\u653e\u7684\u7aef\u53e3\u8303\u56f4 MySQL 3307 MeterSphere \u9ed8\u8ba4\u5b89\u88c5\u7684\u6570\u636e\u5e93\u5bf9\u5916\u63d0\u4f9b\u7684\u7aef\u53e3 Redis 6379 MeterSphere \u9ed8\u8ba4\u5b89\u88c5\u7684 Redis \u5bf9\u5916\u63d0\u4f9b\u7684\u7aef\u53e3 Minio 9000 MeterSphere \u9ed8\u8ba4\u5b89\u88c5\u7684\u5206\u5e03\u5f0f\u5bf9\u8c61\u5b58\u50a8\u5bf9\u5916\u63d0\u4f9b\u7684\u7aef\u53e3 Kafka 9092 MeterSphere \u9ed8\u8ba4\u5b89\u88c5\u7684\u6d88\u606f\u4e2d\u95f4\u4ef6\u5bf9\u5916\u63d0\u4f9b\u7684\u7aef\u53e3"},{"location":"installation/offline_installation/","title":"\u79bb\u7ebf\u5b89\u88c5","text":""},{"location":"installation/offline_installation/#1","title":"1 \u73af\u5883\u8981\u6c42","text":"

    \u90e8\u7f72\u670d\u52a1\u5668\u8981\u6c42

    • \u64cd\u4f5c\u7cfb\u7edf: CentOS 7.x / Redhat 7.x
    • CPU/\u5185\u5b58: \u6700\u4f4e\u8981\u6c42 4C8G\uff0c\u63a8\u8350 8C16G (2.3.0\u7248\u672c\u53ca\u5176\u4e4b\u540e\u7684\u7248\u672c\uff0c\u6700\u4f4e\u914d\u7f6e 8C16G)
    • \u78c1\u76d8\u7a7a\u95f4: 50G
    "},{"location":"installation/offline_installation/#2","title":"2 \u4e0b\u8f7d\u5b89\u88c5\u5305","text":"

    \u8bf7\u81ea\u884c\u4e0b\u8f7d MeterSphere \u6700\u65b0\u7248\u672c\u7684\u79bb\u7ebf\u5b89\u88c5\u5305\uff0c\u5e76\u590d\u5236\u5230\u76ee\u6807\u673a\u5668\u7684 /tmp \u76ee\u5f55\u4e0b\u3002 \u5b89\u88c5\u5305\u4e0b\u8f7d\u94fe\u63a5: https://community.fit2cloud.com/#/products/metersphere/downloads

    "},{"location":"installation/offline_installation/#3","title":"3 \u89e3\u538b\u5b89\u88c5\u5305","text":"

    \u4ee5 root \u7528\u6237 ssh \u767b\u5f55\u5230\u76ee\u6807\u673a\u5668\uff0c \u5e76\u6267\u884c\u5982\u4e0b\u547d\u4ee4\u3002

    cd /tmp\n# \u89e3\u538b\u5b89\u88c5\u5305\ntar zxvf metersphere-offline-installer-v2.3.0.tar.gz\n

    "},{"location":"installation/offline_installation/#4","title":"4 \u4fee\u6539\u5b89\u88c5\u914d\u7f6e","text":""},{"location":"installation/offline_installation/#41","title":"4.1 \u4fee\u6539\u914d\u7f6e","text":"

    \u5728\u5b89\u88c5\u5305\u89e3\u538b\u540e\u7684\u76ee\u5f55\uff0c\u7f16\u8f91\u4fee\u6539\u5b89\u88c5\u53c2\u6570\u3002

    cd metersphere-offline-installer-v2.3.0\nvi install.conf\n

    "},{"location":"installation/offline_installation/#42","title":"4.2 \u5b89\u88c5\u914d\u7f6e\u6587\u4ef6\u8bf4\u660e","text":"

    \u5b89\u88c5\u914d\u7f6e\u6587\u4ef6\u8bf4\u660e

    \u5982\u679c\u65e0\u7279\u6b8a\u9700\u6c42\u53ef\u4ee5\u4e0d\u8fdb\u884c\u4fee\u6539\u91c7\u7528\u9ed8\u8ba4\u53c2\u6570\u5b89\u88c5\uff08\u9996\u6b21\u5b89\u88c5\u53ef\u4fee\u6539\u914d\u7f6e install.conf \u6587\u4ef6\u4e2d\u76f8\u5173\u914d\u7f6e\uff0c\u4fee\u6539\u5b8c\u540e\u6267\u884c /bin/bash install.sh \u547d\u4ee4\u8fdb\u884c\u5b89\u88c5\uff0c\u5df2\u5b89\u88c5\u6210\u529f\u5982\u9700\u518d\u4fee\u6539\u914d\u7f6e\u53c2\u6570\uff0c\u9700\u8981\u5230 ${MS_BASE}/metersphere/.env \u91cc\u4fee\u6539\uff0c\u4fee\u6539\u5b8c\u540e\u6267\u884c msctl reload \u5373\u53ef\u91cd\u65b0\u52a0\u8f7d\u914d\u7f6e\u6587\u4ef6\uff09\u3002

    # \u57fa\u7840\u914d\u7f6e\n## \u5b89\u88c5\u8def\u5f84\uff0c MeterSphere \u914d\u7f6e\u53ca\u6570\u636e\u6587\u4ef6\u9ed8\u8ba4\u5c06\u5b89\u88c5\u5728 ${MS_BASE}/metersphere \u76ee\u5f55\u4e0b\nMS_BASE=/opt\n## MeterSphere \u4f7f\u7528\u7684 docker \u7f51\u7edc\u7f51\u6bb5\u4fe1\u606f\nMS_DOCKER_SUBNET=172.30.10.0/24\n## \u955c\u50cf\u524d\u7f00\uff0c MeterSphere \u76f8\u5173\u7ec4\u4ef6\u4f7f\u7528\u7684 Docker \u955c\u50cf\u524d\u7f00\uff0c \u4f8b\u5982 registry.cn-qingdao.aliyuncs.com/metersphere\nMS_IMAGE_PREFIX=registry.cn-qingdao.aliyuncs.com/metersphere\n## \u955c\u50cf\u6807\u7b7e\uff0c MeterSphere \u76f8\u5173\u7ec4\u4ef6\u4f7f\u7528\u7684 Docker \u955c\u50cf\u6807\u7b7e\nMS_IMAGE_TAG=v2.3.0\n## \u6027\u80fd\u6d4b\u8bd5\u4f7f\u7528\u7684 JMeter \u955c\u50cf\nMS_JMETER_IMAGE=${MS_IMAGE_PREFIX}/jmeter-master:5.5-ms2-jdk11\n## \u5b89\u88c5\u6a21\u5f0f allinone | server | node-controller | selenium-hub\uff0c \u5176\u4e2d selenium-hub \u548c node-controller \u53ef\u4ee5\u5355\u72ec\u5728\u670d\u52a1\u5668\u4e0a\u90e8\u7f72\u4f5c\u4e3a\u6267\u884c\u673a\u4f7f\u7528\nMS_INSTALL_MODE=allinone\n## MeterSphere \u4e3b\u7a0b\u5e8f\u7684 HTTP \u670d\u52a1\u76d1\u542c\u7aef\u53e3\nMS_SERVER_PORT=8081\n## MeterSphere Node-Controller \u7ec4\u4ef6\u7684 HTTP \u670d\u52a1\u76d1\u542c\u7aef\u53e3\nMS_NODE_CONTROLLER_PORT=8082\nMS_NODEEXPORTER_PORT=9100\n\n# \u6570\u636e\u5e93\u914d\u7f6e\n## \u662f\u5426\u4f7f\u7528\u5916\u90e8\u6570\u636e\u5e93\nMS_EXTERNAL_MYSQL=false\n## \u6570\u636e\u5e93\u5730\u5740\nMS_MYSQL_HOST=mysql\n## \u6570\u636e\u5e93\u7aef\u53e3\nMS_MYSQL_PORT=3306\n## \u6570\u636e\u5e93\u5e93\u540d\nMS_MYSQL_DB=metersphere\n## \u6570\u636e\u5e93\u7528\u6237\u540d\nMS_MYSQL_USER=root\n## \u6570\u636e\u5e93\u5bc6\u7801\nMS_MYSQL_PASSWORD=Password123@mysql\n\n# Prometheus \u914d\u7f6e\n## \u662f\u5426\u4f7f\u7528\u5916\u90e8Prometheus\nMS_EXTERNAL_PROM=false\nMS_PROMETHEUS_PORT=9090\n\n# Redis \u914d\u7f6e\n## \u662f\u5426\u4f7f\u7528\u5916\u90e8Redis\nMS_EXTERNAL_REDIS=false\n## Redis \u7aef\u53e3\nMS_REDIS_PORT=6379\n## Redis \u5bc6\u7801\nMS_REDIS_PASSWORD=Password123@redis\n## Redis\u5730\u5740\nMS_REDIS_HOST=$(hostname -I|cut -d\" \" -f 1)\n\n# Kafka \u914d\u7f6e\n## \u662f\u5426\u4f7f\u7528\u5916\u90e8 Kafka\nMS_EXTERNAL_KAFKA=false\n## Kafka \u5730\u5740\nMS_KAFKA_HOST=10.1.*.*\n## Kafka \u7aef\u53e3\nMS_KAFKA_PORT=9092\n## \u6027\u80fd\u6d4b\u8bd5\u7ed3\u679c\u6570\u636e\u4f7f\u7528\u7684 Kafka Topic\nMS_KAFKA_TOPIC=JMETER_METRICS\n## \u6027\u80fd\u6d4b\u8bd5\u65e5\u5fd7\u6570\u636e\u4f7f\u7528\u7684 Kafka Topic\nMS_KAFKA_LOG_TOPIC=JMETER_LOGS\n## \u6027\u80fd\u6d4b\u8bd5\u5b9a\u65f6\u4efb\u52a1\u901a\u77e5\u4f7f\u7528\u7684 Kafka Topic\nMS_KAFKA_TEST_TOPIC=LOAD_TESTS\n## \u91cd\u6784\u540e\u6027\u80fd\u6d4b\u8bd5\u7ed3\u679c\u6570\u636e\u4f7f\u7528\u7684 Kafka Topic\nMS_KAFKA_REPORT_TOPIC=JMETER_REPORTS\n\n# UI\u5bb9\u5668\u914d\u7f6e\n## \u662f\u5426\u542f\u52a8UI\u6a21\u5757\nMS_UI_ENABLED=false\n## \u662f\u5426\u542f\u52a8\u5de5\u4f5c\u53f0\u5bb9\u5668\nMS_WORKSTATION_ENABLED=false\n\n# minio \u914d\u7f6e\n## \u662f\u5426\u4f7f\u7528\u5916\u90e8minio\nMS_EXTERNAL_MINIO=false\n## minio \u5730\u5740\nMS_MINIO_ENDPOINT=http://minio:9000\n## minio access\nMS_MINIO_ACCESS_KEY=admin\n## minio \u5bc6\u7801\nMS_MINIO_SECRET_KEY=Password123@minio\n\n# \u4fee\u6539\u7ec4\u4ef6\u6700\u5927\u5185\u5b58\u9650\u5236\uff08v2.7\u4ee5\u4e0a\u53ef\u4ee5\u5728 /opt/metersphere/.env \u91cc\u4fee\u6539\u67d0\u5bb9\u5668\u670d\u52a1\u7684\u6700\u5927\u5185\u5b58\u9650\u5236\uff0c\u5728/opt/metersphere/ \u76ee\u5f55\u4e0b\u7684docker-compose\u5206\u522b\u5b9a\u4e49\u5404\u81ea\u670d\u52a1\u7684\u6700\u5927\u5c5e\u6027\u503c\uff0c\u5982 api-test \u7684\u5c5e\u6027\u5728 docker-compose-api-test.yml \u4e2d\u5b9a\u4e49\uff0c\u4e3a MS_API_MEM_LIMIT\uff09\nMS_API_MEM_LIMIT=1073741824\uff08\u9ed8\u8ba4\u4e3a 1g\uff09\n

    "},{"location":"installation/offline_installation/#43","title":"4.3 \u6570\u636e\u5e93\u914d\u7f6e\u6587\u4ef6\u8bf4\u660e","text":"

    \u6ce8\u610f

    MeterSphere \u4f7f\u2f64 MySQL 8.0 \u5bf9\u7cfb\u7edf\u6570\u636e\u8fdb\u2f8f\u5b58\u50a8\u3002\u540c\u65f6 MeterSphere \u5bf9\u6570\u636e\u5e93\u90e8\u5206\u914d\u7f6e\u9879\u6709\u8981\u6c42\uff0c\u8bf7\u53c2\u8003\u4e0b\u9644\u7684\u6570\u636e\u5e93\u914d\u7f6e\uff0c\u4fee\u6539\u73af\u5883\u4e2d\u7684\u6570\u636e\u5e93\u914d\u7f6e\u6587\u4ef6\u3002

    [mysqld]\ndatadir=/var/lib/mysql\n\ndefault-storage-engine=INNODB\ncharacter_set_server=utf8mb4\nlower_case_table_names=1\nperformance_schema=off\ntable_open_cache=128\ntransaction_isolation=READ-COMMITTED\nmax_connections=1000\nmax_connect_errors=6000\nmax_allowed_packet=64M\ninnodb_file_per_table=1\ninnodb_buffer_pool_size=512M\ninnodb_flush_method=O_DIRECT\ninnodb_lock_wait_timeout=1800\n\nserver-id=1\nlog-bin=mysql-bin\nexpire_logs_days = 2\nbinlog_format=mixed\n\ncharacter-set-client-handshake = FALSE\ncharacter-set-server=utf8mb4\ncollation-server=utf8mb4_general_ci\ninit_connect='SET default_collation_for_utf8mb4=utf8mb4_general_ci'\n\nsql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION\n\nskip-name-resolve\n\n[mysql]\ndefault-character-set=utf8mb4\n\n[mysql.server]\ndefault-character-set=utf8mb4\n

    \u8bf7\u53c2\u8003\u6587\u6863\u4e2d\u7684\u5efa\u5e93\u8bed\u53e5\u521b\u5efa MeterSphere \u4f7f\u7528\u7684\u6570\u636e\u5e93\uff0cmetersphere-server \u670d\u52a1\u542f\u52a8\u65f6\u4f1a\u81ea\u52a8\u5728\u914d\u7f6e\u7684\u5e93\u4e2d\u521b\u5efa\u6240\u9700\u7684\u8868\u7ed3\u6784\u53ca\u521d\u59cb\u5316\u6570\u636e\u3002

    CREATE DATABASE `metersphere` /*!40100 DEFAULT CHARACTER SET utf8mb4 */\n

    \u5b89\u88c5\u811a\u672c\u9ed8\u8ba4\u4f7f\u7528 /opt/metersphere \u76ee\u5f55\u4f5c\u4e3a\u5b89\u88c5\u76ee\u5f55\uff0cMeterSphere \u7684\u914d\u7f6e\u6587\u4ef6\u3001\u6570\u636e\u53ca\u65e5\u5fd7\u7b49\u5747\u5b58\u653e\u5728\u8be5\u5b89\u88c5\u76ee\u5f55\u3002

    "},{"location":"installation/offline_installation/#44","title":"4.4 \u5b89\u88c5\u76ee\u5f55\u7ed3\u6784\u8bf4\u660e","text":"

    \u5b89\u88c5\u76ee\u5f55\u7ed3\u6784\u8bf4\u660e

    /opt/metersphere/\n\u251c\u2500\u2500 bin                                         #-- \u5b89\u88c5\u8fc7\u7a0b\u4e2d\u9700\u8981\u52a0\u8f7d\u5230\u5bb9\u5668\u4e2d\u7684\u811a\u672c\n\u251c\u2500\u2500 compose_files                               #-- \u6839\u636e\u4e0d\u540c\u7684\u5b89\u88c5\u6a21\u5f0f\uff0c\u4fdd\u5b58\u9700\u8981\u4f7f\u7528\u5230\u7684 compose \u6587\u4ef6\u4fe1\u606f\n\u251c\u2500\u2500 conf                                        #-- MeterSphere \u5404\u7ec4\u4ef6\u53ca\u6570\u636e\u5e93\u7b49\u4e2d\u95f4\u4ef6\u7684\u914d\u7f6e\u6587\u4ef6\n\u251c\u2500\u2500 data                                        #-- MeterSphere \u5404\u7ec4\u4ef6\u53ca\u6570\u636e\u5e93\u7b49\u4e2d\u95f4\u4ef6\u7684\u6570\u636e\u6301\u4e45\u5316\u76ee\u5f55\n\u251c\u2500\u2500 docker-compose-gateway.yml                  #-- MeterSphere \u7684 API \u7f51\u5173\n\u251c\u2500\u2500 docker-compose-eureka.yml                   #-- MeterSphere \u7684\u670d\u52a1\u6ce8\u518c\u4e2d\u5fc3\n\u251c\u2500\u2500 docker-compose-base.yml                     #-- MeterSphere \u57fa\u7840 Docker Compose \u6587\u4ef6\uff0c\u5b9a\u4e49\u4e86\u7f51\u7edc\u7b49\u57fa\u7840\u4fe1\u606f \n\u251c\u2500\u2500 docker-compose-workstation.yml              #-- MeterSphere \u5de5\u4f5c\u53f0\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6 \n\u251c\u2500\u2500 docker-compose-test-track.yml               #-- MeterSphere \u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6 \n\u251c\u2500\u2500 docker-compose-api-test.yml                 #-- MeterSphere \u63a5\u53e3\u6d4b\u8bd5\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6 \n\u251c\u2500\u2500 docker-compose-ui-test.yml                  #-- MeterSphere UI \u6d4b\u8bd5\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6 \n\u251c\u2500\u2500 docker-compose-performance-test.yml         #-- MeterSphere \u6027\u80fd\u6d4b\u8bd5\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6  \n\u251c\u2500\u2500 docker-compose-report-stat.yml              #-- MeterSphere \u62a5\u8868\u7edf\u8ba1\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6  \n\u251c\u2500\u2500 docker-compose-project-management.yml       #-- MeterSphere \u9879\u76ee\u7ba1\u7406\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6  \n\u251c\u2500\u2500 docker-compose-system-setting.yml           #-- MeterSphere \u7cfb\u7edf\u8bbe\u7f6e\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6  \n\u251c\u2500\u2500 docker-compose-kafka.yml                    #-- MeterSphere \u81ea\u5e26\u7684 Kafka \u6240\u9700\u7684 Docker Compose \u6587\u4ef6\n\u251c\u2500\u2500 docker-compose-mysql.yml                    #-- MeterSphere \u81ea\u5e26\u7684 MySQL \u6240\u9700\u7684 Docker Compose \u6587\u4ef6\n\u251c\u2500\u2500 docker-compose-node-controller.yml          #-- MeterSphere Node-Controller \u7ec4\u4ef6\u6240\u9700\u7684 Docker Compose\u6587\u4ef6\n\u251c\u2500\u2500 docker-compose-redis.yml                    #-- MeterSphere Redis \u7ec4\u4ef6\u6240\u9700\u7684 Docker Compose\u6587\u4ef6\n\u251c\u2500\u2500 docker-compose-minio.yml                    #-- MeterSphere \u81ea\u5e26\u7684\u5206\u5e03\u5f0f\u5bf9\u8c61\u5b58\u50a8\u670d\u52a1\n\u251c\u2500\u2500 docker-compose-prometheus.yml               #-- MeterSphere Prometheus \u7ec4\u4ef6\u6240\u9700\u7684Docker Compose \u6587\u4ef6\n\u251c\u2500\u2500 install.conf -> /opt/metersphere/.env       #-- MeterSphere \u7684\u914d\u7f6e\u6587\u4ef6 /opt/metersphere/.env \u7684\u8f6f\u94fe\u63a5\n\u251c\u2500\u2500 logs                                        #-- MeterSphere \u5404\u7ec4\u4ef6\u7684\u65e5\u5fd7\u6587\u4ef6\u6301\u4e45\u5316\u76ee\u5f55\n\u2514\u2500\u2500 version                                     #-- \u5b89\u88c5\u5305\u5bf9\u5e94\u7684 MeterSphere \u7248\u672c\u4fe1\u606f\n
    "},{"location":"installation/offline_installation/#5","title":"5 \u6267\u884c\u5b89\u88c5\u811a\u672c","text":"
    # \u8fdb\u5165\u5b89\u88c5\u5305\u76ee\u5f55\ncd metersphere-offline-installer-v2.3.0\n# \u8fd0\u884c\u5b89\u88c5\u811a\u672c\n/bin/bash install.sh\n

    \u6267\u884c\u5b8c\u5b89\u88c5\u811a\u672c\u540e\uff0c\u4f1a\u5b89\u88c5\u955c\u50cf\uff0c\u7b49\u63d0\u793a\u5b89\u88c5\u5b8c\u6210\u540e\uff0c\u4f7f\u7528 msctl status \u67e5\u770b\u670d\u52a1\u5404\u4e2a\u7ec4\u4ef6\u72b6\u6001\u3002

    \u7b49\u5f85\u51e0\u5206\u949f\u540e\uff0c\u4f7f\u7528\u547d\u4ee4 msctl status \u68c0\u67e5\u670d\u52a1\u8fd0\u884c\u60c5\u51b5\uff0c\u82e5\u5404\u4e2a\u7ec4\u4ef6\u90fd\u662f healthy \u72b6\u6001\uff0c\u901a\u8fc7\u6d4f\u89c8\u5668\u8bbf\u95ee\u5982\u4e0b\u9875\u9762\u767b\u5f55 MeterSphere\u3002

    \u8bf7\u901a\u8fc7\u4ee5\u4e0b\u65b9\u5f0f\u8bbf\u95ee:\n\n URL: http://\u670d\u52a1\u5668IP:8081\n \u7528\u6237\u540d: admin\n \u521d\u59cb\u5bc6\u7801: metersphere\n
    \u4f01\u4e1a\u7528\u6237\u5347\u7ea7\u540e\u9700\u624b\u52a8\u8bbe\u7f6e ${MS_BASE}/metersphere/install.conf \u4e2d\u7684 MS_UI_ENABLED=true \u5e76\u6267\u884c msctl reload \u6765\u5f00\u542f UI \u529f\u80fd

    "},{"location":"installation/offline_installation/#6","title":"6 \u914d\u7f6e\u53cd\u5411\u4ee3\u7406","text":"

    \u6ce8\u610f

    \u5982\u679c\u4f7f\u7528\u4e86 Nginx\u3001HAProxy \u8fdb\u884c\u53cd\u5411\u4ee3\u7406\u914d\u7f6e\uff0c\u9700\u8981\u589e\u52a0\u5bf9 websocket \u7684\u652f\u6301\u3002\u4ee5 Nginx \u4e3a\u4f8b\uff0c\u53c2\u8003\u914d\u7f6e\u5982\u4e0b:

    server {\n    listen 80;\n    server_name demo.metersphere.com;\n    server_tokens off;\n    return 301 https://$host$request_uri;\n}\nserver {\n    listen 443 ssl;\n    # RSA certificate\n    ssl_certificate /etc/nginx/ssl/metersphere.com/fullchain.cer; # managed by Certbot\n    ssl_certificate_key /etc/nginx/ssl/metersphere.com/metersphere.com.key; # managed by Certbot\n    server_name  demo.metersphere.com;\n    proxy_connect_timeout       300;\n    proxy_send_timeout          300;\n    proxy_read_timeout          300;\n    send_timeout                300;\n    proxy_set_header Host $host;\n    proxy_set_header X-Forwarded-For $remote_addr;\n    proxy_set_header X-Forwarded-Host $server_name;\n    proxy_set_header X-Real-IP $remote_addr;\n    proxy_set_header X-Forwarded-Proto $scheme;\n    proxy_redirect http:// $scheme://;\n\n    location / {\n        proxy_pass http://ip:8081;\n        client_max_body_size 1000m;\n        #access_log off;\n\n        # \u914d\u7f6e websocket \u652f\u6301\n        proxy_http_version 1.1;\n        proxy_set_header Upgrade $http_upgrade;\n        proxy_set_header Connection \"upgrade\";\n    }\n}\n

    "},{"location":"installation/offline_installation_mac/","title":"MacOS \u5355\u673a\u90e8\u7f72","text":""},{"location":"installation/offline_installation_mac/#1","title":"1 \u73af\u5883\u8981\u6c42","text":"

    \u90e8\u7f72\u670d\u52a1\u5668\u8981\u6c42

    • \u64cd\u4f5c\u7cfb\u7edf: \u53ef\u8fd0\u884c Docker \u7684 Mac \u64cd\u4f5c\u7cfb\u7edf
    • CPU/\u5185\u5b58: \u6700\u4f4e\u8981\u6c42 4C8G\uff0c\u63a8\u8350 8C16G (2.3.0\u7248\u672c\u53ca\u5176\u4e4b\u540e\u7684\u7248\u672c\uff0c\u6700\u4f4e\u914d\u7f6e 8C16G)
    • \u78c1\u76d8\u7a7a\u95f4: 50G
    "},{"location":"installation/offline_installation_mac/#2","title":"2 \u5b89\u88c5\u90e8\u7f72","text":""},{"location":"installation/offline_installation_mac/#21-docker","title":"2.1 \u5b89\u88c5 Docker","text":"

    \u5728\u5e94\u7528\u5546\u5e97\u4e0b\u8f7d Docker \u8fdb\u884c\u5b89\u88c5\uff0c\u5b89\u88c5\u540e\u5e76\u542f\u52a8 Docker

    "},{"location":"installation/offline_installation_mac/#22-docker","title":"2.2 Docker \u8bbe\u7f6e","text":"

    \u8fdb\u884c Docker \u8bbe\u7f6e\uff0c\u9700\u8981\u6dfb\u52a0 /opt/metersphere \u8def\u5f84

    "},{"location":"installation/offline_installation_mac/#23-metersphere","title":"2.3 \u5b89\u88c5 MeterSphere","text":"

    \u4e0b\u8f7d\u5b89\u88c5\u5305\uff0c\u5b89\u88c5\u5305\u4e0b\u8f7d\u94fe\u63a5: https://community.fit2cloud.com/#/products/metersphere/downloads

    \u89e3\u538b\u5b89\u88c5\u5305

    \u8fdb\u5165\u89e3\u538b\u597d\u7684\u5b89\u88c5\u5305\u76ee\u5f55

    \u6267\u884c\u5b89\u88c5\u547d\u4ee4 sh install.sh\uff0c\u5b89\u88c5\u8fc7\u7a0b\u4e2d\u7684\u63d0\u793a\uff0c\u8f93\u5165 y

    \u5b89\u88c5\u5b8c\u6210\uff0c\u4f7f\u7528 docker ps \u67e5\u770b\u540e\u53f0\u670d\u52a1\u90fd\u4e3a healthy \u72b6\u6001\uff0c\u5219\u901a\u8fc7\u6d4f\u89c8\u5668\u8bbf\u95ee\u5982\u4e0b\u5730\u5740\u8bbf\u95ee MeterSphere

    \u5730\u5740: http://\u76ee\u6807\u670d\u52a1\u5668IP\u5730\u5740:\u670d\u52a1\u8fd0\u884c\u7aef\u53e3\n\u7528\u6237\u540d: admin\n\u5bc6\u7801: metersphere\n

    "},{"location":"installation/offline_installation_windows/","title":"Windows \u5355\u673a\u90e8\u7f72","text":""},{"location":"installation/offline_installation_windows/#1","title":"1 \u73af\u5883\u8981\u6c42","text":"

    \u5f97\u76ca\u4e8e Docker \u8de8\u5e73\u53f0\u5e94\u7528\uff0cMeterSphere \u7406\u8bba\u4e0a\u53ef\u4ee5\u90e8\u7f72\u5728\u4efb\u4f55\u53ef\u4ee5\u8fd0\u884c Docker \u7684\u5bbf\u4e3b\u673a\uff0c\u5305\u62ec Windows \u64cd\u4f5c\u7cfb\u7edf\u7684\u4e3b\u673a\u3002\u5c06\u4ee5 Windows 10 \u4e3a\u4f8b\uff0c\u4ecb\u7ecd\u5982\u4f55\u5728 Windows \u64cd\u4f5c\u7cfb\u7edf\u901a\u8fc7 WSL \u4e0a\u5b89\u88c5 MeterSphere\u3002

    \u90e8\u7f72\u670d\u52a1\u5668\u8981\u6c42\uff1a

    • \u64cd\u4f5c\u7cfb\u7edf: \u53ef\u8fd0\u884c Docker \u7684 Windows \u64cd\u4f5c\u7cfb\u7edf
    • CPU/\u5185\u5b58: \u6700\u4f4e\u8981\u6c42 4C8G\uff0c\u63a8\u8350 8C16G (2.3.0\u7248\u672c\u53ca\u5176\u4e4b\u540e\u7684\u7248\u672c\uff0c\u6700\u4f4e\u914d\u7f6e 8C16G)
    • \u78c1\u76d8\u7a7a\u95f4: 200G

    \u6ce8\u610f\uff1a

    • WSL \u9700\u8981\u652f\u6301\u5d4c\u5957\u865a\u62df\u5316\uff0c\u4e91\u865a\u62df\u673a(Windows)\u53ef\u80fd\u4e0d\u652f\u6301\u800c\u5bfc\u81f4\u65e0\u6cd5\u5b89\u88c5 MeterSphere
    "},{"location":"installation/offline_installation_windows/#2","title":"2 \u5b89\u88c5\u90e8\u7f72","text":""},{"location":"installation/offline_installation_windows/#21-wsl","title":"2.1 \u5b89\u88c5 WSL","text":"

    \u53c2\u8003\u5728 Windows 10 \u4e0a\u5b89\u88c5 WSL | Microsoft Docs\u8fdb\u884c Windows \u5bbf\u4e3b\u673a WSL \u7684\u5b89\u88c5\u548c\u914d\u7f6e\u3002

    \u4f7f\u7528\u7ba1\u7406\u5458\u8eab\u4efd\u8fd0\u884c\u4ee5\u4e0b\u547d\u4ee4\uff0c\u7136\u540e\u91cd\u542f\u64cd\u4f5c\u7cfb\u7edf\u3002

    dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart\ndism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart\n

    \u4e0b\u8f7d\u5e76\u5b89\u88c5 \u9002\u7528\u4e8e x64 \u8ba1\u7b97\u673a\u7684 WSL2 Linux \u5185\u6838\u66f4\u65b0\u5305

    \u4ee5\u7ba1\u7406\u5458\u8eab\u4efd\u6267\u884c\u4ee5\u4e0b\u547d\u4ee4\uff0c\u8bbe\u7f6e WSL \u9ed8\u8ba4\u7248\u672c\uff1a

    wsl --set-default-version 2\n

    "},{"location":"installation/offline_installation_windows/#22-ubuntu","title":"2.2 \u5b89\u88c5 Ubuntu","text":"

    \u5728 Windows 10 \u7684\u5e94\u7528\u5546\u5e97\u91cc\u641c\u7d22\"Ubuntu\"\u5e76\u5b89\u88c5\uff1a

    "},{"location":"installation/offline_installation_windows/#23-ubuntu-wsl","title":"2.3 \u68c0\u6d4b Ubuntu WSL \u7248\u672c","text":"

    \u4ee5\u7ba1\u7406\u5458\u8eab\u4efd\u6267\u884c\uff1a

    wsl.exe -l -v\n

    \u793a\u4f8b\u4e2d\u5b89\u88c5\u7684 Ubuntu Name \u4e3a \"Ubuntu\"\uff0c \u5982\u50cf\u4e0a\u56fe\u51fa\u73b0 Ubuntu \u7248\u672c\u4e3a 1\uff0c \u5219\u7ee7\u7eed\u6267\u884c\u547d\u4ee4\uff1a

    wsl.exe --set-version Ubuntu 2\n

    \u51fa\u73b0\u4e0b\u56fe\u7ed3\u679c\u5373\u4e3a\u6210\u529f\uff1a

    "},{"location":"installation/offline_installation_windows/#24-docker","title":"2.4 Docker \u5b89\u88c5\u4e0e\u914d\u7f6e","text":"

    \u4e0b\u8f7dDocker Desktop for Windows\uff0c\u53cc\u51fb Docker Desktop Installer.exe \u5b8c\u6210docker \u7684\u5b89\u88c5\u3002

    Docker Desktop \u5b89\u88c5\u5b8c\u6210\u540e\uff0c\u8fdb\u5165 Settings \u754c\u9762\uff0c\u9009\u62e9 Resources \u83dc\u5355\u4e0b\u7684 WSL INTEGRATION\uff0c\u6309\u4e0b\u56fe\u8bbe\u7f6e\u540e\uff0c\u70b9\u51fb\u53f3\u4e0b\u89d2\u7684Apply & Restart\u3002

    "},{"location":"installation/offline_installation_windows/#25-ubuntu","title":"2.5 \u542f\u52a8 Ubuntu","text":"

    \u5728\u5e94\u7528\u5546\u5e97\u91cc\uff0c\u9009\u62e9 Ubuntu\uff0c\u70b9\u51fb\"\u542f\u52a8\"\u6309\u94ae\u542f\u52a8 Ubuntu\uff0c\u5e76\u6267\u884c sudo su \u547d\u4ee4\u5207\u6362\u5230 root \u7528\u6237\uff1a

    `

    "},{"location":"installation/offline_installation_windows/#26-docker","title":"2.6 \u68c0\u67e5 Docker \u73af\u5883","text":"

    \u5728 Ubuntu \u547d\u4ee4\u884c\u4e2d\u6267\u884c\u547d\u4ee4docker version\uff0c\u5982\u80fd\u50cf\u4e0b\u56fe\u4e00\u6837\u6b63\u5e38\u663e\u793a docker \u7248\u672c\u4fe1\u606f\uff0c\u5219\u80fd\u6b63\u5e38\u6267\u884c MeterSphere \u540e\u7eed\u7684\u5b89\u88c5\u64cd\u4f5c\uff0c\u5982\u51fa\u73b0\u5f02\u5e38\uff0c\u5219\u9700\u8981\u6839\u636e\u63d0\u793a\u4fe1\u606f\u89e3\u51b3\u3002

    "},{"location":"installation/offline_installation_windows/#27","title":"2.7 \u4e0b\u8f7d\u5b89\u88c5\u5305","text":"

    \u5728 \u98de\u81f4\u4e91\u5f00\u6e90\u793e\u533a \u6216 MeterSphere Github Release \u4e0b\u8f7d MeterSphere \u6700\u65b0\u7248\u672c\u7684\u79bb\u7ebf\u5b89\u88c5\u5305\u3002

    "},{"location":"installation/offline_installation_windows/#28","title":"2.8 \u89e3\u538b\u5b89\u88c5\u5305","text":"

    \u5728 Ubuntu \u4e2d\uff0c\u4ee5 root \u7528\u6237\u6267\u884c\u5982\u4e0b\u547d\u4ee4\uff1a

    # \u5047\u8bbe\u5b89\u88c5\u5305\u5b58\u653e\u8def\u5f84\u4e3a c:\\metersphere-offline-installer-v2.10.0.tar.gz\ncd /mnt/c\n# \u89e3\u538b\u5b89\u88c5\u5305\ntar zxvf metersphere-offline-installer-v2.10.0.tar.gz\n

    "},{"location":"installation/offline_installation_windows/#29","title":"2.9 \u914d\u7f6e\u5b89\u88c5\u53c2\u6570\uff08\u53ef\u9009\uff09","text":"

    MeterSphere \u652f\u6301\u4ee5\u914d\u7f6e\u6587\u4ef6\u7684\u5f62\u5f0f\u6765\u8bbe\u7f6e\u5b89\u88c5\u53c2\u6570\uff0c\u5982\u5b89\u88c5\u76ee\u5f55\u3001\u670d\u52a1\u8fd0\u884c\u7aef\u53e3\u3001\u6570\u636e\u5e93\u914d\u7f6e\u53c2\u6570\u7b49\uff0c\u5b89\u88c5\u524d\u4fee\u6539\u5b89\u88c5\u5305\u4e2d\u7684 install.conf \u6587\u4ef6\u53ef\u5b8c\u6210\u914d\u7f6e\u3002\u5177\u4f53\u8bf4\u660e\u89c1\uff1a\u5b89\u88c5\u914d\u7f6e\u6587\u4ef6\u8bf4\u660e\u3002

    "},{"location":"installation/offline_installation_windows/#210","title":"2.10 \u6267\u884c\u5b89\u88c5\u811a\u672c","text":"
    # \u8fdb\u5165\u5b89\u88c5\u5305\u76ee\u5f55\ncd metersphere-offline-installer-v2.10.0\n# \u8fd0\u884c\u5b89\u88c5\u811a\u672c\n/bin/bash install.sh\n

    \u5b89\u88c5\u6210\u529f\u540e\uff0c\u4f7f\u7528 msctl status \u67e5\u770b\u540e\u53f0\u670d\u52a1\u72b6\u6001\uff0c\u5f85\u6240\u6709\u670d\u52a1\u8fd0\u884c\u72b6\u6001\u90fd\u4e3a healthy \u540e\uff0c\u5219\u901a\u8fc7\u6d4f\u89c8\u5668\u8bbf\u95ee MeterSphere\u3002

    \u5730\u5740: http://\u76ee\u6807\u670d\u52a1\u5668IP\u5730\u5740:\u670d\u52a1\u8fd0\u884c\u7aef\u53e3\n\u7528\u6237\u540d: admin\n\u5bc6\u7801: metersphere\n

    "},{"location":"installation/offline_upgrade/","title":"\u79bb\u7ebf\u5347\u7ea7","text":"

    \u6ce8\u610f

    \u5347\u7ea7\u524d\u4e00\u5b9a\u8981\u8fdb\u884c\u6570\u636e\u5e93\u5907\u4efd\uff0c\u8be6\u7ec6\u64cd\u4f5c\u8bf7\u53c2\u8003 MeterSphere \u6570\u636e\u5907\u4efd\u3002

    "},{"location":"installation/offline_upgrade/#1","title":"1 \u4e0b\u8f7d\u5e76\u89e3\u538b\u5b89\u88c5\u5305","text":"

    \u6309\u7167\u672c\u6587\u6863 \u79bb\u7ebf\u5b89\u88c5 \u6b65\u9aa4\uff0c \u4e0b\u8f7d\u65b0\u7248\u672c\u5b89\u88c5\u5305\u5e76\u4e0a\u4f20\u89e3\u538b\u540e, \u91cd\u65b0\u6267\u884c\u5b89\u88c5\u547d\u4ee4\u8fdb\u884c\u5347\u7ea7\u3002 \u3010\u6ce8\u610f\u3011\u5982\u679c\u5347\u7ea7\u7248\u672c\u8de8\u5ea6\u8f83\u5927\uff1a\u5982 V1.x \u5347\u7ea7\u81f3 V2.x \u6700\u65b0\u7248\u672c\uff0c\u7531\u4e8e\u8de8\u591a\u7248\u672c\u65b0\u589e\u529f\u80fd\u8f83\u591a\uff0c\u4e14 v2.8.1 \u4e4b\u540edocker \u4f7f\u7528\u7248\u672c\u5347\u7ea7\uff0c\u8bf7\u6309\u7167\u5347\u7ea7\u6307\u5357\u64cd\u4f5c\uff1a MeterSphere 1.20 LTS \u81f32.10 LTS \u5347\u7ea7\u6307\u5357\u3002\u5982\u679c\u5347\u7ea7\u7248\u672c\u8de8\u5ea6\u4e0d\u5927\uff0c\u5219\u6309\u7167\u4e0b\u9762\u8bf4\u660e\u5347\u7ea7\u5373\u53ef\u3002

    "},{"location":"installation/offline_upgrade/#2","title":"2 \u6267\u884c\u5b89\u88c5\u547d\u4ee4","text":"
    #\u5347\u7ea7\u524d\u505c\u6b62\u670d\u52a1\nmsctl stop\n\nMeterSphere \u5b89\u88c5\u5305\u4e0b\u8f7d\u94fe\u63a5: https://github.com/metersphere/metersphere/releases\n\n# \u4e0b\u8f7d\u5728\u7ebf\u5b89\u88c5\u5305\nwget https://github.com/metersphere/metersphere/releases/download/v2.x.y/metersphere-online-installer-v2.x.y.tar.gz\n\n# \u89e3\u538b\u5728\u7ebf\u5b89\u88c5\u5305\ntar -zxvf metersphere-online-installer-v2.x.y.tar.gz\n\n# \u8fdb\u5165\u79bb\u7ebf\u90e8\u7f72\u5305\u89e3\u538b\u7f29\u76ee\u5f55\ncd metersphere-offline-installer-v2.x.y\n\n# \u8fd0\u884c\u5b89\u88c5\u811a\u672c\n/bin/bash install.sh\n\n# \u67e5\u770b MeterSphere \u72b6\u6001\nmsctl status\n
    "},{"location":"installation/online_installation/","title":"\u5728\u7ebf\u5b89\u88c5","text":""},{"location":"installation/online_installation/#1","title":"1 \u73af\u5883\u8981\u6c42","text":"

    \u90e8\u7f72\u670d\u52a1\u5668\u8981\u6c42

    • \u64cd\u4f5c\u7cfb\u7edf: CentOS 7.x / Redhat 7.x
    • CPU/\u5185\u5b58: \u6700\u4f4e\u8981\u6c42 4C8G\uff0c\u63a8\u8350 8C16G (2.3.0\u7248\u672c\u53ca\u5176\u4e4b\u540e\u7684\u7248\u672c\uff0c\u6700\u4f4e\u914d\u7f6e 8C16G)
    • \u78c1\u76d8\u7a7a\u95f4: 50G
    • \u7f51\u7edc\u8981\u6c42\uff1a\u53ef\u8bbf\u95ee\u4e92\u8054\u7f51
    "},{"location":"installation/online_installation/#2","title":"2 \u4e00\u952e\u5b89\u88c5","text":"

    \u5728\u670d\u52a1\u5668\u4e0a\u4ee5 root \u7528\u6237\u6267\u884c\u5982\u4e0b\u547d\u4ee4\u4e00\u952e\u5b89\u88c5 MeterSphere\u3002

    curl -sSL https://resource.fit2cloud.com/metersphere/metersphere/releases/latest/download/quick_start.sh | bash\n

    \u5b89\u88c5\u6210\u529f\u540e\uff0c\u901a\u8fc7\u6d4f\u89c8\u5668\u8bbf\u95ee\u5982\u4e0b\u9875\u9762\u767b\u5f55 MeterSphere\u3002

    \u5730\u5740: http://\u76ee\u6807\u670d\u52a1\u5668IP\u5730\u5740:8081\n\u7528\u6237\u540d: admin\n\u5bc6\u7801: metersphere\n

    \u5b89\u88c5\u811a\u672c\u9ed8\u8ba4\u4f7f\u7528 /opt/metersphere \u76ee\u5f55\u4f5c\u4e3a\u5b89\u88c5\u76ee\u5f55\uff0cMeterSphere \u7684\u914d\u7f6e\u6587\u4ef6\u3001\u6570\u636e\u53ca\u65e5\u5fd7\u7b49\u5747\u5b58\u653e\u5728\u8be5\u5b89\u88c5\u76ee\u5f55\u3002

    \u5b89\u88c5\u76ee\u5f55\u76ee\u5f55\u7ed3\u6784\u8bf4\u660e

    /opt/metersphere/\n\u251c\u2500\u2500 bin                                         #-- \u5b89\u88c5\u8fc7\u7a0b\u4e2d\u9700\u8981\u52a0\u8f7d\u5230\u5bb9\u5668\u4e2d\u7684\u811a\u672c\n\u251c\u2500\u2500 compose_files                               #-- \u6839\u636e\u4e0d\u540c\u7684\u5b89\u88c5\u6a21\u5f0f\uff0c\u4fdd\u5b58\u9700\u8981\u4f7f\u7528\u5230\u7684 compose \u6587\u4ef6\u4fe1\u606f\n\u251c\u2500\u2500 conf                                        #-- MeterSphere \u5404\u7ec4\u4ef6\u53ca\u6570\u636e\u5e93\u7b49\u4e2d\u95f4\u4ef6\u7684\u914d\u7f6e\u6587\u4ef6\n\u251c\u2500\u2500 data                                        #-- MeterSphere \u5404\u7ec4\u4ef6\u53ca\u6570\u636e\u5e93\u7b49\u4e2d\u95f4\u4ef6\u7684\u6570\u636e\u6301\u4e45\u5316\u76ee\u5f55\n\u251c\u2500\u2500 docker-compose-gateway.yml                  #-- MeterSphere \u7684 API \u7f51\u5173\n\u251c\u2500\u2500 docker-compose-eureka.yml                   #-- MeterSphere \u7684\u670d\u52a1\u6ce8\u518c\u4e2d\u5fc3\n\u251c\u2500\u2500 docker-compose-base.yml                     #-- MeterSphere \u57fa\u7840 Docker Compose \u6587\u4ef6\uff0c\u5b9a\u4e49\u4e86\u7f51\u7edc\u7b49\u57fa\u7840\u4fe1\u606f \n\u251c\u2500\u2500 docker-compose-workstation.yml              #-- MeterSphere \u5de5\u4f5c\u53f0\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6 \n\u251c\u2500\u2500 docker-compose-test-track.yml               #-- MeterSphere \u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6 \n\u251c\u2500\u2500 docker-compose-api-test.yml                 #-- MeterSphere \u63a5\u53e3\u6d4b\u8bd5\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6 \n\u251c\u2500\u2500 docker-compose-ui-test.yml                  #-- MeterSphere UI \u6d4b\u8bd5\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6 \n\u251c\u2500\u2500 docker-compose-performance-test.yml         #-- MeterSphere \u6027\u80fd\u6d4b\u8bd5\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6  \n\u251c\u2500\u2500 docker-compose-report-stat.yml              #-- MeterSphere \u62a5\u8868\u7edf\u8ba1\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6  \n\u251c\u2500\u2500 docker-compose-project-management.yml       #-- MeterSphere \u9879\u76ee\u7ba1\u7406\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6  \n\u251c\u2500\u2500 docker-compose-system-setting.yml           #-- MeterSphere \u7cfb\u7edf\u8bbe\u7f6e\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6  \n\u251c\u2500\u2500 docker-compose-kafka.yml                    #-- MeterSphere \u81ea\u5e26\u7684 Kafka \u6240\u9700\u7684 Docker Compose \u6587\u4ef6\n\u251c\u2500\u2500 docker-compose-mysql.yml                    #-- MeterSphere \u81ea\u5e26\u7684 MySQL \u6240\u9700\u7684 Docker Compose \u6587\u4ef6\n\u251c\u2500\u2500 docker-compose-node-controller.yml          #-- MeterSphere Node-Controller \u7ec4\u4ef6\u6240\u9700\u7684 Docker Compose\u6587\u4ef6\n\u251c\u2500\u2500 docker-compose-redis.yml                    #-- MeterSphere Redis \u7ec4\u4ef6\u6240\u9700\u7684 Docker Compose\u6587\u4ef6\n\u251c\u2500\u2500 docker-compose-minio.yml                    #-- MeterSphere \u81ea\u5e26\u7684\u5206\u5e03\u5f0f\u5bf9\u8c61\u5b58\u50a8\u670d\u52a1\n\u251c\u2500\u2500 docker-compose-prometheus.yml               #-- MeterSphere Prometheus \u7ec4\u4ef6\u6240\u9700\u7684Docker Compose \u6587\u4ef6\n\u251c\u2500\u2500 install.conf -> /opt/metersphere/.env       #-- MeterSphere \u7684\u914d\u7f6e\u6587\u4ef6 /opt/metersphere/.env \u7684\u8f6f\u94fe\u63a5\n\u251c\u2500\u2500 logs                                        #-- MeterSphere \u5404\u7ec4\u4ef6\u7684\u65e5\u5fd7\u6587\u4ef6\u6301\u4e45\u5316\u76ee\u5f55\n\u2514\u2500\u2500 version                                     #-- \u5b89\u88c5\u5305\u5bf9\u5e94\u7684 MeterSphere \u7248\u672c\u4fe1\u606f\n
    "},{"location":"installation/online_installation/#3","title":"3 \u624b\u52a8\u5b89\u88c5","text":""},{"location":"installation/online_installation/#31","title":"3.1 \u624b\u52a8\u5b89\u88c5","text":"

    MeterSphere \u5b89\u88c5\u5305\u4e0b\u8f7d\u94fe\u63a5: https://github.com/metersphere/metersphere/releases

    # \u4e0b\u8f7d\u5728\u7ebf\u5b89\u88c5\u5305\nwget https://github.com/metersphere/metersphere/releases/download/v2.x.y/metersphere-online-installer-v2.x.y.tar.gz\n\n# \u89e3\u538b\u5728\u7ebf\u5b89\u88c5\u5305\ntar -zxvf metersphere-online-installer-v2.x.y.tar.gz\n\n# \u8fdb\u5165\u89e3\u538b\u76ee\u5f55\ncd metersphere-online-installer-v2.x.y\n\n# \u914d\u7f6e\u5b89\u88c5\u53c2\u6570\uff0c\u53c2\u6570\u8bf4\u660e\u89c1\u4e0b\u6587\n# vi install.conf\n\n# \u6267\u884cinstall.sh\u5b89\u88c5\u811a\u672c\n/bin/bash install.sh\n

    \u6267\u884c\u5b8c\u5b89\u88c5\u811a\u672c\u540e\uff0c\u4f1a\u5728\u7ebf\u62c9\u53d6\u955c\u50cf\uff0c\u7b49\u63d0\u793a\u5b89\u88c5\u5b8c\u6210\u540e\uff0c\u4f7f\u7528 msctl status \u67e5\u770b\u670d\u52a1\u5404\u4e2a\u7ec4\u4ef6\u72b6\u6001

    \u7b49\u5f85\u51e0\u5206\u949f\u540e\uff0c\u4f7f\u7528\u547d\u4ee4 msctl status \u68c0\u67e5\u670d\u52a1\u8fd0\u884c\u60c5\u51b5\uff0c\u82e5\u5404\u4e2a\u7ec4\u4ef6\u90fd\u662f healthy \u72b6\u6001\uff0c\u901a\u8fc7\u6d4f\u89c8\u5668\u8bbf\u95ee\u5982\u4e0b\u9875\u9762\u767b\u5f55 MeterSphere\u3002

     \u8bf7\u901a\u8fc7\u4ee5\u4e0b\u65b9\u5f0f\u8bbf\u95ee:\n\n URL: http://\u670d\u52a1\u5668IP:8081\n \u7528\u6237\u540d: admin\n \u521d\u59cb\u5bc6\u7801: metersphere\n

    "},{"location":"installation/online_installation/#32","title":"3.2 \u5b89\u88c5\u914d\u7f6e\u6587\u4ef6\u8bf4\u660e","text":"

    \u5b89\u88c5\u914d\u7f6e\u6587\u4ef6\u8bf4\u660e

    \u5982\u679c\u65e0\u7279\u6b8a\u9700\u6c42\u53ef\u4ee5\u4e0d\u8fdb\u884c\u4fee\u6539\u91c7\u7528\u9ed8\u8ba4\u53c2\u6570\u5b89\u88c5\uff08\u9996\u6b21\u5b89\u88c5\u53ef\u4fee\u6539\u914d\u7f6e install.conf \u6587\u4ef6\u4e2d\u76f8\u5173\u914d\u7f6e\uff0c\u4fee\u6539\u5b8c\u540e\u6267\u884c /bin/bash install.sh \u547d\u4ee4\u8fdb\u884c\u5b89\u88c5\uff0c\u5df2\u5b89\u88c5\u6210\u529f\u5982\u9700\u518d\u4fee\u6539\u914d\u7f6e\u53c2\u6570\uff0c\u9700\u8981\u5230 ${MS_BASE}/metersphere/.env \u91cc\u4fee\u6539\uff0c\u4fee\u6539\u5b8c\u540e\u6267\u884c msctl reload \u5373\u53ef\u91cd\u65b0\u52a0\u8f7d\u914d\u7f6e\u6587\u4ef6\uff09\u3002

    # \u57fa\u7840\u914d\u7f6e\n## \u5b89\u88c5\u8def\u5f84\uff0c MeterSphere \u914d\u7f6e\u53ca\u6570\u636e\u6587\u4ef6\u9ed8\u8ba4\u5c06\u5b89\u88c5\u5728 ${MS_BASE}/metersphere \u76ee\u5f55\u4e0b\nMS_BASE=/opt\n## MeterSphere \u4f7f\u7528\u7684 docker \u7f51\u7edc\u7f51\u6bb5\u4fe1\u606f\nMS_DOCKER_SUBNET=172.30.10.0/24\n## \u955c\u50cf\u524d\u7f00\uff0c MeterSphere \u76f8\u5173\u7ec4\u4ef6\u4f7f\u7528\u7684 Docker \u955c\u50cf\u524d\u7f00\uff0c \u4f8b\u5982 registry.cn-qingdao.aliyuncs.com/metersphere\nMS_IMAGE_PREFIX=registry.cn-qingdao.aliyuncs.com/metersphere\n## \u955c\u50cf\u6807\u7b7e\uff0c MeterSphere \u76f8\u5173\u7ec4\u4ef6\u4f7f\u7528\u7684 Docker \u955c\u50cf\u6807\u7b7e\nMS_IMAGE_TAG=v2.3.0\n## \u6027\u80fd\u6d4b\u8bd5\u4f7f\u7528\u7684 JMeter \u955c\u50cf\nMS_JMETER_IMAGE=${MS_IMAGE_PREFIX}/jmeter-master:5.5-ms2-jdk11\n## \u5b89\u88c5\u6a21\u5f0f allinone | server | node-controller | selenium-hub\uff0c \u5176\u4e2d selenium-hub \u548c node-controller \u53ef\u4ee5\u5355\u72ec\u5728\u670d\u52a1\u5668\u4e0a\u90e8\u7f72\u4f5c\u4e3a\u6267\u884c\u673a\u4f7f\u7528\nMS_INSTALL_MODE=allinone\n## MeterSphere \u4e3b\u7a0b\u5e8f\u7684 HTTP \u670d\u52a1\u76d1\u542c\u7aef\u53e3\nMS_SERVER_PORT=8081\n## MeterSphere Node-Controller \u7ec4\u4ef6\u7684 HTTP \u670d\u52a1\u76d1\u542c\u7aef\u53e3\nMS_NODE_CONTROLLER_PORT=8082\nMS_NODEEXPORTER_PORT=9100\n\n# \u6570\u636e\u5e93\u914d\u7f6e\n## \u662f\u5426\u4f7f\u7528\u5916\u90e8\u6570\u636e\u5e93\nMS_EXTERNAL_MYSQL=false\n## \u6570\u636e\u5e93\u5730\u5740\nMS_MYSQL_HOST=mysql\n## \u6570\u636e\u5e93\u7aef\u53e3\nMS_MYSQL_PORT=3306\n## \u6570\u636e\u5e93\u5e93\u540d\nMS_MYSQL_DB=metersphere\n## \u6570\u636e\u5e93\u7528\u6237\u540d\nMS_MYSQL_USER=root\n## \u6570\u636e\u5e93\u5bc6\u7801\nMS_MYSQL_PASSWORD=Password123@mysql\n\n# Prometheus \u914d\u7f6e\n## \u662f\u5426\u4f7f\u7528\u5916\u90e8Prometheus\nMS_EXTERNAL_PROM=false\nMS_PROMETHEUS_PORT=9090\n\n# Redis \u914d\u7f6e\n## \u662f\u5426\u4f7f\u7528\u5916\u90e8Redis\nMS_EXTERNAL_REDIS=false\n## Redis \u7aef\u53e3\nMS_REDIS_PORT=6379\n## Redis \u5bc6\u7801\nMS_REDIS_PASSWORD=Password123@redis\n## Redis\u5730\u5740\nMS_REDIS_HOST=$(hostname -I|cut -d\" \" -f 1)\n\n# Kafka \u914d\u7f6e\n## \u662f\u5426\u4f7f\u7528\u5916\u90e8 Kafka\nMS_EXTERNAL_KAFKA=false\n## Kafka \u5730\u5740\nMS_KAFKA_HOST=10.1.*.*\n## Kafka \u7aef\u53e3\nMS_KAFKA_PORT=9092\n## \u6027\u80fd\u6d4b\u8bd5\u7ed3\u679c\u6570\u636e\u4f7f\u7528\u7684 Kafka Topic\nMS_KAFKA_TOPIC=JMETER_METRICS\n## \u6027\u80fd\u6d4b\u8bd5\u65e5\u5fd7\u6570\u636e\u4f7f\u7528\u7684 Kafka Topic\nMS_KAFKA_LOG_TOPIC=JMETER_LOGS\n## \u6027\u80fd\u6d4b\u8bd5\u5b9a\u65f6\u4efb\u52a1\u901a\u77e5\u4f7f\u7528\u7684 Kafka Topic\nMS_KAFKA_TEST_TOPIC=LOAD_TESTS\n## \u91cd\u6784\u540e\u6027\u80fd\u6d4b\u8bd5\u7ed3\u679c\u6570\u636e\u4f7f\u7528\u7684 Kafka Topic\nMS_KAFKA_REPORT_TOPIC=JMETER_REPORTS\n\n# UI\u5bb9\u5668\u914d\u7f6e\n## \u662f\u5426\u542f\u52a8UI\u6a21\u5757\nMS_UI_ENABLED=false\n## \u662f\u5426\u542f\u52a8\u5de5\u4f5c\u53f0\u5bb9\u5668\nMS_WORKSTATION_ENABLED=false\n\n# minio \u914d\u7f6e\n## \u662f\u5426\u4f7f\u7528\u5916\u90e8minio\nMS_EXTERNAL_MINIO=false\n## minio \u5730\u5740\nMS_MINIO_ENDPOINT=http://minio:9000\n## minio access\nMS_MINIO_ACCESS_KEY=admin\n## minio \u5bc6\u7801\nMS_MINIO_SECRET_KEY=Password123@minio\n\n# \u4fee\u6539\u7ec4\u4ef6\u6700\u5927\u5185\u5b58\u9650\u5236\uff08v2.7\u4ee5\u4e0a\u53ef\u4ee5\u5728 /opt/metersphere/.env \u91cc\u4fee\u6539\u67d0\u5bb9\u5668\u670d\u52a1\u7684\u6700\u5927\u5185\u5b58\u9650\u5236\uff0c\u5728/opt/metersphere/ \u76ee\u5f55\u4e0b\u7684docker-compose\u5206\u522b\u5b9a\u4e49\u5404\u81ea\u670d\u52a1\u7684\u6700\u5927\u5c5e\u6027\u503c\uff0c\u5982 api-test \u7684\u5c5e\u6027\u5728 docker-compose-api-test.yml \u4e2d\u5b9a\u4e49\uff0c\u4e3a MS_API_MEM_LIMIT\uff09\nMS_API_MEM_LIMIT=1073741824\uff08\u9ed8\u8ba4\u4e3a 1g\uff09\n

    "},{"location":"installation/online_installation/#33","title":"3.3 \u6570\u636e\u5e93\u914d\u7f6e\u6587\u4ef6\u8bf4\u660e","text":"

    \u6ce8\u610f

    MeterSphere \u4f7f\u2f64 MySQL 8.0 \u5bf9\u7cfb\u7edf\u6570\u636e\u8fdb\u2f8f\u5b58\u50a8\u3002\u540c\u65f6 MeterSphere \u5bf9\u6570\u636e\u5e93\u90e8\u5206\u914d\u7f6e\u9879\u6709\u8981\u6c42\uff0c\u8bf7\u53c2\u8003\u4e0b\u9644\u7684\u6570\u636e\u5e93\u914d\u7f6e\uff0c\u4fee\u6539\u73af\u5883\u4e2d\u7684\u6570\u636e\u5e93\u914d\u7f6e\u6587\u4ef6\u3002

    [mysqld]\ndatadir=/var/lib/mysql\n\ndefault-storage-engine=INNODB\ncharacter_set_server=utf8mb4\nlower_case_table_names=1\nperformance_schema=off\ntable_open_cache=128\ntransaction_isolation=READ-COMMITTED\nmax_connections=1000\nmax_connect_errors=6000\nmax_allowed_packet=64M\ninnodb_file_per_table=1\ninnodb_buffer_pool_size=512M\ninnodb_flush_method=O_DIRECT\ninnodb_lock_wait_timeout=1800\n\nserver-id=1\nlog-bin=mysql-bin\nexpire_logs_days = 2\nbinlog_format=mixed\n\ncharacter-set-client-handshake = FALSE\ncharacter-set-server=utf8mb4\ncollation-server=utf8mb4_general_ci\ninit_connect='SET default_collation_for_utf8mb4=utf8mb4_general_ci'\n\nsql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION\n\nskip-name-resolve\n\n[mysql]\ndefault-character-set=utf8mb4\n\n[mysql.server]\ndefault-character-set=utf8mb4\n

    \u8bf7\u53c2\u8003\u6587\u6863\u4e2d\u7684\u5efa\u5e93\u8bed\u53e5\u521b\u5efa MeterSphere \u4f7f\u7528\u7684\u6570\u636e\u5e93\uff0cmetersphere-server \u670d\u52a1\u542f\u52a8\u65f6\u4f1a\u81ea\u52a8\u5728\u914d\u7f6e\u7684\u5e93\u4e2d\u521b\u5efa\u6240\u9700\u7684\u8868\u7ed3\u6784\u53ca\u521d\u59cb\u5316\u6570\u636e\u3002

    CREATE DATABASE `metersphere` /*!40100 DEFAULT CHARACTER SET utf8mb4 */\n

    "},{"location":"installation/online_installation/#4","title":"4 \u914d\u7f6e\u53cd\u5411\u4ee3\u7406","text":"

    \u5982\u679c\u4f7f\u7528\u4e86 Nginx\u3001HAProxy \u8fdb\u884c\u53cd\u5411\u4ee3\u7406\u914d\u7f6e\uff0c\u9700\u8981\u589e\u52a0\u5bf9 websocket \u7684\u652f\u6301\u3002\u4ee5 Nginx \u4e3a\u4f8b\uff0c\u53c2\u8003\u914d\u7f6e\u5982\u4e0b:

    server {\n    listen 80;\n    server_name demo.metersphere.com;\n    server_tokens off;\n    return 301 https://$host$request_uri;\n}\nserver {\n    listen 443 ssl;\n    # RSA certificate\n    ssl_certificate /etc/nginx/ssl/metersphere.com/fullchain.cer; # managed by Certbot\n    ssl_certificate_key /etc/nginx/ssl/metersphere.com/metersphere.com.key; # managed by Certbot\n    server_name  demo.metersphere.com;\n    proxy_connect_timeout       300;\n    proxy_send_timeout          300;\n    proxy_read_timeout          300;\n    send_timeout                300;\n    proxy_set_header Host $host;\n    proxy_set_header X-Forwarded-For $remote_addr;\n    proxy_set_header X-Forwarded-Host $server_name;\n    proxy_set_header X-Real-IP $remote_addr;\n    proxy_set_header X-Forwarded-Proto $scheme;\n    proxy_redirect http:// $scheme://;\n\n    location / {\n        proxy_pass http://ip:8081;\n        client_max_body_size 1000m;\n        #access_log off;\n\n        #\u914d\u7f6e websocket \u652f\u6301\n        proxy_http_version 1.1;\n        proxy_set_header Upgrade $http_upgrade;\n        proxy_set_header Connection \"upgrade\";\n    }\n}\n

    "},{"location":"installation/online_upgrade/","title":"\u5728\u7ebf\u5347\u7ea7","text":"

    \u5347\u7ea7\u524d\u4e00\u5b9a\u8981\u8fdb\u884c\u6570\u636e\u5e93\u5907\u4efd\uff0c\u8bf7\u53c2\u8003 MeterSphere \u6570\u636e\u5907\u4efd\u3002 - \u5982\u679c MeterSphere \u670d\u52a1\u5668\u53ef\u4ee5\u8bbf\u95ee\u4e92\u8054\u7f51\uff0c\u4e14\u5728\u7ebf\u5347\u7ea7\u7248\u672c\u8de8\u5ea6\u4e0d\u5927\uff0c\u53ef\u5728\u7ebf\u5347\u7ea7\u5230\u6700\u65b0\u6216\u6307\u5b9a\u7248\u672c\u3002 - \u5982\u679c\u5347\u7ea7\u7248\u672c\u8de8\u5ea6\u8f83\u5927\uff0c\u5982 V1.x \u5347\u7ea7\u81f3 V2.x \u7248\u672c\uff0c\u7531\u4e8e\u7248\u672c\u65b0\u589e\u53d8\u66f4\u529f\u80fd\u8f83\u591a\uff0c\u4e14 v2.8.1 \u4e4b\u540edocker \u4f7f\u7528\u7248\u672c\u5347\u7ea7\uff0c\u907f\u514d\u7f51\u7edc\u56e0\u7d20\u5f71\u54cd\u5efa\u8bae\u91c7\u7528\u79bb\u7ebf\u5347\u7ea7\u65b9\u5f0f\u3002\u8be6\u7ec6\u6b65\u9aa4\u53ef\u53c2\u8003\uff1a MeterSphere 1.20 LTS \u81f32.10 LTS \u5347\u7ea7\u6307\u5357

    "},{"location":"installation/online_upgrade/#1","title":"1 \u4e00\u952e\u5347\u7ea7\u81f3\u6700\u65b0\u7248\u672c","text":"
    #\u5347\u7ea7\u524d\u505c\u6b62\u670d\u52a1\nmsctl stop\n\n# \u5347\u7ea7\u81f3\u6700\u65b0\u7248\u672c\nmsctl upgrade\n\n# \u67e5\u770b MeterSphere \u72b6\u6001\nmsctl status\n
    "},{"location":"installation/online_upgrade/#2","title":"2 \u4e00\u952e\u5347\u7ea7\u81f3\u6307\u5b9a\u7248\u672c","text":"
    #\u5347\u7ea7\u524d\u505c\u6b62\u670d\u52a1\nmsctl stop\n\n# \u5347\u7ea7\u81f3\u6307\u5b9a\u7248\u672c\nmsctl upgrade v2.x.y\n\n# \u67e5\u770b MeterSphere \u72b6\u6001\nmsctl status\n
    "},{"location":"installation/pre_work/","title":"\u6574\u4f53\u90e8\u7f72\u89c4\u5212","text":"

    MeterSphere \u5927\u89c4\u6a21\u7684\u6027\u80fd\u538b\u6d4b\u4e3b\u8981\u53d6\u51b3\u4e8e\u4e09\u4e2a\u7ec4\u4ef6

    \u25a0 Node Controller: \u4e3a\u6027\u80fd\u6d4b\u8bd5\u63d0\u4f9b\u72ec\u7acb\u8282\u70b9\u7c7b\u578b\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60\uff0c \u63a5\u6536\u6765\u81ea\u7cfb\u7edf\u7684\u6027\u80fd\u6d4b\u8bd5\u4efb\u52a1\uff0c \u52a8\u6001\u7684\u542f\u52a8 JMeter \u5bb9\u5668\u5b8c\u6210\u6027\u80fd\u6d4b\u8bd5 \u25a0 Data Streaming: \u4ece Kafka \u4e2d\u83b7\u53d6\u6027\u80fd\u6d4b\u8bd5\u7ed3\u679c\u6570\u636e\u8fdb\u884c\u5904\u7406\u540e\u5b58\u5165 MySQL \u6570\u636e\u5e93 \u25a0 Kafka: \u63a5\u6536 JMeter \u4ea7\u751f\u7684\u6027\u80fd\u6d4b\u8bd5\u7ed3\u679c\u6570\u636e

    \u6240\u4ee5\u5982\u679c\u9700\u8981\u8fdb\u884c\u5927\u89c4\u6a21\uff085000 VU\u4ee5\u4e0a\uff09\u7684\u6027\u80fd\u6d4b\u8bd5\uff0c\u9700\u8981\u5bf9\u4e0a\u8ff0\u4e09\u4e2a\u7ec4\u4ef6\u8fdb\u884c\u6c34\u5e73\u6269\u5bb9\u3002\u5177\u4f53\u67b6\u6784\u5982\u4e0b\uff1a

    \u4f9d\u636e\u67b6\u6784\u6240\u793a\uff0c\u9700\u8981\u72ec\u7acb\u90e8\u7f72 Kafka \u96c6\u7fa4\u548c Data-Streaming \u96c6\u7fa4\uff08Kafka\u548cData-Streaming\u53ef\u4ee5\u90e8\u7f72\u5728\u4e00\u8d77\uff09\uff0c\u5982\u679c\u91c7\u7528\u72ec\u7acb\u4e3b\u673a\u538b\u6d4b\uff0c\u8fd8\u9700\u8981\u90e8\u7f72 Node-Controller \u96c6\u7fa4\u3002\u90e8\u7f72\u6b65\u9aa4:

    \u25a0 \u90e8\u7f72 Kafka \u96c6\u7fa4 \u25a0 \u90e8\u7f72 Data-Streaming \u96c6\u7fa4 \u25a0 \u90e8\u7f72 Node-Controller \u96c6\u7fa4

    "},{"location":"quick_start/api_test/","title":"\u4f7f\u7528\u63a5\u53e3\u6d4b\u8bd5","text":"

    MeterSphere \u63a5\u53e3\u6d4b\u8bd5\u6a21\u5757\u63d0\u4f9b\u4e86\u63a5\u53e3\u5b9a\u4e49\u3001\u63a5\u53e3\u81ea\u52a8\u5316\u7b49\u63a5\u53e3\u6d4b\u8bd5\u76f8\u5173\u529f\u80fd\u3002 \u7528\u6237\u53ef\u4ee5\u4f7f\u7528\u6811\u72b6\u591a\u7ea7\u6a21\u5757\u6765\u5206\u7ea7\u5206\u7ec4\u7ba1\u7406\u9879\u76ee\u4e0b\u7684\u63a5\u53e3\u5217\u8868\uff0c\u521b\u5efa\u6267\u884c\u63a5\u53e3\u7528\u4f8b\u6d4b\u8bd5\u63a5\u53e3\uff0c\u7ec4\u5408\u7f16\u6392\u591a\u4e2a\u63a5\u53e3\u7528\u4f8b\u8fdb\u884c\u573a\u666f\u81ea\u52a8\u5316\u6d4b\u8bd5\u3002

    "},{"location":"quick_start/api_test/#1","title":"1 \u63a5\u53e3\u5b9a\u4e49\u7ba1\u7406","text":"

    \u8fdb\u5165\u3010\u63a5\u53e3\u6d4b\u8bd5\u3011->\u3010\u63a5\u53e3\u5b9a\u4e49\u3011 \u9875\u9762\u3002

    "},{"location":"quick_start/api_test/#11-swagger","title":"1.1 \u5bfc\u5165 Swagger \u63a5\u53e3\u6587\u6863","text":"

    \u70b9\u51fb\u5de6\u4fa7\u3010\u66f4\u591a\u64cd\u4f5c\u3011\u4e0b\u62c9\u83dc\u5355\u4e2d\u7684\u3010\u5bfc\u5165\u3011\u6309\u94ae\u3002

    \u9009\u62e9 Swagger \u6570\u636e\u683c\u5f0f\uff0c\u9009\u62e9 MeterSphere \u6a21\u5757\uff0c\u9009\u62e9\u3010\u5bfc\u5165\u6a21\u5f0f\u3011\u4e3a\u4e0d\u8986\u76d6\uff0c\u9009\u62e9\u3010\u5bfc\u5165\u7248\u672c\u3011\uff0c\u9009\u62e9\u4f7f\u7528 URL \u5bfc\u5165\uff0c\u5e76\u586b\u5165 Swagger \u5bf9\u5e94\u7684 JSON \u5730\u5740 http://xxx.fit2cloud.com/v3/api-docs\uff0c\u5bfc\u5165 API \u63a5\u53e3\u3002

    \u3010\u7248\u672c\u7ba1\u7406\u3011\u4e3a\u4f01\u4e1a\u7248 X-Pack \u529f\u80fd\uff0c\u5982\u679c\u662f\u793e\u533a\u7248\uff0c\u6ca1\u6709 \u3010\u5bfc\u5165\u7248\u672c\u3011\u9009\u9879\u3002

    "},{"location":"quick_start/api_test/#12","title":"1.2 \u67e5\u770b\u63a5\u53e3\u5b9a\u4e49","text":"

    \u5bfc\u5165 Swagger \u6587\u4ef6\u4e4b\u540e\uff0c\u5728\u63a5\u53e3\u5217\u8868\u4e2d\u627e\u9700\u8981\u7f16\u8f91\u7684\u76ee\u6807\u63a5\u53e3 \uff0c\u70b9\u51fb\u64cd\u4f5c\u5217\u4e2d\u7684\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u67e5\u770b\u63a5\u53e3\u8be6\u60c5\u3002

    "},{"location":"quick_start/api_test/#13","title":"1.3 \u6dfb\u52a0\u6d4b\u8bd5\u73af\u5883","text":"

    \u63a5\u53e3\u5217\u8868\u4e2d\u4ec5\u8bb0\u5f55\u4e86\u63a5\u53e3\u7684\u76f8\u5bf9 URL\uff0c\u5f53\u6211\u4eec\u9700\u8981\u5bf9\u67d0\u4e2a\u63a5\u53e3\u8fdb\u884c\u6d4b\u8bd5\u65f6\uff0c\u9700\u8981\u5148\u5728\u8be5\u9879\u76ee\u4e2d\u6dfb\u52a0\u9488\u5bf9\u8be5\u9879\u76ee\u7684\u6d4b\u8bd5\u73af\u5883\u4fe1\u606f\u3002 \u70b9\u51fb\u5de6\u4fa7\u83dc\u5355\u680f\u3010\u7cfb\u7edf\u8bbe\u7f6e\u3011->\u3010\u9879\u76ee\u7ba1\u7406\u3011 \u9875\u9762\u3002\u70b9\u51fb\u3010\u521b\u5efa\u73af\u5883\u3011 \u6309\u94ae\uff0c\u586b\u5199\u73af\u5883\u540d\u79f0\u53ca\u73af\u5883\u57df\u540d\uff0c\u70b9\u51fb\u786e\u5b9a\u4fdd\u5b58\u6d4b\u8bd5\u73af\u5883\u4fe1\u606f\u3002

    "},{"location":"quick_start/api_test/#14","title":"1.4 \u8c03\u8bd5\u5355\u4e2a\u63a5\u53e3","text":"

    \u5982 /signin \u767b\u5f55\u63a5\u53e3\u8c03\u8bd5\uff0c\u70b9\u51fb\u64cd\u4f5c\u5217\u4e2d\u7684 \u3010\u7f16\u8f91\u3011 \u6309\u94ae\uff0c\u8fdb\u5165\u63a5\u53e3\u8be6\u60c5\u9875\u9762\u3002

    \u70b9\u51fb\u754c\u9762\u4e0a\u65b9\u7684\u3010TEST\u3011\u6309\u94ae\uff0c\u8fdb\u5165\u63a5\u53e3\u6d4b\u8bd5\u9875\u9762\u3002\u5728\u63a5\u53e3\u6d4b\u8bd5\u9875\u9762\u9009\u62e9\u63a5\u53e3\u6267\u884c\u73af\u5883\uff0c\u5e76\u586b\u5199\u63a5\u53e3\u6240\u9700\u7684\u53c2\u6570\u540e\uff0c\u70b9\u51fb\u3010\u6d4b\u8bd5\u3011\u6309\u94ae\u53d1\u9001\u8be5\u63a5\u53e3\u8bf7\u6c42\u3002

    \u5f53\u63a5\u53e3\u8bf7\u6c42\u5b8c\u6210\u540e\uff0c\u53ef\u4ee5\u5728\u4e0b\u65b9\u7684\u54cd\u5e94\u5185\u5bb9\u4e2d\u67e5\u770b\u5230\u672c\u6b21\u63a5\u53e3\u8bf7\u6c42\u7684\u54cd\u5e94\u4fe1\u606f\u3002

    "},{"location":"quick_start/api_test/#2","title":"2 \u521b\u5efa\u5355\u63a5\u53e3\u7528\u4f8b","text":"

    \u8fdb\u5165\u3010\u63a5\u53e3\u6d4b\u8bd5\u3011->\u3010\u63a5\u53e3\u5b9a\u4e49\u3011\u9875\u9762\u3002

    "},{"location":"quick_start/api_test/#21","title":"2.1 \u65b0\u5efa\u5355\u63a5\u53e3\u7528\u4f8b","text":"

    \u5982\u7ed9 /signin \u767b\u5f55\u63a5\u53e3\u6dfb\u52a0\u7528\u4f8b\uff0c\u70b9\u51fb\u64cd\u4f5c\u5217\u4e2d\u7684\u3010CASE\u3011\u6309\u94ae\uff0c\u6253\u5f00\u8be5\u63a5\u53e3\u7684\u7528\u4f8b\u5217\u8868\u9875\u9762\uff0c\u70b9\u51fb\u3010\u6dfb\u52a0\u3011\u6309\u94ae\uff0c\u6dfb\u52a0\u7528\u4f8b\u3002

    \u8f93\u5165\u63a5\u53e3\u7528\u4f8b\u7684\u540d\u79f0\u53ca\u8bf7\u6c42\u63a5\u53e3\u6240\u9700\u7684\u5176\u4ed6\u53c2\u6570\u540e\uff0c\u70b9\u51fb\u53f3\u4e0a\u89d2\u7684\u3010\u4fdd\u5b58\u3011\u6309\u94ae\u4fdd\u5b58\u8be5\u63a5\u53e3\u7528\u4f8b\u3002

    "},{"location":"quick_start/api_test/#22","title":"2.2 \u6d4b\u8bd5\u5355\u63a5\u53e3\u7528\u4f8b","text":"

    \u5728\u5355\u63a5\u53e3\u7528\u4f8b\u53f3\u4e0a\u65b9\u9009\u62e9\u3010\u6267\u884c\u73af\u5883\u3011\uff0c\u70b9\u51fb\u3010\u6267\u884c\u3011\u6309\u94ae\u8c03\u8bd5\u5355\u63a5\u53e3\u7528\u4f8b\uff0c\u6267\u884c\u7ed3\u675f\u540e\uff0c\u5c55\u5f00\u7528\u4f8b\u8be6\u60c5\u67e5\u770b\u54cd\u5e94\u5185\u5bb9\u3002

    "},{"location":"quick_start/api_test/#3","title":"3 \u521b\u5efa\u573a\u666f\u7528\u4f8b","text":"

    \u8fdb\u5165\u3010\u63a5\u53e3\u6d4b\u8bd5\u3011->\u3010\u63a5\u53e3\u81ea\u52a8\u5316\u3011\u9875\u9762\u3002

    "},{"location":"quick_start/api_test/#31","title":"3.1 \u65b0\u5efa\u573a\u666f\u7528\u4f8b","text":"

    \u5728\u573a\u666f\u7528\u4f8b\u5217\u8868\u9875\u9762\uff0c\u70b9\u51fb\u5de6\u4fa7\u7684\u6a21\u5757\u6811\u65b0\u5efa MeterSphere \u6a21\u5757\u3002

    \u70b9\u51fb\u3010\u521b\u5efa\u573a\u666f\u3011\u6309\u94ae\u65b0\u5efa\u4e00\u4e2a \u83b7\u53d6\u7528\u6237\u5217\u8868 \u7684\u573a\u666f\uff0c\u8be5\u573a\u666f\u7684\u76ee\u7684\u662f\u83b7\u53d6\u5f53\u524d MeterSphere \u7cfb\u7edf\u6240\u6709\u7684\u7528\u6237\u5217\u8868\u4fe1\u606f\uff0c\u56e0\u4e3a\u83b7\u53d6\u7528\u6237\u5217\u8868\u63a5\u53e3\u9700\u8981\u767b\u5f55\u72b6\u6001\u6216\u8005\u63a5\u53e3\u7b7e\u540d\u8ba4\u8bc1\u624d\u53ef\u4ee5\u6b63\u5e38\u8bf7\u6c42\uff0c\u8fd9\u91cc\u91c7\u7528\u7c7b\u4f3c Swagger \u8c03\u8bd5\u7684\u65b9\u5f0f\uff0c\u5148\u83b7\u53d6\u767b\u5f55\u6001\uff0c\u518d\u6267\u884c\u83b7\u53d6\u7528\u6237\u5217\u8868\u63a5\u53e3\uff0c\u8fd9\u91cc\u9700\u8981\u5206\u522b\u5bfc\u5165\u767b\u5f55\u548c\u83b7\u53d6\u7528\u6237\u5217\u8868\u4e24\u4e2a\u63a5\u53e3\uff0c\u540c\u65f6\u9700\u8981\u52fe\u9009\u4e0a\u3010\u5171\u4eabcookie\u3011\uff0c\u586b\u5199\u5b8c\u573a\u666f\u57fa\u672c\u4fe1\u606f\u540e\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u6309\u94ae\u4fdd\u5b58\u8be5\u573a\u666f\u3002

    "},{"location":"quick_start/api_test/#32","title":"3.2 \u6dfb\u52a0\u573a\u666f\u6b65\u9aa4","text":"

    \u9996\u5148\u52fe\u9009\u3010\u5171\u4eabcookie\u3011\u6309\u94ae\uff0c\u7136\u540e\u70b9\u51fb\u573a\u666f\u8be6\u60c5\u4e2d\u53f3\u4e0b\u89d2\u7684\u3010+\u3011\u6dfb\u52a0\u573a\u666f\u6b65\u9aa4\u6309\u94ae\uff0c\u5728\u573a\u666f\u4e2d\u4e00\u6b21\u6dfb\u52a0\u5982\u4e0b\u51e0\u4e2a\u6b65\u9aa4\u3002

    \u9009\u62e9\u3010\u63a5\u53e3\u5217\u8868\u5bfc\u5165\u3011\u6b65\u9aa4\uff0c\u5728\u5f39\u51fa\u7684\u63a5\u53e3\u5217\u8868\u4e2d\u627e\u5230 \u767b\u5f55 \u63a5\u53e3\u8fdb\u884c\u6dfb\u52a0\u3002

    \u5728\u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u53ef\u4ee5\u76f4\u63a5\u4fee\u6539\u590d\u5236\u8fc7\u6765\u7684\u63a5\u53e3\u505a\u53c2\u6570\u4fee\u6539\u3002\u5982\u6b64\u5904\u7684 /signin \u76f8\u5173\u53c2\u6570\u53ef\u76f4\u63a5\u7f16\u8f91\u3002

    \u5c55\u5f00 /signin \u767b\u5f55\u63a5\u53e3\u7684\u8bf7\u6c42\u53c2\u6570\uff0c\u5207\u6362\u5230\u3010\u540e\u7f6e\u64cd\u4f5c\u3011\uff0c\u5728\u8be5\u9875\u9762\u6dfb\u52a0\u4e00\u4e2a\u540d\u79f0\u4e3a \u83b7\u53d6CSRF-TOKEN\u7684\u63d0\u53d6\u6b65\u9aa4\uff0c\u91c7\u7528\u3010\u63a8\u8350 JSONPath \u63d0\u53d6\u3011\u65b9\u5f0f\u6dfb\u52a0\u4e00\u4e2a\u63d0\u53d6\uff0c\u5728\u5f39\u51fa\u7684\u54cd\u5e94\u7ed3\u679c Json \u9875\u9762\u4e2d\uff0c\u4e0b\u62c9\u5230\u6700\u5e95\u5c42\uff0c\u52fe\u9009\u540d\u79f0\u4e3acsrfToken\u548csessionId\u7684\u5c5e\u6027\uff0cJSONPath \u8868\u8fbe\u5f0f\u5206\u522b\u4e3a $.data.csrfToken\u548c$.data.sessionId\u3002

    \u6ce8\u610f

    \u5f53\u524d\u6b65\u9aa4\u9700\u5148\u624b\u52a8\u6267\u884c\u6210\u529f\uff0c\u624d\u53ef\u4ee5\u4f7f\u7528\u63a8\u8350 JSONPath \u63d0\u53d6\u65b9\u5f0f\u3002

    \u518d\u6b21\u6dfb\u52a0\u4e00\u4e2a \u3010\u63a5\u53e3\u5217\u8868\u5bfc\u5165\u3011 \u6b65\u9aa4\uff0c\u9009\u62e9 getUserList \u63a5\u53e3\u3002\u4fee\u6539\u8bf7\u6c42\u5934\u91cc\u7684CSRF-TOKEN\u53c2\u6570\uff0c\u8bbe\u7f6e\u4e3a${csrfToken}\uff0cX-AUTH-TOKEN\u53c2\u6570\u503c\u8bbe\u7f6e\u4e3a${sessionId}\uff0c\u4fee\u6539\u8be5\u63a5\u53e3\u8bf7\u6c42\u4e2d\u7684REST\u53c2\u6570 goPage \u4e3a1\uff0cpageSize \u4e3a10\u3002

    "},{"location":"quick_start/api_test/#3_1","title":"3 \u573a\u666f\u8c03\u8bd5","text":"

    \u573a\u666f\u6b65\u9aa4\u6dfb\u52a0\u5b8c\u6210\u540e\uff0c\u70b9\u51fb\u573a\u666f\u6b65\u4e0a\u65b9\u7684\u7684\u3010\u8c03\u8bd5\u3011\u6309\u94ae\uff0c\u53ef\u5728\u5217\u8868\u67e5\u770b\u5404\u4e2a\u6b65\u9aa4\u6267\u884c\u72b6\u6001\uff0c\u5c55\u5f00\u53ef\u67e5\u770b\u63a5\u53e3\u6267\u884c\u7684\u8be6\u7ec6\u4fe1\u606f\u3002

    \u70b9\u51fb\u3010\u8c03\u8bd5\u5386\u53f2\u3011\u4e5f\u53ef\u4ee5\u76f4\u63a5\u67e5\u770b\u8be6\u7ec6\u7684\u62a5\u544a\u4fe1\u606f\u3002

    "},{"location":"quick_start/api_test/#4","title":"4 \u6d4b\u8bd5\u62a5\u544a\u751f\u6210\u548c\u67e5\u770b","text":"

    \u70b9\u51fb\u573a\u666f\u6b65\u4e0a\u65b9\u7684\u3010\u8c03\u8bd5\u3011 \u6309\u94ae\u65c1\u8fb9\u7684\u3010V\u3011\uff0c\u9009\u62e9\u3010\u751f\u6210\u62a5\u544a\u3011\uff0c\u751f\u6210\u62a5\u544a\u548c\u67e5\u770b\u573a\u666f\u62a5\u544a\u7684\u6b65\u9aa4\u8be6\u7ec6\u4fe1\u606f\u3002

    \u4e5f\u53ef\u4ee5\u76f4\u63a5\u5728\u3010\u6d4b\u8bd5\u62a5\u544a\u3011\u5217\u8868\u70b9\u51fb\u53f3\u4fa7\u3010\u62a5\u544a\u8be6\u60c5\u3011\u67e5\u770b\u62a5\u544a\u8be6\u7ec6\u4fe1\u606f\u3002

    \u5728\u62a5\u544a\u5217\u8868\u4e2d\u9009\u62e9\u62a5\u544a\u3010\u8be6\u60c5\u3011\u6309\u94ae\u6253\u5f00\u3010\u6d4b\u8bd5\u62a5\u544a\u3011\u9875\u9762\uff0c\u5728\u9875\u9762\u4e2d\u53ef\u4ee5\u67e5\u770b\u62a5\u544a\u8be6\u60c5\uff0c\u5206\u4eab\u548c\u5bfc\u51fa\u62a5\u544a\u3002

    "},{"location":"quick_start/create_project/","title":"\u521b\u5efa\u9879\u76ee","text":"

    \u5728 MeterSphere \u4e2d\uff0c\u6d4b\u8bd5\u7528\u4f8b\u3001\u6d4b\u8bd5\u8ba1\u5212\u3001\u63a5\u53e3\u6d4b\u8bd5\u3001UI \u6d4b\u8bd5\u53ca\u6027\u80fd\u6d4b\u8bd5\u7b49\u7684\u7ba1\u7406\u5747\u901a\u8fc7\u9879\u76ee\u8fdb\u884c\u5206\u6743\u5206\u57df\u67e5\u770b\u548c\u7ba1\u7406\uff0c\u4f7f\u7528MeterSphere \u8fdb\u884c\u6d4b\u8bd5\uff0c\u767b\u5f55\u8fdb\u5165\u5de5\u4f5c\u7a7a\u95f4\u540e\uff0c\u9996\u5148\u9700\u8981\u521b\u5efa\u9879\u76ee\uff0c\u5728\u9879\u76ee\u4e0b\u521b\u5efa\u7ba1\u7406\u64cd\u4f5c\u529f\u80fd\u7528\u4f8b\u3001\u6d4b\u8bd5\u8ba1\u5212\u3001\u63a5\u53e3\u6d4b\u8bd5\u3001UI \u6d4b\u8bd5\u3001\u6027\u80fd\u6d4b\u8bd5\u7b49\u3002\u8fdb\u4e00\u6b65\u7684\u7ba1\u7406\u6a21\u578b\u8bf4\u660e\u8bf7\u53c2\u8003\u7ba1\u7406\u6a21\u578b\u3002

    \u5728\u5de6\u4fa7\u83dc\u5355\u4e2d\u70b9\u51fb\u3010\u7cfb\u7edf\u8bbe\u7f6e\u3011\uff0c\u5728\u6253\u5f00\u7684\u9875\u9762\u5de6\u4fa7\u4e8c\u7ea7\u83dc\u5355\u4e2d\uff0c\u9009\u62e9\u3010\u5de5\u4f5c\u7a7a\u95f4\u3011\u4e0b\u3010\u9879\u76ee\u7ba1\u7406\u3011\u83dc\u5355\uff0c\u6253\u5f00\u3010\u9879\u76ee\u7ba1\u7406\u3011\u9875\u9762\u3002

    \u5728\u3010\u9879\u76ee\u7ba1\u7406\u3011\u9875\u9762\uff0c\u70b9\u51fb\u3010\u521b\u5efa\u9879\u76ee\u3011 \u6309\u94ae\uff0c\u6253\u5f00\u3010\u521b\u5efa\u9879\u76ee\u3011\u5bf9\u8bdd\u6846\uff0c\u5728\u5bf9\u8bdd\u6846\u4e2d\u8f93\u5165\u9879\u76ee\u7684\u57fa\u672c\u4fe1\u606f\u540e\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u6309\u94ae\u521b\u5efa\u4e00\u4e2a\u65b0\u9879\u76ee\u3002

    "},{"location":"quick_start/load_test/","title":"\u4f7f\u7528\u6027\u80fd\u6d4b\u8bd5","text":"

    MeterSphere \u6027\u80fd\u6d4b\u8bd5\u6a21\u5757\u652f\u6301\u901a\u8fc7\u5df2\u6709\u7684\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u3001\u573a\u666f\u6d4b\u8bd5\u521b\u5efa\u3001\u4e0a\u4f20 JMeter JMX \u505a\u6027\u80fd\u6d4b\u8bd5\uff0c\u5e76\u6309\u9700\u8bbe\u7f6e\u5e76\u53d1\u7528\u6237\u6570\u7b49\u6d4b\u8bd5\u53c2\u6570\uff0c\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u5e76\u5b9e\u65f6\u67e5\u770b\u6027\u80fd\u6d4b\u8bd5\u62a5\u544a\u3002

    "},{"location":"quick_start/load_test/#1","title":"1 \u521b\u5efa\u6d4b\u8bd5\u8d44\u6e90\u6c60","text":"

    \u901a\u8fc7\u5b89\u88c5\u5305\u5b89\u88c5 MeterSphere \u540e\uff0c\u7cfb\u7edf\u9ed8\u8ba4\u4f7f\u7528\u5f53\u524d\u8282\u70b9\u521b\u5efa\u4e86\u540d\u4e3a\u3010LOCAL\u3011\u6d4b\u8bd5\u8d44\u6e90\u6c60\u3002\u5173\u4e8e\u6d4b\u8bd5\u8d44\u6e90\u6c60\u7684\u4f5c\u7528\u8bf7\u53c2\u8003 FAQ\u3002

    \u5982\u679c\u9700\u8981\u521b\u5efa\u65b0\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60\uff0c\u6216\u5411\u5df2\u6709\u8d44\u6e90\u6c60\u4e2d\u6dfb\u52a0\u8282\u70b9\uff0c\u8bf7\u53c2\u8003 \u5982\u4f55\u5411\u6d4b\u8bd5\u8d44\u6e90\u6c60\u4e2d\u6dfb\u52a0\u8282\u70b9\uff1f

    "},{"location":"quick_start/load_test/#2-url","title":"2 \u4fee\u6539\u5f53\u524d\u7ad9\u70b9 URL","text":"

    \u6027\u80fd\u6d4b\u8bd5\u6267\u884c\u8fc7\u7a0b\u4e2d node-controller \u8282\u70b9\u9700\u8981\u901a\u8fc7\u914d\u7f6e\u7684\u3010\u5f53\u524d\u7ad9\u70b9URL\u3011 \u4e0b\u8f7d JMX \u7b49\u6d4b\u8bd5\u8d44\u6e90\u6587\u4ef6\u3002\u5728\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u524d\u9700\u8981\u914d\u7f6e\u5e76\u68c0\u67e5\u6d4b\u8bd5\u8d44\u6e90\u6c60\u4e2d\u7684\u8282\u70b9\u53ef\u4ee5\u6b63\u5e38\u8bbf\u95ee\u5230\u8be5 URL\uff0cURL \u503c\u4e00\u822c\u4e3a\u901a\u8fc7\u6d4f\u89c8\u5668\u8bbf\u95ee MeterSphere \u7684\u5730\u5740\u3002

    "},{"location":"quick_start/load_test/#3","title":"3 \u521b\u5efa\u6027\u80fd\u6d4b\u8bd5","text":"

    \u8fdb\u5165\u3010\u6027\u80fd\u6d4b\u8bd5\u3011-\u3010\u6d4b\u8bd5\u3011\u9875\u9762\u3002

    \u5728\u6027\u80fd\u6d4b\u8bd5\u5217\u8868\u4e2d\u70b9\u51fb\u3010\u521b\u5efa\u6027\u80fd\u6d4b\u8bd5\u3011\uff0c\u5728\u3010\u573a\u666f\u914d\u7f6e\u3011\u70b9\u51fb\u3010\u5f15\u7528\u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u3011\uff0c\u5c06\u5df2\u6709\u7684\u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u6dfb\u52a0\u5230\u6027\u80fd\u6d4b\u8bd5\u4e2d\u3002

    "},{"location":"quick_start/load_test/#4","title":"4 \u8c03\u6574\u538b\u529b\u914d\u7f6e","text":"

    \u5728\u538b\u529b\u914d\u7f6e\u9875\u9762\u9009\u62e9\u7cfb\u7edf\u914d\u7f6e\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60\u3002 \u70b9\u51fb\u5c55\u5f00\u7b2c\u4e00\u4e2a\u7ebf\u7a0b\u7ec4\u7684\u914d\u7f6e\u9875\u9762\uff0c\u586b\u5165\u5e76\u53d1\u53c2\u6570\u3002 \u5177\u4f53\u7684\u5e76\u53d1\u914d\u7f6e\u5982\u4e0b\uff1a

    • \u5e76\u53d1\u7528\u6237\u6570\uff1a10
    • \u9009\u62e9\u3010\u6309\u6301\u7eed\u65f6\u95f4\u3011\u6a21\u5f0f
    • \u538b\u6d4b\u65f6\u957f\uff1a5\u5206\u949f
    • RPS \u4e0a\u9650\u4e0d\u8bbe\u7f6e
    • \u5728\u573a\u666f\u914d\u7f6e\u4e2d\u9009\u62e9\u3010ConcurrencyThreadGroup\u3011\u52a0\u538b\u6a21\u578b\uff0c\u8bbe\u7f6e10\u79d2\u5185\u52065\u6b65\u589e\u52a0\u5e76\u53d1\u7528\u6237

    "},{"location":"quick_start/load_test/#5","title":"5 \u6267\u884c\u5e76\u67e5\u770b\u62a5\u544a","text":"

    \u70b9\u51fb\u6027\u80fd\u6d4b\u8bd5\u914d\u7f6e\u9875\u9762\u7684\u3010\u4fdd\u5b58\u5e76\u6267\u884c\u3011\u6309\u94ae\uff0c\u7cfb\u7edf\u81ea\u52a8\u8fdb\u5165\u6027\u80fd\u6d4b\u8bd5\u6d4b\u8bd5\u62a5\u544a\u9875\u9762\u3002\u5f53\u6536\u5230\u6d4b\u8bd5\u7ed3\u679c\u6570\u636e\u540e\uff0c\u62a5\u544a\u9875\u9762\u5c06\u81ea\u52a8\u66f4\u65b0\u3002

    "},{"location":"quick_start/quick_start/","title":"\u4e00\u952e\u90e8\u7f72","text":""},{"location":"quick_start/quick_start/#1","title":"1 \u4e00\u952e\u90e8\u7f72","text":"

    \u51c6\u5907\u597d\u90e8\u7f72\u670d\u52a1\u5668\u540e\uff0c\u53ef\u901a\u8fc7 MeterSphere \u5feb\u901f\u5b89\u88c5\u811a\u672c\u4e00\u952e\u5feb\u901f\u90e8\u7f72\u3002\u4e00\u952e\u5b89\u88c5\u91c7\u7528\u9ed8\u8ba4\u5b89\u88c5\u53c2\u6570\uff0c\u66f4\u591a\u6709\u5173\u79bb\u7ebf\u90e8\u7f72\u3001\u5bb9\u5668\u90e8\u7f72\u3001\u5206\u5e03\u5f0f\u90e8\u7f72\u7b49\u65b9\u5f0f\u53ef\u67e5\u770b\u3010\u5b89\u88c5\u90e8\u7f72\u3011\u7ae0\u8282\u5185\u5bb9\u3002

    \u90e8\u7f72\u670d\u52a1\u5668\u8981\u6c42\uff1a

    • \u64cd\u4f5c\u7cfb\u7edf\u8981\u6c42\uff1aCentOS 7.x
    • CPU\u5185\u5b58\u8981\u6c42\uff1a\u6700\u4f4e\u8981\u6c42 4C8G\uff0c\u63a8\u8350 8C16G
    • \u90e8\u7f72\u76ee\u5f55\u7a7a\u95f4\uff08\u9ed8\u8ba4/opt\u76ee\u5f55\uff09\u8981\u6c42\uff1a50G
    • \u7f51\u7edc\u8981\u6c42\uff1a\u53ef\u8bbf\u95ee\u4e92\u8054\u7f51

    \u4ee5 root \u7528\u6237 ssh \u767b\u5f55\u90e8\u7f72\u76ee\u6807\u670d\u52a1\u5668\uff0c\u6267\u884c\u4ee5\u4e0b\u811a\u672c\u8fdb\u884c\u4e00\u952e\u5b89\u88c5:

    curl -sSL https://resource.fit2cloud.com/metersphere/metersphere/releases/latest/download/quick_start.sh | bash\n

    \u5b89\u88c5\u6210\u529f\u540e\uff0c\u5ba2\u6237\u7aef\u901a\u8fc7\u6d4f\u89c8\u5668\u8bbf\u95ee\u4ee5\u4e0b\u5730\u5740\uff0c\u8f93\u5165\u7528\u6237\u540d\u548c\u5bc6\u7801\uff0c\u5373\u53ef\u5f00\u59cb\u4f7f\u7528 MeterSphere\u3002

    \u5730\u5740: http://\u76ee\u6807\u670d\u52a1\u5668IP\u5730\u5740:8081\n\u9ed8\u8ba4\u7528\u6237\u540d: admin\n\u9ed8\u8ba4\u5bc6\u7801: metersphere\n

    "},{"location":"quick_start/quick_start/#2","title":"2 \u754c\u9762\u8bf4\u660e","text":"

    \u8fdb\u5165 MeterSphere \u4e3b\u754c\u9762\u540e\u53ef\u4ee5\u770b\u5230\u754c\u9762\u5de6\u8fb9\u662f\u5bfc\u822a\u680f\uff0c\u5305\u62ec\u3010\u5de5\u4f5c\u53f0\u3011\u3010\u6d4b\u8bd5\u8ddf\u8e2a\u3011\u3010\u63a5\u53e3\u6d4b\u8bd5\u3011\u3010UI \u6d4b\u8bd5\u3011\u3010\u6027\u80fd\u6d4b\u8bd5\u3011\u3010\u62a5\u8868\u7edf\u8ba1\u3011\u3010\u9879\u76ee\u8bbe\u7f6e\u3011\u3010\u7cfb\u7edf\u8bbe\u7f6e\u3011\u516b\u4e2a\u6a21\u5757\uff0c\u5176\u4e2d UI \u6d4b\u8bd5\u662f\u4f01\u4e1a\u7248\u672c X-Pack\u7684\u529f\u80fd\uff0c\u754c\u9762\u4e0a\u65b9\u4ee5 Tab \u9875\u65b9\u5f0f\u5c55\u793a\u5f53\u524d\u6a21\u5757\u7684\u5177\u4f53\u529f\u80fd\u3002

    "},{"location":"quick_start/test_track/","title":"\u4f7f\u7528\u6d4b\u8bd5\u8ddf\u8e2a","text":"

    MeterSphere \u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757\u652f\u6301\u6d4b\u8bd5\u7528\u4f8b\u7ba1\u7406\u3001\u6d4b\u8bd5\u7528\u4f8b\u8bc4\u5ba1\u3001\u6d4b\u8bd5\u8ba1\u5212\u8ddf\u8e2a\u7b49\u3002

    \u7528\u6237\u53ef\u4ee5\u4f7f\u7528\u6811\u72b6\u591a\u7ea7\u6a21\u5757\u6765\u5206\u7ea7\u5206\u7ec4\u7ba1\u7406\u9879\u76ee\u4e0b\u7684\u6d4b\u8bd5\u7528\u4f8b\uff0c\u5bf9\u5df2\u6dfb\u52a0\u7684\u6d4b\u8bd5\u7528\u4f8b\u8fdb\u884c\u8bc4\u5ba1\uff0c\u521b\u5efa\u6d4b\u8bd5\u8ba1\u5212\uff0c\u5c06\u5f85\u6d4b\u529f\u80fd\u6d4b\u8bd5\u7528\u4f8b\u3001\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u3001UI \u6d4b\u8bd5\u7528\u4f8b\u53ca\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u6dfb\u52a0\u5230\u6d4b\u8bd5\u8ba1\u5212\uff0c\u6267\u884c\u6d4b\u8bd5\u8ba1\u5212\uff0c\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u3002

    "},{"location":"quick_start/test_track/#1","title":"1 \u6dfb\u52a0\u6d4b\u8bd5\u7528\u4f8b","text":"

    \u5728\u5de6\u4fa7\u83dc\u5355\u680f\u4e2d\u9009\u62e9\u3010\u6d4b\u8bd5\u8ddf\u8e2a\u3011\uff0c\u5728\u6253\u5f00\u7684\u9875\u9762\u9876\u90e8\u83dc\u5355\u4e2d\u9009\u62e9\u3010\u529f\u80fd\u7528\u4f8b\u3011\u6253\u5f00\u3010\u7528\u4f8b\u5217\u8868\u3011\u9875\u9762\u3002

    "},{"location":"quick_start/test_track/#11","title":"1.1 \u521b\u5efa\u6a21\u5757","text":"

    MeterSphere \u901a\u8fc7\u6a21\u5757\u6811\u7684\u65b9\u5f0f\u7ec4\u7ec7\u7ba1\u7406\u6d4b\u8bd5\u7528\u4f8b\uff0c\u7528\u6237\u53ef\u4ee5\u5728\u5de6\u4fa7\u67e5\u770b\u5230\u5f53\u524d\u9879\u76ee\u6d4b\u8bd5\u7528\u4f8b\u7684\u6a21\u5757\u6811\u3002\u70b9\u51fb\u5de6\u4fa7\u7684\u6a21\u5757\u6811\u4e2d\u7684\u3010\u6dfb\u52a0\u5b50\u6a21\u5757\u3011\u6309\u94ae\uff0c\u53ef\u4e3a\u8be5\u9879\u76ee\u6dfb\u52a0\u6a21\u5757\u3002

    "},{"location":"quick_start/test_track/#12","title":"1.2 \u8868\u5355\u65b9\u5f0f\u521b\u5efa\u7528\u4f8b","text":"

    \u521b\u5efa\u597d\u6a21\u5757\u540e\uff0c\u5373\u53ef\u5728\u5404\u4e2a\u6a21\u5757\u4e2d\u6dfb\u52a0\u6d4b\u8bd5\u7528\u4f8b\u3002\u5728\u3010\u7528\u4f8b\u5217\u8868\u3011\u9875\u9762\u4e2d\uff0c\u70b9\u51fb\u3010\u7528\u4f8b\u5217\u8868\u3011\u6807\u7b7e\u65c1\u7684\u3010+\u3011\u6309\u94ae\uff0c\u5728\u4e0b\u62c9\u83dc\u5355\u4e2d\u9009\u62e9\u3010\u65b0\u5efa\u7528\u4f8b\u3011 \u6309\u94ae\u6253\u5f00\u3010\u65b0\u5efa\u7528\u4f8b\u3011\u9875\u9762\u3002

    \u5728\u6253\u5f00\u7684\u3010\u65b0\u5efa\u7528\u4f8b\u3011\u9875\u9762\u4e2d\uff0c\u586b\u5199\u7528\u4f8b\u540d\u79f0\u3001\u524d\u7f6e\u6761\u4ef6\u3001\u6d4b\u8bd5\u6b65\u9aa4\u7b49\u8be6\u7ec6\u4fe1\u606f\uff0c\u4e4b\u540e\u70b9\u51fb\u3010\u4fdd\u5b58\u3011 \u6309\u94ae\u5b8c\u6210\u7528\u4f8b\u521b\u5efa\u3002

    "},{"location":"quick_start/test_track/#13","title":"1.3 \u8868\u5355\u65b9\u5f0f\u67e5\u770b\u7528\u4f8b","text":"

    \u5728\u3010\u7528\u4f8b\u5217\u8868\u3011\u9875\u9762\u4e2d\uff0c\u70b9\u51fb\u3010\u67e5\u770b\u3011\u6309\u94ae\uff0c\u5373\u53ef\u67e5\u770b\u8be5\u7528\u4f8b\u3002

    "},{"location":"quick_start/test_track/#14","title":"1.4 \u8111\u56fe\u65b9\u5f0f\u521b\u5efa\u7528\u4f8b","text":"

    \u9664\u4e86\u901a\u8fc7\u586b\u5199\u8868\u5355\u7684\u65b9\u5f0f\u7f16\u8f91\u3001\u5c55\u793a\u7528\u4f8b\uff0c\u8fd8\u53ef\u4ee5\u901a\u8fc7\u8111\u56fe\u7684\u65b9\u5f0f\u5b9e\u73b0\u6b64\u529f\u80fd\u3002\u5728\u3010\u7528\u4f8b\u5217\u8868\u3011\u9875\u9762\u70b9\u51fb\u3010\u8111\u56fe\u3011\u6807\u7b7e\u5207\u6362\u5230\u8111\u56fe\u5c55\u793a\u6a21\u5f0f\uff0c\u901a\u8fc7\u5728\u6a21\u5757\u4e0b\u6dfb\u52a0\u5b50\u8282\u70b9\u5e76\u6dfb\u52a0\u6807\u7b7e\u7684\u65b9\u5f0f\u521b\u5efa\u7528\u4f8b\u3002

    "},{"location":"quick_start/test_track/#2","title":"2 \u53d1\u8d77\u7528\u4f8b\u8bc4\u5ba1","text":"

    \u5728\u9876\u90e8\u83dc\u5355\u680f\u4e2d\uff0c\u9009\u62e9\u3010\u7528\u4f8b\u8bc4\u5ba1\u3011\u6253\u5f00\u3010\u7528\u4f8b\u8bc4\u5ba1\u3011\u9875\u9762\u3002

    "},{"location":"quick_start/test_track/#21","title":"2.1 \u521b\u5efa\u7528\u4f8b\u8bc4\u5ba1","text":"

    \u5728\u3010\u7528\u4f8b\u8bc4\u5ba1\u3011\u5217\u8868\u9875\u9762\u4e2d\uff0c\u70b9\u51fb\u5217\u8868\u4e0a\u65b9\u7684\u3010\u521b\u5efa\u7528\u4f8b\u8bc4\u5ba1\u3011\u6309\u94ae\uff0c\u5728\u6253\u5f00\u7684\u9875\u9762\u4e2d\u8f93\u5165\u7528\u4f8b\u8bc4\u5ba1\u4efb\u52a1\u540d\u79f0\u3001\u8bc4\u5ba1\u4eba\u7b49\u4fe1\u606f\u540e\uff0c\u70b9\u51fb\u4e0b\u65b9\u7684\u3010\u786e\u5b9a\u3011\u6309\u94ae\u5b8c\u6210\u7528\u4f8b\u8bc4\u5ba1\u7684\u521b\u5efa\u3002

    "},{"location":"quick_start/test_track/#22","title":"2.2 \u7528\u4f8b\u8bc4\u5ba1\u5173\u8054\u7528\u4f8b","text":"

    \u5728\u3010\u7528\u4f8b\u8bc4\u5ba1\u3011\u5217\u8868\u9875\u9762\uff0c\u627e\u5230\u8981\u6dfb\u52a0\u7528\u4f8b\u7684\u8bc4\u5ba1\uff0c\u70b9\u51fb\u6253\u5f00\u3010\u529f\u80fd\u6d4b\u8bd5\u7528\u4f8b\u3011\u5217\u8868\u9875\u9762\u3002 \u5728\u3010\u529f\u80fd\u6d4b\u8bd5\u7528\u4f8b\u3011\u5217\u8868\u9875\u9762\uff0c\u70b9\u51fb\u3010\u5173\u8054\u7528\u4f8b\u3011 \u6309\u94ae\uff0c\u6253\u5f00\u3010\u5173\u8054\u7528\u4f8b\u3011\u5bf9\u8bdd\u6846\uff0c\u5728\u5bf9\u8bdd\u6846\u4e2d\u7684\u7528\u4f8b\u5217\u8868\u4e2d\u9009\u62e9\u8981\u6dfb\u52a0\u5230\u7528\u4f8b\u8bc4\u5ba1\u4efb\u52a1\u4e2d\u7684\u6d4b\u8bd5\u7528\u4f8b\uff0c\u9009\u62e9\u540e\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u6309\u94ae\u4fdd\u5b58\u3002

    "},{"location":"quick_start/test_track/#23","title":"2.3 \u8bc4\u5ba1\u6d4b\u8bd5\u7528\u4f8b","text":"

    \u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\u540e\uff0c\u5373\u53ef\u5728\u7528\u4f8b\u8bc4\u5ba1\u9875\u9762\u53f3\u4fa7\u7684\u6d4b\u8bd5\u7528\u4f8b\u5217\u8868\u4e2d\u67e5\u770b\u5230\u5df2\u5173\u8054\u7684\u6d4b\u8bd5\u7528\u4f8b\u3002\u70b9\u51fb\u67d0\u4e2a\u6d4b\u8bd5\u7528\u4f8b\u64cd\u4f5c\u5217\u4e2d\u7684\u7f16\u8f91\u6309\u94ae\uff0c\u8fdb\u5165\u3010\u7528\u4f8b\u8be6\u60c5\u3011\u9875\u9762\u3002

    \u5728\u3010\u7528\u4f8b\u8be6\u60c5\u3011\u9875\u9762\u53f3\u4fa7\u8f93\u5165\u5e76\u53d1\u9001\u9488\u5bf9\u6b64\u6761\u6d4b\u8bd5\u7528\u4f8b\u7684\u8bc4\u8bba\u3002\u57fa\u4e8e\u8bc4\u5ba1\u7ed3\u679c\uff0c\u70b9\u51fb \u3010\u901a\u8fc7\u3011 \u6216 \u3010\u672a\u901a\u8fc7\u3011 \u7684\u72b6\u6001\u6309\u94ae\u4e3a\u672c\u6761\u7528\u4f8b\u6807\u8bb0\u8bc4\u5ba1\u72b6\u6001\u3002

    "},{"location":"quick_start/test_track/#24","title":"2.4 \u8111\u56fe\u65b9\u5f0f\u8bc4\u5ba1\u7528\u4f8b","text":"

    \u9664\u4e86\u901a\u8fc7\u5217\u8868\u53ca\u8868\u5355\u65b9\u5f0f\u8bc4\u5ba1\u7528\u4f8b\u5916\uff0c\u8fd8\u53ef\u4ee5\u901a\u8fc7\u8111\u56fe\u65b9\u5f0f\u5b9e\u73b0\u6b64\u529f\u80fd\u3002\u5728\u3010\u7528\u4f8b\u5217\u8868\u3011\u9875\u9762\u70b9\u51fb \u3010\u8111\u56fe\u3011 \u6807\u7b7e\u5207\u6362\u5230\u8111\u56fe\u5c55\u793a\u6a21\u5f0f\uff0c\u9009\u4e2d\u5f85\u8bc4\u5ba1\u7528\u4f8b\uff0c\u901a\u8fc7\u6dfb\u52a0\u6807\u7b7e\u7684\u65b9\u5f0f\u6765\u6807\u8bb0\u7528\u4f8b\u8bc4\u5ba1\u7ed3\u679c\u3002

    "},{"location":"quick_start/test_track/#3","title":"3 \u521b\u5efa\u6d4b\u8bd5\u8ba1\u5212","text":"

    \u5728\u9876\u90e8\u83dc\u5355\u680f\u4e2d\uff0c\u9009\u62e9\u3010\u6d4b\u8bd5\u8ba1\u5212\u3011\u6253\u5f00\u3010\u6d4b\u8bd5\u8ba1\u5212\u3011\u9875\u9762\u3002

    "},{"location":"quick_start/test_track/#31","title":"3.1 \u65b0\u5efa\u6d4b\u8bd5\u8ba1\u5212","text":"

    \u5728\u3010\u6d4b\u8bd5\u8ba1\u5212\u3011\u9875\u9762\uff0c\u70b9\u51fb\u6d4b\u8bd5\u8ba1\u5212\u5217\u8868\u4e0a\u65b9\u7684\u3010\u521b\u5efa\u6d4b\u8bd5\u8ba1\u5212\u3011\u6309\u94ae\uff0c\u6253\u5f00\u3010\u521b\u5efa\u6d4b\u8bd5\u8ba1\u5212\u3011\u5bf9\u8bdd\u6846\uff0c\u5728\u5bf9\u8bdd\u6846\u4e2d\u8f93\u5165\u6b64\u6b21\u6d4b\u8bd5\u8ba1\u5212\u7684\u540d\u79f0\u3001\u8d1f\u8d23\u4eba\u7b49\u4fe1\u606f\u540e\uff0c\u70b9\u51fb \u3010\u786e\u5b9a\u3011 \u6309\u94ae\u5b8c\u6210\u6d4b\u8bd5\u8ba1\u5212\u521b\u5efa\u3002

    "},{"location":"quick_start/test_track/#32","title":"3.2 \u6d4b\u8bd5\u8ba1\u5212\u5173\u8054\u7528\u4f8b","text":"

    \u70b9\u51fb\u6d4b\u8bd5\u8ba1\u5212\u5217\u8868\u4e2d\u65b0\u521b\u5efa\u7684\u6d4b\u8bd5\u8ba1\u5212\uff0c\u8fdb\u5165\u6d4b\u8bd5\u8ba1\u5212\u8be6\u60c5\u9875\u9762\u3002 \u5207\u6362\u8981\u5173\u8054\u7684\u6d4b\u8bd5\u7528\u4f8b\u7c7b\u578b\u83dc\u5355\uff0c\u70b9\u51fb\u53f3\u4fa7\u5217\u8868\u4e0a\u65b9\u7684 \u3010\u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\u3011 \u6309\u94ae\uff0c\u5728\u5f39\u51fa\u7684\u7528\u4f8b\u9009\u62e9\u5217\u8868\u4e2d\u9009\u62e9\u8981\u6dfb\u52a0\u5230\u6b64\u6b21\u6d4b\u8bd5\u8ba1\u5212\u4e2d\u7684\u6d4b\u8bd5\u7528\u4f8b\u3002\u53ef\u4ee5\u901a\u8fc7\u641c\u7d22\u6846\u53ca\u9ad8\u7ea7\u641c\u7d22\u529f\u80fd\u8fdb\u4e00\u6b65\u7b5b\u9009\u7279\u5b9a\u7684\u6d4b\u8bd5\u7528\u4f8b\u8fdb\u884c\u6dfb\u52a0\u3002

    \u8bb0\u5f55\u7528\u4f8b\u6267\u884c\u7ed3\u679c \u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\u540e\uff0c\u5373\u53ef\u5728\u6d4b\u8bd5\u8ba1\u5212\u9875\u9762\u53f3\u4fa7\u7684\u6d4b\u8bd5\u7528\u4f8b\u5217\u8868\u4e2d\u67e5\u770b\u5230\u5df2\u5173\u8054\u7684\u6d4b\u8bd5\u7528\u4f8b\u3002\u70b9\u51fb\u67d0\u4e2a\u6d4b\u8bd5\u7528\u4f8b\u64cd\u4f5c\u5217\u4e2d\u7684\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u8fdb\u5165\u3010\u7528\u4f8b\u8be6\u60c5\u3011\u9875\u9762\u3002 \u5728\u6267\u884c\u6b65\u9aa4\u4e2d\uff0c\u586b\u5199\u6bcf\u4e00\u6b65\u7684\u5b9e\u9645\u7ed3\u679c\u53ca\u8be5\u6b65\u7684\u6267\u884c\u7ed3\u679c\uff0c\u57fa\u4e8e\u5404\u6b65\u9aa4\u6267\u884c\u60c5\u51b5\u53ca\u8bc4\u5b9a\u6807\u51c6\uff0c\u70b9\u51fb\u4e0a\u65b9\u7684\u72b6\u6001\u6309\u94ae\u4e3a\u6b64\u6761\u7528\u4f8b\u6807\u8bb0\u6267\u884c\u72b6\u6001\u3002 Tips:\u5728\u6d4b\u8bd5\u8ba1\u5212\u4e2d\u4fee\u6539\u529f\u80fd\u7528\u4f8b\u7684\u72b6\u6001\uff0c\u4f1a\u540c\u6b65\u66f4\u65b0\u3010\u7528\u4f8b\u5217\u8868\u3011\u7684\u5bf9\u5e94\u7528\u4f8b\u7684\u72b6\u6001\u3002

    \u540c\u65f6\u5728\u6d4b\u8bd5\u8ba1\u5212\u5217\u8868\u53ef\u76f4\u63a5\u5728\u66f4\u65b0\u7528\u4f8b\u72b6\u6001\u3002

    \u5173\u8054 \u3010\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u3011\u3001\u3010UI \u6d4b\u8bd5\u7528\u4f8b\u3011\u3001\u3010\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u3011\u65e0\u9700\u624b\u52a8\u4fee\u6539\u72b6\u6001\uff0c\u5173\u8054\u65b9\u5f0f\u548c\u3010\u529f\u80fd\u6d4b\u8bd5\u7528\u4f8b\u3011\u76f8\u540c\u3002

    "},{"location":"quick_start/test_track/#33","title":"3.3 \u8111\u56fe\u65b9\u5f0f\u8bb0\u5f55\u7528\u4f8b\u6267\u884c\u7ed3\u679c","text":"

    \u4e0e\u7528\u4f8b\u7684\u521b\u5efa\u548c\u8bc4\u5ba1\u7c7b\u4f3c\uff0c\u7528\u4f8b\u6267\u884c\u7ed3\u679c\u540c\u6837\u53ef\u4ee5\u901a\u8fc7\u8111\u56fe\u65b9\u5f0f\u8bb0\u5f55\u3002\u5728\u3010\u7528\u4f8b\u5217\u8868\u3011\u9875\u9762\u70b9\u51fb\u3010\u8111\u56fe\u3011\u6807\u7b7e\u5207\u6362\u5230\u8111\u56fe\u5c55\u793a\u9875\u9762\uff0c\u9009\u4e2d\u5f85\u6267\u884c\u7528\u4f8b\uff0c\u901a\u8fc7\u6dfb\u52a0\u6807\u7b7e\u7684\u65b9\u5f0f\u6765\u6807\u8bb0\u7528\u4f8b\u6267\u884c\u7ed3\u679c\u3002

    "},{"location":"quick_start/test_track/#4","title":"4 \u6d4b\u8bd5\u8ba1\u5212\u6267\u884c","text":"

    \u70b9\u51fb\u6d4b\u8bd5\u8ba1\u5212\u5217\u8868\u53f3\u4fa7\u3010\u6267\u884c\u3011\u6309\u94ae\uff0c\u53ef\u4ee5\u6267\u884c\u6d4b\u8bd5\u8ba1\u5212\uff0c\u540c\u65f6\u6267\u884c\u65f6\u53ef\u9009\u62e9\u8fd0\u884c\u73af\u5883\u3001\u6267\u884c\u6a21\u5f0f\u3001\u8fd0\u884c\u8d44\u6e90\u6c60\u3001\u5931\u8d25\u91cd\u8bd5\u7b49\u5176\u4ed6\u914d\u7f6e\u3002

    "},{"location":"quick_start/test_track/#5","title":"5 \u67e5\u770b\u6d4b\u8bd5\u62a5\u544a","text":"

    \u5f53\u6d4b\u8bd5\u8ba1\u5212\u4e2d\u7684\u6d4b\u8bd5\u7528\u4f8b\u6267\u884c\u5b8c\u6210\u540e\uff0c\u3010\u62a5\u544a\u3011\u9875\u7b7e\u83dc\u5355\u4e0b\u4f1a\u81ea\u52a8\u751f\u6210\u4e00\u4efd\u6d4b\u8bd5\u62a5\u544a\u3002\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u5c55\u793a\u6d4b\u8bd5\u6267\u884c\u7ed3\u679c\u7684\u8be6\u7ec6\u4fe1\u606f\u5e76\u7edf\u8ba1\u6d4b\u8bd5\u6267\u884c\u7387\u3001\u901a\u8fc7\u7387\u7b49\u6570\u636e\u3002\u6d4b\u8bd5\u62a5\u544a\u8be6\u60c5\u53f3\u4e0a\u89d2\u652f\u6301\u5206\u4eab\u3001\u5bfc\u51fa\u64cd\u4f5c\u3002

    "},{"location":"quick_start/ui_test/","title":"\u4f7f\u7528 UI \u6d4b\u8bd5","text":"

    MeterSphere UI \u6d4b\u8bd5\u63d0\u4f9b\u4e86\u5143\u7d20\u5e93\u3001UI \u81ea\u52a8\u5316\u3001\u6d4b\u8bd5\u62a5\u544a\u7b49UI\u6d4b\u8bd5\u76f8\u5173\u529f\u80fd\u3002 \u7528\u6237\u53ef\u4ee5\u4f7f\u7528\u591a\u7ea7\u6a21\u5757\u6765\u7ec4\u7ec7\u7ba1\u7406\u9879\u76ee\u4e0b\u7684 UI \u81ea\u52a8\u5316\u573a\u666f\uff0c\u6267\u884c\u573a\u666f\uff0c\u751f\u6210\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u3002UI \u6d4b\u8bd5\u6a21\u5757\u662f\u4f01\u4e1a\u7248 X-Pack \u529f\u80fd\u589e\u5f3a\u5305\u529f\u80fd\uff0c\u5982\u9700\u4f7f\u7528\uff0c\u8bf7\u70b9\u51fb\uff1a\u7533\u8bf7\u4f01\u4e1a\u7248\u8bd5\u7528\u3002

    \u6ce8\u610f\u4e8b\u9879

    1. \u4fee\u6539 /opt/metersphere/.env \u6587\u4ef6\uff0cMS_UI_ENABLED=true \u4fee\u6539\u914d\u7f6e\u540e\u52a0\u8f7d\u914d\u7f6e\u6587\u4ef6\u6267\u884c msctl reload\u3002
    2. docker ps \u68c0\u67e5 selenium-hub \u5bb9\u5668\u662f\u5426\u6210\u529f\u542f\u52a8\u3002
    3. v2.8.1\u4e4b\u540e\u7248\u672c\u5728 MeterSphere \u7cfb\u7edf\u53c2\u6570\u8bbe\u7f6e\u4e2d\u4fee\u6539 selenium-docker \u5730\u5740\u4e3ahttp://selenium-hub:4444\u3002\u8be6\u60c5\u53c2\u8003https://bbs.fit2cloud.com/t/topic/127
    4. UI \u6d4b\u8bd5\u7528\u4f8b\uff0c\u9ed8\u8ba4\u52fe\u9009 \"\u6027\u80fd\u6a21\u5f0f\" \u6ca1\u6709\u622a\u56fe\u5c55\u793a\uff0c\u4e0d\u52fe\u9009 \"\u6027\u80fd\u6d4b\u8bd5\" \u53ef\u4ee5\u67e5\u770b\u6bcf\u4e2a\u6b65\u9aa4\u7684\u622a\u56fe\u3002
    5. \u5982\u679c\u5bfc\u5165 License \u6210\u529f\u540e\uff0c\u4f9d\u7136\u6ca1\u6709 UI \u6d4b\u8bd5\u6a21\u5757\uff0c\u8bf7\u5230\u3010\u7528\u6237\u7ec4\u4e0e\u6743\u9650\u3011\u5904\u914d\u7f6e UI \u6a21\u5757\u6743\u9650\u3002
    "},{"location":"quick_start/ui_test/#1","title":"1 \u521b\u5efa\u6a21\u5757","text":"

    MeterSphere \u901a\u8fc7\u6a21\u5757\u6811\u7684\u65b9\u5f0f\u7ec4\u7ec7\u7ba1\u7406\u573a\u666f\uff0c\u7528\u6237\u53ef\u4ee5\u5728\u5de6\u4fa7\u521b\u5efa\u5e76\u7ba1\u7406\u6a21\u5757\u6811\u3002\u5143\u7d20\u5e93\u3001UI\u81ea\u52a8\u5316\u6a21\u5757\u5747\u652f\u6301\u521b\u5efa\u6a21\u5757\u6811\uff0c \u70b9\u51fb\u5de6\u4fa7\u7684\u6a21\u5757\u6811\u4e2d\u7684\u3010\u6dfb\u52a0\u5b50\u6a21\u5757\u3011\u6309\u94ae\uff0c\u4e3a\u8be5\u9879\u76ee\u6dfb\u52a0\u6a21\u5757\u3002

    "},{"location":"quick_start/ui_test/#2","title":"2 \u521b\u5efa\u5143\u7d20","text":"

    \u70b9\u51fb\u5de6\u4fa7\u7684\u6a21\u5757\u6811\u4e2d\u7684\u3010\u6dfb\u52a0\u5b50\u6a21\u5757\u3011 \u6309\u94ae\uff0c\u6dfb\u52a0\u6a21\u5757\uff0c\u7136\u540e\u521b\u5efa\u5143\u7d20\u3002\u5143\u7d20\u5e93\u53ef\u7528\u4e8e\u573a\u666f\u6b65\u9aa4\u4e2d\u5143\u7d20\u7684\u9009\u62e9\u3002

    "},{"location":"quick_start/ui_test/#3","title":"3 \u521b\u5efa\u573a\u666f","text":"

    \u7528\u6237\u53ef\u5728\u5404\u4e2a\u6a21\u5757\u4e2d\u6dfb\u52a0\u573a\u666f\uff0c\u53ef\u4ee5\u624b\u52a8\u521b\u5efa\uff0c\u4e5f\u53ef\u4ee5\u901a\u8fc7\u5bfc\u5165\u7684\u65b9\u5f0f\u521b\u5efa UI \u81ea\u52a8\u5316\u573a\u666f\u3002

    "},{"location":"quick_start/ui_test/#31-selenium-ide","title":"3.1 \u5bfc\u5165 Selenium IDE \u811a\u672c","text":""},{"location":"quick_start/ui_test/#32","title":"3.2 \u624b\u52a8\u521b\u5efa\u573a\u666f","text":"

    \u70b9\u51fb\u53f3\u4fa7\u573a\u666f\u5217\u8868\u4e2d\u7684\u3010+\u3011\u53f7\u6309\u94ae\uff0c\u521b\u5efa\u573a\u666f\u3002

    \u5728\u6253\u5f00\u7684\u3010\u7528\u4f8b\u7f16\u8f91\u3011\u9875\u9762\u4e2d\u586b\u5199\u540d\u79f0\u3001\u6a21\u5757\u3001\u72b6\u6001\u3001\u8d23\u4efb\u4eba\u7b49\u8be6\u7ec6\u4fe1\u606f\u3002

    \u70b9\u51fb\u9875\u9762\u53f3\u4e0b\u89d2\u3010+\u3011\u53f7\uff0c\u53ef\u4ee5\u6dfb\u52a0\u573a\u666f\u6b65\u9aa4\uff0c\u573a\u666f\u6b65\u9aa4\u4e2d\u7684\u64cd\u4f5c\u5bf9\u8c61\u53ef\u4ee5\u9009\u62e9\u3010\u5143\u7d20\u5bf9\u8c61\u3011\u6216\u8005\u3010\u5143\u7d20\u5b9a\u4f4d\u3011\uff0c\u3010\u5143\u7d20\u5bf9\u8c61\u3011\u662f\u4ece\u5143\u7d20\u5e93\u4e2d\u9009\u53d6\u914d\u7f6e\u597d\u7684\u5143\u7d20\uff0c\u3010\u5143\u7d20\u5b9a\u4f4d\u3011\u9700\u8981\u7528\u5143\u7d20\u5b9a\u4f4d\u7684\u65b9\u5f0f\u53bb\u5b9a\u4f4d\u5143\u7d20\u3002 \u4ee5\u767b\u5f55 MeterSphere \u7cfb\u7edf\u4e3a\u4f8b\uff0c\u6dfb\u52a0\u5982\u4e0b\u51e0\u4e2a\u6b65\u9aa4\uff1a

    • \u6dfb\u52a0\u3010\u6d4f\u89c8\u5668\u64cd\u4f5c\u3011\u6b65\u9aa4\uff0c\u8f93\u5165 MeterSphere \u767b\u5f55\u9875\u9762\u5730\u5740\u3002

    • \u6dfb\u52a0\u3010\u8f93\u5165\u7528\u6237\u540d\u3011\u6b65\u9aa4: \u64cd\u4f5c\u5bf9\u8c61\u9009\u62e9\u3010\u5143\u7d20\u5b9a\u4f4d\u3011\uff0c\u5b9a\u4f4d\u65b9\u5f0f\u9009\u62e9\u3010xpath\u3011\uff0cxpath \u8def\u5f84\u8f93\u5165 //input[@placeholder=\"ID \u6216 \u90ae\u7bb1\"]\u3002

    • \u83b7\u53d6 xpath \u8def\u5f84\u65b9\u5f0f\u5982\u4e0b\uff08\u4ee5\u8c37\u6b4c\u6d4f\u89c8\u5668\u4e3a\u4f8b\uff09\uff1a\u6309\u4e0b F12 \u6253\u5f00\u5f53\u524d\u9875\u7684\u3010\u5143\u7d20\u3011\u754c\u9762\uff0c\u9009\u4e2d\u5de6\u4e0a\u65b9\u7684\u3010\u9f20\u6807\u3011\u6309\u94ae\uff0c\u62d6\u5230\u767b\u5f55\u754c\u9762\u7684\u3010\u7528\u6237\u540d\u8f93\u5165\u6846\u3011\u4e0a\uff0c\u70b9\u51fb\u9f20\u6807\u53ef\u5feb\u901f\u5b9a\u4f4d\u5230\u3010\u7528\u6237\u540d\u3011\u7684 html \u5143\u7d20\u5185\u5bb9\uff0c\u8f93\u5165\u3010Ctrl+F\u3011\uff0c\u6839\u636e\u5143\u7d20\u5185\u5bb9\u7684\u5173\u952e\u5c5e\u6027\uff0c\u5728\u6587\u672c\u6846\u4e2d\u8f93\u5165 xpath \u8def\u5f84\uff0c\u5373\u53ef\u5feb\u901f\u5b9a\u4f4d\u5230\u5143\u7d20\uff0c\u5982\u679c\u5143\u7d20\u5185\u5bb9\u53d8\u9ec4\uff0c\u5219\u8868\u793a xpath \u6210\u529f\u5b9a\u4f4d\u5230\u5143\u7d20\u3002

    • \u6dfb\u52a0\u3010\u8f93\u5165\u5bc6\u7801\u3011\u6b65\u9aa4\uff0c\u65b9\u5f0f\u540c\u4e0a\uff0cxpath \u8def\u5f84\u8f93\u5165 //input[@placeholder=\"\u5bc6\u7801\"]\u3002

    • \u6dfb\u52a0\u3010\u70b9\u51fb\u767b\u5f55\u3011\u6b65\u9aa4\uff0c\u70b9\u51fb\u9875\u9762\u53f3\u4e0b\u89d2\u3010+\u3011\u53f7\uff0c\u9009\u62e9\u3010\u9f20\u6807\u64cd\u4f5c\u3011\uff0c\u3010\u6b65\u9aa4\u7c7b\u578b\u3011\u9009\u62e9\u9f20\u6807\u70b9\u51fb\uff0c\u3010\u70b9\u51fb\u65b9\u5f0f\u3011\u9009\u62e9\u5355\u673a\uff0c\u5143\u7d20\u4f4d\u7f6e\u9009\u62e9\u3010\u5143\u7d20\u5b9a\u4f4d\u3011\uff0c\u5b9a\u4f4d\u65b9\u5f0f\u9009\u62e9\u3010xpath\u3011\uff0cxpath \u8def\u5f84\u4e3a //button[@type=\"button\"]\u3002

    "},{"location":"quick_start/ui_test/#4","title":"4 \u5728\u573a\u666f\u6b65\u9aa4\u4e2d\u6dfb\u52a0\u9ad8\u7ea7\u8bbe\u7f6e","text":"

    \u5728\u9ad8\u7ea7\u8bbe\u7f6e\u4e2d\uff0c\u4ee5\u540e\u7f6e\u64cd\u4f5c\u4e3a\u4f8b\uff0c\u9009\u62e9 \u540e\u7f6e\u64cd\u4f5c \uff0c\u70b9\u51fb\u4e0b\u62c9\u6846\uff0c\u9009\u62e9\u9700\u8981\u7684\u65b9\u5f0f\uff0c\u70b9\u51fb\u6dfb\u52a0\u3002\u53ef\u4ee5\u6dfb\u52a0\u540e\u7f6e\u811a\u672c\uff0c\u7b49\u5f85\u65f6\u95f4\uff0c\u65ad\u8a00\u548c\u540e\u7f6e\u63d0\u53d6\u3002

    "},{"location":"quick_start/ui_test/#5-ui","title":"5 \u8c03\u8bd5 UI \u81ea\u52a8\u5316\u573a\u666f","text":"

    \u53ef\u5728\u7f16\u8f91\u573a\u666f\u9875\u9762\u8c03\u8bd5 UI \u573a\u666f\uff0c\u4e5f\u53ef\u4ee5\u5728 UI \u81ea\u52a8\u5316\u573a\u666f\u5217\u8868\u9875\u9762\u6267\u884cUI\u573a\u666f\u3002\u5982\u56fe\u70b9\u51fb\u573a\u666f\u7f16\u8f91\u9875\u9762\u7684\u3010\u751f\u6210\u62a5\u544a\u3011\u6309\u94ae\uff0c\u53ef\u751f\u6210\u5e76\u67e5\u770b\u573a\u666f\u62a5\u544a\u3002 \u52fe\u9009\u6027\u80fd\u6a21\u5f0f\uff0c\u573a\u666f\u62a5\u544a\u4e2d\u65e0\u622a\u56fe\u4fe1\u606f\uff0c\u4e0d\u52fe\u9009\u6027\u80fd\u6a21\u5f0f\uff0c\u573a\u666f\u62a5\u544a\u4e2d\u6709\u622a\u56fe\u4fe1\u606f\u3002

    "},{"location":"quick_start/ui_test/#6","title":"6 \u751f\u6210\u6d4b\u8bd5\u62a5\u544a","text":"

    \u70b9\u51fb\u573a\u666f\u5217\u8868\u4e2d\u6267\u884c\u6309\u94ae\uff0c\u4f1a\u5f39\u51fa\u9875\u9762\u663e\u793a\u672c\u6b21\u573a\u666f\u7684\u6267\u884c\u7ed3\u679c\u3002

    \u67e5\u770b\u62a5\u544a\u4e2d\u6b65\u9aa4\u622a\u56fe\u4fe1\u606f

    \u4e5f\u53ef\u5728\u6d4b\u8bd5\u62a5\u544a\u9875\u9762\u4e2d\uff0c\u627e\u5230\u8981\u67e5\u770b\u7684\u62a5\u544a\uff0c\u70b9\u51fb\u5176\u3010\u62a5\u544a\u8be6\u60c5\u3011\u6309\u94ae\u6253\u5f00\u3010\u6d4b\u8bd5\u62a5\u544a\u3011\u9875\u9762\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u3002

    "},{"location":"teach_video/video_index/","title":"\u6559\u5b66\u89c6\u9891","text":""},{"location":"teach_video/video_index/#1","title":"1 \u8bfe\u7a0b\u7b80\u4ecb\u548c\u7ebf\u4e0a\u73af\u5883\u4ecb\u7ecd","text":""},{"location":"teach_video/video_index/#2","title":"2 \u6d4b\u8bd5\u8ddf\u8e2a","text":""},{"location":"teach_video/video_index/#3","title":"3 \u63a5\u53e3\u6d4b\u8bd5","text":""},{"location":"teach_video/video_index/#4","title":"4 \u6027\u80fd\u6d4b\u8bd5","text":""},{"location":"teach_video/video_index/#5-ui","title":"5 UI \u6d4b\u8bd5","text":""},{"location":"teach_video/video_index/#6-devops","title":"6 \u878d\u5165 DevOps","text":""},{"location":"teach_video/video_index/#7","title":"7 \u5176\u5b83\u89c6\u9891","text":"
    • MeterSphere \u5982\u4f55\u4e0e TAPD\u548c Jira \u5bf9\u63a5
    • MeterSphere \u5982\u4f55\u5bf9\u63a5\u90ae\u4ef6\u3001\u9489\u9489\u3001\u4f01\u4e1a\u5fae\u4fe1
    • \u5982\u4f55\u5728 MeterSphere \u4e2d\u505a\u573a\u666f\u5316\u7684\u63a5\u53e3\u6d4b\u8bd5
    • \u5982\u4f55\u5728 MeterSphere \u4e2d\u5bfc\u5165 Postman \u811a\u672c\u505a\u63a5\u53e3\u6d4b\u8bd5
    • \u5982\u4f55\u5728 MeterSphere \u4e2d\u5bfc\u5165 Swagger UI \u811a\u672c\u505a\u63a5\u53e3\u6d4b\u8bd5
    "},{"location":"tutorial/use_tutorial/","title":"\u4f7f\u7528\u6559\u7a0b","text":""},{"location":"tutorial/use_tutorial/#1","title":"1 \u63a5\u53e3\u6d4b\u8bd5","text":"
    • \u5982\u4f55\u4f7f\u7528 MeterSphere \u8fdb\u884c Dubbo \u534f\u8bae\u63a5\u53e3\u6d4b\u8bd5
    • \u5982\u4f55\u4f7f\u7528 MeterSphere \u8fdb\u884c\u573a\u666f\u5316\u63a5\u53e3\u6d4b\u8bd5
    • \u5982\u4f55\u5728 MeterSphere \u4e2d\u4f7f\u7528 BeanShell \u524d\u7f6e\u811a\u672c\u751f\u6210\u63a5\u53e3\u8ba4\u8bc1\u7b7e\u540d
    • MeterSphere \u4e2d\u5404\u7c7b\u53d8\u91cf\u7684\u8bbe\u7f6e\u548c\u4f7f\u7528\u5168\u6559\u7a0b
    • MeterSphere \u4e2d JMeter \u51fd\u6570\u3001MockJS \u51fd\u6570\u4f7f\u7528\u6559\u7a0b
    • \u57fa\u4e8e MeterSphere \u63a5\u53e3\u81ea\u52a8\u5316\u505a\u6570\u636e\u9a71\u52a8\uff08ddt\uff09\u6d4b\u8bd5
    • MeterSphere Mock \u670d\u52a1\u529f\u80fd\u7684\u521b\u5efa\u548c\u8c03\u7528
    • \u4f7f\u7528 Python \u8c03\u7528 MeterSphere API \u89e6\u53d1\u6d4b\u8bd5\u8ba1\u5212\u6267\u884c
    • MeterSphere \u4e2d\u5e38\u7528 Jmeter \u51fd\u6570\u4f7f\u7528\u8be6\u7ec6
    • MeterSphere \u5feb\u901f\u751f\u6210\u6d4b\u8bd5\u6570\u636e(\u679a\u4e3e\u3001\u6b63\u5219\u3001\u51fd\u6570)
    • MeterSphere \u63a5\u53e3\u6d4b\u8bd5\u73af\u5883\u53ca\u73af\u5883\u7ec4+\u52a8\u6001\u6570\u636e\u6e90\u4f7f\u7528
    • MeterSphere \u6570\u636e\u5e93\u63d0\u53d6\u53c2\u6570\u548c\u65ad\u8a00
    "},{"location":"tutorial/use_tutorial/#2-ui","title":"2 UI \u6d4b\u8bd5","text":"
    • MeterSphere \u7684 UI \u6d4b\u8bd5\u6a21\u5757\u5982\u4f55\u8fdc\u7a0b\u8c03\u7528\u6d4f\u89c8\u5668
    • MeterSphere \u7684 UI \u81ea\u52a8\u5316\u5982\u4f55\u5b9e\u73b0\u6587\u4ef6\u4e0a\u4f20\u7684\u573a\u666f
    • MeterSphere \u7684 UI \u6d4b\u8bd5\u6ed1\u5757\u9a8c\u8bc1\u53ca\u9875\u9762\u6eda\u52a8\u6761\u95ee\u9898\u5904\u7406
    "},{"location":"tutorial/use_tutorial/#3","title":"3 \u670d\u52a1\u96c6\u6210","text":"
    • MeterSphere \u670d\u52a1\u96c6\u6210\u4e4b\u7985\u9053\u5bf9\u63a5
    • MeterSphere \u670d\u52a1\u96c6\u6210\u4e4b JIRA \u5bf9\u63a5
    • MeterSphere \u670d\u52a1\u96c6\u6210\u4e4b TAPD \u5bf9\u63a5
    • MeterSphere \u670d\u52a1\u96c6\u6210 Azure Devops \u5bf9\u63a5
    • \u5728 MeterSphere \u5e73\u53f0\u6dfb\u52a0\u5e76\u4f7f\u7528 Kubernetes \u8d44\u6e90\u6c60
    • MeterSphere\u5f00\u6e90\u6301\u7eed\u6d4b\u8bd5\u5e73\u53f0\u4e0e\u817e\u8baf\u4e91CODING DevOps\u7684\u96c6\u6210
    "},{"location":"tutorial/use_tutorial/#4","title":"4 \u63d2\u4ef6\u4f7f\u7528","text":"
    • MeterSphere \u548c Jenkins \u5b9e\u73b0\u6d41\u6c34\u7ebf\u96c6\u6210
    • MeterSphere\u4e4b\u6d4f\u89c8\u5668\u5f55\u5236\u63d2\u4ef6\uff1achrome-extensions
    • MeterSphere \u63a5\u53e3\u81ea\u52a8\u5316\u63d2\u4ef6\u57fa\u7840\u5f00\u53d1\u6559\u7a0b
    • MeterSphere \u4e4b IDEA \u63a5\u53e3\u540c\u6b65\u63d2\u4ef6
    • Metersphere Selenium IDE\u63d2\u4ef6\u5f55\u5236UI\u811a\u672c
    "},{"location":"tutorial/use_tutorial/#5","title":"5 \u811a\u672c\u5f15\u7528","text":"
    • MeterSphere Python \u524d\u540e\u7f6e\u811a\u672c\u5982\u4f55\u5f15\u7528\u7b2c\u4e09\u65b9\u5e93
    • MeterSphere BeanShell \u524d\u540e\u7f6e\u811a\u672c\u5982\u4f55\u5f15\u7528\u5916\u90e8 Jar \u5305
    • MeterSphere JavaScript \u524d\u540e\u7f6e\u811a\u672c\u5982\u4f55\u5f15\u7528\u5916\u90e8\u5305
    "},{"location":"tutorial/use_tutorial/#6","title":"6 \u9879\u76ee\u8bbe\u7f6e","text":"
    • MeterSphere \u6d88\u606f\u901a\u77e5\u4e4b\u5bf9\u63a5\u90ae\u4ef6\u3001\u9489\u9489\u3001\u4f01\u4e1a\u5fae\u4fe1\u3001\u98de\u4e66
    "},{"location":"user_manual/access_matrix/","title":"\u6743\u9650\u77e9\u9635","text":"\u4e00\u7ea7\u529f\u80fd \u4e8c\u7ea7\u529f\u80fd \u4e09\u7ea7\u529f\u80fd \u5177\u4f53\u7528\u4f8b \u7cfb\u7edf\u7ba1\u7406\u5458 \u5de5\u4f5c\u7a7a\u95f4\u7ba1\u7406\u5458 \u5de5\u4f5c\u7a7a\u95f4\u6210\u5458 \u9879\u76ee\u7ba1\u7406\u5458 \u9879\u76ee\u6210\u5458 \u53ea\u8bfb\u7528\u6237 \u81ea\u5b9a\u4e49\u89d2\u8272 \u7cfb\u7edf\u7ba1\u7406 \u7cfb\u7edf \u7528\u6237\u7ba1\u7406 \u5217\u51fa\u7cfb\u7edf\u4e2d\u7684\u6240\u6709\u7528\u6237 Y * \u6307\u5b9a\u7528\u6237\u00a0ID\u3001\u7528\u6237\u540d\u3001\u90ae\u7bb1\u3001\u7535\u8bdd\u3001\u5bc6\u7801\u7b49\u4fe1\u606f\u521b\u5efa\u65b0\u7528\u6237 Y * \u4fee\u6539\u6307\u5b9a\u7528\u6237\u7684\u7528\u6237\u540d\u3001\u90ae\u7bb1\u3001\u7535\u8bdd\u3001\u5bc6\u7801\u7b49\u4fe1\u606f Y * \u6dfb\u52a0\u3001\u4fee\u6539\u6307\u5b9a\u7528\u6237\u7684\u89d2\u8272 Y * \u5220\u9664\u6307\u5b9a\u7528\u6237 Y * \u542f\u7528\u3001\u7981\u7528\u6307\u5b9a\u7528\u6237\uff0c\u7528\u6237\u7981\u7528\u540e\u65e0\u6cd5\u767b\u5f55\u7cfb\u7edf Y * \u5de5\u4f5c\u7a7a\u95f4\u7ba1\u7406 \u5217\u51fa\u7cfb\u7edf\u4e2d\u7684\u6240\u6709\u5de5\u4f5c\u7a7a\u95f4 Y * \u6307\u5b9a\u5de5\u4f5c\u7a7a\u95f4\u540d\u79f0\u3001\u63cf\u8ff0\u53ca\u6240\u5c5e\u7ec4\u7ec7\u7b49\u4fe1\u606f\u521b\u5efa\u65b0\u5de5\u4f5c\u7a7a\u95f4 Y * \u4fee\u6539\u6307\u5b9a\u5de5\u4f5c\u7a7a\u95f4\u7684\u540d\u79f0\u3001\u63cf\u8ff0\u53ca\u6240\u5c5e\u7ec4\u7ec7\u7b49\u4fe1\u606f Y * \u5220\u9664\u6307\u5b9a\u5de5\u4f5c\u7a7a\u95f4 Y * \u7528\u6237\u7ec4\u4e0e\u6743\u9650\u7ba1\u7406 \u5217\u51fa\u7cfb\u7edf\u6240\u6709\u89d2\u8272\u4fe1\u606f Y * \u521b\u5efa\u3001\u4fee\u6539\u7528\u6237\u7ec4\u57fa\u672c\u4fe1\u606f Y * \u4fee\u6539\u7528\u6237\u7ec4\u6743\u9650 Y * \u7ed9\u7528\u6237\u7ec4\u6dfb\u52a0\u3001\u5220\u9664\u6210\u5458 Y * \u5220\u9664\u7528\u6237\u7ec4 Y * \u6d4b\u8bd5\u8d44\u6e90\u6c60\u7ba1\u7406 \u5217\u51fa\u7cfb\u7edf\u4e2d\u7684\u6240\u6709\u6d4b\u8bd5\u8d44\u6e90\u6c60 Y * \u8bbe\u7f6e\u6d4b\u8bd5\u8d44\u6e90\u6c60\u540d\u79f0\u3001\u5177\u4f53\u914d\u7f6e\u7b49\u4fe1\u606f\u521b\u5efa\u65b0\u6d4b\u8bd5\u8d44\u6e90\u6c60 Y * \u4fee\u6539\u6307\u5b9a\u6d4b\u8bd5\u8d44\u6e90\u6c60\u7684\u540d\u79f0\u3001\u5177\u4f53\u7b49\u4fe1\u606f Y * \u5220\u9664\u6307\u5b9a\u6d4b\u8bd5\u8d44\u6e90\u6c60 Y * \u542f\u7528\u3001\u7981\u7528\u6307\u5b9a\u6d4b\u8bd5\u8d44\u6e90\u6c60 Y * \u7ed9\u6307\u5b9a\u8d44\u6e90\u6c60\u6dfb\u52a0\u3001\u5220\u9664\u538b\u529b\u8282\u70b9 Y * \u7cfb\u7edf\u8bbe\u7f6e \u57fa\u672c\u4fe1\u606f\u914d\u7f6e Y * \u90ae\u4ef6\u8bbe\u7f6e Y * LDAP\u8bbe\u7f6e Y * \u5de5\u4f5c\u7a7a\u95f4 \u5de5\u4f5c\u7a7a\u95f4\u6210\u5458\u7ba1\u7406 \u5217\u51fa\u8be5\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u7684\u6240\u6709\u6210\u5458\u53ca\u5176\u89d2\u8272\u4fe1\u606f Y * \u9009\u62e9\u7cfb\u7edf\u4e2d\u5df2\u6709\u7528\u6237\u5e76\u6307\u5b9a\u5de5\u4f5c\u7a7a\u95f4\u7ea7\u89d2\u8272\u6dfb\u52a0\u81f3\u5de5\u4f5c\u7a7a\u95f4\u6210\u5458 Y * \u4fee\u6539\u6307\u5b9a\u6210\u5458\u5728\u8be5\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u7684\u89d2\u8272 Y * \u4ece\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u5220\u9664\u6307\u5b9a\u6210\u5458\uff08\u53bb\u9664\u89d2\u8272\u4fe1\u606f\uff09 Y * \u670d\u52a1\u96c6\u6210 \u914d\u7f6eTapd\u3001Jira\u3001\u7985\u9053\u7b49\u670d\u52a1\u96c6\u6210\u4fe1\u606f Y Y Y * \u4e2a\u4eba\u4fe1\u606f \u4e2a\u4eba\u8bbe\u7f6e \u4fee\u6539\u81ea\u5df1\u7684\u7528\u6237\u540d\u3001\u90ae\u7bb1\u3001\u7535\u8bdd\u3001\u5bc6\u7801\u7b49\u4fe1\u606f Y Y Y Y Y Y * \u6d4b\u8bd5\u8ddf\u8e2a \u9996\u9875 Y Y Y \u9879\u76ee \u9879\u76ee \u5217\u51fa\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u7684\u6240\u6709\u9879\u76ee Y Y Y \u6307\u5b9a\u9879\u76ee\u540d\u79f0\u3001\u63cf\u8ff0\u7b49\u4fe1\u606f\uff0c\u5728\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u521b\u5efa\u65b0\u9879\u76ee Y Y \u4fee\u6539\u6307\u5b9a\u9879\u76ee\u7684\u540d\u79f0\u3001\u63cf\u8ff0\u7b49\u4fe1\u606f Y Y \u5220\u9664\u6307\u5b9a\u9879\u76ee Y Y \u5728\u9879\u76ee\u5217\u8868\u4e2d\u70b9\u51fb\u9879\u76ee\u540d\u79f0\uff0c\u8fdb\u5165\u8be5\u9879\u76ee\u4e0b\u7684\u6d4b\u8bd5\u7528\u4f8b\u9875\u9762 Y Y Y \u6d4b\u8bd5\u7528\u4f8b \u6d4b\u8bd5\u7528\u4f8b\u6811 \u4ee5\u6811\u72b6\u5f62\u5f0f\u5c55\u793a\u9879\u76ee\u7684\u6a21\u5757\u53ca\u5b50\u6a21\u5757 Y Y Y \u5728\u7528\u4f8b\u6811\u4e2d\u7684\u4efb\u4e00\u8282\u70b9\u5747\u53ef\u521b\u5efa\u8be5\u8282\u70b9\u7684\u5b50\u8282\u70b9\uff0c\u7528\u4f8b\u6811\u6700\u591a\u652f\u6301\u00a05\u00a0\u7ea7\u5b50\u8282\u70b9 Y Y \u901a\u8fc7\u524d\u7aef\u62d6\u62fd\u7684\u65b9\u5f0f\u79fb\u52a8\u7528\u4f8b\u6811\u7684\u67d0\u4e2a\u8282\u70b9\u5230\u6307\u5b9a\u4f4d\u7f6e Y Y \u4ece\u7528\u4f8b\u6811\u4e2d\u5220\u9664\u67d0\u4e2a\u8282\u70b9\uff0c\u8be5\u8282\u70b9\u53ca\u5176\u5b50\u8282\u70b9\u4e0b\u4e0b\u7684\u6240\u6709\u7528\u4f8b\uff0c\u79fb\u52a8\u5230\u540d\u4e3a\u2018\u672a\u5f52\u7c7b\u7528\u4f8b\u00a0\u2019\u7684\u865a\u62df1\u00a0\u7ea7\u8282\u70b9 Y Y \u6d4b\u8bd5\u7528\u4f8b\u7ba1\u7406 \u4ee5\u5217\u8868\u5f62\u5f0f\u5c55\u793a\u5f53\u524d\u9009\u4e2d\u7684\u7528\u4f8b\u6811\u67d0\u8282\u70b9\u4e0b\u7684\u6240\u6709\u7528\u4f8b Y Y Y \u5728\u5f53\u524d\u9009\u4e2d\u7684\u7528\u4f8b\u6811\u8282\u70b9\u4e0b\uff0c\u65b0\u5efa\u6d4b\u8bd5\u7528\u4f8b\uff1b\u6d4b\u8bd5\u7528\u4f8b\u4fe1\u606f\u5305\u542b\u7528\u4f8b\u540d\u79f0\u3001\u6240\u5c5e\u6a21\u5757\u3001\u4f18\u5148\u7ea7\u3001\u6267\u884c\u6b65\u9aa4\u7b49\u4fe1\u606f Y Y \u5220\u9664\u6307\u5b9a\u7684\u6d4b\u8bd5\u7528\u4f8b Y Y \u9009\u62e9\u67d0\u4e2a\u6d4b\u8bd5\u7528\u4f8b\uff0c\u7f16\u8f91\u4fee\u6539\u6d4b\u8bd5\u7528\u4f8b\u76f8\u5173\u4fe1\u606f Y Y \u9009\u62e9\u67d0\u4e2a\u6d4b\u8bd5\u7528\u4f8b\uff0c\u7f16\u8f91\u4fee\u6539\u6d4b\u8bd5\u7528\u4f8b\u7ef4\u62a4\u4eba\u4fe1\u606f Y Y \u6d4b\u8bd5\u8ba1\u5212 \u6d4b\u8bd5\u8ba1\u5212\u5217\u8868 \u4ee5\u5217\u8868\u5f62\u5f0f\u5c55\u793a\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u6240\u6709\u9879\u76ee\u4e0b\u7684\u6240\u6709\u6d4b\u8bd5\u8ba1\u5212 Y Y Y \u6307\u5b9a\u6d4b\u8bd5\u8ba1\u5212\u7684\u540d\u79f0\u3001\u63cf\u8ff0\u3001\u6240\u5c5e\u9879\u76ee\u7b49\u4fe1\u606f\u521b\u5efa\u6d4b\u8bd5\u8ba1\u5212 Y Y \u9009\u62e9\u67d0\u4e2a\u6d4b\u8bd5\u8ba1\u5212\uff0c\u7f16\u8f91\u4fee\u6539\u6d4b\u8bd5\u8ba1\u5212\u76f8\u5173\u4fe1\u606f Y Y \u6d4b\u8bd5\u8ba1\u5212\u4e2d\u7684\u7528\u4f8b\u7ba1\u7406 \u4ece\u8be5\u6d4b\u8bd5\u8ba1\u5212\u6240\u5c5e\u9879\u76ee\u4e2d\uff0c\u9009\u62e9\u7528\u4f8b\u6811\u8282\u70b9\u6216\u5177\u4f53\u7528\u4f8b\uff0c\u6dfb\u52a0\u5230\u8be5\u6d4b\u8bd5\u8ba1\u5212\uff0c\u5e76\u6307\u5b9a\u8be5\u7528\u4f8b\u7684\u6267\u884c\u4eba\u7b49\u4fe1\u606f Y Y \u4ee5\u53ea\u8bfb\u7684\u5f62\u5f0f\u5c55\u793a\u5f53\u524d\u5df2\u6dfb\u52a0\u5230\u6d4b\u8bd5\u8ba1\u5212\u4e2d\u7684\u7528\u4f8b\u6811 Y Y Y \u4ee5\u5217\u8868\u5f62\u5f0f\u5c55\u793a\u5f53\u524d\u9009\u4e2d\u7684\u7528\u4f8b\u6811\u67d0\u8282\u70b9\u4e0b\u7684\u6240\u6709\u7528\u4f8b Y Y Y \u9009\u62e9\u6d4b\u8bd5\u8ba1\u5212\u4e2d\u7684\u67d0\u4e2a\u6d4b\u8bd5\u7528\u4f8b\uff0c\u7f16\u8f91\u4fee\u6539\u6267\u884c\u4eba\u7b49\u76f8\u5173\u4fe1\u606f Y Y \u9009\u62e9\u6d4b\u8bd5\u8ba1\u5212\u4e2d\u7684\u67d0\u4e2a\u6d4b\u8bd5\u7528\u4f8b\uff0c\u7f16\u8f91\u4fee\u6539\u6267\u884c\u7ed3\u679c\u7b49\u76f8\u5173\u4fe1\u606f Y Y \u63a5\u53e3\u6d4b\u8bd5 \u9879\u76ee \u5217\u51fa\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u7684\u6240\u6709\u9879\u76ee Y Y Y \u6307\u5b9a\u9879\u76ee\u540d\u79f0\u3001\u63cf\u8ff0\u7b49\u4fe1\u606f\uff0c\u5728\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u521b\u5efa\u65b0\u9879\u76ee Y Y \u4fee\u6539\u6307\u5b9a\u9879\u76ee\u7684\u540d\u79f0\u3001\u63cf\u8ff0\u7b49\u4fe1\u606f Y Y \u5220\u9664\u6307\u5b9a\u9879\u76ee Y Y \u5728\u9879\u76ee\u5217\u8868\u4e2d\u70b9\u51fb\u9879\u76ee\u540d\u79f0\uff0c\u8fdb\u5165\u8be5\u9879\u76ee\u4e0b\u7684\u63a5\u53e3\u7ba1\u7406\u9875\u9762 Y Y Y \u63a5\u53e3 TBD Y Y Y \u6d4b\u8bd5 \u4ee5\u5217\u8868\u5f62\u5f0f\u5c55\u793a\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u6240\u6709\u9879\u76ee\u4e0b\u7684\u6240\u6709\u63a5\u53e3\u6d4b\u8bd5 Y Y Y \u70b9\u51fb\u521b\u5efa\u6d4b\u8bd5\u6309\u94ae\uff0c\u9009\u62e9\u6d4b\u8bd5\u6240\u5c5e\u9879\u76ee\uff0c\u586b\u5199\u6d4b\u8bd5\u7684\u5177\u4f53\u914d\u7f6e\u4fe1\u606f\u5e76\u4fdd\u5b58\u6d4b\u8bd5 Y Y \u5220\u9664\u6307\u5b9a\u7684\u63a5\u53e3\u6d4b\u8bd5 Y Y \u9009\u62e9\u67d0\u4e2a\u63a5\u53e3\u6d4b\u8bd5\uff0c\u67e5\u770b\u5e76\u7f16\u8f91\u4fee\u6539\u8be5\u63a5\u53e3\u6d4b\u8bd5\u5177\u4f53\u4fe1\u606f Y Y \u4ec5\u67e5\u770b \u9009\u62e9\u67d0\u4e2a\u63a5\u53e3\u6d4b\u8bd5\u6267\u884c\u8be5\u6d4b\u8bd5\uff0c\u6d4b\u8bd5\u5f00\u59cb\u6267\u884c\u540e\u81ea\u52a8\u8df3\u8f6c\u5230\u8be5\u6b21\u6267\u884c\u4ea7\u751f\u7684\u6d4b\u8bd5\u62a5\u544a Y Y \u62a5\u544a \u4ee5\u5217\u8868\u5f62\u5f0f\u5c55\u793a\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u6240\u6709\u9879\u76ee\u4e0b\u7684\u6240\u6709\u6d4b\u8bd5\u62a5\u544a Y Y Y \u5220\u9664\u6307\u5b9a\u7684\u6d4b\u8bd5\u62a5\u544a Y Y \u9009\u62e9\u67d0\u4e2a\u6d4b\u8bd5\u62a5\u544a\uff0c\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u8be6\u7ec6\u5185\u5bb9 Y Y Y \u9009\u62e9\u591a\u4e2a\u6d4b\u8bd5\u62a5\u544a\u5bf9\u6bd4\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u5185\u5bb9 Y Y Y \u6027\u80fd\u6d4b\u8bd5 \u9879\u76ee \u5217\u51fa\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u7684\u6240\u6709\u9879\u76ee Y Y Y \u6307\u5b9a\u9879\u76ee\u540d\u79f0\u3001\u63cf\u8ff0\u7b49\u4fe1\u606f\uff0c\u5728\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u521b\u5efa\u65b0\u9879\u76ee Y Y \u4fee\u6539\u6307\u5b9a\u9879\u76ee\u7684\u540d\u79f0\u3001\u63cf\u8ff0\u7b49\u4fe1\u606f Y Y \u5220\u9664\u6307\u5b9a\u9879\u76ee Y Y \u6d4b\u8bd5 \u4ee5\u5217\u8868\u5f62\u5f0f\u5c55\u793a\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u6240\u6709\u9879\u76ee\u4e0b\u7684\u6240\u6709\u6027\u80fd\u6d4b\u8bd5 Y Y Y \u70b9\u51fb\u521b\u5efa\u6d4b\u8bd5\u6309\u94ae\uff0c\u9009\u62e9\u6d4b\u8bd5\u6240\u5c5e\u9879\u76ee\uff0c\u586b\u5199\u6d4b\u8bd5\u7684\u5177\u4f53\u914d\u7f6e\u4fe1\u606f\u5e76\u4fdd\u5b58\u6d4b\u8bd5 Y Y \u5220\u9664\u6307\u5b9a\u7684\u6027\u80fd\u6d4b\u8bd5 Y Y \u9009\u62e9\u67d0\u4e2a\u6027\u80fd\u6d4b\u8bd5\uff0c\u67e5\u770b\u5e76\u7f16\u8f91\u4fee\u6539\u8be5\u6027\u80fd\u6d4b\u8bd5\u5177\u4f53\u4fe1\u606f Y Y \u4ec5\u67e5\u770b \u9009\u62e9\u67d0\u4e2a\u6027\u80fd\u6d4b\u8bd5\u6267\u884c\u8be5\u6d4b\u8bd5\uff0c\u6d4b\u8bd5\u5f00\u59cb\u6267\u884c\u540e\u81ea\u52a8\u8df3\u8f6c\u5230\u8be5\u6b21\u6267\u884c\u4ea7\u751f\u7684\u6d4b\u8bd5\u62a5\u544a Y Y \u62a5\u544a \u4ee5\u5217\u8868\u5f62\u5f0f\u5c55\u793a\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u6240\u6709\u9879\u76ee\u4e0b\u7684\u6240\u6709\u6d4b\u8bd5\u62a5\u544a Y Y Y \u5220\u9664\u6307\u5b9a\u7684\u6d4b\u8bd5\u62a5\u544a Y Y \u9009\u62e9\u67d0\u4e2a\u6d4b\u8bd5\u62a5\u544a\uff0c\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u8be6\u7ec6\u5185\u5bb9 Y Y Y \u9009\u62e9\u591a\u4e2a\u6d4b\u8bd5\u62a5\u544a\u5bf9\u6bd4\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u5185\u5bb9 Y Y Y"},{"location":"user_manual/api_test/","title":"Api test","text":"

    \u4f20\u7edf\u7684\u63a5\u53e3\u81ea\u52a8\u5316\u6d4b\u8bd5\u5927\u591a\u501f\u52a9\u7b2c\u4e09\u65b9\u6d4b\u8bd5\u6846\u67b6\uff0c\u4ee5\u4ee3\u7801\u5de5\u7a0b\u9879\u76ee\u7684\u5f62\u5f0f\u5b9e\u73b0\uff0c\u4e0d\u5229\u4e8e\u7ba1\u7406\u548c\u7ef4\u62a4\uff1b MeterSphere \u4e3a\u4e86\u89e3\u51b3\u8fd9\u4e2a\u95ee\u9898\uff0c\u5f00\u53d1\u4e86\u53ef\u89c6\u5316\u63a5\u53e3\u81ea\u52a8\u5316\u6d4b\u8bd5\u529f\u80fd\uff0c\u53ea\u9700\u8981\u914d\u7f6e\u6bcf\u4e2a\u63a5\u53e3\u7684\u5165\u53c2\u548c \u65ad\u8a00\uff0c\u5373\u53ef\u5b9e\u73b0\u5bf9\u63a5\u53e3\u7684\u81ea\u52a8\u5316\u6d4b\u8bd5\uff0c\u540c\u65f6\u8fd8\u5f00\u53d1\u4e86\u57fa\u4e8echrome\u6d4f\u89c8\u5668\u7684MeterSphere Recorder\u63d2\u4ef6\uff0c\u65b9\u4fbf\u5f55\u5236\u573a\u666f\u4ee5\u53ca\u5feb\u901f\u5bfc\u5165\u573a\u666f\uff0c\u5927\u5927\u63d0\u5347\u4e86\u63a5\u53e3\u6d4b\u8bd5\u7684\u6548\u7387\u3002

    "},{"location":"user_manual/api_test/#_1","title":"\u9996\u9875","text":"

    \u7531\u6d4b\u8bd5\u3001\u62a5\u544a\u3001\u6d4b\u8bd5\u65e5\u5386\u4e09\u4e2a\u90e8\u5206\u7ec4\u6210\uff0c\u53ef\u5feb\u901f\u4e86\u89e3\u5230\u6700\u8fd1\u6267\u884c\u7684\u6d4b\u8bd5\u5185\u5bb9\u4ee5\u53ca\u6574\u4f53\u7684\u63a5\u53e3\u6d4b\u8bd5\u9891\u6b21\u3002

    • \u6d4b\u8bd5\uff1a\u5c55\u793a\u6700\u8fd1 5 \u6b21\u6267\u884c\u7684\u63a5\u53e3\u6d4b\u8bd5

    • \u62a5\u544a\uff1a\u5c55\u793a\u6700\u8fd1 5 \u6b21\u6267\u884c\u7684\u63a5\u53e3\u6d4b\u8bd5\u6240\u751f\u6210\u7684\u62a5\u544a

    • \u6d4b\u8bd5\u65e5\u5386\uff1a\u6309\u65f6\u95f4\u7ef4\u5ea6\u5c55\u793a\u63a5\u53e3\u6d4b\u8bd5\u6267\u884c\u7684\u9891\u6b21\uff0c\u989c\u8272\u8d8a\u6df1\uff0c\u4ee3\u8868\u4f7f\u7528\u9891\u6b21\u8d8a\u9ad8

    "},{"location":"user_manual/api_test/#_2","title":"\u9879\u76ee","text":"

    \u5bf9\u9879\u76ee\u8fdb\u884c\u65b0\u589e\u3001\u4fee\u6539\u3001\u5220\u9664\u3001\u67e5\u8be2\u64cd\u4f5c

    "},{"location":"user_manual/api_test/#_3","title":"\u65b0\u589e\u9879\u76ee","text":"

    \u70b9\u51fb\u201c\u521b\u5efa\u9879\u76ee\u201d\uff0c\u5f55\u5165\u9879\u76ee\u540d\u79f0\u548c\u63cf\u8ff0

    "},{"location":"user_manual/api_test/#_4","title":"\u4fee\u6539\u9879\u76ee","text":"

    \u9009\u62e9\u8981\u4fee\u6539\u7684\u9879\u76ee\uff0c\u70b9\u51fb\u7f16\u8f91\u6309\u94ae

    "},{"location":"user_manual/api_test/#_5","title":"\u5220\u9664\u9879\u76ee","text":"

    \u9009\u62e9\u8981\u5220\u9664\u7684\u9879\u76ee\uff0c\u70b9\u51fb\u5220\u9664\u6309\u94ae

    "},{"location":"user_manual/api_test/#_6","title":"\u67e5\u8be2\u9879\u76ee","text":"

    \u67e5\u8be2\u5168\u90e8\u9879\u76ee\u9009\u62e9\u201c\u663e\u793a\u5168\u90e8\u201d\uff0c\u67e5\u8be2\u5355\u4e2a\u9879\u76ee\u53ef\u4ee5\u6839\u636e\u540d\u79f0\u641c\u7d22

    "},{"location":"user_manual/api_test/#_7","title":"\u73af\u5883\u914d\u7f6e","text":"

    \u53ef\u4ee5\u6dfb\u52a0\u8be5\u9879\u76ee\u4e0b\u63a5\u53e3\u7684\u5b9e\u9645\u73af\u5883\uff0c\u589e\u52a0\u4e86\u5168\u5c40 header\uff0c\u53ef\u4ee5\u5728\u9879\u76ee\u4e2d\u8bbe\u7f6e\u5168\u5c40 header \u503c\u3002\u5728\u63a5\u53e3\u8fd0\u884c\u9875\u9762\u7684\u573a\u666f\u4e2d\u4e5f\u589e\u52a0\u73af\u5883\u914d\u7f6e\u5f39\u5c42\u3002

    \u65b0\u589e\u5168\u5c40\u53d8\u91cf\uff0c\u53ef\u4ee5\u5728\u73af\u5883\u5217\u8868\u4e2d\u5b9a\u4e49\u5168\u5c40\u53d8\u91cf\u7684\u540d\u79f0\u548c\u503c\uff0c\u63a5\u53e3\u6d4b\u8bd5\u91cc\u9762\u53ef\u4ee5\u901a\u8fc7$(xx)\u6765\u8bbf\u95ee\u5f53\u524d\u73af\u5883\u53d8\u91cf\u4e0b\u5b9a\u4e49\u7684\u5168\u5c40\u53d8\u91cf

    "},{"location":"user_manual/api_test/#_8","title":"\u6d4b\u8bd5","text":"

    \u5bf9\u6d4b\u8bd5\u63a5\u53e3\u6216\u63a5\u53e3\u96c6\u5408\u8fdb\u884c\u65b0\u589e\u3001\u4fee\u6539\u3001\u5220\u9664\u3001\u67e5\u8be2\u64cd\u4f5c

    "},{"location":"user_manual/api_test/#_9","title":"\u521b\u5efa\u6d4b\u8bd5","text":"

    \u70b9\u51fb\u521b\u5efa\u6d4b\u8bd5\uff0c\u5982\u56fe 5 \u6b65\u5373\u53ef\u6210\u529f\u521b\u5efa\u63a5\u53e3\u6d4b\u8bd5

    \u76ee\u524d\u652f\u6301HTTP\u3001DUBBO \u4e24\u79cd\u534f\u8bae\u7684\u63a5\u53e3\u6d4b\u8bd5

    "},{"location":"user_manual/api_test/#_10","title":"\u573a\u666f\u914d\u7f6e","text":"

    \u573a\u666f\u5185\u7684\u5168\u5c40\u53d8\u91cf\u548c\u8bf7\u6c42\u5934\u914d\u7f6e\uff0c\u4f5c\u7528\u57df\u4e3a\u573a\u666f\u5185

    "},{"location":"user_manual/api_test/#_11","title":"\u73af\u5883\u914d\u7f6e","text":"

    \u573a\u666f\u4e2d\u53ef\u4ee5\u914d\u7f6e\u73af\u5883

    "},{"location":"user_manual/api_test/#_12","title":"\u81ea\u5b9a\u4e49\u53d8\u91cf","text":"

    \u5728\u573a\u666f\u914d\u7f6e\u4e2d\u81ea\u5b9a\u4e49\u53d8\u91cf\u7684\u540d\u79f0\u548c\u503c\uff0c \u63a5\u53e3\u8fd0\u884c\u6216\u8005\u6d4b\u8bd5\u96c6\u5408\u91cc\u9762\u53ef\u4ee5\u901a\u8fc7 ${BASE} \u6765\u8bbf\u95ee\u5f53\u524d\u573a\u666f\u4e0b\u5b9a\u4e49\u7684\u5168\u5c40\u53d8\u91cf

    "},{"location":"user_manual/api_test/#_13","title":"\u8bf7\u6c42\u5934","text":"

    \u8fd9\u91cc\u589e\u52a0\u5168\u5c40 header\uff0c\u53ef\u4ee5\u5728\u9879\u76ee\u4e2d\u8bbe\u7f6e\u5168\u5c40 header \u503c

    "},{"location":"user_manual/api_test/#dubbo","title":"Dubbo\u914d\u7f6e","text":"

    \u4e3b\u8981\u7528\u4e8eDubbo RPC\u63a5\u53e3\u6d4b\u8bd5

    \u534f\u8bae\u652f\u6301\uff1azookeeper\u3001nacos\u3001Apollo

    dubbo\u53c2\u6570\u652f\u6301\uff1aconnections\u3001loadbalance\u3001async

    "},{"location":"user_manual/api_test/#_14","title":"\u8bf7\u6c42\u914d\u7f6e","text":""},{"location":"user_manual/api_test/#http","title":"HTTP\u8bf7\u6c42","text":""},{"location":"user_manual/api_test/#_15","title":"\u5f15\u7528\u73af\u5883","text":"

    \u5f15\u7528\u73af\u5883\u5f00\u542f\u540e\uff0c\u53ef\u4ee5\u5f15\u7528\u73af\u5883\u4e2d\u7684\u57df\u540d\u3001\u8bf7\u6c42\u5934\u548c\u53d8\u91cf

    "},{"location":"user_manual/api_test/#_16","title":"\u8bf7\u6c42\u53c2\u6570","text":"

    \u63a5\u53e3 url \u7684\u67e5\u8be2\u5b57\u7b26\u4e32

    "},{"location":"user_manual/api_test/#_17","title":"\u8bf7\u6c42\u5934","text":"

    http\u8bf7\u6c42\u7684header\uff0c\u4f5c\u7528\u57df\u4e3a\u8bf7\u6c42\u5185

    "},{"location":"user_manual/api_test/#_18","title":"\u8bf7\u6c42\u5185\u5bb9","text":"

    http \u8bf7\u6c42\u7684 body \u90e8\u5206\uff0c\u5982\u679c http \u8bf7\u6c42\u65b9\u5f0f\u662f post\uff0c put \u7b49\u8bf7\u6c42\u65b9\u5f0f\u65f6\u4f1a\u6709 \u8bf7\u6c42\u5185\u5bb9 \u90e8\u5206\uff0c\u5f62\u5f0f\u67092\u79cd\uff0c\u5206\u522b\u662f \u952e\u503c\u5bf9\uff08form\uff09\u3001\u6587\u672c\uff08json\uff09

    "},{"location":"user_manual/api_test/#dubbo_1","title":"DUBBO\u8bf7\u6c42","text":"

    Dubbo \u8bf7\u6c42\u7531\u534f\u8bae\u3001\u914d\u7f6e\u4e2d\u5fc3\u3001\u8bf7\u6c42\u53c2\u6570\u4e09\u90e8\u5206\u7ec4\u5408\u800c\u6210

    "},{"location":"user_manual/api_test/#dubbo_2","title":"Dubbo \u534f\u8bae","text":"

    \u76ee\u524d\u4ec5\u652f\u6301dubbo\u534f\u8bae

    "},{"location":"user_manual/api_test/#_19","title":"\u914d\u7f6e\u4e2d\u5fc3","text":"

    Interface

    Config Center \u914d\u7f6e\u4e2d\u5fc3\uff0c\u534f\u8bae\u652f\u6301 Zookeeper\u3001Nacos\u3001Apollo

    Registry Center \u6ce8\u518c\u4e2d\u5fc3\uff0c\u652f\u6301 Zookeeper\u3001Redis\u3001Multicast\u3001simple

    Consumer & Service

    "},{"location":"user_manual/api_test/#_20","title":"\u8bf7\u6c42\u53c2\u6570","text":"

    Args

    "},{"location":"user_manual/api_test/#_21","title":"\u65ad\u8a00","text":"

    \u65ad\u8a00\u652f\u6301\u6587\u672c\u3001\u6b63\u5219\u548c\u54cd\u5e94\u65f6\u95f4\u4e09\u79cd\u65b9\u5f0f\uff0c\u9009\u62e9\u65ad\u8a00\u65b9\u5f0f\u540e\uff0c\u70b9\u51fb\u201c+\u201d\u751f\u6210\u89c4\u5219\u5373\u53ef\u751f\u6548

    "},{"location":"user_manual/api_test/#_22","title":"\u63d0\u53d6","text":"

    \u652f\u6301\u4ece\u54cd\u5e94\u4e2d\u63d0\u53d6\u8fd4\u56de\u503c\u4f5c\u4e3a\u53d8\u91cf\u5b58\u50a8\uff0c\u4f5c\u7528\u57df\u4e3a\u573a\u666f\u5185\uff0c\u63d0\u53d6\u65b9\u5f0f\u4e3a\u6b63\u5219\u3001JSONPath\u3001XPath\u4e09\u79cd

    "},{"location":"user_manual/api_test/#_23","title":"\u4fee\u6539\u6d4b\u8bd5","text":"

    \u8bf7\u6c42\u6267\u884c\u987a\u5e8f\u548c\u573a\u666f\u6267\u884c\u987a\u5e8f\u652f\u6301\u62d6\u62fd\u8c03\u6574\uff1b\u53d8\u66f4\u7ed3\u675f\u70b9\u51fb\u4fdd\u5b58

    "},{"location":"user_manual/api_test/#_24","title":"\u5220\u9664\u6d4b\u8bd5","text":"

    \u70b9\u51fb\u6d4b\u8bd5-\u663e\u793a\u5168\u90e8\uff0c\u9009\u62e9\u8981\u5220\u9664\u7684\u6d4b\u8bd5\uff0c\u70b9\u51fb\u5220\u9664\u6309\u94ae

    "},{"location":"user_manual/api_test/#_25","title":"\u67e5\u8be2\u6d4b\u8bd5","text":"

    \u67e5\u8be2\u5168\u90e8\u6d4b\u8bd5\uff0c\u70b9\u51fb\u663e\u793a\u5168\u90e8\uff0c\u67e5\u8be2\u5355\u4e2a\u6d4b\u8bd5\u53ef\u4ee5\u6839\u636e\u540d\u79f0\u641c\u7d22

    "},{"location":"user_manual/api_test/#_26","title":"\u6267\u884c\u6d4b\u8bd5","text":"

    \u4fdd\u5b58\u6210\u529f\u7684\u6d4b\u8bd5\u70b9\u51fb\u201c\u6267\u884c\u201d\u6309\u94ae\uff0c\u7f16\u8f91\u5b8c\u6210\u7684\u6d4b\u8bd5\u4e5f\u53ef\u4ee5\u70b9\u51fb\u201c\u4fdd\u5b58\u5e76\u6267\u884c\u201d\u6309\u94ae\uff0c\u9875\u9762\u5c06\u4f1a\u8df3\u8f6c\u5230\u5f53\u524d\u6d4b\u8bd5\u7684\u6d4b\u8bd5\u62a5\u544a\u4e2d\u3002

    "},{"location":"user_manual/api_test/#_27","title":"\u5b9a\u65f6\u4efb\u52a1","text":"

    \u4fdd\u5b58\u6210\u529f\u7684\u6d4b\u8bd5\uff0c\u53ef\u4ee5\u8bbe\u7f6e\u5b9a\u65f6\u4efb\u52a1\uff0c\u6d4b\u8bd5\u5c06\u4f1a\u5728\u6307\u5b9a\u65f6\u95f4\u8fd0\u884c\u5e76\u4ea7\u751f\u6d4b\u8bd5\u62a5\u544a

    "},{"location":"user_manual/api_test/#_28","title":"\u521b\u5efa\u5b9a\u65f6\u4efb\u52a1","text":"

    \u70b9\u51fbSCHEDULER\u53ef\u4ee5\u7f16\u8f91\u5b9a\u65f6\u4efb\u52a1\uff0c\u70b9\u51fb\u201c\u751f\u6210\u8868\u8fbe\u5f0f\u201d\u53ef\u5feb\u901f\u751f\u6210cron\u8868\u8fbe\u5f0f

    "},{"location":"user_manual/api_test/#_29","title":"\u5b9a\u65f6\u4efb\u52a1\u6267\u884c","text":"

    \u5b9a\u65f6\u4efb\u52a1\u4e3a\u5f00\u5173\u63a7\u5236\uff0c\u5e76\u5c55\u793a\u6700\u8fd1\u4e00\u6b21\u7684\u8ba1\u5212\u6267\u884c\u65f6\u95f4\uff0c\u751f\u6210\u7684\u6d4b\u8bd5\u62a5\u544a\u89e6\u53d1\u65b9\u5f0f\u4e3a\u201c\u5b9a\u65f6\u4efb\u52a1\u201d

    "},{"location":"user_manual/api_test/#_30","title":"\u66f4\u591a\u64cd\u4f5c","text":""},{"location":"user_manual/api_test/#_31","title":"\u521b\u5efa\u6027\u80fd\u6d4b\u8bd5","text":"

    \u521b\u5efa\u6027\u80fd\u6d4b\u8bd5\uff0c\u63a5\u53e3\u6d4b\u8bd5\u4fdd\u5b58\u540e\u53ef\u4ee5\u76f4\u63a5\u521b\u5efa\u8be5\u573a\u666f\u5bf9\u5e94\u7684\u6027\u80fd\u6d4b\u8bd5\uff0c\u914d\u7f6e\u538b\u529b\u6d4b\u8bd5\u53c2\u6570\u540e\uff0c\u53ef\u4e00\u952e\u6267\u884c

    "},{"location":"user_manual/api_test/#_32","title":"\u5bfc\u51fa","text":"

    \u5728\u66f4\u591a\u64cd\u4f5c\u4e2d\u9009\u62e9\u5bfc\u51fa\uff0c\u53ef\u4ee5\u5c06\u5f53\u524d\u6d4b\u8bd5\u5bfc\u51fa\u4e3ajson\u6587\u4ef6

    "},{"location":"user_manual/api_test/#_33","title":"\u5bfc\u5165","text":"

    \u652f\u6301\u5feb\u901f\u5bfc\u5165MeterSphere Record \uff0cpostman\uff0c swagger\u6570\u636e

    "},{"location":"user_manual/api_test/#metersphere-record","title":"MeterSphere Record","text":"

    \u4e3a MeterSphere \u914d\u5957\u7684\u6d4f\u89c8\u5668\u63d2\u4ef6\uff0c\u8be5\u63d2\u4ef6\u53ef\u5c06\u7528\u6237\u5728\u6d4f\u89c8\u5668\u64cd\u4f5c\u65f6\u7684 HTTP \u8bf7\u6c42\u8bb0\u5f55\u4e0b\u6765\u5e76\u751f\u6210 JMX \u6587\u4ef6\uff08JMeter \u811a\u672c\u6587\u4ef6\uff09\u6216 JSON \u6587\u4ef6\uff0c\u7528\u4e8e\u5728 MeterSphere \u4e2d\u8fdb\u884c\u63a5\u53e3\u6d4b\u8bd5\u6216\u6027\u80fd\u6d4b\u8bd5\u3002

    \u8be6\u7ec6\u4ecb\u7ecd\u4e0e\u5b89\u88c5\uff1ahttps://github.com/metersphere/chrome-extensions

    \u5f55\u5236\u811a\u672c\uff1a

    \u7f16\u8f91\u811a\u672c\uff1a\u53ef\u4ee5\u9488\u5bf9\u5f55\u5236\u7684\u8bf7\u6c42\u8fdb\u884c\u7f16\u8f91\u8c03\u6574\uff0c\u5bfc\u51fa\u683c\u5f0f\u652f\u6301JMX\u548cJSON\u4e24\u79cd

    \u5bfc\u5165\u811a\u672c\uff1aJSON\u811a\u672c\u53ef\u4ee5\u5bfc\u5165\u5230\u5e73\u53f0\u8fdb\u884c\u63a5\u53e3\u6d4b\u8bd5\uff0cJMX\u811a\u672c\u53ef\u4ee5\u5bfc\u5165\u5230\u5e73\u53f0\u8fdb\u884c\u6027\u80fd\u6d4b\u8bd5

    "},{"location":"user_manual/api_test/#postman","title":"postman","text":"

    \u5bfc\u51fapostman\u6d4b\u8bd5

    \u5bfc\u5165\u5230MeterSphere

    "},{"location":"user_manual/api_test/#swagger","title":"swagger","text":"

    swagger\u5bfc\u5165\uff1a\u5c06swagger\u6587\u4ef6\u5bfc\u5165\u5e73\u53f0

    "},{"location":"user_manual/api_test/#_34","title":"\u62a5\u544a","text":"

    \u5bf9\u63a5\u53e3\u6d4b\u8bd5\u62a5\u544a\u7684\u67e5\u8be2\u548c\u5220\u9664\u64cd\u4f5c

    "},{"location":"user_manual/api_test/#_35","title":"\u67e5\u8be2\u62a5\u544a","text":"

    \u67e5\u8be2\u5168\u90e8\u62a5\u544a\uff0c\u70b9\u51fb\u663e\u793a\u5168\u90e8\uff0c\u67e5\u8be2\u5355\u4e2a\u62a5\u544a\u53ef\u4ee5\u6839\u636e\u540d\u79f0\u641c\u7d22

    "},{"location":"user_manual/api_test/#_36","title":"\u62a5\u544a\u8be6\u60c5","text":"

    \u5c55\u793a\u63a5\u53e3\u6d4b\u8bd5\u7684\u6267\u884c\u7ed3\u679c\uff0c\u5305\u542b\u54cd\u5e94\u65f6\u95f4\u3001\u9519\u8bef\u3001\u65ad\u8a00\u4ee5\u53ca\u8bf7\u6c42\u7684\u5177\u4f53\u54cd\u5e94\u62a5\u6587\u7b49

    "},{"location":"user_manual/api_test/#_37","title":"\u5220\u9664\u62a5\u544a","text":"

    \u70b9\u51fb\u62a5\u544a-\u663e\u793a\u5168\u90e8\uff0c\u9009\u62e9\u8981\u5220\u9664\u7684\u62a5\u544a\uff0c\u70b9\u51fb\u5220\u9664\u6309\u94ae

    "},{"location":"user_manual/general/","title":"\u901a\u7528\u529f\u80fd","text":""},{"location":"user_manual/general/#1","title":"1 \u5207\u6362\u8bed\u8a00","text":"

    \u70b9\u51fb\u9875\u9762\u53f3\u4e0a\u65b9\u7684\u8bed\u8a00\u4e0b\u62c9\u83dc\u5355\uff0c\u8fdb\u884c\u6307\u5b9a\u8bed\u8a00\u7684\u5207\u6362\u3002

    "},{"location":"user_manual/general/#2","title":"2 \u5207\u6362\u5de5\u4f5c\u7a7a\u95f4","text":"

    \u5de5\u4f5c\u7a7a\u95f4\u7684\u6982\u5ff5\u8bf4\u660e\u53ca\u5173\u7cfb\u8bf7\u53c2\u8003 \u6982\u5ff5\u8bf4\u660e\u3002 \u9875\u9762\u53f3\u4e0a\u65b9\u5c55\u793a\u4e86\u7528\u6237\u5f53\u524d\u6240\u5904\u7684\u5de5\u4f5c\u7a7a\u95f4\u3002\u70b9\u51fb\u5de5\u4f5c\u7a7a\u95f4\u4e0b\u62c9\u83dc\u5355\uff0c\u83dc\u5355\u4e2d\u5217\u51fa\u4e86\u5f53\u524d\u7528\u6237\u5177\u6709\u6743\u9650\u7684\u5de5\u4f5c\u7a7a\u95f4\u5217\u8868\uff0c\u70b9\u51fb\u67d0\u4e2a\u5de5\u4f5c\u7a7a\u95f4\u8fdb\u884c\u5207\u6362\u3002

    "},{"location":"user_manual/general/#3","title":"3 \u5207\u6362\u9879\u76ee","text":"

    MeterSphere \u4e2d\u7684\u6d4b\u8bd5\u7528\u4f8b\u3001\u63a5\u53e3\u5b9a\u4e49\u3001\u6027\u80fd\u6d4b\u8bd5\u7b49\u8d44\u6e90\u5747\u4f7f\u7528\u9879\u76ee\u8fdb\u884c\u9694\u79bb\uff0c\u7528\u6237\u9700\u8981\u64cd\u4f5c\u53e6\u4e00\u4e2a\u9879\u76ee\u4e2d\u7684\u8d44\u6e90\u65f6\u9700\u8981\u5148\u8fdb\u884c\u9879\u76ee\u5207\u6362\u3002 \u70b9\u51fb\u5de6\u4e0a\u65b9\u7684\u9879\u76ee\u4e0b\u62c9\u83dc\u5355\uff0c\u83dc\u5355\u4e2d\u5217\u51fa\u4e86\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e0b\u7684\u9879\u76ee\u5217\u8868\uff0c\u70b9\u51fb\u67d0\u4e2a\u9879\u76ee\u8fdb\u884c\u5207\u6362\u3002

    "},{"location":"user_manual/general/#4","title":"4 \u6279\u91cf\u64cd\u4f5c","text":"

    \u7cfb\u7edf\u4e2d\u7684\u5927\u90e8\u5206\u5217\u8868\u5747\u63d0\u4f9b\u4e86\u591a\u9009\u53ca\u5168\u9009\u529f\u80fd\uff0c\u5f53\u9009\u4e2d\u591a\u4e2a\u6570\u636e\u540e\u53ef\u4ee5\u70b9\u51fb\u3010\u6279\u91cf\u5904\u7406\u3011\u6309\u94ae\u8fdb\u884c\u6279\u91cf\u64cd\u4f5c\u3002

    \u4e3a\u4e86\u66f4\u65b9\u4fbf\u7684\u8fdb\u884c\u5168\u9009\u64cd\u4f5c\uff0c\u7cfb\u7edf\u63d0\u4f9b\u4e86\u4e24\u79cd\u5168\u9009\u6a21\u5f0f\u3002\u70b9\u51fb\u5217\u8868\u5de6\u4e0a\u65b9\u5168\u9009\u6846\u65c1\u8fb9\u7684\u4e0b\u62c9\u6309\u94ae\uff0c\u9009\u62e9\u3010\u9009\u62e9\u53ef\u89c1\u6570\u636e\u3011\u9009\u9879\uff0c\u8be5\u65b9\u5f0f\u53ea\u9009\u4e2d\u5f53\u524d\u5206\u9875\u4e2d\u53ef\u89c1\u7684\u6570\u636e\u6761\u76ee\u3002\u9009\u62e9\u3010\u9009\u62e9\u6240\u6709\u6570\u636e\u3011\u9879\uff0c\u8be5\u65b9\u5f0f\u9009\u4e2d\u5f53\u524d\u5217\u8868\u6240\u6709\u5206\u9875\u4e2d\u7684\u6570\u636e\u6761\u76ee\u3002

    \u8bf4\u660e

    \u76f4\u63a5\u70b9\u51fb\u5168\u9009\u6846\u4e0d\u4e0b\u62c9\u9009\u62e9\u65f6\u9ed8\u8ba4\u4f7f\u7528\u3010\u9009\u62e9\u53ef\u89c1\u6570\u636e\u3011\u65b9\u5f0f\u3002

    "},{"location":"user_manual/general/#5","title":"5 \u67e5\u8be2\u7ba1\u7406","text":"

    \u5728\u6240\u6709\u5217\u8868\u4fe1\u606f\u9875\u9762\uff0c\u7cfb\u7edf\u90fd\u4f1a\u63d0\u4f9b\u67e5\u8be2\u529f\u80fd\uff0c\u67e5\u8be2\u529f\u80fd\u4e00\u822c\u6709\u5355\u4e00\u67e5\u8be2\uff0c\u6216\u540c\u65f6\u63d0\u4f9b\u5355\u4e00\u67e5\u8be2\u548c\u9ad8\u7ea7\u67e5\u8be2\u3002

    "},{"location":"user_manual/general/#51","title":"5.1 \u5355\u4e00\u67e5\u8be2","text":"

    \u5355\u4e00\u67e5\u8be2\uff1a\u4e00\u822c\u6309ID\u3001\u540d\u79f0\u7b49\u4fe1\u606f\u6a21\u7cca\u67e5\u8be2\uff0c\u5e76\u4e14\u5728\u67e5\u8be2\u8f93\u5165\u6846\u5185\u6709\u76f8\u5e94\u6761\u4ef6\u7684\u8bf4\u660e\uff0c\u5982\u4e0b\u56fe

    "},{"location":"user_manual/general/#52","title":"5.2 \u9ad8\u7ea7\u67e5\u8be2","text":"

    \u5728\u90e8\u5206\u5217\u8868\u4fe1\u606f\u9875\u9762\u7684\u53f3\u4e0a\u89d2\u4f1a\u63d0\u4f9b\u9ad8\u7ea7\u67e5\u8be2\u529f\u80fd\u3002 \u70b9\u51fb\u3010\u9ad8\u7ea7\u67e5\u8be2\u3011\u53ef\u770b\u5230\u63d0\u4f9b\u7684\u591a\u79cd\u6761\u4ef6\u7684\u7ec4\u5408\u67e5\u8be2\u3002\u4e0d\u540c\u9875\u9762\u7684\u9ad8\u7ea7\u67e5\u8be2\u6761\u4ef6\u4e0d\u4e00\u6837\uff0c\u4e0b\u9762\u4e3e\u4f8b\u7684\u662f\u529f\u80fd\u7528\u4f8b\u5217\u8868\u4e2d\u7684\u9ad8\u7ea7\u67e5\u8be2\u9875\u9762\u3002

    "},{"location":"user_manual/general/#6","title":"6 \u8868\u5934\u529f\u80fd","text":"

    \u5217\u8868\u6a21\u5f0f\u4e0b\uff0c\u5728\u4fe1\u606f\u5217\u8868\u5934\u4e0a\u63d0\u4f9b\u4e86\u5176\u4ed6\u76f8\u5173\u529f\u80fd\uff1a\u6bd4\u5982\u67e5\u8be2\u3001\u5217\u8868\u4fe1\u606f\u663e\u793a\u8bbe\u7f6e\u7b49\u3002

    "},{"location":"user_manual/general/#61","title":"6.1 \u590d\u9009\u6846\u529f\u80fd","text":"

    \u5728\u5217\u8868\u4fe1\u606f\u9875\u7684\u7b2c\u4e00\u5217\u590d\u9009\u6846\u5934\u90e8\uff0c\u6709\u4e2a\u5411\u4e0b\u7bad\u5934\u3010V\u3011\uff0c\u70b9\u51fb\u5411\u4e0b\u7bad\u5934\u3010V\u3011\u53ef\u4ee5\u770b\u5230\u5bf9\u4e8e\u8bb0\u5f55\u7684\u9009\u4e2d\u63d0\u4f9b\u4e24\u79cd\u9009\u62e9\u6570\u636e\u8303\u56f4\uff0c\u5373\u5bf9\u5f53\u524d\u9875\uff0c\u6216\u5bf9\u67e5\u8be2\u5230\u7684\u6240\u6709\u8bb0\u5f55\u3002

    "},{"location":"user_manual/general/#62","title":"6.2 \u5217\u8868\u5185\u67e5\u8be2","text":"

    \u5728\u5217\u8868\u4fe1\u606f\u5934\u4e2d\uff0c\u5982\u679c\u8868\u5934\u4fe1\u606f\u6709\u5411\u4e0b\u7bad\u5934\u3010V\u3011\uff0c\u5219\u8868\u793a\u5728\u5f53\u524d\u7684\u5217\u8868\u4fe1\u606f\u96c6\u4e2d\uff0c\u53ef\u4ee5\u6839\u636e\u6b64\u4fe1\u606f\u8fdb\u884c\u5feb\u901f\u7b5b\u9009\u67e5\u8be2\u3002

    "},{"location":"user_manual/general/#63","title":"6.3 \u6392\u5e8f\u529f\u80fd","text":"

    \u5728\u5217\u8868\u4fe1\u606f\u5934\u4e2d\uff0c\u5982\u679c\u8868\u5934\u4fe1\u606f\u6709\u5411\u4e0a\u4e0b\u7bad\u5934\uff0c\u5219\u8868\u793a\u6839\u636e\u6b64\u5b57\u6bb5\u5bf9\u5f53\u524d\u7684\u5217\u8868\u4fe1\u606f\u96c6\u8fdb\u884c\u5012\u5e8f\u548c\u6b63\u5e8f\u6392\u5217\u3002\u7cfb\u7edf\u4e00\u822c\u63d0\u4f9b\u591a\u79cd\u4fe1\u606f\u7684\u6b63\u5e8f\u6216\u5012\u5e8f\u7684\u6392\u5217\u3002

    "},{"location":"user_manual/general/#64","title":"6.4 \u81ea\u5b9a\u4e49\u5217\u8868\u663e\u793a","text":"

    \u7cfb\u7edf\u5bf9\u4e8e\u90e8\u5206\u5217\u8868\u4fe1\u606f\u9875\u9762\uff0c\u90fd\u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u5217\u8868\u663e\u793a\u4fe1\u606f\u7684\u8bbe\u7f6e\u3002 \u5728\u4fe1\u606f\u5217\u8868\u7684\u64cd\u4f5c\u5217\uff0c\u5934\u90e8\u6709\u3010\u8bbe\u7f6e\u3011\u6309\u94ae\uff0c\u53ef\u4ee5\u81ea\u5b9a\u4e49\u5217\u8868\u663e\u793a\u6570\u636e\u7684\u5b57\u6bb5\u3002

    \u4e0b\u9762\u4ee5\u6d4b\u8bd5\u8ba1\u5212\u9875\u9762\u7684\u8bbe\u7f6e\u4e3a\u4f8b\uff0c\u70b9\u51fb\u3010\u8bbe\u7f6e\u3011\u6309\u94ae\uff0c\u5f39\u51fa\u8868\u5934\u663e\u793a\u5b57\u6bb5\u8bbe\u7f6e\uff0c\u7cfb\u7edf\u9ed8\u8ba4\u663e\u793a\u6240\u6709\u5b57\u6bb5\u3002 \u9700\u8981\u663e\u793a\u7684\u5b57\u6bb5\u79fb\u5230\u53f3\u8fb9\u5df2\u9009\u5b57\u6bb5\u6846\u4e2d\uff1b\u4e0d\u9700\u8981\u663e\u793a\u7684\u5b57\u6bb5\u79fb\u5230\u5de6\u8fb9\u5f85\u9009\u5b57\u6bb5\u6846\u4e2d\u3002

    \u70b9\u51fb\u3010\u786e\u5b9a\u3011\u5b8c\u6210\u8bbe\u7f6e\uff0c\u7cfb\u7edf\u4f1a\u8fd4\u56de\u4fe1\u606f\u5217\u8868\u9875\u9762\uff0c\u6b64\u65f6\u7cfb\u7edf\u4f1a\u81ea\u52a8\u5237\u65b0\u4fe1\u606f\u5217\u8868\u9875\uff0c\u6b64\u65f6\u6309\u8bbe\u7f6e\u7684\u4fe1\u606f\u8fdb\u884c\u663e\u793a\u3002

    "},{"location":"user_manual/general/#65","title":"6.5 \u8c03\u6574\u5217\u8868\u5bbd\u5ea6","text":"

    \u70b9\u51fb\u5217\u8868\u8868\u5934\u5217\u4e2d\u95f4\u7684\u3010|\u3011\uff0c\u53ef\u5de6\u53f3\u62d6\u52a8\u81ea\u5b9a\u4e49\u8c03\u6574\u5217\u8868\u7684\u5bbd\u5ea6\u3002

    "},{"location":"user_manual/general/#7","title":"7 \u4e2a\u4eba\u4fe1\u606f","text":"

    \u5728\u53f3\u4e0a\u89d2\u7528\u6237\u540d\u5904\u7684\u4e0b\u62c9\u83dc\u5355\u4e2d\uff0c\u9009\u62e9\u3010\u4e2a\u4eba\u4fe1\u606f\u3011\u9009\u9879\uff0c\u53ef\u770b\u5f53\u524d\u4e2a\u4eba\u76f8\u5173\u7684\u914d\u7f6e\u4fe1\u606f\u3002

    "},{"location":"user_manual/general/#8","title":"8 \u67e5\u770b\u7248\u672c\u4fe1\u606f","text":"

    \u5728\u53f3\u4e0a\u89d2\u7528\u6237\u540d\u5904\u7684\u4e0b\u62c9\u83dc\u5355\u4e2d\uff0c\u9009\u62e9\u3010\u5173\u4e8e\u3011\u9009\u9879\uff0c\u5728\u5f39\u51fa\u7684\u9875\u9762\u4e2d\u53ef\u4ee5\u67e5\u770b\u5f53\u524d\u7248\u672c\u4fe1\u606f\u3002

    "},{"location":"user_manual/general/#9","title":"9 \u67e5\u770b\u5e2e\u52a9\u6587\u6863","text":"

    \u5728\u53f3\u4e0a\u89d2\u7528\u6237\u540d\u5904\u7684\u4e0b\u62c9\u83dc\u5355\u4e2d\uff0c\u9009\u62e9\u3010\u5e2e\u52a9\u6587\u6863\u3011\u9009\u9879\uff0c\u6d4f\u89c8\u5668\u5c06\u5728\u65b0\u9875\u9762\u6253\u5f00\u5728\u7ebf\u6587\u6863\u9875\u9762\u3002

    "},{"location":"user_manual/general/#10-api","title":"10 \u67e5\u770b API \u6587\u6863","text":"

    \u5728\u53f3\u4e0a\u89d2\u7528\u6237\u540d\u5904\u7684\u4e0b\u62c9\u83dc\u5355\u4e2d\uff0c\u9009\u62e9\u3010API\u6587\u6863\u3011\u9009\u9879\uff0c\u6d4f\u89c8\u5668\u5c06\u5728\u65b0\u9875\u9762\u6253\u5f00\u5185\u7f6e\u7684 API \u6587\u6863\u9875\u9762\u3002

    "},{"location":"user_manual/general/#11","title":"11 \u9000\u51fa\u7cfb\u7edf","text":"

    \u5728\u53f3\u4e0a\u89d2\u7528\u6237\u540d\u5904\u7684\u4e0b\u62c9\u83dc\u5355\u4e2d\uff0c\u9009\u62e9\u3010\u9000\u51fa\u7cfb\u7edf\u3011\u9009\u9879\uff0c\u9875\u9762\u5c06\u4f1a\u8df3\u5230\u767b\u5f55\u9875\u9762\u3002

    "},{"location":"user_manual/api_test/api_automation/","title":"\u63a5\u53e3\u81ea\u52a8\u5316","text":"

    \u573a\u666f\u662f\u63a5\u53e3\u81ea\u52a8\u5316\u4e2d\u7684\u57fa\u672c\u7ba1\u7406\u5355\u5143\uff0c\u7531\u4e00\u7ec4\u7528\u4f8b\u548c\u63a5\u53e3\u7ec4\u88c5\u800c\u6210\u3002\u5982\u7528\u6237\u7ba1\u7406\u573a\u666f\uff0c\u5305\u542b\u7528\u6237\u6ce8\u518c\u3001\u7528\u6237\u767b\u9646\u3001\u7528\u6237\u4fee\u6539\u3001\u7528\u6237\u6ce8\u9500\u3001\u7528\u6237\u9500\u6237\u7b49\u7528\u4f8b\u6216\u8005\u63a5\u53e3\u3002 MeterSphere \u652f\u6301\u5bfc\u5165\u63a5\u53e3\u901a\u8fc7\u62d6\u62fd\u7684\u65b9\u5f0f\u5bf9\u4e0a\u8ff0\u573a\u666f\u8fdb\u884c\u7528\u4f8b/\u63a5\u53e3\u7684\u7f16\u6392\u8bbe\u8ba1\u3002\u5728\u63a5\u53e3\u81ea\u52a8\u5316\u811a\u672c\u4e2d\u652f\u6301\u6dfb\u52a0\u5404\u79cd\u534f\u8bae\u7684\u8bf7\u6c42\u3001\u65ad\u8a00\u3001\u81ea\u5b9a\u4e49\u811a\u672c\u3001\u903b\u8f91\u63a7\u5236\u5668\u7b49\u7ec4\u4ef6\u5b8c\u6210\u4e00\u4e2a\u63a5\u53e3\u6d4b\u8bd5\u573a\u666f\uff0c\u5e76\u4e14\u652f\u6301\u5b9a\u65f6\u3001API\u8c03\u7528\u3001Jenkins\u8c03\u7528\u65b9\u5f0f\u89e6\u53d1\u81ea\u52a8\u5316\u6267\u884c\u4efb\u52a1\u3002

    "},{"location":"user_manual/api_test/api_automation/#1","title":"1 \u6a21\u5757\u6811\u7ba1\u7406","text":"

    \u6bcf\u4e2a\u573a\u666f\u90fd\u9700\u8981\u5c5e\u4e8e\u4e00\u4e2a\u7279\u5b9a\u7684\u6a21\u5757\uff0c\u5728\u521b\u5efa\u573a\u666f\u524d\u9700\u8981\u5148\u89c4\u5212\u5e76\u521b\u5efa\u6a21\u5757\u6811\u3002\u63a5\u53e3\u81ea\u52a8\u5316\u4e0e\u63a5\u53e3\u5b9a\u4e49\u4e2d\u7684\u6a21\u5757\u6811\u76f8\u4e92\u72ec\u7acb\uff0c\u63a5\u53e3\u5b9a\u4e49\u4e2d\u521b\u5efa\u7684\u6a21\u5757\u4e0d\u4f1a\u51fa\u73b0\u5728\u63a5\u53e3\u81ea\u52a8\u5316\u7684\u6a21\u5757\u6811\u4e2d\u3002 \u5177\u4f53\u7684\u6a21\u5757\u7ba1\u7406\u64cd\u4f5c\u4e0e\u63a5\u53e3\u5b9a\u4e49\u4e2d\u7684\u6a21\u5757\u6811\u7c7b\u4f3c\uff0c\u8bf7\u53c2\u8003\u63a5\u53e3\u5b9a\u4e49\u4e2d\u7684 \u6a21\u5757\u6811\u7ba1\u7406\u3002

    "},{"location":"user_manual/api_test/api_automation/#2","title":"2 \u573a\u666f\u7ba1\u7406","text":""},{"location":"user_manual/api_test/api_automation/#21","title":"2.1 \u5feb\u6377\u529f\u80fd","text":"

    \u573a\u666f\u5217\u8868\u7684\u5feb\u6377\u6309\u94ae\u6709\u3010\u6267\u884c\u3011\u3010\u7f16\u8f91\u3011\u3010\u590d\u5236\u3011\u3010\u5220\u9664\u3011\u70b9\u51fb\u66f4\u591a\u53ef\u64cd\u4f5c\u3010\u67e5\u770b\u5f15\u7528\u3011\u3010\u5b9a\u65f6\u4efb\u52a1\u3011\u3010\u521b\u5efa\u6027\u80fd\u6d4b\u8bd5\u3011\u3002

    "},{"location":"user_manual/api_test/api_automation/#22","title":"2.2 \u5feb\u901f\u521b\u5efa","text":"

    \u9009\u62e9\u4e00\u4e2a\u6a21\u5757\uff0c\u70b9\u51fb\u3010\u66f4\u591a\u64cd\u4f5c-\u521b\u5efa\u573a\u666f\u3011\u6309\u94ae\uff0c\u53ef\u4ec5\u586b\u5199\u63a5\u53e3\u57fa\u672c\u4fe1\u606f\uff0c\u5728\u8be5\u6a21\u5757\u4e0b\u5feb\u901f\u521b\u5efa\u63a5\u53e3\u3002

    "},{"location":"user_manual/api_test/api_automation/#23","title":"2.3 \u7f16\u8f91\u8be6\u60c5","text":"

    \u5728\u573a\u666f\u5217\u8868\u4e2d\u70b9\u51fb\u6307\u5b9a\u573a\u666f\u64cd\u4f5c\u5217\u4e2d\u7684\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u8fdb\u5165\u573a\u666f\u8be6\u60c5\u7f16\u8f91\u9875\u9762\u3002\u5728\u8be5\u9875\u9762\u4e2d\u53ef\u5bf9\u573a\u666f\u7684\u57fa\u7840\u4fe1\u606f\uff0c\u573a\u666f\u7684\u5177\u4f53\u6b65\u9aa4\u7b49\u8fdb\u884c\u8fdb\u4e00\u6b65\u7f16\u8f91\uff0c\u7f16\u8f91\u5b8c\u6210\u540e\u70b9\u51fb\u53f3\u4e0a\u89d2\u7684\u4fdd\u5b58\u6309\u94ae\u8fdb\u884c\u4fdd\u5b58\u3002

    "},{"location":"user_manual/api_test/api_automation/#24","title":"2.4 \u573a\u666f\u53d8\u91cf\u914d\u7f6e","text":"

    \u5728\u6dfb\u52a0\u573a\u666f\u6b65\u9aa4\u524d\u53ef\u4ee5\u6dfb\u52a0\u6574\u4e2a\u573a\u666f\u516c\u7528\u7684\u53d8\u91cf\u53c2\u6570\uff0c\u652f\u6301\u591a\u79cd\u4e0d\u540c\u7c7b\u578b\uff0c\u5728\u573a\u666f\u4e2d\u7684\u6b65\u9aa4\u5747\u53ef\u5f15\u7528\u8fd9\u4e9b\u53c2\u6570\u3002

    \u53c2\u6570\u8bf4\u660e

    • \u3010\u5e38\u91cf\u3011

      • \u53d8\u91cf\u540d: \u8be5\u53d8\u91cf\u7684\u53d8\u91cf\u540d\uff0c\u53ef\u4ee5\u5728\u573a\u666f\u6b65\u9aa4\u4e2d\u901a\u8fc7 ${varName} \u7684\u5f62\u5f0f\u5f15\u7528\u8be5\u53d8\u91cf\u3002
      • \u63cf\u8ff0\uff1a\u9488\u5bf9\u8be5\u53d8\u91cf\u7684\u8be6\u7ec6\u8bf4\u660e\u3002
      • \u503c\uff1a\u8be5\u53d8\u91cf\u7684\u503c\uff0c\u53ef\u4ee5\u4f7f\u7528 JMeter \u4e2d\u7684\u5185\u7f6e\u51fd\u6570\u3002
      • \u4e3e\u4f8b\u8bf4\u660e\uff1a\u5b9a\u4e49\u53d8\u91cf\u540d\u4e3a varName\uff0c\u53d8\u91cf\u503c\u4e3a varValue \u7684\u53d8\u91cf\uff0c\u5728\u540e\u7eed\u6b65\u9aa4\u4e2d\u901a\u8fc7 ${varName} \u5f15\u7528\u5f97\u5230 varValue\u3002
    • \u3010\u5217\u8868\u3011

      • \u53d8\u91cf\u540d: \u8be5\u53d8\u91cf\u7684\u53d8\u91cf\u540d\uff0c\u53ef\u4ee5\u5728\u573a\u666f\u6b65\u9aa4\u4e2d\u901a\u8fc7 ${varName} \u7684\u5f62\u5f0f\u5f15\u7528\u8be5\u53d8\u91cf\u3002
      • \u63cf\u8ff0\uff1a\u9488\u5bf9\u8be5\u53d8\u91cf\u7684\u8be6\u7ec6\u8bf4\u660e\u3002
      • \u503c\uff1a\u4ee5\u9017\u53f7 , \u5206\u9694\u7684\u503c\u5217\u8868\uff0c\u53ef\u4ee5\u5728\u6b65\u9aa4\u4e2d\u901a\u8fc7 ${varName_n} \u7684\u5f62\u5f0f\u5f15\u7528\u6307\u5b9a\u4f4d\u7f6e\u7684\u503c\uff0c\u5176\u4e2d n \u4ee3\u8868\u8981\u5f15\u7528\u7684\u503c\u7684\u4f4d\u7f6e\uff0c\u4ece 1 \u5f00\u59cb\u3002
      • \u4e3e\u4f8b\u8bf4\u660e\uff1a\u5b9a\u4e49\u53d8\u91cf\u540d\u4e3a listVar\uff0c\u53d8\u91cf\u503c\u4e3a value1,value2,value3 \u7684\u53d8\u91cf\uff0c\u5728\u540e\u7eed\u6b65\u9aa4\u4e2d\u901a\u8fc7 ${listVar_1} \u5f15\u7528\u5f97\u5230 value1\uff0c\u901a\u8fc7 ${listVar_2} \u5f15\u7528\u5f97\u5230 value2\u3002
    • \u3010CSV\u3011

      • \u53d8\u91cf\u540d: CSV \u6587\u4ef6\u7684\u540d\u79f0\uff0c\u4ec5\u8d77\u5230\u6807\u8bb0\u4f5c\u7528\uff0c\u65e0\u6cd5\u5728\u573a\u666f\u6b65\u9aa4\u4e2d\u901a\u8fc7 ${varName} \u7684\u5f62\u5f0f\u5f15\u7528\u8be5\u53d8\u91cf\u3002
      • \u63cf\u8ff0\uff1a\u9488\u5bf9\u8be5\u53d8\u91cf\u7684\u8be6\u7ec6\u8bf4\u660e\u3002
      • \u6dfb\u52a0\u6587\u4ef6\uff1aCSV \u6587\u4ef6\u9009\u62e9\uff0c\u4ece\u672c\u5730\u4e0a\u4f20 CSV \u6587\u4ef6\u3002
      • Encoding\uff1aCSV \u6587\u4ef6\u7684\u7f16\u7801\u683c\u5f0f\u3002
      • \u5206\u9694\u7b26\uff1aCSV \u6587\u4ef6\u4e2d\u7684\u6570\u636e\u5206\u9694\u7b26\uff0c\u9ed8\u8ba4\u4e3a ,\u3002
      • \u4e3e\u4f8b\u8bf4\u660e\uff1a\u4e0a\u4f20 CSV \u4e2d\u7684\u5185\u5bb9\u5982\u4e0b\u6240\u793a\uff0c\u7b2c\u4e00\u5217\u4e3a\u53d8\u91cf\u540d\u5217\uff0c\u53ef\u4ee5\u5728\u573a\u666f\u7684\u540e\u7eed\u6b65\u9aa4\u4e2d\u901a\u8fc7 ${name}\uff0c${age} \u5206\u522b\u5f15\u7528\u7b2c\u4e00\u5217\u548c\u7b2c\u4e8c\u5217\u7684\u503c\u3002\u5f53\u5728\u5faa\u73af\u63a7\u5236\u5668\u5916\u5f15\u7528\u53d8\u91cf\u65f6\uff0c\u53d8\u91cf\u503c\u4e3a\u7b2c\u4e00\u4e2a\u6570\u636e\u503c\uff0c${name}=Andy\uff0c${age}=20\uff1b\u5f53\u5728\u5faa\u73af\u63a7\u5236\u5668\u5185\u5f15\u7528\u53d8\u91cf\u65f6\uff0c\u6bcf\u8fed\u4ee3\u4e00\u6b21\u90fd\u4f1a\u53d6\u4e0b\u4e00\u884c\u7684\u6570\u636e\u503c\u3002

        name,age\nAndy,20\nTom,22\n
    • \u3010\u8ba1\u6570\u5668\u3011

      • \u53d8\u91cf\u540d: \u8be5\u53d8\u91cf\u7684\u53d8\u91cf\u540d\uff0c\u53ef\u4ee5\u5728\u573a\u666f\u6b65\u9aa4\u4e2d\u901a\u8fc7 ${varName} \u7684\u5f62\u5f0f\u5f15\u7528\u8be5\u53d8\u91cf\u3002
      • \u63cf\u8ff0\uff1a\u9488\u5bf9\u8be5\u53d8\u91cf\u7684\u8be6\u7ec6\u8bf4\u660e\u3002
      • \u5f00\u59cb\uff1a\u8ba1\u6570\u5668\u53d8\u91cf\u7684\u8d77\u59cb\u503c\uff0c\u5373\u6700\u5c0f\u503c\u3002
      • \u7ed3\u675f\uff1a\u8ba1\u6570\u5668\u53d8\u91cf\u7684\u7ed3\u675f\u503c\uff0c\u5373\u6700\u5927\u503c\u3002
      • \u589e\u91cf\uff1a\u8ba1\u6570\u5668\u53d8\u91cf\u6bcf\u6b21\u589e\u52a0\u7684\u589e\u91cf\u503c\uff0c\u9ed8\u8ba4\u4e3a 1\u3002
      • \u4e3e\u4f8b\u8bf4\u660e\uff1a\u5b9a\u4e49\u53d8\u91cf\u540d\u4e3a counter1 \u7684\u8ba1\u6570\u5668\u53d8\u91cf\uff0c\u5f00\u59cb\u503c\u4e3a 1\uff0c\u7ed3\u675f\u503c\u4e3a 100\uff0c\u589e\u91cf\u4e3a 1\u3002\u5f53\u5728\u5faa\u73af\u63a7\u5236\u5668\u5916\u5f15\u7528\u53d8\u91cf\u65f6\uff0c\u53d8\u91cf\u503c\u4e0d\u4f1a\u9012\u589e\uff0c\u4e00\u76f4\u4e3a\u5f53\u524d\u503c\uff1b\u5f53\u5728\u5faa\u73af\u63a7\u5236\u5668\u5185\u5f15\u7528\u53d8\u91cf\u65f6\uff0c\u6bcf\u8fed\u4ee3\u4e00\u6b21\u53d8\u91cf\u503c\u90fd\u4f1a\u589e\u52a0\u4e00\u6b21\u3002
    • \u3010\u968f\u673a\u6570\u3011

      • \u53d8\u91cf\u540d: \u8be5\u53d8\u91cf\u7684\u53d8\u91cf\u540d\uff0c\u53ef\u4ee5\u5728\u573a\u666f\u6b65\u9aa4\u4e2d\u901a\u8fc7 ${varName} \u7684\u5f62\u5f0f\u5f15\u7528\u8be5\u53d8\u91cf\u3002
      • \u63cf\u8ff0\uff1a\u9488\u5bf9\u8be5\u53d8\u91cf\u7684\u8be6\u7ec6\u8bf4\u660e\u3002
      • \u6700\u5c0f\u503c\uff1a\u968f\u673a\u8303\u56f4\u7684\u6700\u5c0f\u503c\u3002
      • \u6700\u5927\u503c\uff1a\u968f\u673a\u8303\u56f4\u7684\u6700\u5927\u503c\u3002
      • \u8f93\u51fa\u683c\u5f0f\uff1a\u968f\u673a\u6570\u7684\u8f93\u51fa\u683c\u5f0f\uff0c\u4f8b\u5982\u8bbe\u5b9a\u6700\u5c0f\u503c 1\uff0c\u6700\u5927\u503c 100\uff0c\u8f93\u51fa\u683c\u5f0f\u4e3a 000\uff0c\u5219\u53d8\u91cf\u503c\u4e3a 013\uff0c074 \u8fd9\u6837\u7684\u683c\u5f0f\u3002
      • \u4e3e\u4f8b\u8bf4\u660e\uff1a\u5b9a\u4e49\u53d8\u91cf\u540d\u4e3a random1\uff0c\u6700\u5c0f\u503c 1\uff0c\u6700\u5927\u503c 100\uff0c\u8f93\u51fa\u683c\u5f0f\u4e3a 000 \u7684\u53d8\u91cf\u3002\u5f53\u5728\u5faa\u73af\u63a7\u5236\u5668\u5916\u5f15\u7528\u53d8\u91cf\u65f6\uff0c\u591a\u6b21\u5f15\u7528\u53d8\u91cf\u503c\u4e0d\u4f1a\u91cd\u65b0\u968f\u673a\uff0c\u4e00\u76f4\u4e3a\u5f53\u524d\u503c\uff1b\u5f53\u5728\u5faa\u73af\u63a7\u5236\u5668\u5185\u5f15\u7528\u53d8\u91cf\u65f6\uff0c\u6bcf\u8fed\u4ee3\u4e00\u6b21\u53d8\u91cf\u503c\u90fd\u4f1a\u91cd\u65b0\u968f\u673a\u4e00\u6b21\u3002
    "},{"location":"user_manual/api_test/api_automation/#25","title":"2.5 \u573a\u666f\u6b65\u9aa4\u7f16\u6392","text":"

    \u6dfb\u52a0\u4e00\u7ea7\u6b65\u9aa4 \u5728\u573a\u666f\u8be6\u60c5\u7f16\u8f91\u9875\u9762\uff0c\u70b9\u51fb\u9875\u9762\u53f3\u4e0b\u65b9\u7684\u3010+\u3011\u6309\u94ae\uff0c\u53ef\u5728\u5f53\u524d\u573a\u666f\u4e2d\u6dfb\u52a0\u6b65\u9aa4\u3002

    \u70b9\u51fb\u6b65\u9aa4\u6761\u76ee\u7684\u7a7a\u767d\u5904\uff0c\u53ef\u4ee5\u5c55\u5f00\u67e5\u770b\u6b65\u9aa4\u8be6\u60c5\u3002

    \u6dfb\u52a0\u5b50\u6b65\u9aa4 \u5728\u6b65\u9aa4\u7684\u8bf7\u6c42\u53c2\u6570\u8be6\u60c5\u754c\u9762\uff0c\u53ef\u9009\u62e9\u6dfb\u52a0\u3010\u524d\u7f6e\u64cd\u4f5c\u3011\u3001\u3010\u540e\u7f6e\u64cd\u4f5c\u3011\u3001\u3010\u65ad\u8a00\u89c4\u5219\u3011\u5b50\u6b65\u9aa4\u3002

    • \u3010\u524d\u7f6e\u64cd\u4f5c\u3011\u53ef\u6dfb\u52a0\u3010\u524d\u7f6e\u811a\u672c\u3011\u3001\u3010\u524d\u7f6eSQL\u3011\u3001\u3010\u7b49\u5f85\u63a7\u5236\u5668\u3011\u3002
    • \u3010\u540e\u7f6e\u64cd\u4f5c\u3011\u53ef\u6dfb\u52a0\u3010\u63d0\u53d6\u53c2\u6570\u3011\u3001\u3010\u540e\u7f6eSQL\u3011\u3001\u3010\u540e\u7f6e\u811a\u672c\u3011\u3002
    • \u3010\u65ad\u8a00\u89c4\u5219\u3011\u53ef\u6dfb\u52a0\u591a\u79cd\u7c7b\u578b\u7684\u3010\u65ad\u8a00\u3011\u3002\u5177\u4f53\u6b65\u9aa4\u53ef\u53c2\u8003\u63a5\u53e3\u7528\u4f8b\u64cd\u4f5c\u4e2d\u7684 \u64cd\u4f5c\u6b65\u9aa4\u3002

    \u8c03\u6574\u6b65\u9aa4\u987a\u5e8f\u53ca\u5c42\u7ea7 \u9009\u4e2d\u67d0\u4e2a\u6b65\u9aa4\u540e\u957f\u6309\u9f20\u6807\u5de6\u952e\u53ef\u4ee5\u5bf9\u6b65\u9aa4\u8fdb\u884c\u62d6\u62fd\uff0c\u62d6\u62fd\u652f\u6301\u8c03\u6574\u6b65\u9aa4\u987a\u5e8f\u53ca\u5c42\u7ea7\uff0c\u901a\u8fc7\u62d6\u62fd\u53ef\u5c06\u5176\u53d8\u4e3a\u4e00\u7ea7\u6b65\u9aa4\u6216\u67d0\u4e2a\u6b65\u9aa4\u7684\u5b50\u6b65\u9aa4\u3002

    \u9488\u5bf9\u6b65\u9aa4\u7684\u5176\u4ed6\u64cd\u4f5c

    • \u3010\u7f16\u8f91\u540d\u79f0\u3011\uff1a\u5bf9\u4e8e\u652f\u6301\u914d\u7f6e\u540d\u79f0\u7684\u6b65\u9aa4\uff0c\u70b9\u51fb\u8be5\u6309\u94ae\u53ef\u4ee5\u4fee\u6539\u8be5\u6b65\u9aa4\u7684\u540d\u79f0\u3002
    • \u3010\u542f\u7528/\u7981\u7528\u3011\uff1a\u70b9\u51fb\u8be5\u6309\u94ae\u542f\u7528/\u7981\u7528\u8be5\u6b65\u9aa4\u3002
    • \u3010\u8c03\u8bd5\u3011\uff1a\u5bf9\u4e8e\u652f\u6301\u5355\u72ec\u6267\u884c\u7684\u6b65\u9aa4\uff0c\u70b9\u51fb\u8be5\u6309\u94ae\u53ef\u4ee5\u5355\u72ec\u6267\u884c\u6b65\u9aa4\uff0c\u6267\u884c\u540e\u70b9\u51fb\u6b65\u9aa4\u7a7a\u767d\u5904\u53ef\u4ee5\u5728\u5176\u8be6\u60c5\u4e2d\u67e5\u770b\u6267\u884c\u7ed3\u679c\u3002
    • \u3010\u590d\u5236\u3011\uff1a\u590d\u5236\u8be5\u6b65\u9aa4\u3002
    • \u3010\u5220\u9664\u3011\uff1a\u5220\u9664\u8be5\u6b65\u9aa4\u3002

    \u8c03\u9488\u5bf9\u573a\u666f\u7684\u5176\u4ed6\u64cd\u4f5c

    • \u3010\u573a\u666f\u53d8\u91cf\u3011\uff1a\u81ea\u5b9a\u4e49\u573a\u666f\u53d8\u91cf\uff0c\u5305\u62ec\u5e38\u91cf\u3001\u5217\u8868\u53d8\u91cf\u3001csv\u3001\u8ba1\u6570\u5668\u3001\u968f\u673a\u6570\u7b49\u3002
    • \u3010\u5171\u4eabcookie\u3011\uff1a\u573a\u666f\u91cc\u7684\u6240\u6709\u6b65\u9aa4\u5171\u4eabcookie\u3002
    • \u3010\u5931\u8d25\u7ee7\u7eed\u3011\uff1a\u573a\u666f\u4e2d\u6709\u6b65\u9aa4\u5931\u8d25\u4e0d\u5f71\u54cd\u540e\u9762\u6b65\u9aa4\u6267\u884c\u3002
    • \u3010\u8fd0\u884c\u73af\u5883\u3011\uff1a\u573a\u666f\u8fd0\u884c\u73af\u5883\u914d\u7f6e\uff0c\u53ef\u9009\u9879\u76ee\u73af\u5883\u6216\u8005\u73af\u5883\u7ec4\u4e24\u79cd\u7c7b\u578b\u3002
    • \u3010\u8c03\u8bd5\u3011\uff1a\u8c03\u6574\u573a\u666f\u548c\u751f\u6210\u62a5\u544a\u3002
    • \u3010\u4fdd\u5b58\u3011\uff1a\u4fdd\u5b58\u573a\u666f\u3002
    • \u3010\u5237\u65b0\u3011\uff1a\u573a\u666f\u5185\u5237\u65b0\u6b65\u9aa4\u3002
    • \u3010\u8c03\u8bd5\u5386\u53f2\u3011\uff1a\u67e5\u770b\u573a\u666f\u7684\u8c03\u8bd5\u5386\u53f2\u548c\u62a5\u544a\u8be6\u60c5\u3002
    • \u3010\u53d8\u66f4\u8bb0\u5f55\u3011\uff1a\u67e5\u770b\u573a\u666f\u53d8\u66f4\u8bb0\u5f55\u3002
    • \u3010\u7248\u672c\uff08X-Pack\uff09\u3011\uff1a\u5c55\u793a\u5f53\u524d\u573a\u666f\u6240\u5c5e\u7248\u672c\u4fe1\u606f\u3002
    • \u3010\u6279\u91cf\u64cd\u4f5c\u3011\uff1a\u573a\u666f\u5185\u90e8\u7684\u6279\u91cf\u64cd\u4f5c\uff0c\u5305\u542b \u6279\u91cf\u542f\u7528\u6b65\u9aa4\u3001\u6279\u91cf\u7981\u7528\u6b65\u9aa4\u3001\u6279\u91cf\u5c55\u5f00\u6b65\u9aa4\uff0c\u6279\u91cf\u6298\u53e0\u6b65\u9aa4\u3001\u6279\u91cf\u5220\u9664\u6b65\u9aa4\u3002

    "},{"location":"user_manual/api_test/api_automation/#26","title":"2.6 \u8c03\u8bd5\u6307\u5b9a\u573a\u666f","text":"

    \u573a\u666f\u53ca\u573a\u666f\u4e2d\u7684\u6b65\u9aa4\u521b\u5efa\u5b8c\u6210\u540e\uff0c\u70b9\u51fb\u3010\u8c03\u8bd5\u3011\u53ef\u5b9e\u65f6\u67e5\u770b\u573a\u666f\u5185\u5404\u4e2a\u6b65\u9aa4\u6267\u884c\u72b6\u6001\u53ca\u54cd\u5e94\u7ed3\u679c\u4fe1\u606f\uff0c\u53ea\u70b9\u51fb\u3010\u8c03\u8bd5\u3011\u4ea7\u751f\u7684\u7ed3\u679c\u4ec5\u4e34\u65f6\u5b58\u5728\uff0c\u65e0\u6cd5\u4fdd\u5b58\u4e3a\u6d4b\u8bd5\u62a5\u544a\u4f9b\u540e\u7eed\u67e5\u770b\u3002

    \u70b9\u51fb\u3010\u8c03\u8bd5\u3011\u6309\u94ae\u4e0b\u62c9\u56fe\u6807\uff0c\u518d\u70b9\u51fb\u751f\u6210\u6d4b\u8bd5\u62a5\u544a\u3002\u5f39\u51fa\u6267\u884c\u7ed3\u679c\u9875\u9762\uff0c\u5f53\u573a\u666f\u6267\u884c\u5b8c\u6210\u540e\u53ef\u67e5\u770b\u5230\u8be6\u7ec6\u7684\u6267\u884c\u62a5\u544a\u3002

    "},{"location":"user_manual/api_test/api_automation/#27","title":"2.7 \u6267\u884c\u6307\u5b9a\u573a\u666f","text":"

    \u5728\u573a\u666f\u5217\u8868\u4e2d\u70b9\u51fb\u6307\u5b9a\u573a\u666f\u64cd\u4f5c\u5217\u4e2d\u7684\u3010\u6267\u884c\u3011\u6309\u94ae\uff0c\u5f39\u51fa\u6267\u884c\u7ed3\u679c\u9875\u9762\uff0c\u5f53\u573a\u666f\u6267\u884c\u5b8c\u6210\u540e\u53ef\u67e5\u770b\u5230\u8be6\u7ec6\u7684\u6267\u884c\u7ed3\u679c\u3002

    "},{"location":"user_manual/api_test/api_automation/#28","title":"2.8 \u6279\u91cf\u6267\u884c\u573a\u666f","text":"

    \u5728\u573a\u666f\u5217\u8868\u4e2d\u9009\u4e2d\u591a\u4e2a\u573a\u666f\u540e\u70b9\u51fb\u6279\u91cf\u64cd\u4f5c\u6309\u94ae\u4e2d\u7684\u3010\u6279\u91cf\u6267\u884c\u3011\uff0c\u6240\u6709\u7528\u4f8b\u6267\u884c\u5b8c\u6210\u540e\u53ef\u8fdb\u5165\u3010\u6d4b\u8bd5\u62a5\u544a\u3011\u9875\u9762\u67e5\u770b\u6267\u884c\u7ed3\u679c\u3002

    • \u3010\u8fd0\u884c\u73af\u5883\u3011\uff1a\u6279\u91cf\u6267\u884c\u573a\u666f\u9009\u62e9\u7684\u73af\u5883\uff0c\u652f\u6301\u9879\u76ee\u73af\u5883\u548c\u73af\u5883\u7ec4\u4e24\u79cd\u65b9\u5f0f\u3002
    • \u3010\u6a21\u5f0f\u3011\uff1a\u4e32\u884c\u8868\u793a\u591a\u573a\u666f\u4f9d\u6b21\u6267\u884c\uff1b\u5e76\u884c\u8868\u793a\u591a\u573a\u666f\u540c\u65f6\u6267\u884c\u3002
    • \u3010\u5176\u4ed6\u914d\u7f6e\u3011\uff1a\u72ec\u7acb\u62a5\u544a\u8868\u793a\u6bcf\u4e2a\u573a\u666f\u90fd\u751f\u6210\u4e00\u4efd\u62a5\u544a\uff1b\u96c6\u5408\u62a5\u544a\u8868\u793a\u6240\u6709\u573a\u666f\u53ea\u751f\u6210\u4e00\u4efd\u62a5\u544a\u3002
    • \u3010\u8d44\u6e90\u6c60\u3011\uff1a\u652f\u6301\u9009\u62e9\u4e0d\u540c\u8282\u70b9\u6267\u884c\u573a\u666f\uff0c\u53ef\u4ee5\u9009\u62e9\u666e\u901a\u8d44\u6e90\u6c60\u548c K8S \u8d44\u6e90\u6c60\uff0cK8S \u8d44\u6e90\u6c60\u662f\u4f01\u4e1a\u7248\u529f\u80fd\u3002

    "},{"location":"user_manual/api_test/api_automation/#29","title":"2.9 \u6279\u91cf\u7f16\u8f91\u573a\u666f","text":"

    \u5728\u573a\u666f\u5217\u8868\u4e2d\u9009\u4e2d\u591a\u4e2a\u573a\u666f\u540e\u70b9\u51fb\u6279\u91cf\u64cd\u4f5c\u6309\u94ae\u4e2d\u7684\u3010\u6279\u91cf\u7f16\u8f91\u3011\uff0c\u652f\u6301\u6279\u91cf\u7f16\u8f91\u3010\u7528\u4f8b\u7b49\u7ea7\u3001\u72b6\u6001\u3001\u8d23\u4efb\u4eba\u3001\u8fd0\u884c\u73af\u5883\u3001\u6807\u7b7e\u3011\u56db\u4e2a\u5c5e\u6027\u3002

    "},{"location":"user_manual/api_test/api_automation/#210","title":"2.10 \u6279\u91cf\u79fb\u52a8\u573a\u666f","text":"

    \u5728\u573a\u666f\u5217\u8868\u4e2d\u9009\u4e2d\u591a\u4e2a\u573a\u666f\u540e\u70b9\u51fb\u6279\u91cf\u64cd\u4f5c\u6309\u94ae\u4e2d\u7684\u3010\u6279\u91cf\u79fb\u52a8\u3011\uff0c\u652f\u6301\u5c06\u573a\u666f\u5230\u79fb\u52a8\u5176\u4ed6\u6a21\u5757\u4f4d\u7f6e\u3002

    "},{"location":"user_manual/api_test/api_automation/#211","title":"2.11 \u6279\u91cf\u590d\u5236\u573a\u666f","text":"

    \u5728\u573a\u666f\u5217\u8868\u4e2d\u9009\u4e2d\u591a\u4e2a\u573a\u666f\u540e\u70b9\u51fb\u6279\u91cf\u64cd\u4f5c\u6309\u94ae\u4e2d\u7684\u3010\u6279\u91cf\u590d\u5236\u3011\uff0c\u652f\u6301\u590d\u5236\u591a\u4e2a\u573a\u666f\u3002

    "},{"location":"user_manual/api_test/api_automation/#212","title":"2.12 \u6279\u91cf\u5220\u9664\u573a\u666f","text":"

    \u5728\u573a\u666f\u5217\u8868\u4e2d\u9009\u4e2d\u591a\u4e2a\u573a\u666f\u540e\u70b9\u51fb\u6279\u91cf\u64cd\u4f5c\u6309\u94ae\u4e2d\u7684\u3010\u6279\u91cf\u5220\u9664\u3011\uff0c\u652f\u6301\u5220\u9664\u591a\u4e2a\u573a\u666f\u3002

    "},{"location":"user_manual/api_test/api_automation/#213","title":"2.13 \u751f\u6210\u4f9d\u8d56\u5173\u7cfb","text":"

    \u5728\u573a\u666f\u5217\u8868\u4e2d\u9009\u4e2d\u591a\u4e2a\u573a\u666f\u540e\u70b9\u51fb\u6279\u91cf\u64cd\u4f5c\u6309\u94ae\u4e2d\u7684\u3010\u751f\u6210\u4f9d\u8d56\u5173\u7cfb\u3011\u3002 \u3010\u4f9d\u8d56\u5173\u7cfb\u56fe\u3011\u53ef\u4ee5\u5bfc\u51fa\u3010JPG\u3011\u548c\u3010PNG\u3011\u56fe\u7247\u683c\u5f0f\u3002

    "},{"location":"user_manual/api_test/api_automation/#214","title":"2.14 \u6279\u91cf\u6dfb\u52a0\u6d4b\u8bd5\u8ba1\u5212","text":"

    \u5728\u573a\u666f\u5217\u8868\u4e2d\u9009\u4e2d\u591a\u4e2a\u573a\u666f\u540e\u70b9\u51fb\u6279\u91cf\u64cd\u4f5c\u6309\u94ae\u4e2d\u7684\u3010\u6279\u91cf\u6dfb\u52a0\u6d4b\u8bd5\u8ba1\u5212\u3011\uff0c\u652f\u6301\u5c06\u591a\u4e2a\u573a\u666f\u6dfb\u52a0\u5230\u6d4b\u8bd5\u8ba1\u5212\u3002

    \u52fe\u9009\u8981\u6dfb\u52a0\u7684\u6d4b\u8bd5\u8ba1\u5212\uff0c\u70b9\u51fb\u786e\u5b9a\u5373\u53ef\u6dfb\u52a0\u6210\u529f\u3002

    "},{"location":"user_manual/api_test/api_automation/#215","title":"2.15 \u6279\u91cf\u521b\u5efa\u6027\u80fd\u6d4b\u8bd5","text":"

    \u5728\u573a\u666f\u5217\u8868\u4e2d\u9009\u4e2d\u591a\u4e2a\u573a\u666f\u540e\u70b9\u51fb\u6279\u91cf\u64cd\u4f5c\u6309\u94ae\u4e2d\u7684\u3010\u6279\u91cf\u521b\u5efa\u6027\u80fd\u6d4b\u8bd5\u3011\uff0c\u652f\u6301\u5c06\u591a\u4e2a\u573a\u666f\u5bfc\u5165\u6027\u80fd\u6d4b\u8bd5\u3002

    "},{"location":"user_manual/api_test/api_automation/#216","title":"2.16 \u573a\u666f\u5b9a\u65f6\u4efb\u52a1","text":"

    \u573a\u666f\u5217\u8868\u9875\u70b9\u51fb\u53f3\u4fa7\u3010...\u3011\uff0c \u9009\u62e9\u5b9a\u65f6\u4efb\u52a1\u3002\u5f39\u51fa\u5b9a\u65f6\u4efb\u52a1\u914d\u7f6e\u9875\u9762\uff0c\u5b9a\u65f6\u4efb\u52a1\u53ef\u4ee5\u914d\u7f6e\u81ea\u52a8\u751f\u6210\uff0c\u80fd\u770b\u5230\u8fd1 5 \u6b21\u8fd0\u884c\u7ed3\u679c\uff0c\u652f\u6301\u9009\u62e9\u8fd0\u884c\u8d44\u6e90\u6c60\u3002

    "},{"location":"user_manual/api_test/api_automation/#217","title":"2.17 \u573a\u666f\u5bfc\u51fa \u5bfc\u5165","text":"

    \u573a\u666f\u5217\u8868\u652f\u6301\u5bfc\u51fa\u3010MeterSphere \u683c\u5f0f\u3011\u548c\u3010JMETER \u683c\u5f0f\u3011 \u4e24\u79cd\u683c\u5f0f\u3002

    \u573a\u666f\u5217\u8868\u652f\u6301\u5bfc\u5165\u3010MeterSphere\u3011\u3001\u3010Postman\u3011\u3001\u3010JMeter\u3011\u3001\u3010HAR\u3011\u56db\u79cd\u683c\u5f0f\uff0c\u573a\u666f\u5bfc\u5165\u652f\u6301\u3010\u8986\u76d6\u3011\u548c\u3010\u4e0d\u8986\u76d6\u3011\u4e24\u79cd\u6a21\u5f0f\u3002

    \u573a\u666f\u5728\u8de8\u9879\u76ee\u3001\u8de8\u5de5\u4f5c\u7a7a\u95f4\u751a\u81f3\u662f\u8de8\u670d\u52a1\u8fc1\u79fb\u6570\u636e\u5bfc\u5165\u3001\u5bfc\u51fa\u65f6\uff0c\u80fd\u591f\u4fdd\u7559\u81ea\u8eab\u6b65\u9aa4\u7684\u5f15\u7528\u5173\u7cfb\uff0c\u4fdd\u8bc1\u6570\u636e\u7684\u5b8c\u6574\u6027\u548c\u4e00\u81f4\u6027\u3002\u540c\u4e00\u5de5\u4f5c\u7a7a\u95f4\u4e0b\uff0c\u652f\u6301\u5bfc\u5165\u4e0d\u540c\u5de5\u4f5c\u7a7a\u95f4\u4e0b\u7684\u6570\u636e\u5bfc\u5165\u3002

    "},{"location":"user_manual/api_test/api_automation/#218","title":"2.18 \u573a\u666f\u67e5\u770b\u5f15\u7528","text":"

    \u652f\u6301\u67e5\u770b\u573a\u666f\u5728\u53e6\u5916\u573a\u666f\u548c\u6d4b\u8bd5\u8ba1\u5212\u7684\u5f15\u7528\u60c5\u51b5\u3002

    "},{"location":"user_manual/api_test/api_automation/#219","title":"2.19 \u5c06\u573a\u666f\u79fb\u5165\u56de\u6536\u7ad9","text":"

    \u5728\u573a\u666f\u5217\u8868\u4e2d\u70b9\u51fb\u6307\u5b9a\u573a\u666f\u64cd\u4f5c\u5217\u4e2d\u7684\u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u8be5\u573a\u666f\u5c06\u88ab\u79fb\u5165\u56de\u6536\u7ad9\uff0c\u540c\u65f6\u573a\u666f\u53d8\u4e3a\u3010\u5e9f\u5f03\u3011\u72b6\u6001\u3002\u7528\u6237\u53ef\u4ee5\u70b9\u51fb\u5de6\u4fa7\u6a21\u5757\u6811\u4e2d\u7684\u3010\u56de\u6536\u7ad9\u3011\u67e5\u770b\u5df2\u5e9f\u5f03\u7684\u573a\u666f\u3002

    "},{"location":"user_manual/api_test/api_automation/#220","title":"2.20 \u56de\u6536\u7ad9\u64cd\u4f5c","text":"

    \u70b9\u51fb\u5de6\u4fa7\u6a21\u5757\u6811\u4e2d\u7684\u3010\u56de\u6536\u7ad9\u3011\uff0c\u8fdb\u5165\u56de\u6536\u7ad9\u9875\u9762\uff0c\u652f\u6301\u5bf9\u5df2\u7ecf\u5220\u9664\u7684\u573a\u666f\u8fdb\u884c\u3010\u6062\u590d\u3011\u3010\u5220\u9664\u3011\u64cd\u4f5c\u3002\u9009\u62e9\u8981\u6062\u590d\u7684\u573a\u666f\u70b9\u51fb\u64cd\u4f5c\u5217\u4e2d\u7684\u3010\u6062\u590d\u3011\u6309\u94ae\uff0c\u53ef\u4ee5\u5c06\u6570\u636e\u6062\u590d\u5230\u63a5\u53e3\u81ea\u52a8\u5316\u5217\u8868\uff1b\u70b9\u51fb\u64cd\u4f5c\u5217\u4e2d\u7684\u3010\u5220\u9664\u3011\u6309\u94ae\u3002 \u4ece\u56de\u6536\u7ad9\u4e2d\u5220\u9664\u67d0\u4e2a\u573a\u666f\u65f6\uff0c\u8be5\u573a\u666f\u5c06\u4ece\u6570\u636e\u5e93\u4e2d\u5220\u9664\u4e14\u65e0\u6cd5\u6062\u590d\uff0c\u8bf7\u8c28\u614e\u4f7f\u7528\u8be5\u529f\u80fd\u3002

    "},{"location":"user_manual/api_test/api_automation/#221-mqtt-x-pack","title":"2.21 MQTT\u534f\u8bae (X-Pack)","text":"

    \u70b9\u51fb\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u7cfb\u7edf-\u63d2\u4ef6\u7ba1\u7406\u3011\uff0c\u70b9\u51fb\u3010\u70b9\u51fb\u4e0a\u4f20\u3011\uff0c\u5c06 MQTT \u534f\u8bae\u7684 Jar \u5305\u4e0a\u4f20\u4e0a\u53bb\u3002

    \u70b9\u51fb\u3010\u63a5\u53e3\u81ea\u52a8\u5316-\u521b\u5efa\u573a\u666f\u3011\uff0c\u53f3\u4fa7\u4f1a\u51fa\u73b0 MQTT \u8bf7\u6c42\u76f8\u5173\u5185\u5bb9\u3002

    \u6839\u636e\u9700\u8981\uff0c\u9009\u62e9 MQTT \u8bf7\u6c42\u7684\u7ec4\u4ef6

    "},{"location":"user_manual/api_test/api_automation/#222-websocket-x-pack","title":"2.22 Websocket\u534f\u8bae (X-Pack)","text":"

    \u70b9\u51fb\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u7cfb\u7edf-\u63d2\u4ef6\u7ba1\u7406\u3011\uff0c\u70b9\u51fb\u3010\u70b9\u51fb\u4e0a\u4f20\u3011\uff0c\u5c06 Websocket \u534f\u8bae\u7684 Jar \u5305\u4e0a\u4f20\u4e0a\u53bb\u3002

    \u70b9\u51fb\u3010\u63a5\u53e3\u81ea\u52a8\u5316-\u521b\u5efa\u573a\u666f\u3011\uff0c\u53f3\u4fa7\u4f1a\u51fa\u73b0 Websocket \u8bf7\u6c42\u76f8\u5173\u5185\u5bb9\uff0c\u6839\u636e\u9700\u8981\uff0c\u9009\u62e9 Websocket \u8bf7\u6c42\u7684\u7ec4\u4ef6\u3002

    "},{"location":"user_manual/api_test/api_automation/#223-thrift-x-pack","title":"2.23 Thrift\u534f\u8bae (X-Pack)","text":"

    \u4e0e\u4e0a\u9762 MQTT\u534f\u8bae (X-Pack) \u548c Websocket\u534f\u8bae (X-Pack) \u64cd\u4f5c\u6b65\u9aa4\u76f8\u540c

    "},{"location":"user_manual/api_test/api_definition/","title":"\u63a5\u53e3\u5b9a\u4e49","text":""},{"location":"user_manual/api_test/api_definition/#1","title":"1 \u6982\u8ff0","text":"

    \u63a5\u53e3\u5b9a\u4e49\u5c55\u793a\u5f53\u524d\u9879\u76ee\u7684\u6240\u6709\u63a5\u53e3\u6570\u636e\uff0c\u5305\u542b\u5de6\u4fa7\u63a5\u53e3\u6a21\u5757\u6811\u3001API \u63a5\u53e3\u5217\u8868\u3001\u63a5\u53e3 CASE \u5217\u8868\u3001\u6587\u6863\u56db\u4e2a\u90e8\u5206\u3002

    "},{"location":"user_manual/api_test/api_definition/#2","title":"2 \u63a5\u53e3\u7ba1\u7406","text":""},{"location":"user_manual/api_test/api_definition/#21","title":"2.1 \u63a5\u53e3\u534f\u8bae","text":"

    \u70b9\u51fb\u5de6\u4e0a\u89d2\u3010HTTP\u3011\u4e0b\u62c9\u6846\uff0c\u53ef\u5207\u6362\u63a5\u53e3\u534f\u8bae\uff0c\u76ee\u524d\u652f\u6301 HTTP\u3001TCP \u3001SQL \u548c DUBBO \u56db\u79cd\u534f\u8bae\u3002

    "},{"location":"user_manual/api_test/api_definition/#22","title":"2.2 \u6a21\u5757\u6811\u7ba1\u7406","text":"

    \u63a5\u53e3\u6570\u636e\u53ef\u4ee5\u5206\u6a21\u5757\u7ba1\u7406\uff0c\u53ef\u6309\u7167\u4f01\u4e1a\u5b9e\u9645\u6d4b\u8bd5\u9879\u76ee\u5212\u5206\u4e3a\u591a\u7ea7\u6a21\u5757\u8fdb\u884c\u7ba1\u7406\uff0c\u6700\u591a\u53ef\u5206\u516b\u7ea7\u3002\u9f20\u6807\u60ac\u6d6e\u5728\u6a21\u5757\u4e0a\u70b9\u51fb\u3010+\u3011\u521b\u5efa\u4e00\u7ea7\u6a21\u5757\u3002\u6a21\u5757\u652f\u6301\u6dfb\u52a0\u5b50\u6a21\u5757\u3001\u6a21\u7cca\u641c\u7d22\u3001\u5220\u9664\u3001\u91cd\u547d\u540d\u64cd\u4f5c\uff0c\u9009\u4e2d\u76ee\u5f55\u53ef\u8fdb\u884c\u62d6\u62fd\u8c03\u6574\u3002

    "},{"location":"user_manual/api_test/api_definition/#23","title":"2.3 \u63a5\u53e3\u5feb\u6377\u8c03\u8bd5","text":"

    \u9f20\u6807\u60ac\u6d6e\u5728\u3010+\u3011\u53ef\u4ee5\u5b8c\u6210\u3010\u5feb\u901f\u8c03\u8bd5\u3011\u3010\u521b\u5efa\u63a5\u53e3\u3011\u3010\u5173\u95ed\u6240\u6709\u9875\u7b7e\u3011\u64cd\u4f5c\u3002\u70b9\u51fb\u3010\u5feb\u6377\u8c03\u8bd5\u3011\u8fdb\u5165\u5feb\u6377\u8c03\u8bd5\u9875\u9762\u3002\u586b\u5199\u5b8c\u6574\u7684\u6d4b\u8bd5\u5730\u5740\u548c\u57fa\u672c\u8bf7\u6c42\u53c2\u6570\uff0c\u70b9\u51fb\u3010\u6d4b\u8bd5\u3011\u6309\u94ae\u5373\u53ef\u8fdb\u884c\u63a5\u53e3\u8c03\u8bd5\u3002\u6d4b\u8bd5\u5b8c\u6210\u70b9\u51fb\u3010\u53e6\u5b58\u4e3a\u65b0\u7528\u4f8b\u3011\uff0c\u586b\u5199\u63a5\u53e3\u7528\u4f8b\u540d\u79f0\u53ef\u4fdd\u5b58\u4e3a\u4e00\u4e2a\u65b0\u7684\u63a5\u53e3\u7528\u4f8b\u3002

    "},{"location":"user_manual/api_test/api_definition/#24","title":"2.4 \u5feb\u901f\u521b\u5efa\u63a5\u53e3","text":"

    \u9f20\u6807\u60ac\u6d6e\u5728\u3010+\u3011\uff0c\u70b9\u51fb\u5982\u4e0a\u56fe\u3010\u521b\u5efa\u63a5\u53e3\u3011\u5f39\u51fa\u521b\u5efa\u63a5\u53e3\u8be6\u60c5\u9875\u9762\u3002\u521b\u5efa\u63a5\u53e3\u9875\u9762\u586b\u5199\u63a5\u53e3\u57fa\u7840\u4fe1\u606f\u3001\u8bf7\u6c42\u65b9\u5f0f\u3001\u8bf7\u6c42\u53c2\u6570\u3001\u54cd\u5e94\u5185\u5bb9\u5373\u53ef\u3002

    • \u8bf7\u6c42\u65b9\u5f0f\uff1a\u652f\u6301GET\u3001POST\u3001PUT\u3001PATCH\u3001DELETE\u3001OPTIONS\u3001HEAD\u3001CONNECT\u3002
    • \u8bf7\u6c42\u53c2\u6570\uff1a\u5305\u542b\u9ed8\u8ba4\u8bf7\u6c42\u5934\u53d8\u91cf\uff1b\u5e38\u7528query\u3001rest\u53c2\u6570\uff0c\u9f20\u6807\u60ac\u6d6e\u4f1a\u6709\u63d0\u793a\u3002
    • \u8bf7\u6c42\u4f53\uff1a\u652f\u6301\u591a\u79cd\u5f62\u5f0f\uff1aform-data\uff0cx-www-form-urlencoded\uff0cjson\uff0cxml\uff0craw\uff0cbinary\u3002

    \u53c2\u6570\u586b\u5199\u5b8c\u6210\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u6309\u94ae\u5373\u53ef\u5b8c\u6210\u63a5\u53e3\u5b9a\u4e49\u521b\u5efa\uff0c\u5e76\u8df3\u8f6c\u5230\u63a5\u53e3\u5c55\u793a\u3010\u7f16\u8f91\u8be6\u60c5\u3011\u9875\u9762\uff0c\u53ef\u5728\u3010API\u3011\u3010TEST\u3011\u3010CASE\u3011\u3010MOCK\u3011\u83dc\u5355\u4e0b\u5bf9\u63a5\u53e3\u505a\u8fdb\u4e00\u6b65\u8c03\u6574\u3002

    "},{"location":"user_manual/api_test/api_definition/#3-api","title":"3 API","text":""},{"location":"user_manual/api_test/api_definition/#31-api","title":"3.1 \u7f16\u8f91 API","text":"

    \u5728\u7f16\u8f91\u63a5\u53e3\u3010API\u3011\u9875\u9762\u4e2d\u53ef\u4ee5\u5bf9\u63a5\u53e3\u7684\u57fa\u7840\u4fe1\u606f\u3001\u8bf7\u6c42\u53ca\u54cd\u5e94\u5b9a\u4e49\u3001\u524d\u540e\u7f6e\u4f9d\u8d56\u5173\u7cfb\u8fdb\u884c\u8be6\u7ec6\u7f16\u8f91\u3002 \u5728\u4f01\u4e1a\u7248\u3010Xpack\u3011\u529f\u80fd\u5305\u4e2d\uff1a\u5bf9\u5df2\u6709 CASE \u7684\u63a5\u53e3\uff0c\u66f4\u6539\u63a5\u53e3\u5730\u5740\u3001\u8bf7\u6c42\u5934\u3001\u8bf7\u6c42\u53c2\u6570\u7b49\u5185\u5bb9\u3002\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\uff0c\u4f1a\u5f39\u51fa\u540c\u6b65\u66f4\u65b0\u8bbe\u7f6e\u786e\u8ba4\u6846\uff0c\u53ef\u4e00\u952e\u540c\u6b65\u88ab\u4f7f\u7528\u7684 CASE \u53c2\u6570\uff0c\u4fbf\u4e8e\u7ef4\u62a4\u811a\u672c\u3002

    "},{"location":"user_manual/api_test/api_definition/#32","title":"3.2 \u5173\u6ce8\u63a5\u53e3","text":"

    \u70b9\u51fb\u9875\u9762\u53f3\u4e0a\u89d2\u7684\u3010\u4e94\u89d2\u661f\u56fe\u6807\u3011\uff0c\u53ef\u5173\u6ce8/\u53d6\u6d88\u5173\u6ce8\u8be5\u63a5\u53e3\u5b9a\u4e49\u3002\u82e5\u63a5\u53e3\u6709\u53d8\u66f4\u4f1a\u53ca\u65f6\u63d0\u9192\u5173\u6ce8\u8005\u3002

    "},{"location":"user_manual/api_test/api_definition/#33","title":"3.3 \u63a5\u53e3\u53d8\u66f4\u8bb0\u5f55","text":"

    \u70b9\u51fb\u9875\u9762\u53f3\u4e0a\u89d2\u7684\u3010\u53d8\u66f4\u8bb0\u5f55\u3011\u53ef\u67e5\u770b\u6b64\u63a5\u53e3\u6240\u6709\u7684\u53d8\u66f4\u8bb0\u5f55\u3002\u53ef\u67e5\u770b\u5177\u4f53\u7684\u53d8\u66f4\u5b57\u6bb5\u3001\u53d8\u66f4\u524d\u3001\u53d8\u66f4\u540e\u7684\u4fe1\u606f\u3002

    "},{"location":"user_manual/api_test/api_definition/#34-x-pack","title":"3.4 \u7248\u672c\u7ba1\u7406 (X-Pack)","text":"

    \u70b9\u51fb\u9875\u9762\u53f3\u4e0a\u89d2\u7684\u3010\u7248\u672c: v1.1.0\u3011\u53ef\u67e5\u770b\u6240\u6709\u7684\u7248\u672c\u53f7\uff0c\u9009\u62e9\u5f53\u524d\u7248\u672c\u53f7\uff0c\u521b\u5efa\u63a5\u53e3\u3002\u5728\u63a5\u53e3\u5217\u8868\u9ed8\u8ba4\u5c55\u793a\u6240\u6709\u63a5\u53e3\u7684\u6700\u65b0\u7248\u672c\u6570\u636e\uff0c\u5e76\u652f\u6301\u6279\u91cf\u64cd\u4f5c\u590d\u5236\u6307\u5b9a\u7248\u672c\u7684 CASE \u548c Mock \u6570\u636e\uff0c\u53ef\u5feb\u901f\u5207\u6362\u7248\u672c\u53ca\u5386\u53f2\u6570\u636e\u5bf9\u6bd4\uff0c\u4f18\u5316\u5bf9\u63a5\u53e3\u7684\u7ba1\u7406\u65b9\u6cd5\u3002

    "},{"location":"user_manual/api_test/api_definition/#35-http","title":"3.5 HTTP \u8bf7\u6c42","text":"

    \u8bf7\u6c42\u5934 \u8bf7\u6c42\u5934\uff1a\u63d0\u4f9b\u8bf7\u6c42\u5934\u53d8\u91cf\uff0c\u70b9\u51fb\u5373\u53ef\u5f39\u51fa\u65b9\u6cd5\u5217\u8868\u3002\u70b9\u51fb\u53c2\u6570\u3010\u94c5\u7b14\u56fe\u6807\u3011\u8fd8\u53ef\u6dfb\u52a0 Mock \u6570\u636e\u548c JMeter \u65b9\u6cd5\u5185\u7f6e\u51fd\u6570\u3002

    • \u51fd\u6570 Tab \u9875\u7b7e\u9ed8\u8ba4\u9009\u4e2d\u3010Mock\u65b9\u6cd5\u3011\uff0c\u9009\u62e9\u6570\u636e\u7c7b\u578b\u53ef\u6dfb\u52a0\u51fd\u6570\u4f7f\u7528\uff0c\u6570\u636e\u7c7b\u578b\u5217\u8868\u4e0b\u65b9\u4f1a\u5c55\u793a\u51fd\u6570\u9884\u89c8\u6548\u679c\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u6309\u94ae\u751f\u6548\u3002
    • \u51fd\u6570 Tab \u9875\u7b7e\u9009\u62e9\u9009\u62e9\u3010JMeter\u65b9\u6cd5\u3011\uff0c\u5373\u53ef\u9009\u62e9\u4f7f\u7528\u5185\u7f6e\u7684 Jmeter \u51fd\u6570\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u6309\u94ae\u751f\u6548\u3002 \u5185\u7f6e\u51fd\u6570\u7684\u8be6\u7ec6\u8bf4\u660e\u8bf7\u53c2\u8003 \u5185\u7f6e\u51fd\u6570

    QUERY\u53c2\u6570 QUERY \u53c2\u6570\u662f\u5728\u63a5\u53e3\u5730\u5740\u680f\u4e2d\u8ddf\u5728\uff1f\u540e\u9762\u7684\u53c2\u6570\uff0c\u5982 updateapi?id=11\uff1b\u53ef\u76f4\u63a5\u5728\u4e0b\u65b9\u5217\u8868\u8f93\u5165 QUERY \u53c2\u6570\u952e\u503c\u5bf9\u3002\u70b9\u51fb\u53c2\u6570\u4e0a\u9762\u7684 \u3010\u8bbe\u7f6e\u56fe\u6807\u3011\uff0c\u53ef\u6dfb\u52a0\u53c2\u6570\u7684\u5176\u4ed6\u5c5e\u6027\u5982\u7f16\u7801\u3001\u6700\u5927\u957f\u5ea6\u3001\u63cf\u8ff0\u7b49\u3002\u70b9\u51fb\u3010\u6279\u91cf\u6dfb\u52a0\u3011\u6309\u94ae\uff0c\u53ef\u4ee5\u6279\u91cf\u6dfb\u52a0\u53c2\u6570\uff1a\u586b\u5199\u53c2\u6570\u952e\u503c\u5bf9\u70b9\u51fb\u786e\u5b9a\u5373\u53ef\u89e3\u6790\u5230\u53c2\u6570\u5217\u8868\u3002

    REST\u53c2\u6570 REST\u53c2\u6570\u662f\u5728\u63a5\u53e3\u5730\u5740\u680f\u4e2d\u88ab\u3010/\u3011\u5206\u9694\u7684\u53c2\u6570\uff0c\u5982 updateapi/{id}\u3002\u4f7f\u7528\u65b9\u6cd5\u540c\u4e0a\u3002

    \u8bf7\u6c42\u4f53 \u8bf7\u6c42\u4f53\u53c2\u6570\u652f\u6301\u591a\u79cd\u5f62\u5f0f\uff1aform-data\uff0cx-www-form-urlencoded\uff0cjson\uff0cxml\uff0craw\uff0cbinary\u3002 \u8bf7\u6c42\u4f53\u662f form-data \u548c x-www-form-urlencoded \u683c\u5f0f\u65f6\uff0c\u53ef\u4ee5\u9009\u62e9\u53c2\u6570\u7c7b\u578b\u3002\u4e0d\u540c\u7684\u53c2\u6570\u7c7b\u578b\uff0c\u7cfb\u7edf\u4f1a\u63d0\u4f9b \u9ed8\u8ba4\u5c5e\u6027\u3002

    \u8bf7\u6c42\u4f53\u662f json \u683c\u5f0f\u65f6\uff0c\u53ef\u4ee5\u4f7f\u7528 Json-schema \u7528\u4e8e\u9a8c\u8bc1json\u6570\u636e\u683c\u5f0f\u3002

    \u8ba4\u8bc1\u914d\u7f6e \u652f\u6301 Basic Auth \u7684\u8ba4\u8bc1\u65b9\u5f0f\u548c\u5bf9\u6570\u636e\u52a0\u5bc6\uff0c\u6b64\u5904\u53ef\u4ee5\u914d\u7f6e\u8ba4\u8bc1\u4fe1\u606f\u53ca\u52a0\u5bc6\u65b9\u5f0f\u3002

    \u5176\u4ed6\u8bbe\u7f6e \u53ef\u8bbe\u7f6e\u8bc1\u4e66\u3001\u8ddf\u968f\u91cd\u5b9a\u5411\u3001\u8fde\u63a5\u8d85\u65f6\u3001\u54cd\u5e94\u8d85\u65f6\u65f6\u95f4\u7b49\u3002

    "},{"location":"user_manual/api_test/api_definition/#36-tcp","title":"3.6 TCP \u8bf7\u6c42","text":"

    \u8bf7\u6c42\u53c2\u6570 \u8bf7\u6c42\u53c2\u6570\u53ef\u4ee5\u5728\u8bf7\u6c42\u6a21\u677f\u901a\u8fc7 ${xxx} \u5f15\u7528\u3002

    \u8bf7\u6c42\u4f53 \u8bf7\u6c42\u4f53\u53c2\u6570\u652f\u6301 json\u3001xml\u3001raw \u4e09\u79cd\u6570\u636e\u683c\u5f0f\u3002\u5176\u4e2d\u5728 xml \u53c2\u6570\u4e2d\u70b9\u51fb\u3010\u6dfb\u52a0\u3011\u6309\u94ae\uff0c\u652f\u6301\u4ee5\u8868\u683c\u5f62\u5f0f\u6dfb\u52a0\u53c2\u6570\u3002xml \u53ef\u6dfb\u52a0 object\u3001string\u3001array \u4e09\u79cd\u6570\u636e\u7c7b\u578b\u7684\u53c2\u6570\u3002\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u6309\u94ae\u4fdd\u5b58\u6dfb\u52a0\u7684 xml \u53c2\u6570\u3002

    \u5176\u4ed6\u8bbe\u7f6e \u5728\u5176\u4ed6\u8bbe\u7f6e\u4e2d\u53ef\u8bbe\u7f6e TCP \u5ba2\u6237\u7aef\u3001\u8fde\u63a5\u65f6\u95f4\u3001\u54cd\u5e94\u65f6\u95f4\u7b49\u53c2\u6570\u3002TCPClient \u9ed8\u8ba4\u63d0\u4f9b\u4e09\u79cd\u8fde\u63a5\u65b9\u5f0f\u3002

    "},{"location":"user_manual/api_test/api_definition/#37-sql","title":"3.7 SQL \u8bf7\u6c42","text":"

    SQL \u8bf7\u6c42\u652f\u6301\u914d\u7f6e\u591a\u4e2a\u6570\u636e\u6e90\uff0c\u9009\u62e9\u8fd0\u884c\u73af\u5883\u3001\u6570\u636e\u6e90\uff0c\u7f16\u5199sql\u811a\u672c\uff08sql\u811a\u672c\u652f\u6301\u4f20\u9012\u53d8\u91cf${\u53d8\u91cf\u540d}\uff09\uff0c\u67e5\u8be2\u7ed3\u679c\u53ef\u4ee5\u3010\u6309\u7ed3\u679c\u5b58\u50a8\u3011\u3010\u6309\u5217\u5b58\u50a8\u3011\u4e24\u79cd\u65b9\u5f0f\u3002 \u6309\u7ed3\u679c\u5b58\u50a8\uff1a\u662f\u5c06\u8fd4\u56de\u7ed3\u679c\u6240\u6709\u7684\u5b57\u6bb5\u5b58\u50a8\u5230\u4e00\u4e2a\u53d8\u91cf\u4e2d\u53bb\uff0c\u5982\u679c\u9700\u8981\u4f7f\u7528\u5176\u4e2d\u7684\u67d0\u4e2a\u5b57\u6bb5\u5219\u9700\u8981\u5bf9\u53d8\u91cf\u8fdb\u884c\u89e3\u6790\uff0c\u91cc\u9762\u7684\u5b9e\u9645\u6570\u636e\u662f\u96c6\u5408\u5d4c\u5957\u96c6\u5408\u3002\u6bcf\u4e00\u884c\u6570\u636e\u90fd\u662f\u4ee5 <\u5b57\u6bb5\u540d>\uff1a<\u5b57\u6bb5\u503c>( \u5373key :value)\u7684\u683c\u5f0f\u5b58\u5230map\u4e2d\u7684\uff0c\u800c\u6574\u4e2a\u8fd4\u56de\u6570\u636e\u5c31\u662f\u4ee5\u4e00\u4e2a\u5927\u7684map\u53bb\u5b58\u50a8\u6bcf\u4e00\u884c\u7684\u6570\u636e\u7684map \uff0c\u6700\u540e\u5f97\u5230\u4e00\u4e2a\u7ed3\u679c\u96c6\u5408\uff0c\u5982\u679c\u9700\u8981\u5176\u4e2d\u7684\u6570\u636e\uff0c\u9700\u8981\u901a\u8fc7 beanshell \u6216 python \u811a\u672c\u53bb\u89e3\u6790\u3002 \u6309\u5217\u5b58\u50a8\uff1a\u76f4\u63a5\u6307\u5b9a\u8fd4\u56de\u5b57\u6bb5\u7684\u7ed3\u679c\u503c\uff0c\u5217\u6570\u8981\u548c SQL \u8bed\u53e5\u4e2d\u67e5\u8be2\u5b57\u6bb5\u8fd4\u56de\u7ed3\u679c\u7684\u5217\u6570\u76f8\u540c\u3002\u540c\u65f6\u53ef\u4ee5\u7528\u9017\u53f7\u4f5c\u4e3a\u5360\u4f4d\u7b26\u4ee3\u66ff\u5217\u540d\uff0c\u53ea\u5199\u51fa \u8981\u63d0\u53d6\u7684\u5217\u540d\u5373\u53ef\uff0c\u5f15\u7528\u65f6 ${\u5217\u540d\u53d8\u91cf_n}

    "},{"location":"user_manual/api_test/api_definition/#38-dubbo","title":"3.8 DUBBO \u8bf7\u6c42","text":"

    Interface \u70b9\u51fb\u3010Get Providers List\u3011\u6309\u94ae\uff0c\u53ef\u4ece\u3010Registry Center\u3011\u4e2d\u83b7\u53d6\u670d\u52a1\u5217\u8868\u3002\u53ef\u5728\u5b57\u6bb5 Interfaces \u4e0b\u62c9\u5217\u8868\u4e2d\u9009\u62e9\u9700\u8981\u6d4b\u8bd5\u7684\u63a5\u53e3\u53ca\u65b9\u6cd5\uff0c\u6839\u636e\u8be5\u65b9\u6cd5\u7684\u5b9a\u4e49\u4f20\u5165\u6240\u9700\u7684\u53c2\u6570\u3002

    Config Center \u53ef\u5728\u3010Config Center\u3011\u4e2d\u586b\u5199\u914d\u7f6e\u8d85\u65f6\u65f6\u95f4\u3001\u7528\u6237\u540d\u3001\u5bc6\u7801\u7b49\u76f8\u5173\u57fa\u7840\u4fe1\u606f\u3002

    Registry Center \u53ef\u5728\u3010Registry Center\u3011\u9875\u9762\u4e2d\u9009\u62e9\u534f\u8bae\u3001\u586b\u5199\u8fde\u63a5\u4fe1\u606f\u7b49\u3002

    Consumer & Service \u53ef\u5728\u3010Consumer & Service\u3011\u586b\u5199 Consumer \u548c Service \u4fe1\u606f\u3002

    Args \u53ef\u5728\u3010Args\u3011\u4e2d\u6dfb\u52a0\u8bf7\u6c42\u76f8\u5173\u53c2\u6570\u3002

    Attachment Args \u53ef\u5728\u3010Attachment Args\u3011\u4e2d\u8bbe\u7f6e\u5176\u4ed6\u952e\u503c\u5bf9\u53c2\u6570\u3002

    "},{"location":"user_manual/api_test/api_definition/#39","title":"3.9 \u4f9d\u8d56\u5173\u7cfb\u8bbe\u7f6e","text":"

    \u63a5\u53e3\u5b9a\u4e49\u652f\u6301\u8bbe\u7f6e\u63a5\u53e3\u7684\u524d\u540e\u7f6e\u4f9d\u8d56\u5173\u7cfb\u3002\u70b9\u51fb\u3010\u6dfb\u52a0\u3011\u6309\u94ae\uff0c\u53ef\u4ee5\u6dfb\u52a0\u524d\u7f6e\u63a5\u53e3\u3001\u540e\u7f6e\u63a5\u53e3\u4f9d\u8d56\u3002

    "},{"location":"user_manual/api_test/api_definition/#310-api","title":"3.10 API \u5217\u8868\u529f\u80fd","text":"

    \u652f\u6301\u5bf9\u63a5\u53e3\u5b9a\u4e49\u7684\u6267\u884c\u3001\u7f16\u8f91\u3001\u5220\u9664\u3001\u590d\u5236\u64cd\u4f5c\u70b9\u51fb\u66f4\u591a\u64cd\u4f5c\u3010...\u3011\u53ef\u4ee5 \u67e5\u770b\u5f15\u7528\u3001\u67e5\u770bCASE\u3002

    • \u6267\u884c\uff1a\u8fdb\u5165\u3010\u7f16\u8f91\u63a5\u53e3\u8be6\u60c5-TEST\u3011\u9875\u9762
    • \u7f16\u8f91\uff1a\u8fdb\u5165\u3010\u7f16\u8f91\u63a5\u53e3\u8be6\u60c5-API\u3011\u9875\u9762
    • \u5220\u9664\uff1a\u5220\u9664\u8be5\u63a5\u53e3\u5230\u3010\u56de\u6536\u7ad9\u3011
    • \u590d\u5236\uff1a\u590d\u5236\u8be5\u63a5\u53e3\u5b9a\u4e49\u4fe1\u606f
    • \u67e5\u770b\u5f15\u7528\uff1a\u53ef\u4ee5\u67e5\u770b\u63a5\u53e3\u5177\u4f53\u54ea\u4e2a\u573a\u666f\u5f15\u7528
    • \u67e5\u770b CASE :\u53ef\u4ee5\u67e5\u770b\u63a5\u53e3\u4e0b\u5199\u597d\u7684 CASE \u7528\u4f8b

    "},{"location":"user_manual/api_test/api_definition/#4-test","title":"4 TEST","text":"

    \u5728\u3010TEST\u3011\u9875\u9762\u4e2d\u53ef\u4ee5\u9009\u62e9\u8fd0\u884c\u73af\u5883\u8c03\u8bd5\u63a5\u53e3\uff0c\u540c\u65f6\u53ef\u4ee5\u6dfb\u52a0\u524d\u540e\u7f6e\u811a\u672c\u3001\u524d\u540e\u7f6eSQL\u3001\u65ad\u8a00\u3001\u63d0\u53d6\u53c2\u6570\u7b49\u5b50\u6b65\u9aa4\u3002

    "},{"location":"user_manual/api_test/api_definition/#41","title":"4.1 \u81ea\u52a8\u751f\u6210\u6d4b\u8bd5\u6570\u636e","text":"

    \u63a5\u53e3\u8bf7\u6c42\u4f53\u4e3a json \u683c\u5f0f\u53ef\u5f00\u542f \u3010JSON-SCHEMA\u3011\u6a21\u5f0f\uff0c\u70b9\u51fb\u3010\u751f\u6210\u6d4b\u8bd5\u6570\u636e\u3011\u4f1a\u751f\u6210\u968f\u673a\u53c2\u6570\u503c \uff0c\u7528\u4e8e\u5feb\u901f\u4f20\u53c2\u6d4b\u8bd5\u3002 \u5982\u9700\u5b9a\u5236\u751f\u6210\u89c4\u5219\u53ef\u70b9\u51fb\u3010\u8bbe\u7f6e\u3011\u56fe\u6807\uff0c\u5bf9\u679a\u4e3e\u503c\u751f\u6210\u89c4\u5219\u8fdb\u884c\u8bbe\u7f6e\u3002

    \u5feb\u901f\u751f\u6210\u6570\u636e\u89c4\u5219\u5728\u3010\u9ad8\u7ea7\u8bbe\u7f6e\u3011\u9875\u9762\uff0c\u53ef\u4ee5\u8bbe\u7f6e\u9ed8\u8ba4\u503c\u3001\u679a\u4e3e\u503c\u3001\u6700\u5927\u6700\u5c0f\u957f\u5ea6\u3001\u6b63\u5219\u8868\u8fbe\u3001\u63cf\u8ff0\u76f8\u5173\u4fe1\u606f\uff0c\u89c4\u5219\u8bbe\u7f6e\u597d\u540e\u70b9\u51fb\u3010\u751f\u6210\u6d4b\u8bd5\u6570\u636e\u3011\u751f\u6548\u3002\u5982\u6709\u8bbe\u7f6e\u4e86\u9ed8\u8ba4\u503c\uff0c\u5219\u751f\u6210\u6d4b\u8bd5\u6570\u636e\u662f\u9ed8\u8ba4\u503c\uff1b\u5982\u8bbe\u7f6e\u679a\u4e3e\u503c\uff0c\u751f\u6210\u7684\u6570\u636e\u662f\u679a\u4e3e\u503c\u5176\u4e2d\u4e00\u4e2a\uff0c\u679a\u4e3e\u503c\u53ef\u4ee5\u6362\u884c\u8bbe\u7f6e\u591a\u4e2a\u3002

    "},{"location":"user_manual/api_test/api_definition/#42","title":"4.2 \u9488\u5bf9\u5355\u4e2a\u63a5\u53e3\u53d1\u8d77\u6d4b\u8bd5","text":"

    \u9009\u62e9\u8fd0\u884c\u73af\u5883\uff0c\u70b9\u51fb \u3010\u6d4b\u8bd5\u3011\u6309\u94ae\u5373\u53ef\u8c03\u8bd5\u63a5\u53e3\u3002\u5728\u54cd\u5e94\u5185\u5bb9\u53ef\u4ee5\u770b\u5230\u63a5\u53e3\u7684\u8bf7\u6c42\u54cd\u5e94\u4f53\u3001\u54cd\u5e94\u5934\u3001\u63a7\u5236\u53f0\u3001\u65ad\u8a00\u3001\u63d0\u53d6\u3001\u8bf7\u6c42\u5185\u5bb9\u4fe1\u606f\u3002 \u524d\u540e\u7f6e\u811a\u672c\u3001\u524d\u540e\u7f6eSQL\u3001\u65ad\u8a00\u53ca\u53c2\u6570\u63d0\u53d6\u7b49\u5b50\u6b65\u9aa4\u7684\u8be6\u60c5\u8bf4\u660e\u8bf7\u53c2\u8003\u3002 \u7528\u4f8b\u6b65\u9aa4\u8bf4\u660e

    "},{"location":"user_manual/api_test/api_definition/#43","title":"4.3 \u5176\u4ed6\u529f\u80fd","text":"

    \u70b9\u51fb\u3010\u6d4b\u8bd5\u3011\u6309\u94ae\u65c1\u8fb9\u7684\u5411\u4e0b\u7bad\u5934\u3010V\u3011\uff0c\u8fd8\u63d0\u4f9b\u4e86\u52a0\u8f7d\u7528\u4f8b\u3001\u53e6\u5b58\u4e3a\u65b0\u7528\u4f8b\u3001\u66f4\u65b0\u63a5\u53e3\u3001\u53e6\u5b58\u4e3a\u65b0\u63a5\u53e3\u5feb\u6377\u529f\u80fd\u3002

    \u3010\u52a0\u8f7d\u7528\u4f8b\u3011\u52a0\u8f7d\u8be5\u63a5\u53e3\u4e0b\u7684\u6240\u6709\u7528\u4f8b\u3002

    \u3010\u53e6\u5b58\u4e3a\u65b0\u7528\u4f8b\u3011\u53ef\u4f7f\u7528\u8be5\u63a5\u53e3\u9875\u9762\u586b\u5199\u7684\u53c2\u6570\u4fe1\u606f\u53ca\u6dfb\u52a0\u7684\u5b50\u6b65\u9aa4\uff0c\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u63a5\u53e3\u7528\u4f8b\u3002\u8f93\u5165\u7528\u4f8b\u540d\u79f0\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u6309\u94ae\uff0c\u5373\u53ef\u4fdd\u5b58\u4e3a\u4e00\u4e2a\u65b0\u7684\u63a5\u53e3\u7528\u4f8b\u3002

    \u3010\u66f4\u65b0\u63a5\u53e3\u3011\u53ef\u5c06\u5f53\u524d\u9875\u9762\u586b\u5199\u7684\u53c2\u6570\u4fe1\u606f\u66f4\u65b0\u5230\u5bf9\u5e94\u7684\u63a5\u53e3\u5b9a\u4e49\u4e2d\u3002

    \u3010\u53e6\u5b58\u4e3a\u65b0\u63a5\u53e3\u3011\u5373\u53ef\u4f7f\u7528\u5f53\u524d\u9875\u9762\u63a5\u53e3\u4fe1\u606f\u6765\u521b\u5efa\u65b0\u7684\u63a5\u53e3\u5b9a\u4e49\u3002

    "},{"location":"user_manual/api_test/api_definition/#5-case","title":"5 CASE","text":"

    \u5728 CASE \u9875\u9762\u4e2d\u5c55\u793a\u5f53\u524d\u63a5\u53e3\u4e0b\u7684\u6240\u6709\u63a5\u53e3\u7528\u4f8b\u5217\u8868\u3002

    "},{"location":"user_manual/api_test/api_definition/#51","title":"5.1 \u5217\u8868\u529f\u80fd","text":"

    \u652f\u6301\u5bf9\u63a5\u53e3\u7528\u4f8b\u7684 \u7f16\u8f91 \u6267\u884c \u590d\u5236 \u5220\u9664\u9f20\u6807\u60ac\u6d6e\u3010\u2026\u3011\u53ef\u5c55\u793a\u66f4\u591a\u529f\u80fd\u3001\u67e5\u770b\u5f15\u7528\u3001\u6267\u884c\u5386\u53f2\u3001\u521b\u5efa\u6027\u80fd\u6d4b\u8bd5\u64cd\u4f5c\u3002

    • \u7f16\u8f91\uff1a\u7f16\u8f91\u8be5\u63a5\u53e3\u7528\u4f8b
    • \u6267\u884c\uff1a\u8c03\u8bd5\u8be5\u63a5\u53e3
    • \u590d\u5236\uff1a\u590d\u5236\u8be5\u63a5\u53e3\u7528\u4f8b\u4fe1\u606f
    • \u5220\u9664\uff1a\u5220\u9664\u8be5\u63a5\u53e3\u7528\u4f8b\u5230\u56de\u6536\u7ad9
    • \u67e5\u770b\u5f15\u7528\uff1a\u67e5\u770b\u8be5\u63a5\u53e3\u7528\u4f8b\u88ab\u573a\u666f\u5f15\u7528\u548c\u6d4b\u8bd5\u8ba1\u5212\u5f15\u7528\u60c5\u51b5
    • \u6267\u884c\u5386\u53f2\uff1a\u53ef\u67e5\u770b\u8be5\u63a5\u53e3\u7528\u4f8b\u6267\u884c\u5386\u53f2\u5217\u8868\u53ca\u6267\u884c\u7ed3\u679c\u8be6\u60c5
    • \u521b\u5efa\u6027\u80fd\u6d4b\u8bd5\uff1a\u53ef\u4f7f\u7528\u5f53\u524d\u63a5\u53e3\u7528\u4f8b\u5feb\u901f\u521b\u5efa\u6027\u80fd\u6d4b\u8bd5

    "},{"location":"user_manual/api_test/api_definition/#52","title":"5.2 \u6279\u91cf\u64cd\u4f5c","text":"

    \u9009\u62e9\u591a\u6761\u63a5\u53e3\u7528\u4f8b\uff0c\u70b9\u51fb\u3010\u2026\u3011\uff0c\u53ef\u5bf9\u591a\u4e2a\u63a5\u53e3\u7528\u4f8b\u8fdb\u884c\u6279\u91cf\u5220\u9664\u3001\u6279\u91cf\u7f16\u8f91\u3001\u6279\u91cf\u6267\u884c\u3001\u6279\u91cf\u540c\u6b65\u64cd\u4f5c\u3002

    • \u6279\u91cf\u5220\u9664\uff1a\u6279\u91cf\u5220\u9664\u63a5\u53e3\u7528\u4f8b\u5230\u56de\u6536\u7ad9
    • \u6279\u91cf\u7f16\u8f91\uff1a\u6279\u91cf\u7f16\u8f91\u63a5\u53e3\u7528\u4f8b\u7b49\u7ea7\u3001\u6807\u7b7e\u5c5e\u6027
    • \u6279\u91cf\u6267\u884c\uff1a\u6279\u91cf\u8c03\u8bd5\u63a5\u53e3\u7528\u4f8b\uff0c\u8fd0\u884c\u6a21\u5f0f\u53ef\u9009\u62e9\u4e32\u884c\u6216\u5e76\u884c\uff0c\u751f\u6210\u62a5\u544a\u53ef\u9009\u751f\u6210\u72ec\u7acb\u62a5\u544a\u3001\u96c6\u5408\u62a5\u544a\u3002
    • \u6279\u91cf\u540c\u6b65\uff1a\u6279\u91cf\u540c\u6b65\u63a5\u53e3\u7528\u4f8b\uff0c\u53ef\u5bf9\u540c\u6b65\u7528\u4f8b\u8fdb\u884c\u57fa\u672c\u4fe1\u606f\u3001\u8bf7\u6c42\u53c2\u6570\u3001\u5176\u4ed6\u8bbe\u7f6e\u76f8\u5173\u5185\u5bb9\u8fdb\u884c\u914d\u7f6e\u3002

    "},{"location":"user_manual/api_test/api_definition/#53","title":"5.3 \u65b0\u5efa\u63a5\u53e3\u7528\u4f8b","text":"

    \u70b9\u51fb \u3010+\u6dfb\u52a0\u3011\u6309\u94ae\uff0c\u53ef\u4f7f\u7528\u5f53\u524d\u63a5\u53e3\u5b9a\u4e49\u7684\u53c2\u6570\u4fe1\u606f\u521b\u5efa\u65b0\u7684\u63a5\u53e3\u7528\u4f8b\u3002

    "},{"location":"user_manual/api_test/api_definition/#54","title":"5.4 \u641c\u7d22","text":"

    \u666e\u901a\u641c\u7d22\u652f\u6301\u901a\u8fc7\u63a5\u53e3\u7528\u4f8b\u7684 ID \u3001\u540d\u79f0\u3001\u6807\u7b7e\u8fdb\u884c\u6a21\u7cca\u641c\u7d22\u3002\u9ad8\u7ea7\u641c\u7d22\u652f\u6301\u6309 ID \u3001\u540d\u79f0\u3001\u7528\u4f8b\u7b49\u7ea7\u3001\u6807\u7b7e\u3001\u6267\u884c\u7ed3\u679c\u3001\u66f4\u65b0\u65f6\u95f4\u3001\u521b\u5efa\u65f6\u95f4\u3001\u521b\u5efa\u4eba\u3001\u5173\u6ce8\u4eba\u3001\u8def\u5f84\u641c\u7d22\u3002

    "},{"location":"user_manual/api_test/api_definition/#6-mock","title":"6 MOCK","text":"

    \u5728 MOCK \u9875\u9762\u4e2d\u5c55\u793a\u5f53\u524d\u63a5\u53e3\u5b9a\u4e49\u4e0b\u7684 MOCK \u670d\u52a1\u3002\u5728\u63a5\u53e3\u7f16\u8f91\u9875\u9762\u53ef\u5c55\u793a\u6b64\u63a5\u53e3\u7684 Mock \u4fe1\u606f\uff0cMock \u9ed8\u8ba4\u5730\u5740\u662f MeterSphere \u7cfb\u7edf\u5730\u5740+\u6a21\u5757 ID + \u63a5\u53e3\u5730\u5740\uff0c\u4e00\u4e2a\u63a5\u53e3\u5b9a\u4e49\u53ef\u4ee5\u8bbe\u7f6e\u591a\u4e2a Mock \u670d\u52a1\u3002

    "},{"location":"user_manual/api_test/api_definition/#61-http-mock","title":"6.1 HTTP Mock\u670d\u52a1\u8bbe\u7f6e","text":"

    MeterSphere \u63d0\u4f9b\u7684 Mock \u529f\u80fd\u53ef\u4ee5\u6839\u636e\u7528\u6237\u8f93\u5165\u7684\u8bf7\u6c42\u53c2\u6570\u3001\u8fd4\u56de\u6570\u636e\u751f\u6210Mock\u63a5\u53e3\uff0c\u8fd9\u4e9b\u63a5\u53e3\u4f1a\u81ea\u52a8\u751f\u6210\u6a21\u62df\u6570\u636e\uff0c\u4ee5\u8986\u76d6\u7528\u6237\u7684\u6a21\u62df\u6d4b\u8bd5\u9700\u6c42\u3002Mock \u671f\u671b\u662f\u6839\u636e\u8bbe\u7f6e\u7684\u8bf7\u6c42\u89e6\u53d1\u6761\u4ef6\u6765\u8fdb\u884c\u8fc7\u6ee4\uff0c\u7136\u540e\u8fd4\u56de\u671f\u671b\u7684\u6570\u636e\u3002\u5728\u3010MOCK\u3011\u9875\u9762\u70b9\u51fb\u3010+\u6dfb\u52a0\u3011\u6309\u94ae\u6dfb\u52a0 Mock \u670d\u52a1\u3002

    \u8bbe\u7f6e Mock \u670d\u52a1\u89e6\u53d1\u6761\u4ef6\u3002\u53ef\u4ee5\u5728\u8bf7\u6c42\u5934\u3001QUERY\u53c2\u6570\u3001REST\u53c2\u6570\u3001\u8bf7\u6c42\u4f53\u8bbe\u7f6e\u89e6\u53d1\u6761\u4ef6\uff1b\u5728\u54cd\u5e94\u5185\u5bb9\u4e2d\u8bbe\u7f6e\u81ea\u5b9a\u4e49\u54cd\u5e94\u5934\u3001\u54cd\u5e94\u4f53\u3001\u72b6\u6001\u7801\u3001\u54cd\u5e94\u5ef6\u8fdf\u65f6\u95f4\u76f8\u5173\u4fe1\u606f

    Mock \u670d\u52a1\u89e6\u53d1\u6761\u4ef6\u8bbe\u7f6e\u89c4\u5219\u5339\u914d\u53ca\u903b\u8f91\u5224\u65ad: \u8bf7\u6c42\u53c2\u6570\u8bbe\u7f6e\u89c4\u5219\u5339\u914d\uff0c\u53ef\u4ee5\u6839\u636e\u53c2\u6570\u8bbe\u5b9a\u7684\u503c\u3001\u957f\u5ea6\u3001\u6b63\u5219\u8868\u8fbe\u5f0f Mock \u51fa\u76f8\u5e94\u7684\u8bf7\u6c42\u53c2\u6570\uff0c\u540c\u65f6\u53c2\u6570\u4e0e\u53c2\u6570\u4e4b\u95f4\u65b0\u589e\u4e86\u903b\u8f91\u5224\u65ad\uff08AND/OR\uff09\uff0c\u4ee5\u63d0\u5347\u89e6\u53d1\u6761\u4ef6\u7684\u7075\u6d3b\u6027\u3002

    \u9488\u5bf9\u4e00\u4e9b\u7279\u5b9a\u6d4b\u8bd5\u573a\u666f\u9700\u8981\u5bf9\u8fd4\u56de\u4fe1\u606f\u8fdb\u4e00\u6b65\u5904\u7406\u7684\u60c5\u51b5\uff0c\u6bd4\u5982\u52a0\u89e3\u5bc6\u64cd\u4f5c\u3001\u8c03\u7528\u7b2c\u4e09\u65b9 JAR \u5305\u7b49\u64cd\u4f5c\u3002MeterSphere \u5728 Mock \u670d\u52a1\u4e2d\u6dfb\u52a0 \u540e\u7f6e\u811a\u672c\uff0c\u7528\u6237\u53ef\u4ee5\u901a\u8fc7\u7f16\u5199\u811a\u672c\u6216\u6dfb\u52a0\u7cfb\u7edf\u5df2\u6709\u7684 \u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5\u6765\u5b9e\u73b0\u5bf9\u8fd4\u56de\u4fe1\u606f\u7684\u5904\u7406\u3002

    \u5728\u3010MOCK\u3011\u6570\u636e\u5217\u8868\uff0c\u9009\u62e9\u4e00\u6761\u6570\u636e\u70b9\u51fb\u6267\u884c\uff0c\u9009\u62e9 MOCK \u73af\u5883\uff0c\u5f53\u8bf7\u6c42\u53c2\u6570\u4e0e\u8bbe\u7f6e\u7684\u89e6\u53d1\u6761\u4ef6\u5339\u914d\u65f6\u5019\uff0c\u5219\u8fd4\u56de\u8bbe\u7f6e\u7684\u54cd\u5e94\u5185\u5bb9\u3002

    "},{"location":"user_manual/api_test/api_definition/#62-tcp-mock","title":"6.2 TCP Mock\u8bbe\u7f6e","text":"

    TCP Mock \u670d\u52a1\u9700\u5728\u3010\u9879\u76ee\u8bbe\u7f6e-\u5e94\u7528\u7ba1\u7406-\u63a5\u53e3\u6d4b\u8bd5\u3011\u4e2d\u5f00\u542f TCP Mock \u670d\u52a1\u3002\u5176\u529f\u80fd\u8bbe\u7f6e\u540c HTTP MOCK\u3002

    "},{"location":"user_manual/api_test/api_definition/#63-mock","title":"6.3 MOCK \u5217\u8868\u529f\u80fd","text":"

    \u652f\u6301\u5bf9 Mock \u6570\u636e\u8fdb\u884c\u6267\u884c\u3001\u7f16\u8f91\u3001\u590d\u5236 \u3001\u5220\u9664\u64cd\u4f5c\u3002

    "},{"location":"user_manual/api_test/api_definition/#7","title":"7 \u5b9a\u65f6\u540c\u6b65","text":"

    \u63a5\u53e3\u5b9a\u4e49\u5217\u8868\uff0c\u70b9\u51fb\u3010\u66f4\u591a\u64cd\u4f5c-\u5b9a\u65f6\u540c\u6b65\u3011\u53ef\u8bbe\u7f6e Swagger \u5728\u7ebf\u63a5\u53e3\u6587\u6863\u5b9a\u65f6\u540c\u6b65\u3002

    \u5b9a\u65f6\u540c\u6b65\u9875\u9762\u9700\u8bbe\u7f6e\u540c\u6b65\u7684\u8def\u5f84\uff08\u4ee5/api-docs\u7ed3\u5c3e\uff09\u3001\u5b9a\u65f6Cron\u8868\u8fbe\u5f0f\uff08\u652f\u6301\u81ea\u52a8\u751f\u6210\u53ef\u4ee5\u9884\u89c8\u8fd15\u6b21\u8fd0\u884c\u65f6\u95f4\uff09\u3001\u5bfc\u5165\u6a21\u5757\u3001\u5bfc\u5165\u6a21\u5f0f\uff0c\u70b9\u51fb\u3010\u6dfb\u52a0\u3011\u6309\u94ae\u5b8c\u6210\u63a5\u53e3\u5b9a\u65f6\u540c\u6b65\u8bbe\u7f6e\u3002

    \u63a5\u53e3\u5b9a\u65f6\u540c\u6b65\u4efb\u52a1\u652f\u6301\u8bbe\u7f6e\u4efb\u52a1\u901a\u77e5\u65b9\u5f0f\uff0c\u70b9\u51fb\u4efb\u52a1\u901a\u77e5\u6309\u94ae\uff0c\u5f39\u51fa\u4efb\u52a1\u901a\u77e5\u8bbe\u7f6e\u9875\u9762\uff0c\u6d88\u606f\u901a\u77e5\u65b9\u5f0f\uff1a\u90ae\u4ef6\u3001\u9489\u9489\u673a\u5668\u4eba\u3001\u4f01\u4e1a\u5fae\u4fe1\u673a\u5668\u4eba\u3001\u98de\u4e66\u673a\u5668\u4eba\u3001\u81ea\u5b9a\u4e49 Webhook \u3002

    \u5b9a\u65f6\u540c\u6b65\u4efb\u52a1\u652f\u6301\u5b9a\u65f6\u540c\u6b65\u4efb\u52a1\u67e5\u770b\u3001\u5f00\u542f\u3001\u5173\u95ed\u3001\u5220\u9664\u64cd\u4f5c\u3002

    "},{"location":"user_manual/api_test/api_definition/#8","title":"8 \u5bfc\u5165\u63a5\u53e3","text":"

    \u63a5\u53e3\u5b9a\u4e49\u5217\u8868\u3010\u66f4\u591a\u64cd\u4f5c-\u5bfc\u5165\u3011\uff0c\u652f\u6301\u591a\u79cd\u7c7b\u578b\u63a5\u53e3\u6587\u6863\u7684\u5bfc\u5165\uff0c\u5305\u62ec\uff1aMeterSphere\u3001Postman\u3001Swagger\u3001HAR\u3001JMX\u7c7b\u578b\u6570\u636e\u3002

    \u652f\u6301 Swagger Json \u6587\u4ef6\u7684\u79bb\u7ebf\u5bfc\u5165\uff0c\u540c\u65f6\u4e5f\u652f\u6301\u4f7f\u7528 Swagger URL \u8fdb\u884c\u5728\u7ebf\u540c\u6b65\uff0c\u5bfc\u5165\u89c4\u5219\u8bf7\u770b\u5bfc\u5165\u9875\u9762\u4e0b\u65b9\u7684\u63d0\u793a\u3002\u6ce8\u610f: \u82e5\u5bfc\u5165\u7684\u63a5\u53e3\u4e3a\u65b0\u5efa\u63a5\u53e3\u4e14\u6ca1\u6709\u7528\u4f8b\uff0c\u5219\u9ed8\u8ba4\u4e3a\u63a5\u53e3\u521b\u5efa\u4e00\u4e2a\u7528\u4f8b\u3002

    "},{"location":"user_manual/api_test/api_definition/#9","title":"9 \u5bfc\u51fa\u63a5\u53e3\u5b9a\u4e49","text":"

    \u63a5\u53e3\u5b9a\u4e49\u5217\u8868\u3010\u66f4\u591a\u64cd\u4f5c-\u5bfc\u51fa\u3011\u652f\u6301\u5bfc\u51fa MeterSphere \u548c Swagger3.0 \u683c\u5f0f\u7684\u63a5\u53e3\u6587\u4ef6\u5bfc\u51fa\u3002\u9009\u62e9\u8981\u5bfc\u51fa\u7684\u63a5\u53e3\uff0c\u70b9\u51fb \u3010\u66f4\u591a\u64cd\u4f5c-\u5bfc\u51fa\u3011\u9009\u62e9\u8981\u5bfc\u51fa\u7684\u6587\u4ef6\u683c\u5f0f\uff0c\u7cfb\u7edf\u81ea\u52a8\u5b8c\u6210\u63a5\u53e3\u5bfc\u51fa\u3002

    "},{"location":"user_manual/api_test/api_definition/#10","title":"10 \u6279\u91cf\u64cd\u4f5c","text":"

    \u9009\u62e9\u591a\u6761 API \u6570\u636e\u70b9\u51fb\u3010\u2026\u3011\uff0c\u53ef\u5bf9\u591a\u4e2a\u63a5\u53e3\u8fdb\u884c\u6279\u91cf\u64cd\u4f5c\u3002\u6279\u91cf\u5220\u9664\u3001\u6279\u91cf\u7f16\u8f91\u3001\u6279\u91cf\u79fb\u52a8\u3001\u6279\u91cf\u590d\u5236\u3001\u590d\u5236\u7248\u672c\u6570\u636e\u3001\u751f\u6210\u4f9d\u8d56\u5173\u7cfb

    • \u6279\u91cf\u5220\u9664\uff1a\u6279\u91cf\u5220\u9664\u63a5\u53e3\u5230\u56de\u6536\u7ad9
    • \u6279\u91cf\u7f16\u8f91\uff1a\u6279\u91cf\u7f16\u8f91\u63a5\u53e3\u5c5e\u6027
    • \u6279\u91cf\u79fb\u52a8\uff1a\u6279\u91cf\u5c06\u63a5\u53e3\u79fb\u52a8\u5230\u5176\u4ed6\u6a21\u5757
    • \u6279\u91cf\u590d\u5236\uff1a\u6279\u91cf\u5c06\u63a5\u53e3\u590d\u5236\u5230\u5176\u4ed6\u6a21\u5757
    • \u590d\u5236\u7248\u672c\u6570\u636e(X-Pack)\uff1a\u968f\u7740\u7248\u672c\u7684\u8fed\u4ee3\uff0c\u540c\u4e00\u63a5\u53e3\uff0c\u5f53\u65b0\u7248\u63a5\u53e3\u53c2\u6570\u53d8\u66f4\u9700\u8981\u521b\u5efa\u5bf9\u5e94\u65b0\u7248\u672c\u7684\u63a5\u53e3 CASE \u548c Mock \u6570\u636e\u3002\u4f7f\u7528\u6b64\u529f\u80fd\u53ef\u6279\u91cf\u5c06\u5386\u53f2\u7248\u672c\u7684 CASE \u548c Mock \u6570\u636e\u5feb\u901f\u590d\u5236\u5230\u65b0\u7248\u672c\uff0c\u65b9\u4fbf\u5feb\u901f\u7ef4\u62a4\u63a5\u53e3\u7684\u7528\u4f8b\u6570\u636e\u3002
    • \u751f\u6210\u4f9d\u8d56\u5173\u7cfb\uff1a\u6279\u91cf\u63a5\u53e3\u4e4b\u95f4\u7684\u8054\u7cfb\u751f\u6210\u4f9d\u8d56\u5173\u7cfb\u62d3\u6251\u56fe

    "},{"location":"user_manual/api_test/api_definition/#11","title":"11 \u641c\u7d22","text":"

    \u63a5\u53e3\u5b9a\u4e49\u5217\u8868\u652f\u6301\u666e\u901a\u641c\u7d22\u63a5\u53e3\u5b9a\u4e49\u7684 ID\u3001\u540d\u79f0\u3001\u6807\u7b7e\u3001\u8def\u5f84 \u8fdb\u884c\u6a21\u7cca\u641c\u7d22\u3002\u9ad8\u7ea7\u641c\u7d22\u652f\u6301 ID \u3001\u540d\u79f0\u3001\u8bf7\u6c42\u7c7b\u578b\u3001\u8def\u5f84\u3001\u72b6\u6001\u3001\u6807\u7b7e\u3001\u66f4\u65b0\u4e8b\u4ef6\u3001\u521b\u5efa\u4e8b\u4ef6\u3001\u8d23\u4efb\u4eba\u3001\u6240\u5c5e\u6a21\u5757\u3001\u5173\u6ce8\u4eba\u8fdb\u884c\u641c\u7d22\u3002

    "},{"location":"user_manual/api_test/api_definition/#12","title":"12 \u56de\u6536\u7ad9","text":"

    \u56de\u6536\u7ad9\u5c55\u793a\u5df2\u5220\u9664\u7684\u63a5\u53e3 API\u3001CASE \u5217\u8868\u3002\u652f\u6301\u628a\u56de\u6536\u7ad9\u7684\u6570\u636e\u6062\u590d\u5230\u63a5\u53e3\u5217\u8868\u548c\u5f7b\u5e95\u5220\u9664\u64cd\u4f5c\u3002

    \u56de\u6536\u7ad9\u5217\u8868\u6279\u91cf\u9009\u62e9\u6570\u636e\uff0c\u70b9\u51fb\u3010...\u3011\u6309\u94ae\u5f39\u51fa\u64cd\u4f5c\u83dc\u5355\uff0c\u652f\u6301\u6279\u91cf\u5220\u9664\u3001\u6279\u91cf\u6062\u590d\u64cd\u4f5c\u3002

    "},{"location":"user_manual/api_test/api_definition/#13","title":"13 \u6587\u6863\u7ba1\u7406","text":"

    API \u63a5\u53e3\u652f\u6301\u4ee5\u6587\u6863\u5f62\u5f0f\u5c55\u793a\u63a5\u53e3\u5b9a\u4e49\u8be6\u7ec6\u4fe1\u606f\uff0c\u9875\u9762\u53f3\u4fa7\u5c55\u793a\u63a5\u53e3\u5217\u8868\uff0c\u70b9\u51fb\u63a5\u53e3\u540d\u79f0\u53ef\u5feb\u901f\u5b9a\u4f4d\u5230\u8be5\u63a5\u53e3\u8be6\u60c5\u6240\u5728\u4f4d\u7f6e\u3002 \u70b9\u51fb\u3010\u5206\u4eab\u3011\u56fe\u6807\uff0c\u7cfb\u7edf\u4f1a\u751f\u6210\u63a5\u53e3\u7684 URL \u5730\u5740\u3002 \u70b9\u51fb\u3010\u590d\u5236\u3011\u6309\u94ae\u5373\u53ef\u5c06\u63a5\u53e3\u7684 URL \u5730\u5740\u5206\u4eab\u7ed9\u4ed6\u4eba\u3002

    "},{"location":"user_manual/api_test/api_definition/#14-x-pack","title":"14 \u7248\u672c\u7ba1\u7406 (X-Pack)","text":"

    \u63a5\u53e3\u5b9a\u4e49\u5217\u8868\u53ef\u5207\u6362\u67e5\u770b\u5f53\u524d\u5b9a\u4e49\u63a5\u53e3\u7684\u7248\u672c\u4fe1\u606f\uff0c\u5217\u8868\u9ed8\u8ba4\u5c55\u793a\u6700\u65b0\u7248\u6570\u636e\uff0c\u53ef\u5207\u6362\u67e5\u770b\u5404\u7248\u672c\u7684\u63a5\u53e3\u5b9a\u4e49\u4fe1\u606f\u3002

    "},{"location":"user_manual/api_test/api_scenario/","title":"\u63a5\u53e3\u573a\u666f\u7f16\u6392","text":""},{"location":"user_manual/api_test/api_scenario/#1","title":"1 \u63a5\u53e3\u5217\u8868\u5bfc\u5165","text":"

    \u901a\u8fc7\u63a5\u53e3\u5217\u8868\u5bfc\u5165\u529f\u80fd\uff0c\u53ef\u4ee5\u76f4\u63a5\u6dfb\u52a0\u63a5\u53e3\u5b9a\u4e49\u4e2d\u5df2\u7ef4\u62a4\u597d\u7684\u63a5\u53e3\u6216\u7528\u4f8b\uff0c\u51cf\u5c11\u91cd\u590d\u5de5\u4f5c\u3002

    "},{"location":"user_manual/api_test/api_scenario/#11","title":"1.1 \u5bfc\u5165\u63a5\u53e3","text":"

    \u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u53f3\u4e0b\u89d2\u83dc\u5355\u3010+\u3011\u9009\u62e9 \u3010\u63a5\u53e3\u5217\u8868\u5bfc\u5165\u3011\uff0c\u4ece\u63a5\u53e3\u5217\u8868\u53ef\u4ee5\u9009\u62e9 API \u91cc\u9762\u7684\u6570\u636e\uff0c\u4f7f\u7528\u65b9\u5f0f\u652f\u6301 \u3010\u590d\u5236\u3011\u6a21\u5f0f\u3002 \u3010\u590d\u5236\u3011\u65b9\u5f0f\u5bfc\u5165\u7684\u7528\u4f8b\uff0c\u5f53\u539f\u7528\u4f8b\u53d1\u751f\u53d8\u5316\u65f6\uff0c\u573a\u666f\u4e2d\u5bfc\u5165\u7684\u7528\u4f8b\u4e0d\u4f1a\u6539\u53d8\u3002

    "},{"location":"user_manual/api_test/api_scenario/#12","title":"1.2 \u5bfc\u5165\u7528\u4f8b","text":"

    \u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u53f3\u4e0b\u89d2\u83dc\u5355\u3010+\u3011\u9009\u62e9\u3010\u63a5\u53e3\u5217\u8868\u5bfc\u5165\u3011\uff0c\u4ece\u63a5\u53e3\u5217\u8868\u53ef\u4ee5\u9009\u62e9 CASE \u91cc\u9762\u7684\u6570\u636e\uff0c\u4f7f\u7528\u65b9\u5f0f\u652f\u6301 \u3010\u590d\u5236\u3011\u3001\u3010\u5f15\u7528\u3011\u4e24\u79cd\u6a21\u5f0f\u3002

    • \u3010\u590d\u5236\u3011\u65b9\u5f0f\u5bfc\u5165\u7684\u7528\u4f8b\uff0c\u5f53\u539f\u7528\u4f8b\u53d1\u751f\u53d8\u5316\u65f6\uff0c\u573a\u666f\u4e2d\u5bfc\u5165\u7684\u7528\u4f8b\u4e0d\u4f1a\u6539\u53d8\uff1b
    • \u3010\u5f15\u7528\u3011\u65b9\u5f0f\u5bfc\u5165\u7684\u7528\u4f8b\uff0c\u5f53\u539f\u7528\u4f8b\u53d1\u751f\u53d8\u5316\u65f6\uff0c\u573a\u666f\u4e2d\u5bfc\u5165\u7684\u7528\u4f8b\u4e5f\u4f1a\u968f\u4e4b\u6539\u53d8\u3002

    "},{"location":"user_manual/api_test/api_scenario/#2","title":"2 \u81ea\u5b9a\u4e49\u8bf7\u6c42","text":"

    \u9664\u4e86\u5bfc\u5165\u5df2\u6709\u5b9a\u4e49\u7684\u63a5\u53e3\u6216\u7528\u4f8b\uff0c\u8fd8\u53ef\u4ee5\u901a\u8fc7\u81ea\u5b9a\u4e49\u8bf7\u6c42\u7684\u65b9\u5f0f\u589e\u52a0\u8bf7\u6c42\uff0c\u76ee\u524d\u652f\u6301 HTTP\u3001TCP\u3001DUBBO\u3001SQL \u7b49\u4e0d\u540c\u7c7b\u578b\u3002

    "},{"location":"user_manual/api_test/api_scenario/#3","title":"3 \u81ea\u5b9a\u4e49\u811a\u672c","text":"

    \u81ea\u5b9a\u4e49\u811a\u672c\u4e0e\u524d\u540e\u7f6e\u811a\u672c\u4f7f\u7528\u65b9\u5f0f\u7c7b\u4f3c\uff0c\u4f46\u662f\u53ef\u4ee5\u72ec\u7acb\u6dfb\u52a0\uff0c\u4e0d\u9700\u8981\u4f9d\u8d56\u4e8e\u67d0\u4e2a\u5df2\u6709\u8bf7\u6c42\u4f5c\u4e3a\u5176\u5b50\u6b65\u9aa4\u3002\u76ee\u524d\u652f\u6301\u7684\u811a\u672c\u8bed\u8a00\u53ca\u5185\u7f6e\u53d8\u91cf\u8bf7\u53c2\u8003 \u524d\u7f6e\u811a\u672c\u3002

    "},{"location":"user_manual/api_test/api_scenario/#4","title":"4 \u573a\u666f\u5bfc\u5165","text":"

    \u7528\u6237\u53ef\u4ee5\u7ef4\u62a4\u4e00\u4e9b\u57fa\u7840\u3001\u901a\u7528\u573a\u666f\uff0c\u901a\u8fc7\u573a\u666f\u5bfc\u5165\u529f\u80fd\uff0c\u53ef\u4ee5\u76f4\u63a5\u5c06\u5df2\u6709\u7684\u573a\u666f\u6dfb\u52a0\u5230\u5f53\u524d\u573a\u666f\u4e2d\uff0c\u51cf\u5c11\u91cd\u590d\u5de5\u4f5c\uff0c\u63d0\u9ad8\u573a\u666f\u7684\u590d\u7528\u6027\u3002

    • \u3010\u590d\u5236\u3011\u65b9\u5f0f\u5bfc\u5165\u7684\u573a\u666f\uff0c\u5f53\u539f\u573a\u666f\u53d1\u751f\u53d8\u5316\u65f6\uff0c\u573a\u666f\u4e2d\u5bfc\u5165\u7684\u573a\u666f\u4e0d\u4f1a\u6539\u53d8\u3002
    • \u3010\u5f15\u7528\u3011\u65b9\u5f0f\u5bfc\u5165\u7684\u573a\u666f\uff0c\u5f53\u539f\u573a\u666f\u53d1\u751f\u53d8\u5316\u65f6\uff0c\u573a\u666f\u4e2d\u5bfc\u5165\u7684\u573a\u666f\u4e5f\u4f1a\u968f\u4e4b\u6539\u53d8\u3002

    "},{"location":"user_manual/api_test/api_scenario/#5","title":"5 \u6761\u4ef6\u63a7\u5236\u5668","text":"

    \u5f53\u6761\u4ef6\u63a7\u5236\u5668\u4e2d\u914d\u7f6e\u7684\u6761\u4ef6\u6ee1\u8db3\u65f6\uff0c\u6761\u4ef6\u63a7\u5236\u5668\u4e0b\u7684\u5b50\u6b65\u9aa4\u624d\u4f1a\u6267\u884c\uff0c\u5426\u5219\u5b50\u6b65\u9aa4\u4f1a\u88ab\u8df3\u8fc7\u3002

    "},{"location":"user_manual/api_test/api_scenario/#6","title":"6 \u5faa\u73af\u63a7\u5236\u5668","text":"

    \u901a\u8fc7\u4f7f\u7528\u5faa\u73af\u63a7\u5236\u5668\uff0c\u53ef\u4ee5\u91cd\u590d\u6267\u884c\u5faa\u73af\u63a7\u5236\u5668\u4e0b\u7684\u5b50\u6b65\u9aa4\u3002

    "},{"location":"user_manual/api_test/api_scenario/#61","title":"6.1 \u6b21\u6570\u5faa\u73af","text":"

    \u6b21\u6570\u5faa\u73af\u652f\u6301\u81ea\u5b9a\u4e49\u8bbe\u7f6e\u6b21\u6570\u3001\u95f4\u9694\u7b49\u65b9\u5f0f\u8fdb\u884c\u5faa\u73af\u63a7\u5236\u3002

    • \u3010\u5faa\u73af\u6b21\u6570\u3011\uff1a\u8be5\u5faa\u73af\u63a7\u5236\u5668\u4e0b\u7684\u5b50\u6b65\u9aa4\u603b\u5171\u6267\u884c\u7684\u6b21\u6570\u3002
    • \u3010\u5faa\u73af\u95f4\u9694\u3011\uff1a\u6bcf\u6b21\u6267\u884c\u95f4\u7684\u65f6\u95f4\u95f4\u9694\uff0c\u4ee5\u6beb\u79d2\u4e3a\u5355\u4f4d\u3002
    • \u3010\u6210\u529f\u540e\u662f\u5426\u7ee7\u7eed\u5faa\u73af\u3011\uff1a\u4ec5\u5faa\u73af\u63a7\u5236\u5668\u4e0b\u5b58\u5728\u4e00\u4e2a\u8bf7\u6c42\u65f6\u53ef\u4ee5\u5173\u95ed\u3002\u5f53\u5173\u95ed\u65f6\uff0c\u82e5\u5faa\u73af\u63a7\u5236\u5668\u4e0b\u7684\u8bf7\u6c42\u662f\u6210\u529f\u72b6\u6001\uff0c\u5219\u7acb\u5373\u7ec8\u6b62\u5faa\u73af\uff0c\u65e0\u8bba\u6709\u6ca1\u6709\u8fbe\u5230\u5faa\u73af\u6b21\u6570\u3002\u53ef\u4ee5\u7528\u5728\u5f02\u6b65\u8bf7\u6c42\u540e\u8f6e\u8be2\u67e5\u8be2\u6267\u884c\u7ed3\u679c\u7684\u573a\u666f\uff0c\u5f53\u67e5\u8be2\u7ed3\u679c\u7b26\u5408\u9884\u671f\u65f6\u7ec8\u6b62\u5faa\u73af\uff0c\u907f\u514d\u591a\u4f59\u7684\u67e5\u8be2\u64cd\u4f5c\u3002

    \u793a\u4f8b

    \u5f00\u542f\u3010\u6210\u529f\u540e\u7ee7\u7eed\u5faa\u73af\u3011\uff0c\u5faa\u73af\u603b\u5171\u6267\u884c\u4e86 5 \u6b21\u3002

    \u5173\u95ed\u3010\u6210\u529f\u540e\u7ee7\u7eed\u5faa\u73af\u3011\uff0c\u7531\u4e8e\u5faa\u73af\u4e0b\u7684\u8bf7\u6c42\u7b2c\u4e00\u6b21\u4fbf\u6267\u884c\u6210\u529f\uff0c\u5faa\u73af\u4ec5\u6267\u884c\u4e86 1 \u6b21\u3002

    "},{"location":"user_manual/api_test/api_scenario/#62-foreach","title":"6.2 ForEach \u5faa\u73af","text":"

    ForEach \u5faa\u73af\u4e00\u822c\u914d\u5408\u5217\u8868\u53d8\u91cf\u4f7f\u7528\uff0c\u4f8b\u5982\u5b58\u5728 ID_1\uff0cID_2\uff0cID_3 \u5f62\u5f0f\u7684\u4e00\u7ec4\u53d8\u91cf\u65f6\uff0c\u53ef\u4ee5\u901a\u8fc7 ForEach \u5faa\u73af\u4f7f\u7528\u5176\u4e2d\u6bcf\u4e2a ID \u53d1\u9001\u7279\u5b9a\u8bf7\u6c42\u3002

    • \u3010\u8f93\u51fa\u53d8\u91cf\u540d\u79f0\u3011\uff1a\u5728\u5faa\u73af\u4e2d\u53ef\u4ee5\u901a\u8fc7\u8be5\u53d8\u91cf\u5f15\u7528\u5230\u5217\u8868\u53d8\u91cf\u4e2d\u5f53\u524d\u8fed\u4ee3\u7684\u53d8\u91cf\u503c\u3002
    • \u3010\u8f93\u5165\u53d8\u91cf\u524d\u7f00\u3011\uff1a\u5217\u8868\u53d8\u91cf\u7684\u53d8\u91cf\u524d\u7f00\u3002
    • \u3010\u5faa\u73af\u95f4\u9694\u3011\uff1a\u6bcf\u6b21\u6267\u884c\u95f4\u7684\u65f6\u95f4\u95f4\u9694\uff0c\u4ee5\u6beb\u79d2\u4e3a\u5355\u4f4d\u3002

    \u793a\u4f8b

    \u5728\u573a\u666f\u53d8\u91cf\u4e2d\u8bbe\u7f6e\u5217\u8868\u53d8\u91cf id\uff0c\u5217\u8868\u503c\u4e3a1\uff0c2\uff0c3\u3002

    \u904d\u5386\u573a\u666f\u53d8\u91cf\u4e2d\u7684\u5217\u8868\u53d8\u91cf\uff0c\u5728\u3010\u524d\u7f6e\u811a\u672c\u3011\u4e2d\u6253\u5370\u5217\u8868\u53d8\u91cf\u4e2d\u7684\u6bcf\u4e2a\u503c\u3002

    \u5faa\u73af\u6b21\u6570\u4e0e\u5217\u8868\u957f\u5ea6\u76f8\u540c\uff0c\u4e14\u8f93\u51fa\u5217\u8868\u53d8\u91cf\u4e2d\u7684\u6bcf\u4e2a\u503c\u3002

    "},{"location":"user_manual/api_test/api_scenario/#63-while","title":"6.3 While \u5faa\u73af","text":"

    While \u5faa\u73af\u66f4\u4e3a\u7075\u6d3b\uff0c\u5f53\u914d\u7f6e\u7684\u6761\u4ef6\u6ee1\u8db3\u65f6\u5faa\u73af\u4f1a\u4e00\u76f4\u8fdb\u884c\u3002

    • \u3010\u53d8\u91cf\u3011\uff1a\u8981\u8fdb\u884c\u5224\u65ad\u7684\u53d8\u91cf\u3002
    • \u3010\u5224\u65ad\u6761\u4ef6\u3011\uff1a\u53d8\u91cf\u4e0e\u671f\u671b\u503c\u7684\u6bd4\u8f83\u65b9\u5f0f\u3002
    • \u3010\u503c\u3011\uff1a\u8981\u5bf9\u53d8\u91cf\u8fdb\u884c\u5224\u65ad\u7684\u503c\u3002
    • \u3010\u5faa\u73af\u8d85\u65f6\u65f6\u95f4\u3011\uff1a\u7531\u4e8e while \u5faa\u73af\u7684\u7279\u6b8a\u6027\uff0c\u5f53\u6761\u4ef6\u6ee1\u8db3\u65f6\u5c06\u4f1a\u4e00\u76f4\u5faa\u73af\uff0c\u4e3a\u4e86\u907f\u514d\u6b7b\u5faa\u73af\u7684\u60c5\u51b5\u51fa\u73b0\uff0c\u7528\u6237\u53ef\u4ee5\u914d\u7f6e\u5faa\u73af\u8d85\u65f6\u65f6\u95f4\uff0c\u5230\u8d85\u8fc7\u8be5\u65f6\u95f4\u540e\uff0c\u4e0d\u7ba1\u5faa\u73af\u6761\u4ef6\u662f\u5426\u6ee1\u8db3\uff0c\u5faa\u73af\u90fd\u5c06\u88ab\u7ec8\u6b62\u3002

    \u793a\u4f8b

    \u5728\u573a\u666f\u53d8\u91cf\u4e2d\u8bbe\u7f6e\u5e38\u91cf\u53d8\u91cf NUM\uff0c\u503c\u4e3a5\u3002

    \u8bbe\u7f6e While\u5faa\u73af\u7684\u6761\u4ef6\uff0c\u5728\u524d\u7f6e\u811a\u672c\u83b7\u53d6\u53d8\u91cf\u503c\u5e76\u66f4\u6539\u53d8\u91cf\u503c

    \u6bcf\u6b21\u5faa\u73af\u4fee\u6539\u7684\u503c\u5728\u63a7\u5236\u53f0\u8fdb\u884c\u6253\u5370

    "},{"location":"user_manual/api_test/api_scenario/#7","title":"7 \u7b49\u5f85\u63a7\u5236\u5668","text":"

    \u5f53\u67d0\u4e2a\u6b65\u9aa4\u6267\u884c\u540e\u9700\u8981\u7b49\u5f85\u4e00\u6bb5\u65f6\u95f4\u65f6\uff0c\u53ef\u4f7f\u7528\u7b49\u5f85\u63a7\u5236\u5668\u8fdb\u884c\u63a7\u5236\u3002\u5f53\u4f5c\u4e3a\u6b65\u9aa4\u6dfb\u52a0\u65f6\uff0c\u4e0e\u4e4b\u540c\u7ea7\u7684\u6240\u6709\u6b65\u9aa4\u5747\u4f1a\u7b49\u5f85\u82e5\u5e72\u65f6\u95f4\uff1b\u4f5c\u4e3a\u67d0\u4e2a\u6b65\u9aa4\u7684\u5b50\u6b65\u9aa4\u6dfb\u52a0\u65f6\uff0c\u8be5\u6b65\u9aa4\u5c06\u7b49\u5f85\u82e5\u5e72\u65f6\u95f4\u540e\u518d\u6267\u884c\u3002

    "},{"location":"user_manual/api_test/api_scenario/#8","title":"8 \u4e8b\u52a1\u63a7\u5236\u5668","text":"

    \u4e8b\u52a1\u63a7\u5236\u5668\u5c06\u4e00\u7ec4\u8bf7\u6c42\u5f53\u6210\u4e00\u4e2a\u4e8b\u52a1\u8fdb\u884c\u5904\u7406\uff0c\u6bd4\u5982\u7528\u6237\u4e00\u4e2a\u52a8\u4f5c\u5305\u542b\u5f88\u591a\u4e2a\u8bf7\u6c42\uff0c\u8fd9\u90e8\u5206\u8bf7\u6c42\u5c31\u90fd\u53ef\u4ee5\u653e\u5728\u4e00\u4e2a\u4e8b\u52a1\u63a7\u5236\u5668\u4e0b\uff0c\u5f53\u6210\u4e00\u4e2a\u4e8b\u52a1\uff0c\u5e38\u7528\u4e8e\u6027\u80fd\u6d4b\u8bd5\u3002

    "},{"location":"user_manual/api_test/api_scenario/#9","title":"9 \u524d\u7f6e\u811a\u672c","text":"

    \u4e0e\u63a5\u53e3\u7528\u4f8b\u64cd\u4f5c\u4e2d\u7684\u524d\u7f6e\u811a\u672c\u7c7b\u4f3c\uff0c\u8bf7\u53c2\u8003 \u524d\u7f6e\u811a\u672c\u3002

    "},{"location":"user_manual/api_test/api_scenario/#10","title":"10 \u540e\u7f6e\u811a\u672c","text":"

    \u4e0e\u63a5\u53e3\u7528\u4f8b\u64cd\u4f5c\u4e2d\u7684\u540e\u7f6e\u811a\u672c\u7c7b\u4f3c\uff0c\u8bf7\u53c2\u8003 \u540e\u7f6e\u811a\u672c\u3002

    "},{"location":"user_manual/api_test/api_scenario/#11-sql","title":"11 \u524d\u7f6eSQL","text":"

    \u4e0e\u63a5\u53e3\u7528\u4f8b\u64cd\u4f5c\u4e2d\u7684\u524d\u7f6eSQL\u7c7b\u4f3c\uff0c\u8bf7\u53c2\u8003 \u524d\u7f6eSQL\u3002

    "},{"location":"user_manual/api_test/api_scenario/#12-sql","title":"12 \u540e\u7f6eSQL","text":"

    \u4e0e\u63a5\u53e3\u7528\u4f8b\u64cd\u4f5c\u4e2d\u7684\u540e\u7f6eSQL\u7c7b\u4f3c\uff0c\u8bf7\u53c2\u8003 \u540e\u7f6eSQL\u3002

    "},{"location":"user_manual/api_test/api_scenario/#13","title":"13 \u65ad\u8a00\u89c4\u5219","text":"

    \u4e0e\u63a5\u53e3\u7528\u4f8b\u64cd\u4f5c\u4e2d\u7684\u65ad\u8a00\u89c4\u5219\u7c7b\u4f3c\uff0c\u8bf7\u53c2\u8003 \u65ad\u8a00\u89c4\u5219\u3002

    "},{"location":"user_manual/api_test/api_scenario/#14","title":"14 \u63d0\u53d6\u53c2\u6570","text":"

    \u4e0e\u63a5\u53e3\u7528\u4f8b\u64cd\u4f5c\u4e2d\u7684\u63d0\u53d6\u53c2\u6570\u7c7b\u4f3c\uff0c\u8bf7\u53c2\u8003 \u63d0\u53d6\u53c2\u6570\u3002

    "},{"location":"user_manual/api_test/api_step/","title":"\u63a5\u53e3\u7528\u4f8b\u64cd\u4f5c\u6b65\u9aa4","text":""},{"location":"user_manual/api_test/api_step/#1","title":"1 \u524d\u7f6e\u811a\u672c","text":"

    \u524d\u7f6e\u811a\u672c\u53ef\u4ee5\u6dfb\u52a0\u4e3a\u8bf7\u6c42\u7684\u5b50\u6b65\u9aa4\uff0c\u5728\u8bf7\u6c42\u53d1\u9001\u524d\u6267\u884c\uff0c\u53ef\u4ee5\u7528\u5728\u4fee\u6539\u8bf7\u6c42\u5185\u5bb9\u3001\u521d\u59cb\u5316\u8bf7\u6c42\u9700\u8981\u7684\u53c2\u6570\u503c\u7b49\u573a\u666f\u3002 \u76ee\u524d MeterSphere \u652f\u6301\u4ee5\u4e0b\u51e0\u79cd\u8bed\u8a00\u7684\u524d\u7f6e\u811a\u672c\uff1a

    • BeanShell
    • Python2
    • Groovy
    • NashornScript
    • RhinoScript

    \u5728\u524d\u7f6e\u811a\u672c\u4e2d\u53ef\u4ee5\u76f4\u63a5\u5f15\u7528JMeter \u9884\u5b9a\u4e49\u5bf9\u8c61\uff0c\u4f8b\u5982\uff1a - log\uff1a\u7528\u4e8e\u5728\u811a\u672c\u6267\u884c\u8fc7\u7a0b\u4e2d\u6253\u5370\u65e5\u5fd7

    //\u6253\u5370 `Hello World!` \u5230 info \u65e5\u5fd7\u4e2d\nlog.info(\"Hello World!\");\n
    - Label\uff1a\u524d\u7f6e\u811a\u672c\u6240\u5c5e\u8bf7\u6c42\u7684\u8bf7\u6c42\u540d\u79f0 - SampleResult\uff1a\u5f53\u524d\u8bf7\u6c42\u8bf7\u6c42\u7ed3\u679c SamplerResult \u7684\u6307\u9488
    //\u8bbe\u7f6e\u8bf7\u6c42\u7ed3\u679c\u6210\u529f\u6216\u5931\u8d25\nSampleResult.setSuccessful(true/false);\n//\u8bbe\u7f6e\u8bf7\u6c42\u8fd4\u56de\u7801\nSampleResult.setResponseCode(\"code\");\n//\u8bbe\u7f6e\u8bf7\u6c42\u8fd4\u56de\u6d88\u606f\nSampleResult.setResponseMessage(\"message\");\n
    - sampler\uff1a\u5f53\u524d\u8bf7\u6c42 sampler \u7684\u6307\u9488
    //\u83b7\u53d6\u5f53\u524d\u8bf7\u6c42\u540d\u79f0\nsampler.getName();\n
    - vars\uff1aJMeterVariables\uff0c\u7528\u4e8e\u64cd\u4f5c\u53d8\u91cf
    //\u83b7\u53d6\u53d8\u91cf VAR1 \u7684\u503c\nvars.get(\"VAR1\");\n//\u8bbe\u7f6e\u53d8\u91cf VAR2 \u7684\u503c\u4e3a value\nvars.put(\"VAR2\",\"value\");\n//\u79fb\u9664\u53d8\u91cf VAR3\nvars.remove(\"VAR3\");\n

    \u3010\u6ce8\u610f\u3011 \u4e0d\u540c\u811a\u672c\u8bed\u8a00\u8bed\u6cd5\u4e0d\u540c\uff0c\u4ee5\u4e0a\u793a\u4f8b\u4ec5\u9488\u5bf9 BeanShell \u6216 Groovy\u3002

    \u5728\u63a5\u53e3 CASE \u7f16\u8f91\u9875\u9762\uff0c\u64cd\u4f5c Tab \u9875\u524d\u7f6e\u64cd\u4f5c\u83dc\u5355\uff1a\u63d0\u4f9b\u4e86\u591a\u79cd\u4e0d\u540c\u7c7b\u578b\u548c\u8303\u56f4\u7684\u6807\u51c6\u4ee3\u7801\u6a21\u677f\uff0c\u540c\u65f6\u8fd8\u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u4ee3\u7801\u6a21\u677f\u3002\u4ee3\u7801\u6a21\u7248\u5206\u4e3a\uff1aAPI\u6d4b\u8bd5\u3001\u81ea\u5b9a\u4e49\u53d8\u91cf\u3001\u9879\u76ee\u73af\u5883\u3001\u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5\u3001\u5f02\u5e38\u5904\u7406\u3002

    "},{"location":"user_manual/api_test/api_step/#11-api","title":"1.1 API\u6d4b\u8bd5","text":"

    \u3010\u4eceAPI\u5b9a\u4e49\u5bfc\u5165\u3011\uff1aAPI\u5b9a\u4e49\u5bfc\u5165\u53ef\u4ee5\u76f4\u63a5\u5bfc\u5165 API / CASE \u81ea\u52a8\u751f\u6210\u811a\u672c\u3002\u70b9\u51fb\u3010API\u5b9a\u4e49\u5bfc\u5165\u3011\u6309\u94ae\uff0c\u4ece\u63a5\u53e3\u5217\u8868 API/ CASE \u9009\u62e9\u76ee\u6807\u6570\u636e\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u4f1a\u5728\u524d\u7f6e\u811a\u672c\u4e2d\u9ed8\u8ba4\u751f\u6210 beanshell \u811a\u672c\u3002\u811a\u672c\u8bed\u8a00\u53ef\u5207\u6362\uff0c\u9ed8\u8ba4\u652f\u6301 beanshell \u3001python2 \u3001groovy \u3001javascript \u8bed\u8a00\u3002

    \u70b9\u51fb\u3010\u65b0API\u6d4b\u8bd5[json]\u3011\u53ef\u4ee5\u81ea\u52a8\u751f\u6210 json \u8bf7\u6c42\u65b9\u5f0f\u7684 API \u8bf7\u6c42\u6a21\u677f\u3002

    "},{"location":"user_manual/api_test/api_step/#12","title":"1.2 \u81ea\u5b9a\u4e49\u53d8\u91cf","text":"

    \u5728\u3010\u81ea\u5b9a\u4e49\u53d8\u91cf\u3011\u65b9\u6cd5\u5217\u8868\uff0c\u9009\u62e9\u9700\u8981\u7684\u81ea\u5b9a\u4e49\u53d8\u91cf\u65b9\u6cd5\u53ef\u81ea\u52a8\u751f\u6210\u83b7\u53d6\u53d8\u91cf\u7684\u811a\u672c\u3002\u5305\u62ec\u83b7\u53d6\u54cd\u5e94\u5934\u3001\u83b7\u53d6\u54cd\u5e94\u7801\u3001\u83b7\u53d6\u54cd\u5e94\u7b49\u811a\u672c\uff0c\u4ee5\u83b7\u53d6\u63a5\u53e3\u8c03\u8bd5\u7ed3\u679c\u4e2d\u7684\u54cd\u5e94\u5934\u3001\u54cd\u5e94\u7801\u3001\u54cd\u5e94\u7ed3\u679c\u7b49\u4fe1\u606f\u3002

    "},{"location":"user_manual/api_test/api_step/#13","title":"1.3 \u9879\u76ee\u73af\u5883","text":"

    \u9009\u62e9\u3010\u9879\u76ee\u73af\u5883\u3011\u8bbe\u7f6e\u73af\u5883\u53c2\u6570\uff0c\u81ea\u52a8\u751f\u6210\u8bbe\u7f6e\u73af\u5883\u53d8\u91cf\u65b9\u6cd5\u586b\u5199\u5bf9\u5e94\u65b9\u6cd5\u952e\u503c\u5bf9\u5373\u53ef\u8bd5\u7528\u3002 vars.put(${__metersphere_env_id}+\"key\",\"value\"); // \u5c06\u503c\u5b58\u50a8\u4e3a\u73af\u5883\u53d8\u91cf\uff0c\u53ef\u5728\u3010\u73af\u5883-\u901a\u7528\u8bbe\u7f6e\u3011\u5904\u770b\u5230\u503c\u3002\u5f53\u524d\u73af\u5883\u4e0b\u7684\u6240\u6709\u63a5\u53e3\u4f7f\u7528\u3002 vars.put(\"key\",\"value\") // \u5c06\u503c\u5b58\u50a8\u4e3a\u573a\u666f\u53d8\u91cf

    "},{"location":"user_manual/api_test/api_step/#14","title":"1.4 \u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5","text":"

    \u9009\u62e9\u3010\u81ea\u5b9a\u4e49\u4ee3\u7801\u3011\u63d2\u5165\u4ee3\u7801\u7247\u6bb5\uff0c\u9009\u62e9\u5728\u3010\u9879\u76ee\u7ba1\u7406-\u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5\u3011\u5b9a\u4e49\u597d\u7684\u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5\uff0c\u53ef\u5b9e\u73b0\u590d\u7528\u811a\u672c\u4f18\u5316\u6d4b\u8bd5\u7ba1\u7406\u529e\u6cd5\u3002

    "},{"location":"user_manual/api_test/api_step/#15","title":"1.5 \u5f02\u5e38\u5904\u7406","text":"

    \u9009\u62e9\u3010\u5f02\u5e38\u5904\u7406\u3011\u7ec8\u6b62\u6d4b\u8bd5\uff0c\u53ef\u81ea\u52a8\u751f\u6210 \u7ec8\u6b62\u6d4b\u8bd5\u7ebf\u7a0b\u7684\u811a\u672c\u3002\u8bbe\u7f6e\u7ec8\u6b62\u6d4b\u8bd5\u5f02\u5e38\u6761\u4ef6\uff0c\u63a5\u53e3\u6216\u573a\u666f\u6267\u884c\u8fc7\u7a0b\u4e2d\u5339\u914d\u5230\u7ec8\u6b62\u6761\u4ef6\u5219\u7ec8\u6b62\u8be5\u8fdb\u7a0b\u3002

    "},{"location":"user_manual/api_test/api_step/#2","title":"2 \u540e\u7f6e\u811a\u672c","text":"

    \u540e\u7f6e\u811a\u672c\u4e0e\u524d\u7f6e\u811a\u672c\u7c7b\u4f3c\uff0c\u53ef\u4ee5\u6dfb\u52a0\u4e3a\u8bf7\u6c42\u7684\u5b50\u6b65\u9aa4\uff0c\u5728\u8bf7\u6c42\u53d1\u9001\u540e\u6267\u884c\uff0c\u53ef\u4ee5\u7528\u4e8e\u5904\u7406\u54cd\u5e94\u7ed3\u679c\uff0c\u4ece\u4e2d\u63d0\u53d6\u53d8\u91cf\u7b49\u573a\u666f\u3002

    "},{"location":"user_manual/api_test/api_step/#3-sql","title":"3 \u524d\u7f6e SQL","text":"

    \u5728\u8bf7\u6c42\u53d1\u9001\u4e4b\u524d\u6267\u884c SQL \u811a\u672c\u3002\u524d\u7f6e\u64cd\u4f5c\u4e0b\u62c9\u9009\u62e9 \u524d\u7f6eSQL\uff0c\u914d\u7f6e \u8fd0\u884c\u73af\u5883\u53ca \u76ee\u6807\u6570\u636e\u6e90\uff0c\u53ef\u76f4\u63a5\u5728 SQL\u811a\u672c\u4e2d\u7f16\u5199 SQL \u8bed\u53e5\uff0c\u8fd4\u56de\u7684\u63a5\u53e3\u652f\u6301\u5b58\u50a8\u7ed3\u679c\u3001\u6309\u5217\u5b58\u50a8\uff0c\u652f\u6301\u5728 SQL\u811a\u672c\u4e2d\u8bbe\u7f6e\u53d8\u91cf\u4f20\u53c2\u3002

    • \u5b58\u50a8\u7ed3\u679c\uff1a\u8fd4\u56de\u7ed3\u679c\u7684\u6240\u6709\u5b57\u6bb5\u5b58\u50a8\u5230\u4e00\u4e2a\u53d8\u91cf\u4e2d\u3002\u53ef\u914d\u5408\u811a\u672c\u5904\u7406\u83b7\u8fd4\u56de\u7ed3\u679c\u4e2d\u7684\u67d0\u4e00\u90e8\u5206\u503c\u3002
    • \u6309\u5217\u5b58\u50a8\uff1a\u76f4\u63a5\u6307\u5b9a\u53d6\u51fa\u8fd4\u56de\u7ed3\u679c\u5b57\u6bb5\u7684\u503c\uff0c\u5217\u540d\u8981\u548cSQL\u8bed\u53e5\u4e2d\u67e5\u8be2\u8fd4\u56de\u7ed3\u679c\u5217\u540d\u5bf9\u5e94\u3002\u53ef\u4ee5\u7528\u9017\u53f7\u4f5c\u4e3a\u5360\u4f4d\u7b26\u4ee3\u66ff\u5217\u540d\uff0c\u53ea\u5199\u51fa\u8981\u63d0\u53d6\u7684\u5217\u540d\u5373\u53ef\u3002

    \u5982\u56fe\u6240\u793a\u67e5\u8be2\uff0c\u7528\u6237\u3010\u6309\u5217\u5b58\u50a8\u3011\u67e5\u8be2 id \u548c name\uff0c\u901a\u8fc7${name_n}\u8fdb\u884c\u5f15\u7528\uff0cn\u4e3a\u884c\u6570\uff0c${name_1} \u4e3a name \u5217\u7684\u7b2c\u4e00\u884c\u503c\u3002

    "},{"location":"user_manual/api_test/api_step/#4-sql","title":"4 \u540e\u7f6e SQL","text":"

    \u540e\u7f6eSQL\u4e0e\u524d\u7f6eSQL\u7c7b\u4f3c\uff0c\u5728\u8bf7\u6c42\u6267\u884c\u5b8c\u6210\u540e\u518d\u8fdb\u884cSQL\u5904\u7406\u3002

    "},{"location":"user_manual/api_test/api_step/#5","title":"5 \u65ad\u8a00\u89c4\u5219","text":"

    \u65ad\u8a00\u7684\u4e3b\u8981\u529f\u80fd\u662f\u901a\u8fc7\u9a8c\u8bc1\u54cd\u5e94\u62a5\u6587\u662f\u5426\u6ee1\u8db3\u9700\u6c42\u89c4\u7ea6\u6765\u786e\u8ba4\u63a5\u53e3\u8fd0\u884c\u662f\u5426\u6b63\u786e\u3002 \u76ee\u524d MeterSphere \u652f\u6301\u4ee5\u4e0b\u51e0\u79cd\u5f62\u5f0f\u7684\u65ad\u8a00\u89c4\u5219\uff1a

    • \u6587\u672c
    • \u6b63\u5219
    • JSONPath
    • XPath
    • \u54cd\u5e94\u65f6\u95f4
    • \u811a\u672c
    • \u6587\u6863\u7ed3\u6784\u6821\u9a8c

    "},{"location":"user_manual/api_test/api_step/#51","title":"5.1 \u6587\u672c\u65ad\u8a00","text":"

    \u6587\u672c\u65ad\u8a00\u5373\u5bf9\u54cd\u5e94\u5bf9\u8c61\u6309\u6587\u672c\u65b9\u5f0f\u8ddf\u8fdb\u6307\u5b9a\u5224\u65ad\u6761\u4ef6\u8fdb\u884c\u5224\u65ad\u3002

    • \u5bf9\u8c61\u5305\u62ec\uff1a Response Code\uff0cResponse Headers\uff0cResponse Data \u3002
    • \u6761\u4ef6\u652f\u6301\uff1a \u5305\u542b\uff0c\u4e0d\u5305\u542b\uff0c\u7b49\u4e8e\uff0c\u4ee5...\u5f00\u59cb\uff0c\u4ee5...\u7ed3\u675f \u3002
    • \u503c\uff1a\u65ad\u8a00\u5bf9\u8c61\u9700\u8981\u5339\u914d\u7684\u503c\uff0c\u5339\u914d\u6210\u529f\u5219\u65ad\u8a00\u6210\u529f\uff0c\u5426\u5219\u65ad\u8a00\u5931\u8d25\u3002

    "},{"location":"user_manual/api_test/api_step/#52","title":"5.2 \u6b63\u5219\u65ad\u8a00","text":"

    \u6b63\u5219\u65ad\u8a00\u9002\u7528\u4e8e\u54cd\u5e94\u5185\u5bb9\u4e0d\u662f JSON\u3001XML\u3001HTML \u7b49\u8fd9\u6837\u7684\u6807\u51c6\u4e14\u5e38\u89c1\u7684\u7ed3\u6784\u5316\u6587\u672c\u7684\u8bf7\u6c42\u8fdb\u884c\u65ad\u8a00\u64cd\u4f5c\u3002

    • \u5bf9\u8c61\u5305\u62ec\uff1aResponse Code\uff0cResponse Headers\uff0cResponse Data\u3002
    • Perl\u578b\u6b63\u5219\u8868\u8fbe\u5f0f\uff1a\u65ad\u8a00\u5bf9\u8c61\u9700\u8981\u5339\u914d\u7684\u6b63\u5219\u8868\u8fbe\u5f0f\uff0c\u5339\u914d\u6210\u529f\u5219\u65ad\u8a00\u6210\u529f\uff0c\u5426\u5219\u65ad\u8a00\u5931\u8d25\u3002

    \u793a\u4f8b

    \u8bf7\u6c42\u7684\u54cd\u5e94\u4f53\uff1a

    id=\"ddc86657-d402-4c10-b458-2ba2e4604cef\"&name=\"myorg\"&description=\"test org\"\n
    \u65ad\u8a00\u9700\u6c42\uff1a\u5224\u65ad\u54cd\u5e94\u4f53\u4e2d\u5305\u542b name=\"\u4efb\u610f\u6587\u672c\"\u3002

    \u65ad\u8a00\u914d\u7f6e\uff1a

    • \u5bf9\u8c61\uff1aResponse Data
    • Perl\u578b\u6b63\u5219\u8868\u8fbe\u5f0f\uff1aname=\".*?\"
    "},{"location":"user_manual/api_test/api_step/#53-jsonpath","title":"5.3 JSONPath \u65ad\u8a00","text":"

    JSONPath \u65ad\u8a00\u9002\u7528\u4e8e\u54cd\u5e94\u5185\u5bb9\u662f JSON \u683c\u5f0f\u8fdb\u884c\u65ad\u8a00\u3002

    • JSONPath\u8868\u8fbe\u5f0f\uff1aJSONPath \u8868\u8fbe\u5f0f\uff0c\u901a\u8fc7\u8be5\u8868\u8fbe\u5f0f\u5b9a\u4f4d\u5230\u7279\u5b9a\u5b57\u6bb5\u3002
    • \u671f\u671b\u503c\uff1a\u901a\u8fc7 JSONPath \u8868\u8fbe\u5f0f\u5b9a\u4f4d\u7684\u5b57\u6bb5\u7684\u671f\u671b\u503c\uff0c\u652f\u6301\u6b63\u5219\u8868\u8fbe\u5f0f\u3002

    "},{"location":"user_manual/api_test/api_step/#54-xpath","title":"5.4 XPath \u65ad\u8a00","text":"

    XPath \u65ad\u8a00\u9002\u7528\u4e8e\u5bf9\u54cd\u5e94\u5185\u5bb9\u662f XML\u3001HTML \u7b49\u683c\u5f0f\u7684\u8bf7\u6c42\u8fdb\u884c\u65ad\u8a00\u3002

    • XPath\u8868\u8fbe\u5f0f\uff1a\u9700\u8981\u8fdb\u884c\u5339\u914d\u7684 XPath \u8868\u8fbe\u5f0f\u3002

    \u793a\u4f8b

    \u8bf7\u6c42\u7684\u54cd\u5e94\u4f53\uff1a

    <root xmlns:foo=\"http://www.foo.org/\" xmlns:bar=\"http://www.bar.org\">\n    <employees>\n        <employee id=\"1\">Johnny Dapp</employee>\n        <employee id=\"2\">Al Pacino</employee>\n        <employee id=\"3\">Robert De Niro</employee>\n        <employee id=\"4\">Kevin Spacey</employee>\n        <employee id=\"5\">Denzel Washington</employee>\n    </employees>\n    <foo:companies>\n        <foo:company id=\"6\">Tata Consultancy Services</foo:company>\n        <foo:company id=\"7\">Wipro</foo:company>\n        <foo:company id=\"8\">Infosys</foo:company>\n        <foo:company id=\"9\">Microsoft</foo:company>\n        <foo:company id=\"10\">IBM</foo:company>\n        <foo:company id=\"11\">Apple</foo:company>\n        <foo:company id=\"12\">Oracle</foo:company>\n    </foo:companies>\n</root>\n
    \u65ad\u8a00\u9700\u6c42\uff1a\u5224\u65ad\u54cd\u5e94\u4f53\u4e2d\u7684 id \u4e3a 10 \u7684\u516c\u53f8\u540d\u79f0\u4e3a IBM

    \u65ad\u8a00\u914d\u7f6e\uff1a

    - XPath \u8868\u8fbe\u5f0f\uff1a//*[local-name()='company' and @id=\"10\"]/text()=\"IBM\"\n
    "},{"location":"user_manual/api_test/api_step/#55","title":"5.5 \u54cd\u5e94\u65f6\u95f4\u65ad\u8a00","text":"

    \u54cd\u5e94\u65f6\u95f4\u65ad\u8a00\u9002\u7528\u4e8e\u5bf9\u54cd\u5e94\u65f6\u95f4\u6709\u7279\u5b9a\u8981\u6c42\u65f6\u7684\u8bf7\u6c42\u8fdb\u884c\u65ad\u8a00\u64cd\u4f5c\u3002

    • \u54cd\u5e94\u65f6\u95f4\u5728...\u6beb\u79d2\u4ee5\u5185\uff1a\u4ee5\u6beb\u79d2\u4e3a\u5355\u4f4d\u7684\u54cd\u5e94\u65f6\u95f4\u671f\u671b\uff0c\u5f53\u5b9e\u9645\u54cd\u5e94\u65f6\u95f4\u5c0f\u4e8e\u7b49\u4e8e\u8be5\u503c\u65f6\u65ad\u8a00\u6210\u529f\u3002

    "},{"location":"user_manual/api_test/api_step/#56","title":"5.6 \u6587\u6863\u7ed3\u6784\u6821\u9a8c","text":"

    \u6587\u6863\u7ed3\u6784\u6821\u9a8c\u65ad\u8a00\u9002\u7528\u4e8e\u54cd\u5e94\u7ed3\u679c\u4e3aXML/JSON\u683c\u5f0f\u7684\u8bf7\u6c42\u8fdb\u884c\u65ad\u8a00\u64cd\u4f5c\u3002

    \u5bfc\u5165\u6587\u6863\u6821\u9a8c\uff1a \u70b9\u51fb\u3010\u5bfc\u5165\u3011\u53ef\u5bfc\u5165\u9700\u65ad\u8a00 Json/xml \u6570\u636e\uff0c\u81ea\u52a8\u751f\u6210\u6587\u6863\u7ed3\u6784\u6821\u9a8c\u5143\u7d20\u8868\u683c\u3002\u53ef\u4ee5\u81ea\u5b9a\u4e49\u8bbe\u7f6e \u6821\u9a8c\u89c4\u5219\u3002 \u8ddf\u968f API \u5b9a\u4e49\uff1a\u662f API \u54cd\u5e94\u4f53\u8bbe\u7f6e\u8fd4\u56de\u503c\u4e00\u81f4\uff0c\u52fe\u9009\u3010\u8ddf\u968fAPI\u5b9a\u4e49\u3011\u53ef\u4ee5\u81ea\u52a8\u751f\u6210\u5185\u5bb9\u6821\u9a8c\u3002

    "},{"location":"user_manual/api_test/api_step/#57","title":"5.7 \u811a\u672c\u65ad\u8a00","text":"

    \u5f53\u5e38\u89c4\u65ad\u8a00\u65e0\u6cd5\u6ee1\u8db3\u9700\u6c42\u65f6\uff0c\u53ef\u4ee5\u9009\u62e9\u811a\u672c\u65ad\u8a00\uff0c\u5373\u9009\u62e9\u5408\u9002\u7684\u8bed\u8a00\u7f16\u5199\u811a\u672c\u6765\u5bf9\u7ed3\u679c\u8fdb\u884c\u5224\u65ad\u3002

    • \u4e0e\u524d\u540e\u7f6e\u811a\u672c\u4e00\u6837\uff0c\u811a\u672c\u5728\u52a0\u8f7d\u524d\u5df2\u7ecf\u5185\u7f6e\u4e86\u90e8\u5206\u53d8\u91cf\uff0c\u76ee\u524d\u652f\u6301 BeanShell\u3001Groovy\u3001Python \u3001javascript \u811a\u672c\u8bed\u8a00\u3002\u9664\u4e86\u5728\u4e4b\u524d\u5df2\u7ecf\u4ecb\u7ecd\u8fc7\u7684\u53d8\u91cf\u5916\uff0c\u811a\u672c\u65ad\u8a00\u4e2d\u7684\u811a\u672c\u8fd8\u989d\u5916\u63d0\u4f9b\u4e86\u65ad\u8a00\u7ed3\u679c\u5bf9\u8c61AssertionResult\uff0c\u901a\u8fc7 AssertionResult.setFailure(true) \u65b9\u6cd5\u8bbe\u7f6e\u65ad\u8a00\u662f\u5426\u6210\u529f\uff0c\u901a\u8fc7 AssertionResult.setFailureMessage(\"message\") \u65b9\u6cd5\u8bbe\u7f6e\u65ad\u8a00\u5931\u8d25\u63d0\u793a\u4fe1\u606f\u3002

    "},{"location":"user_manual/api_test/api_step/#6","title":"6 \u63d0\u53d6\u53c2\u6570","text":"

    \u63d0\u53d6\u53c2\u6570\u4e3b\u8981\u7528\u4e8e\u4ece\u8bf7\u6c42\u54cd\u5e94\u4e2d\u63d0\u53d6\u7279\u5b9a\u8fd4\u56de\u503c\u5e76\u5b58\u50a8\u5230\u53d8\u91cf\u4e2d\uff0c\u4fbf\u4e8e\u5728\u540e\u7eed\u7684\u6b65\u9aa4\u4e2d\u5f15\u7528\u8be5\u8fd4\u56de\u503c\u3002 MeterSphere\u5df2\u652f\u6301\u7684\u63d0\u53d6\u53c2\u6570\u65b9\u5f0f\u5305\u62ec\uff1a

    • \u6b63\u5219
    • JSONPath
    • XPath

    "},{"location":"user_manual/api_test/api_step/#61","title":"6.1 \u6b63\u5219\u63d0\u53d6","text":"

    \u6b63\u5219\u63d0\u53d6\u9002\u7528\u4e8e\u8bf7\u6c42\u975e JSON\u3001XML\u3001HTML \u6807\u51c6\u4e14\u5e38\u89c1\u7684\u7ed3\u6784\u5316\u6587\u672c\u7684\u54cd\u5e94\u5185\u5bb9\u3002

    • \u5bf9\u8c61\uff1a\u652f\u6301 Body\uff0cRequest Headers\uff0cResponse Headers\uff0cURL\uff0cResponse Code\uff0cResponse Message
    • \u53d8\u91cf\u540d\uff1a\u4fdd\u5b58\u63d0\u53d6\u503c\u7684\u53d8\u91cf\u540d\uff0c\u540e\u7eed\u53ef\u4ee5\u901a\u8fc7 ${varName} \u5f62\u5f0f\u5f15\u7528\u5230\uff0c\u5982\u679c\u9009\u62e9\u4e86 \u3010\u5339\u914d\u591a\u4e2a\u3011\u53ef\u4ee5\u901a\u8fc7 ${varName_matchNr} \u83b7\u53d6\u5230\u5339\u914d\u7684\u603b\u4e2a\u6570\uff0c\u901a\u8fc7 ${varName_n} \u4f9d\u6b21\u83b7\u53d6\u5230\u6bcf\u4e2a\u5339\u914d\u503c\u3002
    • Perl\u578b\u6b63\u5219\u8868\u8fbe\u5f0f\uff1a\u63d0\u53d6\u7279\u5b9a\u503c\u4f7f\u7528\u7684\u6b63\u5219\u8868\u8fbe\u5f0f\uff0c\u5c06\u63d0\u53d6\u6b63\u5219\u8868\u8fbe\u5f0f\u4e2d\u7684\u7b2c\u4e00\u4e2a\u7ec4\u3002

    \u8bf7\u6c42\u7684\u54cd\u5e94\u4f53\uff1a

    id=\"ddc86657-d402-4c10-b458-2ba2e4604cef\"&name=\"myorg\"&description=\"test org\"\n
    \u63d0\u53d6\u9700\u6c421\uff1a\u54cd\u5e94\u4f53\u4e2d name \u5b57\u6bb5\u7684\u503c\u3002

    \u63d0\u53d6\u914d\u7f6e\uff1a

    • \u5bf9\u8c61\uff1aBody
    • \u53d8\u91cf\u540d\uff1aname
    • Perl\u578b\u6b63\u5219\u8868\u8fbe\u5f0f\uff1aname=\"(.*?)\"
    "},{"location":"user_manual/api_test/api_step/#62-jsonpath","title":"6.2 JSONPath \u63d0\u53d6","text":"

    JSONPath \u63d0\u53d6\u9002\u7528\u4e8e\u54cd\u5e94\u5185\u5bb9\u662f JSON \u683c\u5f0f\u7684\u54cd\u5e94\u5185\u5bb9\u7684\u5904\u7406\uff0c\u53ef\u4ee5\u65b9\u4fbf\u5730\u901a\u8fc7 JSONPath \u8868\u8fbe\u5f0f\u5b9a\u4f4d\u5230\u7279\u5b9a\u5b57\u6bb5\u8fdb\u884c\u63d0\u53d6\u3002

    • \u53d8\u91cf\u540d\uff1a\u4fdd\u5b58\u63d0\u53d6\u503c\u7684\u53d8\u91cf\u540d\uff0c\u540e\u7eed\u53ef\u4ee5\u901a\u8fc7 ${varName} \u5f62\u5f0f\u5f15\u7528\u5230\uff0c\u5982\u679c\u9009\u62e9\u4e86\u3010\u5339\u914d\u591a\u4e2a\u3011\uff0c\u53ef\u4ee5\u901a\u8fc7 ${varName_matchNr} \u83b7\u53d6\u5230\u5339\u914d\u7684\u603b\u4e2a\u6570\uff0c\u901a\u8fc7 ${varName_n} \u4f9d\u6b21\u83b7\u53d6\u5230\u6bcf\u4e2a\u5339\u914d\u503c\u3002
    • JSONPath\u8868\u8fbe\u5f0f\uff1aJSONPath \u8868\u8fbe\u5f0f\uff0c\u901a\u8fc7\u8be5\u8868\u8fbe\u5f0f\u5b9a\u4f4d\u5230\u8981\u63d0\u53d6\u7684\u5b57\u6bb5\u3002

    \u8bf7\u6c42\u7684\u54cd\u5e94\u4f53\uff1a

    {\n    \"success\": true,\n    \"message\": null,\n    \"data\": {\n        \"id\": \"ddc86657-d402-4c10-b458-2ba2e4604cef\",\n        \"name\": \"myorg\",\n        \"description\": \"form api\",\n        \"createTime\": 1611154807818,\n        \"updateTime\": 1611154807818\n    }\n}\n
    \u63d0\u53d6\u9700\u6c42\uff1a\u63d0\u53d6\u54cd\u5e94\u4f53 data \u4e2d\u7684 name \u5b57\u6bb5\u5e76\u5b58\u50a8\u5728 name \u53d8\u91cf\u4e2d\u3002 \u63d0\u53d6\u914d\u7f6e\uff1a

    • \u53d8\u91cf\u540d\uff1aname
    • JSONPath \u8868\u8fbe\u5f0f\uff1a$.data.name
    "},{"location":"user_manual/api_test/api_step/#63-xpath","title":"6.3 XPath \u63d0\u53d6","text":"

    XPath \u63d0\u53d6\u9002\u7528\u4e8e\u5904\u7406 XML\u3001HTML \u7b49\u683c\u5f0f\u7684\u54cd\u5e94\u5185\u5bb9\uff0c\u53ef\u4ee5\u65b9\u4fbf\u5730\u901a\u8fc7 XPath \u8868\u8fbe\u5f0f\u5b9a\u4f4d\u5230\u7279\u5b9a\u5b57\u6bb5\u8fdb\u884c\u63d0\u53d6\u3002

    • \u53d8\u91cf\u540d\uff1a\u4fdd\u5b58\u63d0\u53d6\u503c\u7684\u53d8\u91cf\u540d\uff0c\u540e\u7eed\u53ef\u4ee5\u901a\u8fc7 ${varName} \u5f62\u5f0f\u5f15\u7528\u5230\uff0c\u5982\u679c\u9009\u62e9\u4e86\u3010\u5339\u914d\u591a\u4e2a\u3011\uff0c\u53ef\u4ee5\u901a\u8fc7 ${varName_matchNr} \u83b7\u53d6\u5230\u5339\u914d\u7684\u603b\u4e2a\u6570\uff0c\u901a\u8fc7 ${varName_n} \u4f9d\u6b21\u83b7\u53d6\u5230\u6bcf\u4e2a\u5339\u914d\u503c\u3002
    • XPath\u8868\u8fbe\u5f0f\uff1a\u9700\u8981\u8fdb\u884c\u5339\u914d\u7684 XPath \u8868\u8fbe\u5f0f\u3002

    \u793a\u4f8b

    \u8bf7\u6c42\u7684\u54cd\u5e94\u4f53\uff1a

    <root xmlns:foo=\"http://www.foo.org/\" xmlns:bar=\"http://www.bar.org\">\n    <employees>\n        <employee id=\"1\">Johnny Dapp</employee>\n        <employee id=\"2\">Al Pacino</employee>\n        <employee id=\"3\">Robert De Niro</employee>\n        <employee id=\"4\">Kevin Spacey</employee>\n        <employee id=\"5\">Denzel Washington</employee>\n    </employees>\n    <foo:companies>\n        <foo:company id=\"6\">Tata Consultancy Services</foo:company>\n        <foo:company id=\"7\">Wipro</foo:company>\n        <foo:company id=\"8\">Infosys</foo:company>\n        <foo:company id=\"9\">Microsoft</foo:company>\n        <foo:company id=\"10\">IBM</foo:company>\n        <foo:company id=\"11\">Apple</foo:company>\n        <foo:company id=\"12\">Oracle</foo:company>\n    </foo:companies>\n</root>\n
    \u63d0\u53d6\u9700\u6c42\uff1a\u63d0\u53d6\u54cd\u5e94\u4f53\u4e2d\u7684 id \u4e3a 3 \u7684\u5458\u5de5\u7684\u59d3\u540d\uff0c\u5373\u4e0a\u8ff0\u54cd\u5e94\u4e2d\u7684 Robert De Niro\uff0c\u5e76\u5b58\u50a8\u5728 employeeName \u53d8\u91cf\u4e2d\u3002

    \u63d0\u53d6\u914d\u7f6e\uff1a

    • \u53d8\u91cf\u540d\uff1aemployeeName
    • XPath \u8868\u8fbe\u5f0f\uff1astring(//employee[@id='3'])
    "},{"location":"user_manual/api_test/functions/","title":"\u5185\u7f6e\u51fd\u6570","text":""},{"location":"user_manual/api_test/functions/#1","title":"1 \u5185\u7f6e\u51fd\u6570\u6982\u8ff0","text":"

    MeterSphere \u63a5\u53e3\u6d4b\u8bd5\u57fa\u4e8e JMeter \u5b9e\u73b0\uff0c\u56e0\u6b64 JMeter \u4e2d\u7684\u5185\u7f6e\u51fd\u6570\u53ca\u53d8\u91cf\u5728 MeterSphere \u4e2d\u90fd\u53ef\u4ee5\u6b63\u5e38\u4f7f\u7528\u3002\u5185\u7f6e\u51fd\u6570\u53ca\u53d8\u91cf\u53ef\u5e94\u7528\u4e8eQUERY \u53c2\u6570\u3001REST \u53c2\u6570\u3001\u8bf7\u6c42\u4f53\u3001\u524d\u540e\u7f6e\u811a\u672c\u7b49\u3002 \u5185\u7f6e\u51fd\u6570\u4e00\u822c\u4ee5\u4e24\u4e2a\u4e0b\u5212\u7ebf\u5f00\u5934\uff0c\u5e76\u4f7f\u7528\u7c7b\u4f3c ${__functionName(var1,var2,var3)} \u7684\u5f62\u5f0f\u8c03\u7528\u3002\u5176\u4e2d __functionName \u4ee3\u8868\u51fd\u6570\u540d\uff0cvar1\uff0cvar2 \u548c var3 \u5206\u522b\u662f\u4f20\u7ed9\u8be5\u51fd\u6570\u7684\u4e09\u4e2a\u53c2\u6570\u3002 \u53d8\u91cf\u53ef\u4ee5\u901a\u8fc7\u7c7b\u4f3c ${varName} \u7684\u5f62\u5f0f\u5f15\u7528\uff0c\u5176\u4e2d varName \u4ee3\u8868\u53d8\u91cf\u540d\u3002\u4f8b\u5982\uff1a\u751f\u62101\u5230100\u7684\u968f\u673a\u6570\u4f7f\u7528\u8868\u8fbe\u5f0f\uff1a${__Random(1,100)}\u3002

    "},{"location":"user_manual/api_test/functions/#2","title":"2 \u5185\u7f6e\u51fd\u6570\u5217\u8868","text":"\u51fd\u6570\u7c7b\u578b \u51fd\u6570\u540d\u79f0 \u51fd\u6570\u8bf4\u660e Information threadNum get thread number Information threadGroupName get thread group name Information samplerName get the sampler name (label) Information machineIP get the local machine IP address Information machineName get the local machine name Information time return current time in various formats Information timeShift return a date in various formats with the specified amount of seconds/minutes/hours/days added Information log log (or display) a message (and return the value) Information logn log (or display) a message (empty return value) Input StringFromFile read a line from a file Input FileToString read an entire file Input CSVRead read from CSV delimited file Input XPath Use an XPath expression to read from a file Input StringToFile write a string to a file Calculation counter generate an incrementing number Formatting dateTimeConvert Convert a date or time from source to target format Calculation digest Generate a digest (SHA-1, SHA-256, MD5...) Calculation intSum add int numbers Calculation longSum add long numbers Calculation Random generate a random number Calculation RandomDate generate random date within a specific date range Calculation RandomFromMultipleVars extracts an element from the values of a set of variables separated by | Calculation RandomString generate a random string Calculation UUID generate a random type 4 UUID Scripting groovy run an Apache Groovy script Scripting BeanShell run a BeanShell script Scripting javaScript process JavaScript (Nashorn) Scripting jexl2 evaluate a Commons Jexl2 expression Scripting jexl3 evaluate a Commons Jexl3 expression Properties isPropDefined Test if a property exists Properties property read a property Properties P read a property (shorthand method) Properties setProperty set a JMeter property Variables split Split a string into variables Variables eval evaluate a variable expression Variables evalVar evaluate an expression stored in a variable Properties isVarDefined Test if a variable exists Variables V evaluate a variable name String char generate Unicode char values from a list of numbers String changeCase Change case following different modes String escapeHtml Encode strings using HTML encoding String escapeOroRegexpChars quote meta chars used by ORO regular expression String escapeXml Encode strings using XMl encoding String regexFunction parse previous response using a regular expression String unescape Process strings containing Java escapes (e.g. \\n & \\t) String unescapeHtml Decode HTML-encoded strings String urldecode Decode a application/x-www-form-urlencoded string String urlencode Encode a string to a application/x-www-form-urlencoded string String TestPlanName Return name of current test plan"},{"location":"user_manual/api_test/home/","title":"\u9996\u9875","text":"

    \u63a5\u53e3\u6d4b\u8bd5\u3010\u9996\u9875\u3011\u7528\u4e8e\u5c55\u793a\u73b0\u6709\u9879\u76ee\u7684\u63a5\u53e3\u6570\u91cf\u3001\u63a5\u53e3\u7528\u4f8b\u6570\u91cf\u3001\u573a\u666f\u7528\u4f8b\u6570\u91cf\u3001\u573a\u666f\u5b9a\u65f6\u4efb\u52a1\u6570\u91cf\u3001\u8fc7\u53bb7\u5929\u6709\u66f4\u65b0\u63a5\u53e3\u3001\u8fd0\u884c\u4e2d\u7684\u5b9a\u65f6\u4efb\u52a1\u4fe1\u606f\uff0c\u5e2e\u52a9\u7528\u6237\u5feb\u901f\u4e86\u89e3\u5f53\u524d\u9879\u76ee\u63a5\u53e3\u6d4b\u8bd5\u60c5\u51b5\u3002

    "},{"location":"user_manual/api_test/intro/","title":"\u6982\u8ff0","text":"

    \u4ece\u3010\u63a5\u53e3\u6d4b\u8bd5\u3011\u83dc\u5355\u8fdb\u5165\u63a5\u53e3\u6d4b\u8bd5\u529f\u80fd\u6a21\u5757\uff0c\u8be5\u6a21\u5757\u7531\u9996\u9875\u3001\u63a5\u53e3\u5b9a\u4e49\u3001\u63a5\u53e3\u81ea\u52a8\u5316\u3001\u6d4b\u8bd5\u62a5\u544a\u56db\u90e8\u5206\u7ec4\u6210\u3002

    \u9996\u9875\uff1a\u5c55\u793a\u5f53\u524d\u9879\u76ee\u7684\u63a5\u53e3\u6570\u91cf\u3001\u63a5\u53e3\u7528\u4f8b\u6570\u91cf\u3001\u81ea\u52a8\u5316\u573a\u666f\u6570\u91cf\u3001\u573a\u666f\u5b9a\u65f6\u4efb\u52a1\u6570\u91cf\u3001\u63a5\u53e3\u8986\u76d6\u5ea6\u3001\u7528\u4f8b\u8986\u76d6\u5ea6\u7b49\u4fe1\u606f\uff0c\u8fc7\u53bb 7 \u5929\u6709\u66f4\u65b0\u7684\u63a5\u53e3\u3001\u8fd0\u884c\u4e2d\u7684\u5b9a\u65f6\u4efb\u52a1\uff0c\u5e2e\u52a9\u7528\u6237\u5feb\u901f\u5f53\u524d\u9879\u76ee\u63a5\u53e3\u6d4b\u8bd5\u60c5\u51b5\u3002 \u63a5\u53e3\u5b9a\u4e49\uff1a\u53ef\u7528\u4e8e\u7ba1\u7406\u63a5\u53e3\u3001\u63a5\u53e3\u7528\u4f8b\uff0c\u5e76\u6267\u884c\u8c03\u8bd5\u7b49\u6d4b\u8bd5\u5de5\u4f5c\u3002\u5176\u4e2d\u63a5\u53e3\u5b9a\u4e49\u652f\u6301 HTTP\u3001TCP\u3001SQL\u3001DUBBO \u534f\u8bae\uff0c\u5bfc\u5165\u652f\u6301\u624b\u52a8\u5f55\u5165\uff0c\u4e5f\u652f\u6301\u5bfc\u5165\u4f01\u4e1a\u73b0\u6709\u7684\u63a5\u53e3\u6d4b\u8bd5\u5de5\u5177\u4e2d\u7684\u63a5\u53e3\uff0c\u5982 MeterSphere \u683c\u5f0f\u3001Postman \u683c\u5f0f\u3001Swagger \u683c\u5f0f\u3001HAR \u683c\u5f0f\u3001JMeter \u683c\u5f0f\u7b49\u3002\u540c\u65f6\u4e5f\u652f\u6301\u4f7f\u7528 Chrome \u63d2\u4ef6\u5f55\u5236\u63a5\u53e3\uff0c\u53ef\u4ee5\u5feb\u901f\u5f55\u5236\u63a5\u53e3\u5e76\u5bfc\u5165\u81f3 MeterSphere \u5e73\u53f0\u63d0\u9ad8\u521b\u5efa\u63a5\u53e3\u6548\u7387\uff0c\u63a5\u53e3\u5f55\u5236\u5de5\u5177\u53ef\u5230 GitHub \u7f51\u7ad9 MeterSphere \u9879\u76ee\u4e0b\u8f7d\uff0c\u5177\u4f53\u7528\u6cd5\u53ef\u53c2\u8003 MeterSphere \u6d4f\u89c8\u5668\u63d2\u4ef6\u3002 \u63a5\u53e3\u81ea\u52a8\u5316\uff1a\u7528\u4e8e\u573a\u666f\u7ea7\u81ea\u52a8\u5316\u6d4b\u8bd5\u5de5\u4f5c\uff0c\u80fd\u591f\u7f16\u6392\u7ec4\u5408\u591a\u4e2a\u63a5\u53e3\u5b9e\u73b0\u4e00\u4e2a\u573a\u666f\u7684\u6d4b\u8bd5\uff1b\u5728\u573a\u666f\u4e2d\u652f\u6301\u81ea\u7531\u6dfb\u52a0\u63a5\u53e3\u8bf7\u6c42\uff0c\u63d0\u4f9b\u53d8\u91cf\u63d0\u53d6\u3001\u54cd\u5e94\u65ad\u8a00\u3001\u524d\u540e\u7f6e\u811a\u672c\u3001\u903b\u8f91\u63a7\u5236\u5668\u7b49\u529f\u80fd\u3002\u63a5\u53e3\u81ea\u52a8\u5316\u652f\u6301\u7528\u6237\u5feb\u901f\u5bfc\u5165\u73b0\u6709\u7684 Postman \u63a5\u53e3\u6d4b\u8bd5\u96c6\u3001JMeter \u63a5\u53e3\u6d4b\u8bd5\u811a\u672c\u3001HAR \u811a\u672c\u3001 Chrome \u63d2\u4ef6\u5f55\u5236\u7684\u811a\u672c\u3002 \u6d4b\u8bd5\u62a5\u544a\uff1a\u5bf9\u63a5\u53e3\u6d4b\u8bd5\u7ed3\u679c\u8fdb\u884c\u53ef\u89c6\u5316\u7684\u7f8e\u89c2\u9875\u9762\u62a5\u544a\u5c55\u793a\uff0c\u652f\u6301\u62a5\u544a\u5206\u4eab\u3001\u5bfc\u51fa\u65b9\u4fbf\u5bf9\u6d4b\u8bd5\u7ed3\u679c\u8fdb\u884c\u5f52\u6863\u7559\u5b58\u3002

    "},{"location":"user_manual/api_test/test_report/","title":"\u63a5\u53e3\u6d4b\u8bd5\u62a5\u544a","text":"

    \u63a5\u53e3\u6d4b\u8bd5\u62a5\u544a\u662f\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u3001\u573a\u666f\u6267\u884c\u7684\u7ed3\u679c\u5c55\u793a\u3002\u5728\u6d4b\u8bd5\u62a5\u544a\u4e2d\u53ef\u4ee5\u67e5\u770b\u573a\u666f\u53ca\u7528\u4f8b\u6267\u884c\u5b8c\u6210\u7684\u8be6\u7ec6\u4fe1\u606f\uff0c\u5305\u542b\u63a5\u53e3\u8fd0\u884c\u73af\u5883\u3001\u8fd0\u884c\u8d44\u6e90\u6c60\u3001\u63a5\u53e3\u6210\u529f\u5931\u8d25\u6570\u636e\u5c55\u793a\u53ca\u63a7\u5236\u53f0\u65e5\u5fd7\u3002

    "},{"location":"user_manual/api_test/test_report/#1","title":"1 \u67e5\u770b\u6d4b\u8bd5\u62a5\u544a","text":"

    \u5728\u6d4b\u8bd5\u62a5\u544a\u5217\u8868\u4e2d\uff0c\u652f\u6301\u67e5\u770b\u7528\u4f8b\u3001\u573a\u666f\u62a5\u544a\u3002\u70b9\u51fb\u6307\u5b9a\u6d4b\u8bd5\u62a5\u544a\u64cd\u4f5c\u5217\u4e2d\u7684\u3010\u62a5\u544a\u8be6\u60c5\u3011\u6309\u94ae\uff0c\u8fdb\u5165\u62a5\u544a\u8be6\u60c5\u9875\u9762\u3002\u5728\u8be5\u9875\u9762\u4e2d\u53ef\u4ee5\u67e5\u770b\u8be5\u62a5\u544a\u7684\u8be6\u7ec6\u5185\u5bb9\uff0c\u5e76\u652f\u6301\u91cd\u547d\u540d\u3001\u5bfc\u51fa\u7b49\u64cd\u4f5c\u3002

    "},{"location":"user_manual/api_test/test_report/#2","title":"2 \u5bfc\u51fa\u548c\u5206\u4eab\u6d4b\u8bd5\u62a5\u544a","text":"

    \u5728\u6d4b\u8bd5\u62a5\u544a\u8be6\u60c5\u9875\u9762\uff0c\u70b9\u51fb\u53f3\u4e0a\u89d2\u3010\u5206\u4eab\u62a5\u544a\u3011\u751f\u6210\u4e00\u4e2a\u6709\u5b9e\u6548\u7684\u62a5\u544a\u5206\u4eab\u94fe\u63a5\u3002\u70b9\u51fb \u3010\u5bfc\u51fa\u62a5\u544a\u3011\u6309\u94ae\u5c06\u62a5\u544a\u5bfc\u51fa\u4e3a PDF \u683c\u5f0f\u3002

    "},{"location":"user_manual/api_test/test_report/#3","title":"3 \u5220\u9664\u6d4b\u8bd5\u62a5\u544a","text":"

    \u5728\u6d4b\u8bd5\u62a5\u544a\u5217\u8868\u4e2d\u70b9\u51fb\u6307\u5b9a\u6d4b\u8bd5\u62a5\u544a\u64cd\u4f5c\u5217\u4e2d\u7684\u3010\u5220\u9664\u3011\u6309\u94ae\u5220\u9664\u62a5\u544a\u3002

    \u5728\u6d4b\u8bd5\u62a5\u544a\u5217\u8868\u6279\u91cf\u52fe\u9009\uff0c\u70b9\u51fb\u5217\u8868\u4e09\u4e2a\u5c0f\u70b9\u3010...\u3011\u5373\u53ef\u51fa\u73b0\u3010\u6279\u91cf\u5220\u9664\u62a5\u544a\u3011\u83dc\u5355\uff0c\u70b9\u51fb\u53ef\u6279\u91cf\u5220\u9664\u6d4b\u8bd5\u62a5\u544a\u3002 \u3010\u6ce8\u610f\u3011 \u5220\u9664\u6d4b\u8bd5\u62a5\u544a\u540e\u65e0\u6cd5\u6062\u590d\uff0c\u8bf7\u8c28\u614e\u4f7f\u7528\u8be5\u529f\u80fd\u3002

    "},{"location":"user_manual/load_test/home/","title":"Home","text":"

    \u6027\u80fd\u6d4b\u8bd5\u7684\u9996\u9875\u4e3b\u8981\u7528\u4e8e\u5c55\u793a\u73b0\u6709\u9879\u76ee\u7684\u6d4b\u8bd5\u5217\u8868\u3001\u62a5\u544a\u3001\u6d4b\u8bd5\u65e5\u5386\u3001\u8fd0\u884c\u4e2d\u7684\u4efb\u52a1\u3002

    • \u6d4b\u8bd5\uff1a\u5c55\u793a\u6700\u8fd1 5 \u6b21\u6267\u884c\u7684\u6027\u80fd\u6d4b\u8bd5\u3002
    • \u62a5\u544a\uff1a\u5c55\u793a\u6700\u8fd1 5 \u6b21\u6267\u884c\u7684\u6027\u80fd\u6d4b\u8bd5\u6240\u751f\u6210\u7684\u62a5\u544a\u3002
    • \u6d4b\u8bd5\u65e5\u5386\uff1a\u6309\u65f6\u95f4\u7ef4\u5ea6\u5c55\u793a\u6027\u80fd\u6d4b\u8bd5\u6267\u884c\u7684\u9891\u6b21\uff0c\u989c\u8272\u8d8a\u6df1\uff0c\u4ee3\u8868\u4f7f\u7528\u9891\u6b21\u8d8a\u9ad8\u3002

    "},{"location":"user_manual/load_test/intro/","title":"\u6982\u8ff0","text":"

    \u6027\u80fd\u6d4b\u8bd5\u7684\u9996\u9875\u4e3b\u8981\u7528\u4e8e\u5c55\u793a\u73b0\u6709\u9879\u76ee\u7684\u6d4b\u8bd5\u5217\u8868\u3001\u62a5\u544a\u3001\u6d4b\u8bd5\u65e5\u5386\u3001\u8fd0\u884c\u4e2d\u7684\u4efb\u52a1\u3002

    • \u6d4b\u8bd5\uff1a\u5c55\u793a\u6700\u8fd1 5 \u6b21\u6267\u884c\u7684\u6027\u80fd\u6d4b\u8bd5\u3002
    • \u62a5\u544a\uff1a\u5c55\u793a\u6700\u8fd1 5 \u6b21\u6267\u884c\u7684\u6027\u80fd\u6d4b\u8bd5\u6240\u751f\u6210\u7684\u62a5\u544a\u3002
    • \u6d4b\u8bd5\u65e5\u5386\uff1a\u6309\u65f6\u95f4\u7ef4\u5ea6\u5c55\u793a\u6027\u80fd\u6d4b\u8bd5\u6267\u884c\u7684\u9891\u6b21\uff0c\u989c\u8272\u8d8a\u6df1\uff0c\u4ee3\u8868\u4f7f\u7528\u9891\u6b21\u8d8a\u9ad8\u3002

    \u3002

    "},{"location":"user_manual/load_test/load_test/","title":"\u6027\u80fd\u6d4b\u8bd5","text":"

    MeterSphere \u6027\u80fd\u6d4b\u8bd5\u6a21\u5757\u652f\u6301\u7528\u6237\u901a\u8fc7\u5df2\u6709\u7684\u63a5\u53e3\u6d4b\u8bd5\u521b\u5efa\u6216\u76f4\u63a5\u4e0a\u4f20 JMX \u811a\u672c\u6765\u521b\u5efa\u6027\u80fd\u6d4b\u8bd5\uff0c\u5e76\u6309\u9700\u8c03\u6574\u5e76\u53d1\u7528\u6237\u6570\u7b49\u538b\u529b\u53c2\u6570\u3002

    "},{"location":"user_manual/load_test/load_test/#1","title":"1 \u521b\u5efa\u6d4b\u8bd5\u8d44\u6e90\u6c60","text":"

    \u901a\u8fc7\u5b89\u88c5\u5305\u5b89\u88c5 MeterSphere \u540e\uff0c\u7cfb\u7edf\u9ed8\u8ba4\u4f7f\u7528\u5f53\u524d\u8282\u70b9\u521b\u5efa\u4e86\u540d\u4e3a\u3010LOCAL\u3011\u6d4b\u8bd5\u8d44\u6e90\u6c60\u3002\u5173\u4e8e\u6d4b\u8bd5\u8d44\u6e90\u6c60\u7684\u4f5c\u7528\u8bf7\u53c2\u8003 FAQ\u3002 \u5982\u679c\u9700\u8981\u521b\u5efa\u65b0\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60\uff0c\u6216\u5411\u5df2\u6709\u8d44\u6e90\u6c60\u4e2d\u6dfb\u52a0\u8282\u70b9\uff0c\u8bf7\u53c2\u8003 \u5982\u4f55\u5411\u6d4b\u8bd5\u8d44\u6e90\u6c60\u4e2d\u6dfb\u52a0\u8282\u70b9\uff1f\u3002

    "},{"location":"user_manual/load_test/load_test/#2-url","title":"2 \u4fee\u6539\u5f53\u524d\u7ad9\u70b9 URL","text":"

    \u6027\u80fd\u6d4b\u8bd5\u6267\u884c\u8fc7\u7a0b\u4e2d node-controller \u8282\u70b9\u9700\u8981\u901a\u8fc7\u914d\u7f6e\u7684\u3010\u5f53\u524d\u7ad9\u70b9URL\u3011\u4e0b\u8f7d JMX \u7b49\u6d4b\u8bd5\u8d44\u6e90\u6587\u4ef6\u3002\u5728\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u524d\u9700\u8981\u914d\u7f6e\u5e76\u68c0\u67e5\u6d4b\u8bd5\u8d44\u6e90\u6c60\u4e2d\u7684\u8282\u70b9\u53ef\u4ee5\u6b63\u5e38\u8bbf\u95ee\u5230\u8be5 URL\uff0cURL \u503c\u4e00\u822c\u4e3a\u901a\u8fc7\u6d4f\u89c8\u5668\u8bbf\u95ee MeterSphere \u7684\u5730\u5740\u3002

    "},{"location":"user_manual/load_test/load_test/#3","title":"3 \u521b\u5efa\u6027\u80fd\u6d4b\u8bd5","text":"

    \u8fdb\u5165\u3010\u6027\u80fd\u6d4b\u8bd5-\u6d4b\u8bd5\u3011\u9875\u9762\uff0c\u53ef\u9009\u62e9\u7248\u672c\u7ba1\u7406 (X-Pack)\u3002

    \u70b9\u51fb\u3010\u521b\u5efa\u6d4b\u8bd5\u3011\u8fdb\u5165\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u521b\u5efa\u9875\u9762\uff0c\u6216\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u8fdb\u5165\u6027\u80fd\u6d4b\u8bd5\u8be6\u60c5\u9875\uff0c\u5176\u754c\u9762\u5305\u542b\u591a\u4e2a\u9875\u7b7e\uff1a\u3010\u573a\u666f\u914d\u7f6e\u3011\u3001\u3010\u538b\u529b\u914d\u7f6e\u3011\u3001\u3010\u9ad8\u7ea7\u914d\u7f6e\u3011\u7b49\u3002

    "},{"location":"user_manual/load_test/load_test/#4","title":"4 \u573a\u666f\u914d\u7f6e","text":"

    \u573a\u666f\u914d\u7f6e\u9700\u8981\u586b\u5199\u5185\u5bb9\u5305\u62ec\u6d4b\u8bd5\u540d\u79f0\u3001\u4e0a\u4f20\u6d4b\u8bd5\u811a\u672c\u6216\u5f15\u7528\u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u3001\u4e0a\u4f20\u5176\u4ed6\u6027\u80fd\u6d4b\u8bd5\u8f85\u52a9\u6587\u4ef6\uff08jar \u5305\u3001cvs\u3001excel\u3001word\u3001pdf \u7b49\u6587\u4ef6\uff09\u3002 \u6027\u80fd\u6d4b\u8bd5\u811a\u672c\u652f\u6301\u5bfc\u5165 JMeter JMX\u6d4b\u8bd5\u8ba1\u5212\uff0c\u8fd8\u652f\u6301\u57fa\u4e8e\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u811a\u672c\u548c\u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u4e00\u952e\u8f6c\u6027\u80fd\u6d4b\u8bd5\u3002

    • \u52a0\u8f7d\u6027\u80fd\u6d4b\u8bd5\u811a\u672c\uff1a\u5728\u3010\u573a\u666f\u5217\u8868\u3011\u4e2d\u70b9\u51fb\u3010\u5f15\u7528\u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u3011\uff0c\u5c06\u5df2\u6709\u7684\u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u6dfb\u52a0\u5230\u6027\u80fd\u6d4b\u8bd5\u4e2d\uff0c\u6216\u8005\u70b9\u51fb\u3010\u52a0\u8f7dJMX\u6587\u4ef6\u3011\u5c06JMeter\u811a\u672c\u76f4\u63a5\u5bfc\u5165\u5230\u6027\u80fd\u4e2d\u3002

    • \u7ebf\u7a0b\u7ec4\uff1a\u652f\u6301\u4e24\u79cd\u6a21\u5f0f\uff1a\u7ebf\u6027\u52a0\u538b\u6a21\u5f0f ThreadGroup\u548c\u9636\u68af\u52a0\u538b\u6a21\u5f0f ConcurrencyThreadGroup\u3002

    • \u52a0\u8f7d\u8d44\u6e90\u6587\u4ef6\uff1a\u5982\u679c\u6d4b\u8bd5\u4e2d\u6709\u4f7f\u7528 CSV \u53c2\u6570\u5316\u6216\u8005\u81ea\u5b9a\u4e49 jar \u5305\uff0c\u53ef\u70b9\u51fb\u3010\u52a0\u8f7d\u6587\u4ef6\u3011\u5c06 CSV \u6587\u4ef6\u6216\u8005 jar \u6dfb\u52a0\u5230\u5e73\u53f0\u3002

    "},{"location":"user_manual/load_test/load_test/#5","title":"5 \u538b\u529b\u914d\u7f6e","text":"

    \u6bcf\u4e00\u4e2a\u6027\u80fd\u6d4b\u8bd5\u573a\u666f\u811a\u672c\u90fd\u53ef\u4ee5\u5404\u81ea\u5206\u522b\u8fdb\u884c\u6027\u80fd\u6d4b\u8bd5\u538b\u529b\u8bbe\u7f6e\uff1a\u5e76\u53d1\u6570\u91cf\u3001\u538b\u6d4b\u65f6\u957f\u3001RPS \u4e0a\u9650\uff08\u6307\u7684\u662f\u540c\u4e00\u65f6\u523b\u6700\u9ad8\u7684\u5e76\u53d1\u6570\u91cf\uff09\u7b49\u914d\u7f6e\uff0c\u540c\u65f6\u53f3\u4fa7\u7edf\u8ba1\u56fe\u4f1a\u6839\u636e\u5de6\u4fa7\u7684\u8bbe\u7f6e\u5b9e\u65f6\u663e\u793a\u6bcf\u4e2a\u573a\u666f\u914d\u7f6e\u8d70\u52bf\u56fe\u3002\u70b9\u51fb\u3010\u538b\u529b\u914d\u7f6e\u3011\u8bbe\u7f6e\u538b\u6d4b\u57fa\u672c\u7684\u6d4b\u8bd5\u6570\u636e

    • \u8d44\u6e90\u6c60\uff1a\u6307\u5b9a\u6d4b\u8bd5\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60\uff0c\u7cfb\u7edf\u652f\u6301\u72ec\u7acb\u4e3b\u673a\u548c K8s \u8d44\u6e90\u6c60\u914d\u7f6e\uff0c\u5176\u53ef\u7528\u8d44\u6e90\u6c60\u4f9d\u636e\u7cfb\u7edf\u7684\u8d44\u6e90\u6c60\u914d\u7f6e\u3002

    • \u6267\u884c\u987a\u5e8f\uff1a\u573a\u666f\u662f\u5426\u987a\u5e8f\u6267\u884c\uff1a\u56e0\u4e3a\u7cfb\u7edf\u652f\u6301\u591a\u573a\u666f\u7ec4\u5408\u538b\u6d4b\uff0c\u5bf9\u4e8e\u6709\u4e9b\u573a\u666f\u662f\u6709\u987a\u5e8f\u8981\u6c42\u7684\uff0c\u6b64\u9700\u8981\u628a\u5f00\u5173\u6253\u5f00\uff0c\u53ef\u4ee5\u907f\u514d\u811a\u672c 1 \u6ca1\u8dd1\u5b8c\uff0c\u811a\u672c 2 \u5c31\u542f\u52a8\u4e86\u3002

    • \u81ea\u52a8\u505c\u6b62\u5f00\u5173\uff1a\u8bbe\u7f6e\u6b64\u5f00\u5173\u5f00\u542f\u65f6\uff0c\u9700\u8981\u6307\u5b9a\u538b\u6d4b\u591a\u4e45\u540e\uff0c\u5f3a\u5236\u505c\u6b62\u6d4b\u8bd5\u3002

    • \u5e76\u53d1\u6570\uff1a\u6a21\u62df\u4e00\u5b9a\u6570\u91cf\u7528\u6237\u64cd\u4f5c\u7684\u4e00\u4e2a\u914d\u7f6e\u3002
    • \u53d6\u6837\u5668\u9519\u8bef\u540e\u7eed\u6267\u884c\u52a8\u4f5c\uff1a\u53d6\u6837\u5668\u9519\u8bef\u540e\uff0c\u63d0\u4f9b\u591a\u79cd\u5904\u7406\u65b9\u5f0f\u3002\u6bcf\u79cd\u65b9\u5f0f\u4f5c\u7528\u4ecb\u7ecd\u5982\u4e0b\uff1a
    • \u3010\u7ee7\u7eed\u3011\uff1a\u5ffd\u7565\u9519\u8bef\uff0c\u7ee7\u7eed\u6267\u884c\u3002
    • \u3010\u542f\u52a8\u4e0b\u4e00\u6b21\u5faa\u73af\u3011\uff1a\u5ffd\u7565\u9519\u8bef\uff0c\u7ebf\u7a0b\u5f53\u524d\u5faa\u73af\u7ec8\u6b62\uff0c\u6267\u884c\u4e0b\u4e00\u4e2a\u5faa\u73af\u3002
    • \u3010\u505c\u6b62\u7ebf\u7a0b\u3011\uff1a\u5f53\u524d\u7ebf\u7a0b\u505c\u6b62\u6267\u884c\uff0c\u4e0d\u5f71\u54cd\u5176\u4ed6\u7ebf\u7a0b\u6b63\u5e38\u6267\u884c\u3002
    • \u3010\u505c\u6b62\u6d4b\u8bd5\u3011\uff1a\u6574\u4e2a\u6d4b\u8bd5\u4f1a\u5728\u6240\u6709\u5f53\u524d\u6b63\u5728\u6267\u884c\u7684\u7ebf\u7a0b\u6267\u884c\u5b8c\u6bd5\u540e\u505c\u6b62\u3002
    • \u3010\u7acb\u5373\u505c\u6b62\u6d4b\u8bd5\u3011\uff1a\u6574\u4e2a\u6d4b\u8bd5\u4f1a\u7acb\u5373\u505c\u6b62\u6267\u884c\uff0c\u5f53\u524d\u6b63\u5728\u6267\u884c\u7684\u53d6\u6837\u5668\u53ef\u80fd\u4f1a\u88ab\u4e2d\u65ad\u3002

    • \u6267\u884c\u65b9\u5f0f\uff1a\u5982\u679c\u8bbe\u7f6e\u672c\u6b21\u538b\u6d4b\u9700\u8981\u6301\u7eed\u6267\u884c\u591a\u957f\u65f6\u95f4\uff0c\u538b\u6d4b\u8fd0\u884c\u65f6\u957f\u8fbe\u5230\u8bbe\u5b9a\u7684\u65f6\u95f4\u5c31\u505c\u6b62\u538b\u529b\u6d4b\u8bd5\u3002\u76ee\u524d\u7cfb\u7edf\u63d0\u4f9b\u6309\u5c0f\u65f6\u3001\u5206\u949f\u3001\u79d2\u6765\u8bbe\u7f6e\u3002\u8bbe\u7f6e\u672c\u6b21\u538b\u6d4b\u6267\u884c\u7684\u6b21\u6570\uff0c\u5e76\u4e14\u8bbe\u7f6e\u8fd0\u884c\u65f6\u95f4\uff0c\u538b\u6d4b\u8fd0\u884c\u6b21\u6570\u8fbe\u5230\u8bbe\u5b9a\u7684\u6b21\u6570\u6216\u8005\u5230\u8fbe\u8bbe\u7f6e\u8fd0\u884c\u7684\u65f6\u95f4\uff0c\u5c31\u505c\u6b62\u538b\u529b\u6d4b\u8bd5\u3002
    • \u3010\u6309\u6301\u7eed\u65f6\u95f4\u3011\uff1a\u8bbe\u7f6e\u672c\u6b21\u538b\u6d4b\u9700\u8981\u6301\u7eed\u6267\u884c\u591a\u957f\u65f6\u95f4\uff0c\u538b\u6d4b\u8fd0\u884c\u65f6\u957f\u8fbe\u5230\u8bbe\u5b9a\u7684\u65f6\u95f4\u5c31\u505c\u6b62\u538b\u529b\u6d4b\u8bd5\u3002\u76ee\u524d\u7cfb\u7edf\u63d0\u4f9b\u6309\u5c0f\u65f6\u3001\u5206\u949f\u3001\u79d2\u6765\u8bbe\u7f6e\u3002
    • \u3010\u6309\u8fed\u4ee3\u6b21\u6570\u3011\uff1a\u8bbe\u7f6e\u672c\u6b21\u538b\u6d4b\u6267\u884c\u7684\u6b21\u6570\uff0c\u5e76\u4e14\u8bbe\u7f6e\u8fd0\u884c\u65f6\u95f4\uff0c\u538b\u6d4b\u8fd0\u884c\u6b21\u6570\u8fbe\u5230\u8bbe\u5b9a\u7684\u6b21\u6570\u6216\u8005\u5230\u8fbe\u8bbe\u7f6e\u8fd0\u884c\u7684\u65f6\u95f4\uff0c\u5c31\u505c\u6b62\u538b\u529b\u6d4b\u8bd5\u3002

    • RPS\u8bbe\u7f6e\uff1a\u8bbe\u7f6e RPS \u65f6\uff0c\u9700\u8981\u5148\u6253\u5f00 RPS \u5f00\u5173\u624d\u53ef\u4ee5\uff0cRPS\uff08Requests per second\uff09\uff1a\u6bcf\u79d2\u8bf7\u6c42\u6570\u3002 \u5982\u679c\u8bbe\u7f6e\u4e86 RPS \u4e0a\u9650\uff0c\u5219\u53d1\u538b\u8fbe\u5230\u8fd9\u4e2a\u503c\u540e\uff0c\u5c31\u4e0d\u4f1a\u518d\u7ee7\u7eed\u52a0\u538b\u3002

    • Ramp-Up\u8bbe\u7f6e\uff1a\u662f\u5e76\u53d1\u7528\u6237\u6570\u5230\u8fbe\u6307\u5b9a\u4e2a\u6570\u6240\u82b1\u8d39\u7684\u65f6\u95f4\uff0cStep \u662f\u5206\u51e0\u6b65\u8fbe\u5230\u3002

    • \u5206\u914d\u7b56\u7565\uff1a\u9488\u5bf9\u6709\u591a\u4e2a\u8282\u70b9\u7684\u8d44\u6e90\u6c60\uff0cMeterSphere \u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u8bbe\u7f6e\u4e0d\u540c\u7684\u5206\u914d\u7b56\u7565\u3002\u76ee\u524d\u5206\u914d\u7b56\u7565\u652f\u6301\u81ea\u52a8\u5206\u914d\u3001\u56fa\u5b9a\u8282\u70b9\u3001\u4ee5\u53ca\u81ea\u5b9a\u4e49\u3002

    \uff081\uff09\u81ea\u52a8\u5206\u914d\uff1a\u7cfb\u7edf\u9ed8\u8ba4\u4e3a\u3010\u81ea\u52a8\u5206\u914d\u3011\uff0c\u5176\u6838\u5fc3\u903b\u8f91\u662f\u6309\u8d44\u6e90\u6c60\u8282\u70b9\u6700\u5927\u5e76\u53d1\u6570\u5360\u6bd4\u6bd4\u4f8b\u5206\u914d\uff0c\u6bd4\u5982\u3010\u6d4b\u8bd5\u8d44\u6e90\u6c60\u3011\u8bbe\u7f6e\u5982\u4e0b\u3002

    \uff082\uff09\u56fa\u5b9a\u8282\u70b9\uff1a\u5141\u8bb8\u7528\u6237\u6307\u5b9a\u538b\u6d4b\u4ec5\u4ec5\u5728\u67d0\u4e00\u4e2a\u8282\u70b9\u4e0a\u6267\u884c\u3002

    \uff083\uff09\u81ea\u5b9a\u4e49\uff1a\u652f\u6301\u7528\u6237\u6839\u636e\u9700\u8981\u81ea\u5b9a\u4e49\u6bcf\u4e2a\u8282\u70b9\u6267\u884c\u5206\u914d\u5360\u6bd4\u7684\u60c5\u51b5\u3002

    "},{"location":"user_manual/load_test/load_test/#6","title":"6 \u9ad8\u7ea7\u914d\u7f6e","text":"

    \u8fdb\u5165\u6027\u80fd\u6d4b\u8bd5\u811a\u672c\u7f16\u8f91\u9875\u9762\uff0c\u9009\u62e9\u3010\u9ad8\u7ea7\u914d\u7f6e\u3011\uff0c\u8fdb\u5165\u6027\u80fd\u6d4b\u8bd5\u9ad8\u7ea7\u914d\u7f6e\u9875\u9762\u3002\u9ad8\u7ea7\u8bbe\u7f6e\u5206\u4e3a\u591a\u90e8\u5206\uff1a\u5e38\u89c4\u3001\u57df\u540d\u7ed1\u5b9a\u3001CSVDataSet\u3001\u81ea\u5b9a\u4e49\u53d8\u91cf\u3001JMeter Properties\u3001System Properties\u3001\u76d1\u63a7\u7b49\u3002

    • \u5e38\u89c4\uff1a\u8fdb\u5165\u3010\u9ad8\u7ea7\u914d\u7f6e\u3011\u9875\u9762\uff0c\u6700\u4e0a\u9762\u7684\u8bbe\u7f6e\u53ef\u7406\u89e3\u4e3a\u5e38\u89c4\u4fe1\u606f\u8bbe\u7f6e\u90e8\u5206\uff0c\u6b64\u5305\u542b\u8bbe\u7f6e\u6d4b\u8bd5\u811a\u672c\u7684\u8fde\u63a5\u8d85\u65f6\u65f6\u95f4\u548c HTTP \u54cd\u5e94\u7801\u7b49\u4fe1\u606f\u3002\u4e0b\u9762\u4ecb\u7ecd\u90e8\u5206\u53c2\u6570\u4fe1\u606f\u3002

    • \u8d85\u65f6\u914d\u7f6e\uff1a\u8fde\u63a5\u8d85\u65f6\u662f\u8fde\u63a5\u65f6\u8d85\u8fc7\u8bbe\u7f6e\u7684\u65f6\u95f4\u5c31\u4e0d\u5728\u8fde\u63a5\uff0c\u54cd\u5e94\u8d85\u65f6\u662f\u7b49\u5f85\u54cd\u5e94\u65f6\u8d85\u8fc7\u8bbe\u7f6e\u7684\u65f6\u95f4\u5c31\u4e0d\u5728\u7b49\u5f85\u54cd\u5e94\u3002

    • \u805a\u5408\u65f6\u95f4\uff1a\u8868\u793a\u62a5\u544a\u91c7\u96c6\u65f6\u95f4\u4e5f\u53eb\u6253\u70b9\u65f6\u95f4\uff0c\u662f\u6307\u6d4b\u8bd5\u62a5\u544a\u5237\u65b0\u6570\u636e\u65f6\u95f4\u3002\u628a\u9f20\u6807\u653e\u5728\u3010\u805a\u5408\u65f6\u95f4\u3011\u540e\u7684\u3010i\u3011\u6309\u94ae\u4e0a\uff0c\u53ef\u4ee5\u770b\u5230\u7cfb\u7edf\u9ed8\u8ba4\u63d0\u4f9b\u4fe1\u606f\u8bf4\u660e\u3002

    • \u81ea\u5b9a\u4e49\u54cd\u5e94\uff1a\u8868\u793a\u6307\u5728\u8fd9\u91cc\u8bbe\u7f6e\u7684\u54cd\u5e94\u7801\uff0c\u5c31\u4e0d\u7edf\u8ba1\u4e3a\u5931\u8d25\u7684\u63a5\u53e3\u3002\u7cfb\u7edf\u652f\u6301\u6dfb\u52a0\u591a\u4e2a\u54cd\u5e94\u7801\uff0c\u6309\u9017\u53f7\u5206\u5272\u3002

    • \u57df\u540d\u7ed1\u5b9a\uff1a\u4f7f\u7528 JMeter \u7684\u65f6\u5019\u4f1a\u6d89\u53ca\u5230\u4f7f\u7528\u57df\u540d\u7684\u60c5\u51b5\uff0c\u4e3a\u4e86\u4f7f\u811a\u672c\u66f4\u5177\u6709\u901a\u7528\u6027\uff0c\u4ee5\u53ca\u53d1\u9001\u7ed9\u5176\u4ed6\u4eba\u65f6\uff0c\u811a\u672c\u4e00\u6837\u53ef\u4ee5\u76f4\u63a5\u8fd0\u884c\uff0c\u6545\u9700\u8981\u5728\u8fd0\u884c\u811a\u672c\u4e2d\u6dfb\u52a0 hosts \u5185\u5bb9\uff0c\u76f4\u63a5\u4ece JMeter \u4e2d\u83b7\u53d6\u3002

    • CSVDataSet\uff1a\u6027\u80fd\u6d4b\u8bd5\u65f6\u6240\u9700\u8981\u7684\u53c2\u6570\u6570\u636e\u6587\u4ef6\uff0c\u5982\u679c\u6240\u6709\u573a\u666f\u4f7f\u7528\u4e00\u4e2a\u7edf\u4e00\u7684\u53c2\u6570\u6587\u4ef6\uff0c\u4e3a\u4e86\u907f\u514d\u76f8\u540c\u7684\u53c2\u6570\u88ab\u4e0d\u540c\u7684\u573a\u666f\u5f15\u7528\u9020\u6210\u6d41\u7a0b\u5f02\u5e38\u3002\u7cfb\u7edf\u4f1a\u6839\u636e\u538b\u6d4b\u7b56\u7565\u81ea\u52a8\u6765\u5206\u5272 CSV \u6570\u636e\u6587\u4ef6\u91cc\u7684\u53c2\u6570\uff0c\u628a\u4e0d\u540c\u7684\u53c2\u6570\u5206\u914d\u7ed9\u4e0d\u540c\u7684\u4e1a\u52a1\u573a\u666f\u3002

    • \u81ea\u5b9a\u4e49\u53d8\u91cf\uff1a\u7cfb\u7edf\u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u6027\u80fd\u6d4b\u8bd5\u811a\u672c\u91cc\u6240\u9700\u7684\u53d8\u91cf\u3002\u4e0d\u4f7f\u7528\u65f6\uff0c\u53ef\u4ee5\u5173\u95ed\u542f\u7528\u5f00\u5173\u3002

    • JMeter Properties\uff1a\u7cfb\u7edf\u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u9700\u8981\u5173\u6ce8\u6216\u4f7f\u7528\u7684\u4efb\u4f55 JMeter Properties \u4fe1\u606f\u3002

    • System Properties\uff1a\u5982\u679c\u6027\u80fd\u6d4b\u8bd5\u6709\u7528\u5230\u8bc1\u4e66\uff0c\u9664\u4e86\u8981\u5728\u8d44\u6e90\u6587\u4ef6\u91cc\u6dfb\u52a0\u5916\uff0c\u8fd8\u8981\u5728 System_Properties \u91cc\u8fdb\u884c\u914d\u7f6e\u3002

    • \u76d1\u63a7\uff1a\u7cfb\u7edf\u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u914d\u7f6e\u9700\u8981\u5173\u6ce8\u4efb\u4f55\u53d1\u538b\u7aef\u548c\u88ab\u6d4b\u670d\u52a1\u7684\u6d4b\u8bd5\u5b9e\u65f6\u76d1\u63a7\uff0c\u76ee\u524d\u5bf9\u4e8e\u88ab\u76d1\u63a7\u7cfb\u7edf\u9700\u8981\u5b89\u88c5 Prometheus \u7684\u76d1\u63a7\u63d2\u4ef6 node_export \u5e76\u542f\u52a8\u670d\u52a1\u3002

    • \u76d1\u63a7\u914d\u7f6e\uff1a\u70b9\u51fb\u3010\u9ad8\u7ea7\u914d\u7f6e-\u76d1\u63a7-\u6dfb\u52a0\u3011\uff0c\u53ef\u4ee5\u6307\u5b9a\u8981\u76d1\u63a7\u7684\u670d\u52a1\u5668\u6216\u538b\u6d4b\u8282\u70b9\uff0c\u8bbe\u7f6e\u8981\u76d1\u63a7\u7cfb\u7edf\u7684\u76f8\u5173\u4fe1\u606f\u3002\u70b9\u51fb\u3010\u786e\u8ba4\u3011\u5b8c\u6210\u8bbe\u7f6e\u3002

    "},{"location":"user_manual/load_test/load_test/#7","title":"7 \u6027\u80fd\u6d4b\u8bd5\u7ef4\u62a4\u7ba1\u7406","text":"
    • \u4fdd\u5b58\u548c\u6267\u884c\uff1a\u5b8c\u6210\u6027\u80fd\u6d4b\u8bd5\u4ee5\u4e0a\u7684\u76f8\u5173\u914d\u7f6e\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u5b8c\u6210\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u7684\u521b\u5efa\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u5e76\u6267\u884c\u3011\u7cfb\u7edf\u4f1a\u5728\u4fdd\u5b58\u540e\uff0c\u76f4\u63a5\u8fd0\u884c\u8be5\u6027\u80fd\u6d4b\u8bd5\u3002
    • \u6027\u80fd\u5217\u8868\uff1a\u5728\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u5217\u8868\u4e2d\u53ef\u67e5\u770b\u5230\u521b\u5efa\u7684\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\uff0c\u70b9\u51fb\u3010\u6267\u884c\u3011\u3001\u3010\u7f16\u8f91\u3011\u3001\u3010\u590d\u5236\u3011\u548c\u3010\u5220\u9664\u3011\u53ef\u5bf9\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u8fdb\u884c\u76f8\u5e94\u7684\u64cd\u4f5c\u3002
    • \u5b9a\u65f6\u4efb\u52a1\uff1a\u70b9\u51fb\u3010\u5b9a\u65f6\u4efb\u52a1\u3011\u53ef\u8bbe\u7f6e\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u7684\u5b9a\u65f6\u4efb\u52a1\u3002

    \u914d\u7f6e\u5b9a\u65f6\u4efb\u52a1\u5e76\u5f00\u542f\uff1a

    \u914d\u7f6e\u5b9a\u65f6\u4efb\u52a1\u901a\u77e5\uff1a

    • \u6027\u80fd\u6d4b\u8bd5\u6267\u884c\uff1a\u70b9\u51fb\u3010\u4fdd\u5b58\u5e76\u6267\u884c\u3011\u8fdb\u884c\u6027\u80fd\u6d4b\u8bd5\u7684\u6267\u884c\uff0c\u6267\u884c\u5b8c\u6210\u540e\u53ef\u5b9e\u65f6\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\uff0c\u5728\u6d4b\u8bd5\u62a5\u544a\u4e2d\u53ef\u70b9\u51fb\u3010\u7acb\u5373\u505c\u6b62\u3011\u7ec8\u6b62\u6027\u80fd\u6d4b\u8bd5\uff0c\u53ef\u70b9\u51fb\u3010\u518d\u6b21\u6267\u884c\u3011\u3001\u3010\u5bfc\u51fa\u62a5\u544a\u3011\u548c\u3010\u4e0b\u8f7dJTL\u3011\u7b49\u64cd\u4f5c\u529f\u80fd\uff0c\u5bf9\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u548c\u62a5\u544a\u8fdb\u884c\u76f8\u5e94\u7684\u64cd\u4f5c\u3002

    • \u53d8\u66f4\u8bb0\u5f55\uff1a\u5728\u6027\u80fd\u6d4b\u8bd5\u811a\u672c\u4e2d\u4e5f\u53ef\u4ee5\u67e5\u770b\u3010\u53d8\u66f4\u8bb0\u5f55\u3011\u3002

    • \u7248\u672c\u7ba1\u7406 (X-Pack)\uff1a\u6027\u80fd\u6d4b\u8bd5\u811a\u672c\u4e2d\u4e5f\u53ef\u4ee5\u8fdb\u884c\u3010\u7248\u672c\u7ba1\u7406\u3011\u3002

    • \u540c\u6b65\u53d8\u66f4\u573a\u666f\u6d4b\u8bd5\uff1a\u5f53\u6027\u80fd\u6d4b\u8bd5\u573a\u666f\u6709\u66f4\u65b0\u65f6\uff0c\u5728\u6027\u80fd\u6d4b\u8bd5\u9875\u9762\u53ef\u70b9\u51fb\u3010\u540c\u6b65\u53d8\u66f4\u573a\u666f\u6d4b\u8bd5\u3011\u6309\u94ae\u8fdb\u884c\u540c\u6b65\u66f4\u65b0\u3002

    "},{"location":"user_manual/load_test/test_report/","title":"\u6027\u80fd\u6d4b\u8bd5\u62a5\u544a","text":""},{"location":"user_manual/load_test/test_report/#1","title":"1 \u62a5\u544a","text":"

    \u5bf9\u4e8e\u6027\u80fd\u6d4b\u8bd5\u63d0\u4f9b\u4e86\u4e0d\u540c\u7684\u7ba1\u7406\u529f\u80fd\uff0c\u5982\uff1a - \u3010\u7acb\u5373\u505c\u6b62\u3011\uff1a\u5bf9\u8fdb\u884c\u4e2d\u7684\u6027\u80fd\u6d4b\u8bd5\uff0c\u53ef\u4ee5\u624b\u52a8\u8fdb\u884c\u505c\u6b62\u6267\u884c\u3002 - \u3010\u518d\u6b21\u6267\u884c\u3011\uff1a\u518d\u6b21\u6267\u884c\u8be5\u6027\u80fd\u6d4b\u8bd5\u3002 - \u3010\u5bfc\u51fa\u62a5\u544a\u3011\uff1a\u53ef\u5c06\u62a5\u544a\u8fdb\u884c\u5bfc\u51fa\u6210 PDF\u3002 - \u3010\u62a5\u544a\u5bf9\u6bd4\u3011\uff1a\u53ef\u5bf9\u8fd1\u51e0\u6b21\u6d4b\u8bd5\u62a5\u544a\u8fdb\u884c\u6bd4\u5bf9\u3002 - \u3010\u4e0b\u8f7d JTL\u3011\uff1a\u53ef\u4e0b\u8f7d JTL \u6587\u4ef6\u3002 - \u3010\u4e0b\u8f7d\u6267\u884c\u6587\u4ef6\u3011\uff1a\u53ef\u4e0b\u8f7d\u6267\u884c\u6587\u4ef6(\u5305\u62ec JMX \u811a\u672c\u3001Jar\u5305\u3001CSV\u6587\u4ef6)\u3002

    • \u67e5\u770b\u62a5\u544a:\u70b9\u51fb\u6027\u80fd\u6d4b\u8bd5\u914d\u7f6e\u9875\u9762\u7684\u3010\u4fdd\u5b58\u5e76\u6267\u884c\u3011\u6309\u94ae\uff0c\u7cfb\u7edf\u81ea\u52a8\u8fdb\u5165\u6027\u80fd\u6d4b\u8bd5\u6d4b\u8bd5\u62a5\u544a\u9875\u9762\u3002\u5f53\u6536\u5230\u6d4b\u8bd5\u7ed3\u679c\u6570\u636e\u540e\uff0c\u62a5\u544a\u9875\u9762\u5c06\u81ea\u52a8\u66f4\u65b0\u3002

    • \u6d4b\u8bd5\u6982\u89c8:\u8ba4\u8fdb\u5165\u6d4b\u8bd5\u62a5\u544a\uff0c\u5373\u4e3a\u6d4b\u8bd5\u6982\u89c8\u9875\u9762\uff0c\u53ef\u770b\u5230\u4e0d\u540c\u6307\u6807\u4e0b\u7684\u6d4b\u8bd5\u6570\u636e\u6c47\u603b\u60c5\u51b5\u3002

    • \u6d4b\u8bd5\u8be6\u60c5:\u7cfb\u7edf\u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u5404\u79cd\u6d4b\u8bd5\u6307\u6807\uff0c\u5e76\u4e14\u6839\u636e\u7528\u6237\u81ea\u5b9a\u4e49\u7684\u6307\u6807\u52a8\u6001\u5b9e\u65f6\u751f\u6210\u6d4b\u8bd5\u62a5\u8868\u3002

    • \u8bf7\u6c42\u7edf\u8ba1:\u6027\u80fd\u6d4b\u8bd5\u6240\u6709\u8bf7\u6c42\u60c5\u51b5\u7684\u7edf\u8ba1\u548c\u5206\u6790\u3002

    • \u9519\u8bef\u8bb0\u5f55:\u5bf9\u6027\u80fd\u6d4b\u8bd5\u8fc7\u7a0b\u4e2d\u53d1\u751f\u7684\u6240\u6709\u7684\u9519\u8bef\u8bb0\u5f55\u7684\u7edf\u8ba1\u53ca\u5206\u6790\u3002

    • \u65e5\u5fd7\u8be6\u60c5:\u6bcf\u6b21\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u65f6\uff0c\u90fd\u4f1a\u8bb0\u5f55\u548c\u4fdd\u5b58\u672c\u6b21\u6267\u884c\u8fc7\u7a0b\u4e2d\u6240\u6709\u7684\u65e5\u5fd7\u60c5\u51b5\uff0c\u65b9\u4fbf\u6280\u672f\u4eba\u5458\u95ee\u9898\u7684\u67e5\u9605\u548c\u5b9a\u4f4d\u3002\u540c\u65f6\u53ef\u4ee5\u4e0b\u8f7d\u5b8c\u6574\u7684\u65e5\u5fd7\u4fe1\u606f\u3002

    • \u76d1\u63a7\u8be6\u60c5:\u5bf9\u6027\u80fd\u6d4b\u8bd5\u6267\u884c\u65f6\uff0c\u8bbe\u7f6e\u7684\u6240\u6709\u76d1\u63a7\u4fe1\u606f\u7684\u76d1\u63a7\u6570\u636e\u3002\u540c\u65f6\u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u9009\u62e9\u76d1\u63a7\u6307\u6807\uff0c\u6839\u636e\u4e0d\u540c\u7684\u6307\u6807\uff0c\u7cfb\u7edf\u4f1a\u5b9e\u65f6\u52a8\u6001\u751f\u6210\u76d1\u63a7\u62a5\u544a\u3002

    • \u6d4b\u8bd5\u914d\u7f6e:\u67e5\u770b\u6b64\u62a5\u544a\u5bf9\u5e94\u7684\u6bcf\u4e2a\u573a\u666f\u5bf9\u5e94\u7684\u538b\u529b\u914d\u7f6e\u60c5\u51b5\u3002\u70b9\u9009\u6bcf\u4e2a\u573a\u666f\u53ef\u4ee5\u67e5\u770b\u5404\u81ea\u7684\u538b\u529b\u914d\u7f6e\u3002

    • \u505c\u6b62\u6d4b\u8bd5:\u70b9\u51fb\u3010\u7acb\u5373\u505c\u6b62\u3011\u6309\u94ae\uff0c\u53ef\u624b\u52a8\u505c\u6b62\u6d4b\u8bd5\u3002

    • \u518d\u6b21\u6267\u884c:\u70b9\u51fb\u3010\u518d\u6b21\u6267\u884c\u3011\u6309\u94ae\uff0c\u53ef\u518d\u6b21\u6267\u884c\u6d4b\u8bd5\u3002

    • \u5bfc\u51fa\u62a5\u544a:\u70b9\u51fb\u3010\u5bfc\u51fa\u62a5\u544a\u3011\u6309\u94ae\uff0c\u53ef\u5c06\u672c\u6b21\u6d4b\u8bd5\u62a5\u544a\u5bfc\u51fa PDF \u6587\u4ef6\u3002

    • \u5206\u4eab\u62a5\u544a:\u70b9\u51fb\u3010\u5206\u4eab\u62a5\u544a\u3011\u6309\u94ae\uff0c\u7cfb\u7edf\u5373\u4f1a\u751f\u6210\u8be5\u62a5\u544a\u5bf9\u5e94\u7684\u94fe\u63a5\u3002\u63a5\u4e0b\u6765\uff0c\u70b9\u51fb\u3010\u590d\u5236\u3011\u6309\u94ae\u5c31\u53ef\u4ee5\u5206\u4eab\u7ed9\u9700\u8981\u67e5\u770b\u62a5\u544a\u7684\u7528\u6237\u3002

    \u6027\u80fd\u6d4b\u8bd5\u62a5\u544a\u7684\u94fe\u63a5\u6709\u6548\u65f6\u957f\u9ed8\u8ba4\u4e3a 24 \u5c0f\u65f6\uff0c\u7528\u6237\u53ef\u4ee5\u9009\u62e9\u3010\u9879\u76ee\u8bbe\u7f6e-\u66f4\u591a\u9009\u9879-\u5e94\u7528\u7ba1\u7406-\u6027\u80fd\u6d4b\u8bd5\u3011\uff0c\u6839\u636e\u9700\u8981\u81ea\u5b9a\u4e49\u8be5\u94fe\u63a5\u7684\u6709\u6548\u65f6\u957f\u3002

    • \u62a5\u544a\u5bf9\u6bd4\uff1a\u70b9\u51fb\u3010\u62a5\u544a\u5bf9\u6bd4\u3011\uff0c\u52fe\u9009\u8981\u5bf9\u6bd4\u7684\u62a5\u544a\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u6309\u94ae\u5373\u53ef\u3002

    • \u4e0b\u8f7dJTL\u6587\u4ef6\uff1a\u70b9\u51fb\u3010\u4e0b\u8f7dJTL\u3011\uff0c\u53ef\u4e0b\u8f7d\u6d4b\u8bd5\u7ed3\u679c\u6587\u4ef6\uff0c\u652f\u6301\u5bfc\u51fa JTL \u6587\u4ef6\u7528\u4ee5\u751f\u6210 JMeter \u81ea\u5b9a\u4e49\u62a5\u8868\u3002

    • \u4e0b\u8f7d\u6267\u884c\u6587\u4ef6\uff1a\u70b9\u51fb\u3010\u4e0b\u8f7d\u6267\u884c\u6587\u4ef6\u3011\uff0c\u53ef\u4e0b\u8f7d\u6d4b\u8bd5 JMX \u811a\u672c\u914d\u7f6e\u6587\u4ef6(\u5305\u62ec Jar\u5305\u3001CSV\u6587\u4ef6\u7b49)\u3002

    "},{"location":"user_manual/load_test/test_report/#2","title":"2 \u6d4b\u8bd5\u62a5\u544a\u7ba1\u7406","text":"

    \u70b9\u51fb\u3010\u62a5\u544a\u3011\u53ef\u8fdb\u5165\u6d4b\u8bd5\u62a5\u544a\u5217\u8868\uff0c\u53ef\u67e5\u770b\u3001\u5bf9\u6bd4\u3001\u5220\u9664\u62a5\u544a\u3002

    • \u62a5\u544a\u8be6\u60c5\uff1a\u70b9\u51fb\u3010\u62a5\u544a\u8be6\u60c5\u3011\u53ef\u67e5\u770b\u62a5\u544a\u3002

    • \u5bf9\u6bd4\uff1a\u70b9\u51fb\u3010\u5bf9\u6bd4\u3011\u53ef\u8fdb\u884c\u591a\u62a5\u544a\u6570\u636e\u5bf9\u6bd4\u3002

    • \u5220\u9664\uff1a\u70b9\u51fb\u3010\u5220\u9664\u3011\u53ef\u5220\u9664\u62a5\u544a\u3002

    • \u6279\u91cf\u5220\u9664\uff1a\u9009\u4e2d\u591a\u4efd\u62a5\u544a\uff0c\u70b9\u51fb\u3010\u6279\u91cf\u5220\u9664\u62a5\u544a\u3011\u53ef\u5220\u9664\u62a5\u544a\u3002

    "},{"location":"user_manual/my_desk/attention/","title":"\u6211\u7684\u5173\u6ce8","text":"

    \u8f93\u5165\u9879\u76ee\u540d\u79f0\u53ef\u641c\u7d22\u5230\u9879\u76ee\uff0c\u9009\u4e2d\u9879\u76ee\uff0c\u5207\u6362\u5230\u5bf9\u5e94\u7684\u83dc\u5355\uff0c\u4e0b\u65b9\u5217\u8868\u4e5f\u4e0e\u4e4b\u5bf9\u5e94\u3002\u53ef\u5207\u6362\u5230\u4efb\u610f\u83dc\u5355\uff0c\u4e0b\u65b9\u5217\u8868\u5c31\u663e\u793a\u5bf9\u5e94\u5185\u5bb9\u3002\u9ed8\u8ba4\u3010\u529f\u80fd\u7528\u4f8b\u3011\uff0c\u9009\u62e9\u5f53\u524d\u7248\u672c\u53f7\uff0c\u70b9\u51fb\u5217\u8868\u4efb\u4e00\u6570\u636e\uff0c\u4f1a\u8df3\u8f6c\u5230\u5bf9\u5e94\u7684\u9875\u9762\u67e5\u770b\u8be6\u7ec6\u60c5\u51b5\u3002

    "},{"location":"user_manual/my_desk/created/","title":"\u6211\u521b\u5efa\u7684","text":"

    \u8f93\u5165\u9879\u76ee\u540d\u79f0\u53ef\u641c\u7d22\u5230\u9879\u76ee\uff0c\u9009\u4e2d\u9879\u76ee\uff0c\u5207\u6362\u5230\u5bf9\u5e94\u7684\u83dc\u5355\uff0c\u4e0b\u65b9\u5217\u8868\u4e5f\u4e0e\u4e4b\u5bf9\u5e94\u3002\u53ef\u5207\u6362\u5230\u4efb\u610f\u83dc\u5355\uff0c\u4e0b\u65b9\u5217\u8868\u5c31\u663e\u793a\u5bf9\u5e94\u5185\u5bb9\u3002\u9ed8\u8ba4\u3010\u529f\u80fd\u7528\u4f8b\u3011\uff0c\u9009\u62e9\u5f53\u524d\u7248\u672c\u53f7\uff0c\u70b9\u51fb\u5217\u8868\u4efb\u4e00\u6570\u636e\uff0c\u4f1a\u8df3\u8f6c\u5230\u5bf9\u5e94\u7684\u9875\u9762\u67e5\u770b\u8be6\u7ec6\u60c5\u51b5\u3002

    "},{"location":"user_manual/my_desk/dashboard/","title":"\u6211\u7684\u4eea\u8868\u76d8","text":"

    \u9875\u9762\u4e3b\u8981\u5c55\u793a\u3010\u6211\u7684\u5f85\u529e\u3011\u3001\u3010\u6211\u7684\u5173\u6ce8\u3011\u3001\u3010\u6211\u521b\u5efa\u7684\u7528\u4f8b\u3011\u3001\u3010\u6211\u521b\u5efa\u7684\u7f3a\u9677\u3011\u6a21\u5757\u7684\u7edf\u8ba1\u6570\u636e\u3002

    "},{"location":"user_manual/my_desk/dashboard/#1","title":"1 \u6211\u7684\u5f85\u529e","text":"

    \u5c55\u793a\u4e0d\u540c\u7c7b\u522b\u7684\u5f85\u529e\u6570\u636e\uff0c\u5982\u529f\u80fd\u7528\u4f8b\u3001\u6d4b\u8bd5\u8ba1\u5212\u3001\u7528\u4f8b\u8bc4\u5ba1\u3001\u7f3a\u9677\u7ba1\u7406\u3001\u63a5\u53e3\u5b9a\u4e49\u3001\u63a5\u53e3\u7528\u4f8b\u3001\u63a5\u53e3\u81ea\u52a8\u5316\u3001\u6027\u80fd\u6d4b\u8bd5\u7b49\uff0c\u70b9\u51fb\u5f85\u529e\u5217\u8868\u4e2d\u7684\u4e0d\u540c\u7c7b\u522b\uff0c\u4f1a\u8df3\u81f3\u76f8\u5e94\u7684\u9875\u9762\u3002

    "},{"location":"user_manual/my_desk/dashboard/#2","title":"2 \u6211\u7684\u5173\u6ce8","text":"

    \u5c55\u793a\u4e0d\u540c\u7c7b\u522b\u7684\u5173\u6ce8\uff0c\u5982\u529f\u80fd\u7528\u4f8b\u3001\u6d4b\u8bd5\u8ba1\u5212\u3001\u7528\u4f8b\u8bc4\u5ba1\u3001\u7f3a\u9677\u7ba1\u7406\u3001\u63a5\u53e3\u5b9a\u4e49\u3001\u63a5\u53e3\u7528\u4f8b\u3001\u63a5\u53e3\u81ea\u52a8\u5316\u3001\u6027\u80fd\u6d4b\u8bd5\u7b49\uff0c\u70b9\u51fb\u5173\u6ce8\u5217\u8868\u4e2d\u7684\u4e0d\u540c\u7c7b\u522b\uff0c\u4f1a\u8df3\u81f3\u76f8\u5e94\u7684\u9875\u9762\u3002

    "},{"location":"user_manual/my_desk/dashboard/#3","title":"3 \u6211\u521b\u5efa\u7684\u7528\u4f8b","text":"

    \u997c\u56fe\u5c55\u793a\u5404\u7c7b\u7528\u4f8b\u7684\u6570\u91cf\uff0c\u9f20\u6807\u60ac\u6d6e\u5728\u5404\u7c7b\u7528\u4f8b\u4e0a\uff0c\u4f1a\u663e\u793a\u8be5\u7c7b\u7528\u4f8b\u7684\u4e2a\u6570\u3002

    "},{"location":"user_manual/my_desk/dashboard/#4","title":"4 \u6211\u521b\u5efa\u7684\u7f3a\u9677","text":"

    \u997c\u56fe\u5c55\u793a\u5404\u7c7b\u7f3a\u9677\u7684\u4e2a\u6570\uff0c\u9f20\u6807\u60ac\u6d6e\u5728\u5404\u7c7b\u7f3a\u9677\u4e0a\uff0c\u4f1a\u663e\u793a\u8be5\u7c7b\u7f3a\u9677\u7684\u4e2a\u6570\u3002

    "},{"location":"user_manual/my_desk/todo/","title":"\u6211\u7684\u5f85\u529e","text":"

    \u53ef\u5207\u6362\u5230\u4efb\u610f\u83dc\u5355\uff0c\u4e0b\u65b9\u5217\u8868\u5c31\u663e\u793a\u5bf9\u5e94\u5185\u5bb9\u3002\u9ed8\u8ba4\u3010\u529f\u80fd\u7528\u4f8b\u3011\uff0c\u9009\u62e9\u5f53\u524d\u7248\u672c\u53f7\uff0c\u70b9\u51fb\u5217\u8868\u4efb\u4e00\u6570\u636e\uff0c\u4f1a\u8df3\u8f6c\u5230\u5bf9\u5e94\u7684\u9875\u9762\u67e5\u770b\u8be6\u7ec6\u60c5\u51b5\u3002

    "},{"location":"user_manual/my_desk/todo/#1","title":"1 \u5f85\u5b8c\u6210","text":"

    \u5728\u3010\u63a5\u53e3\u5b9a\u4e49\u3011\u3001\u3010\u63a5\u53e3\u7528\u4f8b\u3011\u3001\u3010\u63a5\u53e3\u81ea\u52a8\u5316\u3011Tab \u4e0b\u53ef\u4ee5\u5c55\u793a\u6240\u6709\u3010\u5f85\u5b8c\u6210\u3011\u7684\u63a5\u53e3\u6216\u8005\u7528\u4f8b\u5217\u8868\u3002

    "},{"location":"user_manual/my_desk/todo/#2","title":"2 \u5f85\u66f4\u65b0","text":"

    \u5df2\u5b58\u5728\u7684\u63a5\u53e3\uff0c\u4fee\u6539\u5730\u5740\u3001\u8bf7\u6c42\u5934\u3001\u8bf7\u6c42\u4f53\u7b49\u4fe1\u606f\uff0c\u70b9\u51fb\u4fdd\u5b58\u540e\uff0c\u672a\u8fdb\u884c\u3010\u540c\u6b65\u8bbe\u7f6e\u3011\u64cd\u4f5c\u3002

    \u540c\u6b65\u8bbe\u7f6e

    \u5373\u5728 API \u63a5\u53e3\u53d1\u751f\u53d8\u66f4\u5e76\u70b9\u51fb\u4fdd\u5b58\u540e\uff0c\u53ef\u52fe\u9009\u540c\u6b65\u8bbe\u7f6e Header\u3001QUERY\u53c2\u6570\u3001REST\u53c2\u6570\u7b49\u9009\u9879\uff0c\u52fe\u9009\u540e\uff0c\u4f1a\u540c\u6b65\u66f4\u65b0\u8be5 API \u5bf9\u5e94\u7684 CASE \u548c\u5f15\u7528\u8be5 API \u7684\u573a\u666f\u3002

    \u53ef\u5728\u3010\u5f85\u66f4\u65b0\u3011\u9875\u9762\u5217\u8868\u4e2d\u8fdb\u884c\u3010\u540c\u6b65\u3011\u6216\u3010\u5ffd\u7565\u3011\u64cd\u4f5c\u3002

    "},{"location":"user_manual/plugin_use/api_test_plugin/","title":"Api test plugin","text":"

    MeterSphere \u9664\u652f\u6301\u901a\u7528\u7684HTTP/HTTPS\u3001TCP\u3001SQL\u3001DUBBO\u534f\u8bae\u5916\uff0c\u8fd8\u53ef\u4ee5\u901a\u8fc7\u63d2\u4ef6\u7684\u65b9\u5f0f\u652f\u6301\u5176\u5b83\u6269\u5c55\u534f\u8bae\uff0c\u76ee\u524d\u4f01\u4e1a\u7248\u672c\u5df2\u652f\u6301\u7684\u6269\u5c55\u534f\u8bae\u5305\u62ec\uff1aWebSocket/MQTT/AMQP\u3002WebSocket/MQTT/AMQP \u7b49\u534f\u8bae\u63d2\u4ef6\u5305\u662f\u4f01\u4e1a\u7248\u529f\u80fd\uff0c\u4ec5\u5411\u4f01\u4e1a\u5ba2\u6237\u5f00\u653e\u3002 \u4e0b\u9762\u4ee5 WebSocket \u534f\u8bae\u4e3a\u4f8b\uff0c\u4ecb\u7ecd\u63a5\u53e3\u6d4b\u8bd5\u6269\u5c55\u63d2\u4ef6\u7684\u5b89\u88c5\u4ee5\u53ca\u4f7f\u7528\u3002

    "},{"location":"user_manual/plugin_use/api_test_plugin/#1","title":"1 \u63d2\u4ef6\u5b89\u88c5","text":"

    \u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e\u3011-\u3010\u7cfb\u7edf\u3011-\u3010\u63d2\u4ef6\u7ba1\u7406\u3011\u754c\u9762\u4e0b\uff0c\u4e0a\u4f20 WebSocket \u63d2\u4ef6\u3002

    "},{"location":"user_manual/plugin_use/api_test_plugin/#2","title":"2 \u63d2\u4ef6\u4f7f\u7528","text":"

    \u5728\u3010\u63a5\u53e3\u6d4b\u8bd5\u3011-\u3010\u63a5\u53e3\u81ea\u52a8\u5316\u3011\u754c\u9762\u4e0b\uff0c\u65b0\u5efa\u573a\u666f\uff0c\u70b9\u51fb\u573a\u666f\u53f3\u4e0b\u89d2\u3010+\u3011\u53f7\uff0c\u5373\u53ef\u6dfb\u52a0 WebSocket \u76f8\u5173\u8bf7\u6c42\u3002

    "},{"location":"user_manual/plugin_use/chrome_plugin/","title":"Chrome plugin","text":"

    \u8be5\u63d2\u4ef6\u4e3a MeterSphere \u914d\u5957\u7684\u6d4f\u89c8\u5668\u5f55\u5236\u63d2\u4ef6\uff0c\u8be5\u63d2\u4ef6\u53ef\u5c06\u7528\u6237\u5728 chrome \u6d4f\u89c8\u5668\u64cd\u4f5c\u65f6\u7684\u6240\u6709 HTTP \u8bf7\u6c42\u8bb0\u5f55\u4e0b\u6765\u5e76\u751f\u6210 JMX \u6587\u4ef6\uff08JMeter \u811a\u672c\u6587\u4ef6\uff09\uff0c\u5bfc\u5165 MeterSphere \u540e\u8fdb\u884c\u63a5\u53e3\u6d4b\u8bd5\u6216\u6027\u80fd\u6d4b\u8bd5\u3002

    "},{"location":"user_manual/plugin_use/chrome_plugin/#1","title":"1 \u63d2\u4ef6\u5b89\u88c5","text":"

    \u5728 MeterSphere chrome-extensions \u9879\u76ee\u4e2d\u4e0b\u8f7d\u6700\u65b0\u7684\u53d1\u5e03\u7248\u672c\uff0c\u4e0b\u8f7d\u5b8c\u6210\u540e\u8fdb\u884c\u89e3\u538b\uff0c\u7136\u540e\u5728\u8c37\u6b4c\u6d4f\u89c8\u5668\u8f93\u5165 chrome://extensions/ \u8fdb\u5165\u6269\u5c55\u7a0b\u5e8f\u5b89\u88c5\u754c\u9762\uff0c \u9009\u62e9\u3010\u52a0\u8f7d\u5df2\u89e3\u538b\u7684\u6269\u5c55\u7a0b\u5e8f\u3011\uff0c\u9009\u62e9\u63d2\u4ef6\u89e3\u538b\u540e\u7684\u76ee\u5f55\u8fdb\u884c\u5b89\u88c5\u3002

    "},{"location":"user_manual/plugin_use/chrome_plugin/#2","title":"2 \u4f7f\u7528\u8bf4\u660e","text":"

    \u5728 Chrome \u6d4f\u89c8\u5668\u4e2d\u70b9\u51fb\u6269\u5c55\u7a0b\u5e8f\u6309\u94ae\uff0c\u5e76\u9009\u62e9MeterSphere \u5f55\u5236\u63d2\u4ef6\u56fe\u6807\uff0c\u70b9\u51fb\u5f00\u59cb\u5f55\u5236\u6309\u94ae\u3002

    \u8bbf\u95ee\u9700\u8981\u8fdb\u884c\u5f55\u5236\u7684\u7ad9\u70b9\uff0c\u8fdb\u884c\u6b63\u5e38\u4f7f\u7528\u64cd\u4f5c\uff0c\u6d4f\u89c8\u5668\u4e2d\u7684\u6240\u6709\u7f51\u7edc\u8bf7\u6c42\u5747\u4f1a\u88ab\u8bb0\u5f55\u4e0b\u6765\u3002\u5f53\u64cd\u4f5c\u5b8c\u6210\u540e\uff0c\u70b9\u51fb\u505c\u6b62\u6309\u94ae\u505c\u6b62\u5f55\u5236\u3002

    \u5f55\u5236\u7ed3\u675f\u540e\uff0c\u70b9\u51fb\u4fdd\u5b58\u6309\u94ae\u8fdb\u884c\u4fdd\u5b58\u3002

    \u63d2\u4ef6\u5f39\u51fa\u6240\u6709\u8bb0\u5f55\u5230\u8bf7\u6c42\u7684\u7ad9\u70b9\u5217\u8868\uff0c\u52fe\u9009\u9700\u8981\u4fdd\u7559\u7684\u7ad9\u70b9\u8bf7\u6c42\u70b9\u51fb\u4e0b\u8f7d\u6309\u94ae\uff0c\u4e0b\u8f7d JMX \u811a\u672c\u81f3\u672c\u5730\u3002

    \u5728 MeterSphere \u4e2d\u521b\u5efa\u6027\u80fd\u6d4b\u8bd5\u4efb\u52a1\uff0c \u4e0a\u4f20\u521a\u521a\u5f55\u5236\u7684 JMX \u811a\u672c\uff0c\u7136\u540e\u8bbe\u7f6e\u5e76\u53d1\u53c2\u6570\uff0c\u8fdb\u884c\u6027\u80fd\u6d4b\u8bd5\u3002

    "},{"location":"user_manual/plugin_use/idea_plugin/","title":"Idea plugin","text":"

    \u8be5\u63d2\u4ef6\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u5728IntelliJ IDEA IDE \u4e2d\uff0c\u5c06\u7f16\u5199\u7684 HTTP \u63a5\u53e3\u6587\u6863\u4fe1\u606f\u5feb\u6377\u63a8\u9001\u5230 MeterSphere \u7cfb\u7edf\u4e2d\u3002

    "},{"location":"user_manual/plugin_use/idea_plugin/#1","title":"1 \u63d2\u4ef6\u5b89\u88c5","text":""},{"location":"user_manual/plugin_use/idea_plugin/#11","title":"1.1 \u5728\u7ebf\u5b89\u88c5","text":"

    \u5728 IDEA -> Settings -> plugins -> Marketplace \u641c\u7d22\u5e76\u9009\u62e9\u3010MeterSphere\u3011\uff0c\u70b9\u51fb install \u5373\u53ef\u8fdb\u884c\u5728\u7ebf\u5b89\u88c5\u3002

    "},{"location":"user_manual/plugin_use/idea_plugin/#12","title":"1.2 \u79bb\u7ebf\u5b89\u88c5","text":"

    \u5148\u5728 jetbrains plugin marketplace \u4e2d\u4e0b\u8f7d\u4e0e IDEA\u7248\u672c\u5339\u914d\u7684\u7248\u672c\uff0c \u7136\u540e\u5728 IDEA -> Settings -> plugins\uff0c\u70b9\u51fb\u3010Install Plugin from Disk\u3011\u5e76\u9009\u62e9\u5df2\u4e0b\u8f7d\u7684\u79bb\u7ebf\u5305\u8fdb\u884c\u5b89\u88c5\u3002

    "},{"location":"user_manual/plugin_use/idea_plugin/#2","title":"2 \u63d2\u4ef6\u4f7f\u7528","text":"

    IDEA -> Settings -> MeterSphere \u4e2d\u914d\u7f6e\u597d\u8bbf\u95ee\u5730\u5740\u4ee5\u53ca AK/SK \u7b49\u8be6\u7ec6\u4fe1\u606f\uff0c\u70b9\u51fb\u3010test\u3011\u6309\u94ae\u5373\u786e\u8ba4\u8fde\u63a5\u6210\u529f\u3002

    \u914d\u7f6e\u5bfc\u51fa\u662f\u5426\u8986\u76d6\u3001\u76ee\u5f55\u5c42\u7ea7\u7b49\u4fe1\u606f\u540e\uff0c\u70b9\u51fb\u3010Apply\u3011\u6309\u94ae\u3002

    \u5728\u8981\u540c\u6b65\u63a5\u53e3\u7684 Controller \u9875\u9762\u4e2d\u53f3\u952e\u9009\u62e9\u3010Export MeterSphere\u3011\u5373\u53ef\u5c06\u4ee3\u7801\u4e2d\u7684 HTTP \u63a5\u53e3\u63a8\u9001\u5230 MeterSphere \u7cfb\u7edf\u4e2d\u3002

    "},{"location":"user_manual/plugin_use/jenkins_plugin/","title":"Jenkins plugin","text":"

    \u8be5\u63d2\u4ef6\u4e3a MeterSphere \u914d\u5957DevOps \u6301\u7eed\u96c6\u6210\u5de5\u5177\u94fe\u4e2d\u4e0e Jenkins \u7684\u81ea\u52a8\u5316\u6267\u884c\u63d2\u4ef6\u3002

    "},{"location":"user_manual/plugin_use/jenkins_plugin/#1","title":"1 \u63d2\u4ef6\u5b89\u88c5","text":"

    \u6839\u636e MeterSphere \u7248\u672c\uff0c\u5728 MeterSphere Jenkins-plugin \u4e0b\u8f7d\u5bf9\u5e94\u7248\u672c\u7684 hpi \u5305\uff0c \u5e76\u5728 Jenkins \u7684\u63d2\u4ef6\u7ba1\u7406-\u9ad8\u7ea7\u4e2d\u7684Deploy Plugin\u6bb5\u4e2d\uff0c\u9009\u62e9\u4e0a\u4f20\u5df2\u4e0b\u8f7d\u597d\u7684 hpi \u63d2\u4ef6\u5305\u3002

    "},{"location":"user_manual/plugin_use/jenkins_plugin/#2","title":"2 \u63d2\u4ef6\u4f7f\u7528","text":"

    \u63d2\u4ef6\u5b89\u88c5\u540e\uff0c\u5728\u6307\u5b9a\u7684 Jenkins \u6784\u5efa\u4efb\u52a1\u7684\u6784\u5efa\u6b65\u9aa4\u4e2d\uff0c\u589e\u52a0\u5e76\u914d\u7f6e\u3010MeterSphere\u3011\u7c7b\u578b\u7684\u6784\u5efa\u6b65\u9aa4\u3002 \u914d\u7f6e MeterSphere \u8ba4\u8bc1\u4fe1\u606f\uff0c\u5e76\u6307\u5b9a\u9700\u8981\u89e6\u53d1\u6267\u884c\u7684\u63a5\u53e3\u6d4b\u8bd5\u3001\u6027\u80fd\u6d4b\u8bd5\u6216\u6d4b\u8bd5\u8ba1\u5212\uff0c\u914d\u7f6e\u5b8c\u6210\u540e\u5373\u53ef\u8fd0\u884c Jenkins Job\u3002

    v2\u7248\u672c\u5c06 Jenkins Job \u7684\u8fd0\u884c\u7ed3\u679c\u53d8\u66f4\u4e3a\u5f53\u524d\u8fd0\u884c\u7684\u6d4b\u8bd5\u8ba1\u5212\u6216\u7528\u4f8b\u7684\u5b9e\u9645\u8fd0\u884c\u7ed3\u679c\u72b6\u6001\uff0c\u5373\u5f53\u7528\u4f8b\u8fd0\u884c\u5931\u8d25\u65f6\uff0cJenkins Job \u7684\u72b6\u6001\u4e5f\u4e3a\u5931\u8d25\u3002

    "},{"location":"user_manual/plugin_use/selenium_ide_plugin/","title":"Selenium ide plugin","text":"

    \u8be5\u63d2\u4ef6\u4e3a Selenium \u539f\u751f\u63d2\u4ef6\uff0c\u7528\u4e8e\u5f55\u5236\u3001\u56de\u653e\u7528\u6237\u5728 web \u9875\u9762\u4e0a\u7684\u64cd\u4f5c\uff0c\u652f\u6301 Chrome\uff0cfirefox\u3001Edge\u7b49\u4e3b\u6d41\u6d4f\u89c8\u5668\u3002\u4ee5Chrome\u6d4f\u89c8\u5668\u4e3a\u4f8b\u8bf4\u660e\u63d2\u4ef6\u7684\u4e0b\u8f7d\u5b89\u88c5\u4ee5\u53ca\u4f7f\u7528\u3002

    "},{"location":"user_manual/plugin_use/selenium_ide_plugin/#1","title":"1 \u63d2\u4ef6\u5b89\u88c5","text":"

    \u5728 Chrome \u5e94\u7528\u5546\u5e97\u4e2d\u641c\u7d22 selenium \u5173\u952e\u5b57\uff0c \u9009\u62e9Selenium IDE\uff0c\u70b9\u51fb\u3010\u6dfb\u52a0\u81f3 Chrome\u3011\u5b8c\u6210\u63d2\u4ef6\u5b89\u88c5\u3002

    "},{"location":"user_manual/plugin_use/selenium_ide_plugin/#2","title":"2 \u63d2\u4ef6\u4f7f\u7528","text":"

    \u5728 Chrome \u6d4f\u89c8\u5668\u4e2d\u70b9\u51fb\u6269\u5c55\u7a0b\u5e8f\u6309\u94ae\uff0c\u5e76\u9009\u62e9 Selenium IDE\u63d2\u4ef6\u56fe\u6807\uff0c\u542f\u52a8\u63d2\u4ef6\u7a0b\u5e8f\u3002

    \u542f\u52a8\u3010Selenium IDE\u3011\u63d2\u4ef6

    \u521b\u5efa\u5f55\u5236\u7684\u9879\u76ee\uff0c\u8f93\u5165\u9879\u76ee\u540d\u79f0 \u70b9\u51fb\u3010\u5f55\u5236\u3011\u6309\u94ae\uff0c\u5728\u8f93\u5165\u5f55\u5236\u7f51\u7ad9\u5730\u5740\u4e4b\u540e\u5f00\u59cb\u5f55\u5236\u3002

    \u5f55\u5236\u5b8c\u6210\u540e\uff0c\u70b9\u51fb\u3010\u505c\u6b62\u3011\u6309\u94ae\u7ed3\u675f\u5f55\u5236\uff0c\u5e76\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u6309\u94ae\uff0c\u5c06\u5f55\u5236\u7ed3\u679c\u4fdd\u5b58\u540e\u7f6e\u4e3a .side \u6587\u4ef6

    \u5c06\u4fdd\u5b58\u7684 .side \u6587\u4ef6\u5bfc\u5165\u5230 MeterSphere UI \u6d4b\u8bd5\u4e2d\u5373\u8fdb\u884c Web UI\u7684\u81ea\u52a8\u5316\u6d4b\u8bd5\u3002

    "},{"location":"user_manual/plugin_use/service_integration_plugin/","title":"Service integration plugin","text":"

    MeterSphere v2.4 \u7248\u672c\u5b9e\u73b0\u4e86\u670d\u52a1\u96c6\u6210\u7684\u63d2\u4ef6\u5316\uff0c\u76ee\u524d\u5df2\u7ecf\u652f\u6301\u7985\u9053\u3001Jira\u3001TAPD\u7b49\u5e73\u53f0\u7684\u5bf9\u63a5\uff0c\u4e5f\u53ef\u6839\u636e\u81ea\u8eab\u9700\u6c42\u5f00\u53d1\u5bf9\u5e94\u63d2\u4ef6\u3002\u7cfb\u7edf\u8bbe\u7f6e-\u63d2\u4ef6\u7ba1\u7406\u4e0a\u4f20\u63d2\u4ef6 \u4f7f\u7528\u65b9\u5f0f\u8ddf\u539f\u6765\u4e00\u81f4\uff0c\u5177\u4f53\u53c2\u8003 metersphere-platform-plugin \u3002\u4ee5 Jira \u5e73\u53f0\u4e3a\u4f8b\uff0c\u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e\u3011-\u3010\u7cfb\u7edf\u3011-\u3010\u63d2\u4ef6\u7ba1\u7406\u3011\u754c\u9762\u4e0b\uff0c\u4e0a\u4f20 Jira \u63d2\u4ef6\u5305\u3002

    \u3010\u7cfb\u7edf\u8bbe\u7f6e\u3011-\u3010\u7cfb\u7edf\u3011-\u3010\u670d\u52a1\u96c6\u6210\u3011\u5904\u53ef\u770b\u5230 Jira \u5e73\u53f0\uff0c\u9009\u4e2d Jira \u5e73\u53f0\u53ef\u51fa\u73b0\u76f8\u5173\u8d26\u53f7\u4fe1\u606f\u3002\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u586b\u5199Jira \u5e73\u53f0\u76f8\u5173\u8d26\u53f7\u4fe1\u606f\u540e\u8fdb\u884c\u4fdd\u5b58\uff0c\u5e76\u901a\u8fc7\u3010\u6d4b\u8bd5\u8fde\u63a5\u3011\u8fdb\u884c\u9a8c\u8bc1\u3002

    \u9a8c\u8bc1\u901a\u8fc7\u540e\uff0c\u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e\u3011-\u3010\u7cfb\u7edf\u3011-\u3010\u9879\u76ee\u7ba1\u7406\u3011\u5904\uff0c\u8fdb\u884c\u9879\u76ee\u7f16\u8f91\u65f6\uff0c\u53ef\u770b\u5230\u3010\u96c6\u6210\u7b2c\u4e09\u65b9\u5e73\u53f0\u3011\u7684\u4e0b\u62c9\u6846\u6709 Jira \u5e73\u53f0\u9009\u9879\u4ee5\u53ca Jira \u5e73\u53f0\u7684\u76f8\u5173\u4fe1\u606f\u3002

    "},{"location":"user_manual/project_management/application_management/","title":"\u5e94\u7528\u7ba1\u7406","text":""},{"location":"user_manual/project_management/application_management/#1","title":"1 \u5e94\u7528\u7ba1\u7406\u6743\u9650","text":"

    \u5982\u679c\u3010\u9879\u76ee\u8bbe\u7f6e\u3011-\u3010\u66f4\u591a\u9009\u9879\u3011\u91cc\u770b\u4e0d\u5230\u3010\u5e94\u7528\u7ba1\u7406\u3011\u83dc\u5355\uff0c\u8868\u793a\u6b64\u7528\u6237\u6ca1\u6709\u6b64\u6743\u9650\uff0c\u9700\u8981\u5230\u3010\u7cfb\u7edf\u8bbe\u7f6e\u3011-\u3010\u7cfb\u7edf\u3011-\u3010\u7528\u6237\u7ec4\u4e0e\u6743\u9650\u3011\u4fee\u6539\u3010\u9879\u76ee\u7ba1\u7406\u5458\u3011\u7684\u6743\u9650\u3002

    \u9009\u4e2d\u5e94\u7528\u8bbe\u7f6e\u6743\u9650\u5373\u53ef\u3002

    "},{"location":"user_manual/project_management/application_management/#2","title":"2 \u5e94\u7528\u7ba1\u7406\u8bbe\u7f6e","text":"

    \u70b9\u51fb\u3010\u9879\u76ee\u8bbe\u7f6e\u3011-\u3010\u66f4\u591a\u9009\u9879\u3011-\u3010\u5e94\u7528\u7ba1\u7406\u3011\u53ef\u4ee5\u5bf9 MeterSphere \u7684\u3010\u5de5\u4f5c\u53f0\u3011\u3001\u3010\u6d4b\u8bd5\u8ddf\u8e2a\u3011\u3001\u3010\u63a5\u53e3\u6d4b\u8bd5\u3011\u3001\u3010UI\u6d4b\u8bd5\u3011\u3001\u3010\u6027\u80fd\u6d4b\u8bd5\u3011\u7b49\u5e94\u7528\u8fdb\u884c\u9ad8\u7ea7\u8bbe\u7f6e\u3002

    "},{"location":"user_manual/project_management/application_management/#21","title":"2.1 \u5de5\u4f5c\u53f0","text":"

    \u7ef4\u62a4\u3010\u5de5\u4f5c\u53f0\u3011\u4e0b\u7684\u4e00\u4e9b\u9ad8\u7ea7\u5e94\u7528\u914d\u7f6e\u7ba1\u7406\uff0c\u5305\u542b\u3010\u6211\u7684\u5f85\u529e-\u5f85\u66f4\u65b0\u5217\u8868\u3011\u914d\u7f6e\u3002

    "},{"location":"user_manual/project_management/application_management/#22","title":"2.2 \u6d4b\u8bd5\u8ddf\u8e2a\u8bbe\u7f6e","text":"

    \u7ef4\u62a4\u3010\u6d4b\u8bd5\u8ddf\u8e2a\u3011\u4e0b\u7684\u4e00\u4e9b\u9ad8\u7ea7\u5e94\u7528\u914d\u7f6e\u7ba1\u7406\uff0c\u5305\u542b \u3010\u542f\u52a8\u516c\u5171\u7528\u4f8b\u5e93\u3011\u3001\u3010\u6d4b\u8bd5\u7528\u4f8b\u81ea\u5b9a\u4e49ID\u3011\u3001\u3010\u5b9a\u65f6\u6e05\u7406\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u3011\u3001\u3010\u62a5\u544a\u5206\u4eab\u94fe\u63a5\u3011\u914d\u7f6e\u3002

    • \u542f\u52a8\u516c\u5171\u7528\u4f8b\u5e93

    • \u6d4b\u8bd5\u7528\u4f8b\u81ea\u5b9a\u4e49ID \u5f00\u542f\u540e\uff0c\u5728\u521b\u5efa\u3010\u6d4b\u8bd5\u7528\u4f8b\u3011\u9875\u9762\uff0c\u53ef\u4ee5\u81ea\u5b9a\u4e49\u8bbe\u7f6e\u7528\u4f8b ID\u3002

    • \u5b9a\u65f6\u6e05\u7406\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a

    • \u62a5\u544a\u5206\u4eab\u94fe\u63a5

    "},{"location":"user_manual/project_management/application_management/#23","title":"2.3 \u63a5\u53e3\u6d4b\u8bd5\u8bbe\u7f6e","text":"

    \u7ef4\u62a4\u3010\u63a5\u53e3\u6d4b\u8bd5\u3011\u4e0b\u7684\u4e00\u4e9b\u9ad8\u7ea7\u5e94\u7528\u914d\u7f6e\u7ba1\u7406\uff0c\u5305\u542b\u3010\u63a5\u53e3\u5b9a\u4e49URL\u53ef\u91cd\u590d\u3011\u3001\u3010\u573a\u666f\u81ea\u5b9a\u4e49ID\u3011\u3001\u3010TCP Mock Port\u3011\u4ee5\u53ca\u3010\u5b9a\u65f6\u6e05\u7406\u63a5\u53e3\u6d4b\u8bd5\u62a5\u544a\u3011\u3001\u3010\u62a5\u544a\u5206\u4eab\u94fe\u63a5\u3011\u4ee5\u53ca\u3010\u63a5\u53e3\u5b9a\u4e49\u5feb\u6377\u6dfb\u52a0\u6309\u94ae\u3011\u7b49\u914d\u7f6e\u3002

    • \u63a5\u53e3\u5b9a\u4e49URL\u53ef\u91cd\u590d \u542f\u7528\u540e\u63a5\u53e3\u5b9a\u4e49\u91cd\u590d\u6027\u6821\u9a8c\u5c06\u4e0d\u6821\u9a8cURL\uff0c\u540c\u4e00\u4e2a\u9879\u76ee\u4e0b\u5141\u8bb8\u63a5\u53e3\u8def\u5f84\u76f8\u540c\u7684\u3010\u63a5\u53e3\u5b9a\u4e49\u3011\u3002

    • \u573a\u666f\u81ea\u5b9a\u4e49ID \u542f\u7528\u540e\u521b\u5efa\u573a\u666f\u652f\u6301\u81ea\u5b9a\u4e49\u8bbe\u7f6e\u573a\u666fID\u3002

    • TCP Mock Port \u8bbe\u7f6e\u63a5\u53e3\u534f\u8bae\u4e3aTCP\u7684\u63a5\u53e3\uff0cMock\u670d\u52a1\u7684\u53ef\u7528\u6027\u3002

    \u5982\u679c TCP \u534f\u8bae\u7684\u63a5\u53e3\u9700\u8981\u4f7f\u7528 Mock \u670d\u52a1\uff0c\u5219\u9700\u8981\u5f00\u542f\u6b64\u670d\u52a1\uff0c\u5f00\u542f\u540e\u5728\u63a5\u53e3\u6d4b\u8bd5\u4e2d\uff0cMock \u670d\u52a1\u624d\u53ef\u7528\u3002

    • \u5b9a\u65f6\u6e05\u7406\u63a5\u53e3\u6d4b\u8bd5\u62a5\u544a

    • \u62a5\u544a\u5206\u4eab\u94fe\u63a5

    • \u63a5\u53e3\u5b9a\u4e49\u5feb\u6377\u6dfb\u52a0\u6309\u94ae

    "},{"location":"user_manual/project_management/application_management/#24-ui","title":"2.4 UI\u6d4b\u8bd5\u8bbe\u7f6e","text":""},{"location":"user_manual/project_management/application_management/#25","title":"2.5 \u6027\u80fd\u6d4b\u8bd5\u8bbe\u7f6e","text":"

    \u7ef4\u62a4\u3010\u6027\u80fd\u6d4b\u8bd5\u3011\u4e0b\u7684\u4e00\u4e9b\u9ad8\u7ea7\u5e94\u7528\u914d\u7f6e\u7ba1\u7406\uff0c\u5305\u542b\u3010\u5b9a\u65f6\u6e05\u7406\u63a5\u53e3\u6d4b\u8bd5\u62a5\u544a\u3011\u3001\u3010\u62a5\u544a\u5206\u4eab\u94fe\u63a5\u3011\u914d\u7f6e\u3002

    "},{"location":"user_manual/project_management/customcode_snippets/","title":"\u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5","text":"

    \u5728\u63a5\u53e3\u81ea\u52a8\u5316\u4e2d\u7ecf\u5e38\u9700\u8981\u6dfb\u52a0\u524d\u540e\u7f6e\u811a\u672c\u53ca\u81ea\u5b9a\u4e49\u811a\u672c\uff0c\u901a\u8fc7\u65b0\u589e\u7684\u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5\u529f\u80fd\uff0c\u7528\u6237\u53ef\u4ee5\u5c06\u5e38\u7528\u7684\u811a\u672c\u4fdd\u5b58\u4e0b\u6765\uff0c\u5728\u9700\u8981\u4f7f\u7528\u7684\u5730\u65b9\u76f4\u63a5\u6dfb\u52a0\u5373\u53ef\u3002

    "},{"location":"user_manual/project_management/customcode_snippets/#1","title":"1 \u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5\u7ef4\u62a4","text":"

    \u9009\u62e9\u3010\u9879\u76ee\u8bbe\u7f6e\u3011-\u3010\u66f4\u591a\u9009\u9879\u3011-\u3010\u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5\u3011\u3002

    \u70b9\u51fb\u3010\u521b\u5efa\u4ee3\u7801\u7247\u6bb5\u3011\uff0c\u53ef\u4ee5\u628a\u5e38\u7528\u7684\u811a\u672c\u4ee3\u7801\u4fdd\u5b58\u5728\u8fd9\u91cc\u3002

    \u70b9\u51fb\u3010\u6d4b\u8bd5\u3011\u53ef\u4ee5\u6821\u9a8c\u6b64\u4ee3\u7801\u6267\u884c\u7684\u60c5\u51b5\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u521b\u5efa\u7684\u4ee3\u7801\u7247\u6bb5\u4fdd\u5b58\u5728\u4ee3\u7801\u5217\u8868\u4e2d\u3002

    \u540c\u65f6\u7cfb\u7edf\u63d0\u4f9b\u76f8\u5173\u7684\u7ba1\u7406\u529f\u80fd\uff1a\u3010\u7f16\u8f91\u3011\u3001\u3010\u590d\u5236\u3011\u548c\u3010\u5220\u9664\u3011\u7b49\uff0c\u5bf9\u4ee3\u7801\u7247\u6bb5\u8fdb\u884c\u7ba1\u7406\u3002

    "},{"location":"user_manual/project_management/customcode_snippets/#2","title":"2 \u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5\u4f7f\u7528","text":"

    \u4ee3\u7801\u7247\u6bb5\u7ef4\u62a4\u597d\u540e\uff0c\u5728\u3010\u63a5\u53e3\u3001\u573a\u666f\u6d4b\u8bd5\u7528\u4f8b\u3011\u6216\u8005\u3010\u73af\u5883\u3011\u7684\u3010\u524d\u7f6e\u811a\u672c\u3001\u540e\u7f6e\u811a\u672c\u3011\u4e2d\uff0c\u9009\u62e9\u3010\u63d2\u5165\u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5\u3011\u53ef\u4ee5\u76f4\u63a5\u5f15\u7528\u6b64\u4ee3\u7801\uff0c\u4ee5\u3010\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u3011\u4e3a\u4f8b\u3002

    "},{"location":"user_manual/project_management/false_library/","title":"\u8bef\u62a5\u5e93","text":"

    \u5f53\u6267\u884c\u53cd\u5411\u7528\u4f8b\u540e\u54cd\u5e94\u72b6\u6001\u7801\u975e 200 \u65f6\uff0cMS \u4f1a\u5c06\u5176\u5f52\u4e3a\u9519\u8bef\u7ed3\u679c\uff0c\u4f46\u5bf9\u7528\u6237\u4e1a\u52a1\u800c\u8a00\u662f\u6b63\u786e\u7684\uff0c\u6b64\u65f6\u53ef\u4ee5\u4f7f\u7528\u8bef\u62a5\u5e93\u7684\u529f\u80fd\u8fdb\u884c\u907f\u514d

    "},{"location":"user_manual/project_management/false_library/#1-x-pack","title":"1 \u8bef\u62a5\u5e93 (X-Pack)","text":"

    \u70b9\u51fb\u3010\u9879\u76ee\u8bbe\u7f6e\u3011-\u3010\u66f4\u591a\u9009\u9879\u3011-\u3010\u8bef\u62a5\u5e93\u3011\u9875\u9762\uff0c\u70b9\u51fb\u3010\u521b\u5efa\u8bef\u62a5\u3011

    \u5728\u3010\u521b\u5efa\u8bef\u62a5\u3011\u9875\u9762\uff0c\u8f93\u5165\u76f8\u5173\u914d\u7f6e\u540e\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u5373\u53ef

    \u3010\u521b\u5efa\u8bef\u62a5\u3011\u5b8c\u6210\u540e\uff0c\u53ef\u3010\u5f00\u542f/\u5173\u95ed\u3011\u8be5\u8bef\u62a5

    \u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u53ef\u7f16\u8f91\u8bef\u62a5\u5185\u5bb9\uff0c\u4e4b\u540e\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u5373\u53ef

    \u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u70b9\u51fb\u5220\u9664\u63d0\u793a\u4e2d\u7684\u3010\u786e\u5b9a\u3011\u6309\u94ae\uff0c\u8be5\u8bef\u62a5\u5c31\u88ab\u5220\u9664\u4e86

    "},{"location":"user_manual/project_management/file_management/","title":"\u6587\u4ef6\u7ba1\u7406","text":"

    \u53ef\u4e0a\u4f20\u6d4b\u8bd5\u6240\u9700\u7684 JAR \u5305\u3001\u811a\u672c\u3001\u76f8\u5173\u6587\u4ef6\uff0c\u5728\u9879\u76ee\u7ea7\u522b\u7edf\u4e00\u7ba1\u7406\u3002

    "},{"location":"user_manual/project_management/file_management/#1","title":"1 \u6a21\u5757\u7ba1\u7406","text":"

    \u65b0\u5efa\u6a21\u5757\u65f6\uff0c\u9009\u62e9\u3010\u6a21\u5757\u3011\uff0c\u53ef\u5bf9\u6a21\u5757\u76ee\u5f55\u8fdb\u884c\u91cd\u547d\u540d\u3001\u65b0\u589e\u3001\u5220\u9664\u7b49\u64cd\u4f5c

    "},{"location":"user_manual/project_management/file_management/#2","title":"2.\u4e0a\u4f20\u6587\u4ef6","text":"

    \u53ef\u4e0a\u4f20 JAR\u3001CSV\u3001TXT\u3001JMX\u3001XLSX \u7b49\u591a\u79cd\u683c\u5f0f\u7684\u6587\u4ef6\uff0c\u4e0a\u4f20\u7684 JAR \u53ef\u5728\u63a5\u53e3\u524d\u540e\u7f6e\u811a\u672c\u4e2d\u8fdb\u884c\u4f7f\u7528

    \u7528\u4e8e\u63a5\u53e3\u6d4b\u8bd5\u7684\u8981\u5f00\u542f\u52a0\u8f7d Jar \u5305\u7684 Switch \u5f00\u5173\uff0c\u5426\u5219\u5728\u63a5\u53e3\u524d\u540e\u7f6e\u811a\u672c\u4e2d\u5f15\u7528\u8be5 Jar \u5305\u4e0d\u751f\u6548

    \u4e0a\u4f20\u7684\u6587\u4ef6\u53ef\u5728\u6027\u80fd\u6d4b\u8bd5\u9875\u9762\u8fdb\u884c\u9009\u62e9

    "},{"location":"user_manual/project_management/file_management/#3","title":"3 \u67e5\u770b\u6587\u4ef6","text":"

    \u70b9\u51fb\u67e5\u770b\u6309\u94ae\uff0c\u53ef\u67e5\u770b\u8be5\u6587\u4ef6\u7684\u8be6\u7ec6\u4fe1\u606f\uff0c\u4e5f\u53ef\u5728\u8be5\u9875\u9762\u589e\u52a0\u6587\u4ef6\u7684\u63cf\u8ff0

    \u53ef\u70b9\u51fb\u4e0a\u4e00\u4e2a/\u4e0b\u4e00\u4e2a\u6309\u94ae\uff0c\u5207\u6362\u5f53\u524d\u67e5\u770b\u7684\u6587\u4ef6

    \u53ef\u5bf9\u8be5\u6587\u4ef6\u51fa\u73b0\u4e0a\u4f20\uff0c\u4e0b\u8f7d\uff0c\u5220\u9664\u7b49\u64cd\u4f5c

    "},{"location":"user_manual/project_management/file_management/#4","title":"4 \u6587\u4ef6\u4e0b\u8f7d","text":"

    \u53ef\u70b9\u51fb\u5217\u8868\u540e\u9762\u4e0b\u8f7d\u6309\u94ae\u8fdb\u884c\u6587\u4ef6\u4e0b\u8f7d\uff0c\u4e5f\u53ef\u5728\u6587\u4ef6\u67e5\u770b\u9875\u9762\u8fdb\u884c\u6587\u4ef6\u4e0b\u8f7d

    "},{"location":"user_manual/project_management/file_management/#5","title":"5 \u6587\u4ef6\u5220\u9664","text":"

    \u53ef\u70b9\u51fb\u5217\u8868\u540e\u9762\u5220\u9664\u6309\u94ae\u8fdb\u884c\u6587\u4ef6\u5220\u9664\uff0c\u4e5f\u53ef\u5728\u6587\u4ef6\u67e5\u770b\u9875\u9762\u8fdb\u884c\u6587\u4ef6\u5220\u9664

    "},{"location":"user_manual/project_management/file_management/#6","title":"6 \u7b2c\u4e09\u65b9\u4ed3\u5e93","text":"

    \u65b0\u5efa\u6a21\u5757\u65f6\uff0c\u9009\u62e9\u3010\u5b58\u50a8\u5e93\u3011\uff0c\u652f\u6301\u5bf9\u63a5\u7b2c\u4e09\u65b9\u4ed3\u5e93\uff08\u5982 GitHub\u3001GitLab \u548c Gitee\uff09\uff0c\u586b\u5199\u76f8\u5e94\u4fe1\u606f\u3002

    \u70b9\u51fb\u3010\u4e0a\u4f20\u6587\u4ef6\u3011\u6309\u94ae\uff0c\u586b\u5199\u76f8\u5173\u4fe1\u606f\uff0c\u70b9\u51fb\u786e\u5b9a\u6309\u94ae\u5373\u53ef

    \u70b9\u51fb\u3010\u67e5\u770b\u3011\u6309\u94ae\uff0c\u53ef\u67e5\u770b\u6587\u4ef6\u8be6\u7ec6\u4fe1\u606f

    \u5207\u6362\u5230\u3010\u5173\u8054\u7528\u4f8b\u3011\u548c\u3010\u7248\u672c\u5386\u53f2\u3011\u9875\u9762\uff0c\u53ef\u67e5\u770b\u5177\u4f53\u8be6\u7ec6\u4fe1\u606f

    "},{"location":"user_manual/project_management/notice_management/","title":"\u6d88\u606f\u8bbe\u7f6e","text":""},{"location":"user_manual/project_management/notice_management/#1","title":"1 \u6d88\u606f\u8bbe\u7f6e","text":"

    \u9488\u5bf9\u7cfb\u7edf\u7684\u6bcf\u4e2a\u529f\u80fd\u90fd\u652f\u6301\u7528\u6237\u6839\u636e\u9700\u8981\u8fdb\u884c\u3010\u9879\u76ee\u7ea7\u522b\u3011\u7684\u4efb\u52a1\u901a\u77e5\u8bbe\u7f6e\u3002\u70b9\u51fb\u3010\u9879\u76ee\u7ba1\u7406\u3011-\u3010\u66f4\u591a\u9009\u9879\u3011-\u3010\u6d88\u606f\u8bbe\u7f6e\u3011\u5373\u53ef\u8fdb\u5165\u6d88\u606f\u8bbe\u7f6e\u9875\u9762\uff0c\u5e76\u4e14\u7cfb\u7edf\u652f\u6301\u63a5\u6536\u4eba\u5458\u6309\u89d2\u8272\u6216\u6307\u5b9a\u5177\u4f53\u4eba\u5458\uff1b\u540c\u65f6\u652f\u6301\u7ad9\u5185\u901a\u77e5\u548c\u7ad9\u5916\u901a\u77e5\u591a\u79cd\u901a\u77e5\u65b9\u5f0f\u7b49\u529f\u80fd\u3002

    • \u6d4b\u8bd5\u8ddf\u8e2a\u4efb\u52a1\u901a\u77e5 \u6d4b\u8bd5\u8ddf\u8e2a\u7684\u6bcf\u4e2a\u9875\u9762\uff1a\u9996\u9875\u3001\u6d4b\u8bd5\u7528\u4f8b\u3001\u7528\u4f8b\u8bc4\u5ba1\u3001\u6d4b\u8bd5\u8ba1\u5212\u3001\u6d4b\u8bd5\u62a5\u544a\u3001\u7f3a\u9677\u7ba1\u7406\u7b49\u9875\u9762\u90fd\u652f\u6301\u81ea\u5b9a\u4e49\u4efb\u52a1\u901a\u77e5\u3002

    \u540c\u65f6\u6d4b\u8bd5\u8ddf\u8e2a\u9875\u9762\u4e0a\u7684\u6bcf\u4e2a\u5173\u952e\u64cd\u4f5c\uff0c\u90fd\u53ef\u4ee5\u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u4efb\u52a1\u901a\u77e5\u3002\u6bd4\u5982\u6d4b\u8bd5\u8ba1\u5212\u7684\u65b0\u5efa\u3001\u66f4\u65b0\u3001\u5220\u9664\u3001\u6267\u884c\u5b8c\u6210\u7b49\uff0c\u90fd\u53ef\u4ee5\u8bbe\u7f6e\u76f8\u5e94\u7684\u4efb\u52a1\u901a\u77e5\u3002

    • \u63a5\u53e3\u6d4b\u8bd5\u4efb\u52a1\u901a\u77e5 \u63a5\u53e3\u6d4b\u8bd5\u7684\u6bcf\u4e2a\u9875\u9762\uff1a\u9996\u9875\u3001\u63a5\u53e3\u5b9a\u4e49\u3001\u63a5\u53e3\u81ea\u52a8\u5316\u3001\u6d4b\u8bd5\u62a5\u544a\u7b49\u9875\u9762\u90fd\u652f\u6301\u81ea\u5b9a\u4e49\u4efb\u52a1\u901a\u77e5\u3002

    \u540c\u65f6\u63a5\u53e3\u6d4b\u8bd5\u9875\u9762\u4e0a\u7684\u6bcf\u4e2a\u5173\u952e\u64cd\u4f5c\uff0c\u90fd\u53ef\u4ee5\u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u4efb\u52a1\u901a\u77e5\u3002\u6bd4\u5982\u63a5\u53e3\u5b9a\u4e49\u4e2d API \u76f8\u5173\u7684\u589e\u5220\u6539\u3001CASE \u76f8\u5173\u7684\u589e\u5220\u6539\u7b49\u64cd\u4f5c\uff0c\u90fd\u53ef\u4ee5\u8bbe\u7f6e\u76f8\u5e94\u7684\u4efb\u52a1\u901a\u77e5\u3002

    • \u6027\u80fd\u6d4b\u8bd5\u4efb\u52a1\u901a\u77e5 \u6027\u80fd\u6d4b\u8bd5\u7684\u6bcf\u4e2a\u9875\u9762\uff1a\u6d4b\u8bd5\u3001\u6d4b\u8bd5\u62a5\u544a\u7b49\u9875\u9762\u90fd\u652f\u6301\u81ea\u5b9a\u4e49\u4efb\u52a1\u901a\u77e5\u3002

    \u540c\u65f6\u6027\u80fd\u6d4b\u8bd5\u9875\u9762\u4e0a\u7684\u6bcf\u4e2a\u5173\u952e\u64cd\u4f5c\uff0c\u90fd\u53ef\u4ee5\u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u4efb\u52a1\u901a\u77e5\u3002\u6bd4\u5982\u6d4b\u8bd5\u7684\u65b0\u5efa\u3001\u66f4\u65b0\u3001\u5220\u9664\u3001\u6267\u884c\u5b8c\u6210\u7b49\u64cd\u4f5c\uff0c\u90fd\u53ef\u4ee5\u8bbe\u7f6e\u76f8\u5e94\u7684\u4efb\u52a1\u901a\u77e5\u3002

    • Jenkins\u4efb\u52a1\u901a\u77e5 \u81ea\u52a8\u5316\u901a\u8fc7 Jenkins \u6301\u7eed\u90e8\u7f72\u6765\u542f\u52a8 MeterSphere \u81ea\u52a8\u5316\u811a\u672c\u65f6\uff0c\u53ef\u4ee5\u5728\u8fd9\u91cc\u8bbe\u7f6e\u6b64\u7c7b\u578b\u7684\u4efb\u52a1\u901a\u77e5\u3002

    Jenkins \u4efb\u52a1\u901a\u77e5\u81ea\u52a8\u5316\u901a\u8fc7 Jenkins \u6301\u7eed\u90e8\u7f72\u6765\u542f\u52a8 MeterSphere \u81ea\u52a8\u5316\u811a\u672c\u65f6\uff0c\u53ef\u4ee5\u5728\u8fd9\u91cc\u8bbe\u7f6e\u6b64\u7c7b\u578b\u7684\u4efb\u52a1\u901a\u77e5\u3002

    "},{"location":"user_manual/project_management/notice_management/#2-x-pack","title":"2 \u81ea\u5b9a\u4e49\u6d88\u606f\u6a21\u677f (X-Pack)","text":"

    \u70b9\u51fb\u3010\u6a21\u677f\u3011\u6309\u94ae\uff0c\u6765\u5230\u81ea\u5b9a\u4e49\u6a21\u677f\u9875\u9762\uff0c\u53ef\u4ee5\u70b9\u51fb\u3010\u6a21\u677f\u3011\u540e\u7684\u3010i\u3011\uff0c\u4f1a\u6709\u4e00\u4e9b\u53d8\u91cf\u8bf4\u660e\u53ca\u5176\u5f15\u7528\u65b9\u5f0f\uff0c\u53ef\u4ee5\u7528\u4e8e\u81ea\u5b9a\u4e49\u5185\u5bb9\u4e2d\u3002

    "},{"location":"user_manual/project_management/operation_log/","title":"\u64cd\u4f5c\u65e5\u5fd7","text":"

    \u663e\u793a\u767b\u5f55\u7528\u6237\u5f53\u524d\u6240\u5904\u7684\u3010\u9879\u76ee\u3011\u7684\u6d4b\u8bd5\u8d44\u6e90\u65e5\u5fd7\u4fe1\u606f\uff0c\u5e76\u4e14\u53ef\u4ee5\u4f7f\u7528\u9ad8\u7ea7\u67e5\u8be2\u6765\u5feb\u901f\u67e5\u627e\u76f8\u5173\u65e5\u5fd7\u7cfb\u7edf\u3002

    "},{"location":"user_manual/project_management/operation_log/#1","title":"1 \u64cd\u4f5c\u65e5\u5fd7","text":"

    \u8be6\u7ec6\u529f\u80fd\u64cd\u4f5c\u53ca\u8bf4\u660e\u53c2\u8003 \u7cfb\u7edf->\u5de5\u4f5c\u7a7a\u95f4->\u64cd\u4f5c\u65e5\u5fd7\u3002

    "},{"location":"user_manual/project_management/project_environment/","title":"\u9879\u76ee\u73af\u5883","text":"

    \u663e\u793a\u5f53\u524d\u9879\u76ee\u7684\u6240\u6709\u73af\u5883\u4fe1\u606f\uff0c\u540c\u65f6\u53ef\u4ee5\u7ef4\u62a4\u9879\u76ee\u73af\u5883\u4fe1\u606f\u3001\u5bfc\u5165\u548c\u5bfc\u51fa\u73af\u5883\u4fe1\u606f\u3002

    "},{"location":"user_manual/project_management/project_environment/#1","title":"1 \u9879\u76ee\u73af\u5883","text":"

    \u3010\u521b\u5efa\u73af\u5883\u3011\u3001\u3010\u5bfc\u5165\u3011\u3001\u3010\u5bfc\u51fa\u3011\u3001\u3010\u7f16\u8f91\u3011\u3001\u3010\u590d\u5236\u3011\u3001\u3010\u5220\u9664\u3011\u7b49\u8be6\u7ec6\u529f\u80fd\u64cd\u4f5c\u53ca\u8bf4\u660e\u53c2\u8003 \u7cfb\u7edf\u8bbe\u7f6e->\u5de5\u4f5c\u7a7a\u95f4->\u73af\u5883\u7ba1\u7406\u3002

    "},{"location":"user_manual/project_management/project_info/","title":"\u9879\u76ee\u4fe1\u606f","text":"

    \u663e\u793a\u5f53\u524d\u9879\u76ee\u7684\u57fa\u672c\u4fe1\u606f\u548c\u9879\u76ee\u57fa\u672c\u64cd\u4f5c\u529f\u80fd\u3002

    "},{"location":"user_manual/project_management/project_info/#1","title":"1 \u9879\u76ee\u57fa\u7840\u914d\u7f6e","text":"

    \u9ed8\u8ba4\u5728\u3010\u9879\u76ee\u4fe1\u606f\u3011\u9875\u9762\uff0c\u8be5\u9875\u9762\u5206\u4e3a\u5de6\u53f3\u4e24\u90e8\u5206\uff0c\u5de6\u8fb9\u662f\u9879\u76ee\u57fa\u672c\u4fe1\u606f\uff1b\u53f3\u8fb9\u662f\u9879\u76ee\u57fa\u672c\u64cd\u4f5c\u529f\u80fd\uff0c\u6b64\u529f\u80fd\u5728\u9875\u9762\u9876\u90e8\u4e5f\u6709\u663e\u793a\u3002

    "},{"location":"user_manual/project_management/project_user/","title":"\u9879\u76ee\u6210\u5458","text":"

    \u4e3a\u9879\u76ee\u6307\u5b9a\u9879\u76ee\u6210\u5458\uff0c\u5373\u54ea\u4e9b\u6210\u5458\u6709\u9879\u76ee\u89d2\u8272\uff0c\u540c\u65f6\u53ef\u5bf9\u5f53\u524d\u9879\u76ee\u6210\u5458\u8fdb\u884c\u6dfb\u52a0\u3001\u4fee\u6539\u53ca\u5220\u9664\u7684\u64cd\u4f5c\u3002

    "},{"location":"user_manual/project_management/project_user/#1","title":"1 \u9879\u76ee\u6210\u5458","text":"

    \u70b9\u51fb\u3010\u9879\u76ee\u6210\u5458\u3011\u83dc\u5355\uff0c\u5373\u53ef\u67e5\u770b\u5f53\u524d\u6709\u9879\u76ee\u89d2\u8272\u7684\u6210\u5458\u3002

    \u70b9\u51fb\u9875\u9762\u5de6\u4e0a\u89d2\u3010\u6dfb\u52a0\u6210\u5458\u3011\uff0c\u53ef\u6839\u636e\u7528\u6237 ID \u548c\u7528\u6237\u90ae\u7bb1\u641c\u7d22\u9700\u8981\u6dfb\u52a0\u7684\u7528\u6237\uff0c\u53ef\u9009\u62e9\u7528\u6237\u7ec4\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u6309\u94ae\u5b8c\u6210\u9879\u76ee\u6210\u5458\u6dfb\u52a0\u3002

    \u6dfb\u52a0\u5b8c\u6210\u540e\u53ef\u5728\u6210\u5458\u5217\u8868\u4e2d\u67e5\u770b\u5230\u6dfb\u52a0\u7684\u6210\u5458\uff0c\u5728\u6210\u5458\u7684\u64cd\u4f5c\u5217\u4e2d\u53ef\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u548c\u3010\u5220\u9664\u3011\u8fdb\u884c\u6210\u5458\u4fee\u6539\u548c\u6210\u5458\u5220\u9664\u64cd\u4f5c\u3002

    "},{"location":"user_manual/project_management/template_management/","title":"\u6a21\u7248\u7ba1\u7406","text":"

    \u7cfb\u7edf\u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u3010\u9879\u76ee\u7ea7\u522b\u3011\u7684\u3010\u6a21\u677f\u5b57\u6bb5\u3011\u3001\u3010\u7528\u4f8b\u6a21\u677f\u3011\u3001\u3010\u7f3a\u9677\u6a21\u677f\u3011\u3001\u3010\u63a5\u53e3\u6a21\u677f\u3011\u3002

    "},{"location":"user_manual/project_management/template_management/#1","title":"1 \u6a21\u677f\u5b57\u6bb5","text":"

    \u5728\u81ea\u5b9a\u4e49\u6a21\u677f\u524d\uff08\u7528\u4f8b&\u7f3a\u9677\uff09\uff0c\u9700\u8981\u5148\u81ea\u5b9a\u4e49\u6a21\u677f\u4e2d\u5b57\u6bb5\u7684\u57fa\u672c\u5c5e\u6027\u3002\u70b9\u51fb\u3010\u9879\u76ee\u8bbe\u7f6e\u3011-\u3010\u66f4\u591a\u9009\u9879\u3011-\u3010\u6a21\u677f\u7ba1\u7406\u3011-\u3010\u6a21\u677f\u5b57\u6bb5\u3011\uff0c\u5373\u53ef\u67e5\u770b\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u7684\u6240\u6709\u6a21\u677f\u5b57\u6bb5\u5217\u8868\u3002

    • \u521b\u5efa\u5b57\u6bb5 \u70b9\u51fb\u9875\u9762\u5de6\u4e0a\u89d2\u3010\u521b\u5efa\u5b57\u6bb5\u3011\uff0c\u8bbe\u7f6e\u5b57\u6bb5\u7684\u57fa\u672c\u4fe1\u606f\uff1a\u540d\u79f0\u3001\u5907\u6ce8\u3001\u4f7f\u7528\u573a\u666f\u3001\u5b57\u6bb5\u7c7b\u578b\u7b49\u57fa\u672c\u4fe1\u606f\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u5b8c\u6210\u6a21\u677f\u5b57\u6bb5\u6dfb\u52a0\u3002

    \u4e2a\u522b\u5b57\u6bb5\u8bf4\u660e

    \u3010\u4f7f\u7528\u573a\u666f\u3011\uff1a\u8bbe\u7f6e\u5b9a\u4e49\u7684\u5b57\u6bb5\u4f7f\u7528\u4e8e\u5177\u4f53\u7684\u6a21\u677f\u4e2d\u3002 \u3010\u5b57\u6bb5\u7c7b\u578b\u3011\uff1a\u7cfb\u7edf\u63d0\u4f9b\u591a\u79cd\u5b57\u6bb5\u7c7b\u578b\u53ef\u4f9b\u9009\u62e9\uff0c\u6839\u636e\u4e0d\u540c\u5b57\u6bb5\u7c7b\u578b\uff0c\u7cfb\u7edf\u81ea\u52a8\u63a7\u5236\u5b57\u6bb5\u7684\u663e\u793a\u3001\u8bbe\u7f6e\u548c\u5c5e\u6027\u7b49\u3002\u5b57\u6bb5\u652f\u6301\u7684\u7c7b\u578b\u6709\u8f93\u5165\u6846\u3001\u6587\u672c\u6846\u3001\u4e0b\u6765\u9009\u62e9\u6846\uff08\u5355\u9009&\u591a\u9009\uff09\u3001\u65e5\u671f\u65f6\u95f4\u5668\u3001\u6570\u503c\u7b49\u7b49\u7c7b\u578b\u3002

    • \u7ef4\u62a4\u5b57\u6bb5 \u521b\u5efa\u5b8c\u6210\u540e\u53ef\u5728\u6a21\u677f\u5b57\u6bb5\u5217\u8868\u4e2d\u67e5\u770b\u5230\u6dfb\u52a0\u7684\u6a21\u677f\u5b57\u6bb5\uff0c\u5728\u81ea\u5b9a\u4e49\u5b57\u6bb5\u4fe1\u606f\u4e2d\u53ef\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u3001\u3010\u590d\u5236\u3011\u548c\u3010\u5220\u9664\u3011\u6309\u94ae\u8fdb\u884c\u6a21\u677f\u5b57\u6bb5\u4fee\u6539\u3001\u590d\u5236\u548c\u5220\u9664\u64cd\u4f5c\u3002

    "},{"location":"user_manual/project_management/template_management/#2","title":"2 \u7528\u4f8b\u6a21\u7248","text":"

    \u7528\u4f8b\u6a21\u677f\u5373\u5f53\u524d\u9879\u76ee\u4e0b\u90fd\u53ef\u4f7f\u7528\u7684\u6d4b\u8bd5\u7528\u4f8b\u6a21\u677f\uff0c\u5e76\u4e14\u53ef\u5bf9\u7528\u4f8b\u6a21\u677f\u6dfb\u52a0\u3001\u4fee\u6539\u3001\u590d\u5236\u53ca\u79fb\u9664\u7684\u64cd\u4f5c\u3002\u70b9\u51fb\u9875\u9762\u3010\u9879\u76ee\u8bbe\u7f6e\u3011-\u3010\u66f4\u591a\u9009\u9879\u3011-\u3010\u6a21\u7248\u7ba1\u7406\u3011-\u3010\u7528\u4f8b\u6a21\u7248\u3011\uff0c\u5373\u53ef\u67e5\u770b\u5f53\u524d\u9879\u76ee\u4e2d\u7684\u6240\u6709\u7528\u4f8b\u6a21\u677f\u5217\u8868\u3002

    • \u521b\u5efa\u6a21\u677f \u70b9\u51fb\u9875\u9762\u5de6\u4e0a\u89d2\u3010\u521b\u5efa\u6a21\u677f\u3011\uff0c\u521b\u5efa\u65b0\u7684\u7528\u4f8b\u6a21\u677f\uff0c\u8bbe\u7f6e\u7528\u4f8b\u57fa\u672c\u4fe1\u606f\u3001\u6a21\u677f\u8bbe\u7f6e\u660e\u7ec6\u4fe1\u606f\u7b49\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u5b8c\u6210\u7528\u4f8b\u6a21\u677f\u6dfb\u52a0\u3002\u5982\u679c\u6a21\u677f\u6dfb\u52a0\u7684\u5b57\u6bb5\u4fe1\u606f\u4e0d\u5b58\u5728\uff0c\u53ef\u4ee5\u5728\u3010\u9879\u76ee\u8bbe\u7f6e\u3011-\u3010\u66f4\u591a\u9009\u9879\u3011-\u3010\u6a21\u7248\u7ba1\u7406\u3011-\u3010\u6a21\u7248\u5b57\u6bb5\u3011\u4e2d\u8fdb\u884c\u521b\u5efa\uff0c\u7136\u540e\u5728\u6b64\u5f15\u7528\u5373\u53ef\u3002

    • \u7ef4\u62a4\u6a21\u677f \u521b\u5efa\u5b8c\u6210\u540e\u53ef\u5728\u7528\u4f8b\u6a21\u677f\u5217\u8868\u4e2d\u67e5\u770b\u5230\u6dfb\u52a0\u7684\u7528\u4f8b\u6a21\u677f\uff0c\u5728\u7528\u4f8b\u6a21\u677f\u4fe1\u606f\u4e2d\u53ef\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u3001\u3010\u590d\u5236\u3011\u548c\u3010\u5220\u9664\u3011\u6309\u94ae\u8fdb\u884c\u7528\u4f8b\u6a21\u677f\u4fee\u6539\u3001\u590d\u5236\u548c\u5220\u9664\u64cd\u4f5c\u3002

    • \u5f15\u7528\u6a21\u677f \u521b\u5efa\u7528\u4f8b\u6a21\u677f\u540e\uff0c\u9700\u8981\u5728\u9879\u76ee\u4e2d\u4f7f\u7528\u521b\u5efa\u7684\u6a21\u677f\uff0c\u53ef\u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e\u3011-\u3010\u9879\u76ee\u7ba1\u7406\u3011-\u3010\u7f16\u8f91\u3011\u9875\u9762\uff0c\u9009\u62e9\u8981\u4f7f\u7528\u7684\u7528\u4f8b\u6a21\u677f

    "},{"location":"user_manual/project_management/template_management/#3","title":"3 \u7f3a\u9677\u6a21\u7248","text":"

    \u5728\u3010\u6a21\u7248\u7ba1\u7406\u3011-\u3010\u7f3a\u9677\u6a21\u7248\u3011\uff0c\u4f1a\u663e\u793a\u5f53\u524d\u9879\u76ee\u4e0b\u7684\u7f3a\u9677\u6a21\u7248\u5217\u8868\uff0c\u652f\u6301\u67e5\u8be2\u3001\u7f16\u8f91\u3001\u590d\u5236\u3001\u5220\u9664\u7b49\u64cd\u4f5c\u3002

    • \u521b\u5efa\u7f3a\u9677\u6a21\u677f \u70b9\u51fb\u9875\u9762\u5de6\u4e0a\u89d2\u3010\u521b\u5efa\u7f3a\u9677\u6a21\u677f\u3011\u65b0\u5efa\u7f3a\u9677\u6a21\u677f\uff0c\u8bbe\u7f6e\u7528\u4f8b\u57fa\u672c\u4fe1\u606f\u3001\u6a21\u677f\u8bbe\u7f6e\u660e\u7ec6\u4fe1\u606f\u7b49\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u5b8c\u6210\u9879\u76ee\u7f3a\u9677\u6a21\u677f\u6dfb\u52a0\u3002\u5982\u679c\u6a21\u677f\u6dfb\u52a0\u5b57\u6bb5\u4fe1\u606f\u4e0d\u5b58\u5728\uff0c\u53ef\u4ee5\u5728\u3010\u9879\u76ee\u8bbe\u7f6e\u3011-\u3010\u66f4\u591a\u9009\u9879\u3011-\u3010\u6a21\u7248\u7ba1\u7406\u3011-\u3010\u6a21\u7248\u5b57\u6bb5\u3011\u4e2d\u8fdb\u884c\u521b\u5efa\uff0c\u7136\u540e\u5728\u6b64\u5f15\u7528\u5373\u53ef\u3002

    • \u7ef4\u62a4\u5b57\u6bb5 \u521b\u5efa\u5b8c\u6210\u540e\u53ef\u5728\u7f3a\u9677\u6a21\u677f\u5217\u8868\u4e2d\u67e5\u770b\u5230\u6dfb\u52a0\u7684\u6a21\u677f\uff0c\u5728\u7f3a\u9677\u6a21\u677f\u4fe1\u606f\u4e2d\u53ef\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u3001\u3010\u590d\u5236\u3011\u548c\u3010\u5220\u9664\u3011\u6309\u94ae\u8fdb\u884c\u7f3a\u9677\u6a21\u677f\u4fee\u6539\u3001\u590d\u5236\u548c\u5220\u9664\u7b49\u64cd\u4f5c\u3002

    • \u5f15\u7528\u6a21\u677f \u521b\u5efa\u7f3a\u9677\u6a21\u677f\u540e\uff0c\u9700\u8981\u5728\u9879\u76ee\u4e2d\u4f7f\u7528\u521b\u5efa\u7684\u6a21\u677f\uff0c\u53ef\u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e\u3011-\u3010\u9879\u76ee\u7ba1\u7406\u3011-\u3010\u7f16\u8f91\u3011\u9875\u9762\uff0c\u9009\u62e9\u8981\u4f7f\u7528\u7684\u7f3a\u9677\u6a21\u677f

    "},{"location":"user_manual/project_management/template_management/#4","title":"4 \u63a5\u53e3\u6a21\u677f","text":"

    \u63a5\u53e3\u6d4b\u8bd5\u652f\u6301\u81ea\u5b9a\u4e49\u63a5\u53e3\u6a21\u677f\uff0c\u652f\u6301\u67e5\u8be2\u3001\u7f16\u8f91\u3001\u590d\u5236\u3001\u5220\u9664\u7b49\u64cd\u4f5c\u3002

    • \u521b\u5efa\u63a5\u53e3\u6a21\u677f \u70b9\u51fb\u9875\u9762\u5de6\u4e0a\u89d2\u3010\u521b\u5efa\u6a21\u677f\u3011\u65b0\u5efa\u63a5\u53e3\u9677\u6a21\u677f\uff0c\u586b\u5199\u57fa\u672c\u4fe1\u606f\u3001\u6a21\u677f\u8bbe\u7f6e\u7b49\u4fe1\u606f\uff0c\u6dfb\u52a0\u5b57\u6bb5\u6216\u8bbe\u7f6e\u81ea\u5b9a\u4e49\u5b57\u6bb5\u540e\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u5373\u53ef\u3002

    • \u7ef4\u62a4\u6a21\u677f \u521b\u5efa\u5b8c\u6210\u540e\u53ef\u5728\u63a5\u53e3\u6a21\u677f\u5217\u8868\u4e2d\u67e5\u770b\u5230\u6dfb\u52a0\u7684\u63a5\u53e3\u6a21\u677f\uff0c\u5728\u63a5\u53e3\u6a21\u677f\u4fe1\u606f\u4e2d\u53ef\u5bf9\u6a21\u677f\u8fdb\u884c\u3010\u7f16\u8f91\u3011\u3001\u3010\u590d\u5236\u3011\u548c\u3010\u5220\u9664\u3011\u7b49\u64cd\u4f5c\u3002

    • \u5f15\u7528\u6a21\u677f \u521b\u5efa\u63a5\u53e3\u6a21\u677f\u540e\uff0c\u9700\u8981\u5728\u9879\u76ee\u4e2d\u4f7f\u7528\u521b\u5efa\u7684\u6a21\u677f\uff0c\u53ef\u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e\u3011-\u3010\u9879\u76ee\u7ba1\u7406\u3011-\u3010\u7f16\u8f91\u3011\u9875\u9762\uff0c\u9009\u62e9\u8981\u4f7f\u7528\u7684\u63a5\u53e3\u6a21\u677f

    \u5728\u521b\u5efa\u63a5\u53e3\u5b9a\u4e49\u65f6\uff0c\u63a5\u53e3\u57fa\u7840\u4fe1\u606f\u4e2d\u4f1a\u5c55\u793a\u81ea\u5b9a\u4e49\u7684\u6a21\u677f\u5b57\u6bb5\u3002

    "},{"location":"user_manual/project_management/usergroup_permission/","title":"\u7528\u6237\u7ec4\u4e0e\u6743\u9650","text":"

    \u7ef4\u62a4\u5f53\u524d\u9879\u76ee\u7528\u6237\u53ca\u6743\u9650\u3002

    "},{"location":"user_manual/project_management/usergroup_permission/#1","title":"1 \u65b0\u589e\u7528\u6237\u7ec4","text":"

    \u70b9\u51fb\u3010\u521b\u5efa\u7528\u6237\u7ec4\u3011\uff0c\u65b0\u589e\u5f53\u524d\u9879\u76ee\u7684\u7528\u6237\u7ec4\u4fe1\u606f\u3002\u8be6\u7ec6\u529f\u80fd\u64cd\u4f5c\u53ca\u8bf4\u660e\u53c2\u8003 \u7cfb\u7edf\u8bbe\u7f6e->\u7cfb\u7edf->\u7528\u6237\u7ec4\u4e0e\u6743\u9650->\u521b\u5efa\u7528\u6237\u7ec4\u3002

    "},{"location":"user_manual/project_management/usergroup_permission/#2","title":"2 \u8bbe\u7f6e\u7528\u6237\u7ec4\u6743\u9650","text":"

    \u70b9\u51fb\u3010\u8bbe\u7f6e\u6743\u9650\u3011\u4e3a\u7528\u6237\u7ec4\u8fdb\u884c\u6743\u9650\u8bbe\u7f6e\u3002\u8be6\u7ec6\u529f\u80fd\u64cd\u4f5c\u53ca\u8bf4\u660e\u53c2\u8003 \u7cfb\u7edf\u8bbe\u7f6e->\u7cfb\u7edf->\u7528\u6237\u7ec4\u4e0e\u6743\u9650->\u8bbe\u7f6e\u6743\u9650\u3002

    "},{"location":"user_manual/project_management/usergroup_permission/#3","title":"3 \u8bbe\u7f6e\u7528\u6237\u7ec4\u6210\u5458","text":"

    \u5728\u7528\u6237\u7ec4\u5217\u8868\u4fe1\u606f\u6210\u5458\u5904\uff0c\u70b9\u51fb\u4fe1\u606f\u5217\u91cc\u7684\u3010\u6570\u5b57\u3011\u4e3a\u7528\u6237\u7ec4\u8fdb\u884c\u6210\u5458\u8bbe\u7f6e\u3002\u8be6\u7ec6\u529f\u80fd\u64cd\u4f5c\u53ca\u8bf4\u660e\u53c2\u8003 \u7cfb\u7edf\u8bbe\u7f6e->\u7cfb\u7edf->\u7528\u6237\u7ec4\u4e0e\u6743\u9650->\u6210\u5458\u8bbe\u7f6e\u3002

    "},{"location":"user_manual/project_management/version%20management/","title":"\u7248\u672c\u7ba1\u7406","text":"

    \u4e0d\u540c\u7248\u672c\u7684\u9879\u76ee\u6709\u4e0d\u540c\u7248\u672c\u7684\u7528\u4f8b\uff0c\u540e\u4e00\u4e2a\u7248\u672c\u662f\u5728\u524d\u4e00\u4e2a\u7248\u672c\u7684\u57fa\u7840\u4e0a\u4e0d\u65ad\u66f4\u65b0\u5b8c\u5584

    "},{"location":"user_manual/project_management/version%20management/#1-x-pack","title":"1 \u7248\u672c\u7ba1\u7406 (X-Pack)","text":"

    \u3010\u9879\u76ee\u8bbe\u7f6e\u3011-\u3010\u66f4\u591a\u9009\u9879\u3011-\u3010\u7248\u672c\u7ba1\u7406\u3011\u9875\u9762\uff0c\u542f\u7528\u7248\u672c\u7ba1\u7406\uff0c\u70b9\u51fb\u3010\u521b\u5efa\u7248\u672c\u3011\u3002

    \u5728\u3010\u521b\u5efa\u7248\u672c\u3011\u9875\u9762\uff0c\u8f93\u5165\u57fa\u672c\u914d\u7f6e\u4fe1\u606f\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u6216\u8005\u3010\u4fdd\u5b58\u5e76\u521b\u5efa\u3011\u5373\u53ef\u3002

    \u521b\u5efa\u7248\u672c\u5b8c\u6210\u540e\uff0c\u662f\u5426\u542f\u7528\u3010\u72b6\u6001\u3011\u548c\u3010\u6700\u65b0\u7248\u3011\u3002

    \u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u8fdb\u5165\u7f16\u8f91\u9875\u9762\uff0c\u7f16\u8f91\u5b8c\u6210\u540e\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u5373\u53ef\u3002

    \u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u6309\u7167\u63d0\u793a\u8f93\u5165\u3010DELETE-v1.0.0\u3011\uff0c\u8be5\u7248\u672c\u53f7\u5c31\u88ab\u5220\u9664\u4e86\u3002

    "},{"location":"user_manual/report_statistics/project_statistics/","title":"\u9879\u76ee\u62a5\u8868","text":"

    \u62a5\u8868\u7edf\u8ba1\u9875\u9762\u4e3b\u8981\u5c55\u793a\u62a5\u8868\u7c7b\u578b\uff0c\u7528\u6237\u53ef\u6839\u636e\u4e0d\u540c\u62a5\u8868\u7c7b\u578b\u521b\u5efa\u62a5\u8868\u3002

    "},{"location":"user_manual/report_statistics/project_statistics/#1","title":"1 \u6d4b\u8bd5\u7528\u4f8b\u7edf\u8ba1","text":"

    \u70b9\u51fb\u3010\u6d4b\u8bd5\u7528\u4f8b\u7edf\u8ba1\u3011\uff0c\u8fdb\u5165\u6d4b\u8bd5\u7528\u4f8b\u7edf\u8ba1\u9875\u9762\uff0c\u53ef\u4ee5\u770b\u5230\u5df2\u521b\u5efa\u7684\u62a5\u8868\u3002

    • \u521b\u5efa\u65b0\u62a5\u8868

    \u9009\u9879\u63d0\u4f9b\u6c34\u5e73\u8f74\u7cfb\u5217\u3001\u7eb5\u5411\u8f74\u7cfb\u5217\uff0c\u521b\u5efa\u65f6\u95f4\u4e09\u4e2a\u7ef4\u5ea6\u751f\u6210\u62a5\u544a\u3002

    • \u6c34\u5e73\u8f74\u7cfb\u5217

    \u6c34\u5e73\u8f74\u53ea\u652f\u6301\u5355\u9009\u3002

    • \u7eb5\u5411\u8f74\u7cfb\u5217

    \u7eb5\u5411\u8f74\u652f\u6301\u591a\u9009\u3002

    • \u521b\u5efa\u65f6\u95f4

    \u521b\u5efa\u65f6\u95f4\u652f\u6301\u52a8\u6001\u65f6\u95f4\u548c\u56fa\u5b9a\u65f6\u95f4\u751f\u6210\u62a5\u8868\u3002

    • \u66f4\u591a\u9009\u9879

    \u66f4\u591a\u9009\u9879\u53ef\u6839\u636e\u521b\u5efa\u4eba\u7b49\u6761\u4ef6\u8fc7\u6ee4\u751f\u6210\u62a5\u8868\u3002

    • \u4fdd\u5b58

    \u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u53ef\u4fdd\u5b58\u62a5\u8868\u3002

    • \u53e6\u5b58\u4e3a

    \u70b9\u51fb\u3010\u53e6\u5b58\u4e3a\u3011\u53ef\u5c06\u5f53\u524d\u62a5\u8868\u53e6\u5b58\u4e3a\u5176\u4ed6\u62a5\u8868\u3002

    • \u5168\u90e8\u62a5\u8868

    \u70b9\u51fb\u3010\u5168\u90e8\u62a5\u8868\u3011\u53ef\u67e5\u770b\u6240\u6709\u62a5\u8868\u3002

    • \u6211\u7684\u62a5\u8868

    \u70b9\u51fb\u3010\u6211\u7684\u62a5\u8868\u3011\u53ef\u67e5\u770b\u81ea\u5df1\u521b\u5efa\u7684\u62a5\u8868\u3002

    • \u91cd\u547d\u540d\u62a5\u8868

    \u70b9\u51fb\u3010\u91cd\u547d\u540d\u3011\u53ef\u5c06\u81ea\u5df1\u521b\u5efa\u7684\u62a5\u8868\u91cd\u547d\u540d\u3002

    • \u5220\u9664

    \u70b9\u51fb\u3010\u5220\u9664\u3011\u53ef\u5c06\u81ea\u5df1\u521b\u5efa\u7684\u62a5\u8868\u5220\u9664\u3002

    • \u5bfc\u51fa

    \u70b9\u51fb\u3010\u5bfc\u51fa\u3011\u53ef\u5c06\u62a5\u8868\u5bfc\u51fa PDF \u6587\u4ef6\u3002

    "},{"location":"user_manual/report_statistics/report/","title":"\u9879\u76ee\u62a5\u544a","text":"

    \u7528\u6237\u521b\u5efa\u62a5\u8868\u8fdb\u884c\u4fdd\u5b58\u540e\uff0c\u53ef\u5728\u6d4b\u8bd5\u62a5\u544a\u5185\u5bb9\u4e2d\u5c06\u62a5\u8868\u6dfb\u52a0\u8fdb\u6765\u8fdb\u884c\u53d1\u9001\u3002

    "},{"location":"user_manual/report_statistics/report/#1-x-pack","title":"1 \u9879\u76ee\u62a5\u544a (X-Pack)","text":"
    • \u521b\u5efa\u62a5\u544a

    \u5207\u6362\u5230\u3010\u9879\u76ee\u62a5\u544a\u3011\u9875\u9762\uff0c\u70b9\u51fb\u3010\u521b\u5efa\u62a5\u544a\u3011\uff0c\u8fdb\u5165\u62a5\u544a\u914d\u7f6e\u9875\u9762

    \u586b\u5199\u62a5\u544a\u7684\u57fa\u7840\u4fe1\u606f\uff0c\u9f20\u6807\u60ac\u6d6e\u5230\u3010\u793a\u4f8b\u3011\u524d\u9762\u7684\u5c0f\u56fe\u6807\uff0c\u53ef\u770b\u5230\u5185\u5bb9\u4e3a\u3010\u6587\u672c\u3011\u548c\u3010\u62a5\u8868\u3011\uff0c\u6839\u636e\u9700\u8981\u8fdb\u884c\u914d\u7f6e\u3002

    \u62a5\u544a\u914d\u7f6e\u5b8c\u6210\u53ef\u70b9\u51fb\u3010\u9884\u89c8\u3011\u3001\u3010\u53d1\u9001\u3011\u3001\u3010\u4fdd\u5b58\u8349\u7a3f\u3011\u3001\u3010\u53d6\u6d88\u3011\u6309\u94ae\uff0c\u70b9\u51fb\u3010\u53d1\u9001\u3011\u3001\u3010\u4fdd\u5b58\u8349\u7a3f\u3011\u7684\u62a5\u544a\u4f1a\u51fa\u73b0\u5728\u62a5\u544a\u5217\u8868\u4e2d

    • \u9884\u89c8\u62a5\u544a

    \u70b9\u51fb\u3010\u9884\u89c8\u3011\u6309\u94ae\uff0c\u5373\u53ef\u9884\u89c8\u8be5\u62a5\u544a\u7684\u5185\u5bb9

    • \u590d\u5236\u62a5\u544a

    \u70b9\u51fb\u3010\u590d\u5236\u3011\u6309\u94ae\uff0c\u5373\u53ef\u590d\u5236\u8be5\u62a5\u544a\uff0c\u663e\u793a\u5728\u5217\u8868\u4e0a\u65b9

    • \u7f16\u8f91\u62a5\u544a

    \u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u5373\u53ef\u4fee\u6539\u8be5\u62a5\u544a\u7684\u5185\u5bb9\uff0c\u7f16\u8f91\u5b8c\u6210\u540e\u70b9\u51fb\u3010\u4fdd\u5b58\u8349\u7a3f\u3011\u6216\u3010\u53d1\u9001\u3011

    • \u5220\u9664\u62a5\u544a

    \u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u5373\u53ef\u5220\u9664\u8be5\u62a5\u544a

    • \u5b9a\u65f6\u53d1\u9001

    \u70b9\u51fb\u3010\u5b9a\u65f6\u53d1\u9001\u3011\u6309\u94ae\uff0c\u5373\u53ef\u914d\u7f6e\u5b9a\u65f6\u4efb\u52a1\u53d1\u9001\u62a5\u544a

    "},{"location":"user_manual/system_management/intro/","title":"\u6982\u8ff0","text":"

    MeterSphere \u7cfb\u7edf\u8bbe\u7f6e\u6a21\u5757\u4e3a\u4e0d\u540c\u89d2\u8272\u7684\u7528\u6237\u63d0\u4f9b\u4e86\u5bf9\u5e94\u7684\u7ba1\u7406\u8bbe\u7f6e\u529f\u80fd\uff0c\u5176\u4e2d\u5305\u62ec\uff1a

    • \u7cfb\u7edf\uff1a\u7cfb\u7edf\u7ea7\u522b\u7684\u7ba1\u7406\u914d\u7f6e\u529f\u80fd\uff0c\u4f8b\u5982\u6574\u4e2a\u7cfb\u7edf\u7684\u7528\u6237\u3001\u5de5\u4f5c\u7ba1\u7406\u3001\u7528\u6237\u7ec4\u4e0e\u6743\u9650\uff0c\u6d4b\u8bd5\u8d44\u6e90\u6c60\u7ba1\u7406\u53ca LDAP \u914d\u7f6e\u3001\u90ae\u4ef6\u914d\u7f6e\u7b49\u7cfb\u7edf\u53c2\u6570\u914d\u7f6e\u529f\u80fd\uff0c\u5305\u62ec\u6388\u6743\u7ba1\u7406\u3001\u64cd\u4f5c\u65e5\u5fd7\u3001\u63d2\u4ef6\u7ba1\u7406\u7b49\u5168\u5c40\u914d\u7f6e\u529f\u80fd\uff0c\u7528\u6237\u9700\u8981\u5177\u6709\u3010\u7cfb\u7edf\u7ba1\u7406\u5458\u3011\u89d2\u8272\u624d\u80fd\u770b\u5230\u8be5\u83dc\u5355\u3002
    • \u5de5\u4f5c\u7a7a\u95f4\u7ba1\u7406\uff1a\u5de5\u4f5c\u7a7a\u95f4\u7ea7\u522b\u7684\u7ba1\u7406\u914d\u7f6e\u529f\u80fd\uff0c\u4f8b\u5982\u5de5\u4f5c\u7a7a\u95f4\u4e0b\u7684\u6210\u5458\u7ba1\u7406\u4ee5\u53ca\u5de5\u4f5c\u7a7a\u95f4\u7ea7\u522b\u7684\u914d\u7f6e\u529f\u80fd\uff0c\u5305\u62ec\u670d\u52a1\u96c6\u6210\u914d\u7f6e\u3001\u6d88\u606f\u8bbe\u7f6e\u3001\u9879\u76ee\u7ba1\u7406\u3001\u73af\u5883\u7ba1\u7406\u3001\u5de5\u4f5c\u7a7a\u95f4\u7ea7\u522b\u64cd\u4f5c\u65e5\u5fd7\u3001\u6a21\u7248\u7ba1\u7406\u7b49\uff0c\u7528\u6237\u9700\u8981\u5728\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u6709\u3010\u5de5\u4f5c\u7a7a\u95f4\u7ba1\u7406\u5458\u3011\u89d2\u8272\u624d\u80fd\u770b\u5230\u8be5\u83dc\u5355\u3002
    "},{"location":"user_manual/system_management/system/","title":"\u7cfb\u7edf","text":"

    \u7cfb\u7edf\u4e3b\u8981\u9488\u5bf9\u7cfb\u7edf\u7ea7\u522b\u7684\u7ba1\u7406\u914d\u7f6e\u529f\u80fd\u3002\u76ee\u524d\uff0cMeterSphere \u5185\u7f6e\u4e09\u7ea7\u79df\u6237\u4f53\u7cfb\u5e76\u53ef\u8bbe\u7f6e\u53ea\u8bfb\u7528\u6237\u3002\u5e73\u53f0\u9ed8\u8ba4\u7528\u6237\u7ec4\u53ca\u7528\u6237\u7ec4\u89d2\u8272\u5212\u5206\u4e3a\uff1a -\u3010\u7cfb\u7edf\u7ea7\u7528\u6237\u7ec4\u3011\uff1a\u7cfb\u7edf\u7ba1\u7406\u5458\u3002 -\u3010\u5de5\u4f5c\u7a7a\u95f4\u7ea7\u7528\u6237\u7ec4\u3011\uff1a\u5de5\u4f5c\u7a7a\u95f4\u7ba1\u7406\u5458\u3001\u5de5\u4f5c\u7a7a\u95f4\u6210\u5458\u3002 -\u3010\u9879\u76ee\u7ea7\u7528\u6237\u7ec4\u3011\uff1a\u9879\u76ee\u7ba1\u7406\u5458\u3001\u9879\u76ee\u6210\u5458\u3001\u53ea\u8bfb\u7528\u6237\u3002 \u5e73\u53f0\u7528\u6237\u7ec4\u652f\u6301\u7528\u6237\u5728\u3010\u7528\u6237\u7ec4\u4e0e\u6743\u9650\u3011\u529f\u80fd\u9875\u9762\u4e2d\u81ea\u5b9a\u4e49\u3002

    "},{"location":"user_manual/system_management/system/#1","title":"1 \u7528\u6237","text":"

    \u70b9\u51fb\u5de6\u4fa7\u3010\u7cfb\u7edf\u3011\u4e0b\u62c9\u83dc\u5355\u4e2d\u7684\u3010\u7528\u6237\u3011\u8fdb\u5165\u7528\u6237\u754c\u9762\u3002\u53f3\u4fa7\u663e\u793a\u5f53\u524d\u7cfb\u7edf\u4e2d\u7684\u5168\u90e8\u7528\u6237\u5217\u8868\uff0c\u53ef\u4ee5\u5bf9\u7528\u6237\u8fdb\u884c\u3010\u65b0\u589e\u3011\u3001\u3010\u7f16\u8f91\u3011\u3001\u3010\u67e5\u8be2\u3011\u3001\u3010\u5220\u9664\u3011\u3001\u3010\u66f4\u6539\u72b6\u6001\u3011\u3001\u3010\u8bbe\u7f6e\u5bc6\u7801\u3011\u7b49\u64cd\u4f5c\u3002

    \u8bf4\u660e

    MeterSphere \u90e8\u7f72\u6210\u529f\u540e\u4f1a\u81ea\u52a8\u521b\u5efa\u4e00\u4e2a\u7cfb\u7edf\u7ba1\u7406\u5458\u8d26\u6237\uff0c\u7528\u6237\u540d\u4e3a admin\uff0c\u9ed8\u8ba4\u5bc6\u7801\u4e3a metersphere\u3002\u5982\u5c06\u5e73\u53f0\u7528\u4e8e\u751f\u4ea7\u73af\u5883\uff0c\u8bf7\u53ca\u65f6\u66f4\u6539\u5bc6\u7801\u3002

    • \u521b\u5efa\u7528\u6237 \u70b9\u51fb\u3010\u521b\u5efa\u7528\u6237\u3011\u6309\u94ae\u521b\u5efa\u7528\u6237\uff0c\u5728\u5f39\u51fa\u9875\u9762\u4e2d\u7f16\u8f91\u7528\u6237\u4fe1\u606f\u3002

    \u9700\u8981\u521b\u5efa\u591a\u4e2a\u7528\u6237\u65f6\uff0c\u53ef\u70b9\u51fb\u3010\u5bfc\u5165\u7528\u6237\u3011\u6309\u94ae\uff0c\u4e0b\u8f7d\u6a21\u7248\u5e76\u586b\u5199\u7528\u6237\u4fe1\u606f\uff0c\u901a\u8fc7 Excel \u6587\u4ef6\u5bfc\u5165\u7528\u6237\u3002

    • \u4e3a\u7528\u6237\u6dfb\u52a0\u7528\u6237\u7ec4 \u70b9\u51fb\u3010\u6dfb\u52a0\u7528\u6237\u7ec4\u3011\u6309\u94ae\u4e3a\u7528\u6237\u6dfb\u52a0\u7528\u6237\u7ec4\u4fe1\u606f\u3002\u65b0\u7528\u6237\u81f3\u5c11\u6240\u5c5e\u4e00\u4e2a\u7528\u6237\u7ec4\uff0c\u6bcf\u4e2a\u7528\u6237\u53ef\u4ee5\u5c5e\u4e8e\u591a\u4e2a\u7528\u6237\u7ec4\u3002

    • \u67e5\u8be2\u7528\u6237 \u7528\u6237\u5217\u8868\u53f3\u4e0a\u65b9\uff0c\u4f7f\u7528\u641c\u7d22\u6846\uff0c\u6839\u636e ID \u6216\u540d\u79f0\u67e5\u8be2\u7528\u6237\u3002

    • \u9488\u5bf9\u7528\u6237\u7684\u5176\u4ed6\u64cd\u4f5c \u5728\u7528\u6237\u5217\u8868\u53f3\u4fa7\u64cd\u4f5c\u5217\uff0c\u53ef\u4ee5\u70b9\u51fb\u3010Switch\u3011\u5f00\u5173\u5207\u6362\u9009\u5b9a\u7528\u6237\u542f\u7528\u72b6\u6001\uff0c\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\u53ef\u4fee\u6539\u7528\u6237\u4fe1\u606f\uff0c\u70b9\u51fb\u3010\u4fee\u6539\u5bc6\u7801\u3011\u53ef\u4fee\u6539\u7528\u6237\u7684\u5bc6\u7801\uff0c\u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\u5220\u9664\u8be5\u7528\u6237\u3002

    "},{"location":"user_manual/system_management/system/#2","title":"2 \u5de5\u4f5c\u7a7a\u95f4","text":"

    \u70b9\u51fb\u5de6\u4fa7\u3010\u7cfb\u7edf\u3011\u4e0b\u62c9\u83dc\u5355\u4e2d\u7684\u3010\u5de5\u4f5c\u7a7a\u95f4\u3011\u8fdb\u5165\u5de5\u4f5c\u7a7a\u95f4\u754c\u9762\u3002\u53f3\u4fa7\u663e\u793a\u5f53\u524d\u7cfb\u7edf\u4e2d\u7684\u5168\u90e8\u5de5\u4f5c\u7a7a\u95f4\u5217\u8868\uff0c\u53ef\u4ee5\u5bf9\u5de5\u4f5c\u7a7a\u95f4\u8fdb\u884c\u3010\u65b0\u589e\u3011\u3001\u3010\u7f16\u8f91\u3011\u3001\u3010\u67e5\u8be2\u3011\u3001\u3010\u5220\u9664\u3011\u7b49\u64cd\u4f5c\u3002

    • \u521b\u5efa\u5de5\u4f5c\u7a7a\u95f4 \u70b9\u51fb\u3010\u521b\u5efa\u5de5\u4f5c\u7a7a\u95f4\u3011\u6309\u94ae\u521b\u5efa\u5de5\u4f5c\u7a7a\u95f4\uff0c\u5728\u5f39\u51fa\u9875\u9762\u4e2d\u586b\u5199\u540d\u79f0\u548c\u63cf\u8ff0\u3002

    • \u7f16\u8f91\u5de5\u4f5c\u7a7a\u95f4 \u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\u7f16\u8f91\u5de5\u4f5c\u7a7a\u95f4\uff0c\u5728\u5f39\u51fa\u9875\u9762\u4e2d\u4fee\u6539\u540d\u79f0\u548c\u63cf\u8ff0\u3002

    • \u5220\u9664\u5de5\u4f5c\u7a7a\u95f4 \u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\u5220\u9664\u5de5\u4f5c\u7a7a\u95f4\u3002

    "},{"location":"user_manual/system_management/system/#3","title":"3 \u7528\u6237\u7ec4\u4e0e\u6743\u9650","text":"

    \u70b9\u51fb\u5de6\u4fa7\u3010\u7cfb\u7edf\u3011\u4e0b\u62c9\u83dc\u5355\u4e2d\u7684\u3010\u7528\u6237\u7ec4\u4e0e\u6743\u9650\u3011\u8fdb\u5165\u7528\u6237\u7ec4\u754c\u9762\u3002\u7528\u6237\u53ef\u57fa\u4e8e\u81ea\u8eab\u9700\u6c42\u521b\u5efa\u81ea\u5b9a\u4e49\u7528\u6237\u7ec4\uff0c\u5e76\u8d4b\u4e88\u7528\u6237\u7ec4\u4e0d\u540c\u7684\u6743\u9650\u8bbe\u7f6e\u3002\u5176\u4e2d\u3010\u8d85\u7ea7\u7ba1\u7406\u5458\u3011\u7528\u6237\u7ec4\u62e5\u6709\u7cfb\u7edf\u5168\u90e8\u5de5\u4f5c\u7a7a\u95f4\u4e0e\u9879\u76ee\u7684\u64cd\u4f5c\u6743\u9650\uff0c\u7528\u6237\u53ef\u4ee5\u4e3a admin \u7528\u6237\u6dfb\u52a0\u3010\u8d85\u7ea7\u7ba1\u7406\u5458\u3011\u6743\u9650\u6765\u7ba1\u7406\u7cfb\u7edf\u5168\u90e8\u6570\u636e\u3002

    • \u521b\u5efa\u7528\u6237\u7ec4 \u70b9\u51fb\u3010\u521b\u5efa\u7528\u6237\u7ec4\u3011\u6309\u94ae\u65b0\u5efa\u81ea\u5b9a\u4e49\u7528\u6237\u7ec4\u3002\u5728\u5f39\u51fa\u7684\u754c\u9762\u4e2d\u7f16\u8f91\u7528\u6237\u7ec4\u540d\u79f0\u53ca\u63cf\u8ff0\uff0c\u9009\u62e9\u7528\u6237\u7ec4\u6240\u5c5e\u7c7b\u578b\u3002\u4f7f\u7528\u3010\u5168\u5c40\u7528\u6237\u7ec4\u3011\u5f00\u5173\u5207\u6362\u7528\u6237\u7ec4\u9002\u7528\u72b6\u6001\u3002\u65b0\u5efa\u7528\u6237\u7ec4\u7c7b\u578b\u4e3a\u7cfb\u7edf\u7c7b\u578b\u65f6\u81ea\u52a8\u5207\u6362\u4e3a\u5168\u5c40\u7528\u6237\u7ec4\uff0c\u6b64\u5f00\u5173\u4e3a\u9ed8\u8ba4\u6253\u5f00\u72b6\u6001\uff1b\u65b0\u5efa\u7528\u6237\u7ec4\u7c7b\u578b\u4e3a\u5176\u4ed6\u7c7b\u578b\u65f6\uff0c\u5168\u5c40\u72b6\u6001\u53ef\u5173\u95ed\uff0c\u6b64\u65f6\u987b\u4e3a\u7528\u6237\u7ec4\u9009\u62e9\u6240\u5c5e\u5de5\u4f5c\u7a7a\u95f4\u3002

    • \u4e3a\u7528\u6237\u7ec4\u914d\u7f6e\u6743\u9650 \u56de\u5230\u7528\u6237\u7ec4\u5217\u8868\u4e2d\uff0c\u70b9\u51fb\u3010\u8bbe\u7f6e\u6743\u9650\u3011\u6309\u94ae\u8fdb\u5165\u7528\u6237\u7ec4\u6743\u9650\u8bbe\u7f6e\u9875\u9762\uff0c\u5728\u8be5\u9875\u9762\u4e2d\u57fa\u4e8e\u7528\u6237\u7ec4\u9700\u6c42\u52fe\u9009\u64cd\u4f5c\u6743\u9650\uff0c\u4e00\u4e2a\u7528\u6237\u7ec4\u5373\u4e3a\u4e00\u4e2a\u6743\u9650\u96c6\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u6309\u94ae\u5b8c\u6210\u914d\u7f6e\u3002

    • \u7f16\u8f91\u7528\u6237\u7ec4\u4fe1\u606f \u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\u7f16\u8f91\u9009\u5b9a\u7528\u6237\u7ec4\u4fe1\u606f\uff0c\u5728\u5f39\u51fa\u9875\u9762\u4e2d\u53ef\u4ee5\u66f4\u6539\u7528\u6237\u7ec4\u540d\u79f0\u53ca\u63cf\u8ff0\u3002

    • \u67e5\u8be2\u7528\u6237\u7ec4 \u7528\u6237\u7ec4\u5217\u8868\u53f3\u4e0a\u65b9\uff0c\u4f7f\u7528\u641c\u7d22\u6846\uff0c\u6839\u636e\u540d\u79f0\u67e5\u8be2\u7528\u6237\u7ec4\u3002

    • \u5220\u9664\u7528\u6237\u7ec4 \u7528\u6237\u7ec4\u5217\u8868\u4e2d\uff0c\u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\u5220\u9664\u81ea\u5b9a\u4e49\u7684\u7528\u6237\u7ec4\uff0c\u7cfb\u7edf\u7528\u6237\u7ec4\u4e0d\u652f\u6301\u5220\u9664\u3002

    "},{"location":"user_manual/system_management/system/#4","title":"4 \u6d4b\u8bd5\u8d44\u6e90\u6c60\u7ba1\u7406","text":"

    \u70b9\u51fb\u5de6\u4fa7\u3010\u7cfb\u7edf\u3011\u4e0b\u62c9\u83dc\u5355\u4e2d\u7684\u3010\u6d4b\u8bd5\u8d44\u6e90\u6c60\u3011\u8fdb\u5165\u8d44\u6e90\u6c60\u754c\u9762\u3002\u6d4b\u8bd5\u8d44\u6e90\u6c60\u4e3b\u8981\u7528\u4e8e\u63a5\u53e3\u6d4b\u8bd5\u53ca\u6027\u80fd\u7b49\u6d4b\u8bd5\u3002\u53f3\u4fa7\u8d44\u6e90\u6c60\u5217\u8868\u4e2d\uff0c\u53ef\u4ee5\u901a\u8fc7\u3010Switch\u3011\u5f00\u5173\u5207\u6362\u8d44\u6e90\u6c60\u542f\u7528\u72b6\u6001\uff0c\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\u66f4\u6539\u8d44\u6e90\u6c60\u4fe1\u606f\uff0c\u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\u5220\u9664\u9009\u5b9a\u8d44\u6e90\u6c60\u3002

    "},{"location":"user_manual/system_management/system/#41-node","title":"4.1 \u521b\u5efa Node \u8d44\u6e90\u6c60","text":"

    \u70b9\u51fb\u3010\u521b\u5efa\u8d44\u6e90\u6c60\u3011\u6309\u94ae\uff0c\u5728\u5f39\u51fa\u7684\u754c\u9762\u4e2d\u4e3a\u65b0\u5efa\u8d44\u6e90\u6c60\u7f16\u8f91\u540d\u79f0\u3001\u63cf\u8ff0\u7b49\u76f8\u5173\u4fe1\u606f\uff0c\u3010\u7c7b\u578b\u3011\u9009\u62e9\u3010Node\u3011\uff0c\u586b\u5199\u76f8\u5e94\u7684\u914d\u7f6e\u4fe1\u606f\uff0c\u5e76\u652f\u6301\u8bbe\u5b9a\u8d44\u6e90\u6c60\u6700\u5927\u5e76\u53d1\u6570\u91cf\u6216\u6700\u5927\u7ebf\u7a0b\u6570\u91cf\u3002

    "},{"location":"user_manual/system_management/system/#42-kubernetes-x-pack","title":"4.2 \u521b\u5efa Kubernetes \u8d44\u6e90\u6c60 (X-Pack)","text":"

    \u70b9\u51fb\u3010\u521b\u5efa\u8d44\u6e90\u6c60\u3011\u6309\u94ae\uff0c\u5728\u5f39\u51fa\u7684\u754c\u9762\u4e2d\u4e3a\u65b0\u5efa\u8d44\u6e90\u6c60\u7f16\u8f91\u540d\u79f0\u3001\u63cf\u8ff0\u7b49\u76f8\u5173\u4fe1\u606f\uff0c\u3010\u7c7b\u578b\u3011\u9009\u62e9\u3010Kubernetes\u3011\uff0c\u586b\u5199\u76f8\u5e94\u7684\u914d\u7f6e\u4fe1\u606f\uff0c\u5e76\u652f\u6301\u8bbe\u5b9a\u8d44\u6e90\u6c60\u6700\u5927\u5e76\u53d1\u6570\u91cf\u6216\u6700\u5927\u7ebf\u7a0b\u6570\u91cf\u3002

    \u83b7\u53d6 Master URL\uff0c\u8f93\u5165 kubectl describe svc kubernetes \u53ef\u83b7\u5f97 Endpoints \u5730\u5740 \u83b7\u53d6 Token\uff0c\u9700\u8981\u6709 k8s \u96c6\u7fa4\u73af\u5883\uff0c\u4e4b\u540e\u521b\u5efa\u597d SA \u548c token\uff0c\u547d\u4ee4\u5982\u4e0b

    # 1 \u521b\u5efa namespaces\nkubectl create namespace metersphere\n# 2 \u521b\u5efa SA\nkubectl create serviceaccount ms -n metersphere\n# 3 \u521b\u5efa namespace \u6388\u6743 SA\nkubectl create clusterrolebinding ms --clusterrole=admin --serviceaccount=metersphere:ms -n metersphere\n# 4 \u67e5\u8be2 SA token\nkubectl describe sa/ms -n metersphere\nkubectl describe secrets -n metersphere ms-token-xxxx\n

    Namespace \u53ef\u4ee5\u8fdb\u884c\u81ea\u5b9a\u4e49\uff0c\u5728 k8s \u96c6\u7fa4\u4e0a\u521b\u5efa\u81ea\u5b9a\u4e49\u7684 Namespace

    kubectl create ns ms-pool\n

    \u4e0b\u8f7d deployment.yaml \u4e0a\u4f20\u5230 k8s \u96c6\u7fa4\u670d\u52a1\u5668\u4e0a\uff0c\u8f93\u5165\u547d\u4ee4\u4f7f\u5176\u751f\u6548\u540e\uff0c\u8f93\u5165\u547d\u4ee4\u67e5\u8be2\u81ea\u5b9a\u4e49 Namespace \u4e0b\u7684 ms-node-controller \u662f\u5426\u6b63\u5e38\u8d77\u6765

    # \u4f7f deployment.yaml \u751f\u6548\nkubectl apply -f deployment.yaml -n ms-pool\n# \u67e5\u8be2 ms-node-controller \u670d\u52a1\nkubectl get all -n ms-pool\n

    Deploy Name \u4f7f\u7528\u9ed8\u8ba4\u7684 ms-node-controller \u5c31\u884c\uff0c\u4e0d\u9700\u8981\u66f4\u6539\u3002 \u914d\u7f6e\u5b8c\u6210\u540e\uff0c\u70b9\u51fb\u786e\u5b9a\u5373\u53ef\u3002\u5728\u8d44\u6e90\u6c60\u5217\u8868\u4e2d\u6709\u8be5\u8d44\u6e90\u6c60\uff0c\u5728\u6027\u80fd\u6d4b\u8bd5\u9875\u9762-\u538b\u529b\u914d\u7f6e\u5904\u4e5f\u53ef\u4ee5\u770b\u5230\u8be5\u8d44\u6e90\u6c60\u3002

    • \u67e5\u8be2\u8d44\u6e90\u6c60 \u8d44\u6e90\u6c60\u5217\u8868\u53f3\u4e0a\u65b9\uff0c\u4f7f\u7528\u641c\u7d22\u6846\uff0c\u6839\u636e\u540d\u79f0\u67e5\u8be2\u8d44\u6e90\u6c60\u3002
    • \u5220\u9664\u8d44\u6e90\u6c60 \u8d44\u6e90\u6c60\u5217\u8868\u4e2d\uff0c\u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\u5220\u9664\u9009\u5b9a\u8d44\u6e90\u6c60\u3002
    "},{"location":"user_manual/system_management/system/#5","title":"5 \u7cfb\u7edf\u53c2\u6570\u8bbe\u7f6e","text":"

    \u70b9\u51fb\u5de6\u4fa7\u3010\u7cfb\u7edf\u3011\u4e0b\u62c9\u83dc\u5355\u4e2d\u7684\u3010\u7cfb\u7edf\u53c2\u6570\u8bbe\u7f6e\u3011\u8fdb\u5165\u53c2\u6570\u8bbe\u7f6e\u754c\u9762\uff0c\u7528\u4e8e\u5e73\u53f0\u3010\u57fa\u672c\u914d\u7f6e\u3011\u3001\u3010\u90ae\u4ef6\u8bbe\u7f6e\u3011\u3001\u3010LDAP\u8bbe\u7f6e\u3011\u3001\u3010\u663e\u793a\u8bbe\u7f6e\u3011\u3001\u3010\u8ba4\u8bc1\u8bbe\u7f6e\u3011\u3001\u3010\u6a21\u5757\u7ba1\u7406\u3011\u7b49\u53c2\u6570\u7684\u8bbe\u7f6e\u3002

    "},{"location":"user_manual/system_management/system/#51","title":"5.1 \u57fa\u672c\u914d\u7f6e","text":"

    \u6027\u80fd\u6d4b\u8bd5\u6267\u884c\u8fc7\u7a0b\u4e2d node-controller \u8282\u70b9\u9700\u8981\u901a\u8fc7\u914d\u7f6e\u7684\u3010\u5f53\u524d\u7ad9\u70b9URL\u3011\u4e0b\u8f7d JMX \u7b49\u6d4b\u8bd5\u8d44\u6e90\u6587\u4ef6\u3002\u5728\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u524d\u9700\u8981\u914d\u7f6e\u5e76\u68c0\u67e5\u6d4b\u8bd5\u8d44\u6e90\u6c60\u4e2d\u7684\u8282\u70b9\u53ef\u4ee5\u6b63\u5e38\u8bbf\u95ee\u5230\u8be5 URL\uff0cURL \u503c\u4e00\u822c\u4e3a\u901a\u8fc7\u6d4f\u89c8\u5668\u8bbf\u95ee MeterSphere \u7684\u5730\u5740\u3002

    \u9009\u9879

    • \u3010\u5f53\u524d\u7ad9\u70b9URL\u3011\uff1a\u5f53\u524d MeterSphere \u7ad9\u70b9\u5730\u5740\uff0c\u7528\u4e8e\u6027\u80fd\u6d4b\u8bd5 JMeter \u4ece MeterSphere \u7ad9\u70b9\u83b7\u53d6\u538b\u6d4b\u811a\u672c\u7b49\u6570\u636e\u3002
    • \u3010\u5e76\u53d1\u6570\u3011\uff1a\u9650\u5236\u573a\u666f\u63a5\u53e3\u81ea\u52a8\u5316\u4e2d\u573a\u666f\u5e76\u884c\u6267\u884c\u65f6\u7684\u5e76\u53d1\u6570\u91cf\u3002
    • \u3010Prometheus \u5730\u5740\u3011\uff1aPrometheus \u76d1\u63a7\u670d\u52a1\u5730\u5740\u3002
    • \u3010selenium-docker \u5730\u5740\u3011\uff1aselenium \u670d\u52a1\u5730\u5740\u3002
    • \u3010\u63a5\u53e3\u9ed8\u8ba4\u672c\u5730\u6267\u884c\u3011\uff1a\u7981\u7528\u540e\u6240\u6709\u6267\u884c\u529f\u80fd\u53ea\u80fd\u901a\u8fc7\u6d4b\u8bd5\u8d44\u6e90\u6c60\u6267\u884c\uff0c\u4e3a\u4e86\u4e0d\u5f71\u54cd\u63a5\u53e3\u6b63\u5e38\u6267\u884c\uff0c\u9009\u62e9\u3010\u7981\u7528\u3011\u540e\uff0c\u8bf7\u5728\u3010 \u9879\u76ee\u8bbe\u7f6e-\u5e94\u7528\u7ba1\u7406-\u63a5\u53e3\u6d4b\u8bd5 \u3011\u4e2d\u914d\u7f6e\u63a5\u53e3\u6267\u884c\u7684\u8d44\u6e90\u6c60\u3002
    "},{"location":"user_manual/system_management/system/#52","title":"5.2 \u90ae\u4ef6\u8bbe\u7f6e","text":"

    \u5207\u6362\u81f3\u3010\u90ae\u4ef6\u8bbe\u7f6e\u3011\u6807\u7b7e\uff0c\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\u53ef\u4ee5\u5bf9 SMTP \u4fe1\u606f\u8fdb\u884c\u4fee\u6539\u3001\u4fdd\u5b58\u3002

    "},{"location":"user_manual/system_management/system/#53-ldap","title":"5.3 LDAP \u8bbe\u7f6e","text":"

    \u5207\u6362\u81f3\u3010LDAP\u8bbe\u7f6e\u3011\u6807\u7b7e\uff0c\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\u914d\u7f6e LDAP \u767b\u5f55\u76f8\u5173\u53c2\u6570\u3002

    \u9009\u9879

    • \u3010LDAP\u5730\u5740\u3011\uff1aldap://serveurl:389 \u6216 ldaps://serveurl:636
    • \u3010\u7ed1\u5b9aDN\u3011\uff1acn=administrator,cn=Users,dc=metersphere,dc=com
    • \u3010\u7528\u6237OU\u3011\uff1aou=metersphere,dc=metersphere,dc=com
    • \u3010\u7528\u6237\u8fc7\u6ee4\u5668\u3011\uff1asAMAccountName={0}
    • \u3010LDAP\u5c5e\u6027\u6620\u5c04\u3011\uff1a{\"username\":\"sAMAccountName\",\"name\":\"cn\",\"email\":\"mail\"}

    \u9009\u9879\u8bf4\u660e

    • \u3010OU\u3011\uff1a\u540c\u7ea7\u591aOU\u7528\uff5c\u5206\u5272
    • \u3010\u7528\u6237\u8fc7\u6ee4\u5668\u3011\uff1a\u6839\u636e\u89c4\u5219\u5230 \u7528\u6237OU \u91cc\u9762\u53bb\u68c0\u7d22\u7528\u6237\uff0c\u53ef\u80fd\u7684\u9009\u9879\u4e3a (uid={0}) \u6216 (sAMAccountName={0}) \u6216 (cn={0})
    • \u3010LDAP\u5c5e\u6027\u6620\u5c04\u3011\uff1a{\"username\":\"sAMAccountName\",\"name\":\"cn\",\"email\":\"mail\",\"phone\":\"phone\"}\uff0cusername,name,email \u4e09\u9879\u4e0d\u53ef\u4fee\u6539\u5220\u9664, phone \u5c5e\u6027\u53ef\u9009
    • \u3010\u542f\u7528LDAP\u8ba4\u8bc1\u3011\uff1a\u542f\u7528\u540e\u767b\u5f55\u9875\u663e\u793a LDAP \u767b\u5f55\u9009\u9879

    \u6ce8\u610f

    \u7528\u6237\u8fc7\u6ee4\u5668\u7528\u4ec0\u4e48\u7b5b\u9009, LDAP \u5c5e\u6027\u6620\u5c04\u5b57\u6bb5\u8981\u4e0e\u5176\u4e00\u81f4, \u8fc7\u6ee4\u5668\u7528 sAMAccountName, LDAP\u5c5e\u6027\u6620\u5c04\u4e5f\u8981\u7528 sAMAccountName

    \u542f\u7528 LDAP \u8ba4\u8bc1\u540e\uff0c\u767b\u5f55\u9875\u4f1a\u65b0\u589e LDAP \u767b\u5f55\u9009\u9879\u3002

    "},{"location":"user_manual/system_management/system/#54-x-pack","title":"5.4 \u663e\u793a\u8bbe\u7f6e (X-Pack)","text":"

    \u5207\u6362\u81f3\u3010\u663e\u793a\u8bbe\u7f6e\u3011\u6807\u7b7e\uff0c\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\u914d\u7f6e\u7cfb\u7edf\u7684 logo \u4ee5\u53ca\u663e\u793a\u7684\u6587\u5b57\u548c\u56fe\u7247\uff0c\u586b\u5199\u5b8c\u6210\u540e\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u5373\u53ef\u3002

    "},{"location":"user_manual/system_management/system/#55-x-pack","title":"5.5 \u8ba4\u8bc1\u8bbe\u7f6e (X-Pack)","text":"

    \u5207\u6362\u81f3\u3010\u8ba4\u8bc1\u8bbe\u7f6e\u3011\u6807\u7b7e\uff0c\u70b9\u51fb\u3010\u6dfb\u52a0\u3011\u6309\u94ae\uff0c\u586b\u5199 CAS\u3001OIDC\u3001OAuth2 \u7b49\u65b9\u5f0f\u7684\u5355\u70b9\u767b\u5f55\u534f\u8bae\u8ba4\u8bc1\u4fe1\u606f\u3002

    \u53ef\u4ee5\u70b9\u51fb\u3010\u542f\u7528/\u7981\u7528\u3011\u6309\u94ae\u6216\u8005\u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u82e5\u542f\u7528 CAS\u3001OIDC \u8ba4\u8bc1\u540e\uff0c\u767b\u5f55\u9875\u4f1a\u65b0\u589e CAS\u3001OIDC \u767b\u5f55\u9009\u9879\u3002

    "},{"location":"user_manual/system_management/system/#56-x-pack","title":"5.6 \u6a21\u5757\u7ba1\u7406 (X-Pack)","text":"

    \u5207\u6362\u81f3\u3010\u6a21\u5757\u7ba1\u7406\u3011\u6807\u7b7e\uff0c\u70b9\u51fb\u3010\u542f\u7528/\u7981\u7528\u3011\u6309\u94ae\uff0c\u7cfb\u7edf\u53ea\u663e\u793a\u3010\u542f\u7528\u3011\u7684\u6a21\u5757\uff0c\u3010\u7981\u7528\u3011\u7684\u6a21\u5757\u4e0d\u4f1a\u5728\u7cfb\u7edf\u4e2d\u51fa\u73b0\u3002

    "},{"location":"user_manual/system_management/system/#6-x-pack","title":"6 \u914d\u989d\u7ba1\u7406 (X-Pack)","text":"

    \u8fdb\u5165\u3010\u914d\u989d\u7ba1\u7406\u3011\u9875\u9762\uff0c\u53ef\u3010\u7f16\u8f91\u3011\u4e0a\u65b9\u7684\u5de5\u4f5c\u7a7a\u95f4\u9ed8\u8ba4\u914d\u989d\uff0c\u7f16\u8f91\u5b8c\u6210\u540e\uff0c\u5728\u914d\u989d\u5217\u8868\u4e2d\u4f7f\u7528\u9ed8\u8ba4\u914d\u7f6e\u7684\uff0c\u5c06\u540c\u6b65\u66f4\u65b0\u7f16\u8f91\u7684\u6570\u636e\u3002

    \u70b9\u51fb\u5de5\u4f5c\u7a7a\u95f4\u7684\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u53ef\u5bf9\u5355\u4e2a\u5de5\u4f5c\u7a7a\u95f4\u8fdb\u884c\u914d\u989d\u7ba1\u7406\u8bbe\u7f6e

    \u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u5373\u53ef\u5220\u9664\u5df2\u914d\u7f6e\u597d\u7684\u5185\u5bb9\uff0c\u6062\u590d\u5230\u6700\u521d\u72b6\u6001\uff0c\u4f7f\u7528\u9ed8\u8ba4\u914d\u989d\u7684\u72b6\u6001\u4e5f\u7531\u3010\u662f\u3011\u53d8\u6210\u3010\u5426\u3011

    "},{"location":"user_manual/system_management/system/#7","title":"7 \u6388\u6743\u7ba1\u7406","text":"

    \u70b9\u51fb\u5de6\u4fa7\u3010\u7cfb\u7edf\u3011\u4e0b\u62c9\u83dc\u5355\u4e2d\u7684\u3010\u6388\u6743\u7ba1\u7406\u3011\u8fdb\u5165\u6388\u6743\u7ba1\u7406\u754c\u9762\uff0c\u70b9\u51fb\u3010\u6388\u6743\u9a8c\u8bc1\u3011\u5bfc\u5165\u4f01\u4e1a\u7248\u8bc1\u4e66\uff0c\u5f00\u542f X-Pack \u529f\u80fd\u3002

    "},{"location":"user_manual/system_management/system/#8","title":"8 \u64cd\u4f5c\u65e5\u5fd7","text":"

    \u70b9\u51fb\u5de6\u4fa7\u3010\u7cfb\u7edf\u3011\u4e0b\u62c9\u83dc\u5355\u4e2d\u7684\u3010\u64cd\u4f5c\u65e5\u5fd7\u3011\u8fdb\u5165\u65e5\u5fd7\u754c\u9762\uff0c\u663e\u793a\u767b\u5f55\u7528\u6237\u6743\u9650\u8303\u56f4\u5185\u7684\u5168\u90e8\u6d4b\u8bd5\u8d44\u6e90\u65e5\u5fd7\u4fe1\u606f\uff0c\u5e76\u652f\u6301\u4f7f\u7528\u9ad8\u7ea7\u67e5\u8be2\u6765\u5feb\u901f\u67e5\u627e\u76f8\u5173\u65e5\u5fd7\u3002

    "},{"location":"user_manual/system_management/system/#9","title":"9 \u63d2\u4ef6\u7ba1\u7406","text":""},{"location":"user_manual/system_management/system/#91-websocket-x-pack","title":"9.1 WebSocket \u63d2\u4ef6 (X-Pack)","text":"

    \u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e\u3011-\u3010\u7cfb\u7edf\u3011-\u3010\u63d2\u4ef6\u7ba1\u7406\u3011\u754c\u9762\u4e0b\uff0c\u4e0a\u4f20 WebSocket \u63d2\u4ef6

    \u5728\u3010\u63a5\u53e3\u6d4b\u8bd5\u3011-\u3010\u63a5\u53e3\u81ea\u52a8\u5316\u3011\u754c\u9762\u4e0b\uff0c\u65b0\u5efa\u4e00\u4e2a\u573a\u666f\uff0c\u70b9\u51fb\u573a\u666f\u53f3\u4e0b\u89d2\u3010+\u3011\u53f7\uff0c\u6dfb\u52a0 WebSocket \u76f8\u5173\u8bf7\u6c42\u3002

    "},{"location":"user_manual/system_management/workspace/","title":"\u5de5\u4f5c\u7a7a\u95f4","text":""},{"location":"user_manual/system_management/workspace/#1","title":"1 \u6210\u5458","text":"

    \u70b9\u51fb\u5de6\u4fa7\u3010\u5de5\u4f5c\u7a7a\u95f4\u3011\u4e0b\u62c9\u83dc\u5355\u4e2d\u7684\u3010\u6210\u5458\u3011\u8fdb\u5165\u6210\u5458\u754c\u9762\uff0c\u67e5\u770b\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u7684\u6240\u6709\u6210\u5458\u4fe1\u606f\u3002\u53ef\u4ee5\u5bf9\u6210\u5458\u8fdb\u884c\u3010\u65b0\u589e\u3011\uff0c\u3010\u7f16\u8f91\u3011\uff0c\u3010\u67e5\u8be2\u3011\uff0c\u3010\u5220\u9664\u3011\u3002

    • \u6dfb\u52a0\u6210\u5458 \u70b9\u51fb\u3010\u6dfb\u52a0\u6210\u5458\u3011\u6309\u94ae\u6dfb\u52a0\u6210\u5458\u6237\uff0c\u5728\u5f39\u51fa\u9875\u9762\u4e2d\u9009\u62e9\u8981\u6dfb\u52a0\u7684\u7528\u6237\u3002

    \u53c2\u6570\u8bf4\u660e

    • \u53ef\u6839\u636e\u7528\u6237 ID \u548c\u7528\u6237\u90ae\u7bb1\u641c\u7d22\u9700\u8981\u6dfb\u52a0\u7684\u7528\u6237\uff0c\u7cfb\u7edf\u652f\u6301\u53ef\u4e00\u6b21\u6dfb\u52a0\u591a\u4e2a\u6210\u5458\u3002
    • \u53ef\u9009\u62e9\u7528\u6237\u7ec4\uff0c\u6b64\u4e0b\u62c9\u4fe1\u606f\u7684\u7528\u6237\u7ec4\uff0c\u5176\u3010\u6240\u5c5e\u7c7b\u578b\u3011\u5c5e\u4e8e\u3010\u7ec4\u7ec7\u7ea7\u522b\u3011\u7684\u7528\u6237\u7ec4\uff0c\u7cfb\u7edf\u652f\u6301\u4e00\u6b21\u6dfb\u52a0\u591a\u4e2a\u7528\u6237\u7ec4\u3002
    • \u70b9\u51fb\u3010\u786e\u8ba4\u3011\u5b8c\u6210\u7ec4\u7ec7\u6210\u5458\u6dfb\u52a0\u3002
    • \u7f16\u8f91\u6210\u5458 \u5728\u6210\u5458\u4fe1\u606f\u4e2d\u53ef\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u548c\u3010\u5220\u9664\u3011\u8fdb\u884c\u6210\u5458\u4fee\u6539\u548c\u5220\u9664\u64cd\u4f5c\u3002

    • \u67e5\u8be2\u7528\u6237 \u53ef\u6309\u540d\u79f0\u6765\u6a21\u7cca\u67e5\u8be2\u6210\u5458\u4fe1\u606f\uff0c\u8f93\u5165\u67e5\u8be2\u4fe1\u606f\uff0c\u70b9\u51fb\u56de\u8f66\u5373\u53ef\u5b8c\u6210\u67e5\u8be2\u3002

    "},{"location":"user_manual/system_management/workspace/#2","title":"2 \u670d\u52a1\u96c6\u6210","text":"

    \u53ef\u67e5\u770b\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u91cc\u96c6\u6210\u7684\u7f3a\u9677\u7ba1\u7406\u5e73\u53f0\uff0c\u5e76\u8bbe\u7f6e\u548c\u4fee\u6539\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u9700\u8981\u5c06\u6d4b\u8bd5\u7528\u4f8b\u7f3a\u9677\u6570\u636e\u540c\u6b65\u7684\u7f3a\u9677\u7ba1\u7406\u5e73\u53f0\u3002 \u70b9\u51fb\u3010\u5de5\u4f5c\u7a7a\u95f4\u3011\u83dc\u5355\u680f\uff0c\u70b9\u51fb\u3010\u670d\u52a1\u96c6\u6210\u3011\uff0c\u5373\u53ef\u67e5\u770b\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u5df2\u96c6\u6210\u7684\u7f3a\u9677\u7ba1\u7406\u5e73\u53f0\uff0c\u540c\u65f6\u53ef\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u96c6\u6210 TAPD\u3001JIRA \u548c\u7985\u9053\u3001Azure Devops\u7b49\u5e73\u53f0\u3002 v2.4 \u7248\u672c\u7f3a\u9677\u5bf9\u63a5\u5b9e\u73b0\u4e86\u63d2\u4ef6\u5316\uff0c\u53ef\u6839\u636e\u81ea\u8eab\u9700\u6c42\u5f00\u53d1\u5bf9\u5e94\u63d2\u4ef6\u3002\u5177\u4f53\u53c2\u8003\u63d2\u4ef6\u9879\u76ee\uff1ahttps://github.com/metersphere/metersphere-platform-plugin

    Metersphere \u5e73\u53f0\u4e0e\u7ba1\u7406\u5de5\u5177\u96c6\u6210\u8bbe\u7f6e\u53ef\u5206\u4e3a\u4e09\u6b65\u9aa4\u6765\u5b8c\u6210

    (1)\u9996\u5148\u914d\u7f6e\u548c\u9879\u76ee\u7ba1\u7406\u5de5\u5177\u96c6\u6210\u8bbe\u7f6e\u3002 (2)\u5176\u6b21\u914d\u7f6e\u9879\u76ee\u76f8\u5173\u4fe1\u606f\u3002 (3)\u7136\u540e\u4e3a\u6bcf\u4e2a\u767b\u5f55\u7528\u6237\u8bbe\u7f6e\u5404\u81ea\u7684\u4e2a\u4eba\u8d26\u53f7\uff0c\u6b64\u914d\u7f6e\u4e5f\u53ef\u4ee5\u4e0d\u8bbe\u7f6e\u3002

    "},{"location":"user_manual/system_management/workspace/#21-tapd","title":"2.1 \u4e0eTAPD\u96c6\u6210","text":"

    \u7b2c\u4e00\u6b65\uff1a\u670d\u52a1\u96c6\u6210\u914d\u7f6e\u3002

    \u53c2\u6570\u8bf4\u660e

    \u3010API \u8d26\u53f7\u548c\u53e3\u4ee4\u3011\u662f Tapd Basic Auth \u8d26\u53f7\u4fe1\u606f\u5728\u3010\u516c\u53f8\u7ba1\u7406-\u5b89\u5168\u4e0e\u96c6\u6210-\u5f00\u653e\u5e73\u53f0\u3011\u4e2d\u67e5\u8be2\u3002

    \u7b2c\u4e8c\u6b65\uff1a\u5173\u8054\u9879\u76ee\u914d\u7f6e\u3002 \u914d\u7f6e\u5b8c\u670d\u52a1\u96c6\u6210\u540e\uff0c\u8fd8\u9700\u8981\u914d\u7f6e\u9879\u76ee\u4e2d\u5f15\u7528 TAPD \u9879\u76ee\u7684\u8bbe\u7f6e\uff0c\u5373\u5173\u8054\u9879\u76ee\u3002\u70b9\u51fb\u9875\u9762\u53f3\u4e0b\u89d2\u7684\u3010\u9a6c\u4e0a\u5173\u8054\u9879\u76ee\u3011\u8fdb\u884c\u8bbe\u7f6e\u3002

    \u8df3\u8f6c\u5230\u9879\u76ee\u7ba1\u7406\u9875\u9762\uff0c\u70b9\u51fb\u9879\u76ee\u5217\u8868\u4e2d\u7684\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u7f16\u8f91\u9879\u76ee\u91cc\u3010TAPD \u9879\u76ee ID\u3011\uff0c\u4ee5\u53ca\u7f3a\u9677\u6a21\u677f\u7b49\u76f8\u5173\u4fe1\u606f\u3002

    \u540c\u65f6\uff0c\u8fd8\u9700\u8981\u914d\u7f6e\u9879\u76ee\u4e2d\u7684 TAPD \u7f3a\u9677\u6a21\u677f\u8bbe\u7f6e\uff0c\u3010\u7f3a\u9677\u6a21\u677f\u3011\u9700\u8981\u9009\u62e9\u3010TAPD-\u9ed8\u8ba4\u6a21\u677f\u3011\u3002

    \u7b2c\u4e09\u6b65\uff1a\u6dfb\u52a0\u4e2a\u4eba\u5e73\u53f0\u8d26\u53f7\u3002 \u70b9\u51fb\u670d\u52a1\u96c6\u6210\u9875\u9762\u53f3\u4e0b\u89d2\u7684\u3010\u9a6c\u4e0a\u6dfb\u52a0\u3011\u8fdb\u884c\u8bbe\u7f6e\u3002

    \u8be5\u4fe1\u606f\u4e3a\u901a\u8fc7 TAPD \u63d0\u4ea4\u7f3a\u9677\u7684\u7528\u6237\u8ba4\u8bc1\u4fe1\u606f\uff0c\u82e5\u672a\u586b\u5199\uff0c\u5219\u4f7f\u7528\u7ec4\u7ec7\u4e2d\u914d\u7f6e\u7684\u9ed8\u8ba4\u4fe1\u606f\u3002 \u9009\u62e9\u3010\u7b2c\u4e09\u65b9\u5e73\u53f0\u8d26\u53f7\u3011\u8bbe\u7f6e\u3010Tapd\u3011\u4fe1\u606f\uff0c\u5982\u679c\u4e0d\u8bbe\u7f6e\u4e2a\u4eba\u5e73\u53f0\u8d26\u53f7\uff0c\u5219\u6240\u6709\u4f7f\u7528 MeterSphere \u63d0\u4ea4\u7f3a\u9677\u7684\u7528\u6237\uff0c\u6b64\u7f3a\u9677\u63a8\u9001\u5230\u914d\u7f6e\u7684\u670d\u52a1\u5e73\u53f0\u4e0a\u8d26\u53f7\u90fd\u662f\u670d\u52a1\u914d\u7f6e\u4e2d\u8bbe\u5b9a\u7684\u8d26\u53f7\u4fe1\u606f\u3002

    \u53c2\u6570\u8bf4\u660e\uff1a\u3010TAPD \u6635\u79f0\u3011\u662f TAPD \u4e2a\u4eba\u8bbe\u7f6e\u91cc\u67e5\u770b\u3002

    \u4ee5\u4e0a\u914d\u7f6e\u5b8c\u6210\u540e\uff0c\u5728 Metersphere \u7cfb\u7edf\u4e2d\u6d4b\u8bd5\u7528\u4f8b\u91cc\uff0c\u5c31\u53ef\u4ee5\u5173\u8054 TAPD \u7684\u76f8\u5173\u9700\u6c42\u3002

    \u5728\u7f3a\u9677\u7ba1\u7406\u63d0\u4ea4\u7f3a\u9677\u540e\uff0c\u5e73\u53f0\u7c7b\u578b\u663e\u793a\u4e3a TAPD \u7684\u6570\u636e\uff0c\u70b9\u51fb\u3010\u540c\u6b65\u7f3a\u9677\u3011\u6309\u94ae\uff0c\u4f1a\u5c06\u6570\u636e\u540c\u6b65\u5230 TAPD \u7cfb\u7edf\u4e2d\u3002

    \u5728 TAPD \u7f3a\u9677\u4e2d\u53ef\u4ee5\u67e5\u8be2\u5230\u540c\u6b65\u8fc7\u6765\u7684\u7f3a\u9677\u6570\u636e\u3002

    "},{"location":"user_manual/system_management/workspace/#22-jira","title":"2.2 \u4e0eJIRA\u96c6\u6210","text":"

    \u6ce8\u610f

    v2.4 \u7248\u672c\u7f3a\u9677\u5bf9\u63a5\u5b9e\u73b0\u4e86\u63d2\u4ef6\u5316\uff0c\u53ef\u6839\u636e\u81ea\u8eab\u9700\u6c42\u5f00\u53d1\u5bf9\u5e94\u63d2\u4ef6\u3002 \u76ee\u524d\u5df2\u5b9e\u73b0 Jira \u5e73\u53f0\u7684\u63d2\u4ef6\u5316\uff0c\u539f\u5148\u4f7f\u7528 Jira \u7684\u7528\u6237\uff0c\u9700\u8981\u4e0b\u8f7d\u4e0b\u63d2\u4ef6\uff0c\u5e76\u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u63d2\u4ef6\u7ba1\u7406\u3011\u4e0a\u4f20\u63d2\u4ef6\u3002 \u4f7f\u7528\u65b9\u5f0f\u8ddf\u539f\u6765\u4e00\u81f4\uff0c\u5177\u4f53\u53c2\u8003\u63d2\u4ef6\u9879\u76ee\uff1ahttps://github.com/metersphere/metersphere-platform-plugin

    \u7b2c\u4e00\u6b65\uff1a\u586b\u5199\u5bf9\u63a5 JIRA \u7684\u5730\u5740\u3001\u8ba4\u8bc1\u4fe1\u606f\u548c\u95ee\u9898\u7c7b\u578b\uff0c\u5982\u4e0b\u3002

    \u6ce8\u610f

    \u95ee\u9898\u7c7b\u578b\u9700\u8981\u548c JIRA \u7684\u4e8b\u52a1\u7c7b\u578b\u4fdd\u6301\u4e00\u81f4\uff0c\u5fc5\u987b\u5728 JIRA \u4e2d\u5b58\u5728\u6b64\u7c7b\u578b\uff0c\u5982\u4e0b\uff1a

    \u5982\u679c\u53f3\u4e0a\u89d2\u5207\u6362\u7ec4\u7ec7\uff0c\u9700\u8981\u91cd\u590d\u4e0a\u8ff0\u5bf9\u63a5 JIRA \u64cd\u4f5c

    \u7b2c\u4e8c\u6b65\uff1a \u5173\u8054\u9879\u76ee\u914d\u7f6e \u914d\u7f6e\u5b8c\u670d\u52a1\u96c6\u6210\u540e\uff0c\u8fd8\u9700\u8981\u914d\u7f6e\u9879\u76ee\u4e2d\u5f15\u7528 JIRA \u9879\u76ee\u7684\u8bbe\u7f6e\uff0c\u5373\u5173\u8054\u9879\u76ee\u3002\u70b9\u51fb\u9875\u9762\u53f3\u4e0b\u89d2\u7684\u3010\u9a6c\u4e0a\u5173\u8054\u9879\u76ee\u3011\u8fdb\u884c\u8bbe\u7f6e\u3002

    \u8df3\u8f6c\u5230\u9879\u76ee\u7ba1\u7406\u9875\u9762\uff0c\u70b9\u51fb\u9879\u76ee\u5217\u8868\u4e2d\u7684\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u8bbe\u7f6e\u9879\u76ee\u91cc\u9879\u76ee\u76f8\u5173\u914d\u7f6e\u3002

    \u53c2\u6570\u8bf4\u660e

    \u3010\u96c6\u6210\u7b2c\u4e09\u65b9\u5e73\u53f0\u3011\uff1a\u9009\u62e9\u3010JIRA\u3011\u3002 \u3010\u7f3a\u9677\u6a21\u677f\u3011\uff1a\u9009\u62e9\u3010JIRA-\u9ed8\u8ba4\u6a21\u677f\u3011 \u3010\u4f7f\u7528 Jira \u7f3a\u9677\u6a21\u677f\u3011\uff1a\u9009\u4e2d\uff0c\u5219\u8868\u793a\u7cfb\u7edf\u4f1a\u81ea\u52a8\u540c\u6b65 JIRA \u7cfb\u7edf\u4e2d\u7684\u7f3a\u9677\u6a21\u677f\uff1b\u4e0d\u9009\u62e9\uff0c\u5219\u9700\u8981\u8fdb\u5165\u7b2c\u56db\u6b65\uff0c\u624b\u52a8\u914d\u7f6e MS \u7f3a\u9677\u6a21\u677f\u548c Jira \u7cfb\u7edf\u4e2d\u7684\u7f3a\u9677\u6a21\u677f\u7684\u5b57\u6bb5\u5bf9\u5e94\u5173\u7cfb\u3002 \u3010JIRA \u9879\u76ee Key\u3011\uff1a\u9879\u76ee\u7684\u5173\u952e\u5b57\u7684\u9700\u8981\u5728 JIRA \u5e73\u53f0\u4e0a\u8fdb\u884c\u67e5\u8be2\uff0c\u5982\u4e0b\u3002

    \u7b2c\u4e09\u6b65\uff1a\u6dfb\u52a0\u4e2a\u4eba\u5e73\u53f0\u8d26\u53f7\u3002 \u70b9\u51fb\u670d\u52a1\u96c6\u6210\u9875\u9762\u53f3\u4e0b\u89d2\u7684\u3010\u9a6c\u4e0a\u6dfb\u52a0\u3011\u8fdb\u884c\u8bbe\u7f6e\u3002

    \u8be5\u4fe1\u606f\u4e3a\u901a\u8fc7 Jira \u63d0\u4ea4\u7f3a\u9677\u7684\u7528\u6237\u8ba4\u8bc1\u4fe1\u606f\uff0c\u82e5\u672a\u586b\u5199\uff0c\u5219\u4f7f\u7528\u7ec4\u7ec7\u4e2d\u914d\u7f6e\u7684\u9ed8\u8ba4\u4fe1\u606f.\u70b9\u51fb\u3010\u7b2c\u4e09\u65b9\u5e73\u53f0\u8d26\u53f7\u3011\u8bbe\u7f6e\u3010Jira \u4fe1\u606f\u3011\uff0c\u5982\u679c\u4e0d\u8bbe\u7f6e\u4e2a\u4eba\u5e73\u53f0\u8d26\u53f7\uff0c\u5219\u6240\u6709\u4f7f\u7528 MeterSphere \u63d0\u4ea4\u7f3a\u9677\u7684\u7528\u6237\uff0c\u6b64\u7f3a\u9677\u63a8\u9001\u5230\u914d\u7f6e\u7684\u670d\u52a1\u5e73\u53f0\u4e0a\u8d26\u53f7\u90fd\u662f\u670d\u52a1\u914d\u7f6e\u4e2d\u8bbe\u5b9a\u7684\u8d26\u53f7\u4fe1\u606f\u3002

    \u4ee5\u4e0a\u914d\u7f6e\u5b8c\u6210\u540e\uff0c\u5728 Metersphere \u7cfb\u7edf\u4e2d\u6d4b\u8bd5\u7528\u4f8b\u91cc\uff0c\u5c31\u53ef\u4ee5\u5173\u8054JIRA \u7684\u76f8\u5173\u9700\u6c42\uff0c\u6216\u540c\u6b65\u76f8\u5173\u7f3a\u9677\u3002

    "},{"location":"user_manual/system_management/workspace/#23","title":"2.3 \u4e0e\u7985\u9053\u96c6\u6210","text":"

    \u7b2c\u4e00\u6b65\uff1a\u670d\u52a1\u96c6\u6210\u914d\u7f6e\u3002

    \u7985\u9053\u76ee\u524d\u5b58\u5728 GET \u548c PATH_INFO \u4e24\u79cd\u63a5\u53e3\u8c03\u7528\u65b9\u5f0f\uff08\u5373\u5176requestType \u53c2\u6570\uff09\u5bf9\u4e8e\u7985\u9053\u63a5\u53e3\u7684\u8c03\u7528\u4f7f\u7528\u7684\u662f PATH_INFO \u65b9\u5f0f\u548c GET \u8bf7\u6c42\u65b9\u5f0f\u7684\u652f\u6301\uff0c\u7528\u6237\u53ef\u4ee5\u6839\u636e\u81ea\u5df1\u4f7f\u7528\u7684\u7985\u9053\u7cfb\u7edf\u7684\u914d\u7f6e\u60c5\u51b5\u81ea\u4e3b\u9009\u62e9\u8bf7\u6c42\u65b9\u5f0f\u3002

    \u8bf4\u660e

    1. \u8d26\u53f7\u5bc6\u7801\u4e3a\u5177\u6709\u76f8\u5e94\u6743\u9650\u7684 Zentao \u8d26\u53f7\uff0c\u8d26\u53f7\u9700\u8981\u5177\u6709\u8d85\u7ea7 model \u8c03\u7528\u63a5\u53e3\u6743\u9650\u3002
    2. \u8bf7\u6c42\u65b9\u5f0f\uff1a\u5728\u7985\u9053\u91cc\u5177\u4f53\u67e5\u770b\uff1a\u53c2\u8003\u7985\u9053\u914d\u7f6e\u6587\u4ef6\u4e2d$config->requestType \u7684\u503c\uff1b\u914d\u7f6e\u6587\u4ef6\u53c2\u8003\u8def\u5f84\uff1a/opt/zbox/app/zentao/config/my.php \u3002
    3. \u5982\u679c\u63d0\u793a\u56e0\u4e3a\u5b89\u5168\u95ee\u9898 api \u7981\u7528\uff0c\u9700\u8981\u4fee\u6539\u7985\u9053\u670d\u52a1\u5668\u914d\u7f6e\u6587\u4ef6/opt/zbox/app/zentao/config/my.php\uff0c\u52a0\u4e0a '$config->features->apiGetModel = true;' \u8fd9\u4e2a\u914d\u7f6e\u3002

    \u7b2c\u4e8c\u6b65\uff1a \u5173\u8054\u9879\u76ee\u914d\u7f6e \u914d\u7f6e\u5b8c\u670d\u52a1\u96c6\u6210\u540e\uff0c\u8fd8\u9700\u8981\u914d\u7f6e\u9879\u76ee\u4e2d\u5f15\u7528\u7985\u9053\u9879\u76ee\u7684\u8bbe\u7f6e\uff0c\u5373\u5173\u8054\u9879\u76ee\u3002\u70b9\u51fb\u9875\u9762\u53f3\u4e0b\u89d2\u7684\u3010\u9a6c\u4e0a\u5173\u8054\u9879\u76ee\u3011\u8fdb\u884c\u8bbe\u7f6e\u3002

    \u8df3\u8f6c\u5230\u3010\u9879\u76ee\u7ba1\u7406\u3011\uff0c\u70b9\u51fb\u3010\u7f16\u8f91\u3011\uff0c\u7f16\u8f91\u9879\u76ee\u91cc\u3010\u7985\u9053\u9879\u76eeID\u3011\uff0c\u4ee5\u53ca\u7f3a\u9677\u6a21\u677f\u7b49\u76f8\u5173\u4fe1\u606f\u3002

    \u53c2\u6570\u8bf4\u660e

    \u3010Zentao\uff08\u7985\u9053\uff09\u9879\u76ee ID\u3011\uff1a\u5982\u679c \u7985\u9053 bug \u662f\u9644\u5c5e\u5728\u9879\u76ee\u4e0a\uff0c\u5219\u5173\u8054\u7684Zentao ID \u4e3a\u9879\u76ee ID\uff1b\u5982\u679c \u7985\u9053 Bug \u662f\u9644\u5c5e\u5728\u4ea7\u54c1\u4e0a\uff0c\u5219\u5173\u8054\u7684 ZentaoID \u4e3a\u4ea7\u54c1 ID\u3002

    \u7b2c\u4e09\u6b65\uff1a\u6dfb\u52a0\u4e2a\u4eba\u5e73\u53f0\u8d26\u53f7 \u70b9\u51fb\u670d\u52a1\u96c6\u6210\u9875\u9762\u53f3\u4e0b\u89d2\u7684\u3010\u9a6c\u4e0a\u6dfb\u52a0\u3011\u8fdb\u884c\u8bbe\u7f6e\u3002

    \u8be5\u4fe1\u606f\u4e3a\u901a\u8fc7\u7985\u9053\u63d0\u4ea4\u7f3a\u9677\u7684\u7528\u6237\u540d\u3001\u5bc6\u7801\uff0c\u82e5\u672a\u586b\u5199\uff0c\u5219\u4f7f\u7528\u7ec4\u7ec7\u4e2d\u914d\u7f6e\u7684\u9ed8\u8ba4\u4fe1\u606f\u3002 \u9009\u62e9\u3010\u7b2c\u4e09\u65b9\u5e73\u53f0\u8d26\u53f7\u3011\u8bbe\u7f6e\u3010\u7985\u9053\u4fe1\u606f\u3011\uff0c\u5982\u679c\u4e0d\u8bbe\u7f6e\u4e2a\u4eba\u5e73\u53f0\u8d26\u53f7\uff0c\u5219\u6240\u6709\u4f7f\u7528 MeterSphere \u63d0\u4ea4\u7f3a\u9677\u7684\u7528\u6237\uff0c\u6b64\u7f3a\u9677\u63a8\u9001\u5230\u914d\u7f6e\u7684\u670d\u52a1\u5e73\u53f0\u4e0a\u8d26\u53f7\u90fd\u662f\u670d\u52a1\u914d\u7f6e\u4e2d\u8bbe\u5b9a\u7684\u8d26\u53f7\u4fe1\u606f\u3002

    \u4ee5\u4e0a\u914d\u7f6e\u5b8c\u6210\u540e\uff0c\u5728 Metersphere \u7cfb\u7edf\u4e2d\u6d4b\u8bd5\u7528\u4f8b\u91cc\uff0c\u5c31\u53ef\u4ee5\u5173\u8054\u7985\u9053\u7684\u76f8\u5173\u9700\u6c42\u3002

    \u5728\u7f3a\u9677\u7ba1\u7406\u63d0\u4ea4\u7f3a\u9677\u540e\uff0c\u6570\u636e\u4f1a\u540c\u6b65\u5230\u7985\u9053\u7cfb\u7edf\u4e2d\u3002

    "},{"location":"user_manual/system_management/workspace/#24-azure-devops","title":"2.4 \u4e0eAzure Devops\u96c6\u6210","text":"

    \u7b2c\u4e00\u6b65\uff1a\u670d\u52a1\u96c6\u6210\u914d\u7f6e\u3002 \u586b\u5199\u3010Basic Auth \u8d26\u53f7\u4fe1\u606f\u3011\u540e\uff0c\u70b9\u51fb\u3010\u6d4b\u8bd5\u8fde\u63a5\u3011\u5373\u53ef

    \u7b2c\u4e8c\u6b65\uff1a \u5173\u8054\u9879\u76ee\u914d\u7f6e \u914d\u7f6e\u5b8c\u670d\u52a1\u96c6\u6210\u540e\uff0c\u8fd8\u9700\u8981\u914d\u7f6e\u9879\u76ee\u4e2d\u5f15\u7528\u7985\u9053\u9879\u76ee\u7684\u8bbe\u7f6e\uff0c\u5373\u5173\u8054\u9879\u76ee\u3002\u70b9\u51fb\u9875\u9762\u53f3\u4e0b\u89d2\u7684\u3010\u9a6c\u4e0a\u5173\u8054\u9879\u76ee\u3011\u8fdb\u884c\u8bbe\u7f6e\u3002

    \u8df3\u8f6c\u5230\u3010\u9879\u76ee\u7ba1\u7406\u3011\uff0c\u70b9\u51fb\u3010\u7f16\u8f91\u3011\uff0c\u7f16\u8f91\u9879\u76ee\u91cc\u3010\u96c6\u6210\u7b2c\u4e09\u65b9\u5e73\u53f0\u3011\u3001\u3010AzureDevops\u9879\u76eeID\u3011\u3001\u3010AzureDevops\u8fc7\u6ee4ID\u3011\uff0c\u4ee5\u53ca\u7f3a\u9677\u6a21\u677f\u7b49\u76f8\u5173\u4fe1\u606f\u3002

    \u7b2c\u4e09\u6b65\uff1a\u6dfb\u52a0\u4e2a\u4eba\u5e73\u53f0\u8d26\u53f7 \u70b9\u51fb\u670d\u52a1\u96c6\u6210\u9875\u9762\u53f3\u4e0b\u89d2\u7684\u3010\u9a6c\u4e0a\u6dfb\u52a0\u3011\u8fdb\u884c\u8bbe\u7f6e\u3002

    \u9009\u62e9\u3010\u7b2c\u4e09\u65b9\u5e73\u53f0\u8d26\u53f7\u3011\u8bbe\u7f6e\u3010AzureDevops \u4fe1\u606f\u3011\uff0c\u5982\u679c\u4e0d\u8bbe\u7f6e\u4e2a\u4eba\u5e73\u53f0\u8d26\u53f7\uff0c\u5219\u4f7f\u7528 MeterSphere \u63d0\u4ea4\u7f3a\u9677\u7684\u7528\u6237\uff0c\u6b64\u7f3a\u9677\u63a8\u9001\u5230\u914d\u7f6e\u7684\u670d\u52a1\u5e73\u53f0\u4e0a\u8d26\u53f7\u90fd\u662f\u670d\u52a1\u914d\u7f6e\u4e2d\u8bbe\u5b9a\u7684\u8d26\u53f7\u4fe1\u606f\u3002

    \u4ee5\u4e0a\u914d\u7f6e\u5b8c\u6210\u540e\uff0c\u5728 Metersphere \u7cfb\u7edf\u4e2d\u6d4b\u8bd5\u7528\u4f8b\u91cc\uff0c\u5c31\u53ef\u4ee5\u5173\u8054 AzureDevops \u7684\u76f8\u5173\u9700\u6c42\u3002

    \u5728\u7f3a\u9677\u7ba1\u7406\u63d0\u4ea4\u7f3a\u9677\u540e\uff0c\u70b9\u51fb\u3010\u540c\u6b65\u6309\u94ae\u3011\uff0c\u6570\u636e\u4f1a\u540c\u6b65\u5230 AzureDevops \u7cfb\u7edf\u4e2d\u3002

    "},{"location":"user_manual/system_management/workspace/#3","title":"3 \u9879\u76ee\u7ba1\u7406","text":"

    \u5de5\u4f5c\u7a7a\u95f4\u4e0b\u5bf9\u6240\u6709\u9879\u76ee\u53ca\u9879\u76ee\u4f7f\u7528\u5230\u7684 Jar \u5305\u8fdb\u884c\u7edf\u4e00\u7ba1\u7406\u3002

    • \u521b\u5efa\u9879\u76ee

    \u70b9\u51fb\u9875\u9762\u5de6\u4fa7\u3010\u9879\u76ee\u7ba1\u7406\u3011\uff0c\u70b9\u51fb\u3010\u521b\u5efa\u9879\u76ee\u3011\uff0c\u586b\u5199\u76f8\u5173\u9879\u76ee\u57fa\u672c\u4fe1\u606f

    \u6839\u636e\u9879\u76ee\u5b9e\u9645\u60c5\u51b5\uff0c\u9009\u62e9\u5bf9\u5e94\u7684\u7b2c\u4e09\u65b9\u96c6\u6210\u5e73\u53f0\u4ee5\u53ca\u7528\u4f8b\u6a21\u677f\u548c\u7f3a\u9677\u6a21\u677f\uff0c\u70b9\u51fb\u4fdd\u5b58\u5373\u53ef\u3002

    \u53c2\u6570\u8bf4\u660e

    \u3010\u7b2c\u4e09\u65b9\u96c6\u6210\u5e73\u53f0\u3011\uff1a\u76ee\u524d\u53ea\u652f\u6301\u4ee5\u4e0a\u51e0\u79cd\u96c6\u6210\u5e73\u53f0\uff0c\u53ef\u53c2\u8003\u4e0a\u9762\u3010\u5de5\u4f5c\u7a7a\u95f4-\u670d\u52a1\u96c6\u6210\u3011\u8fdb\u884c\u914d\u7f6e\u3002 \u3010\u7528\u4f8b\u6a21\u677f\u3011\uff1a\u53ef\u53c2\u8003\u3010\u9879\u76ee\u8bbe\u7f6e-\u6a21\u677f\u7ba1\u7406-\u7528\u4f8b\u6a21\u677f\u3011\u8fdb\u884c\u81ea\u5b9a\u4e49\u7528\u4f8b\u6a21\u677f\u3002 \u3010\u7f3a\u9677\u6a21\u677f\u3011\uff1a\u53ef\u53c2\u8003\u3010\u9879\u76ee\u8bbe\u7f6e-\u6a21\u677f\u7ba1\u7406-\u7f3a\u9677\u6a21\u677f\u3011\u8fdb\u884c\u81ea\u5b9a\u4e49\u7f3a\u9677\u6a21\u677f\u3002

    \u81ea\u52a8\u751f\u6210 Jira \u7f3a\u9677\u6a21\u7248 (X-Pack) \u3010\u521b\u5efa\u9879\u76ee\u3011\uff0c\u586b\u5199\u7b2c\u4e09\u65b9\u96c6\u6210\u5e73\u53f0\u4e3a Jira \u540e\uff0c\u52fe\u9009\u4e0b\u9762\u7684\u3010\u4f7f\u7528 Jira \u7f3a\u9677\u6a21\u677f\u3011\uff0c\u586b\u5199\u597d\u5176\u4ed6\u914d\u7f6e\u4fe1\u606f\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u5373\u53ef

    • \u7f16\u8f91\u9879\u76ee \u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u53ef\u7f16\u8f91\u9879\u76ee\u76f8\u5173\u4fe1\u606f\u540e\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u6309\u94ae\u5373\u53ef

    • \u5220\u9664\u9879\u76ee \u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u586b\u5199\u4e0a\u65b9\u63d0\u793a\u5185\u5bb9\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u6309\u94ae\uff0c\u8be5\u9879\u76ee\u5373\u53ef\u88ab\u5220\u9664

    • \u73af\u5883\u914d\u7f6e \u70b9\u51fb\u3010\u73af\u5883\u914d\u7f6e\u3011\u6309\u94ae\uff0c\u586b\u5199\u73af\u5883\u76f8\u5173\u4fe1\u606f\u5373\u53ef\uff0c\u5177\u4f53\u60c5\u51b5\u53ef\u53c2\u8003\u3010\u5de5\u4f5c\u7a7a\u95f4-\u73af\u5883\u7ba1\u7406\u3011

    "},{"location":"user_manual/system_management/workspace/#4-x-pack","title":"4 \u914d\u989d\u7ba1\u7406 (X-Pack)","text":"

    \u8fdb\u5165\u3010\u914d\u989d\u7ba1\u7406\u3011\u9875\u9762\uff0c\u53ef\u3010\u7f16\u8f91\u3011\u4e0a\u65b9\u7684\u9879\u76ee\u9ed8\u8ba4\u914d\u989d\uff0c\u7f16\u8f91\u5b8c\u6210\u540e\uff0c\u5728\u914d\u989d\u5217\u8868\u4e2d\u4f7f\u7528\u9ed8\u8ba4\u914d\u7f6e\u7684\uff0c\u5c06\u540c\u6b65\u66f4\u65b0\u7f16\u8f91\u7684\u6570\u636e\u3002

    \u70b9\u51fb\u9879\u76ee\u7684\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u53ef\u5bf9\u5355\u4e2a\u9879\u76ee\u8fdb\u884c\u914d\u989d\u7ba1\u7406\u8bbe\u7f6e

    \u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u5373\u53ef\u5220\u9664\u5df2\u914d\u7f6e\u597d\u7684\u5185\u5bb9\uff0c\u6062\u590d\u5230\u6700\u521d\u72b6\u6001\uff0c\u4f7f\u7528\u9ed8\u8ba4\u914d\u989d\u7684\u72b6\u6001\u4e5f\u7531\u3010\u662f\u3011\u53d8\u6210\u3010\u5426\u3011

    "},{"location":"user_manual/system_management/workspace/#5","title":"5 \u73af\u5883\u7ba1\u7406","text":"

    \u5de5\u4f5c\u7a7a\u95f4\u4e0b\u6240\u6709\u6d4b\u8bd5\u76f8\u5173\u73af\u5883\u7edf\u4e00\u7ba1\u7406\u3002\u6b64\u73af\u5883\u914d\u7f6e\u7ba1\u7406\u5373\u662f\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u7684 \u6240\u6709\u9879\u76ee\u7684 \u6240\u6709\u73af\u5883\u4fe1\u606f\uff0c\u53ef\u5bf9\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u7684\u73af\u5883\u8fdb\u884c\u6dfb\u52a0\u3001\u4fee\u6539\u53ca\u79fb\u9664\u7684\u64cd\u4f5c\u3002\u5e76\u4e14\u652f\u6301\u5404\u4e2a\u73af\u5883\u914d\u7f6e\u4fe1\u606f\u7684\u5bfc\u5165\u548c\u5bfc\u51fa\uff0c\u65b9\u4fbf\u5ba2\u6237\u5feb\u901f\u65b0\u5efa\u548c\u7ef4\u62a4\u6d4b\u8bd5\u73af\u5883\u3002 \u70b9\u51fb\u9875\u9762\u5de6\u4fa7\u3010\u5de5\u4f5c\u7a7a\u95f4\u3011\uff0c\u70b9\u51fb\u3010\u73af\u5883\u914d\u7f6e\u3011\uff0c\u5373\u53ef\u67e5\u770b\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u7684\u6240\u6709\u9879\u76ee\u7684\u6240\u6709\u73af\u5883\u5217\u8868\u3002

    "},{"location":"user_manual/system_management/workspace/#51","title":"5.1 \u73af\u5883\u5217\u8868","text":"
    • \u521b\u5efa\u73af\u5883 \u70b9\u51fb\u9875\u9762\u5217\u8868\u4fe1\u606f\u5de6\u4e0a\u89d2\u7684\u3010\u521b\u5efa\u73af\u5883\u3011\uff0c\u53ef\u65b0\u589e\u6b64\u5de5\u4f5c\u7a7a\u95f4\u4e0b\u4efb\u610f\u9879\u76ee\u7684\u6d4b\u8bd5\u73af\u5883\u3002

    \u5728\u5de5\u4f5c\u7a7a\u95f4\u4e0b\u521b\u5efa\u73af\u5883\uff0c\u9700\u8981\u6307\u5b9a\u6b64\u73af\u5883\u662f\u7528\u4e8e\u54ea\u4e2a\u9879\u76ee\uff0c\u5176\u4ed6\u73af\u5883\u8bbe\u7f6e\u4fe1\u606f\u540c\u9879\u76ee\u7ba1\u7406\u91cc\u7684\u65b0\u589e\u73af\u5883\u3002

    \u53c2\u6570\u8bf4\u660e

    \u3010\u9009\u62e9\u9879\u76ee\u3011\uff1a\u6307\u5b9a\u73af\u5883\u6240\u5c5e\u7684\u9879\u76ee\uff0c\u6b64\u9879\u76ee\u662f\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e0b\uff0c\u6709\u6743\u9650\u7684\u9879\u76ee\u5217\u8868\u3002 \u3010\u73af\u5883\u540d\u79f0\u3011\uff1a\u4e3a\u65b0\u521b\u5efa\u7684\u73af\u5883\u547d\u540d\u3002 \u3010\u901a\u7528\u914d\u7f6e\u3011\uff1a\u6b64\u5904\u8bbe\u7f6e\u7684\u53d8\u91cf\u662f\u73af\u5883\u53d8\u91cf\uff0c\u53ef\u5355\u4e2a\u6dfb\u52a0\u548c\u6279\u91cf\u6dfb\u52a0\u3002IP \u548c\u57df\u540d\u6620\u5c04\u5173\u7cfb\u8bbe\u7f6e\u4ee5\u53ca\u94fe\u63a5\u8d85\u65f6\u3001\u54cd\u5e94\u8d85\u65f6\u8bbe\u7f6e\u3002 \u3010HTTP\u914d\u7f6e\u3011\uff1a\u6b64\u5904\u53ef\u914d\u7f6e\u73af\u5883\u5730\u5740\u4ee5\u53ca\u542f\u7528\u6761\u4ef6\uff0c\u4e5f\u53ef\u8bbe\u7f6e\u8bf7\u6c42\u5934\u3002 \u3010\u6570\u636e\u5e93\u914d\u7f6e\u3011\uff1a\u914d\u7f6e\u6570\u636e\u5e93\u7684\u6570\u636e\u9a71\u52a8\u4ee5\u53ca\u8fde\u63a5\u4fe1\u606f\u7b49\uff0c\u76ee\u524d\u652f\u6301 MYSQL\u3001Oracle\u3001SQLServer\u3001Postgre\u6570\u636e\u5e93 \u3010TCP \u914d\u7f6e\u3011\uff1a\u914d\u7f6e\u8fde\u63a5 TCP \u8bf7\u6c42\u7684\u76f8\u5173\u4fe1\u606f \u3010\u8bc1\u4e66\u914d\u7f6e\u3011\uff1a\u53ef\u5728\u6b64\u914d\u7f6e\u76f8\u5173\u7684\u8bc1\u4e66\u4fe1\u606f \u3010\u5168\u5c40\u524d\u7f6e\u811a\u672c\u3011\uff1a\u5168\u5c40\u524d\u7f6e\u811a\u672c\u53ef\u5206\u4e3a\u3010\u5355\u4e2a\u8bf7\u6c42\u6b65\u9aa4\u524d\u6267\u884c\u3011\u548c\u3010\u6240\u6709\u573a\u666f\u6b65\u9aa4\u524d\u6267\u884c\u3011 \u3010\u5168\u5c40\u540e\u7f6e\u811a\u672c\u3011\uff1a\u5168\u5c40\u540e\u7f6e\u811a\u672c\u53ef\u5206\u4e3a\u3010\u5355\u4e2a\u8bf7\u6c42\u6b65\u9aa4\u540e\u6267\u884c\u3011\u548c\u3010\u6240\u6709\u573a\u666f\u6b65\u9aa4\u540e\u6267\u884c\u3011 \u3010\u5168\u5c40\u8ba4\u8bc1\u914d\u7f6e\u3011\uff1a\u53ef\u914d\u7f6e\u8ba4\u8bc1\u65b9\u5f0f\u548c\u52a0\u5bc6\u7b49\u4fe1\u606f \u3010\u5168\u5c40\u65ad\u8a00\u3011\uff1a\u53ef\u542f\u7528\u8bef\u62a5\u8bbe\u7f6e\u548c\u9009\u62e9\u591a\u79cd\u7c7b\u578b\u65b9\u5f0f\u8fdb\u884c\u65ad\u8a00

    • \u901a\u7528\u914d\u7f6e \u6b64\u5904\u8bbe\u7f6e\u7684\u53d8\u91cf\u662f\u73af\u5883\u53d8\u91cf\uff0c\u7c7b\u578b\u53ef\u4ee5\u4e3a\u591a\u79cd\u7c7b\u578b\uff0c\u53ef\u5355\u4e2a\u6dfb\u52a0\u548c\u6279\u91cf\u6dfb\u52a0

    IP \u548c\u57df\u540d\u8fdb\u884c\u6620\u5c04\u914d\u7f6e\uff0c\u53ef\u8bbe\u7f6e\u94fe\u63a5\u8d85\u65f6\u3001\u54cd\u5e94\u8d85\u65f6\u65f6\u95f4

    • HTTP\u914d\u7f6e \u8bbe\u7f6e HTTP/HTTPS \u8bf7\u6c42\u5730\u5740\uff0c\u70b9\u51fb\u3010\u6dfb\u52a0\u3011\u540e\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u6309\u94ae\u5373\u53ef

    \u53ef\u8bbe\u7f6e\u6a21\u5757\u3001\u8def\u5f84\u7b49\u6761\u4ef6\u6765\u542f\u7528\u8be5\u73af\u5883

    \u53ef\u5355\u4e2a\u8bbe\u7f6e\u6216\u8005\u6279\u91cf\u8bbe\u7f6e\u8bf7\u6c42\u5934\u4fe1\u606f

    • \u6570\u636e\u5e93\u914d\u7f6e \u914d\u7f6e\u6570\u636e\u5e93\u7684\u6570\u636e\u9a71\u52a8\u4ee5\u53ca\u8fde\u63a5\u4fe1\u606f\u7b49\uff0c\u76ee\u524d\u652f\u6301 MYSQL\u3001Oracle\u3001SQLServer\u3001Postgre\u6570\u636e\u5e93

    \u6267\u884c\u591a\u6761SQL\u8bed\u53e5\u9700\u5728\u6570\u636e\u5e93\u540e\u9762\u52a0\u4e0a\u3010?allowMultiQueries=true\u3011\uff0c\u53ef\u8bbe\u7f6e\u6700\u5927\u8fde\u63a5\u6570\u548c\u8d85\u65f6\u65f6\u95f4\uff0c\u70b9\u51fb\u3010\u6821\u9a8c\u3011\u6216\u3010\u6dfb\u52a0\u3011

    • TCP \u914d\u7f6e \u53ef\u914d\u7f6e\u8fde\u63a5 TCP \u8bf7\u6c42\u7684\u76f8\u5173\u4fe1\u606f\uff0c\u4e3b\u8981\u6709 TCPClientImpl\u3001BinaryTCPClientImpl\u3001LengthPrefixedBinaryTCPClientImpl \u4e09\u79cd\u65b9\u5f0f

    • \u8bc1\u4e66\u914d\u7f6e \u8bc1\u4e66\u6587\u4ef6\u4e0a\u4f20\u652f\u6301 p12\uff0cjks\uff0cpfx \u683c\u5f0f

    • \u5168\u5c40\u524d\u7f6e\u811a\u672c \u53ef\u5728\u5355\u4e2a\u8bf7\u6c42\u6b65\u9aa4\u524d\u6267\u884c\u548c\u5728\u6240\u6709\u573a\u666f\u6b65\u9aa4\u524d\u6267\u884c\uff0c\u70b9\u51fb\u3010i\u3011\u53ef\u67e5\u770b\u63d0\u793a\u4fe1\u606f

    \u3010\u5355\u4e2a\u8bf7\u6c42\u6b65\u9aa4\u524d\u6267\u884c\u3011\u53ef\u8bbe\u7f6e\u3010\u5168\u5c40\u524d\u7f6e\u811a\u672c\u3011\u6267\u884c\u7684\u534f\u8bae\u4ee5\u53ca\u987a\u5e8f

    \u3010\u6240\u6709\u573a\u666f\u6b65\u9aa4\u524d\u6267\u884c\u3011\u53ef\u5173\u8054\u573a\u666f\u7ed3\u679c\uff0c\u573a\u666f\u6267\u884c\u6210\u529f\u4f46\u662f\u6b64\u5904\u524d\u7f6e\u811a\u672c\u6267\u884c\u5931\u8d25\uff0c\u6267\u884c\u7ed3\u679c\u662f\u663e\u793a\u5931\u8d25

    • \u5168\u5c40\u540e\u7f6e\u811a\u672c \u53ef\u53c2\u8003\u4e0a\u9762\u3010\u5168\u5c40\u524d\u7f6e\u811a\u672c\u3011
    • \u5168\u5c40\u8ba4\u8bc1\u914d\u7f6e \u53ef\u914d\u7f6e\u8ba4\u8bc1\u65b9\u5f0f\u548c\u52a0\u5bc6\u4fe1\u606f

    • \u5168\u5c40\u65ad\u8a00 \u53ef\u542f\u7528/\u5173\u95ed\u8bef\u62a5

    \u53ef\u9009\u62e9\u591a\u79cd\u7c7b\u578b\u8fdb\u884c\u65ad\u8a00\u8bbe\u7f6e\uff0c\u53ef\u52fe\u9009\u5ffd\u7565\u72b6\u6001\u7801\uff0c\u70b9\u51fb\u3010\u6dfb\u52a0\u3011\u6309\u94ae\u5373\u53ef

    • \u5bfc\u5165\u73af\u5883 \u70b9\u51fb\u3010\u5bfc\u5165\u3011\u6309\u94ae\u5bfc\u5165\u73af\u5883\uff0c\u4ec5\u652f\u6301\u901a\u8fc7 metersphere \u5bfc\u51fa\u7684 json \u6587\u4ef6\u3002

    \u5bfc\u5165\u652f\u6301\u4e3a\u4e00\u4e2a\u9879\u76ee\u6279\u91cf\u521b\u5efa\u4e0d\u540c\u7684\u73af\u5883\u3002

    • \u5bfc\u51fa\u73af\u5883 \u70b9\u51fb\u3010\u5bfc\u51fa\u73af\u5883\u3011\u6309\u94ae\u5bfc\u51fa\u73af\u5883\uff0c\u5c06\u73af\u5883\u5bfc\u51fa\u7684 json \u6587\u4ef6\u3002

    • \u7f16\u8f91\u73af\u5883 \u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\u7f16\u8f91\u73af\u5883\uff0c\u53ef\u4fee\u6539\u73af\u5883\u914d\u7f6e\u3002

    • \u590d\u5236\u73af\u5883 \u70b9\u51fb\u3010\u590d\u5236\u3011\u6309\u94ae\u8fdb\u884c\u590d\u5236\u73af\u5883\uff0c\u53ef\u590d\u5236\u5f53\u524d\u73af\u5883\u914d\u7f6e\u3002

    • \u5220\u9664\u73af\u5883 \u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\uff0c\u5373\u53ef\u5220\u9664\u73af\u5883\u914d\u7f6e\u3002

    "},{"location":"user_manual/system_management/workspace/#52","title":"5.2 \u73af\u5883\u7ec4","text":"
    • \u521b\u5efa\u73af\u5883\u7ec4 MeterSphere \u652f\u6301\u8de8\u9879\u76ee\u8fdb\u884c\u63a5\u53e3\u3001\u63a5\u53e3\u7528\u4f8b\u3001\u573a\u666f\u7528\u4f8b\u7b49\u81ea\u52a8\u5316\u811a\u672c\u5f15\u7528\uff0c\u53ef\u4ee5\u6839\u636e\u4e0d\u540c\u9879\u76ee\u3001\u5df2\u7ecf\u4e0d\u540c\u73af\u5883\u7ec4\u5408\u6210\u4e00\u4e2a\u73af\u5883\u7ec4\uff0c\u5f53\u81ea\u52a8\u5316\u6267\u884c\u65f6\uff0c\u53ef\u4ee5\u76f4\u63a5\u9009\u62e9\u8be5\u73af\u5883\u7ec4\u3002 \u70b9\u51fb\u3010\u521b\u5efa\u73af\u5883\u7ec4\u3011\uff0c\u9009\u62e9\u4e0d\u540c\u9879\u76ee\u3001\u4e0d\u540c\u73af\u5883\u4fe1\u606f\u3002
    • \u7f16\u8f91\u73af\u5883\u7ec4 \u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\u7f16\u8f91\u73af\u5883\u7ec4\uff0c\u53ef\u4fee\u6539\u5f53\u524d\u73af\u5883\u7ec4\u3002
    • \u590d\u5236\u73af\u5883\u7ec4 \u70b9\u51fb\u3010\u590d\u5236\u3011\u6309\u94ae\uff0c\u590d\u5236\u73af\u5883\u7ec4\u3002
    • \u5220\u9664\u73af\u5883\u7ec4 \u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u6839\u636e\u63d0\u793a\u4fe1\u606f\u8f93\u5165\u540e\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u6309\u94ae\uff0c\u5220\u9664\u73af\u5883\u7ec4\u3002
    "},{"location":"user_manual/system_management/workspace/#6","title":"6 \u64cd\u4f5c\u65e5\u5fd7","text":"

    \u663e\u793a\u767b\u5f55\u7528\u6237\u6240\u5904\u3010\u5de5\u4f5c\u7a7a\u95f4\u3011\u4e0b\u7684\u6240\u6709\u6709\u6743\u9650\u3010\u9879\u76ee\u3011\u7684\u6d4b\u8bd5\u8d44\u6e90\u65e5\u5fd7\u4fe1\u606f\u3002

    "},{"location":"user_manual/test_track/home/","title":"\u9996\u9875","text":"

    \u6d4b\u8bd5\u8ddf\u8e2a\u7684\u9996\u9875\u4e3b\u8981\u7528\u4e8e\u5c55\u793a\u73b0\u6709\u9879\u76ee\u7684\u7528\u4f8b\u6570\u91cf\u3001\u5173\u8054\u7528\u4f8b\u6570\u91cf\u3001\u7528\u4f8b\u7ef4\u62a4\u4eba\u5206\u5e03\u3001\u4ee5\u53ca\u8fc7\u53bb7\u5929\u6d4b\u8bd5\u8ba1\u5212\u5931\u8d25\u7528\u4f8bTOP 10\u3001\u8fd0\u884c\u4e2d\u7684\u5b9a\u65f6\u4efb\u52a1\u7b49\u4fe1\u606f\u3002

    "},{"location":"user_manual/test_track/intro/","title":"\u6982\u8ff0","text":"

    Meterphere \u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757\u56f4\u7ed5\u6d4b\u8bd5\u7528\u4f8b\u53ca\u6d4b\u8bd5\u8ba1\u5212\u63d0\u4f9b\u4ee5\u4e0b\u4e3b\u8981\u529f\u80fd\uff1a

    • \u9996\u9875\u4fe1\u606f\u5c55\u793a\uff1a\u9996\u9875\u96c6\u4e2d\u5c55\u793a\u4e86\u5f53\u524d\u9879\u76ee\u7684\u7528\u4f8b\u6570\u91cf\u7edf\u8ba1\u3001\u5173\u8054\u7528\u4f8b\u6570\u91cf\u7edf\u8ba1\u3001\u7528\u4f8b\u7ef4\u62a4\u4eba\u5206\u5e03\u3001\u9057\u7559\u7f3a\u9677\u7edf\u8ba1\u3001\u8fc7\u53bb7\u5929\u6d4b\u8bd5\u8ba1\u5212\u5931\u8d25\u7528\u4f8bTOP 10\u3001\u6d4b\u8bd5\u7528\u4f8b\u8bc4\u5ba1\u3001\u5b9a\u65f6\u4efb\u52a1\u7b49\u4fe1\u606f\u3002
    • \u529f\u80fd\u7528\u4f8b\uff1a\u652f\u6301\u5728\u7ebf\u8868\u5355\u3001\u8111\u56fe\u65b9\u5f0f\u521b\u5efa\u6d4b\u8bd5\u7528\u4f8b\uff0c\u521b\u5efa\u7528\u4f8b\u65f6\u5173\u8054\u5176\u4ed6\u7c7b\u578b\u6d4b\u8bd5\u7528\u4f8b\uff08\u6bd4\u5982\u63a5\u53e3\u7528\u4f8b\u3001\u573a\u666f\u7528\u4f8b\u3001\u6027\u80fd\u7528\u4f8b\uff09\uff0c\u652f\u6301\u6d4b\u8bd5\u7528\u4f8b\u5bfc\u5165\u3001\u5bfc\u51fa\uff0c\u5bfc\u5165\u5bfc\u51fa\u683c\u5f0f\u652f\u6301 Excel\u3001Xmind \u7b49\u591a\u79cd\u6587\u4ef6\u683c\u5f0f\u3002
    • \u7528\u4f8b\u8bc4\u5ba1\uff1a\u652f\u6301\u521b\u5efa\u8bc4\u5ba1\uff0c\u5173\u8054\u53ca\u53d6\u6d88\u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\uff0c\u5728\u7ebf\u8bc4\u5ba1\u5e76\u53cd\u9988\u8bc4\u5ba1\u662f\u5426\u901a\u8fc7\u53ca\u8bc4\u5ba1\u5177\u4f53\u610f\u89c1\u5efa\u8bae\u3002
    • \u6d4b\u8bd5\u8ba1\u5212\uff1a\u652f\u6301\u5217\u8868\u663e\u793a\u3001\u521b\u5efa\u3001\u7f16\u8f91\u3001\u5220\u9664\u6d4b\u8bd5\u8ba1\u5212\uff0c\u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\uff0c\u5728\u7ebf\u66f4\u65b0\u53cd\u9988\u6d4b\u8bd5\u7528\u4f8b\u7684\u6d4b\u8bd5\u7ed3\u679c\uff0c\u5305\u62ec\"\u901a\u8fc7\"\u3001\"\u5931\u8d25\"\u3001\"\u963b\u585e\"\u3001\"\u8df3\u8fc7\"\uff0c\u4ee5\u53ca\u5728\u7ebf\u81ea\u52a8\u5b9e\u65f6\u7edf\u8ba1\u663e\u793a\u6d4b\u8bd5\u8ba1\u5212\u5bf9\u5e94\u7684\u6d4b\u8bd5\u62a5\u544a\uff0c\u5bfc\u51faHTML\u683c\u5f0f\u6d4b\u8bd5\u62a5\u544a\u548c\u5206\u4eab\u62a5\u544a\u94fe\u63a5\u3002\u540c\u65f6\u6d4b\u8bd5\u62a5\u544a\u6a21\u677f\u53ef\u81ea\u5b9a\u4e49\uff0c\u80fd\u591f\u4e0e\u5e73\u53f0\u4e2d\u7684\u63a5\u53e3\u6d4b\u8bd5\u3001\u6027\u80fd\u6d4b\u8bd5\u529f\u80fd\u8054\u52a8\uff0c\u81ea\u52a8\u66f4\u65b0\u5173\u8054\u7528\u4f8b\u7684\u7ed3\u679c\uff0c\u8bb0\u5f55\u6d4b\u8bd5\u7528\u4f8b\u5173\u8054\u7684\u7f3a\u9677\uff0c\u7f3a\u9677\u8bb0\u5f55\u652f\u6301\u5173\u8054\u5230 JIRA / TAPD\u3002
    • \u7f3a\u9677\u7ba1\u7406\uff1a\u7ba1\u7406\u8be5\u9879\u76ee\u4e0b\u6240\u6709\u7684\u7f3a\u9677\u4fe1\u606f\uff0c\u5982\u679c\u9879\u76ee\u8bbe\u7f6e\u5173\u8054\u4e86\u5176\u4ed6BUG\u5e73\u53f0\uff08\u6bd4\u5982JIRA\u3001TAPD\u3001\u7985\u9053\u7b49\uff09\uff0c\u5219\u6b64Bug\u4f1a\u81ea\u52a8\u540c\u6b65\u5230\u76f8\u5e94\u7684\u5e73\u53f0\u3002
    • \u62a5\u544a\uff1a\u63d0\u4f9b\u76f4\u89c2\u3001\u7f8e\u89c2\u7684\u9875\u9762\u5bf9\u6d4b\u8bd5\u8ba1\u5212\u7ed3\u679c\u8fdb\u884c\u53ef\u89c6\u5316\u5c55\u793a\uff0c\u540c\u65f6\u63d0\u4f9b\u5bfc\u51fa\u62a5\u544a\u7b49\u529f\u80fd\u65b9\u4fbf\u5bf9\u6d4b\u8bd5\u7ed3\u679c\u8fdb\u884c\u5f52\u6863\u53ca\u5206\u4eab\uff0c\u540c\u65f6\u53ef\u81ea\u5b9a\u4e49\u914d\u7f6e\u62a5\u544a\u6a21\u7248\u3002
    "},{"location":"user_manual/test_track/test_case_review/","title":"\u7528\u4f8b\u8bc4\u5ba1","text":"

    \u7528\u4f8b\u8bc4\u5ba1\u652f\u6301\u521b\u5efa\u8bc4\u5ba1\uff0c\u5173\u8054\u53ca\u53d6\u6d88\u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\uff0c\u5728\u7ebf\u8bc4\u5ba1\u5e76\u53cd\u9988\u8bc4\u5ba1\u662f\u5426\u901a\u8fc7\u53ca\u8bc4\u5ba1\u5177\u4f53\u610f\u89c1\u5efa\u8bae\u3002 \u70b9\u51fb\u3010\u7528\u4f8b\u8bc4\u5ba1\u3011\u53ef\u67e5\u770b\u5f53\u524d\u9879\u76ee\u4e2d\u6240\u6709\u7684\u6d4b\u8bd5\u7528\u4f8b\u8bc4\u5ba1\u3002

    \u8fdb\u5165\u6d4b\u8bd5\u7528\u4f8b\u8bc4\u5ba1\u8be6\u60c5\u9875\u65f6\uff0c\u7cfb\u7edf\u63d0\u4f9b\u4e86\u4e24\u79cd\u7528\u4f8b\u663e\u793a\u6a21\u5f0f\uff1a\u5217\u8868\u548c\u8111\u56fe\u3002

    \u540c\u65f6\u53ef\u521b\u5efa\u3001\u7f16\u8f91\u3001\u5220\u9664\u3001\u5f00\u542f\u7528\u4f8b\u8bc4\u5ba1\u3001\u67e5\u8be2\u7b49\u7b49\u76f8\u5173\u64cd\u4f5c\u3002

    "},{"location":"user_manual/test_track/test_case_review/#1","title":"1 \u521b\u5efa\u7528\u4f8b\u8bc4\u5ba1\u4efb\u52a1","text":"

    \u70b9\u51fb\u3010\u521b\u5efa\u7528\u4f8b\u8bc4\u5ba1\u3011\u6309\u94ae\uff0c\u521b\u5efa\u4e00\u4e2a\u7528\u4f8b\u8bc4\u5ba1\u3002

    \u8bc4\u5ba1\u901a\u8fc7\u6807\u51c6

    • \u3010\u5168\u90e8\u901a\u8fc7\u3011\uff1a\u6240\u6709\u8bc4\u5ba1\u4eba\u90fd\u901a\u8fc7\u624d\u901a\u8fc7\u3002
    • \u3010\u5355\u4eba\u901a\u8fc7\u3011\uff1a\u4efb\u610f\u8bc4\u5ba1\u4eba\u901a\u8fc7\u5219\u901a\u8fc7\u3002

    \u5728\u8bc4\u5ba1\u4efb\u52a1\u6267\u884c\u4e3b\u9875\uff0c\u70b9\u51fb\u53f3\u4fa7\u5217\u8868\u4e0a\u65b9\u7684\u3010\u5173\u8054\u7528\u4f8b\u3011\u6309\u94ae\u4e3a\u8bc4\u5ba1\u4efb\u52a1\u5173\u8054\u7528\u4f8b\u3002

    \u5728\u5f39\u51fa\u7684\u7528\u4f8b\u9009\u62e9\u5217\u8868\u4e2d\uff0c\u9009\u62e9\u8981\u6dfb\u52a0\u5230\u6b64\u6b21\u7528\u4f8b\u8bc4\u5ba1\u4efb\u52a1\u4e2d\u7684\u6d4b\u8bd5\u7528\u4f8b\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u5b8c\u6210\u6dfb\u52a0\u3002

    "},{"location":"user_manual/test_track/test_case_review/#2","title":"2 \u7f16\u8f91\u8bc4\u5ba1","text":"

    \u5728\u6d4b\u8bd5\u7528\u4f8b\u8bc4\u5ba1\u8bb0\u5f55\u4e2d\uff0c\u9f20\u6807\u70b9\u51fb\u67d0\u6761\u8bb0\u5f55\uff0c\u6216\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u8fdb\u5165\u8be5\u8bc4\u5ba1\u8bb0\u5f55\u7684\u7ef4\u62a4\u4fe1\u606f\u9875\u9762\u3002

    "},{"location":"user_manual/test_track/test_case_review/#21","title":"2.1 \u5173\u8054\u7528\u4f8b","text":"

    \u70b9\u51fb\u3010\u5173\u8054\u7528\u4f8b\u3011\uff0c\u53ef\u5c06\u9700\u8981\u8bc4\u5ba1\u7684\u6d4b\u8bd5\u7528\u4f8b\u8fdb\u884c\u5173\u8054\uff0c\u8fd9\u662f\u5f00\u542f\u8bc4\u5ba1\u6d4b\u8bd5\u7528\u4f8b\u7684\u524d\u63d0\u3002

    \u540c\u65f6\u7cfb\u7edf\u652f\u6301\u8de8\u9879\u76ee\u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\u3002

    \u9009\u62e9\u9700\u8bc4\u5ba1\u7684\u6d4b\u8bd5\u7528\u4f8b\u540e\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u5373\u53ef\u5b8c\u6210\u6d4b\u8bd5\u7528\u4f8b\u7684\u5173\u8054\u3002

    "},{"location":"user_manual/test_track/test_case_review/#22","title":"2.2 \u53d6\u6d88\u5173\u8054","text":"

    \u70b9\u51fb\u529f\u80fd\u6d4b\u8bd5\u7528\u4f8b\u5217\u8868\u7684\u3010\u53d6\u6d88\u7528\u4f8b\u5173\u8054\u3011\u6309\u94ae\uff0c\u53ef\u4ee5\u53d6\u6d88\u8be5\u7528\u4f8b\u4e0e\u7528\u4f8b\u8bc4\u5ba1\u7684\u5173\u8054\uff0c\u53d6\u6d88\u540e\uff0c\u8be5\u7528\u4f8b\u5728\u7528\u4f8b\u5217\u8868\u4e2d\u6d88\u5931\u3002\u5f53\u6709\u591a\u6761\u7684\u7528\u4f8b\u9700\u8981\u53d6\u6d88\u5173\u8054\u65f6\uff0c\u53ef\u4ee5\u53bb\u52fe\u9009\u76f8\u5173\u7684\u7528\u4f8b\uff0c\u70b9\u51fb\u3010\u6279\u91cf\u53d6\u6d88\u5173\u8054\u3011\u6309\u94ae\uff0c\u4e00\u6b21\u6027\u5bf9\u591a\u6761\u7528\u4f8b\u53d6\u6d88\u5173\u8054\u3002

    "},{"location":"user_manual/test_track/test_case_review/#3","title":"3 \u5f00\u59cb\u8bc4\u5ba1","text":"

    \u6d4b\u8bd5\u7528\u4f8b\u8bc4\u5ba1\u5206\u4e3a\u4e24\u79cd\u6a21\u5f0f\uff0c\u4e00\u79cd\u662f\u4ee5\u5217\u8868\u6a21\u5f0f\u8fdb\u884c\u8bc4\u5ba1\uff1b\u7b2c\u4e8c\u79cd\u65b9\u5f0f\u662f\u4ee5\u8111\u56fe\u6a21\u5f0f\u8fdb\u884c\u8bc4\u5ba1\u3002

    "},{"location":"user_manual/test_track/test_case_review/#31","title":"3.1 \u5217\u8868\u6a21\u5f0f\u8bc4\u5ba1","text":"

    \u4e3a\u8bc4\u5ba1\u4efb\u52a1\u6dfb\u52a0\u5b8c\u7528\u4f8b\u540e\uff0c\u70b9\u51fb\u3010\u5f00\u59cb\u8bc4\u5ba1\u3011\u6309\u94ae\u8fdb\u5165\u7528\u4f8b\u8be6\u60c5\u9875\uff0c\u9ed8\u8ba4\u4ece\u4efb\u52a1\u5217\u8868\u7684\u7b2c\u4e00\u6761\u7528\u4f8b\u5b9e\u65bd\u8bc4\u5ba1\uff0c\u7528\u6237\u4e5f\u53ef\u4ee5\u70b9\u51fb\u4efb\u610f\u4e00\u6761\u7528\u4f8b\u7684\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u4ece\u8be5\u6761\u7528\u4f8b\u5f00\u59cb\u5b9e\u65bd\u8bc4\u5ba1\u3002

    \u8fdb\u5165\u7528\u4f8b\u8bc4\u5ba1\u8be6\u60c5\u9875\u9762\uff0c\u4f7f\u7528\u3010\u7ffb\u9875\u3011\u6309\u94ae\u5feb\u901f\u5207\u6362\u7528\u4f8b\uff0c\u4f7f\u7528\u6807\u7b7e\u5feb\u6377\u6807\u6ce8\u7528\u4f8b\u8bc4\u5ba1\u7ed3\u679c\uff0c\u6807\u6ce8\u540e\u7684\u8bc4\u5ba1\u7ed3\u679c\u5c06\u4f1a\u5728\u7528\u4f8b\u5217\u8868\u4e2d\u663e\u793a\u3002\u540c\u65f6\u652f\u6301\u7528\u6237\u4e3a\u6b64\u6b21\u8bc4\u5ba1\u53d1\u8868\u8bc4\u8bba\u3002

    • \u67e5\u770b\u7528\u4f8b\u5173\u8054\u7f3a\u9677 \u7528\u6237\u53ef\u4ee5\u67e5\u770b\u8bc4\u5ba1\u7528\u4f8b\u5173\u8054\u7684\u7f3a\u9677\u3002

    • \u6279\u91cf\u66f4\u6539\u8bc4\u5ba1\u7ed3\u679c \u5f53\u591a\u4e2a\u7528\u4f8b\u7684\u8bc4\u5ba1\u7ed3\u679c\u76f8\u540c\u6216\u53d1\u751f\u76f8\u540c\u53d8\u66f4\uff0c\u53ef\u4ee5\u9009\u4e2d\u76f8\u5e94\u7528\u4f8b\uff0c\u8fdb\u5165\u3010\u6279\u91cf\u7f16\u8f91\u3011\u5f39\u7a97\uff0c\u5bf9\u8bc4\u5ba1\u7ed3\u679c\u8fdb\u884c\u7edf\u4e00\u7f16\u8f91\u3002

    "},{"location":"user_manual/test_track/test_case_review/#32","title":"3.2 \u6307\u5b9a\u7528\u4f8b\u8bc4\u5ba1","text":"

    \u5982\u679c\u4e0d\u662f\u4ece\u5934\u5f00\u59cb\u505a\u6d4b\u8bd5\u7528\u4f8b\u8bc4\u5ba1\uff0c\u53ef\u4ee5\u7528\u9f20\u6807\u70b9\u51fb\u5177\u4f53\u7684\u67d0\u4e2a\u6d4b\u8bd5\u7528\u4f8b\uff0c\u6216\u8005\u70b9\u51fb\u3010\u7f16\u8f91\u3011\uff0c\u8fdb\u5165\u6307\u5b9a\u6d4b\u8bd5\u7528\u4f8b\u7684\u8bc4\u5ba1\u3002

    "},{"location":"user_manual/test_track/test_case_review/#33","title":"3.3 \u8111\u56fe\u6a21\u5f0f\u8bc4\u5ba1\u7528\u4f8b","text":"

    \u9664\u4e86\u901a\u8fc7\u5217\u8868\u53ca\u8868\u5355\u65b9\u5f0f\u8bc4\u5ba1\u7528\u4f8b\u5916\uff0c\u7528\u6237\u8fd8\u53ef\u4ee5\u901a\u8fc7\u8111\u56fe\u65b9\u5f0f\u5b9e\u73b0\u6b64\u529f\u80fd\u3002\u5728\u7528\u4f8b\u5217\u8868\u9875\u9762\u70b9\u51fb\u3010\u8111\u56fe\u3011\u5207\u6362\u5230\u8111\u56fe\u5c55\u793a\u6a21\u5f0f\uff0c\u9009\u4e2d\u5f85\u8bc4\u5ba1\u7528\u4f8b\uff0c\u901a\u8fc7\u6dfb\u52a0\u6807\u7b7e\u7684\u65b9\u5f0f\u6765\u6807\u8bb0\u7528\u4f8b\u8bc4\u5ba1\u7ed3\u679c\u3002

    "},{"location":"user_manual/test_track/test_case_review/#4","title":"4 \u91cd\u65b0\u63d0\u5ba1","text":"

    \u5f53\u8bc4\u5ba1\u6d3b\u52a8\u4e2d\u7684\u7528\u4f8b\u53d1\u751f\u5185\u5bb9\u53d8\u66f4\u540e\uff0c\u7528\u4f8b\u72b6\u6001\u4f1a\u81ea\u52a8\u5207\u6362\u4e3a\u3010\u91cd\u65b0\u63d0\u5ba1\u3011\u72b6\u6001\u3002

    \u8bc4\u5ba1\u4eba\u53ef\u5feb\u901f\u68c0\u7d22\u51fa\u9700\u8981\u91cd\u65b0\u8bc4\u5ba1\u7684\u7528\u4f8b\u3002\u8bc4\u5ba1\u5217\u8868\u4e2d\u8fd8\u652f\u6301\u624b\u52a8\u66f4\u65b0\u4e3a\u3010\u91cd\u65b0\u63d0\u5ba1\u3011\u72b6\u6001\u3002

    \u5f00\u542f\u91cd\u65b0\u63d0\u5ba1

    \u3010\u91cd\u65b0\u63d0\u5ba1\u3011\u6d41\u7a0b\u9700\u8981\u5728\u3010\u9879\u76ee\u7ba1\u7406\u3011-> \u3010\u66f4\u591a\u9009\u9879\u3011 ->\u3010\u5e94\u7528\u7ba1\u7406\u3011->\u3010\u6d4b\u8bd5\u8ddf\u8e2a\u3011\u9009\u9879\u5361\u4e2d\u5f00\u542f\u3010\u91cd\u65b0\u63d0\u5ba1\u3011\u5f00\u5173\u3002

    "},{"location":"user_manual/test_track/test_case_review/#5","title":"5 \u6279\u91cf\u64cd\u4f5c","text":"

    \u529f\u80fd\u8be6\u7ec6\u4ecb\u7ecd\u53ca\u4f7f\u7528\u8bf4\u660e\u53c2\u8003 \u901a\u7528\u529f\u80fd->\u8868\u5934\u529f\u80fd\u3002\u52fe\u9009\u6216\u5168\u9009\u6240\u6709\u7528\u4f8b\uff0c\u70b9\u51fb\u3010\u2026\u3011\u6309\u94ae\uff0c\u53ef\u5bf9\u5176\u505a\u6279\u91cf\u7684\u7f16\u8f91\u548c\u53d6\u6d88\u7b49\u76f8\u5173\u64cd\u4f5c\u3002

    "},{"location":"user_manual/test_track/test_case_review/#51","title":"5.1 \u6279\u91cf\u7f16\u8f91","text":"

    \u5f53\u6709\u5f88\u591a\u7528\u4f8b\u7684\u8bc4\u5ba1\u7ed3\u679c\u76f8\u540c\uff0c\u53ef\u4ee5\u53bb\u52fe\u9009\u5bf9\u5e94\u7684\u7528\u4f8b\uff0c\u8fdb\u5165\u5230\u6279\u91cf\u7f16\u8f91\u5f39\u7a97\uff0c\u70b9\u51fb\u3010\u6279\u91cf\u7f16\u8f91\u3011\uff0c\u5bf9\u8bc4\u5ba1\u7ed3\u679c\u505a\u7edf\u4e00\u7684\u7f16\u8f91\u3002

    "},{"location":"user_manual/test_track/test_case_review/#52","title":"5.2 \u6279\u91cf\u53d6\u6d88\u5173\u8054","text":"

    \u53d6\u6d88\u5173\u8054\u7684\u76ee\u7684\u5c31\u662f\u8be5\u8bc4\u5ba1\u4e2d\u4e0d\u5305\u542b\u6b64\u6d4b\u8bd5\u7528\u4f8b\uff0c\u4ec5\u4ec5\u662f\u4fee\u6539\u4e86\u8bc4\u5ba1\u7528\u4f8b\u7684\u8303\u56f4\uff0c\u5bf9\u6d4b\u8bd5\u7528\u4f8b\u6ca1\u6709\u4efb\u4f55\u4fee\u6539\u548c\u5f71\u54cd\u3002 \u9009\u62e9\u3010\u6279\u91cf\u53d6\u6d88\u5173\u8054\u3011\uff0c\u53ef\u4ee5\u4e00\u6b21\u6027\u8bbe\u7f6e\u6b64\u6b21\u8bc4\u5ba1\u4e0d\u5305\u542b\u591a\u6761\u6307\u5b9a\u7684\u6d4b\u8bd5\u7528\u4f8b\u3002

    "},{"location":"user_manual/test_track/test_defect/","title":"\u7f3a\u9677\u7ba1\u7406","text":"

    \u7f3a\u9677\u7ba1\u7406\u7528\u4e8e\u7ba1\u7406\u8be5\u9879\u76ee\u4e0b\u6240\u6709\u7684\u7f3a\u9677\u4fe1\u606f\uff0c\u5982\u679c\u9879\u76ee\u5df2\u5173\u8054\u5176\u4ed6\u7b2c\u4e09\u65b9\u7f3a\u9677\u7ba1\u7406\u5e73\u53f0\uff0c\u5219 MeterSphere \u5e73\u53f0\u4e0a\u7684 Bug \u72b6\u6001\u4f1a\u81ea\u52a8\u540c\u6b65\u5230\u5173\u8054\u5e73\u53f0\u3002 \u6b64\u7f3a\u9677\u7ba1\u7406\u662f\u7ba1\u7406\u8be5\u9879\u76ee\u4e0b\u6240\u6709\u7684\u7f3a\u9677\u4fe1\u606f\uff0c\u5982\u679c\u9879\u76ee\u8bbe\u7f6e\u4e86\u548c\u5176\u4ed6BUG\u5e73\u53f0\uff08\u6bd4\u5982 Jira\u3001TAPD\u3001\u7985\u9053\u7b49\uff09\u5173\u8054\uff0c\u5219\u6b64 Bug \u4f1a\u81ea\u52a8\u540c\u6b65\u5230\u76f8\u5e94\u7684\u5e73\u53f0\u3002

    "},{"location":"user_manual/test_track/test_defect/#1","title":"1 \u521b\u5efa\u7f3a\u9677","text":"

    \u70b9\u51fb\u5de6\u4e0a\u89d2\u7684\u3010\u521b\u5efa\u7f3a\u9677\u3011\uff0c\u53ef\u4ee5\u5728\u6b64\u521b\u5efa\u7f3a\u9677\uff0c\u4f46\u5728\u6b64\u521b\u5efa\u7684\u7f3a\u9677\u9700\u8981\u624b\u52a8\u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\u3002

    \u4e5f\u53ef\u4ee5\u5728\u6d4b\u8bd5\u7528\u4f8b\u6267\u884c\u4e2d\u521b\u5efa\u7f3a\u9677\u6216\u5173\u8054\u7f3a\u9677\u3002

    "},{"location":"user_manual/test_track/test_defect/#2-x-pack","title":"2 \u540c\u6b65\u7f3a\u9677 (X-Pack)","text":"

    \u70b9\u51fb\u5de6\u4e0a\u89d2\u7684\u3010\u540c\u6b65\u7f3a\u9677\u3011\uff0c\u5373\u53ef\u5c06\u7f3a\u9677\u540c\u6b65\u5230\u7b2c\u4e09\u65b9\u96c6\u6210\u5e73\u53f0\uff0c\u7b2c\u4e09\u65b9\u96c6\u6210\u5e73\u53f0\u7684\u7f3a\u9677\u4e5f\u4f1a\u540c\u6b65\u5230 MeterSphere \u4e2d\u3002

    "},{"location":"user_manual/test_track/test_defect/#3","title":"3 \u5bfc\u5165\u7f3a\u9677","text":"

    \u70b9\u51fb\u9875\u9762\u7684\u3010\u5bfc\u5165\u3011\u6309\u94ae\uff0c\u4e0b\u8f7d\u5bfc\u5165\u7f3a\u9677\u6a21\u677f\uff0c\u6309\u7167\u7f3a\u9677\u6a21\u677f\u7684\u89c4\u5219\u8fdb\u884c\u586b\u5199\uff0c\u9009\u62e9\u8986\u76d6\u6216\u8005\u4e0d\u8986\u76d6\u8fdb\u884c\u4e0a\u4f20\u5373\u53ef\u3002

    "},{"location":"user_manual/test_track/test_defect/#4","title":"4 \u5bfc\u51fa\u7f3a\u9677","text":"

    \u9009\u62e9\u7f3a\u9677\uff0c\u70b9\u51fb\u9875\u9762\u7684\u3010\u5bfc\u51fa\u3011\u6309\u94ae\uff0c\u52fe\u9009\u5bfc\u51fa\u5b57\u6bb5\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u6309\u94ae\u5373\u53ef\u3002

    "},{"location":"user_manual/test_track/test_report/","title":"\u62a5\u544a","text":"

    \u5bf9\u6d4b\u8bd5\u8ba1\u5212\u3001\u63a5\u53e3\u6d4b\u8bd5\u3001\u6027\u80fd\u6d4b\u8bd5\u7b49\uff0c\u7cfb\u7edf\u90fd\u652f\u6301\u63d0\u4f9b\u5b9e\u65f6\u7684\u6d4b\u8bd5\u62a5\u544a\uff0c\u652f\u6301\u5206\u4eab\u3001\u5bfc\u51fa\u6d4b\u8bd5\u62a5\u544a\uff08html\u683c\u5f0f\uff09\u7b49\u3002

    "},{"location":"user_manual/test_track/test_report/#1","title":"1 \u62a5\u544a\u8be6\u60c5\u4ecb\u7ecd","text":"

    \u5bf9\u4e8e\u6d4b\u8bd5\u8ba1\u5212\u7684\u6d4b\u8bd5\u62a5\u544a\uff0c\u5305\u542b\u5404\u7c7b\u6d4b\u8bd5\u7684\u8fdb\u5ea6\u7edf\u8ba1\u3001\u811a\u672c\u7edf\u8ba1\u3001\u7f3a\u9677\u7edf\u8ba1\u4ee5\u53ca\u8be6\u60c5\u7b49\u3002

    "},{"location":"user_manual/test_track/test_report/#11","title":"1.1 \u62a5\u544a\u603b\u7ed3","text":"

    \u5728\u3010\u6d4b\u8bd5\u8ba1\u5212\u3011\u9875\u9762\uff0c\u70b9\u51fb\u3010\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u3011\uff0c\u53ef\u7f16\u8f91\u6d4b\u8bd5\u62a5\u544a\u603b\u7ed3\u3002\u70b9\u51fb\u3010\u62a5\u544a\u3011\uff0c\u8fdb\u5165\u6d4b\u8bd5\u62a5\u544a\u9875\u9762\uff0c\u53ef\u770b\u5230\u6b64\u6b21\u62a5\u544a\u7684\u603b\u7ed3\u63cf\u8ff0\u3002

    "},{"location":"user_manual/test_track/test_report/#12","title":"1.2 \u529f\u80fd\u6d4b\u8bd5\u90e8\u5206","text":"

    \u62a5\u544a\u4e2d\u529f\u80fd\u6d4b\u8bd5\u7edf\u8ba1\u5206\u6790\u4e2d\uff0c\u63d0\u4f9b\u4e86\u76f8\u5173\u591a\u4e2a\u9875\u7b7e\u3002\u6bd4\u5982\u6d4b\u8bd5\u7ed3\u679c\u3001\u5931\u8d25\u7528\u4f8b\u3001\u7f3a\u9677\u5217\u8868\u3001\u6240\u6709\u7528\u4f8b\u7b49\u3002 \u6d4b\u8bd5\u7ed3\u679c\u7edf\u8ba1\uff0c\u9ed8\u8ba4\u6b64\u4ee5\u56fe\u5f62\u5316\u5c55\u793a\u3002

    \u540c\u65f6\u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u6307\u5b9a\u7edf\u8ba1\u5404\u4e2a\u6307\u6807\uff0c\u7edf\u8ba1\u56fe\u8868\u4e3a\u81ea\u52a8\u91cd\u65b0\u7edf\u8ba1\u3002

    \u62a5\u544a\u4e2d\u3010\u7f3a\u9677\u5217\u8868\u3001\u6240\u6709\u7528\u4f8b\u3001\u5931\u8d25\u7528\u4f8b\u3001\u5835\u585e\u7528\u4f8b\u3001\u8df3\u8fc7\u7528\u4f8b\u3011\u90fd\u662f\u4ee5\u5217\u8868\u7684\u5f62\u5f0f\u663e\u793a\u5176\u76f8\u5173\u660e\u7ec6\u3002

    "},{"location":"user_manual/test_track/test_report/#13","title":"1.3 \u63a5\u53e3\u6d4b\u8bd5\u90e8\u5206","text":"

    \u62a5\u544a\u4e2d\u63a5\u53e3\u6d4b\u8bd5\u7edf\u8ba1\u5206\u6790\uff0c\u63d0\u4f9b\u4e86\u76f8\u5173\u591a\u4e2a\u9875\u7b7e\u3002 \u6d4b\u8bd5\u7ed3\u679c\u7edf\u8ba1\uff0c\u9ed8\u8ba4\u6b64\u4ee5\u56fe\u5f62\u5316\u5c55\u793a\u3002\u540c\u65f6\u628a\u9f20\u6807\u60ac\u6d6e\u5728\u67f1\u72b6\u56fe\u4e0a\uff0c\u53ef\u51fa\u73b0\u6b64\u67f1\u72b6\u76f8\u5173\u7edf\u8ba1\u4fe1\u606f\u3002

    \u62a5\u544a\u4e2d\u3010\u5931\u8d25\u7528\u4f8b\u3001\u6240\u6709\u7528\u4f8b\u3011\u90fd\u662f\u4ee5\u5217\u8868\u7684\u5f62\u5f0f\u663e\u793a\u5176\u76f8\u5173\u660e\u7ec6\u3002 \u6240\u6709\u7528\u4f8b\u5305\u542b\u3010\u63a5\u53e3\u7528\u4f8b\u3011\u548c\u3010\u573a\u666f\u7528\u4f8b\u3011\u4e24\u4e2a\u9875\u7b7e\u3002

    \u9009\u62e9\u3010\u63a5\u53e3\u7528\u4f8b\u3011\uff0c\u70b9\u51fb\u5de6\u4fa7\u63a5\u53e3\u7528\u4f8b\u5217\u8868\u4e2d\u7684\u67d0\u4e2a\u63a5\u53e3\uff0c\u5176\u53f3\u4fa7\u53ef\u5448\u73b0\u8be5\u63a5\u53e3\u8fd0\u884c\u65f6\u8be6\u7ec6\u7684\u6d4b\u8bd5\u6570\u636e\u53ca\u7ed3\u679c\u3002

    \u9009\u62e9\u3010\u573a\u666f\u7528\u4f8b\u3011\uff0c\u70b9\u51fb\u5de6\u4fa7\u573a\u666f\u7528\u4f8b\u5217\u8868\u4e2d\u7684\u67d0\u4e2a\u573a\u666f\uff0c\u5176\u53f3\u4fa7\u53ef\u5448\u73b0\u8be5\u573a\u666f\u7528\u4f8b\u8fd0\u884c\u65f6\u8be6\u7ec6\u7684\u6d4b\u8bd5\u6570\u636e\u53ca\u7ed3\u679c\u3002

    "},{"location":"user_manual/test_track/test_report/#14-ui","title":"1.4 UI \u6d4b\u8bd5\u90e8\u5206","text":"

    \u6d4b\u8bd5\u7ed3\u679c\u7edf\u8ba1\uff0c\u9ed8\u8ba4\u6b64\u4ee5\u56fe\u5f62\u5316\u5c55\u793a\u3002\u540c\u65f6\u628a\u9f20\u6807\u60ac\u6d6e\u5728\u67f1\u72b6\u56fe\u4e0a\uff0c\u53ef\u51fa\u73b0\u6b64\u67f1\u72b6\u76f8\u5173\u7edf\u8ba1\u4fe1\u606f\u3002

    \u70b9\u51fb\u5de6\u4fa7 UI \u7528\u4f8b\u5217\u8868\u4e2d\u7684\u67d0\u4e2a\u7528\u4f8b\uff0c\u5176\u53f3\u4fa7\u53ef\u5448\u73b0\u8be5 UI \u8fd0\u884c\u65f6\u8be6\u7ec6\u7684\u6d4b\u8bd5\u6570\u636e\u53ca\u7ed3\u679c\u3002

    "},{"location":"user_manual/test_track/test_report/#15","title":"1.5 \u6027\u80fd\u6d4b\u8bd5\u90e8\u5206","text":"

    \u62a5\u544a\u4e2d\u6027\u80fd\u6d4b\u8bd5\u7edf\u8ba1\u5206\u6790\uff0c\u63d0\u4f9b\u4e86\u76f8\u5173\u591a\u4e2a\u9875\u7b7e\u3002 \u6d4b\u8bd5\u7ed3\u679c\u7edf\u8ba1\uff0c\u9ed8\u8ba4\u6b64\u4ee5\u56fe\u5f62\u5316\u5c55\u793a\u3002\u540c\u65f6\u628a\u9f20\u6807\u60ac\u6d6e\u5728\u7edf\u8ba1\u56fe\u4e0a\uff0c\u53ef\u51fa\u73b0\u6b64\u56fe\u76f8\u5173\u7edf\u8ba1\u4fe1\u606f\u3002

    \u62a5\u544a\u4e2d\u3010\u5931\u8d25\u7528\u4f8b\u3001\u6240\u6709\u7528\u4f8b\u3011\u90fd\u662f\u4ee5\u5217\u8868\u7684\u5f62\u5f0f\u663e\u793a\u5176\u76f8\u5173\u660e\u7ec6\u3002 \u62a5\u544a\u4e2d\u9009\u62e9\u3010\u6240\u6709\u7528\u4f8b\u3011\uff0c\u70b9\u51fb\u5de6\u4fa7\u7528\u4f8b\u5217\u8868\u4e2d\u7684\u67d0\u4e2a\u7528\u4f8b\uff0c\u5176\u53f3\u4fa7\u53ef\u5448\u73b0\u8be5\u8fd0\u884c\u65f6\u8be6\u7ec6\u7684\u6027\u80fd\u6d4b\u8bd5\u7ed3\u679c\u3002

    "},{"location":"user_manual/test_track/test_report/#2","title":"2 \u62a5\u544a\u76ee\u5f55","text":"

    \u6d4b\u8bd5\u62a5\u544a\u5305\u542b\u6240\u6709\u6307\u5b9a\u7684\u6d4b\u8bd5\u8303\u56f4\u7684\u62a5\u544a\uff0c\u5185\u5bb9\u7e41\u591a\uff0c\u7cfb\u7edf\u63d0\u4f9b\u4e86\u62a5\u544a\u76ee\u5f55\uff0c\u53ef\u5feb\u901f\u5b9a\u4f4d\u5c55\u793a\u6307\u5b9a\u8be6\u60c5\u3002 \u70b9\u51fb\u62a5\u544a\u5de6\u4fa7\u3010\u76ee\u5f55\u3011\uff0c\u53ef\u770b\u5230\u6b64\u62a5\u544a\u7684\u76ee\u5f55\uff0c\u70b9\u51fb\u5177\u4f53\u76ee\u5f55\uff0c\u53ef\u76f4\u63a5\u8f6c\u5165\u6307\u5b9a\u76ee\u5f55\u7684\u6d4b\u8bd5\u62a5\u544a\u8be6\u60c5\u3002

    "},{"location":"user_manual/test_track/test_report/#3","title":"3 \u62a5\u544a\u514d\u767b\u9646\u5206\u4eab","text":"

    \u62a5\u544a\u652f\u6301\u514d\u767b\u9646\u5206\u4eab\u3002\u70b9\u51fb\u6d4b\u8bd5\u62a5\u544a\u53f3\u4e0a\u89d2\u7684\u3010\u5206\u4eab\u3011\uff0c\u7cfb\u7edf\u4f1a\u751f\u6210\u8be5\u62a5\u544a\u7684\u5730\u5740\uff0c\u5206\u4eab\u6b64\u5730\u5740\u7ed9\u5176\u4ed6\u4eba\u5458\u3002

    \u5728\u6d4f\u89c8\u5668\u7684\u5730\u5740\u680f\u4e2d\uff0c\u8f93\u5165\u8be5\u5730\u5740\uff0c\u5c31\u53ef\u76f4\u63a5\u6253\u5f00\u6b64\u6d4b\u8bd5\u62a5\u544a\u3002

    "},{"location":"user_manual/test_track/test_report/#4","title":"4 \u62a5\u544a\u5bfc\u51fa","text":"

    \u70b9\u51fb\u6d4b\u8bd5\u62a5\u544a\u53f3\u4e0a\u89d2\u7684\u3010\u5bfc\u51fa\u3011\uff0c\u6b64\u62a5\u544a\u53ef\u5bfc\u51fa HTML \u683c\u5f0f\u7684\u62a5\u544a\uff0c\u5176\u5185\u5bb9\u548c\u5728\u7ebf\u62a5\u544a\u4e00\u81f4\u3002

    "},{"location":"user_manual/test_track/test_case/public_test_case/","title":"\u516c\u5171\u7528\u4f8b\u5e93","text":"

    \u516c\u5171\u7528\u4f8b\u5e93\u4e3a\u540c\u4e00\u5de5\u4f5c\u7a7a\u95f4\u4e0b\u7684\u4e0d\u540c\u9879\u76ee\u5747\u53ef\u5171\u4eab\u4f7f\u7528\u7684\u3010\u516c\u5171\u7528\u4f8b\u3011\uff0c\u4e0d\u540c\u9879\u76ee\u53ef\u3010\u6dfb\u52a0\u3011\u7528\u4f8b\u81f3\u516c\u5171\u7528\u4f8b\u5e93\uff0c\u548c\u3010\u590d\u5236\u3011\u516c\u5171\u7528\u4f8b\u5e93\u4e2d\u7684\u7528\u4f8b\u3002

    \u516c\u5171\u7528\u4f8b\u5e93\u5217\u8868\u5b57\u6bb5\u4e0d\u5c55\u793a\u81ea\u5b9a\u4e49\u7684\u6a21\u677f\u5b57\u6bb5

    "},{"location":"user_manual/test_track/test_case/public_test_case/#1","title":"1 \u542f\u52a8\u516c\u5171\u7528\u4f8b\u5e93","text":"

    \u9879\u76ee\u7ba1\u7406\u5458\u53ef\u5230\u3010\u9879\u76ee\u8bbe\u7f6e\u3011-\u3010\u66f4\u591a\u9009\u9879\u3011-\u3010\u5e94\u7528\u7ba1\u7406\u3011\u9875\u9762\u4e0b\uff0c\u5f00\u542f\u3010\u542f\u52a8\u516c\u5171\u7528\u4f8b\u5e93\u3011\u8bbe\u7f6e\u3002

    "},{"location":"user_manual/test_track/test_case/public_test_case/#2","title":"2 \u6dfb\u52a0\u7528\u4f8b\u81f3\u516c\u5171\u7528\u4f8b\u5e93","text":"

    \u70b9\u51fb\u7528\u4f8b\u3010ID\u3011\u6216\u8005\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u70b9\u51fb\u3010\u6dfb\u52a0\u5230\u516c\u5171\u7528\u4f8b\u5e93\u3011\u3002

    "},{"location":"user_manual/test_track/test_case/public_test_case/#3","title":"3 \u4ece\u516c\u5171\u7528\u4f8b\u5e93\u4e2d\u590d\u5236\u7528\u4f8b","text":"

    \u590d\u5236\u516c\u5171\u7528\u4f8b\u5e93\u4e2d\u7684\u7528\u4f8b\u5230\u81ea\u5df1\u7684\u9879\u76ee\u6a21\u5757\u4e2d\u3002

    "},{"location":"user_manual/test_track/test_case/switch_project/","title":"Switch project","text":"

    \u529f\u80fd\u7528\u4f8b\uff0c\u4e3b\u8981\u7528\u4e8e\u5bf9\u529f\u80fd\u7528\u4f8b\u8fdb\u884c\u7edf\u4e00\u7ba1\u7406\uff0c\u652f\u6301\u7528\u4f8b\u7684\u5feb\u6377\u521b\u5efa\u53ca\u5bfc\u5165\u5bfc\u51fa\u64cd\u4f5c\u3002 \u8fdb\u5165\u3010\u529f\u80fd\u7528\u4f8b\u3011\u754c\u9762\u3002\u5de6\u4e0a\u65b9\u663e\u793a\u5f53\u524d\u9879\u76ee\uff0c\u9879\u76ee\u4e0b\u65b9\u663e\u793a\u6b64\u9879\u76ee\u7684\u5168\u90e8\u6d4b\u8bd5\u7528\u4f8b\u6a21\u5757\u3002\u6240\u5c5e\u67d0\u4e00\u9879\u76ee\u7684\u6d4b\u8bd5\u7528\u4f8b\u4ee5\u6a21\u5757\u4e3a\u5355\u4f4d\u8fdb\u884c\u7edf\u4e00\u7ba1\u7406\uff0c\u9875\u9762\u53f3\u4fa7\u663e\u793a\u9009\u5b9a\u6a21\u5757\u4e0b\u7684\u6d4b\u8bd5\u7528\u4f8b\u5217\u8868\uff0c\u652f\u6301\u5bf9\u6d4b\u8bd5\u7528\u4f8b\u8fdb\u884c\u65b0\u5efa\u3001\u67e5\u8be2\u3001\u7f16\u8f91\u3001\u590d\u5236\u3001\u5220\u9664\u7b49\u64cd\u4f5c\u3002

    "},{"location":"user_manual/test_track/test_case/switch_project/#1","title":"1 \u5207\u6362\u5de5\u4f5c\u7a7a\u95f4","text":"

    \u5728\u53f3\u4e0a\u89d2\u7684\u5de5\u4f5c\u7a7a\u95f4\u5904\u5207\u6362\u4e0b\u62c9\u83dc\u5355\u4e2d\u8fdb\u884c\u5de5\u4f5c\u7a7a\u95f4\u5207\u6362\uff0c\u5c55\u793a\u6240\u5c5e\u8be5\u5de5\u4f5c\u7a7a\u95f4\u53ca\u5bf9\u5e94\u9879\u76ee\u4e0b\u7684\u7528\u4f8b\u5217\u8868\u3002

    "},{"location":"user_manual/test_track/test_case/switch_project/#2","title":"2 \u5207\u6362\u9879\u76ee","text":"

    \u5728\u6a21\u5757\u6811\u4e0a\u65b9\u7684\u9879\u76ee\u5207\u6362\u4e0b\u62c9\u83dc\u5355\u4e2d\u8fdb\u884c\u9879\u76ee\u5207\u6362\uff0c\u5c55\u793a\u6240\u5c5e\u8be5\u9879\u76ee\u4e0b\u7684\u7528\u4f8b\u5217\u8868\u3002

    \u8bf4\u660e

    \u4e0d\u540c\u9879\u76ee\u95f4\u6a21\u5757\u6811\u76f8\u4e92\u72ec\u7acb\uff0c\u5f53\u5207\u6362\u9879\u76ee\u540e\u9700\u8981\u91cd\u65b0\u521b\u5efa\u6a21\u5757\u6811\u3002

    "},{"location":"user_manual/test_track/test_case/test_case/","title":"\u7528\u4f8b\u7ba1\u7406","text":""},{"location":"user_manual/test_track/test_case/test_case/#1-x-pack","title":"1 \u7528\u4f8b\u7248\u672c\u7ba1\u7406 (X-Pack)","text":"

    \u5e73\u53f0\u53ef\u4e3a\u4e0d\u540c\u7248\u672c\u7cfb\u7edf\u6d4b\u8bd5\u7684\u7528\u4f8b\u8fdb\u884c\u7ba1\u7406\u3002

    "},{"location":"user_manual/test_track/test_case/test_case/#2","title":"2 \u5207\u6362\u7528\u4f8b\u89c6\u56fe","text":"

    \u76ee\u524d\uff0c\u5e73\u53f0\u63d0\u4f9b\u4e24\u79cd\u7528\u4f8b\u5448\u73b0\u65b9\u5f0f\uff0c\u8fdb\u5165\u3010\u6d4b\u8bd5\u7528\u4f8b\u3011\u9875\u9762\u540e\uff0c\u9ed8\u8ba4\u6253\u5f00\u3010\u5217\u8868\u3011\u89c6\u56fe\uff0c\u70b9\u51fb\u3010\u8111\u56fe\u3011\u6807\u7b7e\u5207\u6362\u81f3\u8111\u56fe\u89c6\u56fe\u3002

    "},{"location":"user_manual/test_track/test_case/test_case/#3","title":"3 \u57fa\u4e8e\u5217\u8868\u89c6\u56fe\u65b0\u5efa\u7528\u4f8b","text":"

    \u9009\u62e9\u65b0\u5efa\u7528\u4f8b\u6240\u5c5e\u6a21\u5757\uff0c\u70b9\u51fb\u5217\u8868\u5de6\u4e0a\u65b9\u3010\u521b\u5efa\u7528\u4f8b\u3011\uff0c\u5f39\u51fa\u4e00\u4e2a\u65b0\u7684\u7a97\u53e3\u5c55\u793a\u7528\u4f8b\u8be6\u60c5\u9875\u9762\u8fdb\u884c\u7f16\u8f91\u3002

    \u5728\u65b0\u5efa\u7528\u4f8b\u8be6\u60c5\u9875\u9762\u4e2d\uff0c\u8fdb\u4e00\u6b65\u586b\u5199\u7528\u4f8b\u540d\u79f0\u3001\u524d\u7f6e\u6761\u4ef6\u3001\u6b65\u9aa4\u4fe1\u606f\u3001\u6dfb\u52a0\u5907\u6ce8\u3001\u4e0a\u4f20\u9644\u4ef6\u7b49\uff0c\u8fd8\u53ef\u4ee5\u4e3a\u7528\u4f8b\u8bbe\u7f6e\u6a21\u5757\u3001\u7528\u4f8b\u7b49\u7ea7\u3001\u7248\u672c\u3001\u5173\u8054\u9700\u6c42\u3001\u6807\u7b7e\u7b49\uff0c\u7f16\u8f91\u5b8c\u6210\u540e\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u5c06\u6b64\u6761\u7528\u4f8b\u4fdd\u5b58\u81f3\u5217\u8868\u3002

    \u65b0\u5efa\u7528\u4f8b\u5c06\u5728\u7528\u4f8b\u5217\u8868\u4e2d\u5448\u73b0\uff0c\u70b9\u51fb\u7528\u4f8b\u3010ID\u3011\u6216\u70b9\u51fb\u6b64\u6761\u7528\u4f8b\u540e\u7684\u3010\u7f16\u8f91\u3011\u6309\u94ae\u53ef\u91cd\u65b0\u8fdb\u5165\u7528\u4f8b\u8be6\u60c5\u9875\u9762\u8fdb\u884c\u7f16\u8f91\uff0c\u53ef\u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\u3001\u5173\u8054\u7f3a\u9677\u3001\u8bbe\u7f6e\u4f9d\u8d56\u5173\u7cfb\u3001\u6dfb\u52a0\u8bc4\u8bba\u3001\u67e5\u770b\u53d8\u66f4\u3001\u521b\u5efa\u65b0\u7248\u672c\u3001\u7248\u672c\u5bf9\u6bd4\u3001\u8bbe\u7f6e\u5173\u6ce8\u3001\u6dfb\u52a0\u5230\u516c\u5171\u7528\u4f8b\u5e93\u3001\u590d\u5236\u7b49\u64cd\u4f5c\u3002

    "},{"location":"user_manual/test_track/test_case/test_case/#31","title":"3.1 \u4e3a\u7528\u4f8b\u5173\u8054\u6d4b\u8bd5","text":"

    \u65b0\u5efa\u6d4b\u8bd5\u7528\u4f8b\u53ef\u4ee5\u548c\u5e73\u53f0\u5df2\u6709\u7684\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u3001\u63a5\u53e3\u573a\u666f\u7528\u4f8b\u3001\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u8fdb\u884c\u5173\u8054\u3002\u8fdb\u5165\u6d4b\u8bd5\u7528\u4f8b\u8be6\u60c5\u9875\u9762\uff0c\u70b9\u51fb\u3010\u5173\u8054\u6d4b\u8bd5\u3011\u6807\u7b7e\uff0c\u9009\u62e9\u5e0c\u671b\u4e0e\u672c\u6761\u7528\u4f8b\u8fdb\u884c\u5173\u8054\u7684\u7528\u4f8b\u5173\u8054\u6d4b\u8bd5\u6d4b\u8bd5\u7c7b\u578b\uff0c\u8fdb\u5165\u8be5\u7c7b\u578b\u7684\u7528\u4f8b\u5217\u8868\u8fdb\u884c\u5173\u8054\u3002

    \u4ee5\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u4e3a\u4f8b\u3002\u8fdb\u5165\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u5217\u8868\uff0c\u9009\u4e2d\u76f8\u5173\u8054\u7684\u7528\u4f8b\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u5b8c\u6210\u5173\u8054\u3002

    \u5173\u8054\u540e\u7684\u6d4b\u8bd5\u7528\u4f8b\u5c06\u5728\u5173\u8054\u5217\u8868\u4e2d\u663e\u793a\uff0c\u70b9\u51fb\u3010\u53d6\u6d88\u5173\u8054\u3011\u53ef\u53d6\u6d88\u5173\u8054\u7684\u6d4b\u8bd5\u7528\u4f8b\u3002

    "},{"location":"user_manual/test_track/test_case/test_case/#32","title":"3.2 \u4e3a\u7528\u4f8b\u5173\u8054\u9700\u6c42","text":"

    \u65b0\u5efa\u6d4b\u8bd5\u7528\u4f8b\u53ef\u4ee5\u548c\u9700\u6c42\u5173\u8054\u3002\u5982\u679c\u5173\u8054\u7b2c\u4e09\u65b9\u7f3a\u9677\u5e73\u53f0\u7684\u8bdd\uff0c\u5728\u3010\u7528\u4f8b\u8be6\u60c5\u3011\u53f3\u4fa7\uff0c\u70b9\u51fb\u3010\u5173\u8054\u9700\u6c42\u3011\u9009\u9879\uff0c\u4e0b\u62c9\u9009\u6846\u4e2d\u9009\u62e9\u5e0c\u671b\u4e0e\u672c\u6761\u7528\u4f8b\u8fdb\u884c\u5173\u8054\u7684\u7b2c\u4e09\u65b9\u7f3a\u9677\u5e73\u53f0\u7684\u9700\u6c42\u3002

    "},{"location":"user_manual/test_track/test_case/test_case/#33","title":"3.3 \u4e3a\u7528\u4f8b\u5173\u8054\u7f3a\u9677","text":"

    \u65b0\u5efa\u6d4b\u8bd5\u7528\u4f8b\u53ef\u4ee5\u548c\u7f3a\u9677\u5173\u8054\u3002\u70b9\u51fb\u3010\u5173\u8054\u7f3a\u9677\u3011\u6807\u7b7e\uff0c\u5173\u8054\u5df2\u6709\u7f3a\u9677\u6216\u521b\u5efa\u65b0\u7684\u7f3a\u9677\u5e76\u8fdb\u884c\u5173\u8054\u3002

    "},{"location":"user_manual/test_track/test_case/test_case/#34","title":"3.4 \u4e3a\u7528\u4f8b\u521b\u5efa\u4f9d\u8d56\u5173\u7cfb","text":"
    • \u4f9d\u8d56\u5173\u7cfb\u8bbe\u7f6e \u7cfb\u7edf\u652f\u6301\u7528\u6237\uff0c\u4ece\u6d4b\u8bd5\u7684\u89d2\u5ea6\u6765\u8bbe\u7f6e\u8be5\u6d4b\u8bd5\u7528\u4f8b\u7684\u524d\u540e\u7f6e\u4f9d\u8d56\u6d4b\u8bd5\u7528\u4f8b\u3002 \u70b9\u51fb\u6d4b\u8bd5\u7528\u4f8b\u7684\u3010\u4f9d\u8d56\u5173\u7cfb\u3011\u9875\u7b7e\u3002
    • \u4f9d\u8d56\u5173\u7cfb\u56fe \u70b9\u51fb\u3010\u4f9d\u8d56\u5173\u7cfb\u56fe\u3011\uff0c\u53ef\u770b\u5230\u8be5\u7528\u4f8b\u7684\u524d\u7f6e/\u540e\u7f6e\u4e4b\u95f4\u7684\u76f8\u4e92\u8054\u7cfb\u3002
    "},{"location":"user_manual/test_track/test_case/test_case/#4","title":"4 \u57fa\u4e8e\u8111\u56fe\u89c6\u56fe\u65b0\u5efa\u7528\u4f8b","text":"

    \u5728\u7528\u4f8b\u5217\u8868\u9875\u9762\u70b9\u51fb\u3010\u8111\u56fe\u3011\u5207\u6362\u4ee5\u8111\u56fe\u5f62\u5f0f\u5c55\u73b0\u7528\u4f8b\u3002\u8111\u56fe\u7236\u4e3b\u9898\u4e3a\u6a21\u5757\u540d\u79f0\uff0c\u5b50\u4e3b\u9898\u4e3a\u6a21\u5757\u4e0b\u6d4b\u8bd5\u7528\u4f8b\uff0c\u5b59\u4e3b\u9898\u4e3a\u6d4b\u8bd5\u7528\u4f8b\u6b65\u9aa4\u8be6\u60c5\u6216\u5907\u6ce8\u4fe1\u606f\u3002\u5404\u7ea7\u4e3b\u9898\u4f7f\u7528\u6807\u7b7e\u65b9\u5f0f\u533a\u5206\u6587\u672c\u5185\u5bb9\uff0c\u652f\u6301\u4f7f\u7528\u6807\u7b7e\u65b9\u5f0f\u6807\u8bb0\u7528\u4f8b\u4f18\u5148\u7ea7\u3002

    \u53f3\u952e\u4e3b\u9898\u533a\u57df\u89e6\u53d1\u529f\u80fd\u952e\u3002

    \u64cd\u4f5c\u8bf4\u660e

    • \u3010\u6536\u8d77\u3011\u6309\u94ae\uff0c\u70b9\u51fb\u53ef\u4ee5\u6536\u8d77\u8be5\u4e3b\u9898\u4e0b\u5c5e\u5b50\u4e3b\u9898\u3002
    • \u3010\u4e0a\u7ea7\u3011\u6309\u94ae\uff0c\u70b9\u51fb\u521b\u5efa\u8be5\u4e3b\u9898\u7684\u4e0a\u7ea7\u4e3b\u9898\u3002
    • \u3010\u4e0b\u7ea7\u3011\u6309\u94ae\uff0c\u70b9\u51fb\u521b\u5efa\u8be5\u4e3b\u9898\u7684\u4e0b\u7ea7\u4e3b\u9898\u3002
    • \u3010\u540c\u7ea7\u3011\u6309\u94ae\uff0c\u70b9\u51fb\u521b\u5efa\u8be5\u4e3b\u9898\u7684\u540c\u7ea7\u4e3b\u9898\u3002
    • \u3010\u540e\u79fb\u3011\u6309\u94ae\uff0c\u70b9\u51fb\u5c06\u8be5\u4e3b\u9898\u79fb\u5165\u5176\u4e0b\u7ea7\u4e3b\u9898\u3002
    • \u3010\u524d\u79fb\u3011\u6309\u94ae\uff0c\u70b9\u51fb\u5c06\u8be5\u4e3b\u9898\u79fb\u5165\u5176\u4e0a\u7ea7\u4e3b\u9898\u3002
    • \u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u70b9\u51fb\u5220\u9664\u8be5\u4e3b\u9898\u3002
    • \u3010\u5bfc\u51fa\u3011\u64cd\u4f5c\uff0c\u652f\u6301\u5bfc\u51fa\u5168\u90e8\u6a21\u5757\u53ca\u89c6\u56fe\u5185\u5168\u90e8\u5df2\u5c55\u5f00\u7684\u7528\u4f8b\u3002\u652f\u6301\u5bfc\u51fa\u4e3a json\u3001png\u3001svg\u3001txt\u3001md\u3001mm \u7b49\u683c\u5f0f\u7684\u6587\u4ef6\u3002
    • \u3010\u4f18\u5148\u7ea7/\u6807\u7b7e\u3011\u64cd\u4f5c\uff0c\u652f\u6301\u4e3a\u8be5\u4e3b\u9898\u6dfb\u52a0\u4f18\u5148\u7ea7\u53ca\u6587\u672c\u6807\u7b7e\u3002
    "},{"location":"user_manual/test_track/test_case/test_case/#5","title":"5 \u6279\u91cf\u64cd\u4f5c","text":"

    \u5177\u4f53\u64cd\u4f5c\u8bf7\u53c2\u8003 \u901a\u7528\u529f\u80fd->\u6279\u91cf\u64cd\u4f5c\u3002 \u5728\u5217\u8868\u5bf9\u7528\u4f8b\u8fdb\u884c\u52fe\u9009\uff0c\u70b9\u51fb\u3010\u2026\u3011\u6309\u94ae\uff0c\u53ef\u4ee5\u5bf9\u591a\u6761\u7528\u4f8b\u8fdb\u884c\u6279\u91cf\u64cd\u4f5c\uff0c\u5305\u62ec\u6279\u91cf\u7f16\u8f91\u3001\u6279\u91cf\u79fb\u52a8\u3001\u6279\u91cf\u590d\u5236\u3001\u6279\u91cf\u5220\u9664\u3001\u6279\u91cf\u5173\u8054\u9700\u6c42\u3001\u751f\u6210\u4f9d\u8d56\u5173\u7cfb\u3001\u6279\u91cf\u6dfb\u52a0\u5230\u516c\u5171\u7528\u4f8b\u5e93\u7b49\u64cd\u4f5c\u3002

    "},{"location":"user_manual/test_track/test_case/test_case/#6","title":"6 \u5bfc\u5165\u7528\u4f8b","text":"

    \u70b9\u51fb\u5de6\u4e0a\u65b9\u3010\u5bfc\u5165\u3011\u6309\u94ae\uff0c\u5728\u4e0b\u62c9\u83dc\u5355\u4e2d\u9009\u62e9\u3010\u4eceExcel\u8868\u683c\u5bfc\u5165\u6d4b\u8bd5\u7528\u4f8b\u3011\u6216\u3010\u4ece\u601d\u7ef4\u5bfc\u56fe\u5bfc\u5165\u6d4b\u8bd5\u7528\u4f8b\u3011\u3002

    \u53ef\u5148\u4e0b\u8f7d\u6a21\u677f\uff0c\u4e0b\u8f7d\u7684\u6a21\u677f\u4e2d\u4f1a\u51fa\u73b0\u81ea\u5b9a\u4e49\u7684\u5b57\u6bb5\uff0c\u586b\u5199\u5185\u5bb9\u540e\uff0c\u8fdb\u884c\u4e0a\u4f20\u3002\u81ea\u5b9a\u4e49\u5b57\u6bb5\u4e5f\u6b63\u5e38\u5c55\u793a\u5230\u9875\u9762\u4e2d\u3002

    \u64cd\u4f5c\u8bf4\u660e

    • \u3010\u5bfc\u5165\u65b0\u5efa\u3011\uff0c\u5bfc\u5165\u7684\u7528\u4f8b\u81ea\u52a8\u4fdd\u5b58\u4e3a\u65b0\u7528\u4f8b\u3002
    • \u3010\u5bfc\u5165\u66f4\u65b0\u3011\uff0c\u5bfc\u5165\u7684\u7528\u4f8b\u81ea\u52a8\u8986\u76d6\u5df2\u6709\u7528\u4f8b\u3002
    "},{"location":"user_manual/test_track/test_case/test_case/#7","title":"7 \u5bfc\u51fa\u7528\u4f8b","text":"

    \u70b9\u51fb\u5de6\u4e0a\u65b9\u3010\u5bfc\u51fa\u3011\u6309\u94ae\uff0c\u5728\u4e0b\u62c9\u83dc\u5355\u9009\u62e9\u3010\u5bfc\u51faExcel\u8868\u683c\u3011\u6216\u3010\u5bfc\u51fa\u601d\u7ef4\u5bfc\u56fe\u3011\u6587\u4ef6\uff0c\u5bfc\u51fa Excel \u8868\u683c\u65f6\u53ef\u9009\u62e9\u57fa\u7840\u5b57\u6bb5\u3001\u81ea\u5b9a\u4e49\u5b57\u6bb5\u3001\u5176\u4ed6\u5b57\u6bb5\u7b49\uff0c\u5de6\u4e0a\u65b9\u3010\u5bfc\u51fa\u3011\u9ed8\u8ba4\u5bfc\u51fa\u5168\u90e8\u7528\u4f8b\u3002

    \u5bfc\u51fa\u90e8\u5206\u7528\u4f8b\u9700\u70b9\u51fb\u5217\u8868\u4e0b\u65b9\u66f4\u591a\u64cd\u4f5c\u3010...\u3011\u6309\u94ae\u3002

    "},{"location":"user_manual/test_track/test_case/test_case/#8","title":"8 \u56de\u6536\u7ad9","text":"

    \u6240\u6709\u88ab\u5220\u9664\u7684\u6d4b\u8bd5\u7528\u4f8b\u90fd\u4f1a\u653e\u5728\u56de\u6536\u7ad9\u91cc\u4fdd\u5b58\u3002

    \u5728\u56de\u6536\u7ad9\u91cc\u53ef\u8fdb\u884c\u3010\u6062\u590d\u3011\u548c\u3010\u5f7b\u5e95\u5220\u9664\u3011\u64cd\u4f5c\u3002

    "},{"location":"user_manual/test_track/test_case/test_case/#9","title":"9 \u67e5\u770b\u53d8\u66f4\u8bb0\u5f55","text":"

    \u5728\u6d4b\u8bd5\u7528\u4f8b\u8be6\u60c5\u9875\u9762\u6700\u53f3\u4fa7\u83dc\u5355\u3010\u53d8\u66f4\u8bb0\u5f55\u3011\u4e0b\uff0c\u53ef\u4ee5\u67e5\u770b\u6b64\u7528\u4f8b\u6240\u6709\u7684\u53d8\u66f4\u8be6\u60c5\u3002

    "},{"location":"user_manual/test_track/test_case/test_case/#10","title":"10 \u7248\u672c\u7ba1\u7406","text":"

    \u70b9\u51fb\u7528\u4f8b\u8be6\u60c5\u5de6\u4e0a\u65b9\uff0c\u3010XX\u7248\u672c\u3011\u53ef\u8fdb\u884c\u7528\u4f8b\u7248\u672c\u5207\u6362\u3001\u4e0d\u540c\u7248\u672c\u7528\u4f8b\u521b\u5efa\u3001\u5220\u9664\u7248\u672c\u7528\u4f8b\u3001\u7248\u672c\u5bf9\u6bd4\u7b49\u529f\u80fd\u3002

    "},{"location":"user_manual/test_track/test_case/test_case_module/","title":"\u6a21\u5757\u6811\u7ba1\u7406","text":"

    \u529f\u80fd\u7528\u4f8b\u63d0\u4f9b\u6a21\u5757\u529f\u80fd\uff0c\u53ef\u6839\u636e\u4e0d\u540c\u7684\u529f\u80fd\u8bbe\u7f6e\u4e0d\u540c\u7684\u6a21\u5757\uff0c\u5e76\u53ef\u6839\u636e\u5404\u529f\u80fd\u4f9d\u8d56\u5173\u7cfb\u8bbe\u7f6e\u5b50\u6a21\u5757\u3002\u70b9\u51fb\u9875\u9762\u5de6\u4fa7\u3010\u5168\u90e8\u7528\u4f8b\u3011\uff0c\u70b9\u51fb\u3010\u6dfb\u52a0\u5b50\u6a21\u5757\u3011\uff0c\u586b\u5199\u6a21\u5757\u540d\u79f0\uff0c\u5373\u53ef\u5b8c\u6210\u7528\u4f8b\u6a21\u5757\u6dfb\u52a0\u3002

    "},{"location":"user_manual/test_track/test_case/test_case_module/#1","title":"1 \u521b\u5efa\u5b50\u6a21\u5757","text":"

    \u9009\u4e2d\u6a21\u5757\u6811\u5217\u8868\u3010\u5168\u90e8\u7528\u4f8b\u3011\uff0c\u70b9\u51fb\u3010+\u3011\u53f7\u6309\u94ae\u5728\u6a21\u5757\u603b\u76ee\u5f55\u4e0b\u521b\u5efa\u5b50\u6a21\u5757\u3002\u9009\u4e2d\u4efb\u610f\u4e0a\u7ea7\u6a21\u5757\u5373\u53ef\u5728\u8be5\u6a21\u5757\u4e0b\u521b\u5efa\u6b21\u7ea7\u6a21\u5757\uff0c\u6a21\u5757\u6811\u652f\u6301\u6700\u591a 8 \u5c42\u7684\u6811\u72b6\u7ed3\u6784\u3002

    "},{"location":"user_manual/test_track/test_case/test_case_module/#2","title":"2 \u6a21\u5757\u64cd\u4f5c","text":"

    \u64cd\u4f5c\u8bf4\u660e

    • \u3010\u91cd\u547d\u540d\u3011\u6309\u94ae\uff0c\u9f20\u6807\u60ac\u505c\u5728\u8981\u64cd\u4f5c\u7684\u6a21\u5757\u65f6\u51fa\u73b0\uff0c\u70b9\u51fb\u53ef\u4ee5\u91cd\u547d\u540d\u8be5\u6a21\u5757\u3002
    • \u3010\u6dfb\u52a0\u5b50\u6a21\u5757\u3011\u6309\u94ae\uff0c\u9f20\u6807\u60ac\u505c\u5728\u8981\u64cd\u4f5c\u7684\u6a21\u5757\u65f6\u51fa\u73b0\uff0c\u70b9\u51fb\u53ef\u4ee5\u5728\u8be5\u6a21\u5757\u4e0b\u6dfb\u52a0\u5b50\u6a21\u5757\u3002
    • \u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u9f20\u6807\u60ac\u505c\u5728\u8981\u64cd\u4f5c\u7684\u6a21\u5757\u65f6\u51fa\u73b0\uff0c\u70b9\u51fb\u5c06\u5220\u9664\u8be5\u6a21\u5757\u548c\u5176\u6240\u6709\u5b50\u6a21\u5757\u3002\u5220\u9664\u67d0\u4e2a\u6a21\u5757\u4e0d\u4ec5\u4f1a\u5220\u9664\u8be5\u6a21\u5757\u53ca\u5176\u6240\u6709\u5b50\u6a21\u5757\uff0c\u88ab\u5220\u9664\u6a21\u5757\u4e2d\u7684\u63a5\u53e3\u53ca\u63a5\u53e3\u7528\u4f8b\u4e5f\u5c06\u88ab\u79fb\u5165\u56de\u6536\u7ad9\u4e2d\uff0c\u8bf7\u8c28\u614e\u4f7f\u7528\u8be5\u529f\u80fd\u3002
    • \u3010\u5c55\u5f00/\u6536\u8d77\u3011\u64cd\u4f5c\uff0c\u5f53\u6a21\u5757\u4e0b\u5b58\u5728\u5b50\u6a21\u5757\u65f6\u51fa\u73b0\uff0c\u70b9\u51fb\u3010\u5c55\u5f00/\u6536\u8d77\u3011\u8be5\u6a21\u5757\u4e0b\u7684\u6240\u6709\u5b50\u6a21\u5757\u3002

    \u6a21\u5757\u6811\u8fd8\u652f\u6301\u9f20\u6807\u62d6\u62fd\u64cd\u4f5c\uff0c\u7528\u6237\u53ef\u4ee5\u6839\u636e\u9700\u6c42\u8c03\u6574\u6a21\u5757\u987a\u5e8f\u53ca\u5176\u5c42\u7ea7\u5173\u7cfb\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_batch/","title":"\u6279\u91cf\u64cd\u4f5c","text":""},{"location":"user_manual/test_track/test_plan/test_plan_batch/#1","title":"1 \u6279\u91cf\u5f00/\u5173\u5b9a\u65f6\u4efb\u52a1","text":"

    \u52fe\u9009\u591a\u4e2a\u6d4b\u8bd5\u8ba1\u5212\u540e\uff0c\u70b9\u51fb\u6279\u91cf\u5f00/\u5173\u5b9a\u65f6\u4efb\u52a1\uff0c\u53ef\u5bf9\u8bbe\u7f6e\u597d\u7684\u5b9a\u65f6\u4efb\u52a1\u8fdb\u884c\u5f00\u542f/\u5173\u95ed\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_batch/#2","title":"2 \u6279\u91cf\u6267\u884c","text":"

    \u52fe\u9009\u591a\u4e2a\u6d4b\u8bd5\u8ba1\u5212\u540e\uff0c\u70b9\u51fb\u6279\u91cf\u6267\u884c\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_batch/#3","title":"3 \u6279\u91cf\u5220\u9664","text":"

    \u52fe\u9009\u591a\u4e2a\u6d4b\u8bd5\u8ba1\u5212\u540e\uff0c\u70b9\u51fb\u6279\u91cf\u5220\u9664\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_list/","title":"\u8ba1\u5212\u5217\u8868","text":"

    \u6d4b\u8bd5\u8ba1\u5212\u5c5e\u4e8e\u67d0\u4e2a\u9879\u76ee\uff0c\u5e76\u53ef\u5173\u8054\u8be5\u9879\u76ee\u4e0b\u7684\u6d4b\u8bd5\u7528\u4f8b\u3002\u6d4b\u8bd5\u8ba1\u5212\u7528\u4e8e\u5c06\u6d4b\u8bd5\u5404\u73af\u8282\u4e0d\u540c\u7c7b\u578b\u7684\u6d4b\u8bd5\u4efb\u52a1\u6dfb\u52a0\u5230\u4e00\u4e2a\u6d4b\u8bd5\u8ba1\u5212\u4e2d\uff0c\u5305\u62ec\u529f\u80fd\u6d4b\u8bd5\u3001\u63a5\u53e3\u6d4b\u8bd5\u548c\u6027\u80fd\u6d4b\u8bd5\u7b49\uff0c\u652f\u6301\u5b9e\u65f6\u5c55\u793a\u5404\u6d4b\u8bd5\u73af\u8282\u7684\u8fdb\u5ea6\u53ca\u6d4b\u8bd5\u60c5\u51b5\uff0c\u5e76\u5b9e\u65f6\u751f\u6210\u6d4b\u8bd5\u62a5\u544a\u3002 \u6d4b\u8bd5\u8ba1\u5212\u53ef\u5c06\u6d4b\u8bd5\u5404\u73af\u8282\u52a0\u5165\u5230\u4e00\u4e2a\u6d4b\u8bd5\u8ba1\u5212\u4e2d\uff0c\u5305\u62ec\u529f\u80fd\u6d4b\u8bd5\u3001\u63a5\u53e3\u6d4b\u8bd5\u548c\u6027\u80fd\u6d4b\u8bd5\u7b49\uff0c\u80fd\u5b9e\u65f6\u5c55\u793a\u5404\u6d4b\u8bd5\u73af\u8282\u7684\u8fdb\u5ea6\u53ca\u6d4b\u8bd5\u60c5\u51b5\uff0c\u5e76\u5b9e\u65f6\u751f\u6210\u6d4b\u8bd5\u62a5\u544a\u3002 \u70b9\u51fb\u3010\u6d4b\u8bd5\u8ddf\u8e2a\u3011\uff0c\u70b9\u51fb\u3010\u9879\u76ee\u3011\uff0c\u70b9\u51fb\u6d4b\u8bd5\u8ba1\u5212\uff0c\u53ef\u67e5\u770b\u5f53\u524d\u9879\u76ee\u4e2d\u7684\u6d4b\u8bd5\u8ba1\u5212\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_list/#1","title":"1 \u8ba1\u5212\u5217\u8868\u64cd\u4f5c","text":"

    \u5728\u6d4b\u8bd5\u8ba1\u5212\u5217\u8868\u4fe1\u606f\u9875\uff0c\u9f20\u6807\u70b9\u51fb\u67d0\u4e2a\u8ba1\u5212\uff0c\u8fdb\u5165\u8ba1\u5212\u8be6\u60c5\u9875\u9762\u3002

    \u70b9\u51fb\u3010\u6267\u884c\u3011\u6309\u94ae\uff0c\u9009\u62e9\u548c\u52fe\u9009\u8fd0\u884c\u6d4b\u8bd5\u8ba1\u5212\u7684\u76f8\u5173\u914d\u7f6e\u540e\uff0c\u70b9\u51fb\u3010\u6267\u884c\u3011\u5373\u53ef\u3002\u9ed8\u8ba4\u73af\u5883\u4e3a\u7528\u4f8b\u9996\u6b21\u5173\u8054\u8fdb\u6d4b\u8bd5\u8ba1\u5212\u6240\u9009\u62e9\u7684\u7528\u4f8b\uff0c\u9009\u62e9\u65b0\u73af\u5883\u540e\u53ef\u9009\u62e9\u6267\u884c\u548c\u4fdd\u5b58\uff0c\u4fdd\u5b58\u540e\u65b0\u9009\u62e9\u7684\u73af\u5883\u4e3a\u9ed8\u8ba4\u73af\u5883\uff0c\u70b9\u51fb\u6267\u884c\u4e0d\u4f1a\u4fee\u6539\u9ed8\u8ba4\u73af\u5883\uff0c\u9ed8\u8ba4\u73af\u5883\u591a\u7528\u4e8e\u5b9a\u65f6\u4efb\u52a1\u3001API\u8c03\u7528\u53ca\u6d41\u6c34\u7ebf\u89e6\u53d1\u6267\u884c\u3002

    \u53ef\u4ee5\u7ba1\u7406\u548c\u7ef4\u62a4\u672c\u6b21\u8ba1\u5212\u6d4b\u8bd5\u7684\u8303\u56f4\uff1a\u529f\u80fd\u6d4b\u8bd5\u7528\u4f8b\u3001\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u3001\u573a\u666f\u6d4b\u8bd5\u7528\u4f8b\u3001\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u7b49\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_list/#2","title":"2 \u6d4b\u8bd5\u62a5\u544a\u67e5\u770b","text":"

    \u8ba1\u5212\u6267\u884c\u540e\uff0c\u53ef\u4ee5\u70b9\u51fb\u3010\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u3011\u3002

    \u62a5\u544a\u8be6\u7ec6\u89e3\u8bfb\u89c1 \u6d4b\u8bd5\u8ddf\u8e2a->\u62a5\u544a\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_manage/","title":"\u7ba1\u7406\u8ba1\u5212","text":""},{"location":"user_manual/test_track/test_plan/test_plan_manage/#1","title":"1 \u521b\u5efa\u6d4b\u8bd5\u8ba1\u5212","text":"

    \u70b9\u51fb\u3010\u521b\u5efa\u6d4b\u8bd5\u8ba1\u5212\u3011\uff0c\u5373\u53ef\u8fdb\u5165\u521b\u5efa\u6d4b\u8bd5\u8ba1\u5212\u9875\u9762\uff0c\u9875\u9762\u5185\u5bb9\u5305\u62ec\uff1a

    • \u8ba1\u5212\u540d\u79f0\u3001\u8d1f\u8d23\u4eba\u3001\u6d4b\u8bd5\u9636\u6bb5\u7b49\u7b49\u5fc5\u586b\u4fe1\u606f
    • \u6807\u7b7e\u3001\u8ba1\u5212\u5f00\u59cb/\u7ed3\u675f\u65f6\u95f4\u3001\u5907\u6ce8\u7b49\u7b49\u4fe1\u606f
    • \u81ea\u52a8\u66f4\u65b0\u72b6\u6001\u5f00\u5173 \u7b49\u9009\u62e9\u4fe1\u606f

    \u70b9\u51fb\u3010\u786e\u5b9a\u3011\u5b8c\u6210\u521b\u5efa\u6d4b\u8bd5\u8ba1\u5212\uff0c\u5e76\u4e14\u9875\u9762\u8df3\u8f6c\u5230\u6d4b\u8bd5\u8ba1\u5212\u5217\u8868\u4fe1\u606f\u9875\u9762\uff0c\u53ef\u5728\u6d4b\u8bd5\u8ba1\u5212\u5217\u8868\u4e2d\u67e5\u770b\u5230\u521b\u5efa\u7684\u6d4b\u8bd5\u8ba1\u5212\u3002 \u70b9\u51fb\u3010\u89c4\u5212&\u6267\u884c\u3011\u5b8c\u6210\u521b\u5efa\u6d4b\u8bd5\u8ba1\u5212\uff0c\u5e76\u4e14\u9875\u9762\u8df3\u8f6c\u5230\u6d4b\u8bd5\u8ba1\u5212\u5185\u5bb9\u7ef4\u62a4\u754c\u9762\uff0c\u53ef\u76f4\u63a5\u6dfb\u52a0\u672c\u6b21\u8ba1\u5212\u7684\u6d4b\u8bd5\u8303\u56f4\u548c\u6d4b\u8bd5\u5185\u5bb9\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_manage/#2","title":"2 \u6267\u884c\u6d4b\u8bd5\u8ba1\u5212","text":"

    \u70b9\u51fb\u7528\u4f8b\u5217\u8868\u3010\u6267\u884c\u3011\u8bbe\u7f6e\u8fd0\u884c\u73af\u5883\u3001\u6267\u884c\u6a21\u5f0f\u3001\u8d44\u6e90\u6c60\u3001\u5931\u8d25\u91cd\u8bd5\u3001\u5931\u8d25\u505c\u6b62\u7b49\u529f\u80fd\uff0c\u53ef\u4ee5\u8fdb\u884c\u3010\u4fdd\u5b58\u3011\u3001\u3010\u4fdd\u5b58\u5e76\u6267\u884c\u3011\u3001\u3010\u6267\u884c\u3011\u64cd\u4f5c\u3002

    • \u4fdd\u5b58\uff1a\u53ea\u4fdd\u5b58\u5f53\u524d\u8bbe\u7f6e\u7684\u9ed8\u8ba4\u73af\u5883\u53ca\u8fd0\u884c\u914d\u7f6e\uff0c\u4e0d\u89e6\u53d1\u6267\u884c\u3002
    • \u4fdd\u5b58\u5e76\u6267\u884c\uff1a\u4fdd\u5b58\u5f53\u524d\u8bbe\u7f6e\u7684\u9ed8\u8ba4\u73af\u5883\u53ca\u8fd0\u884c\u914d\u7f6e\u5e76\u89e6\u53d1\u6267\u884c\u3002
    • \u6267\u884c\uff1a\u4e0d\u4fee\u6539\u5f53\u524d\u9ed8\u8ba4\u73af\u5883\u53ca\u8fd0\u884c\u914d\u7f6e\uff0c\u76f4\u63a5\u89e6\u53d1\u6267\u884c\u3002 \u6539\u914d\u7f6e\u64cd\u4f5c\u4f1a\u5f71\u54cd\u3010\u5b9a\u65f6\u4efb\u52a1\u3011\u3001\u3010\u6d41\u6c34\u7ebf\u8c03\u7528\u3011\u3001\u3010API\u8c03\u7528\u3011\uff0c\u8bf7\u614e\u91cd\u4fee\u6539\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_manage/#3","title":"3 \u5931\u8d25\u91cd\u8bd5","text":"

    \u6d4b\u8bd5\u8ba1\u5212\u4e2d\u7684\u7528\u4f8b\u6267\u884c\u5931\u8d25\u540e\uff0c\u652f\u6301\u6839\u636e\u8bbe\u5b9a\u7684\u91cd\u8bd5\u6b21\u6570\u518d\u6b21\u53d1\u8d77\u6267\u884c\uff0c\u6d4b\u8bd5\u62a5\u544a\u4f1a\u5b8c\u6574\u8bb0\u5f55\u63a5\u53e3\u9996\u6b21\u8fd0\u884c\u4ee5\u53ca\u6700\u540e10\u6b21\u8fd0\u884c\u7684\u54cd\u5e94\u7ed3\u679c\uff0c\u4f9b\u7528\u6237\u8fdb\u884c\u5bf9\u6bd4\u5206\u6790\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_manage/#4","title":"4 \u7ef4\u62a4\u6d4b\u8bd5\u8ba1\u5212","text":"

    \u5728\u6d4b\u8bd5\u8ba1\u5212\u5217\u8868\u4fe1\u606f\u5217\u8868\uff0c\u70b9\u51fb\u67d0\u6761\u8ba1\u5212\uff0c\u53ef\u4ee5\u5bf9\u6d4b\u8bd5\u8ba1\u5212\u8be6\u60c5\u8fdb\u884c\u7ef4\u62a4\u3002

    \u6dfb\u52a0\u672c\u6b21\u8ba1\u5212\u6d4b\u8bd5\u7684\u8303\u56f4\uff1a\u529f\u80fd\u6d4b\u8bd5\u7528\u4f8b\u3001\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u3001\u573a\u666f\u6d4b\u8bd5\u7528\u4f8b\u3001\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u7b49\u3002

    • \u70b9\u51fb\u3010\u62a5\u544a\u3011\u6309\u94ae\uff0c\u53ef\u4ee5\u67e5\u770b\u6d4b\u8bd5\u8ba1\u5212\u7684\u62a5\u544a\uff1b
    • \u70b9\u51fb\u3010\u6267\u884c\u3011\u6309\u94ae\uff0c\u53ef\u4ee5\u6267\u884c\u6d4b\u8bd5\u8ba1\u5212\uff1b
    • \u70b9\u51fb\u3010...\u3011\u6309\u94ae\uff0c\u5728\u4e0b\u62c9\u64cd\u4f5c\u83dc\u5355\u4e2d\uff0c\u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u53ef\u4ee5\u5bf9\u6d4b\u8bd5\u8ba1\u5212\u8fdb\u884c\u5220\u9664\uff1b\u70b9\u51fb\u3010\u5b9a\u65f6\u4efb\u52a1\u3011\u6309\u94ae\uff0c\u53ef\u4ee5\u8bbe\u7f6e\u4e00\u4e2a\u6307\u5b9a\u7684\u6267\u884c\u65f6\u95f4\uff1b
    • \u70b9\u51fb\u3010\u590d\u5236\u3011\u6309\u94ae\uff0c\u53ef\u514b\u9686\u539f\u8ba1\u5212\u751f\u6210\u65b0\u7684\u8ba1\u5212\uff0c\u540c\u65f6\u53ef\u5bf9\u6b64\u65b0\u8ba1\u5212\u8fdb\u884c\u6b63\u5e38\u7684\u7ef4\u62a4\u548c\u64cd\u4f5c\u3002

    \u70b9\u51fb\u3010\u7f16\u8f91\u3011\uff0c\u4fee\u6539\u6d4b\u8bd5\u8ba1\u5212\u7684\u76f8\u5173\u4fe1\u606f\u548c\u5f53\u524d\u72b6\u6001\u3002

    \u5f53\u524d\u72b6\u6001\u8bf4\u660e\uff1a

    • \u5df2\u5b8c\u6210\uff1a\u8868\u793a\u8ba1\u5212\u4e2d\u6240\u6709\u7684\u6d4b\u8bd5\u7528\u4f8b\u90fd\u901a\u8fc7\u4e86\u3002
    • \u5df2\u7ed3\u675f\uff1a\u8868\u793a\u8ba1\u5212\u4e2d\u6267\u884c\u7ed3\u679c\u6709\u5931\u8d25\u7684\uff0c\u4f46\u662f\u90fd\u6267\u884c\u5b8c\u4e86\u3002

    \u5907\u6ce8\uff1a

    \u6b64\u72b6\u6001\u53ef\u7531\u7cfb\u7edf\u81ea\u52a8\u66f4\u65b0\uff0c\u4e5f\u53ef\u4ee5\u624b\u52a8\u7ef4\u62a4\uff0c\u624b\u52a8\u6539\u72b6\u6001\u53ea\u662f\u6539\u6d4b\u8bd5\u8ba1\u5212\u7684\u72b6\u6001\uff0c\u91cc\u9762\u7684\u7528\u4f8b\u72b6\u6001\u4e0d\u4f1a\u5224\u65ad\uff0c\u4e5f\u4e0d\u4f1a\u4fee\u6539\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_manage/#5","title":"5 \u5173\u8054\u6d4b\u8bd5\u7528\u4f8b","text":"

    \u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\u652f\u6301\u8bb0\u4f4f\u8de8\u9875\u9009\u62e9\u7684\u8bb0\u5f55\uff0c\u518d\u4e00\u5e76\u5bfc\u5165\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_manage/#51","title":"5.1 \u5173\u8054\u529f\u80fd\u6d4b\u8bd5\u7528\u4f8b","text":"

    \u8fdb\u5165\u6d4b\u8bd5\u8ba1\u5212\u6267\u884c\u4e3b\u9875\uff0c\u9ed8\u8ba4\u6253\u5f00\u529f\u80fd\u6d4b\u8bd5\u7528\u4f8b\u6807\u7b7e\u3002\u70b9\u51fb\u3010\u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\u3011\u652f\u6301\u4e3a\u6d4b\u8bd5\u8ba1\u5212\u5173\u8054\u529f\u80fd\u7528\u4f8b\uff0c\u540c\u65f6\u652f\u6301\u7528\u6237\u5feb\u901f\u5207\u6362\u3010\u6211\u7684\u7528\u4f8b\u3011\u6216\u3010\u5168\u90e8\u7528\u4f8b\u3011\u5217\u8868\u3002

    • \u57fa\u4e8e\u5217\u8868\u89c6\u56fe\u8bb0\u5f55\u8ba1\u5212\u6267\u884c\u7ed3\u679c \u529f\u80fd\u6d4b\u8bd5\u7528\u5173\u8054\u5b8c\u6210\u540e\uff0c\u70b9\u51fb\u4efb\u610f\u529f\u80fd\u6d4b\u8bd5\u7528\u4f8b\u7684\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u8fdb\u5165\u7528\u4f8b\u8be6\u60c5\u9875\u9762\u3002\u5728\u6267\u884c\u6b65\u9aa4\u4e2d\uff0c\u586b\u5199\u6bcf\u4e00\u6b65\u7684\u5b9e\u9645\u7ed3\u679c\u53ca\u8be5\u6b65\u7684\u6267\u884c\u7ed3\u679c\uff0c\u57fa\u4e8e\u5404\u6b65\u9aa4\u6267\u884c\u60c5\u51b5\u53ca\u8bc4\u5b9a\u6807\u51c6\uff0c\u70b9\u51fb\u4e0a\u65b9\u7684\u72b6\u6001\u6309\u94ae\u4e3a\u6b64\u6761\u7528\u4f8b\u6807\u8bb0\u6267\u884c\u72b6\u6001\u3002

    • \u57fa\u4e8e\u8111\u56fe\u89c6\u56fe\u8bb0\u5f55\u8ba1\u5212\u6267\u884c\u7ed3\u679c \u4e0e\u7528\u4f8b\u7684\u521b\u5efa\u548c\u8bc4\u5ba1\u7c7b\u4f3c\uff0c\u7528\u4f8b\u6267\u884c\u7ed3\u679c\u540c\u6837\u53ef\u4ee5\u901a\u8fc7\u8111\u56fe\u65b9\u5f0f\u8bb0\u5f55\u3002\u5728\u7528\u4f8b\u5217\u8868\u9875\u9762\u70b9\u51fb\u3010\u8111\u56fe\u3011\u5207\u6362\u5230\u8111\u56fe\u5c55\u793a\u6a21\u5f0f\uff0c\u9009\u4e2d\u5f85\u6267\u884c\u7528\u4f8b\uff0c\u901a\u8fc7\u6dfb\u52a0\u6807\u7b7e\u7684\u65b9\u5f0f\u6765\u6807\u8bb0\u7528\u4f8b\u6267\u884c\u7ed3\u679c\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_manage/#52","title":"5.2 \u5173\u8054\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b","text":"

    \u70b9\u51fb\u3010\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u3011\uff0c\u70b9\u51fb\u3010\u63a5\u53e3\u7528\u4f8b\u3011\u548c\u3010\u573a\u666f\u7528\u4f8b\u3011\uff0c\u53ef\u8fdb\u5165\u4e0d\u540c\u7c7b\u578b\u63a5\u53e3\u7528\u4f8b\u7684\u5173\u8054\u5217\u8868\u3002

    \u70b9\u51fb\u3010\u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\u3011\uff0c\u8fdb\u5165\u5173\u8054\u63a5\u53e3\u7528\u4f8b\u9875\u9762\uff0c\u540c\u65f6\u6b64\u4e5f\u652f\u6301\u8de8\u9879\u76ee\u7684\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u548c\u573a\u666f\u7528\u4f8b\u7684\u5f15\u7528\u3002 \u52fe\u9009\u9700\u8981\u5173\u8054\u7684\u6d4b\u8bd5\u7528\u4f8b\u540e\uff0c\u540c\u65f6\u9700\u8981\u9009\u62e9\u8fd0\u884c\u73af\u5883\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u5373\u53ef\u5b8c\u6210\u63a5\u53e3\u7528\u4f8b\u7684\u5173\u8054\u64cd\u4f5c\u3002

    \u5173\u8054\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u540e\uff0c\u5728\u6d4b\u8bd5\u7528\u4f8b\u5217\u8868\u4e2d\u53ef\u70b9\u51fb\u3010\u6267\u884c\u3011\uff0c\u6267\u884c\u63a5\u53e3\u6d4b\u8bd5\uff0c\u6267\u884c\u5b8c\u6210\u540e\u53ef\u70b9\u51fb\u3010\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u3011\u67e5\u770b\u6d4b\u8bd5\u7ed3\u679c\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_manage/#53-ui-x-pack","title":"5.3 \u5173\u8054 UI \u6d4b\u8bd5\u7528\u4f8b (X-Pack)","text":"

    \u5207\u6362\u81f3\u3010UI\u6d4b\u8bd5\u7528\u4f8b\u3011\u6807\u7b7e\u89c6\u56fe\uff0c\u8fdb\u5165 UI \u6d4b\u8bd5\u7528\u4f8b\u5173\u8054\u9875\u9762\uff0c\u70b9\u51fb\u3010\u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\u3011\u6309\u94ae\u3002

    \u52fe\u9009\u8981\u5173\u8054\u7684 UI \u6d4b\u8bd5\u7528\u4f8b\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u6309\u94ae\u5373\u53ef\u3002

    \u53ef\u770b\u5230 UI \u6d4b\u8bd5\u7528\u4f8b\u9875\u9762\uff0c\u5217\u8868\u5c55\u793a\u5df2\u7ecf\u5173\u8054\u7684\u7528\u4f8b

    "},{"location":"user_manual/test_track/test_plan/test_plan_manage/#54","title":"5.4 \u5173\u8054\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b","text":"

    \u5207\u6362\u81f3\u3010\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u3011\u6807\u7b7e\u89c6\u56fe\uff0c\u652f\u6301\u7528\u6237\u4e3a\u6d4b\u8bd5\u8ba1\u5212\u5173\u8054\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u3002\u7528\u6237\u53ef\u4ee5\u5728\u8be5\u9875\u9762\u53d1\u8d77\u5355\u7528\u4f8b\u7684\u5feb\u901f\u6267\u884c\u3001\u67e5\u770b\u5355\u7528\u4f8b\u6267\u884c\u7ed3\u679c\uff0c\u540c\u65f6\u652f\u6301\u6279\u91cf\u53d6\u6d88\u5173\u8054\u3001\u6279\u91cf\u6267\u884c\u7b49\u64cd\u4f5c\u3002\u76ee\u524d\uff0c\u5e73\u53f0\u652f\u6301\u4ee5\u5e76\u884c\u6216\u4e32\u884c\u65b9\u5f0f\u6279\u91cf\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_manage/#55","title":"5.5 \u62a5\u544a\u7edf\u8ba1","text":"

    \u5207\u6362\u81f3\u3010\u62a5\u544a\u7edf\u8ba1\u3011\u6807\u7b7e\u89c6\u56fe\uff0c\u53ef\u770b\u5230\u8be5\u6d4b\u8bd5\u8ba1\u5212\u7684\u5177\u4f53\u62a5\u544a\u5185\u5bb9\uff0c\u4e5f\u53ef\u4ee5\u81ea\u5b9a\u4e49\u7f16\u5199\u6d4b\u8bd5\u62a5\u544a\u603b\u7ed3\u5185\u5bb9\u3002

    \u70b9\u51fb\u3010\u5206\u4eab\u3011\u6309\u94ae\uff0c\u53ef\u590d\u5236\u8be5\u6d4b\u8bd5\u62a5\u544a\u94fe\u63a5\u8fdb\u884c\u5206\u4eab\u3002

    \u70b9\u51fb\u3010\u914d\u7f6e\u3011\u6309\u94ae\uff0c\u53ef\u81ea\u5b9a\u4e49\u914d\u7f6e\u62a5\u544a\u5185\u5bb9\u3002

    \u53ef\u4fdd\u5b58\u5f53\u524d\u6d4b\u8bd5\u62a5\u544a\uff0c\u4e5f\u53ef\u5bfc\u51fa\u5f53\u524d\u6d4b\u8bd5\u62a5\u544a\uff0c\u5bfc\u51fa\u7684\u683c\u5f0f\u4e3a HTML \u683c\u5f0f\u3002

    \u53ef\u5207\u6362\u4e0d\u540c\u6d4b\u8bd5\u8ba1\u5212\u67e5\u770b\u62a5\u544a\u7edf\u8ba1\uff0c\u70b9\u51fb\u5de6\u4fa7\u76ee\u5f55\uff0c\u53ef\u67e5\u770b\u62a5\u544a\u7edf\u8ba1\u76ee\u5f55\u3002

    "},{"location":"user_manual/ui_test/info/","title":"Info","text":"
    • \u4fee\u6539 /opt/metersphere/.env \u6587\u4ef6\u4e2d MS_SELENIARM_ENABLED \u503c\uff0cMS_SELENIARM_ENABLED=true\uff0c \u4fee\u6539\u914d\u7f6e\u540e\u52a0\u8f7d\u914d\u7f6e\u6587\u4ef6\u6267\u884c msctl reload\u3002
    • docker ps \u68c0\u67e5 local-selenium-grid \u5bb9\u5668\u662f\u5426\u6210\u529f\u542f\u52a8\u3002
    • \u5728 MeterSphere \u7cfb\u7edf\u53c2\u6570\u8bbe\u7f6e\u4e2d\u4fee\u6539 selenium-docker \u5730\u5740\u4e3ahttp://local-selenium-grid:4444\u3002
    • UI \u6d4b\u8bd5\u7528\u4f8b\uff0c\u9ed8\u8ba4 \"\u6027\u80fd\u6a21\u5f0f\" \u6ca1\u6709\u622a\u56fe\u5c55\u793a\uff0c\u5173\u6389 \"\u6027\u80fd\u6d4b\u8bd5\" \u53ef\u4ee5\u67e5\u770b\u6bcf\u4e2a\u6b65\u9aa4\u7684\u622a\u56fe\u3002
    • \u5982\u679c\u5bfc\u5165 License \u6210\u529f\u540e\uff0c\u4f9d\u7136\u663e\u793a\u6ca1\u6709 UI \u6d4b\u8bd5\u6a21\u5757\uff0c\u8bf7\u5230\u3010\u7528\u6237\u7ec4\u4e0e\u6743\u9650\u3011\u4e2d\u786e\u8ba4\u662f\u5426\u6709 UI \u6a21\u5757\u7684\u6743\u9650\u3002
    "},{"location":"user_manual/ui_test/intro/","title":"\u6982\u8ff0","text":"

    MeterSphere UI \u6d4b\u8bd5\u6a21\u5757\u56f4\u7ed5\u5e94\u7528\u7cfb\u7edf\u7684 \u7528\u6237\u754c\u9762 \u63d0\u4f9b\u4ee5\u4e0b\u4e3b\u8981\u529f\u80fd\uff1a

    • \u5143\u7d20\u5e93\uff1a\u5e73\u53f0\u63d0\u4f9b\u5143\u7d20\u5e93\u7684\u529f\u80fd\uff0c\u901a\u8fc7\u521b\u5efa\u5143\u7d20\u5e93\uff0c\u53ef\u4ee5\u628a UI \u81ea\u52a8\u5316\u573a\u666f\u4e2d\u7684\u5355\u4e2a\u6b65\u9aa4\uff0c\u8fdb\u884c\u7edf\u4e00\u7ba1\u7406\uff0c\u8fbe\u5230\u9875\u9762\u5143\u7d20\u5728\u4e0d\u540c UI \u573a\u666f\u4e2d\u590d\u7528\u7684\u6548\u679c\u3002
    • UI \u81ea\u52a8\u5316\uff1a\u652f\u6301\u624b\u52a8\u521b\u5efa UI \u81ea\u52a8\u5316\u573a\u666f\u548c\u5bfc\u5165 SeleniumIDE \u5de5\u5177\u5f55\u5236\u597d\u7684 side \u811a\u672c\u6587\u4ef6\uff0c\u652f\u6301\u6dfb\u52a0\u6d4f\u89c8\u5668\u64cd\u4f5c\u3001 \u5f39\u7a97\u64cd\u4f5c\u3001\u5143\u7d20\u64cd\u4f5c\u3001\u9f20\u6807\u64cd\u4f5c\u3001\u8f93\u5165\u64cd\u4f5c\u3001\u6d41\u7a0b\u63a7\u5236\u7b49\u6b65\u9aa4\uff0c\u5e76\u63d0\u4f9b\u67e5\u770b\u5143\u7d20\u5e93\u3001\u524d\u7f6e\u64cd\u4f5c\u3001\u540e\u7f6e\u64cd\u4f5c\u3001\u9519\u8bef\u5904\u7406\u9ad8\u7ea7\u529f\u80fd\u3002
    • \u6d4b\u8bd5\u62a5\u544a\uff1a\u63d0\u4f9b\u76f4\u89c2\u3001\u7f8e\u89c2\u7684\u9875\u9762\u5bf9UI\u6d4b\u8bd5\u7684\u7ed3\u679c\u8fdb\u884c\u53ef\u89c6\u5316\u5c55\u793a\uff0c\u53ef\u67e5\u770b\u573a\u666f\u5168\u90e8\u6b65\u9aa4\u548c\u5931\u8d25\u6b65\u9aa4\uff0c\u4ee5\u53ca\u63a7\u5236\u53f0\u8be6\u60c5\uff0c\u5e76\u4e14\u652f\u6301\u5bf9\u6b65\u9aa4\u6267\u884c\u65f6\u7684UI\u622a\u56fe\u9884\u89c8\u3002

    \u5907\u6ce8: UI \u6d4b\u8bd5\u6a21\u5757\u662f\u4f01\u4e1a\u7248 X-Pack \u529f\u80fd\u589e\u5f3a\u5305\u529f\u80fd\u3002\u5982\u9700\u4f7f\u7528\u4f01\u4e1a\u7248\uff0c\u8bf7\u70b9\u51fb\uff1a\u7533\u8bf7\u4f01\u4e1a\u7248\u8bd5\u7528\u3002

    \u6ce8\u610f\u4e8b\u9879

    • \u4fee\u6539 /opt/metersphere/.env \u6587\u4ef6\u4e2d MS_UI_ENABLED \u503c\uff0cMS_UI_ENABLED=true\uff0c \u4fee\u6539\u914d\u7f6e\u540e\u52a0\u8f7d\u914d\u7f6e\u6587\u4ef6\u6267\u884c msctl reload\u3002
    • docker ps \u68c0\u67e5 selenium-hub \u5bb9\u5668\u662f\u5426\u6210\u529f\u542f\u52a8\u3002
    • \u5728 MeterSphere \u7cfb\u7edf\u53c2\u6570\u8bbe\u7f6e\u4e2d\u4fee\u6539 selenium-docker \u5730\u5740\u4e3ahttp://selenium-hub:4444\u3002
    • UI \u6d4b\u8bd5\u7528\u4f8b\uff0c\u9ed8\u8ba4 \"\u6027\u80fd\u6a21\u5f0f\" \u6ca1\u6709\u622a\u56fe\u5c55\u793a\uff0c\u5173\u6389 \"\u6027\u80fd\u6d4b\u8bd5\" \u53ef\u4ee5\u67e5\u770b\u6bcf\u4e2a\u6b65\u9aa4\u7684\u622a\u56fe\u3002
    • \u5982\u679c\u5bfc\u5165 License \u6210\u529f\u540e\uff0c\u4f9d\u7136\u663e\u793a\u6ca1\u6709 UI \u6d4b\u8bd5\u6a21\u5757\uff0c\u8bf7\u5230\u3010\u7528\u6237\u7ec4\u4e0e\u6743\u9650\u3011\u4e2d\u786e\u8ba4\u662f\u5426\u6709 UI \u6a21\u5757\u7684\u6743\u9650\u3002

    "},{"location":"user_manual/ui_test/ui_automation/","title":"UI \u81ea\u52a8\u5316","text":""},{"location":"user_manual/ui_test/ui_automation/#1","title":"1 \u521b\u5efa\u573a\u666f","text":""},{"location":"user_manual/ui_test/ui_automation/#11","title":"1.1 \u57fa\u7840\u4fe1\u606f","text":"

    \u70b9\u51fb\u3010+\u3011\u6309\u94ae\uff0c\u9009\u62e9\u3010\u521b\u5efa\u573a\u666f\u3011\uff0c\u8fdb\u5165\u573a\u666f\u521b\u5efa\u9875\u9762\u3002

    \u5728\u3010\u57fa\u7840\u4fe1\u606f\u3011\u680f\uff0c\u6dfb\u52a0\u6a21\u5757\u3001\u72b6\u6001\u3001\u540d\u79f0\u7b49\u4fe1\u606f\u540e\u5373\u53ef\u4fdd\u5b58\u573a\u666f\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#12","title":"1.2 \u573a\u666f\u53c2\u6570","text":"
    • \u573a\u666f\u53d8\u91cf\uff1a\u70b9\u51fb\u3010\u573a\u666f\u53d8\u91cf\u3011\uff0c\u8fdb\u5165\u53d8\u91cf\u6dfb\u52a0\u9875\u9762\u3002

    \u76ee\u524d\u652f\u6301\u6dfb\u52a0\u3010\u5b57\u7b26\u4e32\u3001\u6570\u7ec4\u3001json\u3001\u6570\u503c\u3011\uff0c\u53ef\u4ee5\u5355\u884c\u6dfb\u52a0\u548c\u6279\u91cf\u6dfb\u52a0\uff0c\u6279\u91cf\u6dfb\u52a0\u4ee5 \u201c\u53d8\u91cf\u540d:\u53d8\u91cf\u503c\u201d \u683c\u5f0f\u6dfb\u52a0\u3002

    • \u6027\u80fd\u6a21\u5f0f\uff1a\u3010\u6027\u80fd\u6a21\u5f0f\u3011\u9ed8\u8ba4\u5f00\u542f\uff0c\u5f00\u542f\u540e\u4e0d\u4f1a\u5bf9\u6bcf\u4e2a\u6b65\u9aa4\u90fd\u622a\u56fe\uff0c\u66f4\u8282\u7701\u8d44\u6e90\u3002

    • \u6d4f\u89c8\u5668\u9a71\u52a8\uff1a\u6d4f\u89c8\u5668\u9a71\u52a8\u5373\u4ee5\u4ec0\u4e48\u6d4f\u89c8\u5668\u6267\u884c\u8be5\u573a\u666f\uff0c\u5f53\u524d\u652f\u6301 chrome \u6d4f\u89c8\u5668\u548c firefox \u6d4f\u89c8\u5668\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#13","title":"1.3 \u6dfb\u52a0\u6b65\u9aa4","text":"
    • \u6dfb\u52a0\u6b65\u9aa4 \uff1a\u70b9\u51fb\u573a\u666f\u53f3\u4e0b\u89d2\u3010+\u3011\u6309\u94ae\u3002
    • \u6d4f\u89c8\u5668\u64cd\u4f5c\uff1a\u70b9\u51fb\u3010\u6d4f\u89c8\u5668\u64cd\u4f5c\u3011\uff0c\u8f93\u5165\u3010URL\u3011\u5730\u5740\uff0c\u53ef\u6dfb\u52a0\u6d4f\u89c8\u5668\u76f8\u5173\u64cd\u4f5c\u6b65\u9aa4\u3002

    \u76ee\u524d\u652f\u6301\u6d4f\u89c8\u5668\u6253\u5f00\u7f51\u9875\u3001\u5173\u95ed\u7f51\u9875\u3001\u5207\u6362\u7a97\u53e3\u3001\u8bbe\u7f6e\u7a97\u53e3\u5927\u5c0f\u3001\u9009\u62e9\u5185\u5185\u5d4c\u7f51\u9875\u7684\u64cd\u4f5c\u3002

    • \u5f39\u7a97\u64cd\u4f5c\uff1a\u652f\u6301\u5bf9\u5f39\u7a97\u8f93\u5165\u6846\u8f93\u5165\u5185\u5bb9\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u548c\u3010\u53d6\u6d88\u3011\u7684\u64cd\u4f5c\u3002

    • \u5143\u7d20\u64cd\u4f5c\uff1a \u652f\u6301\u3010\u63d0\u4ea4\u8868\u5355\u3011\u3001\u3010\u4e0b\u62c9\u6846\u64cd\u4f5c\u3011\u3001\u3010\u8bbe\u7f6e\u9009\u9879\u3011\u3001\u3010\u7b49\u5f85\u5143\u7d20\u3011\u56db\u79cd\u65b9\u5f0f\u3002
    • \u3010\u63d0\u4ea4\u8868\u5355\u3011\uff1a\u9488\u5bf9\u5c5e\u6027type=\"submit\u201d\u7684\u5143\u7d20\uff0c\u7528\u4e8e\u63d0\u4ea4\u8868\u5355\u6570\u636e\u3002
    • \u3010\u4e0b\u62c9\u6846\u64cd\u4f5c\u3011\uff1a\u5bf9\u4e0b\u62c9\u9009\u9879\u8fdb\u884c\u64cd\u4f5c\uff0c\u53ef\u5b9e\u73b0\u5355\u9009\uff0c\u591a\u9009\uff0c\u4ee5\u53ca\u53d6\u6d88\u9009\u62e9\u7684\u64cd\u4f5c\u3002
    • \u3010\u8bbe\u7f6e\u9009\u9879\u3011\uff1a\u7528\u4e8e\u8bbe\u7f6e checkbox/radio \u7684\u72b6\u6001\u3002
    • \u3010\u7b49\u5f85\u5143\u7d20\u3011\uff1a\u5bf9\u9875\u9762\u5bf9\u8c61\u6267\u884c\u6307\u5b9a\u7684\u7b49\u5f85\u64cd\u4f5c\uff0c\u9ed8\u8ba4\u7b49\u5f85\u8d85\u65f63000ms\u3002

    • \u9f20\u6807\u64cd\u4f5c\uff1a\u652f\u6301\u3010\u9f20\u6807\u70b9\u51fb\u3011\u3001\u3010\u9f20\u6807\u79fb\u52a8\u3011\u548c\u3010\u9f20\u6807\u62d6\u62fd\u3011\u7684\u64cd\u4f5c\uff0c\u901a\u8fc7\u5b9a\u4f4d\u627e\u5230\u5143\u7d20\u540e\uff0c\u8fd8\u652f\u6301\u8bbe\u7f6e\u9f20\u6807\u5728\u5143\u7d20\u4e0a\u7684\u70b9\u51fb\u4f4d\u7f6e\u3002
    • \u3010\u9f20\u6807\u70b9\u51fb\u3011\uff1a\u6a21\u62df\u9f20\u6807\u70b9\u51fb\u7684\u64cd\u4f5c\uff0c\u652f\u6301\u5355\u51fb/\u53cc\u51fb/\u6309\u4e0b/\u5f39\u8d77\u3002
    • \u3010\u9f20\u6807\u79fb\u52a8\u3011\uff1a\u5c06\u9f20\u6807\u60ac\u505c\u5728\u7f51\u9875\u5143\u7d20\u7684\u4e0a\u65b9\u3002
    • \u3010\u9f20\u6807\u62d6\u62fd\u3011\uff1a\u6a21\u62df\u9f20\u6807\u5c06\u5143\u7d20\u4ece\u67d0\u4e2a\u4f4d\u7f6e\u62d6\u5230\u53e6\u4e00\u4e2a\u4f4d\u7f6e\u3002

    \u3010\u9f20\u6807\u64cd\u4f5c\u3011\u9009\u62e9\u3010\u9f20\u6807\u70b9\u51fb\u3011\uff0c\u9009\u62e9\u70b9\u51fb\u65b9\u5f0f\uff0c\u586b\u5199\u5143\u7d20\u4f4d\u7f6e\u4ee5\u53ca\u9f20\u6807\u70b9\u51fb\u4f4d\u7f6e\u5373\u53ef

    \u5f53\u5b9a\u4f4d\u5143\u7d20\u88ab\u906e\u6321\u65f6\uff0c\u53ef\u8fdb\u884c\u5f3a\u5236\u70b9\u51fb

    \u3010\u9f20\u6807\u64cd\u4f5c\u3011\u9009\u62e9\u3010\u9f20\u6807\u79fb\u52a8\u3011\uff0c\u9009\u62e9\u79fb\u52a8\u65b9\u5f0f\uff0c\u586b\u5199\u9f20\u6807\u4f4d\u7f6e\u5373\u53ef

    \u3010\u9f20\u6807\u64cd\u4f5c\u3011\u9009\u62e9\u3010\u9f20\u6807\u62d6\u62fd\u3011\uff0c\u9009\u62e9\u62d6\u62fd\u65b9\u5f0f\uff0c\u586b\u5199\u64cd\u4f5c\u5143\u7d20\u4ee5\u53ca\u5750\u6807\u70b9\u5373\u53ef\u3002

    • \u8f93\u5165\u64cd\u4f5c\uff1a\u652f\u6301\u8f93\u5165\u6846\u548c\u53ef\u7f16\u8f91\u6bb5\u843d\u8f93\u5165\uff0c\u540c\u65f6\u652f\u6301\u8ffd\u52a0\u8f93\u5165\u548c\u8986\u76d6\u8f93\u5165\u6a21\u5f0f\u3002

    • \u6d41\u7a0b\u63a7\u5236\uff1a\u652f\u6301\u3010\u6b21\u6570\u5faa\u73af\u3011\u3001\u3010ForEach\u5faa\u73af\u3011\u3001\u3010While\u3011\u3001\u3010If\u3011\u3001\u3010ElseIf\u3011\u3001\u3010Else\u3011\u7b49\u65b9\u5f0f\u3002

    • \u3010\u6b21\u6570\u5faa\u73af\u3011\uff1a\u8bbe\u7f6e\u6b65\u9aa4\u6267\u884c\u6b21\u6570\u3002

    • \u3010ForEach \u5faa\u73af\u3011\uff1a\u904d\u5386\u7ed9\u5b9a\u7684\u96c6\u5408\u3002
    • \u3010While \u5faa\u73af\u3011\uff1a\u6ee1\u8db3\u8868\u8fbe\u5f0f\u7684\u6761\u4ef6\u5219\u5faa\u73af\u6267\u884c\u91cc\u9762\u7684\u6b65\u9aa4\u3002
    • \u3010If\u3011\uff1a\u6ee1\u8db3 If \u6761\u4ef6\u5219\u6267\u884c\u91cc\u9762\u7684\u6b65\u9aa4\u3002
    • \u3010ElseIf\u3011\uff1a\u4e0d\u6ee1\u8db3 If \u6761\u4ef6\u4e14\u6ee1\u8db3 ElseIf \u6761\u4ef6\u5219\u6267\u884c\u3002
    • \u3010Else\u3011\uff1a\u4e0d\u6ee1\u8db3 If \u6761\u4ef6\u5219\u6267\u884c\u3002

    \u5c06\u9700\u8981\u8fdb\u884c\u6d41\u7a0b\u63a7\u5236\u7684\u6b65\u9aa4\u62d6\u5165\u6d41\u7a0b\u63a7\u5236\u5668\u4e0b\u5373\u53ef\u5b9e\u73b0\u6b65\u9aa4\u5faa\u73af\u6216\u8005\u6761\u4ef6\u63a7\u5236\u3002

    • \u573a\u666f\u5bfc\u5165\uff1a\u70b9\u51fb\u3010\u573a\u666f\u5bfc\u5165\u3011\uff0c\u53ef\u4ee5\u9009\u62e9\u9879\u76ee\u4e0b\u7684\u591a\u4e2a\u573a\u666f/\u6307\u4ee4\u5bfc\u5165\u5230\u8be5\u573a\u666f\u505a\u4e3a\u4e00\u4e2a\u6b65\u9aa4\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#14","title":"1.4 \u9ad8\u7ea7\u8bbe\u7f6e","text":"
    • \u5143\u7d20\u5e93\uff1a\u5982\u679c\u5f53\u524d\u6b65\u9aa4\u4f7f\u7528\u4e86\u5143\u7d20\u5e93\u7684\u5143\u7d20\uff0c\u5728\u3010\u9ad8\u7ea7\u8bbe\u7f6e\u3011\u7684\u5143\u7d20\u5e93\u4e0b\u4f1a\u5c55\u793a\u5f53\u524d\u6b65\u9aa4\u6240\u9009\u7684\u5143\u7d20\u5bf9\u8c61\u3002
    • \u524d\u7f6e\u64cd\u4f5c\uff1a\u6709\u56db\u79cd\u7c7b\u578b\uff0c\u5305\u62ec\u3010\u524d\u7f6e\u811a\u672c\u3011\u3001\u3010\u7b49\u5f85\u65f6\u95f4\u3011\u3001\u3010\u6570\u636e\u63d0\u53d6\u3011\u548c\u3010\u622a\u56fe\u3011\u3002

    \uff081\uff09\u524d\u7f6e\u811a\u672c\uff1a\u76ee\u524d\u652f\u6301\u3010js\u811a\u672c\u3011\uff0c\u8bbe\u7f6e js \u811a\u672c\u540e\uff0c\u4f1a\u5148\u4e8e\u5f53\u524d\u6b65\u9aa4\u5728\u6d4f\u89c8\u5668\u4e2d\u6267\u884c\u8be5\u811a\u672c\u3002

    \u811a\u672c\u7c7b\u578b\u53ef\u9009\u62e9\u540c\u6b65\u6216\u5f02\u6b65\uff0c\u5982\u679c\u811a\u672c\u6267\u884c\u540e\u6709\u8fd4\u56de\uff0c\u53ef\u4ee5\u4ee5\u53d8\u91cf\u5f62\u5f0f\u5b58\u50a8\u8fd4\u56de\u503c\u3002

    \uff082\uff09\u7b49\u5f85\u65f6\u95f4\uff1a\u3010\u524d\u7f6e\u64cd\u4f5c\u3011\u53ef\u4ee5\u8bbe\u7f6e\u7b49\u5f85\u65f6\u95f4\uff0c\u5982\u4e0b\u56fe\u6240\u793a\uff0c\u5c06\u4f1a\u7b49\u5f85 3 \u79d2\u518d\u6267\u884c\u5f53\u524d\u6b65\u9aa4\u3002

    \uff083\uff09\u6570\u636e\u63d0\u53d6\uff1a\u3010\u524d\u7f6e\u64cd\u4f5c\u3011\u53ef\u4ee5\u4f7f\u7528\u6570\u636e\u63d0\u53d6\uff0c\u53ef\u4ee5\u63d0\u53d6\u7a97\u53e3\u4fe1\u606f\u548c\u5143\u7d20\u4fe1\u606f\uff0c\u5e76\u4ee5\u53d8\u91cf\u5f62\u5f0f\u8fdb\u884c\u5b58\u50a8\u3002

    \u7a97\u53e3\u4fe1\u606f\u5305\u62ec\u7a97\u53e3 Handle \u4fe1\u606f\u548c\u7f51\u9875\u6807\u9898\u3002

    \u5143\u7d20\u4fe1\u606f\u53ef\u4ee5\u63d0\u53d6\u666e\u901a\u5bf9\u8c61\u3001\u6587\u672c\u5bf9\u8c61\u3001\u5143\u7d20\u503c\u3001\u5143\u7d20\u5c5e\u6027\u548c\u5339\u914d xpath \u7684\u5143\u7d20\u6570\u91cf\u3002

    \u7cfb\u7edf\u4f1a\u6839\u636e\u6240\u9009\u7684\u5b9a\u4f4d\u65b9\u5f0f\u3001\u5b9a\u4f4d\u8868\u8fbe\u5f0f\u548c\u5143\u7d20\u5c5e\u6027\u63d0\u53d6\u6570\u636e\u4ee5\u53ca\u5b58\u50a8\u53d8\u91cf\u3002

    \uff084\uff09\u540e\u7f6e\u64cd\u4f5c\uff1a\u540e\u7f6e\u64cd\u4f5c\u4f1a\u5728\u5f53\u524d\u6b65\u9aa4\u6267\u884c\u7ed3\u675f\u540e\u518d\u6267\u884c\uff0c\u540e\u7f6e\u64cd\u4f5c\u4e0e\u524d\u7f6e\u64cd\u4f5c\u7684\u65b9\u5f0f\u57fa\u672c\u4e00\u81f4\uff0c\u53ea\u662f\u591a\u4e86\u65ad\u8a00\u7c7b\u578b\u3002

    \u76ee\u524d\u65ad\u8a00\u5bf9\u8c61\u652f\u6301\u65ad\u8a00\u503c\u3001\u5f39\u7a97\u6587\u672c\u3001\u5143\u7d20\u65ad\u8a00\u3001\u4e0b\u62c9\u6846\u548c\u7f51\u9875\u6807\u9898\u3002

    • \u9519\u8bef\u5904\u7406\uff1a\u76ee\u524d\u6709\u4e24\u79cd\u9519\u8bef\u5904\u7406\u65b9\u5f0f\uff1a
    • \u3010\u7ec8\u6b62\u6d41\u7a0b\u3011\uff1a\u5f53\u524d\u6b65\u9aa4\u5931\u8d25\u540e\uff0c\u505c\u6b62\u6d4b\u8bd5\uff0c\u540e\u7eed\u7684\u6b65\u9aa4\u4e0d\u4f1a\u518d\u6267\u884c\u3002
    • \u3010\u5ffd\u7565\u5f02\u5e38\u5e76\u7ee7\u7eed\u6267\u884c\u3011\uff1a\u5ffd\u7565\u8be5\u9519\u8bef\uff0c\u7ee7\u7eed\u5f80\u4e0b\u6267\u884c\u6d4b\u8bd5\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#15","title":"1.5 \u6b65\u9aa4\u5217\u8868","text":"
    • \u67e5\u770b\u8be6\u60c5\uff1a\u70b9\u51fb\u67d0\u4e2a\u6b65\u9aa4\uff0c\u53f3\u4fa7\u4f1a\u5c55\u793a\u8be5\u6b65\u9aa4\u7684\u8be6\u7ec6\u5185\u5bb9\u3002
    • \u57fa\u7840\u64cd\u4f5c\uff1a\u9f20\u6807\u60ac\u6d6e\u5728\u67d0\u4e2a\u6b65\u9aa4\u4e4b\u4e0a\uff0c\u4f1a\u5c55\u793a\u3010\u7f16\u8f91\u3011\u952e\uff0c\u70b9\u51fb\u540e\u53ef\u91cd\u547d\u540d\u8be5\u6b65\u9aa4\u3002

    \u9f20\u6807\u60ac\u6d6e\u5728\u67d0\u4e2a\u6b65\u9aa4\u4e4b\u4e0a\uff0c\u70b9\u51fb\u6b65\u9aa4\u53f3\u4fa7\u3010\u2026\u3011\uff0c\u53ef\u5bf9\u6b65\u9aa4\u8fdb\u884c\u590d\u5236\u3001\u7981\u7528\u3001\u5220\u9664\u6b65\u9aa4\u548c\u91cd\u547d\u540d\u3002

    • \u6279\u91cf\u64cd\u4f5c\uff1a\u70b9\u51fb\u5de6\u4fa7\u5c0f\u56fe\u8868\uff0c\u53ef\u4ee5\u5217\u8868\u8fdb\u884c\u6279\u91cf\u64cd\u4f5c\u3002

    \u5305\u62ec\u6279\u91cf\u542f\u7528\u3001\u6279\u91cf\u7981\u7528\u3001\u6279\u91cf\u5c55\u5f00\u3001\u6279\u91cf\u6298\u53e0\u548c\u6279\u91cf\u5220\u9664\u6b65\u9aa4\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#2","title":"2 \u5bfc\u5165\u5bfc\u51fa","text":""},{"location":"user_manual/ui_test/ui_automation/#21","title":"2.1 \u5bfc\u51fa\u573a\u666f","text":"

    \u52fe\u9009\u573a\u666f\uff0c\u70b9\u51fb\u5de6\u4fa7\u3010\u66f4\u591a\u64cd\u4f5c\u3011\uff0c\u9009\u62e9\u3010\u5bfc\u51fa\u3011\uff0c\u573a\u666f\u4f1a\u5bfc\u51fa\u4e3a side \u683c\u5f0f\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#22","title":"2.2 \u5bfc\u5165\u573a\u666f","text":"

    \u70b9\u51fb\u5de6\u4fa7\u3010\u66f4\u591a\u64cd\u4f5c\u3011\uff0c\u9009\u62e9\u3010\u5bfc\u5165\u3011\u3002

    \u5728\u5bfc\u5165\u9875\u9762\u9009\u62e9\u3010\u5bfc\u5165\u6a21\u5757\u3011\u548c\u3010\u5bfc\u5165\u6a21\u5f0f\u3011\uff0c\u5e76\u4e0a\u4f20 side \u683c\u5f0f\u7684\u6587\u4ef6\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u5373\u53ef\u628a UI \u81ea\u52a8\u5316\u573a\u666f\u5bfc\u5165\u5230\u76f8\u5e94\u7684\u6a21\u5757\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#3","title":"3 \u57fa\u7840\u64cd\u4f5c","text":""},{"location":"user_manual/ui_test/ui_automation/#31","title":"3.1 \u573a\u666f\u5217\u8868","text":"

    \u5728\u573a\u666f\u5217\u8868\uff0c\u53ef\u4ee5\u9009\u62e9\u5de6\u4fa7\u7684\u7528\u4f8b\u76ee\u5f55\uff0c\u53f3\u8fb9\u4f1a\u6839\u636e\u6240\u9009\u76ee\u5f55\u5c55\u793a\u5bf9\u5e94\u7684\u573a\u666f\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#32","title":"3.2 \u6267\u884c\u573a\u666f","text":"

    \u70b9\u51fb\u53f3\u4fa7\u3010\u6267\u884c\u3011\u6309\u94ae\uff0c\u4f1a\u5728\u5f53\u524d\u9875\u9762\u6267\u884c\u8be5\u573a\u666f\u3002

    \u573a\u666f\u6267\u884c\u5b8c\u6210\u4f1a\uff0c\u4f1a\u5728\u5f53\u524d\u4e5f\u4f1a\u5c55\u793a\u6d4b\u8bd5\u62a5\u544a\u8be6\u60c5\uff0c\u4e5f\u53ef\u4ee5\u5230\u3010UI\u6d4b\u8bd5-\u6d4b\u8bd5\u62a5\u544a\u3011\u8def\u5f84\u4e0b\u67e5\u770b\u62a5\u544a\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#33","title":"3.3 \u7f16\u8f91\u573a\u666f","text":""},{"location":"user_manual/ui_test/ui_automation/#34","title":"3.4 \u590d\u5236\u573a\u666f","text":""},{"location":"user_manual/ui_test/ui_automation/#35","title":"3.5 \u5220\u9664\u573a\u666f","text":"

    \u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u4f1a\u5f39\u51fa\u63d0\u793a\u6846\uff0c\u786e\u8ba4\u5220\u9664\u540e\uff0c\u573a\u666f\u4f1a\u88ab\u5220\u9664\u5230\u56de\u6536\u7ad9\u3002

    \u56de\u6536\u7ad9\u5185\u7684\u573a\u666f\u53ef\u4ee5\u6062\u590d\u6216\u5f7b\u5e95\u5220\u9664\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#4","title":"4 \u6279\u91cf\u64cd\u4f5c","text":""},{"location":"user_manual/ui_test/ui_automation/#41","title":"4.1 \u6279\u91cf\u7f16\u8f91","text":"

    \u52fe\u9009\u591a\u4e2a\u573a\u666f\uff0c\u70b9\u51fb\u5217\u8868\u5de6\u4fa7\u7684\u4e09\u4e2a\u70b9\uff0c\u70b9\u51fb\u3010\u6279\u91cf\u7f16\u8f91\u3011\u3002

    \u5f39\u51fa\u6279\u91cf\u7f16\u8f91\u9875\u9762\uff0c\u9009\u62e9\u9700\u8981\u4fee\u6539\u7684\u5c5e\u6027\u548c\u5c5e\u6027\u503c\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u5373\u53ef\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#42","title":"4.2 \u6279\u91cf\u79fb\u52a8","text":"

    \u52fe\u9009\u591a\u4e2a\u573a\u666f\uff0c\u70b9\u51fb\u3010\u6279\u91cf\u79fb\u52a8\u3011\uff0c\u5f39\u51fa\u6279\u91cf\u79fb\u52a8\u7f16\u8f91\u9875\u9762\u3002

    \u9009\u62e9\u7528\u4f8b\u76ee\u5f55\u70b9\u51fb\u3010\u786e\u5b9a\u3011\uff0c\u52fe\u9009\u7684\u573a\u666f\u4f1a\u79fb\u52a8\u5230\u8be5\u76ee\u5f55\u4e0b\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#43","title":"4.3 \u6279\u91cf\u590d\u5236","text":"

    \u52fe\u9009\u591a\u4e2a\u573a\u666f\uff0c\u70b9\u51fb\u3010\u6279\u91cf\u590d\u5236\u3011\uff0c\u4f1a\u5f39\u51fa\u6279\u91cf\u590d\u5236\u7f16\u8f91\u9875\u9762\u3002

    \u9009\u62e9\u7528\u4f8b\u76ee\u5f55\u5e76\u70b9\u51fb\u3010\u786e\u5b9a\u3011\uff0c\u52fe\u9009\u7684\u7528\u4f8b\u4f1a\u590d\u5236\u5230\u8be5\u76ee\u5f55\u4e0b\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#44","title":"4.4 \u6279\u91cf\u5220\u9664","text":"

    \u52fe\u9009\u591a\u4e2a\u573a\u666f\uff0c\u70b9\u51fb\u3010\u6279\u91cf\u5220\u9664\u3011\uff0c\u5f39\u51fa\u786e\u8ba4\u9875\u9762\u3002

    \u70b9\u51fb\u3010\u786e\u5b9a\u3011\uff0c\u52fe\u9009\u7684\u5220\u9664\u4f1a\u88ab\u5220\u9664\u5230\u56de\u6536\u7ad9\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#5","title":"5 \u521b\u5efa\u6307\u4ee4","text":""},{"location":"user_manual/ui_test/ui_automation/#51","title":"5.1 \u57fa\u672c\u4fe1\u606f","text":"

    \u70b9\u51fb\u3010+\u3011\u6309\u94ae\uff0c\u9009\u62e9\u3010\u521b\u5efa\u6307\u4ee4\u3011\uff0c\u8fdb\u5165\u6307\u4ee4\u521b\u5efa\u9875\u9762\u3002

    \u5728\u3010\u57fa\u7840\u4fe1\u606f\u3011\u680f\uff0c\u6dfb\u52a0\u6a21\u5757\u3001\u72b6\u6001\u3001\u540d\u79f0\u7b49\u4fe1\u606f\u540e\u5373\u53ef\u4fdd\u5b58\u573a\u666f\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#52","title":"5.2 \u6307\u4ee4\u6b65\u9aa4","text":"

    \u5728\u53f3\u4e0b\u89d2\u9009\u62e9\u6b65\u9aa4\u8fdb\u884c\u6dfb\u52a0\uff0c\u53ef\u5728\u3010\u6307\u4ee4\u6b65\u9aa4\u3011\u9875\u9762\u770b\u5230\u5404\u4e2a\u6b65\u9aa4\uff0c\u9ed8\u8ba4\u6709\u524d\u7f6e\u6b65\u9aa4\u3001\u81ea\u5b9a\u4e49\u6b65\u9aa4\u3001\u540e\u7f6e\u6b65\u9aa4\u3002

    \u6dfb\u52a0 UI \u81ea\u52a8\u5316\u63a7\u4ef6\u5230\u76f8\u5e94\u6b65\u9aa4\u4e0b\uff0c\u5176\u4e2d\u81ea\u5b9a\u4e49\u6b65\u9aa4\u5904\u652f\u6301\u53c2\u6570\u5316\u914d\u7f6e\u3002

    \u53ef\u5728\u3010\u573a\u666f\u6b65\u9aa4\u3011\u6216\u3010\u6307\u4ee4\u6b65\u9aa4\u3011\u7684\u6279\u91cf\u9009\u62e9\u4e2d\uff0c\u70b9\u51fb\u521b\u5efa\u81ea\u5b9a\u4e49\u6307\u4ee4\u9009\u9879\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#53","title":"5.3 \u6307\u4ee4\u5217\u8868","text":"

    \u5728\u3010\u81ea\u52a8\u5316\u5217\u8868\u3011\u9875\u9762\uff0c\u5207\u6362\u5230\u3010\u6307\u4ee4\u3011\u9875\u9762\uff0c\u53ef\u770b\u5230\u6240\u6709\u7684\u6307\u4ee4\u5217\u8868\u3002

    \u53ef\u5bf9\u5217\u8868\u4e2d\u7684\u6307\u4ee4\u8fdb\u884c\u3010\u7f16\u8f91\u3011\u3001\u3010\u590d\u5236\u3011\u3001\u3010\u5220\u9664\u3011\u3001\u3010\u67e5\u770b\u5f15\u7528\u3011\u7b49\u64cd\u4f5c\u3002

    "},{"location":"user_manual/ui_test/ui_element_store/","title":"\u5143\u7d20\u5e93","text":""},{"location":"user_manual/ui_test/ui_element_store/#1","title":"1 \u521b\u5efa\u5143\u7d20","text":"

    \u5207\u6362\u5230\u3010UI\u6d4b\u8bd5\u3011\u6a21\u5757\u4e0b\u7684\u3010\u5143\u7d20\u5e93\u3011\u9875\u9762\uff0c\u70b9\u51fb\u3010\u521b\u5efa\u5143\u7d20\u3011\uff0c\u8f93\u5165\u5143\u7d20\u5b57\u6bb5\u540d\uff0c\u9009\u62e9\u6240\u5c5e\u6a21\u5757\u548c\u5b9a\u4f4d\u7c7b\u578b\uff0c\u7136\u540e\u8f93\u5165\u5143\u7d20\u5b9a\u4f4d\u7684\u8868\u8fbe\u5f0f\u548c\u5907\u6ce8\u3002

    "},{"location":"user_manual/ui_test/ui_element_store/#2","title":"2 \u5143\u7d20\u5b9a\u4f4d","text":"

    \u5143\u7d20\u5b9a\u4f4d\u652f\u6301\u591a\u79cd\u65b9\u5f0f\uff0c\u5305\u62ec id\u3001name\u3001class\u3001tag\u3001link\u3001plink\u3001css\u3001xpath\u3001lable\u3001value\u3001index\uff0c\u8fd9\u91cc\u4ee5 xpath \u4e3a\u4f8b\u3002\u8f93\u5165\u5fc5\u586b\u4fe1\u606f\u540e\uff0c\u70b9\u51fb\u786e\u8ba4\u5373\u53ef\u4fdd\u5b58\u5143\u7d20\u3002

    \u5728\u9875\u9762\u4e0a\u70b9\u51fb\u4f60\u8981\u5b9a\u4f4d\u7684\u5143\u7d20\uff0c\u7136\u540e\u53f3\u952e\u9009\u62e9\u3010\u68c0\u67e5\u3011\u3002

    \u53f3\u952e\u9009\u62e9 Copy-Copy XPath \u5373\u53ef\u83b7\u5f97\u8be5\u5143\u7d20\u7684 xpath \u8def\u5f84\u3002

    "},{"location":"user_manual/ui_test/ui_element_store/#3","title":"3 \u7f16\u8f91\u5143\u7d20","text":"

    \u5728\u5143\u7d20\u5e93\u5217\u8868\uff0c\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u952e\uff0c\u53ef\u4ee5\u4fee\u6539\u5143\u7d20\u5c5e\u6027\uff0c\u4fee\u6539\u4e4b\u540e\u70b9\u51fb\u786e\u8ba4\u5373\u53ef\u4fdd\u5b58\u3002

    "},{"location":"user_manual/ui_test/ui_element_store/#4","title":"4 \u590d\u5236\u5143\u7d20","text":""},{"location":"user_manual/ui_test/ui_element_store/#5","title":"5 \u5220\u9664\u5143\u7d20","text":""},{"location":"user_manual/ui_test/ui_test_report/","title":"\u6d4b\u8bd5\u62a5\u544a","text":""},{"location":"user_manual/ui_test/ui_test_report/#1","title":"1 \u62a5\u544a\u5217\u8868","text":"

    \u6d4b\u8bd5\u62a5\u544a\u5217\u8868\u8868\u5934\u5c55\u793a\u4e86\u62a5\u544a\u7684\u540d\u79f0\u3001\u521b\u5efa\u4eba\u3001\u521b\u5efa\u65f6\u95f4\u3001\u7ed3\u675f\u65f6\u95f4\u3001\u89e6\u53d1\u65b9\u5f0f\u3001\u72b6\u6001\u548c\u64cd\u4f5c\u3002\u6d4b\u8bd5\u62a5\u544a\u652f\u6301\u6309\u540d\u79f0\u641c\u7d22\u548c\u9ad8\u7ea7\u641c\u7d22\u3002

    \u9ad8\u7ea7\u641c\u7d22\u652f\u6301\u4ee5\u540d\u79f0\u3001\u72b6\u6001\u3001\u521b\u5efa\u4eba\u7b49\u7ef4\u5ea6\u8fdb\u884c\u7ec4\u5408\u67e5\u8be2\u3002

    "},{"location":"user_manual/ui_test/ui_test_report/#2","title":"2 \u91cd\u547d\u540d\u62a5\u544a","text":"

    \u5728\u6d4b\u8bd5\u62a5\u544a\u5217\u8868\u7684\u540d\u79f0\u680f\uff0c\u53ef\u4ee5\u91cd\u547d\u540d\u62a5\u544a\u540d\u79f0\u3002

    "},{"location":"user_manual/ui_test/ui_test_report/#3","title":"3 \u62a5\u544a\u8be6\u60c5","text":"

    \u70b9\u51fb\u3010\u62a5\u544a\u8be6\u60c5\u3011\uff0c\u53ef\u8fdb\u5165\u62a5\u544a\u8be6\u60c5\u9875\u9762\u3002

    \u8be6\u60c5\u9875\u9762\u9762\u677f\u5c55\u793a\u4e86\u672c\u6b21\u6267\u884c\u573a\u666f\u7684\u8017\u65f6\u3001\u6210\u529f\u548c\u5931\u8d25\u4ee5\u53ca\u672a\u6267\u884c\u7684\u6b65\u9aa4\u6570\uff0c\u8fd8\u6709\u65ad\u8a00\u6210\u529f\u548c\u5931\u8d25\u7684\u6570\u91cf\u3002

    \u5728\u603b\u89c8\u9762\u677f\u4e0b\u9762\uff0c\u53ef\u4ee5\u67e5\u770b\u573a\u666f\u5168\u90e8\u6b65\u9aa4\u548c\u5931\u8d25\u6b65\u9aa4\uff0c\u4ee5\u53ca\u63a7\u5236\u53f0\u8be6\u60c5\u3002

    \u5c55\u5f00\u6b65\u9aa4\u8be6\u60c5\u53ef\u4ee5\u67e5\u770b\u5f53\u524d\u6b65\u9aa4\u7684\u6267\u884c\u7ed3\u679c\u65e5\u5fd7\u3001\u65ad\u8a00\u7ed3\u679c\u548c\u63d0\u53d6\u7ed3\u679c\u3002

    \u9f20\u6807\u60ac\u6d6e\u5728\u53f3\u4fa7\u7684\u3010\u622a\u56fe\u3011\u4e0a\uff0c\u4f1a\u5c55\u793a\u8be5\u6b65\u9aa4\u6267\u884c\u65f6\u7684 UI \u622a\u56fe\u9884\u89c8\u3002

    \u70b9\u51fb\u8be5\u9884\u89c8\u56fe\uff0c\u4f1a\u4ee5\u7f51\u9875\u5927\u56fe\u5f62\u5f0f\u5c55\u793a UI \u622a\u56fe\u3002

    "},{"location":"user_manual/ui_test/ui_test_report/#4","title":"4 \u5220\u9664\u62a5\u544a","text":"

    \u5728\u6d4b\u8bd5\u62a5\u544a\u5217\u8868\u9875\u9762\uff0c\u70b9\u51fb\u3010\u5220\u9664\u3011\u952e\uff0c\u4f1a\u5f39\u51fa\u786e\u8ba4\u5220\u9664\u7684\u63d0\u793a\u3002

    "}]} \ No newline at end of file +{"config":{"lang":["en","ja"],"separator":"[\\s\\-\\.]+","pipeline":["stemmer"]},"docs":[{"location":"","title":"\u9879\u76ee\u4ecb\u7ecd","text":"

    MeterSphere \u662f\u4e00\u7ad9\u5f0f\u5f00\u6e90\u6301\u7eed\u6d4b\u8bd5\u5e73\u53f0\uff0c\u6db5\u76d6\u6d4b\u8bd5\u8ddf\u8e2a\u3001\u63a5\u53e3\u6d4b\u8bd5\u3001UI \u6d4b\u8bd5\u548c\u6027\u80fd\u6d4b\u8bd5\u7b49\uff0c\u5168\u9762\u517c\u5bb9 JMeter\u3001Selenium \u7b49\u4e3b\u6d41\u5f00\u6e90\u6807\u51c6\uff0c\u6709\u6548\u52a9\u529b\u5f00\u53d1\u548c\u6d4b\u8bd5\u56e2\u961f\u5728\u7ebf\u5171\u4eab\u534f\u4f5c\uff0c\u5b9e\u73b0\u7aef\u5230\u7aef\u7684\u6d4b\u8bd5\u7ba1\u7406\u8ddf\u8e2a\u53ef\u89c6\u5316\u3001\u81ea\u52a8\u5316\u6d4b\u8bd5\u3001\u6027\u80fd\u6d4b\u8bd5\u53ca\u878d\u5165\u6301\u7eed\u4ea4\u4ed8 DevOps \u4f53\u7cfb\uff0c\u5e76\u5145\u5206\u5229\u7528\u4e91\u5f39\u6027\u8fdb\u884c\u9ad8\u5ea6\u53ef\u6269\u5c55\u7684\u81ea\u52a8\u5316\u6d4b\u8bd5\uff0c\u4ece\u800c\u52a0\u901f\u9ad8\u8d28\u91cf\u7684\u8f6f\u4ef6\u4ea4\u4ed8\uff0c\u63a8\u52a8\u4e2d\u56fd\u6d4b\u8bd5\u884c\u4e1a\u6574\u4f53\u6548\u7387\u7684\u63d0\u5347\u3002

    "},{"location":"#1","title":"1 \u4ea7\u54c1\u4f18\u52bf","text":"
    • \u5f00\u6e90\uff1a\u57fa\u4e8e\u5f00\u6e90\u3001\u517c\u5bb9\u5f00\u6e90\uff0c\u6309\u6708\u53d1\u5e03\u65b0\u7248\u672c\u3001\u65e5\u5747\u4e0b\u8f7d\u5b89\u88c5\u8d85\u8fc7100\u6b21\u3001\u88ab\u5927\u91cf\u7528\u6237\u9a8c\u8bc1\u3002
    • \u4e00\u7ad9\u5f0f\uff1a\u5168\u9762\u6db5\u76d6\u6d4b\u8bd5\u8ddf\u8e2a\u3001\u63a5\u53e3\u6d4b\u8bd5\u3001UI\u6d4b\u8bd5\u3001\u6027\u80fd\u6d4b\u8bd5\u5e76\u6253\u901a\u8054\u52a8\u3002
    • \u5168\u751f\u547d\u5468\u671f\uff1a\u6ee1\u8db3\u4ece\u6d4b\u8bd5\u8ba1\u5212\u3001\u6d4b\u8bd5\u6267\u884c\u5230\u6d4b\u8bd5\u62a5\u544a\u5206\u6790\u7684\u5168\u751f\u547d\u5468\u671f\u9700\u6c42\u3002
    • \u6301\u7eed\u6d4b\u8bd5\uff1a\u65e0\u7f1d\u5bf9\u63a5 Bug \u7ba1\u7406\u5de5\u5177\u548c\u6301\u7eed\u96c6\u6210\u5de5\u5177\u7b49\uff0c\u5c06\u6d4b\u8bd5\u878d\u5165\u6301\u7eed\u4ea4\u4ed8\u548c DevOps \u4f53\u7cfb\u3002
    • \u56e2\u961f\u534f\u4f5c\uff1a\u652f\u6301\u56e2\u961f\u534f\u4f5c\u548c\u8d44\u4ea7\u6c89\u6dc0\uff0c\u65e0\u8bba\u56e2\u961f\u89c4\u6a21\u5982\u4f55\uff0c\u603b\u6709\u9002\u5408\u7684\u843d\u5730\u65b9\u5f0f\u3002
    "},{"location":"#2","title":"2 \u4e3b\u8981\u529f\u80fd","text":"
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u5bf9\u63a5\u4e3b\u6d41\u9879\u76ee\u7ba1\u7406\u5e73\u53f0\uff0c\u6d4b\u8bd5\u8fc7\u7a0b\u5168\u94fe\u8def\u8ddf\u8e2a\u7ba1\u7406\uff1b\u5217\u8868\u8111\u56fe\u6a21\u5f0f\u81ea\u7531\u5207\u6362\uff0c\u7528\u4f8b\u7f16\u5199\u66f4\u7b80\u5355\u3001\u6d4b\u8bd5\u62a5\u544a\u66f4\u6e05\u6670\u3002
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u96c6 JMeter\u3001PostMan \u6613\u7528\u6027\u548c\u529f\u80fd\u6027\u4e8e\u4e00\u4f53\uff1b \u652f\u6301API \u7ba1\u7406\u3001Mock \u670d\u52a1\u3001\u573a\u666f\u7f16\u6392\u3001\u6269\u5c55\u534f\u8bae\u7b49\u3002
    • UI \u6d4b\u8bd5\uff1a\u57fa\u4e8e Selenium \u6d4f\u89c8\u5668\u81ea\u52a8\u5316\uff0c\u9ad8\u5ea6\u53ef\u590d\u7528\u7684\u6d4b\u8bd5\u811a\u672c\uff1b\u65e0\u9700\u590d\u6742\u7684\u4ee3\u7801\u7f16\u5199\uff0c\u4eba\u4eba\u90fd\u53ef\u5f00\u5c55\u7684\u4f4e\u4ee3\u7801\u81ea\u52a8\u5316\u6d4b\u8bd5\u3002
    • \u6027\u80fd\u6d4b\u8bd5\uff1a\u517c\u5bb9 JMeter \u7684\u540c\u65f6\u8865\u8db3\u5176\u5206\u5e03\u5f0f\u3001\u76d1\u63a7\u4e0e\u62a5\u544a\u4ee5\u53ca\u7ba1\u7406\u77ed\u677f\uff1b\u5e2e\u52a9\u56e2\u961f\u5b9e\u73b0\u9ad8\u5e76\u53d1\u3001\u5206\u5e03\u5f0f\u7684\u6027\u80fd\u538b\u6d4b\uff0c\u5b8c\u6210\u538b\u6d4b\u4efb\u52a1\u7684\u7edf\u4e00\u8c03\u5ea6\u4e0e\u7ba1\u7406\u3002
    "},{"location":"#3","title":"3 \u754c\u9762\u5c55\u793a","text":""},{"location":"#4","title":"4 \u7cbe\u54c1\u8bfe\u7a0b","text":"
    • \u73a9\u8f6c MeterSphere \u5f00\u6e90\u6301\u7eed\u6d4b\u8bd5\u5e73\u53f0\u7cfb\u5217\u6559\u7a0b\u4e4b\u6d4b\u8bd5\u8ddf\u8e2a
    • \u73a9\u8f6c MeterSphere \u5f00\u6e90\u6301\u7eed\u6d4b\u8bd5\u5e73\u53f0\u7cfb\u5217\u6559\u7a0b\u4e4b\u63a5\u53e3\u6d4b\u8bd5
    • \u73a9\u8f6c MeterSphere \u5f00\u6e90\u6301\u7eed\u6d4b\u8bd5\u5e73\u53f0\u7cfb\u5217\u6559\u7a0b\u4e4b\u6027\u80fd\u6d4b\u8bd5
    • \u73a9\u8f6c MeterSphere \u5f00\u6e90\u6301\u7eed\u6d4b\u8bd5\u5e73\u53f0\u7cfb\u5217\u6559\u7a0b\u4e4b UI \u6d4b\u8bd5
    "},{"location":"#5","title":"5 \u4e86\u89e3\u66f4\u591a","text":"
    • \u83b7\u53d6\u300a\u6301\u7eed\u6d4b\u8bd5\u767d\u76ae\u4e66\u300b
    • \u5982\u4f55\u5411\u56e2\u961f\u4ecb\u7ecd MeterSphere\uff1f
    • MeterSphere \u77e5\u8bc6\u5e93
    • MeterSphere \u793e\u533a\u8bba\u575b
    • MeterSphere \u57f9\u8bad\u548c\u8ba4\u8bc1
    "},{"location":"automation_plugin_dev/","title":"\u63a5\u53e3\u81ea\u52a8\u5316\u63d2\u4ef6\u5f00\u53d1","text":""},{"location":"automation_plugin_dev/#1","title":"1 \u80cc\u666f\u4ecb\u7ecd","text":"

    \u5728 JMeter \u4e2d\u4f7f\u7528 Dummy Sampler \u53ef\u4ee5\u6784\u9020\u51fa\u4e00\u4e2a\u8bf7\u6c42\u548c\u54cd\u5e94\u5b8c\u5168\u81ea\u5b9a\u4e49\u7684\u8bf7\u6c42\u53d6\u6837\u5668\uff0c\u5e76\u4e14\u8fd9\u79cd\u65b9\u5f0f\u53ef\u4ee5\u65b9\u4fbf\u5730\u5bf9\u65ad\u8a00\u3001\u53c2\u6570\u63d0\u53d6\u7b49\u5404\u79cd\u540e\u7f6e\u5904\u7406\u5668\u8fdb\u884c\u8c03\u8bd5\u3002\u9488\u5bf9 JMeter \u5df2\u6709\u7684\u529f\u80fd\u6216\u63d2\u4ef6\uff0c\u53ea\u9700\u8981\u8fdb\u884c\u5f88\u5c11\u91cf\u7684\u5f00\u53d1\u5de5\u4f5c\uff0c\u5c31\u53ef\u4ee5\u5c06\u5176\u5c01\u88c5\u6210 MeterSphere \u7684\u63a5\u53e3\u81ea\u52a8\u5316\u63d2\u4ef6\uff0c\u5bf9\u5e94\u7684\u63d2\u4ef6 Demo \u793a\u4f8b\u89c1: metersphere-plugin-DummySampler\u3002

    "},{"location":"automation_plugin_dev/#2","title":"2 \u5f00\u53d1\u6d41\u7a0b","text":""},{"location":"automation_plugin_dev/#21","title":"2.1 \u9879\u76ee\u521d\u59cb\u5316","text":"

    \u521d\u59cb\u5316\u4e00\u4e2a maven \u9879\u76ee\uff0c\u5e76\u6dfb\u52a0\u5982\u4e0b\u4f9d\u8d56\u3002

    <!-- \u7701\u7565\u5f00\u5934 -->\n    <dependencies>\n        <!-- \u516c\u5171\u63d2\u4ef6\u5305\uff0c\u5b9a\u4e49\u4e86\u6267\u884c\u6570\u636e\u7684\u57fa\u7c7b\u548c\u516c\u5171\u63a5\u53e3 -->\n        <dependency>\n            <groupId>io.metersphere</groupId>\n            <artifactId>metersphere-plugin-core</artifactId>\n            <version>1.0.1</version>\n            <scope>provided</scope>\n        </dependency>\n        <!-- \u539f\u59cb\u7684 JMeter DummySampler \u63d2\u4ef6 -->\n        <dependency>\n            <groupId>kg.apc</groupId>\n            <artifactId>jmeter-plugins-dummy</artifactId>\n            <version>0.4</version>\n            <scope>provided</scope>\n        </dependency>\n    </dependencies>\n<!-- \u7701\u7565\u7ed3\u5c3e -->\n

    "},{"location":"automation_plugin_dev/#22","title":"2.2 \u751f\u6210\u524d\u7aef\u8868\u5355","text":"

    \u5728 JMeter \u4e2d\u521b\u5efa\u4e00\u4e2a\u5305\u542b DummySampler \u6b65\u9aa4\u7684\u811a\u672c\uff0c\u5bf9\u7167 JMeter \u4e2d\u8be5\u6b65\u9aa4\u7684\u914d\u7f6e\u9875\u9762\uff0c\u4f7f\u7528 \u8868\u5355\u751f\u6210\u5668 \u751f\u6210\u524d\u7aef\u8868\u5355\u7684 json \u6587\u4ef6\u3002

    \u70b9\u51fb\u8868\u5355\u751f\u6210\u5668\u53f3\u4e0a\u89d2\u7684\u3010\u751f\u6210JSON\u3011\u6309\u94ae\uff0c\u5c06\u5185\u5bb9\u4fdd\u5b58\u5230src\\main\\resources\\json\\ui_dummy.json\u6587\u4ef6\u4e2d\uff1b\u70b9\u51fb\u53f3\u4e0a\u89d2\u7684\u3010\u751f\u6210Options\u3011\u6309\u94ae\uff0c\u5c06\u5185\u5bb9\u4fdd\u5b58\u5230src\\main\\resources\\json\\ui_form.json\u6587\u4ef6\u4e2d\u3002\u5bf9\u4e8e\u6ca1\u6709\u9ed8\u8ba4\u503c\u7684\u5b57\u6bb5\uff0c\u624b\u52a8\u7f16\u8f91 json \u6587\u4ef6\uff0c\u589e\u52a0\u7a7a\u9ed8\u8ba4\u503c\uff0c\u907f\u514d\u51fa\u73b0\u7a7a\u6307\u9488\u5f02\u5e38\u3002

    "},{"location":"automation_plugin_dev/#23","title":"2.3 \u521d\u59cb\u5316\u63d2\u4ef6\u8d44\u6e90","text":"

    \u5728src\\main\\java\\io\\metersphere\\plugin\\dummy\\UiScriptApiImpl.java\u4e2d\u4f7f\u7528\u4e0a\u9762\u751f\u6210\u7684\u8868\u5355 json\uff0c\u5bf9\u63d2\u4ef6\u5185\u5bb9\u8fdb\u884c\u521d\u59cb\u5316\u3002

    "},{"location":"automation_plugin_dev/#24-jmeter-hashtree","title":"2.4 \u8f6c\u6362\u751f\u6210 JMeter HashTree","text":"

    \u521b\u5efa\u4e0e\u4e0a\u4e00\u6b65\u5bf9\u5e94\u7684\u521d\u59cb\u5316 UiScript \u5bf9\u8c61\u65f6\u6307\u5b9a\u7c7b\u540d\u4e00\u81f4\u7684io.metersphere.plugin.dummy.sampler.MsDummySampler\u7c7b\uff0c\u5728\u8be5\u7c7b\u4e2d\u5b8c\u6210\u524d\u7aef\u8868\u5355\u6570\u636e\u5230 JMeter HashTree \u7684\u8f6c\u6362\u3002

    \u751f\u6210 DummySampler \u5bf9\u8c61\u65f6\uff0cguiclass\u3001testclass \u53ca\u5404\u4e2a\u5c5e\u6027\u5bf9\u5e94\u7684\u5b57\u6bb5\uff0c\u53ef\u4ee5\u901a\u8fc7\u521b\u5efa\u4e00\u4e2a\u5305\u542b DummySampler \u6b65\u9aa4\u7684 jmx \u811a\u672c\uff0c\u4ee5\u6587\u672c\u6a21\u5f0f\u6253\u5f00\u811a\u672c\u5feb\u901f\u83b7\u53d6\u3002

    "},{"location":"automation_plugin_dev/#25","title":"2.5 \u6253\u5305","text":"

    \u589e\u52a0\u4e00\u4e2a\u4e0e\u6253\u5305\u540e\u7684 jar \u5305\u540c\u540d\u7684\u6587\u4ef6 src\\main\\resources\\metersphere-plugin-DummySampler-1.0.0-jar-with-all-dependencies \u6307\u5b9a\u63d2\u4ef6\u5165\u53e3\u3002\u518d\u8865\u5145\u4e00\u4e9b\u5176\u4ed6\u7684\u5fc5\u8981\u5185\u5bb9\u540e\u5c31\u53ef\u4ee5\u6253\u5305\u4e86\u3002

    "},{"location":"automation_plugin_dev/#26","title":"2.6 \u4e0a\u4f20\u6d4b\u8bd5","text":"

    \u6253\u5305\u540e\u5c06\u751f\u6210\u7684 metersphere-plugin-DummySampler-1.0.0-jar-with-all-dependencies.jar \u5728 MeterSphere \u7684\u63d2\u4ef6\u7ba1\u7406\u9875\u9762\u8fdb\u884c\u4e0a\u4f20\uff0c\u4e0a\u4f20\u6210\u529f\u540e\u5c31\u53ef\u4ee5\u5728\u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u7f16\u8f91\u65f6\u67e5\u770b\u3001\u4f7f\u7528\u548c\u8c03\u8bd5\u63d2\u4ef6\u63d0\u4f9b\u7684\u8bf7\u6c42\u3002

    "},{"location":"awesome-jmeter/","title":"Awesome jmeter","text":"

    Apache JMeter \u662f\u4e00\u4e2a Java \u8bed\u8a00\u7f16\u5199\u7684\u5f00\u6e90\u6027\u80fd\u6d4b\u8bd5\u5de5\u5177\uff0c\u662f\u76ee\u524d\u6700\u4e3b\u6d41\u7684\u5f00\u6e90\u6027\u80fd\u6d4b\u8bd5\u5de5\u5177\u3002\u672c\u8d44\u6e90\u96c6\u6e90\u81ea awesome-jmeter\uff08CC-BY-4.0 license\uff09\uff0cMeterSphere \u56e2\u961f\u9488\u5bf9\u56fd\u5185\u7528\u6237\u8fdb\u884c\u4e86\u6c49\u5316\u3001\u4f18\u5316\u548c\u8fdb\u4e00\u6b65\u6574\u7406\u3002

    "},{"location":"awesome-jmeter/#1","title":"1 \u5b98\u65b9\u8d44\u6e90","text":"
    • Apache JMeter Project - Apache JMeter \u5b98\u65b9\u7f51\u7ad9
    • GitHub Repository - Apache JMeter GitHub \u4ee3\u7801\u5e93
    • JMeter Wiki - Apache JMeter \u5b98\u65b9\u6587\u6863
    • Issue Tracking - Apache JMeter \u7f3a\u9677\u8ddf\u8e2a\u7cfb\u7edf
    • Mailing Lists - Apache JMeter \u90ae\u4ef6\u5217\u8868
    "},{"location":"awesome-jmeter/#2","title":"2 \u5feb\u901f\u5165\u95e8","text":"
    • The Beginner's Guide to Performance Testing with Apache JMeter
    "},{"location":"awesome-jmeter/#3","title":"3 \u4f7f\u7528\u6559\u7a0b","text":"
    • JMeter Tutorials
    • JMeter Tutorial for Load Testing: The Ultimate Guide
    • RESTful API testing with JMeter
    • JMeter Tutorial - By Guru99
    "},{"location":"awesome-jmeter/#4","title":"4 \u6700\u4f73\u5b9e\u8df5","text":"
    • JMeter \u6700\u4f73\u5b9e\u8df5 - \u5b98\u65b9
    • JMeter \u6700\u4f73\u5b9e\u8df5 - BlazeMeter
    • Concurrent, High Throughput Performance Testing with JMeter
    "},{"location":"awesome-jmeter/#5-scripting","title":"5 Scripting","text":"
    • Beanshell vs JSR223 vs Java JMeter Scripting - Most popular scripting mechanisms performance comparison.
    • Testing with Groovy - Using JMeter and Groovy for load testing.
    "},{"location":"awesome-jmeter/#6","title":"6 \u6301\u7eed\u96c6\u6210","text":"
    • JMeter Ant Task - Ant task to automate running JMeter test plans.
    • JMeter Maven Plugin - Maven plugin that provides the ability to run JMeter tests as part of the build.
    • Jenkins Performance Plugin - Jenkins plugin to capture reports from JMeter and generate graphic charts with the trend report of performance and robustness.
    • Sonar JMeter Plugin - Plugin to collect JMeter performance tests results and display in Sonar dashboard (deprecated).
    "},{"location":"awesome-jmeter/#7","title":"7 \u5206\u5e03\u5f0f\u6d4b\u8bd5","text":"
    • JMeter Distributed Testing Step-by-step
    • JMeter Remote Testing
    • Setting up a JMeter Cluster for web server load testing
    "},{"location":"awesome-jmeter/#8","title":"8 \u5bb9\u5668\u5316","text":"
    • Dockerized JMeter - Distributed load testing workflow with Docker and JMeter.
    • JMeter Docker Images
    • Distributed JMeter testing using Docker
    • A Docker solution to JMeter + InfluxDB + Grafana performance testing
    • AutoMeter - An automation tool for scaling load tests using distributed slaves, based on JMeter master-slave architecture.
    "},{"location":"awesome-jmeter/#9","title":"9 \u4e0e\u516c\u6709\u4e91\u96c6\u6210","text":"
    • Amazon Web Services
      • jmeter-ec2 - Automates running Apache JMeter on Amazon EC2.
      • gee - A modified version of JMeter-EC2 project.
      • os-jmeter-aws - Run JMeter on multiple AWS instances, view results in ELK.
      • Load Testing with JMeter and Amazon EC2
      • Performance Testing in the Cloud with JMeter & AWS
      • JMeter distributed testing with Amazon EC2
    • Microsoft Azures
      • Load Testing Pipeline with JMeter, ACI and Terraform - Scalable cloud load/stress testing pipeline solution with Apache JMeter and Terraform to dynamically provision and destroy the required infrastructure on Azure.
    "},{"location":"awesome-jmeter/#10","title":"10 \u7ed3\u679c\u5904\u7406\u548c\u53ef\u89c6\u5316","text":"
    • JMeter Report Dashboard - JMeter supports dashboard report generation to get graphs and statistics from a test plan.
    • JMeter Log Analysis - Suggestions and recipes for JMeter log analysis.
    • Analyzing JMeter Results
    • JMeter Result Analysis: The Ultimate Guide
    • BlazeMeter Sense - Service for storing and analysing performance test results.
    • JAnalyser - Browser-based results analysis tool.
    • JMeter Result Analysis Plugin - Maven plugin that parses JMeter test results and generates detailed reports with charts.
    • JMeter Results Analyser - Web-based application for collating, analysing and reporting JMeter test results.
    • DB Results Collectors
      • JMeter MySQLCollector Plugin - Patch to configure listener to log into MySQL database.
    • InfluxDB & Grafana
      • Using JMeter with InfluxDB & Grafana - Collection of guides to collect and visualize real-time test-results and server monitoring stats using InfluxDB & Grafana.
      • How to Use Grafana to Monitor JMeter Non-GUI Results
    • Grafana Dashboards
      • JMeter Load Test Dashboard - Grafana dashboard shows live load test metrics provided by JMeter (by NovaTec-APM).
      • JMeter Dashboard using Core InfluxdbBackendListenerClient - Monitor your Apache JMeter load test in real time with InfluxDB and Grafana (by Philippe M).
      • JMeter Dashboard (3.2 and up) - Monitor JMeter load test in real time with InfluxDB and Grafana (by adrianbanu).
      • JMeter (via prometheus exporter) - A Grafana dashboard to inspect JMeter metrics via Prometheus exporter (by chiabre).
      • JMeter-InfluxBD-Writer Plugin - JMeter plugin to write load test data on-the-fly into InfluxDB.
      • JMeter Results to InfluxDB - Read JMeter results from csv file and put into InfluxDB database.
    • ELK Stack
      • Using ELK - Using Elasticsearch, Logstash, and Kibana to visualize JMeter test results.
      • JMeter + ElasticSearch Live Monitoring - Using the ElasticSearch Backend listener and Grafana/Kibana to monitor results in realtime.
    • Prometheus
      • jmeter-prometheus-plugin - A Prometheus Listener for Apache JMeter that exposes results in HTTP API.
    • Backend Listener Implementations
      • jmeter-elasticsearch-backend-listener - JMeter plugin to send test results to an ElasticSearch engine.
      • jmeter-backend-azure - JMeter plugin to send test results to Azure Application Insights.
      • jmeter-backend-listener-kafka - JMeter plugin to send test results to a Kafka server.
      • jmeter-listener - JMeter plugin to write load test data on-the-fly to ClickHouse, InfluxDB, ElasticSearch.
    "},{"location":"awesome-jmeter/#11-streaming-protocols","title":"11 Streaming Protocols","text":"
    • Easy and realistic Load Testing of HTTP Live Streaming (HLS) with Apache JMeter
    • Using JMeter to Load Test Live HLS Concurrency of Wowza Streaming Engine
    • Load testing HLS with Ruby JMeter
    • Media Live Streaming Load Testing with JMeter - Collection of articles by BlazeMeter (HLS, RTMP, WS, podcasts, etc.).
    • HLS JMeter Plugin
    "},{"location":"awesome-jmeter/#12-mobile-apps","title":"12 Mobile Apps","text":"
    • Record iOS application HTTP requests
    • Load Testing Mobile Apps Made Easy
    • Performance Testing for Native Mobile Apps
    "},{"location":"awesome-jmeter/#13-plugins","title":"13 Plugins \u5217\u8868\u3001\u4e8c\u6b21\u5f00\u53d1","text":"
    • JMeter Plugins list - List of available plugins and extensions.
    • JMeter Plugins - Independent set of plugins for Apache JMeter, with plugin manager references many plugins and simplifies installation.
    • Ubik Load Pack - Productivity extensions for Apache JMeter.
    • JMeter Developer Manual
    • How to write a plugin for JMeter
    • How to build a JMeter plugin utilising groovy
    • How to create a plugin in JMeter
    • Custom JMeter Samplers and Config Elements
    • Implement Custom JMeter Samplers
    "},{"location":"awesome-jmeter/#14-ide","title":"14 IDE \u96c6\u6210","text":"
    • Intellij IDEA IDE Plugin - Create run configurations and run JMeter tests from Intellij IDEA.
    • JMeter + Eclipse HOWTO - Develop the JMeter project with Eclipse IDE.
    "},{"location":"awesome-jmeter/#15","title":"15 \u76f8\u5173\u4e66\u7c4d","text":"
    • JMeter \u6027\u80fd\u6d4b\u8bd5\u5b9e\u6218 \u7b2c2\u7248
    "},{"location":"awesome-jmeter/#16","title":"16 \u57f9\u8bad\u8bfe\u7a0b","text":"
    • \u6781\u5ba2\u65f6\u95f4\uff1a\u6027\u80fd\u6d4b\u8bd5\u5b9e\u6218 30 \u8bb2
    • JMeter: Performance and Load Testing - By LinkedIn Learning.
    • BlazeMeter University - By BlazeMeter.
    • Apache JMeter Testing Courses - By QAInsights.
    "},{"location":"awesome-jmeter/#17","title":"17 \u76f8\u5173\u535a\u5ba2","text":"
    • BlazeMeter Blog - BlazeMeter blog about JMeter and performance testing.
    • Flood.io Blog - Load testing thoughts, stories and ideas from Flood IO.
    • JMeter Blog - Another blog for performance & automation testing using JMeter.
    "},{"location":"dev_manual/","title":"\u5f00\u53d1\u73af\u5883\u642d\u5efa","text":""},{"location":"dev_manual/#1","title":"1 \u9879\u76ee\u7ed3\u6784","text":"
    .\n\u251c\u2500\u2500 Jenkinsfile                                     # \u6784\u5efaJAR\u5305\u4f7f\u7528\u7684 jenkinsfile\n\u251c\u2500\u2500 LICENSE\n\u251c\u2500\u2500 OWNERS\n\u251c\u2500\u2500 README.md                                       # \u9879\u76ee\u4e2d\u6587\u4ecb\u7ecd\n\u251c\u2500\u2500 README-EN.md                                    # \u9879\u76ee\u82f1\u6587\u4ecb\u7ecd\n\u251c\u2500\u2500 SECURITY.md                                     # \u5b89\u5168\u8bf4\u660e\n\u251c\u2500\u2500 CODE_OF_CONDUCT.md                        \n\u251c\u2500\u2500 CONTRIBUTING.md \n\u251c\u2500\u2500 build.md                                        # \u6784\u5efa\u8fc7\u7a0b\n\u251c\u2500\u2500framework                                          \n\u2502\u00a0\u00a0 \u251c\u2500\u2500 eureka                                       # \u670d\u52a1\u6ce8\u518c\u4e2d\u5fc3\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 gateway                                      # API \u7f51\u5173\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 sdk-parent                                   # SDK\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 .gitignore                                    \n\u2502\u00a0\u00a0 \u2514\u2500\u2500 pom                                          # \u4e3b\u6846\u67b6\u7684 pom \u6587\u4ef6           \n\u251c\u2500\u2500test-track                                        # \u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 backend                                      # \u540e\u7aef\u4ee3\u7801\u76ee\u5f55\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 frontend                                     # \u524d\u7aef\u4ee3\u7801\u76ee\u5f55\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 Dockerfile                                   # \u6784\u5efa\u5bb9\u5668\u955c\u50cf\u4f7f\u7528\u7684 dockerfile\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 pom                                          # \u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757\u4f7f\u7528\u7684 pom \u6587\u4ef6   \n\u251c\u2500\u2500 api-test                                         # \u63a5\u53e3\u6d4b\u8bd5\u6a21\u5757\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 backend                                      # \u540e\u7aef\u4ee3\u7801\u76ee\u5f55\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 frontend                                     # \u524d\u7aef\u4ee3\u7801\u76ee\u5f55\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 Dockerfile                                   # \u6784\u5efa\u5bb9\u5668\u955c\u50cf\u4f7f\u7528\u7684 dockerfile\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 pom                                          # \u63a5\u53e3\u6d4b\u8bd5\u6a21\u5757\u4f7f\u7528\u7684 pom \u6587\u4ef6\n\u251c\u2500\u2500 performance-test                                 # \u6027\u80fd\u6d4b\u8bd5\u6a21\u5757\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 backend                                      # \u540e\u7aef\u4ee3\u7801\u76ee\u5f55\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 frontend                                     # \u524d\u7aef\u4ee3\u7801\u76ee\u5f55\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 Dockerfile                                   # \u6784\u5efa\u5bb9\u5668\u955c\u50cf\u4f7f\u7528\u7684 dockerfile\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 pom                                          # \u6027\u80fd\u6d4b\u8bd5\u6a21\u5757\u4f7f\u7528\u7684 pom \u6587\u4ef6\n\u251c\u2500\u2500 report-stat                                      # \u62a5\u8868\u7edf\u8ba1\u6a21\u5757\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 backend                                      # \u540e\u7aef\u4ee3\u7801\u76ee\u5f55\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 frontend                                     # \u524d\u7aef\u4ee3\u7801\u76ee\u5f55\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 Dockerfile                                   # \u6784\u5efa\u5bb9\u5668\u955c\u50cf\u4f7f\u7528\u7684 dockerfile\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 pom                                          # \u62a5\u8868\u7edf\u8ba1\u6a21\u5757\u4f7f\u7528\u7684 pom \u6587\u4ef6  \n\u251c\u2500\u2500 project-management                               # \u9879\u76ee\u7ba1\u7406\u6a21\u5757\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 backend                                      # \u540e\u7aef\u4ee3\u7801\u76ee\u5f55\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 frontend                                     # \u524d\u7aef\u4ee3\u7801\u76ee\u5f55\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 Dockerfile                                   # \u6784\u5efa\u5bb9\u5668\u955c\u50cf\u4f7f\u7528\u7684 dockerfile\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 pom                                          # \u9879\u76ee\u7ba1\u7406\u6a21\u5757\u4f7f\u7528\u7684 pom \u6587\u4ef6 \n\u251c\u2500\u2500 system-setting                                   # \u7cfb\u7edf\u8bbe\u7f6e\u6a21\u5757\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 backend                                      # \u540e\u7aef\u4ee3\u7801\u76ee\u5f55\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 frontend                                     # \u524d\u7aef\u4ee3\u7801\u76ee\u5f55\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 Dockerfile                                   # \u6784\u5efa\u5bb9\u5668\u955c\u50cf\u4f7f\u7528\u7684 dockerfile\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 pom                                          # \u7cfb\u7edf\u8bbe\u7f6e\u6a21\u5757\u4f7f\u7528\u7684 pom \u6587\u4ef6\n\u251c\u2500\u2500 .gitignore\n\u251c\u2500\u2500 .gitmodules\n\u2514\u2500\u2500 pom.xml                                         # \u6574\u4f53 maven \u9879\u76ee\u4f7f\u7528\u7684 pom \u6587\u4ef6\n
    "},{"location":"dev_manual/#2","title":"2 \u914d\u7f6e\u5f00\u53d1\u73af\u5883","text":""},{"location":"dev_manual/#21","title":"2.1 \u62c9\u53d6\u4ee3\u7801","text":"

    \u9700\u8981\u62c9\u53d6 metersphere, ms-jmeter-core\u3001jmeter-plugins-webdriver\u4e09\u4e2a\u670d\u52a1\u4ee3\u7801\uff0c\u5e76\u5207\u6362\u5230\u540c\u4e00\u5206\u652f\u3002

    "},{"location":"dev_manual/#22","title":"2.2 \u540e\u7aef","text":"

    \u5728\u542f\u52a8 MeterSphere \u670d\u52a1\u4e4b\u524d\u8981\u5148\u542f\u52a8 Mysql\u3001Redis\u3001Kafka\u3001Minio \u7b49\u670d\u52a1\u3002 MeterSphere \u540e\u7aef\u4f7f\u7528\u4e86 Java \u8bed\u8a00\u7684 Spring Cloud \u6846\u67b6\uff0c\u5e76\u4f7f\u7528 Maven \u4f5c\u4e3a\u9879\u76ee\u7ba1\u7406\u5de5\u5177\u3002\u5f00\u53d1\u8005\u9700\u8981\u5148\u5728\u5f00\u53d1\u73af\u5883\u4e2d\u5b89\u88c5 JDK 1.11 \u53ca Maven\u3002

    • \u521d\u59cb\u5316\u914d\u7f6e \uff081\uff09\u6570\u636e\u5e93\u521d\u59cb\u5316 MeterSphere \u4f7f\u7528 MySQL \u6570\u636e\u5e93 v8 \u7248\u672c\u3002\u540c\u65f6 MeterSphere \u5bf9\u6570\u636e\u5e93\u90e8\u5206\u914d\u7f6e\u9879\u6709\u8981\u6c42\uff0c\u8bf7\u53c2\u8003\u4e0b\u9644\u7684\u6570\u636e\u5e93\u914d\u7f6e\uff0c\u4fee\u6539\u5f00\u53d1\u73af\u5883\u4e2d\u7684\u6570\u636e\u5e93\u914d\u7f6e\u6587\u4ef6\u3002
    [mysqld]\ndatadir=/var/lib/mysql\n\ndefault-storage-engine=INNODB\ncharacter_set_server=utf8mb4\nlower_case_table_names=1\nperformance_schema=off\ntable_open_cache=128\ntransaction_isolation=READ-COMMITTED\nmax_connections=1000\nmax_connect_errors=6000\nmax_allowed_packet=64M\ninnodb_file_per_table=1\ninnodb_buffer_pool_size=512M\ninnodb_flush_method=O_DIRECT\ninnodb_lock_wait_timeout=1800\n\nserver-id=1\nlog-bin=mysql-bin\nexpire_logs_days = 2\nbinlog_format=mixed\n\ncharacter-set-client-handshake = FALSE\ncharacter-set-server=utf8mb4\ncollation-server=utf8mb4_general_ci\ninit_connect='SET default_collation_for_utf8mb4=utf8mb4_general_ci'\n\nsql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION\n\nskip-name-resolve\n\n[mysql]\ndefault-character-set=utf8mb4\n\n[mysql.server]\ndefault-character-set=utf8mb4\n

    \u8bf7\u53c2\u8003\u6587\u6863\u4e2d\u7684\u5efa\u5e93\u8bed\u53e5\u521b\u5efa MeterSphere \u4f7f\u7528\u7684\u6570\u636e\u5e93\uff0cMeterSphere \u670d\u52a1\u542f\u52a8\u65f6\u4f1a\u81ea\u52a8\u5728\u914d\u7f6e\u7684\u5e93\u4e2d\u521b\u5efa\u6240\u9700\u7684\u8868\u7ed3\u6784\u53ca\u521d\u59cb\u5316\u6570\u636e\u3002

    CREATE DATABASE metersphere_dev /*!40100 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci *//*!80016 DEFAULT ENCRYPTION='N'*/;\n

    \uff082\uff09MeterSphere \u914d\u7f6e\u6587\u4ef6 MeterSphere \u4f1a\u9ed8\u8ba4\u52a0\u8f7d\u8be5\u8def\u5f84\u4e0b\u7684\u914d\u7f6e\u6587\u4ef6 /opt/metersphere/conf/metersphere.properties\uff0c\u8bf7\u53c2\u8003\u4e0b\u5217\u914d\u7f6e\u521b\u5efa\u5bf9\u5e94\u76ee\u5f55\u53ca\u914d\u7f6e\u6587\u4ef6\u3002

    # eureka \u914d\u7f6e\neureka.client.service-url.defaultZone=http://localhost:8761/eureka/\n\n\n# \u6570\u636e\u5e93\u914d\u7f6e\nspring.datasource.url=jdbc:mysql://localhost:3306/metersphere_dev?autoReconnect=false&useUnicode=true&characterEncoding=UTF-8&characterSetResults=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false\nspring.datasource.username=root\nspring.datasource.password=Calong@2015\n\n\n# kafka \u914d\u7f6e\uff0cnode-controller \u4ee5\u53ca data-streaming \u670d\u52a1\u9700\u8981\u4f7f\u7528 kafka \u8fdb\u884c\u6d4b\u8bd5\u7ed3\u679c\u7684\u6536\u96c6\u548c\u5904\u7406\nkafka.partitions=1\nkafka.replicas=1\nkafka.topic=JMETER_METRICS\nkafka.test.topic=JMETER_TESTS\nkafka.bootstrap-servers=127.0.0.1:9092\nkafka.log.topic=JMETER_LOGS\nkafka.report.topic=JMETER_REPORT\n\n# node-controller \u6240\u4f7f\u7528\u7684 jmeter \u955c\u50cf\u7248\u672c\njmeter.image=registry.cn-qingdao.aliyuncs.com/metersphere/jmeter-master:5.5-ms2-jdk11\n\n# TCP Mock \u7aef\u53e3\u8303\u56f4\ntcp.mock.port=10000-10010\n\n# Redis \u914d\u7f6e\nspring.redis.host=localhost\nspring.session.store-type=redis\nspring.redis.port=6379\nspring.redis.password=Password123@redis\n\n\n# \u542f\u52a8\u6a21\u5f0f\uff0clcoal \u8868\u793a\u4ee5\u672c\u5730\u5f00\u53d1\u6a21\u5f0f\u542f\u52a8\nrun.mode=local\n\n# minio \u914d\u7f6e\nminio.endpoint=http://localhost:9000\nminio.accessKey=minioadmin\nminio.secretKey=minioadmin\n\n## CAS\n#cas.client.name=MS_SERVER\n## CAS SERVER URL\n#cas.server.url=http://xxx/cas\n## METERSPHERE SERVER URL\n#cas.client.url=http://IP:8081                          \n

    \uff083\uff09\u9879\u76ee\u6253\u5305 \u542f\u52a8 MeterSphere \u9700\u8981 jmeter \u4f9d\u8d56\uff0c\u56e0\u6b64\u5728\u542f\u52a8\u4e4b\u524d\u9700\u8981\u5c06 ms-jmeter-core \u548c jmeter-plugins-webdriver \u6253\u5305

    mvn clean install \n

    \u5728\u9879\u76ee\u6839\u76ee\u5f55\u4e0b\u6267\u884c\u4ee5\u4e0b\u547d\u4ee4

    1. \u4f9d\u8d56\u6253\u5305\n# parent pom \u5b89\u88c5\u5230\u672c\u5730\u4ed3\u5e93, sdk \u4e5f\u8fdb\u884c\u5b89\u88c5\n./mvnw install -N\n./mvnw clean install -pl framework,framework/sdk-parent,framework/sdk-parent/domain,framework/sdk-parent/sdk,framework/sdk-parent/xpack-interface,framework/sdk-parent/jmeter\n\n#  \u5982\u679c\u662f\u4f01\u4e1a\u7248\u672c \u9700\u8981\u52a0\u4e0a  framework/sdk-parent/xpack-interface\n\n2. \u6574\u4f53\u6253\u5305\n./mvnw clean package\n

    • \u542f\u52a8\u987a\u5e8f \u5148\u542f\u52a8 eureka \u670d\u52a1\uff0c\u518d\u542f\u52a8 system-setting\uff0c\u5230\u8fd9\u4e00\u6b65\u53ef\u4ee5\u542f\u52a8\u6210\u529f\uff0c\u53ef\u4ee5\u8bbf\u95ee\u9875\u9762\u4e86\u3002

    \u5982\u679c\u8981\u8fdb\u884c\u591a\u6a21\u5757\u8054\u8c03\u7684\u8bdd\u9700\u8981\u542f\u52a8 gateway \u548c\u5176\u4ed6\u670d\u52a1\uff0c\u53ef\u4ee5\u901a\u8fc7 eureka \u67e5\u770b\u670d\u52a1\u4fe1\u606f\uff0c\u6ce8\u518c\u6210\u529f\uff0c\u5c31\u53ef\u4ee5\u591a\u6a21\u5757\u8054\u8c03\u4e86\u3002

    • \u542f\u52a8 \u8fd0\u884c\u67d0\u4e00\u6a21\u5757\uff0c\u6bd4\u5982 \u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757\uff08test-track\uff09,\u9009\u62e9 test-track \u7684 Spring Boot \u542f\u52a8\u9879\uff0c\u76f4\u63a5\u542f\u52a8\u5373\u53ef\u3002
    "},{"location":"dev_manual/#23","title":"2.3 \u524d\u7aef","text":"

    MeterSphere \u524d\u7aef\u4f7f\u7528\u4e86 Vue.js \u4f5c\u4e3a\u524d\u7aef\u6846\u67b6\uff0cElementUI \u4f5c\u4e3a UI \u6846\u67b6\uff0c\u5e76\u4f7f\u7528 npm \u4f5c\u4e3a\u5305\u7ba1\u7406\u5de5\u5177\u3002\u5f00\u53d1\u8005\u8bf7\u5148\u4e0b\u8f7d Node.js \u4f5c\u4e3a\u8fd0\u884c\u73af\u5883\uff0cIDEA \u7528\u6237\u5efa\u8bae\u5b89\u88c5 Vue.js \u63d2\u4ef6\uff0c\u4fbf\u4e8e\u5f00\u53d1\u3002

    • \u521d\u59cb\u5316\u914d\u7f6e \u8fdb\u5165 metersphere-server/test-track/frontend/ \u76ee\u5f55\uff0c\u6267\u884c\u547d\u4ee4npm install\u5b89\u88c5\u76f8\u5173\u524d\u7aef\u7ec4\u4ef6\u3002
    • \u8fd0\u884c\u524d\u7aef\u670d\u52a1 \u8fdb\u5165\u5230 metersphere-server/test-track/frontend/ \u76ee\u5f55\uff0c\u6267\u884c\u547d\u4ee4npm run serve\u542f\u52a8\u524d\u7aef\u670d\u52a1\u3002
    "},{"location":"enterprise/","title":"Enterprise","text":"
    • \u7533\u8bf7\u4f01\u4e1a\u7248\u8bd5\u7528

    \u6ce8: \u4f01\u4e1a\u7248\u652f\u6301\u79bb\u7ebf\u5b89\u88c5\uff0c\u7533\u8bf7\u901a\u8fc7\u540e\u4f1a\u63d0\u4f9b\u9ad8\u901f\u4e0b\u8f7d\u94fe\u63a5\u3002

    "},{"location":"system_arch/","title":"\u7cfb\u7edf\u67b6\u6784","text":""},{"location":"system_arch/#1","title":"1 \u6574\u4f53\u67b6\u6784","text":"

    \u7ec4\u4ef6\u8bf4\u660e

    • Chrome \u6d4f\u89c8\u5668\u5f55\u5236\u63d2\u4ef6: \u5f55\u5236 Web \u8bbf\u95ee\u8bf7\u6c42\u751f\u6210 JMeter \u811a\u672c\u5e76\u5bfc\u5165\u5230 MeterSphere \u4e2d\u7528\u4e8e\u63a5\u53e3\u6d4b\u8bd5\u53ca\u6027\u80fd\u6d4b\u8bd5\u3002
    • Jenkins \u63d2\u4ef6: \u5728 Jenkins \u4e2d\u5b89\u88c5\u8be5\u63d2\u4ef6\u540e\u53ef\u5c06 Jenkins \u4efb\u52a1\u4e2d\u6dfb\u52a0 MeterSphere \u6784\u5efa\u73af\u8282,\u7528\u6237\u5728\u8be5\u6784\u5efa\u73af\u8282\u4e2d\u914d\u7f6e MeterSphere \u5e73\u53f0\u7684\u8ba4\u8bc1\u4fe1\u606f\u540e,\u53ef\u9009\u62e9\u6307\u5b9a\u9879\u76ee\u4e0b\u7684\u63a5\u53e3/\u6027\u80fd\u6d4b\u8bd5\u8fdb\u884c\u89e6\u53d1\u6267\u884c\u3002
    • IDEA \u63d2\u4ef6: IDEA \u63d2\u4ef6,\u57fa\u4e8ejavadoc\u89e3\u6790,\u80fd\u591f\u81ea\u52a8\u8bc6\u522b\u7c7b,\u540c\u6b65\u63a5\u53e3\u5b9a\u4e49\u5230 MeterSphere\u3002
    • GateWay: API \u7f51\u5173\u9879\u76ee\u3002
    • Eureka: \u670d\u52a1\u6ce8\u518c\u4e2d\u5fc3\u3002
    • \u5de5\u4f5c\u53f0: MeterSphere \u9879\u76ee\u7684\u5de5\u4f5c\u53f0\u6a21\u5757\u3002
    • \u9879\u76ee\u8bbe\u7f6e: MeterSphere \u9879\u76ee\u7684\u9879\u76ee\u8bbe\u7f6e\u6a21\u5757\u3002
    • \u6d4b\u8bd5\u8ddf\u8e2a: MeterSphere \u9879\u76ee\u7684\u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757\u3002
    • \u63a5\u53e3\u6d4b\u8bd5: MeterSphere \u9879\u76ee\u7684\u63a5\u53e3\u6d4b\u8bd5\u6a21\u5757\u3002
    • UI \u6d4b\u8bd5: MeterSphere \u9879\u76ee\u7684UI \u6d4b\u8bd5\u6a21\u5757\u3002
    • \u6027\u80fd\u6d4b\u8bd5: MeterSphere \u9879\u76ee\u7684\u6027\u80fd\u6d4b\u8bd5\u6a21\u5757\u3002
    • \u7cfb\u7edf\u8bbe\u7f6e: MeterSphere \u9879\u76ee\u7684\u7cfb\u7edf\u8bbe\u7f6e\u6a21\u5757\u3002
    • \u62a5\u544a\u7edf\u8ba1: MeterSphere \u9879\u76ee\u7684\u62a5\u544a\u7edf\u8ba1\u6a21\u5757\u3002
    • Node Controller: \u4e3a\u63a5\u53e3\u6216\u8005\u6027\u80fd\u6d4b\u8bd5\u63d0\u4f9b\u72ec\u7acb\u8282\u70b9\u7c7b\u578b\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60\u3002
    • MySQL: MeterSphere \u9879\u76ee\u7684\u4e3b\u8981\u6570\u636e\u5747\u5b58\u50a8\u5728 MySQL\u3002
    • Redis: MeterSphere \u9879\u76ee\u767b\u5f55\u7528\u6237\u7684 Session \u548c\u4efb\u52a1\u961f\u5217\u4fe1\u606f\u5b58\u50a8\u5728 Redis\u3002
    • Minio: MeterSphere \u9879\u76ee\u7684\u5206\u5e03\u5f0f\u5bf9\u8c61\u5b58\u50a8\u6a21\u5757\u3002
    • Kafka: \u63a5\u6536 JMeter \u4ea7\u751f\u7684\u63a5\u53e3\u6d4b\u8bd5\u6216\u8005\u6027\u80fd\u6d4b\u8bd5\u7684\u7ed3\u679c\u6570\u636e\u3002
    • Prometheus: \u6536\u96c6\u538b\u529b\u673a\u53ca\u88ab\u6d4b\u7cfb\u7edf\u7684\u76d1\u63a7\u6570\u636e\u3002
    • Data Streaming: \u4ece Kafka \u4e2d\u83b7\u53d6\u63a5\u53e3\u6d4b\u8bd5\u6216\u8005\u6027\u80fd\u6d4b\u8bd5\u7ed3\u679c\u6570\u636e\u8fdb\u884c\u5904\u7406\u540e\u5b58\u5165 MySQL \u6570\u636e\u5e93\u3002
    • Docker Engine: \u4e3a Node Controller \u63d0\u4f9b JMeter \u5bb9\u5668\u8fd0\u884c\u73af\u5883\u3002
    • Selenium Grid: \u4e3a UI\u81ea\u52a8\u5316\u6d4b\u8bd5\u63d0\u4f9b\u8fd0\u884c\u73af\u5883,\u652f\u6301\u5206\u5e03\u5f0f\u62d3\u5c55\u3002

    \u5404\u4e2a\u7ec4\u4ef6\u95f4\u7684\u5173\u7cfb\u53ef\u53c2\u8003\u4e0b\u56fe\uff1a

    "},{"location":"system_arch/#2","title":"2 \u7ba1\u7406\u6a21\u578b","text":"

    MeterSphere \u63d0\u4f9b\u4e86\u591a\u79df\u6237\u3001\u591a\u89d2\u8272\u7684\u7ba1\u7406\u6a21\u578b, \u7528\u6237\u53ef\u6839\u636e\u6240\u5728\u56e2\u961f\u7684\u5b9e\u9645\u60c5\u51b5\u8fdb\u884c\u7075\u6d3b\u7684\u79df\u6237\u4f53\u7cfb\u6620\u5c04\u3002

    • \u7cfb\u7edf: \u6bcf\u4e2a\u72ec\u7acb\u90e8\u7f72\u7684 MeterSphere \u5373\u79f0\u4e3a\u4e00\u5957\u7cfb\u7edf\u3002
    • \u7cfb\u7edf\u7ea7\u89d2\u8272: \u89d2\u8272\u7684\u6743\u9650\u8303\u56f4\u4e3a\u6574\u4e2a\u7cfb\u7edf, \u5e38\u89c1\u7684\u89d2\u8272\u5982\u7cfb\u7edf\u7ba1\u7406\u5458, \u53ef\u7ba1\u7406\u6574\u4e2a\u7cfb\u7edf\u5185\u7684\u79df\u6237\u3001\u7528\u6237\u53ca\u6d4b\u8bd5\u8d44\u6e90, \u540c\u65f6\u53ef\u53d8\u66f4\u4fee\u6539\u7cfb\u7edf\u7ea7\u914d\u7f6e\u53c2\u6570\u3002
    • \u5de5\u4f5c\u7a7a\u95f4: MeterSphere \u4e2d\u7684\u4e00\u7ea7\u79df\u6237, \u53ef\u6620\u5c04\u4e3a\u4e0d\u540c\u7684\u90e8\u95e8\u6216\u8005\u4ea7\u54c1\u7ebf\u3002
    • \u5de5\u4f5c\u7a7a\u95f4\u7ea7\u89d2\u8272: \u89d2\u8272\u7684\u6743\u9650\u8303\u56f4\u9650\u5b9a\u5728\u67d0\u4e2a\u5de5\u4f5c\u7a7a\u95f4\u5f53\u4e2d, \u5e38\u89c1\u7684\u89d2\u8272\u5982\u5de5\u4f5c\u7a7a\u95f4\u7ba1\u7406\u5458\u53ca\u666e\u901a\u7528\u6237, \u53ef\u5728\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u521b\u5efa\u9879\u76ee\u3001\u53d1\u8d77\u6d4b\u8bd5\u3001\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u7b49\u3002
    • \u9879\u76ee: \u4ee5\u9879\u76ee\u7eac\u5ea6\u7ba1\u7406\u5404\u79cd\u7c7b\u578b\u6d4b\u8bd5\u6570\u636e\uff0c\u5404\u4e2a\u9879\u76ee\u95f4\u6570\u636e\u9694\u79bb\u3002
    • \u9879\u76ee\u7ea7\u89d2\u8272: \u89d2\u8272\u7684\u6743\u9650\u8303\u56f4\u9650\u5b9a\u5728\u67d0\u4e2a\u9879\u76ee\u5f53\u4e2d, \u5e38\u89c1\u7684\u89d2\u8272\u5982\u9879\u76ee\u7ba1\u7406\u5458\u3001\u9879\u76ee\u6210\u5458\u3001\u53ea\u8bfb\u7528\u6237\u7b49\uff0c\u53ef\u5728\u9879\u76ee\u4e2d\u521b\u5efa\u3001\u4fee\u6539\u3001\u6267\u884c\u6d4b\u8bd5\u8ba1\u5212\u3001\u529f\u80fd\u6d4b\u8bd5\u7528\u4f8b\u3001\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u3001\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u3001\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u7b49\u3002
    • \u81ea\u5b9a\u4e49\u89d2\u8272: \u53ef\u521b\u5efa\u4e0d\u540c\u6240\u5c5e\u7c7b\u578b\u7684\u81ea\u5b9a\u4e49\u89d2\u8272\uff0c\u6ee1\u8db3\u66f4\u591a\u6837\u5316\u7684\u56e2\u961f\u7ba1\u7406\u53ca\u5728\u7ebf\u534f\u4f5c\u3002

    "},{"location":"system_arch/#3","title":"3 \u6280\u672f\u6808","text":"
    • \u540e\u7aef: Spring Cloud
    • \u524d\u7aef: Vue.js
    • \u4e2d\u95f4\u4ef6: MySQL, Kafka, Redis, Minio, Prometheus
    • \u57fa\u7840\u8bbe\u65bd: Docker, Kubernetes
    • \u6d4b\u8bd5\u5f15\u64ce: JMeter
    "},{"location":"about/changelog/","title":"\u66f4\u65b0\u65e5\u5fd7","text":""},{"location":"about/changelog/#_2","title":"\u7248\u672c\u8bf4\u660e","text":"

    MeterSphere \u7248\u672c\u53f7\u547d\u540d\u89c4\u5219\u4e3a\uff1a v \u5927\u7248\u672c\u53f7.\u529f\u80fd\u7248\u672c\u53f7.\u4fee\u590d\u7248\u672c\u53f7\uff0cMeterSphere \u6309\u6708\u8fed\u4ee3\u53d1\u5e03\u529f\u80fd\u7248\u672c\uff0c\u5e76\u6309\u5e74\u53d1\u5e03 LTS\uff08Long Term Support\uff09\u7248\u672c\uff0c\u76ee\u524d\u5df2\u7ecf\u53d1\u5e03\u4e86\u4e09\u4e2a LTS \u7248\u672c\uff1a

    • v1.10-lts\uff1a\u53d1\u5e03\u65f6\u95f4\u4e3a 2021 \u5e74 5 \u6708 27 \u65e5\uff0c\u76ee\u524d\u5df2\u7ecf\u505c\u6b62\u7ef4\u62a4\u3002
    • v1.20-lts\uff1a\u53d1\u5e03\u65f6\u95f4\u4e3a 2022 \u5e74 4 \u6708 27 \u65e5\uff0c\u76ee\u524d\u4ec5\u8fdb\u884c\u5fc5\u8981\u7684\u5b89\u5168\u7c7b Bug \u4fee\u590d\u548c\u4e25\u91cd Bug \u4fee\u590d\u3002
    • v2.10-lts\uff1a\u53d1\u5e03\u65f6\u95f4\u4e3a 2023 \u5e74 5 \u6708 25 \u65e5\uff0c\u6bcf\u4e24\u5468\u53d1\u5e03\u5c0f\u7248\u672c\uff0c\u6301\u7eed\u8fdb\u884c Bug \u4fee\u590d\u548c\u90e8\u5206\u529f\u80fd\u7684\u6709\u9650\u4f18\u5316\u3002
    "},{"location":"about/changelog/#v2108-lts","title":"v2.10.8-lts","text":"

    2023\u5e7410\u670819\u65e5

    \ud83d\udca5\ud83d\udca5\u00a0\u91cd\u8981\u63d0\u9192\u00a0\ud83d\udca5\ud83d\udca5 2.10 LTS \u5728\u67b6\u6784\u4e0a\u548c 1.20 LTS \u6709\u5f88\u5927\u53d8\u5316\uff0c\u8bf7\u52a1\u5fc5\u5347\u7ea7\u524d\u8fdb\u884c\u5907\u4efd\uff0c\u5e76\u8be6\u7ec6\u67e5\u9605\u6b64\u6587\u6863\uff1a1.20 lts\u81f32.10 lts\u5347\u7ea7\u6307\u5357

    \u65b0\u589e\u529f\u80fd

    • feat(\u6027\u80fd\u6d4b\u8bd5): \u6027\u80fd\u6d4b\u8bd5\u652f\u6301\u7ed3\u679c\u62bd\u6837\u5206\u6790\uff08X-Pack\u589e\u5f3a\u5305\uff09
    • feat(\u6d4b\u8bd5\u8ba1\u5212): \u6d4b\u8bd5\u6267\u884c\u673a\u65b0\u589e\u8fd0\u884c\u72b6\u6001\u548cCPU\u76d1\u63a7

    \u529f\u80fd\u4f18\u5316

    • refactor(\u6027\u80fd\u6d4b\u8bd5): \u8c03\u6574\u6027\u80fd\u6d4b\u8bd5\u8d44\u6e90\u6587\u4ef6\u4e0a\u9650\u6570\u4e3a50\u4e2a\u6587\u4ef6
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): JSONPath\u6b63\u5219\u63d0\u53d6\u652f\u6301\u81ea\u5b9a\u4e49\u5339\u914d\u6a21\u7248
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u8be6\u60c5\u652f\u6301\u901a\u8fc7\u7528\u4f8bID\u5feb\u6377\u8df3\u8f6c

    \u95ee\u9898\u4fee\u590d

    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590djsonSchema\u6570\u636e\u8f6cjson\u987a\u5e8f\u53d1\u751f\u6539\u53d8\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u9996\u9875\u5728\u5076\u53d1\u60c5\u51b5\u4e0b\u63a5\u53e3\u8986\u76d6\u7387\u663e\u793a\u4e3a0\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u7f16\u8f91\u73af\u5883\u4fe1\u606f\u672a\u66f4\u65b0\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u573a\u666f\u5217\u8868\u4e0d\u663e\u793a\u521b\u5efa\u6027\u80fd\u6d4b\u8bd5\u6309\u94ae\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u6267\u884c\u672c\u8eab\u65e0\u73af\u5883\u4e14\u5173\u8054\u65f6\u4e5f\u4e0d\u6307\u5b9a\u73af\u5883\u7684\u573a\u666f\u4f1a\u62a5\u9519\u7684\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u5bfc\u51fahtml\u65f6\u7684\u90e8\u5206\u9519\u8bef
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7528\u4f8b\u6b65\u9aa4\u4e3a\u6587\u672c\u63cf\u8ff0\uff0c\u5bfc\u51faxmind\u4e3a\u6b65\u9aa4\u63cf\u8ff0\u7684\u5185\u5bb9
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7528\u4f8b\u5bcc\u6587\u672c\u7f16\u8f91\u5668\u652f\u6301\u4e00\u4e9b\u7279\u6b8a\u6807\u7b7e
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u5173\u8054\u529f\u80fd\u7528\u4f8b\u6dfb\u52a0\u8bc4\u5ba1\u7ed3\u679c\u5217
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u5bcc\u6587\u672c\u6846\u5220\u9664\u56fe\u7247\u540e\uff0c\u670d\u52a1\u5668\u4e0a\u7684\u56fe\u7247\u672a\u5220\u9664
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6279\u91cf\u548c\u7f16\u8f91\u5355\u4e2a\u7528\u4f8b\u7684\u6807\u7b7e\u65f6\uff0c\u7edf\u4e00\u957f\u5ea6\u9650\u5236
    • fix(\u7f3a\u9677\u7ba1\u7406): \u7f3a\u9677\u5173\u8054\u7528\u4f8b\u5217\u8868\u5c55\u793a\u6709\u8bef
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u73af\u5883\u901a\u7528\u914d\u7f6e\u7b5b\u9009\u540e\u4fdd\u5b58\u6709\u8bef
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u9879\u76ee\u6d88\u606f\u8bbe\u7f6e\uff0c\u4efb\u52a1\u901a\u77e5\u5207\u6362\u4e8b\u4ef6\u7c7b\u578b\u6a21\u677f\u672a\u540c\u6b65\u66f4\u65b0
    "},{"location":"about/changelog/#v2107-lts","title":"v2.10.7-lts","text":"

    2023\u5e749\u670826\u65e5

    \ud83d\udca5\ud83d\udca5\u00a0\u91cd\u8981\u63d0\u9192\u00a0\ud83d\udca5\ud83d\udca5 2.10 LTS \u5728\u67b6\u6784\u4e0a\u548c 1.20 LTS \u6709\u5f88\u5927\u53d8\u5316\uff0c\u8bf7\u52a1\u5fc5\u5347\u7ea7\u524d\u8fdb\u884c\u5907\u4efd\uff0c\u5e76\u8be6\u7ec6\u67e5\u9605\u6b64\u6587\u6863\uff1a1.20 lts\u81f32.10 lts\u5347\u7ea7\u6307\u5357

    \u65b0\u589e\u529f\u80fd

    • feat(UI\u6d4b\u8bd5): UI\u6d4b\u8bd5\u65b0\u589e\u6d88\u606f\u901a\u77e5\u914d\u7f6e
    • feat(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u8868\u683c\u901a\u8fc7\u7387\u4fdd\u7559\u4e24\u4f4d\u5c0f\u6570

    \u529f\u80fd\u4f18\u5316

    • perf(\u63a5\u53e3\u6d4b\u8bd5): \u4f18\u5316\u63a5\u53e3\u6d4b\u8bd5\u9996\u9875\u7edf\u8ba1\u6548\u7387
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u6587\u6863\u652f\u6301\u5bfc\u51fahtml
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u63a5\u53e3\u7528\u4f8b\u8bf7\u6c42\u4f53\u6dfb\u52a0\u89d2\u6807\u7edf\u8ba1
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u9650\u5236\u6d4b\u8bd5\u8ba1\u5212\u5b9a\u65f6\u4efb\u52a1\u5355\u4e00\u6267\u884c
    • refactor(\u9879\u76ee\u7ba1\u7406): \u5168\u5c40XPath\u65ad\u8a00\u652f\u6301html\u5185\u5bb9\u65ad\u8a00

    \u95ee\u9898\u4fee\u590d

    • fix(UI\u6d4b\u8bd5): \u4fee\u590d\u9879\u76ee\u8bbe\u7f6e\u6d88\u606f\u7ba1\u7406/\u63a5\u53e3\u6d4b\u8bd5/UI\u6d4b\u8bd5\u7f16\u8f91\u6d88\u606f\u901a\u77e5\u540e\u53d6\u6d88\uff0c\u4ecd\u663e\u793a\u4fee\u6539\u5185\u5bb9\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): CSV\u9694\u79bb\u52a0\u8f7d\u7684\u540c\u65f6\u517c\u5bb9CSVRead\u51fd\u6570\u53d6\u503c
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u7f16\u8f91\u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u540d\u79f0\uff0c\u65e0\u6cd5\u9f20\u6807\u9009\u62e9\u6587\u5b57\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dk8s\u8d44\u6e90\u6c60\u5e76\u53d1\u6570\u8bbe\u7f6e\u4e0d\u751f\u6548\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dswagger\u7279\u6b8a\u6570\u636e\u5bfc\u5165\u5931\u8d25\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dtcp mock\u8bf7\u6c42\u5185\u5bb9\u8d85\u8fc71024\u4e2a\u5b57\u8282\u5931\u8d25\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u751f\u6210\u6d4b\u8bd5\u6570\u636e\u65f6\uff0c\u6700\u5927\u6700\u5c0f\u503c\u9650\u5236\u6ca1\u6709\u6548\u679c\u7684\u7f3a\u9677
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u62a5\u544a-\u63a5\u53e3\u7528\u4f8b-\u6267\u884c\u7ed3\u679cpending\u72b6\u6001\u540e\u591a\u663e\u793a\u4e86.
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u67e5\u770b\u7528\u4f8b\u7f3a\u9677\u5173\u8054TAB\u6743\u9650\u6821\u9a8c\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u62a5\u544a\u7edf\u8ba1\u548c\u8ba1\u5212\u5217\u8868-\u64cd\u4f5c\u67e5\u770b\u62a5\u544a-\u8fd0\u884c\u73af\u5883\u660e\u7ec6\u524d\u7a7a\u767d\u592a\u591a
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u5173\u8054\u7528\u4f8b\u5f39\u7a97\u5173\u952e\u5b57\u641c\u7d22\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u6267\u884c\u72b6\u6001\u6309\u94ae\u6837\u5f0f\u4e0d\u4e00\u81f4
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u8d85\u7ea7\u7ba1\u7406\u5458\u7528\u6237\u7ec4\u79fb\u9664\u516c\u5171\u7528\u4f8b\u5e93\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u5173\u8054\u7528\u4f8b\u5217\u8868\u7b5b\u9009\u65f6\u91cd\u7f6e\u5f53\u524d\u9875\u7801
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u5173\u8054\u7528\u4f8b\u5217\u8868\u7b5b\u9009\u540e\u672a\u91cd\u7f6e\u5f53\u524d\u9875\u7801
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7f3a\u9677\u7ba1\u7406\u5173\u8054\u529f\u80fd\u7528\u4f8b\u5f39\u7a97\u672a\u8fc7\u6ee4\u6389\u5df2\u5173\u8054\u7684\u7528\u4f8b
    • fix(\u9879\u76ee\u8bbe\u7f6e): UI\u4efb\u52a1\u901a\u77e5\u521b\u5efa\u4e0d\u663e\u793a\u9ed8\u8ba4\u4eba&\u4fdd\u5b58\u4e00\u76f4\u5b58\u5728\u521b\u5efa\u4eba\u95ee\u9898
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u6d88\u606f\u901a\u77e5UI\u6d88\u606f\u6807\u9898\u4f18\u5316
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u9879\u76ee\u5217\u8868\u5206\u9875\u67e5\u8be2\u53c2\u6570\u8bbe\u7f6e\u6709\u8bef
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u6027\u80fd\u6d4b\u8bd5\u67e5\u627e\u9644\u4ef6\u4e0d\u518d\u9650\u5236\u6587\u4ef6\u683c\u5f0f
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590d\u529f\u80fd\u7528\u4f8b\u5bfc\u51fa\u7cfb\u7edf\u5b57\u6bb5\u6ca1\u6709\u56fd\u9645\u5316\u95ee\u9898
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u5207\u6362\u65b0\u7684\u5de5\u4f5c\u7a7a\u95f4\u670d\u52a1\u96c6\u6210\u914d\u7f6e\u4fe1\u606f\u5c55\u793a\u6709\u8bef
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590dCAS\u767b\u5f55\u540e\u64cd\u4f5c\u65e5\u5fd7\u6ca1\u6709\u663e\u793a\u7528\u6237\u540d\u7684\u95ee\u9898
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590d\u67e5\u8be2\u5de5\u4f5c\u7a7a\u95f4-\u9879\u76ee\u5217\u8868\u65f6\u6ca1\u6709\u68c0\u67e5\u5de5\u4f5c\u7a7a\u95f4\u7684\u95ee\u9898
    "},{"location":"about/changelog/#v2106-lts","title":"v2.10.6-lts","text":"

    2023\u5e748\u670822\u65e5

    \ud83d\udca5\ud83d\udca5\u00a0\u91cd\u8981\u63d0\u9192\u00a0\ud83d\udca5\ud83d\udca5 2.10 LTS \u5728\u67b6\u6784\u4e0a\u548c 1.20 LTS \u6709\u5f88\u5927\u53d8\u5316\uff0c\u8bf7\u52a1\u5fc5\u5347\u7ea7\u524d\u8fdb\u884c\u5907\u4efd\uff0c\u5e76\u8be6\u7ec6\u67e5\u9605\u6b64\u6587\u6863\uff1a1.20 lts\u81f32.10 lts\u5347\u7ea7\u6307\u5357

    \u529f\u80fd\u4f18\u5316

    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u6807\u7b7e\u91cd\u6784
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u652f\u6301\u8de8\u9879\u76ee\u573a\u666f\u6267\u884c\u65f6\u53ef\u4ee5\u4e0d\u9009\u73af\u5883\uff0c\u9ed8\u8ba4\u53d6\u5f53\u524d\u9879\u76ee\u73af\u5883
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u652f\u6301\u5b9a\u65f6\u4efb\u52a1\u6267\u884c\u53d6\u9ed8\u8ba4\u73af\u5883
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a)): \u6d4b\u8bd5\u8ba1\u5212\u4e0d\u518d\u5f3a\u5236\u5173\u8054\u7528\u4f8b\u65f6\u9009\u62e9\u73af\u5883
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u5e73\u53f0\u63d2\u4ef6\u6784\u9020\u5668\u6dfb\u52a0\u4e2a\u4eba\u8d26\u53f7\u4fe1\u606f\u76f8\u5173\u53c2\u6570
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u7528\u4f8b\u8bc4\u5ba1\u5173\u8054\u529f\u80fd\u7528\u4f8b\u9875\u9762\uff0c\u67e5\u8be2\u6761\u4ef6\u63d0\u793a\u4f18\u5316
    • refactor(\u9879\u76ee\u8bbe\u7f6e): \u7ec6\u5316\u9879\u76ee\u5185\u67e5\u770b\u7528\u6237\u7ec4\u63a5\u53e3\u6743\u9650\u7684\u9897\u7c92\u5ea6
    • style(\u6027\u80fd\u6d4b\u8bd5): \u6027\u80fd\u6d4b\u8bd5\u62a5\u544a\u52a0\u8f7d\u6d4b\u8bd5\u914d\u7f6e\u65f6\u589e\u52a0loading
    • style(\u6027\u80fd\u6d4b\u8bd5): \u4f18\u5316\u6027\u80fd\u6d4b\u8bd5\u62a5\u544a\u4e2d\u73af\u5883\u7684\u5c55\u793a\u6548\u679c
    • perf(\u6d4b\u8bd5\u8ddf\u8e2a): \u4f18\u5316\u6d4b\u8bd5\u8ba1\u5212\u63a5\u53e3\u7528\u4f8b\u5207\u6362\u6a21\u5757\u6811\u7684\u54cd\u5e94\u901f\u5ea6
    • refactor: \u7cfb\u7edf\u914d\u7f6e\u652f\u6301\u4e0a\u4f20\u81ea\u5b9a\u4e49css

    \u95ee\u9898\u4fee\u590d

    • fix(\u5de5\u4f5c\u53f0): \u7528\u4f8b\u63cf\u8ff0\u9884\u89c8loading\u5173\u95ed
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dAPI\u591a\u6b21\u4fdd\u5b58\u6570\u636e\u91cd\u590d\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dAPI\u5217\u8868\u6279\u91cf\u590d\u5236\u6570\u636e\u4f1a\u53d1\u51fa\u591a\u4e2a\u8bf7\u6c42\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u5f15\u7528\u7684CASE\u6dfb\u52a0\u65ad\u8a00\u65e0\u6cd5\u751f\u6548\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u573a\u666f\u6b65\u9aa4\u63a5\u53e3\u5bfc\u5165\u53ca\u573a\u666f\u5bfc\u5165\u5f39\u7a97\u62d6\u62fd\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u5feb\u6377\u8c03\u8bd5\u53e6\u5b58\u4e3a\u7528\u4f8b\uff0c\u663e\u793a\u7684\u8fd8\u662f\u4e0a\u4e00\u6b21\u7528\u4f8b\u540d\u79f0\u7684\u7f3a\u9677
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6a21\u5757\u6811\u9876\u90e8\u7f3a\u5931\u641c\u7d22\u6846\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7f3a\u9677\u5bfc\u5165\u7279\u6b8a\u5b57\u7b26\u62a5\u9519\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u590d\u5236\u529f\u80fd\u7528\u4f8b\u8d23\u4efb\u4eba\u53d8\u66f4\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u5bcc\u6587\u672c\u6846\u82f1\u6587\u5f15\u53f7\u9884\u89c8\u65f6\u53d8\u6210\u4e2d\u6587\u5f15\u53f7
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7528\u4f8b\u7f16\u8f91\u9875\uff0c\u70b9\u51fb\u7248\u672c\u7f6e\u65b0\uff0c\u4e00\u76f4\u5904\u4e8e\u5237\u65b0\u72b6\u6001
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u8111\u56fe\u5c06\u7528\u4f8b\u62d6\u5165\u672a\u52a0\u8f7d\u7528\u4f8b\u7684\u6a21\u5757\uff0c\u4f1a\u4ea7\u751f\u6570\u636e\u4e22\u5931
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7528\u4f8b\u5bfc\u51fa\u652f\u6301\u5355\u5143\u683c\u5185\u5bb9\u6362\u884c
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u81ea\u5b9a\u4e49\u5b57\u6bb5\u4e0b\u62c9\u9009\u9879key\u957f\u5ea6\u9650\u5236\u8fc7\u77ed
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u81ea\u5b9a\u4e49\u76d1\u63a7\u67e5\u8be2\u65f6\uff0c\u8f93\u5165promQL\u4e2d\u5305\u62ec\u7279\u6b8a\u5b57\u7b26\u4e0d\u80fd\u6b63\u5e38\u4f7f\u7528\u7684\u95ee\u9898
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u591a\u8282\u70b9\u914d\u7f6e\u81ea\u5b9a\u4e49\u5360\u6bd4\u65f6\u6d6e\u70b9\u6570\u76f8\u52a0\u7cbe\u5ea6\u95ee\u9898\u4fee\u6539
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u8d44\u6e90\u6c60\u914d\u7f6e\u4fe1\u606f\u8fc7\u957f\u62a5\u9519\u95ee\u9898
    "},{"location":"about/changelog/#v2105-lts","title":"v2.10.5-lts","text":"

    2023\u5e748\u67081\u65e5

    \ud83d\udca5\ud83d\udca5\u00a0\u91cd\u8981\u63d0\u9192\u00a0\ud83d\udca5\ud83d\udca5 2.10 LTS \u5728\u67b6\u6784\u4e0a\u548c 1.20 LTS \u6709\u5f88\u5927\u53d8\u5316\uff0c\u8bf7\u52a1\u5fc5\u5347\u7ea7\u524d\u8fdb\u884c\u5907\u4efd\uff0c\u5e76\u8be6\u7ec6\u67e5\u9605\u6b64\u6587\u6863\uff1a1.20 lts\u81f32.10 lts\u5347\u7ea7\u6307\u5357

    \u529f\u80fd\u4f18\u5316

    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u4f18\u5316JSONPath\u65ad\u8a00\u5339\u914d\u673a\u5236\uff0c\u652f\u6301\u6b63\u5219\u5ffd\u7565\u6570\u5b57\u7cbe\u5ea6\u5339\u914d
    • refactor(\u6027\u80fd\u6d4b\u8bd5): \u5927\u5e45\u4f18\u5316\u6027\u80fd\u6d4b\u8bd5\u7684\u541e\u5410\u91cf\u548c\u7a33\u5b9a\u6027(\u4f01\u4e1a\u7248)
    • refactor(\u6027\u80fd\u6d4b\u8bd5): \u62a5\u544a\u5217\u8868\u9875\u51cf\u5c11\u6d4b\u8bd5\u5217\u663e\u793a
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u53d6\u6d88\u5de6\u4fa7\u6a21\u5757\u68118\u5c42\u9650\u5236
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u529f\u80fd\u7528\u4f8b\u5217\u8868\u548c\u8111\u56fe\u5207\u6362\u65f6\uff0c\u643a\u5e26\u7248\u672c\u7b5b\u9009\u6761\u4ef6
    • refactor(\u9879\u76ee\u8bbe\u7f6e): \u6dfb\u52a0\u9879\u76ee\u6210\u5458\u9009\u9879\u8fc7\u6ee4\u6389\u5df2\u7ecf\u6dfb\u52a0\u7684\u6210\u5458
    • refactor: \u8c03\u6574BufferMemory\u9ed8\u8ba4\u5927\u5c0f\u5e76\u652f\u6301\u81ea\u5b9a\u4e49\u914d\u7f6e

    \u95ee\u9898\u4fee\u590d

    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u5173\u8054\u7684case\u66f4\u65b0\u540e\u672a\u540c\u6b65\u66f4\u65b0\u7684\u95ee\u9898\uff08GitHub #25703\uff09
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u529f\u80fd\u7528\u4f8b\u4f7f\u7528\u7248\u672c\u7b5b\u9009\u6761\u4ef6\u540e\u5207\u6362\u81f3\u8111\u56fe\u67e5\u770b\u672a\u751f\u6548\u7684\u95ee\u9898\uff08GitHub #25848\uff09
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u201c\u63a8\u8350JSONPATH\u65ad\u8a00\u201d\u4e2d\u5f53\u54cd\u5e94\u5185\u5bb9\u4e3a\u6570\u5b57\u88ab\u5904\u7406\u6210\u5b57\u7b26\u4e32\u7684\u95ee\u9898\uff08GitHub #25109\uff09
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u901a\u8fc7\u201cJSON-SCHEMA\u201d\u67e5\u770b\u590d\u6742JSON\u8bf7\u6c42\u4f53\u5bfc\u81f4\u6d4f\u89c8\u5668\u5d29\u6e83\u7684\u95ee\u9898\uff08GitHub #25825\uff09
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dJmeter 5.4.1\u7248\u672c\u5bfc\u51fa\u5e26\u6709\u5faa\u73af\u63a7\u5236\u5668\u7684\u6587\u4ef6\u5bfc\u5165\u5230MeterSphere\u5e73\u53f0\u62a5\u9519\u7684\u95ee\u9898\uff08GitHub #25882\uff09
    • fix(UI\u6d4b\u8bd5): \u4fee\u590dUI\u5e76\u53d1\u6267\u884c\u7ebf\u7a0b\u6570\u4fee\u6539\u540e\u4e0d\u751f\u6548\u7684\u95ee\u9898\uff08GitHub #25755\uff09
    • fix(UI\u6d4b\u8bd5): \u4fee\u590dv2\u7248\u672c\u5bf9v1\u7248\u672cUI\u81ea\u52a8\u5316\u573a\u666f\u53d8\u91cf\u4e0d\u517c\u5bb9\u7684\u7684\u95ee\u9898\uff08GitHub #25607\uff09
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u6027\u80fd\u6d4b\u8bd5\u52a0\u8f7d\u5173\u8054jmx\u6587\u4ef6\u65f6\u4f1a\u91cd\u590d\u63d0\u793a\u7684\u95ee\u9898\uff08GitHub #25351\uff09
    "},{"location":"about/changelog/#v2104-lts","title":"v2.10.4-lts","text":"

    2023\u5e747\u670820\u65e5

    \ud83d\udca5\ud83d\udca5\u00a0\u91cd\u8981\u63d0\u9192\u00a0\ud83d\udca5\ud83d\udca5 2.10 LTS \u5728\u67b6\u6784\u4e0a\u548c 1.20 LTS \u6709\u5f88\u5927\u53d8\u5316\uff0c\u8bf7\u52a1\u5fc5\u5347\u7ea7\u524d\u8fdb\u884c\u5907\u4efd\uff0c\u5e76\u8be6\u7ec6\u67e5\u9605\u6b64\u6587\u6863\uff1a1.20 lts\u81f32.10 lts\u5347\u7ea7\u6307\u5357

    \u529f\u80fd\u4f18\u5316

    • refactor(\u63a5\u53e3\u6d4b\u8bd5): XPath\u65ad\u8a00\u652f\u6301html\u54cd\u5e94\u5185\u5bb9\u65ad\u8a00
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u4f18\u5316\u672c\u5730\u9644\u4ef6csv\u7684\u6e05\u7406\u903b\u8f91
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u62a5\u544a\u5bfc\u51fa\u573a\u666fcase\u5904\u7406size\u8c03\u6574
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u5173\u8054\u7528\u4f8b\u786e\u8ba4\u5f39\u7a97\u4f18\u5316
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u6267\u884c\u65b0\u589e\"\u4fdd\u5b58\u4e0b\u4e00\u6761\"\u6309\u94ae\u64cd\u4f5c
    • refactor: Swagger\u53ef\u4ee5\u914d\u7f6e\u662f\u5426\u5f00\u542f

    \u95ee\u9898\u4fee\u590d

    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dSQL\u534f\u8bae\u5bfc\u5165\u8986\u76d6\u8fd0\u884c\u73af\u5883\u53d8\u66f4\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u53d8\u66f4\u8bb0\u5f55\u76f8\u5173\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dChrome\u63d2\u4ef6\u5f55\u5236\u811a\u672c\u5bfc\u5165\u540e\u6b65\u9aa4\u987a\u5e8f\u9519\u4e71\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dTCP\u63a5\u53e3\u88ab\u5220\u9664\u540e\uff0c\u4ecd\u7136\u53ef\u4ee5\u8c03\u7528\u8be5\u63a5\u53e3Mock\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u5728\u4f7f\u7528\u5e73\u53f0\u505a\u6d4b\u8bd5\u65f6Chrome\u7ecf\u5e38\u51fa\u73b0\u5d29\u6e83\u95ee\u9898
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590d\u63d0\u793a\u76f8\u5173\u95ee\u9898
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590d\u901a\u7528\u914d\u7f6e\u7b5b\u9009\u95ee\u9898
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590d\u9879\u76ee\u73af\u5883\u521b\u5efa\u5931\u8d25\u7684\u7f3a\u9677
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590d\u5bfc\u822a\u680f\u5de5\u4f5c\u7a7a\u95f4\u641c\u7d22\u8f93\u5165\u65f6\u81ea\u52a8\u5931\u7126\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590djira\u4f7f\u7528\u81ea\u5b9a\u4e49\u6a21\u677f\u521b\u5efa\u7f3a\u9677\u5931\u8d25\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u529f\u80fd\u7528\u4f8b\u521b\u5efa\u7248\u672c\u5206\u652f, \u62a5\u529f\u80fd\u7528\u4f8b\u5df2\u5b58\u5728\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u7528\u4f8b\u8bc4\u5ba1\u5217\u8868\u8868\u5934\u663e\u793a\u540d\u79f0\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u8111\u56fe\u7f16\u8f91\u7528\u6237\u4f1a\u6e05\u7a7a\u5173\u8054\u7684\u9700\u6c42\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u529f\u80fd\u7528\u4f8b\u7f16\u8f91\u9875\uff0c\u7528\u4f8b\u72b6\u6001\u663e\u793a\u6709\u8bef
    • fix(\u65b0\u624b\u5f15\u5bfc): \u4fee\u590d\u65b0\u5efa\u8d85\u7ea7\u7ba1\u7406\u5458\u7528\u6237-\u9996\u6b21\u52a0\u8f7d\u4f1a\u51fa\u73b0\u4e24\u6b21\u65b0\u624b\u5f15\u5bfc\u5f39\u7a97
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u7528\u6237\u5bfc\u5165ID\u548c\u540d\u79f0\u6dfb\u52a0\u6821\u9a8c
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u7cfb\u7edf\u8bbe\u7f6e\u521b\u5efa\u7528\u6237\uff0c\u4e0b\u62c9\u6846option\u6837\u5f0f\u8ddf\u968fselect\u6837\u5f0f
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590d\u63d2\u4ef6\u5220\u9664\u540e\u518d\u6b21\u4e0a\u4f20\u63d2\u4ef6id\u9519\u8bef\u7684\u7f3a\u9677
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590d\u5de5\u4f5c\u7a7a\u95f4\u540d\u79f0\u8d85\u957f\uff0c\u521b\u5efa\u7528\u6237\u9009\u5219\u5de5\u4f5c\u7a7a\u95f4\u65f6\u6837\u5f0f\u95ee\u9898
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u6027\u80fd\u6d4b\u8bd5\u81ea\u5b9a\u4e49\u6267\u884c\u7684\u65f6\u5019\u6570\u5b57\u8f6c\u5316\u7684\u95ee\u9898
    • fix: \u4fee\u590dJenkins\u6267\u884c\u6d4b\u8bd5\u65f6\u7531\u4e8e\u6743\u9650\u4e0d\u591f\u5bfc\u81f4\u4e0d\u80fd\u6b63\u5e38\u6267\u884c\u7684\u95ee\u9898
    • fix: \u8d44\u6e90\u6c60\u955c\u50cf\u957f\u5ea6\u8fdb\u884c\u9650\u5236
    "},{"location":"about/changelog/#v2103-lts","title":"v2.10.3-lts","text":"

    2023\u5e747\u67086\u65e5

    \ud83d\udca5\ud83d\udca5\u00a0\u91cd\u8981\u63d0\u9192\u00a0\ud83d\udca5\ud83d\udca5 2.10 LTS \u5728\u67b6\u6784\u4e0a\u548c 1.20 LTS \u6709\u5f88\u5927\u53d8\u5316\uff0c\u8bf7\u52a1\u5fc5\u5347\u7ea7\u524d\u8fdb\u884c\u5907\u4efd\uff0c\u5e76\u8be6\u7ec6\u67e5\u9605\u6b64\u6587\u6863\uff1a1.20 lts\u81f32.10 lts\u5347\u7ea7\u6307\u5357

    \u529f\u80fd\u4f18\u5316

    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u53bb\u9664JMeter\u4e0d\u517c\u5bb9\u7684Mock\u51fd\u6570
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u573a\u666f\u8c03\u8bd5\u53bb\u6389\u901a\u77e5
    • refactor(\u4e2a\u4eba\u4fe1\u606f): \u7b2c\u4e09\u65b9\u5e73\u53f0\u8d26\u53f7\u914d\u7f6elabel\u5bbd\u5ea6\u8c03\u6574
    • refactor(\u4e2a\u4eba\u4fe1\u606f): \u7b2c\u4e09\u65b9\u5e73\u53f0\u8d26\u53f7\u5b57\u6bb5\u663e\u793a\u4f18\u5316
    • refactor(\u6d4b\u8bd5\u8ba1\u5212): \u91cd\u5199\u6d4b\u8bd5\u8ba1\u5212\u52a0\u8f7d\u573a\u666f\u62a5\u544a\u7684\u65b9\u5f0f
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u7b2c\u4e09\u65b9\u5e73\u53f0\u7f3a\u9677\u5220\u9664\u63d0\u793a\u4f18\u5316
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u521b\u5efa\u7f3a\u9677\u5f39\u6846\u6dfb\u52a0\u5168\u5c4f\u6309\u94ae
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u5217\u8868\u6392\u5e8f\u540e\uff0c\u8111\u56fe\u70b9\u51fb\u4e0a\u4e0b\u79fb\u52a8\uff0c\u63d0\u793a\u4f18\u5316
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u529f\u80fd\u7528\u4f8b\u5173\u8054\u7f3a\u9677\uff0c\u6dfb\u52a0\u6392\u5e8f\u5b57\u6bb5
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u7528\u4f8b\u5217\u8868\u4e0d\u5c55\u793a\u6587\u672c\u6846\u548c\u5bcc\u6587\u672c\u6846\u7c7b\u578b\u7684\u81ea\u5b9a\u4e49\u5b57\u6bb5
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u529f\u80fd\u7528\u4f8b\u5217\u8868\u4e0d\u5c55\u793a\u6587\u672c\u6846\u7c7b\u578b\u7684\u81ea\u5b9a\u4e49\u5b57\u6bb5\uff0c\u4f18\u5316\u6548\u7387
    • refactor(\u901a\u7528\u529f\u80fd): \u4e2a\u4eba\u4fe1\u606f\u7684\u7b2c\u4e09\u65b9\u5e73\u53f0\u8d26\u53f7\u4fe1\u606f\u6539\u4e3a\u975e\u5fc5\u586b
    • refactor(\u901a\u7528\u529f\u80fd): Jackson\u9ed8\u8ba4\u5e8f\u5217\u5316\u5b57\u7b26\u4e32\u957f\u5ea6\u8c03\u6574
    • style(\u6d4b\u8bd5\u8ba1\u5212): \u66f4\u6539\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u4e2d\u63a5\u53e3\u6d4b\u8bd5\u62a5\u544a\u7684\u5c55\u793a\u9ad8\u5ea6

    \u95ee\u9898\u4fee\u590d

    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u7279\u6b8a\u6570\u636e\u7684swagger3.0\u6570\u636e\u5bfc\u51fa\u5931\u8d25\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u573a\u666f\u5bfc\u5165\u975e\u6807\u51c6JMX\u6587\u4ef6\u5931\u8d25\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u53c2\u6570\u548c\u7c7b\u578b\u4e0d\u7b26\u5408\u7684json-schema\u6570\u636e\u8f6cjson\u9519\u8bef\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u540c\u6b65\u63a5\u6536\u62a5\u544a\u7ed3\u679c\u6709\u65f6\u95f4\u5dee\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u8bf7\u6c42\u4f53\u542b\u7279\u6b8a\u5b57\u7b26\u8f6c\u6362\u9519\u8bef\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u591a\u5c42\u5d4c\u5957\u5f15\u7528\u573a\u666f\u7981\u7528\u72b6\u6001\u4e0d\u751f\u6548\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): Tapd \u7f16\u8f91\u7f3a\u9677\u5904\u7406\u4eba\u663e\u793a\u5f02\u5e38
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u529f\u80fd\u8bc4\u5ba1\u9ad8\u7ea7\u641c\u7d22\u5f39\u7a97\u51fa\u73b0\u7a7a\u7684\u6eda\u52a8\u6761
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u65e5\u671f\u81ea\u5b9a\u4e49\u5b57\u6bb5\u5217\u8868\u663e\u793a\u5e26\u4e86\u51c6\u786e\u65f6\u95f4
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u516c\u5171\u7528\u4f8b\u5e93\u590d\u5236\u548c\u7f16\u8f91\u6839\u636e\u6743\u9650\u542f\u7528\u7981\u7528
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u529f\u80fd\u7528\u4f8b\u5217\u8868\u81ea\u5b9a\u4e49\u5b57\u6bb5\u7b5b\u9009\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u8bbf\u95ee\u6d4b\u8bd5\u8ddf\u8e2a\u9ed8\u8ba4\u8df3\u8f6c\u5230\u7b2c\u4e00\u4e2a\u6709\u6743\u9650\u7684\u83dc\u5355
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6574\u578b\u81ea\u5b9a\u4e49\u5b57\u6bb5\u4e0d\u4fee\u6539\u9ed8\u8ba4\u503c\uff0c\u4f1a\u4fdd\u5b58\u4e3a\u5b57\u7b26\u4e32
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u9009\u4e2d\u7528\u4f8b\u6570\u91cf\u8fc7\u591a\u751f\u6210\u4f9d\u8d56\u5173\u7cfb\u56fe\u9875\u9762\u52a0\u8f7d\u5f02\u5e38
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u6027\u80fd\u6d4b\u8bd5\u65f6\u6267\u884c\u65f6\u68c0\u67e5jmx\u6587\u4ef6
    • fix(\u9879\u76ee\u7ba1\u7406): \u6a21\u677f\u8bbe\u7f6e\u67e5\u8be2\u6743\u9650\u63a7\u5236\u95ee\u9898
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u521b\u5efa\u7f3a\u9677\u6a21\u677f\u4e0d\u6821\u9a8c\u6a21\u677f\u5b57\u6bb5\u6743\u9650
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4f18\u5316\u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5\u7684\u6743\u9650\u5224\u65ad\u65b9\u5f0f
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): ldap\u7528\u6237\u7b2c\u4e00\u6b21\u767b\u5f55\u5de5\u4f5c\u53f0\u6743\u9650\u95ee\u9898
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u5de5\u4f5c\u7a7a\u95f4\u6210\u5458\u4e0e\u73af\u5883\u7ba1\u7406\u5217\u8868\u9009\u4e2d\u6570\u91cf\u5c55\u793a\u9519\u8bef
    "},{"location":"about/changelog/#v2102-lts","title":"v2.10.2-lts","text":"

    2023\u5e746\u670820\u65e5

    \ud83d\udca5\ud83d\udca5\u00a0\u91cd\u8981\u63d0\u9192\u00a0\ud83d\udca5\ud83d\udca5 2.10 LTS \u5728\u67b6\u6784\u4e0a\u548c 1.20 LTS \u6709\u5f88\u5927\u53d8\u5316\uff0c\u8bf7\u52a1\u5fc5\u5347\u7ea7\u524d\u8fdb\u884c\u5907\u4efd\uff0c\u5e76\u8be6\u7ec6\u67e5\u9605\u6b64\u6587\u6863\uff1a1.20 lts\u81f32.10 lts\u5347\u7ea7\u6307\u5357

    \u529f\u80fd\u4f18\u5316

    • refactor: \u90e8\u5206\u63a5\u53e3\u6743\u9650\u8865\u5168
    • refactor: \u524d\u7aef\u62c6\u5305\u4f18\u5316

    \u95ee\u9898\u4fee\u590d

    • fix(UI\u6d4b\u8bd5): \u4fee\u590d\u8ffd\u52a0\u8f93\u5165\u63d0\u793a\u4fe1\u606f\u5e26\u7279\u6b8a\u5b57\u7b26\u95ee\u9898
    • fix(\u5de5\u4f5c\u53f0): \u4fee\u590d\u4eea\u8868\u76d8\u8fc7\u6ee4\u5f53\u524d\u7528\u6237\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u5f15\u7528\u7684case\u65e0\u6cd5\u6dfb\u52a0\u65ad\u8a00\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u573a\u666f\u5bfc\u5165\u63a5\u53e3\u5217\u8868\u9891\u7e41\u8c03\u63a5\u53e3\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u65ad\u8a00\u54cd\u5e94\u65f6\u95f4\u5f00\u542f\u5173\u95ed\u4e0d\u751f\u6548\u7684\u7f3a\u9677
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590dqiankun\u7ec4\u4ef6\u52a0\u8f7d\u62a5\u544a\u5207\u6362\u9519\u4e71\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u529f\u80fd\u7528\u4f8b\u7f16\u8f91\u8d23\u4efb\u4ebaID\u4e3a\u7eaf\u6570\u5b57\u663e\u793a\u5f02\u5e38\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u7528\u4f8b\u5217\u8868\u81ea\u5b9a\u4e49\u5217\u9009\u62e9\u540e\u5237\u65b0\u5931\u6548\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u4f7f\u7528\u7b2c\u4e09\u65b9\u7f3a\u9677\u6a21\u677f\uff0c\u5b58\u5728\u540c\u540d\u5b57\u6bb5\uff0c\u65e0\u6cd5\u4fdd\u5b58\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u6267\u884c\u961f\u5217\u4e0d\u518d\u8bb0\u5f55\u6267\u884c\u5931\u8d25\u7684\u6027\u80fd\u7528\u4f8b\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u7f3a\u9677\u81ea\u5b9a\u4e49\u5b57\u6bb5\u4e0b\u62c9\u9009\u9879\u8fdc\u7a0b\u68c0\u7d22\uff0c\u8f93\u5165\u5173\u952e\u5b57\u540e\u5931\u53bb\u7126\u70b9\uff0c\u9009\u9879\u6ca1\u6709\u91cd\u7f6e
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u5bfc\u5165\u7f3a\u9677\u6587\u4ef6\u5185\u5bb9\u9519\u8bef\u540e\uff0c\u4fee\u6539\u539f\u59cb\u6587\u4ef6\u5e76\u4fdd\u5b58\uff0c\u62a5network_error
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590d\u914d\u7f6e\u90ae\u4ef6Port\u53c2\u6570\u6821\u9a8c\u95ee\u9898
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u6027\u80fd\u6d4b\u8bd5\u573a\u666fCSV\u53d8\u66f4\u540e\u8fdb\u884c\u540c\u6b65\u65f6\u8868\u683c\u5185\u7684CSV\u6587\u4ef6\u4e5f\u540c\u6b65\u66f4\u6539
    • fix(\u6587\u4ef6\u7ba1\u7406): \u4fee\u590d\u6587\u4ef6\u7ba1\u7406\u589e\u52a0\u5bf9\u6a21\u5757id\u4e0d\u5b58\u5728\u7684\u65e7\u6570\u636e\u5904\u7406
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590dTCP\u914d\u7f6e\u5b57\u6bb5\u540d\u79f0\u663e\u793a\u95ee\u9898
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u5220\u9664\u6d88\u606f\u901a\u77e5\u6a21\u677f\u4e2d\u7684\u65e0\u6548\u53d8\u91cf
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590d\u81ea\u5b9a\u4e49\u5f85\u66f4\u65b0\u89c4\u5219\u914d\u7f6e\u63d0\u793a\u95ee\u9898
    "},{"location":"about/changelog/#v2101-lts","title":"v2.10.1-lts","text":"

    2023\u5e746\u67088\u65e5

    \ud83d\udca5\ud83d\udca5\u00a0\u91cd\u8981\u63d0\u9192\u00a0\ud83d\udca5\ud83d\udca5 2.10 LTS \u5728\u67b6\u6784\u4e0a\u548c 1.20 LTS \u6709\u5f88\u5927\u53d8\u5316\uff0c\u8bf7\u52a1\u5fc5\u5347\u7ea7\u524d\u8fdb\u884c\u5907\u4efd\uff0c\u5e76\u8be6\u7ec6\u67e5\u9605\u6b64\u6587\u6863\uff1a1.20 lts\u81f32.10 lts\u5347\u7ea7\u6307\u5357

    \u529f\u80fd\u4f18\u5316

    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u4f18\u5316\u573a\u666f\u73af\u5883\u6821\u9a8c\u903b\u8f91
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u4f18\u5316\u9009\u62e9\u8d44\u6e90\u6c60\u6267\u884c\u903b\u8f91
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u65b0\u589e\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u7f16\u8f91\u7684\u6743\u9650
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u7528\u4f8b\u8bc4\u5ba1\u5173\u8054\u7528\u4f8b\u65b0\u589e\u6392\u5e8f
    • refactor(\u7cfb\u7edf\u8bbe\u7f6e): \u64cd\u4f5c\u65e5\u5fd7\u7684\u64cd\u4f5c\u5bf9\u8c61\u589e\u52a0\u6e05\u7a7a
    • refactor(\u9879\u76ee\u8bbe\u7f6e): \u4f18\u5316\u7cfb\u7edf\u81ea\u5e26\u7684\u73af\u5883\u4e2d\u5e26\u811a\u672c\u65f6\u7684\u901a\u77e5\u903b\u8f91

    \u95ee\u9898\u4fee\u590d

    • fix(\u5de5\u4f5c\u53f0): \u529f\u80fd\u7528\u4f8b\u4eea\u8868\u76d8\u6570\u76ee\u4e0e\u5217\u8868\u4e0d\u4e00\u81f4
    • fix(\u5de5\u4f5c\u53f0)\uff1a\u5de5\u4f5c\u53f0\u67e5\u770bjira\u5e73\u53f0\u7f3a\u9677,\u7f3a\u9677\u5b57\u6bb5\u663e\u793a\u4e0d\u5168
    • fix(\u9879\u76ee\u8bbe\u7f6e): TCP\u914d\u7f6e\u540d\u79f0\u5c55\u793a\u95ee\u9898
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u6dfb\u52a0git\u6587\u4ef6\u5931\u8d25\u65f6\u4e0d\u4f1a\u518d\u5237\u65b0\u8868\u683c\u5185\u5bb9
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590djenkins\u89e6\u53d1\u63a5\u53e3\u7528\u4f8b\uff0c\u4e00\u76f4\u4e0d\u6267\u884c\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u573a\u666f\u6b65\u9aa4\u8de8\u5de5\u4f5c\u7a7a\u95f4\u8df3\u8f6c\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u96c6\u5408\u62a5\u544a\u505c\u6b62\u4e0d\u751f\u6548\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u573a\u666f\u6279\u91cf\u751f\u6210\u4f9d\u8d56\u5173\u7cfb\u62a5\u9519\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u81ea\u5b9a\u4e49\u8bf7\u6c42\u63a5\u53e3\u8986\u76d6\u7387\u8ba1\u7b97\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u53ea\u5173\u8054UI\u6267\u884c\u65f6\u8d44\u6e90\u6c60\u63d0\u793a\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u5f53\u524d\u9879\u76ee\u8d23\u4efb\u4eba\u5220\u9664\u65f6\u5c55\u793a\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7528\u4f8b\u8111\u56fe\u4fee\u6539\u4e00\u7ea7\u6a21\u5757\uff0c\u91cd\u540d\u6821\u9a8c\u4e0d\u51c6\u786e
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u5220\u9664\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u65f6\u540e\u53f0\u4f1a\u51fa\u73b0\u6d88\u606f\u901a\u77e5\u76f8\u5173\u7684\u62a5\u9519
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u6027\u80fd\u6d4b\u8bd5\u573a\u666fCSV\u53d8\u66f4\u540e\u8fdb\u884c\u540c\u6b65\u65f6\u8868\u683c\u5185\u7684CSV\u6587\u4ef6\u4e5f\u540c\u6b65\u66f4\u6539
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u6027\u80fd\u6d4b\u8bd5\u53d8\u66f4\u8bb0\u5f55\u76f8\u5173\u95ee\u9898
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u521b\u5efa\u6027\u80fd\u6d4b\u8bd5\u5076\u53d1\u7684\u4fdd\u5b58\u540e\u8d44\u6e90\u6c60\u88ab\u7f6e\u7a7a\u7684\u95ee\u9898
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590d\u5de5\u4f5c\u7a7a\u95f4\u914d\u989d\u9650\u5236\u8d44\u6e90\u6c60\u540e\u4efb\u7136\u53ef\u4ee5\u9009\u62e9\u88ab\u7981\u7528\u7684\u8d44\u6e90\u6c60\u6267\u884c\u7684\u7f3a\u9677
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590d\u4f4e\u7248\u672c\u5347\u7ea7\u4e0a\u6765\u7684\u9ed8\u8ba4\u914d\u989d\u663e\u793a\u9519\u8bef\u95ee\u9898
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590d\u901a\u77e5\u8df3\u8f6c\u73af\u5883\u63d0\u793a\u8d44\u6e90\u88ab\u5220\u7684\u7f3a\u9677
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590d\u9879\u76ee\u8bbe\u7f6e\u548c\u7cfb\u7edf\u8bbe\u7f6e\u4e2d\u6dfb\u52a0\u6210\u5458\u641c\u7d22\u7ed3\u679c\u4e0d\u7b26\u95ee\u9898
    • fix(\u901a\u77e5\u4e2d\u5fc3): \u901a\u77e5\u4e2d\u5fc3\u8df3\u8f6c\u5220\u9664\u7684\u8d44\u6e90\u65f6\u8fdb\u884c\u62a5\u9519\u63d0\u793a
    • fix(\u65b0\u624b\u5f15\u5bfc): \u65b0\u624b\u5f15\u5bfc\uff0c\u6b65\u9aa4\u4e3a\u521d\u59cb\u503c\u65f6\uff0c\u589e\u52a0\u8bb0\u5f55\u64cd\u4f5c
    • fix(\u6587\u4ef6\u7ba1\u7406): \u6587\u4ef6\u8be6\u60c5\u4e2d\u632a\u52a8\u6240\u5c5e\u6a21\u5757\u65f6\u4e0d\u518d\u63d0\u4f9b\u6e05\u7a7a\u6309\u94ae
    "},{"location":"about/changelog/#v2100-lts","title":"v2.10.0-lts","text":"

    2023\u5e745\u670825\u65e5

    \ud83d\udca5\ud83d\udca5\u00a0\u91cd\u8981\u63d0\u9192\u00a0\ud83d\udca5\ud83d\udca5 2.10 LTS \u5728\u67b6\u6784\u4e0a\u548c 1.20 LTS \u6709\u5f88\u5927\u53d8\u5316\uff0c\u8bf7\u52a1\u5fc5\u5347\u7ea7\u524d\u8fdb\u884c\u5907\u4efd\uff0c\u5e76\u8be6\u7ec6\u67e5\u9605\u6b64\u6587\u6863\uff1a1.20 lts\u81f32.10 lts\u5347\u7ea7\u6307\u5357

    \u6d4b\u8bd5\u80fd\u529b\u5347\u7ea7

    \u4e00\u7ad9\u5f0f\u6d4b\u8bd5\u80fd\u529b\u589e\u5f3a\uff1a MeterSphere v2.10 LTS\u7248\u672c\u5728\u6d4b\u8bd5\u7ba1\u7406\u4e0e\u6d4b\u8bd5\u6267\u884c\u4e0a\u91c7\u7528\u4e00\u7ad9\u5f0f\u5e73\u53f0\u8bbe\u8ba1\uff0c\u63d0\u4f9b\u529f\u80fd\u6d4b\u8bd5\u3001\u63a5\u53e3\u6d4b\u8bd5\u3001UI\u6d4b\u8bd5\u3001\u6027\u80fd\u6d4b\u8bd5\u7684\u540c\u65f6\uff0c\u89c4\u907f\u4e86\u6d4b\u8bd5\u4eba\u5458\u6267\u884c\u6d4b\u8bd5\u4efb\u52a1\u65f6\u56e0\u5de5\u5177\u7e41\u591a\u3001\u79cd\u7c7b\u5dee\u5f02\u5316\u5bfc\u81f4\u7684\u65e0\u6cd5\u6c89\u6dc0\u548c\u65e0\u6cd5\u8ffd\u6eaf\u7684\u95ee\u9898\u3002\u5168\u9762\u627f\u8f7d\u4e0d\u540c\u7c7b\u578b\u7684\u6d4b\u8bd5\u7528\u4f8b\u3001API\u3001\u6d4b\u8bd5\u6570\u636e\u3001\u6d4b\u8bd5\u73af\u5883\u7b49\u5173\u952e\u8d44\u4ea7\u7684\u96c6\u4e2d\u7ba1\u7406\u3002

    \u6d4b\u8bd5\u7ba1\u7406\u80fd\u529b\u589e\u5f3a\uff1a MeterSphere v2.10 LTS\u7248\u672c\u4e2d\uff0c\u6d4b\u8bd5\u8ba1\u5212\u529f\u80fd\u8fdb\u884c\u4e86\u589e\u5f3a\uff0c\u8986\u76d6\u529f\u80fd\u7528\u4f8b\u3001\u63a5\u53e3\u7528\u4f8b\u3001UI\u7528\u4f8b\u3001\u6027\u80fd\u7528\u4f8b\u3002

    \u63a5\u53e3\u6d4b\u8bd5\u80fd\u529b\u589e\u5f3a\uff1a MeterSphere v2.10 LTS\u7248\u672c\u4e2d\uff0c\u63a5\u53e3\u6d4b\u8bd5\u91cd\u70b9\u89e3\u51b3\u4e86API\u53d1\u751f\u53d8\u66f4\u4e00\u952e\u66f4\u65b0\u63a5\u53e3\u7528\u4f8b\u7684\u95ee\u9898\u3002

    UI \u6d4b\u8bd5\u80fd\u529b\u589e\u5f3a\u3010X-Pack\u3011\uff1a \u5728MeterSphere v2.10 LTS\u7248\u672c\u4e2d\uff0cUI\u6d4b\u8bd5\u6a21\u5757\u9488\u5bf9Selenium\u539f\u751f\u6307\u4ee4\u8fdb\u884c\u4e86\u8fdb\u4e00\u6b65\u7684\u6269\u5c55\uff0c\u4ee5\u8986\u76d6\u7279\u6b8a\u6d4b\u8bd5\u573a\u666f\u3002

    \u6027\u80fd\u6d4b\u8bd5\u80fd\u529b\u589e\u5f3a\uff1a \u5728MeterSphere v2.10 LTS\u7248\u672c\u4e2d\uff0c\u6027\u80fd\u6d4b\u8bd5\u5b9e\u65f6\u62a5\u544a\u8ba1\u7b97\u80fd\u529b\u589e\u5f3a\u3002\u5c06\u6027\u80fd\u6d4b\u8bd5\u751f\u6210\u7684jtl\u6587\u4ef6\u5206\u6210\u5c0f\u6bb5\uff0c\u5206\u6bb5\u8ba1\u7b97\u7ed3\u679c\uff0c\u8282\u7701\u4e86\u78c1\u76d8\u7a7a\u95f4\u548cIO\u6027\u80fd\u3002

    \u7528\u6237\u4f53\u9a8c\u5347\u7ea7

    \u6d4b\u8bd5\u8ddf\u8e2a\u9996\u9875\u3001\u63a5\u53e3\u6d4b\u8bd5\u9996\u9875UX\u4ea4\u4e92\u5347\u7ea7\uff1a MeterSphere v2.10 LTS\u7248\u672c\u4e2d\uff0c\u63a5\u53e3\u6d4b\u8bd5\u6a21\u5757\u9996\u9875\u793a\u4f8b\u56fe\u3002\u5c06\u6838\u5fc3\u6307\u6807\u4e0e\u660e\u7ec6\u6307\u6807\u5206\u5c42\u5c55\u793a\uff0c\u89c6\u89c9\u4e0a\u907f\u514d\u4e86\u56e0\u6570\u636e\u8fc7\u591a\u4ea7\u751f\u7684\u89c6\u89c9\u75b2\u52b3\u3002

    \u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757\u529f\u80fd\u7528\u4f8bUX\u4ea4\u4e92\u5347\u7ea7\uff1a MeterSphere v2.10 LTS\u7248\u672c\u4e2d\uff0c\u529f\u80fd\u7528\u4f8b\u8fdb\u884c\u4e86\u5168\u65b0\u4ea4\u4e92\u5347\u7ea7\uff0c\u6574\u4e2a\u9875\u9762\u91c7\u7528\u8f7b\u91cf\u5316\u8bbe\u8ba1\u8fdb\u884c\u6574\u4f53\u964d\u566a\uff0c\u9875\u9762\u4fe1\u606f\u66f4\u52a0\u6e05\u6670\u6613\u61c2\uff0c\u64cd\u4f5c\u6d41\u7a0b\u66f4\u987a\u7545\uff0c\u7528\u6237\u4f53\u9a8c\u5f97\u5230\u6574\u4f53\u63d0\u5347\u3002

    \u9664\u6b64\u4e4b\u5916\uff0cMeterSphere v2.10 LTS\u7248\u672c\u8fd8\u8fdb\u884c\u4e86\u4ee5\u4e0b\u9ad8\u9891\u4f7f\u7528\u529f\u80fd\u7684\u4f53\u9a8c\u4f18\u5316\uff1a

    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u9ad8\u7ea7\u641c\u7d22\u652f\u6301\u8f93\u5165\u591a\u4e2a\u6807\u7b7e\u641c\u7d22\uff1b
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u8111\u56fe\u7528\u4f8b\u5220\u9664\u65f6\u589e\u52a0\u4e8c\u6b21\u786e\u8ba4\uff1b
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a5\u53e3\u6d4b\u8bd5\u6279\u91cf\u6dfb\u52a0\u8bf7\u6c42\u53c2\u6570\u81ea\u52a8\u53bb\u7a7a\u683c\u5904\u7406\uff1b
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u652f\u6301\u901a\u8fc7\u8def\u5f84\u641c\u7d22\uff1b
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a5\u53e3\u6d4b\u8bd5\u5217\u8868\u5c55\u793a\u5b9a\u65f6\u4efb\u52a1\u5217\uff1b
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u56fa\u5b9a\u5355\u63a5\u53e3\u7528\u4f8b\u6267\u884c\u6309\u94ae\u4f4d\u7f6e\uff1b
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u8fd0\u884c\u73af\u5883\u5217\u8868\u652f\u6301\u6a21\u7cca\u641c\u7d22\uff1b
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u5355\u6b65\u8c03\u8bd5\u7528\u4f8b\u6216\u573a\u666f\u6b65\u9aa4\u65f6\u54cd\u5e94\u5185\u5bb9\u81ea\u52a8\u5c55\u5f00\uff1b
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a5\u53e3TEST\u652f\u6301\u4fdd\u7559\u6700\u8fd1\u4e00\u6b21\u7684\u6267\u884c\u8bb0\u5f55\uff1b
    • \u6027\u80fd\u6d4b\u8bd5\uff1a\u6d4b\u8bd5\u62a5\u544a\u589e\u52a0\u56fe\u8868\u5355\u4f4d\u5c55\u793a\uff1b
    • \u901a\u7528\u529f\u80fd\uff1a\u6807\u7b7e\u5b57\u6570\u8fc7\u591a\u65f6\u7684\u5c55\u793a\u4f18\u5316\uff1b

    \u7cfb\u7edf\u67b6\u6784\u5347\u7ea7

    \u7cfb\u7edf\u67b6\u6784\u5347\u7ea7\u4e3a\u5fae\u670d\u52a1\u67b6\u6784\uff1a MeterSphere v2.10 LTS\u7248\u672c\u91c7\u7528\u4e86\u5fae\u670d\u52a1\u67b6\u6784\uff0c\u65e2\u80fd\u6ee1\u8db3\u7528\u6237\u6309\u9700\u914d\u7f6e\u3001\u6c34\u5e73\u6269\u5c55\u7684\u9700\u6c42\uff0c\u53c8\u80fd\u89c4\u907f\u5355\u4e2a\u670d\u52a1\u6545\u969c\u5bfc\u81f4\u6574\u4f53\u670d\u52a1\u4e0d\u53ef\u7528\u7684\u73b0\u8c61\u3002

    \u5e73\u53f0\u6269\u5c55\u80fd\u529b\u589e\u5f3a\uff1a MeterSphere\u4f5c\u4e3a\u4e00\u7ad9\u5f0f\u6301\u7eed\u6d4b\u8bd5\u5e73\u53f0\uff0c\u65e2\u9700\u8981\u4e0e\u5404\u79cd\u5468\u8fb9\u7cfb\u7edf\u8fdb\u884c\u96c6\u6210\u5bf9\u63a5\uff0c\u4e5f\u9700\u8981\u652f\u6301\u5404\u79cd\u4e0d\u540c\u534f\u8bae\u7684\u63a5\u53e3\u6d4b\u8bd5\uff0c\u7075\u6d3b\u7684\u63d2\u4ef6\u4f53\u7cfb\u4fbf\u53ef\u4ee5\u5f88\u597d\u5730\u89e3\u51b3\u5e73\u53f0\u6269\u5c55\u6027\u7684\u95ee\u9898\u3002\u7528\u6237\u53ef\u4ee5\u6309\u9700\u5b89\u88c5\u3001\u5f00\u53d1\u5404\u79cd\u5f62\u5f0f\u5730\u63d2\u4ef6\u6765\u8986\u76d6\u5404\u79cd\u4e0d\u540c\u7684\u6d4b\u8bd5\u53ca\u5bf9\u63a5\u9700\u6c42\u3002

    \u6027\u80fd\u4f18\u5316\uff1a - UI\u6d4b\u8bd5\u6279\u91cf\u6267\u884c\u6027\u80fd\u4f18\u5316 - \u6d4b\u8bd5\u8ba1\u5212\u6267\u884c\u6548\u7387\u4f18\u5316 - \u63a5\u53e3\u6d4b\u8bd5\u6267\u884c\u8fc7\u7a0b\u9644\u4ef6\u52a0\u8f7d\u4f18\u5316 - \u52a0\u8f7d\u673a\u5236\u4ece\u5b9e\u65f6\u83b7\u53d6\u4f18\u5316\u4e3a\u672c\u5730\u7f13\u5b58\u52a0\u6587\u4ef6\u670d\u52a1\uff08MinIO\uff09\u4e2d\u6309\u9700\u83b7\u53d6\u3002 - \u5de6\u4fa7\u6a21\u5757\u6811\u6548\u7387\u4f18\u5316 - \u767b\u5f55\u7cfb\u7edf\u52a0\u8f7d\u8017\u65f6\u6027\u80fd\u4f18\u5316 - \u6279\u91cf\u5bfc\u51fa\u5927\u6570\u636e\u91cf\u7528\u4f8b\u6027\u80fd\u4f18\u5316 - \u6d4b\u8bd5\u8ba1\u5212\u6279\u91cf\u5173\u8054\u5927\u6570\u636e\u91cf\u7528\u4f8b\u6027\u80fd\u4f18\u5316

    \u8fd0\u884c\u7a33\u5b9a\u6027\u63d0\u5347\uff1a \u7528\u6237\u5bf9\u4e8e MeterSphere \u5e73\u53f0\u7684\u4f7f\u7528\u89c4\u6a21\u5f88\u591a\u65f6\u5019\u603b\u4f1a\u8d85\u4e4e\u6211\u4eec\u7684\u60f3\u8c61\u3002\u5728 MeterSphere v2.10 LTS \u7248\u672c\u7684\u8fed\u4ee3\u8fc7\u7a0b\u4e2d\uff0c\u6211\u4eec\u63a5\u89e6\u4e86\u5f88\u591a\u5927\u89c4\u6a21\u3001\u9ad8\u9891\u6b21\u4f7f\u7528 MeterSphere \u5f00\u5c55\u65e5\u5e38\u6d4b\u8bd5\u5de5\u4f5c\u7684\u6848\u4f8b\uff0c\u5305\u62ec\u8111\u56fe\u6a21\u5f0f\u4e0b\u7f16\u8f91\u5927\u91cf\u529f\u80fd\u7528\u4f8b\uff0c\u5927\u6279\u91cf\u7684\u63a5\u53e3\u6d4b\u8bd5\u3001UI \u6d4b\u8bd5\u6267\u884c\uff0c\u9ad8\u5e76\u53d1\u9ad8TPS\u7684\u6027\u80fd\u6d4b\u8bd5\u7b49\u4f17\u591a\u4f7f\u7528\u573a\u666f\uff0c\u8fd9\u4e9b\u573a\u666f\u7ed9 MeterSphere \u5e26\u6765\u4e86\u5f88\u5927\u7684\u6311\u6218\uff0c\u4f46\u7ecf\u8fc7\u6211\u4eec\u7684\u4e0d\u61c8\u4f18\u5316\u6700\u7ec8\u90fd\u8fbe\u5230\u4e86\u8ba9\u7528\u6237\u6ee1\u610f\u7684\u6548\u679c\u3002

    MeterSphere v2.10 LTS\u7248\u672c\u4e0d\u4ec5\u5305\u542b\u4e86\u4ee5\u4e0a\u6240\u6709\u771f\u5b9e\u4f7f\u7528\u6848\u4f8b\u4e2d\u7684\u7a33\u5b9a\u6027\u4f18\u5316\u6539\u8fdb\uff0c\u8fd8\u7ecf\u8fc7\u4e86\u6211\u4eec\u957f\u8fbe3\u4e2a\u6708\u7684\u5185\u90e8\u6d4b\u8bd5\u548c\u90e8\u5206\u7528\u6237\u7684\u7070\u5ea6\u6d4b\u8bd5\u3002

    \u7cfb\u7edf\u5b89\u5168\u5347\u7ea7\uff1a

    • \u63a5\u53e3\u6d4b\u8bd5\u7981\u7528\u672c\u5730\u6267\u884c\uff1a \u5728\u4e4b\u524d\u7684\u7248\u672c\u4e2d\uff0c\u63a5\u53e3\u6d4b\u8bd5\u63d0\u4f9b\u4e86\u672c\u5730\u6267\u884c\uff08\u5373\u5728\u63a5\u53e3\u6d4b\u8bd5\u670d\u52a1\u4e2d\u76f4\u63a5\u6267\u884c\uff09\u548c\u8d44\u6e90\u6c60\u6267\u884c\u4e24\u79cd\u65b9\u5f0f\u3002MeterSphere v2.10 LTS\u7248\u672c\u7981\u7528\u4e86\u63a5\u53e3\u672c\u5730\u6267\u884c\uff0c\u548c\u6027\u80fd\u6d4b\u8bd5\u4e00\u6837\uff0c\u5f53\u63a5\u53e3\u8c03\u8bd5\u6216\u8fd0\u884c\u65f6\u4f1a\u5728\u6307\u5b9a\u7684\u8d44\u6e90\u6c60\u4e0a\u8fd0\u884c\uff0c\u540c\u65f6\u8d44\u6e90\u6c60\u8282\u70b9\u4e0a\u7684 node-controller \u670d\u52a1\u9ed8\u8ba4\u4ee5\u5bb9\u5668\u65b9\u5f0f\u8fd0\u884c\uff0c\u8fd9\u6837\u5373\u4fbf\u5b58\u5728\u4e0a\u8ff0\u7528\u4f8b\u8bbe\u8ba1\u4e0d\u5f53\u7684\u95ee\u9898\u4e5f\u53ea\u4f1a\u5f71\u54cd\u5230\u5bf9\u5e94\u8d44\u6e90\u6c60\u8282\u70b9\u4e0a\u7684 node-controller \u5bb9\u5668\uff0c\u63a5\u53e3\u6d4b\u8bd5\u4e3b\u4f53\u670d\u52a1\u8fd8\u53ef\u4ee5\u6b63\u5e38\u4f7f\u7528\uff0cnode-controller \u6240\u5728\u670d\u52a1\u5668\u4e5f\u4e0d\u4f1a\u53d7\u5230\u5f71\u54cd\u3002

    \u6ce8\u610f\uff1a\u5f53\u5b58\u5728\u591a\u4e2a\u53ef\u7528\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60\u65f6\uff0c\u53ef\u4ee5\u5728\u3010\u9879\u76ee\u8bbe\u7f6e->\u5e94\u7528\u7ba1->\u63a5\u53e3\u6d4b\u8bd5\u3011\u83dc\u5355\u4e2d\u914d\u7f6e\u63a5\u53e3\u6267\u884c\u7684\u9ed8\u8ba4\u8d44\u6e90\u6c60\u3002

    • \u6d4b\u8bd5\u7528\u4f8b\u811a\u672c\u9884\u8b66\u901a\u77e5\uff1a \u9664\u4e86\u7981\u7528\u672c\u5730\u6267\u884c\uff0c\u4e3a\u63a5\u53e3\u6d4b\u8bd5\u63d0\u4f9b\u6c99\u7bb1\u6267\u884c\u73af\u5883\u5916\uff0cMeterSphere v2.10 LTS \u7248\u672c\u4e2d\u8fd8\u589e\u52a0\u4e86\u4e3b\u52a8\u9884\u8b66\u673a\u5236\uff0c\u5f53\u7528\u6237\u4fdd\u5b58\u6216\u4fee\u6539\u7684\u7528\u4f8b\u4e2d\u5305\u542b\u811a\u672c\u5185\u5bb9\u65f6\u53ef\u4ee5\u914d\u7f6e\u6307\u5b9a\u7528\u6237\u5ba1\u6838\uff0c\u5f53\u7cfb\u7edf\u68c0\u6d4b\u5230\u5305\u542b\u811a\u672c\u7684\u7528\u4f8b\u65f6\u4f1a\u89e6\u53d1\u7cfb\u7edf\u6d88\u606f\u901a\u77e5\u6307\u5b9a\u5ba1\u6838\u4eba\u5bf9\u8be5\u811a\u672c\u8fdb\u884c\u5ba1\u6838\u3002
    "},{"location":"about/changelog/#v291","title":"v2.9.1","text":"

    2023\u5e745\u670810\u65e5

    \u529f\u80fd\u4f18\u5316

    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u4f18\u5316\u6267\u884c\u8fc7\u7a0b\u8d44\u6e90\u6c60\u6821\u9a8c\u53ca\u7ed3\u679c\u5904\u7406
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u4f18\u5316\u6279\u91cf\u4fdd\u5b58\u73af\u5883\uff0c\u7f16\u8f91\u9875\u9762\u663e\u793a\u73af\u5883
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u7f3a\u9677\u5217\u8868\u5e73\u53f0\u72b6\u6001\u5b57\u6bb5\u5bbd\u5ea6\u663e\u793a\u4f18\u5316
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u5220\u9664\u6d4b\u8bd5\u8ba1\u5212\u6279\u91cf\u5173\u8054\u529f\u80fd\u7528\u4f8b\uff0c\u65e0\u7528\u4ee3\u7801
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u66f4\u65b0\u7528\u4f8b\u9700\u6c42\u65f6\uff0c\u8c03\u7528\u63d2\u4ef6\u9884\u7559\u7684\u9700\u6c42\u66f4\u65b0\u65b9\u6cd5
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u529f\u80fd\u7528\u4f8b\u81ea\u5b9a\u4e49\u5b57\u6bb5\u8868\u5355\u987a\u5e8f\u8ddf\u6a21\u677f\u914d\u7f6e\u4fdd\u6301\u4e00\u81f4
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u5173\u8054\u529f\u80fd\u7528\u4f8b\u9875\u9762\uff0c\u6253\u5f00\u65f6\u6e05\u9664\u4e0a\u6b21\u6392\u5e8f
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u7528\u4f8b\u6b65\u9aa4\u652f\u6301\u63d2\u5165\u6b65\u9aa4
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u6279\u91cf\u63d2\u5165\u6570\u636e\u8fc7\u591a\u5bfc\u81f4OOM\u4f18\u5316\uff0c\u65b0\u589e\u6279\u91cfutils
    • refactor(\u7f3a\u9677\u7ba1\u7406): \u7f3a\u9677\u5217\u8868\u5e73\u53f0\u72b6\u6001\u5217\u652f\u6301\u7b5b\u9009\u548c\u6392\u5e8f
    • refactor(\u7cfb\u7edf\u8bbe\u7f6e): \u7981\u7528\u672c\u5730\u8c03\u8bd5\u540e\u7ed9\u9879\u76ee\u521d\u59cb\u5316\u4e00\u4e2a\u9ed8\u8ba4\u8d44\u6e90\u6c60

    \u95ee\u9898\u4fee\u590d

    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): firefox\u6d4f\u89c8\u5668\u67e5\u770b\u529f\u80fd\u7528\u4f8b\u9875\u9762\u663e\u793a\u5f02\u5e38
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4ece1.20\u5347\u7ea7\u52302.8\u6d4b\u8bd5\u8ba1\u5212\u7528\u4f8b\u8bc4\u8bba\u4e0d\u663e\u793a
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u9996\u9875-\u6211\u521b\u5efa\u7684\u8bc4\u5ba1\u663e\u793a\u6709\u8bef
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u5173\u8054UI\u53ca\u573a\u666f\u7528\u4f8b\u5f39\u7a97\u5de6\u4fa7\u6a21\u5757\u6811\u7b5b\u9009\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212-\u529f\u80fd\u7528\u4f8b\u5217\u8868\u6392\u5e8f\u6709\u8bef
    • fix(\u9879\u76ee\u7ba1\u7406): \u4fee\u590dGit\u6587\u4ef6\u5f15\u5165\u5176\u4ed6\u5206\u652f\u6587\u4ef6\u65f6\u63d0\u793a\u6587\u4ef6\u5df2\u5b58\u5728\u7684bug\uff0c\u5e76\u5728\u8868\u683c\u5c55\u793agit\u6587\u4ef6\u65f6\u589e\u52a0\u5206\u652f\u663e\u793a
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590dgit\u6587\u4ef6\u6dfb\u52a0\u4ee5\u53ca\u62c9\u53d6\u65f6commitId\u5e76\u4e0d\u662f\u6587\u4ef6\u672c\u8eab\u6700\u540e\u4e00\u6b21commitId\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): TCPMock\u540e\u7f6e\u811a\u672c\u652f\u6301\u83b7\u53d6tcp\u8bf7\u6c42\u53c2\u6570
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dV1\u7248\u672c\u65e7\u6570\u636e\u4e2d\u524d\u540e\u7f6eSQL\u7ec4\u4ef6\u53d6\u4e0d\u5230\u73af\u5883\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590djmeter\u4e0d\u586b\u5199\u8def\u5f84\u5bfc\u51fa\u7684jmx\u6587\u4ef6\u5bfc\u5165\u5230ms\u5185\uff0c\u6dfb\u52a0\u8def\u5f84\u65e0\u6cd5\u6d4b\u8bd5\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590djsonschema\u9009\u62e9number\u7c7b\u578b\u6570\u636e\u7cbe\u5ea6\u7f3a\u5931\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dquery\u53c2\u6570\u662fjson\u6570\u636e\u65f6\uff0c\u9009\u62e9\u7f16\u7801\u4e0d\u751f\u6548\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dsql\u81ea\u5b9a\u4e49\u8bf7\u6c42\u6ca1\u6709\u540d\u5b57\uff0c\u751f\u6210\u62a5\u544a\u4e3a\u7a7a\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dswagger\u5bfc\u5165\u6709\u5927\u91cferror\u65e5\u5fd7\u8f93\u51fa\u7684\u7f3a\u9677
    "},{"location":"about/changelog/#v290","title":"v2.9.0","text":"

    2023\u5e744\u670827\u65e5

    \u529f\u80fd\u4f18\u5316

    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u6279\u91cf\u5bfc\u51fa\u529f\u80fd\u7528\u4f8b\u6027\u80fd\u4f18\u5316
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u6d4b\u8bd5\u8ba1\u5212\u5173\u8054\u7528\u4f8b\u6027\u80fd\u4f18\u5316
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u7528\u4f8b\u8bc4\u5ba1\u5217\u8868\u589e\u52a0\u6807\u7b7e\u5217
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u9ad8\u7ea7\u641c\u7d22\u652f\u6301\u8f93\u5165\u591a\u4e2a\u6807\u7b7e\u641c\u7d22
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a5\u53e3\u5bfc\u5165\u903b\u8f91\u4f18\u5316
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a5\u53e3CASE\u652f\u6301\u901a\u8fc7\u8def\u5f84\u5feb\u6377\u641c\u7d22
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a5\u53e3\u573a\u666f\u5217\u8868\u5c55\u793a\u5b9a\u65f6\u4efb\u52a1\u5217
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a5\u53e3\u81ea\u52a8\u5316\u6587\u6863\u7ed3\u6784\u65ad\u8a00\u589e\u52a0\u590d\u9009\u6846\u64cd\u4f5c
    • UI \u6d4b\u8bd5\uff1aUI\u573a\u666f\u5217\u8868\u5c55\u793a\u5b9a\u65f6\u4efb\u52a1\u5217
    • \u901a\u7528\u529f\u80fd\uff1a\u9996\u6b21\u767b\u5f55\u7cfb\u7edf\u52a0\u8f7d\u8017\u65f6\u4f18\u5316

    \u95ee\u9898\u4fee\u590d

    • fix\uff08\u6d4b\u8bd5\u8ddf\u8e2a\uff09\uff1a\u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u5931\u8d25\u91cd\u8bd5\u65f6\u5bfc\u81f4\u8ba1\u5212\u4e2d\u63a5\u53e3\u811a\u672c\u7684\u5faa\u73af\u6ca1\u6709\u88ab\u6267\u884c\u5b8c\u5168\u7684\u95ee\u9898\uff08GitHub #23509\uff09
    • fix\uff08\u6d4b\u8bd5\u8ddf\u8e2a\uff09\uff1a\u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u6267\u884c\u65f6\u81ea\u5b9a\u4e49\u5b57\u6bb5\u6587\u672c\u6846\u8f93\u5165{}\u4f1a\u663e\u793a\u4e3a[object Object]\u7684\u95ee\u9898\uff08GitHub #23515\uff09
    • fix\uff08\u6d4b\u8bd5\u8ddf\u8e2a\uff09\uff1a\u4fee\u590d\u4ece1.20LTS\u7248\u672c\u5347\u7ea7\u5230\u6700\u65b0\u7248\u672c\u7528\u4f8b\u6267\u884c\u4e0a\u4f20\u7684\u622a\u56fe\u548c\u8bc4\u8bba\u67e5\u8be2\u4e0d\u5230\u7684\u95ee\u9898\uff08GitHub #23500\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590dJMeter\u4e0d\u586b\u5199\u8def\u5f84\u5bfc\u51fa\u7684jmx\u6587\u4ef6\u5bfc\u5165\u5230ms\u5185\u6dfb\u52a0\u8def\u5f84\u65e0\u6cd5\u6d4b\u8bd5\u7684\u95ee\u9898\uff08GitHub #23416\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590dCASE \u6267\u884c\u5b8c\u8bf7\u6c42\u540e\uff0c\u624b\u52a8\u4fee\u6539\u9884\u89c8\u54cd\u5e94\u4f53\u4e3a json\uff0c\u518d\u6b21\u6267\u884c\u9884\u89c8\u683c\u5f0f\u6709\u8bef\u7684\u95ee\u9898\uff08GitHub #23350\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u63a5\u53e3\u7528\u4f8b\u6267\u884c\u5b8c\u6210\uff0c\u901a\u8fc7\u7387\u6570\u636e\u4e0d\u4f1a\u81ea\u52a8\u66f4\u65b0\u7684\u95ee\u9898\uff08GitHub #23386\uff09
    "},{"location":"about/changelog/#v280","title":"v2.8.0","text":"

    2023\u5e743\u670823\u65e5

    \u529f\u80fd\u4f18\u5316

    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u6027\u80fd\u4f18\u5316
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u6587\u4ef6\u5b58\u5728\u91cd\u590d\u63a5\u53e3\u7684\u5bfc\u5165\u4f18\u5316
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u8bef\u62a5\u673a\u5236\u4e0e\u5931\u8d25\u91cd\u8bd5\u673a\u5236\u4f18\u5316
    • UI \u6d4b\u8bd5\uff1aUI\u573a\u666f\u81ea\u52a8\u5316\u6279\u91cf\u6267\u884c\u6548\u7387\u4f18\u5316
    • \u901a\u7528\u529f\u80fd\uff1a\u7cfb\u7edf\u5de6\u4fa7\u6a21\u5757\u6811\u52a0\u8f7d\u6548\u7387\u4f18\u5316

    \u95ee\u9898\u4fee\u590d

    • fix\uff08\u6d4b\u8bd5\u8ddf\u8e2a\uff09\uff1a\u4fee\u590d\u5728\u6d4b\u8bd5\u8ba1\u5212\u4e2d\u9009\u62e9\u73af\u5883\u65f6\u65e0\u6cd5\u9009\u62e9\u591a\u4e2a\u9879\u76ee\u73af\u5883\uff0c\u5bfc\u81f4\u6267\u884c\u6d4b\u8bd5\u8ba1\u5212\u65f6\u4e00\u76f4running\u7684\u95ee\u9898\uff08GitHub #22858\uff09
    • fix\uff08\u6d4b\u8bd5\u8ddf\u8e2a\uff09\uff1a\u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u6267\u884c\u62a5\u544a\u540e\u5728\u7ebf\u770b\u5355\u6b65\u7ed3\u679c\u662f\u6210\u529f\u7684\uff0c\u4f46\u662f\u5bfc\u51fa\u5c31\u53d8\u6210\u4e86\u5931\u8d25\u7684\u95ee\u9898\uff08GitHub #22067\uff09
    • fix\uff08\u6d4b\u8bd5\u8ddf\u8e2a\uff09\uff1a\u4fee\u590dAzure Devops \u5e73\u53f0\u540c\u6b65\u7f3a\u9677\u62a5\u6570\u7ec4\u8d8a\u754c\u7684\u95ee\u9898\uff08GitHub #22943\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u8fd0\u884c\u73af\u5883Http\u57df\u540d\u914d\u7f6e\u5305\u542b\u7aef\u53e3\u53f7\u4f1a\u5bfc\u81f4\u63a5\u53e3\u8bf7\u6c42URL\u4e2d\u591a\u4e86\"[ ]\"\u7684\u95ee\u9898\uff08GitHub #22857\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590dTCP\u534f\u8bae\u7684\u63a5\u53e3\u5b9a\u4e49\u672a\u6309\u7167\u9009\u53d6\u7684\u7f16\u7801\u683c\u5f0f\u52a8\u6001\u751f\u6210xml\u8868\u5934\u7684\u95ee\u9898\uff08GitHub #22540\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u63a5\u53e3\u5b9a\u4e49\u8bbe\u7f6e\u4e86swagger\uff08\u6709\u6dfb\u52a0\u8bf7\u6c42\u53c2\u6570\uff09\u5b9a\u65f6\u4efb\u52a1\uff0c\u4e0d\u4f1a\u81ea\u52a8\u89e6\u53d1\u7684\u95ee\u9898\uff08GitHub #22044\uff09
    • fix\uff08UI \u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u5143\u7d20\u5e93&UI\u81ea\u52a8\u5316\u5217\u8868\u8bbe\u7f6e\u8868\u5934\u540e\uff0c\u9020\u6210\u6279\u91cf\u64cd\u4f5c\u7684\u70b9\u51fb\u6309\u94ae\u6ca1\u6709\u7684\u95ee\u9898\uff08GitHub #22914\uff09
    • fix\uff08UI \u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u573a\u666f\u5f15\u7528\u540e\u540d\u79f0\u663e\u793a\u4e0d\u6b63\u786e\u7684\u95ee\u9898\uff08GitHub #22914\uff09
    • fix\uff08UI \u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u672c\u5730\u8c03\u8bd5\u65f6\uff0c\u70b9\u51fb\u201c\u505c\u6b62\u201d\u6309\u94ae\uff0c\u6d4f\u89c8\u5668\u6ca1\u6709\u7684\u95ee\u9898\uff08GitHub #22557\uff09
    "},{"location":"about/changelog/#v270","title":"v2.7.0","text":"

    2023\u5e742\u670823\u65e5

    \u65b0\u589e\u529f\u80fd

    • \u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757UX\u4ea4\u4e92\u5347\u7ea7
    • \u7528\u4f8b\u8bc4\u5ba1\u652f\u6301\u591a\u4eba\u8bc4\u5ba1
    • \u8fd0\u884c\u914d\u7f6e\u652f\u6301\u5931\u8d25\u91cd\u8bd5\uff08X-Pack\u529f\u80fd\u5f00\u653e\u81f3\u5f00\u6e90\u7248\uff09
    • \u63a5\u53e3\u6d4b\u8bd5\u652f\u6301\u4e00\u952e\u5931\u8d25\u91cd\u8dd1\uff08X-Pack\u529f\u80fd\u5f00\u653e\u81f3\u5f00\u6e90\u7248\uff09
    • \u6587\u4ef6\u7ba1\u7406\u652f\u6301\u5bf9\u63a5\u7b2c\u4e09\u65b9\u4ed3\u5e93\uff08X-Pack\u529f\u80fd\u5f00\u653e\u81f3\u5f00\u6e90\u7248\uff09
    • \u4e00\u7ea7\u529f\u80fd\u6a21\u5757\u542f\u7528/\u7981\u7528\uff08X-Pack\u529f\u80fd\u5f00\u653e\u81f3\u5f00\u6e90\u7248\uff09

    \u529f\u80fd\u4f18\u5316

    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u652f\u6301\u6dfb\u52a0\u529f\u80fd\u7528\u4f8b\u4f9d\u8d56\u5173\u7cfb\u5e76\u751f\u6210\u62d3\u6251\u56fe\uff08X-Pack\u529f\u80fd\u5f00\u653e\u81f3\u5f00\u6e90\u7248\uff09
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u67e5\u770b\u5f15\u7528\u5173\u7cfb\u5217\u8868\u65b0\u589e\u201c\u590d\u5236\u201d\u5173\u7cfb\u7684\u6570\u636e
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u652f\u6301\u6dfb\u52a0\u63a5\u53e3\u4f9d\u8d56\u5173\u7cfb\u5e76\u751f\u6210\u62d3\u6251\u56fe\uff08X-Pack\u529f\u80fd\u5f00\u653e\u81f3\u5f00\u6e90\u7248\uff09
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u652f\u6301\u81ea\u52a8\u751f\u6210\u63a5\u53e3\u7528\u4f8b\u6570\u636e\uff08X-Pack\u529f\u80fd\u5f00\u653e\u81f3\u5f00\u6e90\u7248\uff09
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u652f\u6301\u914d\u7f6e\u7981\u7528\u672c\u5730\u6267\u884c\u7684\u5b89\u5168\u7b56\u7565\uff08X-Pack\u529f\u80fd\u5f00\u653e\u81f3\u5f00\u6e90\u7248\uff09
    • \u901a\u7528\u529f\u80fd\uff1a\u652f\u6301\u914d\u7f6e\u79df\u6237\u4f7f\u7528\u914d\u989d\uff08X-Pack\u529f\u80fd\u5f00\u653e\u81f3\u5f00\u6e90\u7248\uff09
    • \u901a\u7528\u529f\u80fd\uff1a\u652f\u6301\u53d1\u9001\u9879\u76ee\u5b9a\u65f6\u62a5\u544a\uff08X-Pack\u529f\u80fd\u5f00\u653e\u81f3\u5f00\u6e90\u7248\uff09

    \u95ee\u9898\u4fee\u590d

    • fix\uff08\u5b89\u5168\u6f0f\u6d1e\uff09\uff1a\u4fee\u590d\u6587\u4ef6\u4e0b\u8f7d\u8bbf\u95ee\u6743\u9650\u6821\u9a8c\u63a7\u5236\u4e0d\u5f53\u7684\u7f3a\u9677\uff08CVE-2023-25573\u53caCVE-2023-25814\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590dIDEA\u63d2\u4ef6\u5bfc\u51fa\u90e8\u5206\u63a5\u53e3\u65f6\u62a5\u9519\u7684\u95ee\u9898\uff08GitHub #21213\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u5728\u63a5\u53e3\u5b9a\u4e49\u6a21\u5757\u7f16\u8f91CASE\u65f6\uff0c\u4fee\u6539\u540e\u7f6e\u64cd\u4f5c\u4e2d\u7684\u811a\u672c\u4e0d\u751f\u6548\u7684\u95ee\u9898\uff08GitHub #21425\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u4f7f\u7528\u73af\u5883\u7ec4\u6267\u884c\u573a\u666f\u7528\u4f8b\u65f6\uff0c\u4e0d\u80fd\u4fdd\u5b58\u6570\u636e\u5230\u53e6\u5916\u4e00\u4e2a\u9879\u76ee\u7684\u73af\u5883\u53d8\u91cf\u95ee\u9898\uff08GitHub #21345\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u63a5\u53e3\u4fdd\u5b58\u63d0\u793a\u5bf9\u8bdd\u6846\u6709\u6587\u5b57\u9519\u8bef\u7684\u95ee\u9898\uff08GitHub #21367\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u63a5\u53e3\u62a5\u544a\u5bfc\u51faPDF\u6587\u4ef6\u542b\u6709\u7a7a\u767d\u9875\u7684\u95ee\u9898\uff08GitHub #21515\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u5728\u67e5\u770b\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u4e2d\u7684\u65ad\u8a00\u5931\u8d25\u811a\u672c\u65f6\uff0c\u5f39\u51fa\u7684\u5bf9\u8bdd\u6846\u663e\u793a\u5c42\u7ea7\u9519\u8bef\u7684\u95ee\u9898\uff08GitHub #21266\uff09
    • fix\uff08\u7cfb\u7edf\u8bbe\u7f6e\uff09\uff1a\u4fee\u590d\u5347\u7ea7\u5230v2.4.1\u540e/project/list\u67e5\u8be2\u63a5\u53e3\u4e0d\u652f\u6301\u53c2\u6570\u8fc7\u6ee4\u7684\u95ee\u9898\uff08GitHub #20961\uff09
    "},{"location":"about/changelog/#v261","title":"v2.6.1","text":"

    2023\u5e742\u67087\u65e5

    \u529f\u80fd\u4f18\u5316

    • refactor(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u6539\u67e5\u8be2\u6a21\u7248\u7684\u63a5\u53e3\u8c03\u7528
    • refactor(\u63a5\u53e3\u5b9a\u4e49): \u4f18\u5316\u83b7\u53d6\u5f53\u524d\u7528\u6237\u540d\u79f0\u7684\u65b9\u6cd5
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): log\u4f18\u5316\u53bb\u9664\u4e0d\u5fc5\u8981\u5e72\u6270\u65e5\u5fd7\uff0c\u589e\u52a0jvm\u4fe1\u606f
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u5386\u53f2\u6570\u636e\u517c\u5bb9\uff0c\u9ed8\u8ba4\u4e0d\u5f00\u542f\u53d8\u91cf\u89c4\u5219
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u573a\u666f\u53d8\u91cf\u5f53\u6240\u6709\u4f18\u5148\u89c4\u5219\u4e0d\u9009\u65f6\uff0c\u9ed8\u8ba4\u8fc7\u7a0b\u53d8\u91cf\u4f18\u5148\u5e76\u517c\u5bb9\u5386\u53f2\u6570\u636e

    \u95ee\u9898\u4fee\u590d

    • fix(\u5de5\u4f5c\u53f0): \u5de5\u4f5c\u53f0\u6211\u7684\u5f85\u529e\u5c55\u793a\u4e86\u5df2\u5173\u95ed\u7684\u7f3a\u9677
    • fix(\u5de5\u4f5c\u53f0): \u4fee\u590d\u63a5\u53e3\u5b9a\u4e49\u4ee5\u53ca\u63a5\u53e3\u7528\u4f8b\u5728\u5207\u6362\u5f85\u5b8c\u6210\u65f6\u8fc7\u6ee4\u6761\u4ef6\u4e0d\u6e05\u7a7a\u95ee\u9898
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590dcase\u6dfb\u52a0\u540e\u7f6e\u811a\u672c\uff0c\u591a\u6b21\u4fdd\u5b58\uff0c\u5185\u5bb9\u8fd8\u662f\u4e0a\u4e00\u6b21\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u63a8\u8350jsonpath\u65ad\u8a00\u7d22\u5f15\u8d85\u8fc710\u65e0\u6cd5\u751f\u6210\u9884\u671f\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u5b9a\u65f6\u4efb\u52a1\u9009\u62e9cron\u8868\u8fbe\u5f0f\u65e0\u6cd5\u9009\u62e9\u5e74\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u73af\u5883\u53d8\u91cf\u663e\u793a\u591a\u9009\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u573a\u666f\u8de8\u9879\u76ee\u6267\u884c\u65e0\u6cd5\u4fdd\u5b58\u522b\u7684\u9879\u76ee\u7684\u73af\u5883\u53d8\u91cf\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u6267\u884c\u5faa\u73af\u63a7\u5236\u5668\u4e0b\u9762\u7684\u6b65\u9aa4\u6ca1\u6709\u7ed3\u679c\u72b6\u6001\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u5bfc\u5165\u90e8\u5206postman\u6587\u4ef6\u62a5\u9519\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u6587\u5b57\u7edf\u4e00\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u90e8\u5206\u63a5\u53e3\u5bfc\u51faswagger\u6587\u4ef6\u62a5\u9519\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u5bfc\u5165\u9875\u9762\u4fdd\u7559swagger\u4e0a\u6b21\u914d\u7f6e\u53c2\u6570\u8bb0\u5f55\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u6539\u8fdb\u63a5\u53e3\u6d4b\u8bd5\u9996\u9875\u7684\u63a5\u53e3\u7528\u4f8b\u7edf\u8ba1\u65b9\u6cd5
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u7981\u7528\u672c\u5730\u6267\u884c\u540e\u5355\u6b65\u8c03\u8bd5\u63d0\u793a\u9519\u8bef\u95ee\u9898
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u6267\u884c\u8fc7\u7a0b\u5305\u62ecCSV\uff0c\u90e8\u5206\u53c2\u6570\u6ca1\u6709\u521d\u59cb\u5316\u7684\u95ee\u9898
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u67e5\u8be2\u9879\u76ee\u63a5\u53e3\u652f\u6301\u6839\u636eJira\u548cZentao\u7684\u5173\u8054ID\u67e5\u8be2
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u67e5\u770bcase\u65ad\u8a00\u811a\u672c\u4e0d\u663e\u793a\u7684\u7f3a\u9677
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7528\u4f8b\u5173\u8054\u591a\u5c42\u7ea7\u9700\u6c42\u663e\u793a\u4e3a\u7a7a
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u8111\u56fe\u590d\u5236\u7c98\u8d34\u540e\u6570\u636e\u5c55\u793a\u9519\u8bef
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7528\u4f8b\u5217\u8868\u5bfc\u5165\u591a\u9009\u8f93\u5165\u5b57\u6bb5\u65f6\uff0c \u89e3\u6790\u503c\u6709\u8bef
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u82f1\u6587\u73af\u5883\u4e0b\uff0c\u7528\u4f8b\u5bfc\u5165\u8d23\u4efb\u4eba\u5931\u8d25
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u82f1\u6587\u8bed\u5883\u4e0b\uff0c\u7528\u4f8b\u5bfc\u5165\u7528\u4f8b\u7b49\u7ea7\u5931\u8d25
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u7528\u4f8b\u5927\u6279\u91cf\u6267\u884c\u8d85\u65f6\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u8111\u56fe\u66f4\u65b0\u7528\u4f8b\u540e\u6267\u884c\u4eba\u6ca1\u6709\u66f4\u65b0
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u529f\u80fd\u7528\u4f8b\u5bfc\u5165\u591a\u503c\u8f93\u5165\u540e\uff0c\u5217\u8868\u4e0d\u5c55\u793a\u6570\u636e
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u8111\u56fe\u63d0\u793a\u9519\u8bef\u4fe1\u606f\u540e\uff0c\u518d\u6b21\u4fdd\u5b58\u4f1a\u5bfc\u81f4\u7528\u4f8b\u4e22\u5931
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u53d6\u6d88\u8bb0\u4f4f\u8de8\u9875\u9009\u62e9\u7684\u8bb0\u5f55\u524d\u4e00\u9875\u7684\u6570\u636e\u4e0d\u80fd\u5220\u9664\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u5bfc\u51fa\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u7528\u4f8b\u8d44\u6e90\u6c60\u73af\u5883\u663e\u793a\u4e0d\u6b63\u786e\u7684\u7f3a\u9677
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u4e2d\u6279\u91cf\u6267\u884c\u63a5\u53e3\u7528\u4f8b\u6ca1\u6709\u6309\u7167\u8868\u683c\u987a\u5e8f\u6267\u884c\u7684\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ba1\u5212): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u53d1\u9001\u901a\u77e5\u65f6\u672a\u6267\u884c\u72b6\u6001\u6ca1\u6709\u7edf\u8ba1\u6570\u7684\u95ee\u9898
    • fix(\u901a\u7528\u529f\u80fd): \u5168\u9009\u6846\u4e0b\u62c9\u5217\u8868\uff0c\u70b9\u51fb\u9009\u62e9\u6240\u6709\u6570\u636e\u6216\u8005\u53ef\u89c1\u6570\u636e\uff0c\u4e0d\u51fa\u73b0\u52fe\u9009\u6548\u679c
    "},{"location":"about/changelog/#v260","title":"v2.6.0","text":"

    2023\u5e741\u670812\u65e5

    \u65b0\u589e\u529f\u80fd

    • UI\u81ea\u52a8\u5316\u6d4b\u8bd5\u6a21\u5757\u4e0e\u73af\u5883\u7ba1\u7406\u5168\u9762\u6253\u901a\uff08X-Pack\uff09
    • \u6d4b\u8bd5\u8ba1\u5212\u5173\u8054\u7528\u4f8b\u652f\u6301\u8bb0\u4f4f\u8de8\u9875\u9009\u62e9\u7684\u8bb0\u5f55
    • \u63a5\u53e3\u5b9a\u4e49\u5217\u8868\u652f\u6301\u6279\u91cf\u590d\u5236\u6307\u5b9a\u7248\u672c\u7684CASE\u548cMOCK\u6570\u636e\uff08X-Pack\uff09
    • \u53d8\u66f4Jenkins Job\u8fd0\u884c\u7ed3\u679c\u4e3a\u6d4b\u8bd5\u8ba1\u5212\u7528\u4f8b\u8fd0\u884c\u7ed3\u679c

    \u529f\u80fd\u4f18\u5316

    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u8c03\u6574\u6d4b\u8bd5\u8ba1\u5212\u5b9e\u9645\u7ed3\u679c\u5b57\u6570\u9650\u5236\uff08\u5c06300\u5b57\u6570\u8c03\u6574\u4e3a500\uff09
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u5b9a\u65f6\u4efb\u52a1\u6267\u884c\u7684\u6d4b\u8bd5\u8ba1\u5212\u751f\u6210\u62a5\u544a\u540e\u652f\u6301\u7f16\u8f91\u62a5\u544a\u603b\u7ed3
    • \u63a5\u53e3\u6d4b\u8bd5\uff1aMOCK\u7684\u540e\u7f6e\u811a\u672c\u652f\u6301\u83b7\u53d6\u4e0d\u540c\u683c\u5f0f\u7684\u8bf7\u6c42\u6570\u636e
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u8fd0\u884c\u73af\u5883\u5217\u8868\u652f\u6301\u6a21\u7cca\u641c\u7d22
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u5355\u6b65\u8c03\u8bd5\u7528\u4f8b\u6216\u573a\u666f\u6b65\u9aa4\u65f6\u54cd\u5e94\u5185\u5bb9\u81ea\u52a8\u5c55\u5f00
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a5\u53e3TEST\u652f\u6301\u4fdd\u7559\u6700\u8fd1\u4e00\u6b21\u6267\u884c\u8bb0\u5f55
    • \u901a\u7528\u529f\u80fd\uff1a\u6807\u7b7e\u5b57\u6570\u8fc7\u591a\u5c55\u793a\u4f18\u5316
    • \u901a\u7528\u529f\u80fd\uff1a\u63a5\u53e3\u573a\u666f\u5b9a\u65f6\u4efb\u52a1\u901a\u77e5\u589e\u52a0\u914d\u7f6e\u6d4b\u8bd5\u62a5\u544a\u514d\u767b\u5f55\u53c2\u6570\uff08X-Pack\uff09

    \u95ee\u9898\u4fee\u590d

    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u901a\u8fc7\u6279\u91cf\u4fee\u6539\u7684\u65b9\u5f0f\u4fee\u6539\u6307\u5b9a\u81ea\u5b9a\u4e49\u5b57\u6bb5\u4f1a\u5bfc\u81f4\u5168\u90e8\u5b57\u6bb5\u88ab\u4fee\u6539\u7684\u95ee\u9898\uff08GitHub #21075\uff09
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dAPI\u81ea\u52a8\u5316\u9996\u9875\u7edf\u8ba1\u4fe1\u606f\u5728\u5207\u6362table\u9875\u540e\u76f8\u5173\u7edf\u8ba1\u4fe1\u606f\u4e0d\u5c55\u793a\u7684\u95ee\u9898\uff08GitHub #21120\uff09
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u4f7f\u7528\u63a5\u53e3\u81ea\u52a8\u5316\u8f6c\u6027\u80fd\u6d4b\u8bd5\u6267\u884c\u65f6\u83b7\u53d6\u4e0d\u5230\u8fd0\u884c\u73af\u5883\u7684\u73af\u5883\u53d8\u91cf\u7684\u95ee\u9898\uff08GitHub #21150\uff09
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u4e2d\u5355\u72ec\u6267\u884c\u7528\u4f8b\u4e0d\u80fd\u8c03\u7528\u73af\u5883\u53d8\u91cf\u7684\u95ee\u9898\uff08GitHub #21116\uff09
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590d\u663e\u793a\u8bbe\u7f6e\u4fee\u6539\u7cfb\u7edf\u540d\u79f0\u4e0d\u751f\u6548\u7684\u95ee\u9898\uff08GitHub #21247\uff09
    "},{"location":"about/changelog/#v251","title":"v2.5.1","text":"

    2022\u5e7412\u670830\u65e5

    \u529f\u80fd\u4f18\u5316

    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u4f18\u5316\u6a21\u5757\u6811\u591a\u6b21\u4fdd\u5b58
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u7981\u6b62\u6279\u91cf\u5220\u9664\u8fd0\u884c\u4e2d\u7684\u6d4b\u8bd5\u8ba1\u5212

    \u95ee\u9898\u4fee\u590d

    • fix(\u5b89\u5168\u6f0f\u6d1e): \u4fee\u590d\u672a\u68c0\u67e5\u6587\u4ef6\u540d\u5bfc\u81f4\u6587\u4ef6\u53ef\u80fd\u88ab\u4e0a\u4f20\u5230\u4efb\u610f\u8def\u5f84\u7684\u95ee\u9898 (CVE-2022-46178)
    • fix(\u5de5\u4f5c\u53f0): \u5de5\u4f5c\u53f0\u9996\u9875\u7f3a\u9677\u7edf\u8ba1\u6709\u8bef
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dJson\u6570\u7ec4\u65e0\u6cd5\u4f7f\u7528mock\u6570\u636e\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590djson\u683c\u5f0f\u7684\u8bf7\u6c42\u6570\u636e\u5192\u53f7\u88ab\u66ff\u6362\u6210\u7b49\u53f7\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dswagger3.0\u6587\u4ef6\u5bfc\u5165\u5bf9content\u7684example\u6ca1\u6709\u5904\u7406\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u63a5\u53e3\u53c2\u6570\u6dfb\u52a0mock\u6570\u636e\u65f6\u6e05\u7a7a\u5386\u53f2\u51fd\u6570
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u7edf\u4e00\u63a5\u53e3\u6d4b\u8bd5\u8f6c\u6027\u80fd\u6d4b\u8bd5\u65f6storage\u5e26\u7684\u53c2\u6570
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u91cd\u590d\u521b\u5efa\u672a\u89c4\u5212\u63a5\u53e3\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u548c\u573a\u666f\u8f6c\u6027\u80fd\u6d4b\u8bd5\u65f6\u4f1a\u5076\u53d1\u91cd\u590djmx\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u70b9\u51fb\u573a\u666f\u62a5\u544a\u8df3\u8f6c\u94fe\u63a5\u6ca1\u6709\u8df3\u8f6c\u5230\u5bf9\u5e94\u9879\u76ee\u7684\u7f3a\u9677
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212-\u573a\u666f/\u6027\u80fd\u6d4b\u8bd5\u62a5\u544a \u4e0d\u663e\u793a\u8fd0\u884c\u6a21\u5f0f\u548c\u8d44\u6e90\u6c60
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u529f\u80fd\u7528\u4f8b\u4e0d\u5c55\u793a\u81ea\u5b9a\u4e49\u5b57\u6bb5
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u529f\u80fd\u7528\u4f8b\u5bfc\u51fa\u591a\u503c\u8f93\u5165\u81ea\u5b9a\u4e49\u5b57\u6bb5\u4e3a\u7a7a
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u4fdd\u5b58\u62a5\u544a\u5185\u5bb9\u65f6\u4e0d\u8d4b\u5f00\u59cb\u65f6\u95f4\u548c\u7ed3\u675f\u65f6\u95f4
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u67e5\u8be2\u62a5\u544a\u65f6\u65e0\u6cd5\u67e5\u51fa\u5df2\u5220\u9664\u4eba\u6267\u884c\u7684\u62a5\u544a
    "},{"location":"about/changelog/#v250","title":"v2.5.0","text":"

    2022\u5e7412\u670827\u65e5

    \u65b0\u589e\u529f\u80fd

    • \u5de5\u4f5c\u53f0UX\u4ea4\u4e92\u5347\u7ea7
    • \u63a5\u53e3\u6d4b\u8bd5\u9996\u9875\u589e\u52a0\u201c\u7248\u672c\u201d\u7edf\u8ba1\u53e3\u5f84\uff08X-Pack\uff09
    • \u63a5\u53e3\u5b9a\u4e49\u8bf7\u6c42\u53c2\u6570\u4ea4\u4e92\u4f18\u5316
    • \u6d4b\u8bd5\u62a5\u544a\u652f\u6301\u5c55\u793a\u8fd0\u884c\u6a21\u5f0f\u4ee5\u53ca\u8fd0\u884c\u7684\u8d44\u6e90\u6c60
    • \u65b0\u589e\u8d85\u7ea7\u7ba1\u7406\u5458\u7528\u6237\u7ec4

    \u529f\u80fd\u4f18\u5316

    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u670d\u52a1\u96c6\u6210\u5bf9\u63a5\u7b2c\u4e09\u65b9\u5e73\u53f0\u5b9e\u73b0\u63d2\u4ef6\u5316\uff08\u76ee\u524d\u652f\u6301\u7985\u9053\u3001Jira\uff09
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u6d4b\u8bd5\u8ddf\u8e2a\u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\u652f\u6301\u5173\u8054UI\u6d4b\u8bd5\u7528\u4f8b
    • \u63a5\u53e3\u6d4b\u8bd5\uff1aMQTT\u63d2\u4ef6\u53d6\u6d88\u8fde\u63a5\u540d\u5fc5\u586b
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u573a\u666f\u5d4c\u5957\u5f15\u7528\u7684\u53d8\u91cf\u53d6\u503c\u4f18\u5316
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u652f\u6301\u914d\u7f6e\u81ea\u52a8\u91cd\u5b9a\u5411
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u573a\u666f\u53d8\u91cf-\u8ba1\u6570\u5668\u652f\u6301\u53c2\u6570\u5316
    • \u63a5\u53e3\u6d4b\u8bd5\uff1ajson\u7ed3\u6784\u5316\u7684\u65f6\u5019\u4f1a\u63d0\u4f9bnull\u7c7b\u578b\u6765\u652f\u6301\u4f20null\u503c
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a5\u53e3\u6d4b\u8bd5\u524d\u540e\u7f6e\u811a\u672c\u652f\u6301beanshell\u5904\u7406\u5668
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a5\u53e3\u5bfc\u5165\u903b\u8f91\u4f18\u5316\uff08\u652f\u6301\u7248\u672c\u5bf9\u6bd4\uff09
    • UI\u6d4b\u8bd5\uff1aUI\u6d4b\u8bd5\u7b2c\u4e00\u6b65\u652f\u6301\u903b\u8f91\u63a7\u5236\u5668\uff08X-Pack\uff09
    • UI\u6d4b\u8bd5\uff1aUI\u6d4b\u8bd5\u8be6\u60c5\u9875\u6279\u91cf\u7f16\u8f91\u589e\u52a0\u65ad\u8a00\u914d\u7f6e\u7684\u9009\u9879\uff08X-Pack\uff09
    • \u901a\u7528\u529f\u80fd\uff1a\u6d88\u606f\u901a\u77e5\u589e\u52a0\u5b9a\u65f6\u6e05\u7406\u673a\u5236
    • \u901a\u7528\u529f\u80fd\uff1aJenkins\u751f\u6210\u7684\u62a5\u544a\u94fe\u63a5\u652f\u6301\u914d\u7f6e\u514d\u767b\u5f55\uff08X-Pack\uff09

    \u95ee\u9898\u4fee\u590d

    • fix\uff08\u5b89\u5168\u6f0f\u6d1e\uff09\uff1a\u4fee\u590dIssueProxyResourceService::getMdImageByUrl \u4e2d\u7684\u670d\u52a1\u5668\u7aef\u8bf7\u6c42\u4f2a\u9020 (CVE-2022-23544)
    • fix\uff08\u5b89\u5168\u6f0f\u6d1e\uff09\uff1a\u4fee\u590dApiTestCaseService::deleteBodyFiles \u4e2d\u7684\u8def\u5f84\u6ce8\u5165 (CVE-2022-23512)
    • fix\uff08\u6d4b\u8bd5\u8ddf\u8e2a\uff09\uff1a\u4fee\u590d\u529f\u80fd\u7528\u4f8b\u5217\u8868\uff0c\u5168\u9009\u518d\u5c06\u90e8\u5206\u7528\u4f8b\u53d6\u6d88\u52fe\u9009\uff0c\u70b9\u51fb\u6279\u91cf\u5220\u9664\u540e\u4ecd\u4f1a\u5220\u9664\u6240\u6709\u7528\u4f8b\u7684\u95ee\u9898\uff08GitHub #20553\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u63a5\u53e3\u7f16\u8f91\uff0c\u5f00\u542f\u540c\u6b65case\u6216\u8005\u53d8\u66f4\u901a\u77e5\u4fdd\u5b58\u540e\u62a5\u9519\u7684\u95ee\u9898\uff08GitHub #20376\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u573a\u666f\u6d4b\u8bd5\u62a5\u544a\u5bfc\u51fa\u7684PDF\u6587\u4ef6\u67e5\u770b\u65f6\u6bd4\u8f83\u6a21\u7cca\u7684\u95ee\u9898\uff08GitHub #20738\uff09
    • fix\uff08\u63a5\u53e3\u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u73af\u5883\u914d\u7f6e\u91cc\u9762\u7684\u8bf7\u6c42\u5934Cookie\u548c\u5355\u4e2a\u63a5\u53e3\u91cc\u9762\u8bf7\u6c42\u5934\u51b2\u7a81\u7684\u95ee\u9898\uff08GitHub #20467\uff09
    • fix\uff08UI\u6d4b\u8bd5\uff09\uff1a\u4fee\u590dUI\u8fdb\u884cdiv\u5143\u7d20\u62d6\u62fd\u65f6\u81ea\u52a8\u5168\u5c4f\uff0c\u90e8\u5206\u5143\u7d20\u5b9a\u4f4d\u8def\u5f84\u65e0\u6cd5\u8bc6\u522b\u7684\u95ee\u9898\uff08GitHub #20447\uff09
    • fix\uff08\u6027\u80fd\u6d4b\u8bd5\uff09\uff1a\u4fee\u590d\u6027\u80fd\u6d4b\u8bd5\u8bbe\u7f6e\u5b8c\u8d44\u6e90\u6c60\u4e2d\u538b\u529b\u673a\u7684\u6700\u5927\u5e76\u53d1\u6570\uff0c\u538b\u6d4b\u6267\u884c\u65f6\u6ca1\u9650\u5236\u4f4f\u5355\u4e2a\u538b\u529b\u673a\u7684\u6700\u5927\u5e76\u53d1\u6570\u7684\u95ee\u9898\uff08GitHub - #20103\uff09
    • fix\uff08\u901a\u7528\u529f\u80fd\uff09\uff1a\u4fee\u590d\u4efb\u52a1\u4e2d\u5fc3\u63a5\u53e3\u8bf7\u6c42\u65f6\u95f4\u957f\uff0c\u5bfc\u81f4\u4efb\u52a1\u4e2d\u5fc3\u8bbf\u95ee\u65f6\u7a7a\u767d\u9875\u7ecf\u5e38\u51fa\u73b0\u7684\u95ee\u9898\uff08GitHub #20425\uff09
    "},{"location":"about/changelog/#v241","title":"v2.4.1","text":"

    2022\u5e7412\u67088\u65e5

    \u529f\u80fd\u4f18\u5316

    • feat(\u63a5\u53e3\u6d4b\u8bd5): HTTP\u90e8\u5206\u53c2\u6570\u5217\u652f\u6301\u53ef\u914d\u7f6e
    • refactor(\u63a5\u53e3\u8bbe\u7f6e): \u4f18\u5316\u56fd\u9645\u5316\u663e\u793a
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u4f18\u5316\u5927\u91cf\u7528\u4f8b\u6267\u884c\u5b58\u50a8\u6548\u7387
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u7f3a\u9677\u5217\u8868\u9875\u9762\u6e32\u67d3\u6027\u80fd\u4f18\u5316
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u573a\u666f\u6b65\u9aa4\u89e3\u6790\u4f18\u5316\u7edf\u4e00\u89e3\u6790\u65b9\u5f0f
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u517c\u5bb9\u5386\u53f2\u6267\u884c\u7ed3\u679c\u5904\u7406\u65e5\u5fd7\u4e2d\u51fa\u73b0\u5f02\u5e38\u95ee\u9898#20236
    • style(\u63a5\u53e3\u6d4b\u8bd5): \u63a5\u53e3\u7f16\u8f91\u9875\u9762\u9875\u5934\u90e8\u5206\u6837\u5f0f\u4f18\u5316

    \u95ee\u9898\u4fee\u590d

    • fix(UI\u81ea\u52a8\u5316): \u5173\u8054\u4e00\u4e2aui\u573a\u666f\u7528\u4f8b\uff0c\u6ca1\u6709\u6267\u884c\uff0c\u6d4b\u8bd5\u8ba1\u5212\u7684\u6d4b\u8bd5\u8fdb\u5ea6\u53d8\u6210100%\u4e86
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dcase\u7f16\u8f91\u65f6\u65e5\u5fd7\u4e2d\u51fa\u73b0\u5f02\u5e38\u4fe1\u606f
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u89e3\u51b3har\u6587\u4ef6\u5bfc\u5165\u62a5\u9519\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dswagger\u5bfc\u5165\u5931\u8d25\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u5f15\u7528\u7684case\u4ecd\u53ef\u4ee5\u7f16\u8f91\u53c2\u6570\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u5d4c\u5957\u4e8b\u52a1\u62c6\u5206\uff0c\u89e3\u51b3\u5e76\u53d1\u8fc7\u7a0b\u53ef\u80fd\u4ea7\u751f\u6b7b\u9501\u7684\u65b9\u6cd5
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u6d4b\u8bd5\u90e8\u5206tcp\u54cd\u5e94\u4f53\u5185\u4f9d\u7136\u5305\u542burl\u7b49\u975etcp\u4fe1\u606f\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u573a\u666f\u5220\u9664\u590d\u5236\u7684case\uff0c\u522b\u7684\u6b65\u9aa4\u7684\u65ad\u8a00\u548c\u524d\u540e\u7f6e\u64cd\u4f5c\u4e5f\u88ab\u5220\u9664\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u5b9a\u4e49\u6267\u884c\u65f6string\u53d6\u679a\u4e3e\u503c\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u5386\u53f2\u573a\u666f\u7684\u590d\u5236\u7684\u63a5\u53e3\u65e0\u6cd5\u53e6\u5b58\u4e3acase\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u4efb\u52a1\u4e2d\u5fc3\u6761\u4ef6\u5207\u6362\u4e0d\u5237\u65b0\u7edf\u8ba1\u72b6\u6001\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u573a\u666f\u62a5\u544a\u540d\u79f0\u5e26\u7279\u6b8a\u5b57\u7b26\u5bfc\u51fa\u5931\u8d25\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u540c\u540d\u6570\u636e\u6e90\u6267\u884c\u8fc7\u7a0b\u4ea7\u751f\u5927\u91cf\u9519\u8bef\u65e5\u5fd7\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u573a\u666f\u5f15\u7528\u591a\u4e2a\u4e8b\u52a1\u63a7\u5236\u5668\u72b6\u6001\u663e\u793a\u9519\u8bef\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u6587\u6863\u54cd\u5e94\u4f53\u90e8\u5206\u5b57\u6bb5\u6ca1\u6709\u683c\u5f0f\u5316\u89e3\u6790\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u6d4b\u8bd5\u6587\u6863\u6837\u5f0f\u4fee\u6539\u4e2d\u51fa\u73b0\u7684\u90e8\u5206\u6570\u636e\u4e0d\u663e\u793a\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u63a5\u53e3\u6d4b\u8bd5\u90e8\u5206\u53c2\u6570\u6837\u5f0f\u6539\u4e3a\u8868\u683c\uff0c\u5e76\u9488\u5bf9\u4e00\u7cfb\u5217\u95ee\u9898\u6c47\u603b\u8fdb\u884c\u4f18\u5316
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u573a\u666f\u4e2d\u6279\u91cf\u5220\u9664\u590d\u5236\u7684case\u6b65\u9aa4\u65f6\uff0c\u524d\u540e\u7f6e\u64cd\u4f5c\uff0c\u65ad\u8a00\u4e5f\u88ab\u5220\u9664\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u7528\u4f8b\u9644\u4ef6\u88ab\u76f4\u63a5\u5220\u9664\u6f0f\u6d1e
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u8bbe\u7f6e\u5bfc\u5165\u63a5\u53e3\u6216\u7528\u4f8b\u9ed8\u8ba4\u542f\u7528\u72b6\u6001
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590d\u65e0xpack\u6743\u9650\u521b\u5efa\u9879\u76ee\u5931\u8d25\u95ee\u9898
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u64cd\u4f5c\u65e5\u5fd7\u5bf9\u8c61\u4e2d\u6dfb\u52a0\u7528\u6237\u7ec4\u548c\u6743\u9650\u9009\u9879
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): Jira\u540c\u6b65\u5168\u91cf\u7f3a\u9677\u5931\u8d25
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212-\u5173\u8054ui-\u6267\u884c\u8ba1\u5212-\u6d4b\u8bd5\u62a5\u544a\u7684id\u4e3a\u7a7a
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7f3a\u9677\u7ba1\u7406\u5bfc\u51faEXCEL\u5355\u5143\u683cTEXT\u957f\u5ea6\u5927\u4e8ePOI\u9650\u5236\u7684\u5355\u5143\u683c\u957f\u5ea6\u65f6\u9519\u8bef
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ddf\u8e2a\u9996\u9875TABLE\u5217\u5bf9\u9f50
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6279\u91cf\u5173\u8054\u9700\u6c42\u5931\u6548
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u7f3a\u9677\u7ba1\u7406\u5173\u8054Azure\u81ea\u5b9a\u4e49\u5b57\u6bb5\u5bfc\u5165\u62a5\u9519
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7981\u7528\u672c\u5730\u6267\u884c\u540e\u53ea\u6709UI\u6d4b\u8bd5\u4e0d\u505a\u6821\u9a8c
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u5bfc\u51fa\u62a5\u9519
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7f3a\u9677\u5bfc\u51fa\u7cfb\u7edf\u72b6\u6001\u5b57\u6bb5\u6709\u8bef
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u529f\u80fd\u7528\u4f8b\u7684\u5173\u8054\u9700\u6c42\u663e\u793a\u6709\u8bef
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7985\u9053\u540c\u6b65\u7f3a\u9677\u540e\u56fe\u7247\u65e0\u6cd5\u5c55\u793a
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7f3a\u9677\u7ba1\u7406\u81ea\u5b9a\u4e49\u5b57\u6bb5\u7b5b\u9009\u65e0\u6548
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4f9d\u8d56\u5173\u7cfb\u56fe\u663e\u793a\u4e86\u4e0b\u5c42\u7684\u5bcc\u6587\u672c\u6846
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u5207\u6362\u6d4b\u8bd5\u8ba1\u5212\u65f6\u641c\u7d22\u6846\u5185\u5bb9\u672a\u91cd\u7f6e
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u5173\u8054\u7f3a\u9677\uff0c\u7528\u4f8b\u5217\u8868\u4e0d\u53ef\u89c1
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6570\u636e\u592a\u591a\u65f6\uff0c\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u5217\u8868\u5185\u5b58\u6ea2\u51fa
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u7528\u4f8b\u5217\u8868\u7f13\u5b58\u641c\u7d22\u6846\u5185\u5bb9\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7985\u9053\u7f3a\u9677\u4e0a\u4f20\u56fe\u7247\u94fe\u63a5\u540e\u540c\u6b65\uff0c\u56fe\u7247\u4e0d\u663e\u793a
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ddf\u8e2a\u9996\u9875\u7a7a\u6570\u636e\u6837\u5f0f\u53ca\u7f3a\u9677\u540c\u6b65\u65f6\u95f4\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u6267\u884c\u5224\u65ad\u6ca1\u6709\u6267\u884c\u8d44\u6e90\u5219\u4e0d\u8c03\u7528\u8be5\u63a5\u53e3
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u5f15\u7528\u573a\u666f\u81ea\u52a8\u5316\u7ffb\u9875\u4fdd\u7559\u9009\u9879\u95ee\u9898
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u56fa\u5b9a\u8282\u70b9\u6216\u81ea\u5b9a\u4e49\u5206\u914d\u7528\u6237\u6570\u65f6\u6700\u5927\u5e76\u53d1\u6570\u4e0d\u80fd\u9650\u5236\u7684\u95ee\u9898
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590d\u73af\u5883\u8bbe\u7f6e\u5386\u53f2\u6570\u636e\u4e0d\u80fd\u7f16\u8f91\u5907\u6ce8\u7684\u7f3a\u9677
    • fix(\u901a\u7528\u529f\u80fd): \u4fee\u590d\u5b9a\u65f6\u4efb\u52a1\u8f93\u5165\u9519\u8bef\u8868\u8fbe\u5f0f\u53cd\u89e3\u6790\u9875\u9762\u5d29\u6e83\u95ee\u9898
    "},{"location":"about/changelog/#v240","title":"v2.4.0","text":"

    2022\u5e7411\u670824\u65e5

    \u65b0\u589e\u529f\u80fd

    • \u6a21\u5757\u9996\u9875 UX \u4ea4\u4e92\u5347\u7ea7
    • \u7f3a\u9677\u7ba1\u7406\u652f\u6301 Excel \u5bfc\u5165/\u5bfc\u51fa\u7f3a\u9677
    • \u6d4b\u8bd5\u8ba1\u5212\u652f\u6301\u533a\u5206\u73af\u5883\u540c\u6b65\u8fd0\u884c
    • \u63a5\u53e3\u6d4b\u8bd5\u652f\u6301\u7981\u7528\u672c\u5730\u6267\u884c \uff08X-Pack \u589e\u5f3a\u5305\u5185\uff09
    • UI \u81ea\u5b9a\u4e49\u6307\u4ee4\u652f\u6301\u53c2\u6570\u5316\u914d\u7f6e\uff08X-Pack \u589e\u5f3a\u5305\u5185\uff09
    • \u5355\u70b9\u767b\u5f55\u65b0\u589e OAuth 2.0 \u534f\u8bae\uff08X-Pack \u589e\u5f3a\u5305\u5185\uff09

    \u529f\u80fd\u4f18\u5316

    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u670d\u52a1\u96c6\u6210\u5bf9\u63a5\u7b2c\u4e09\u65b9\u5e73\u53f0\u63d2\u4ef6\u5316\uff08\u7528\u6237\u53ef\u4ee5\u81ea\u884c\u5bf9\u63a5\u7b2c\u4e09\u65b9\u9879\u76ee\u7ba1\u7406\u5e73\u53f0\uff09
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u6d4b\u8bd5\u8ba1\u5212\u7528\u4f8b\u5217\u8868\u9ad8\u7ea7\u641c\u7d22\u589e\u52a0\u7528\u4f8b\u72b6\u6001\u3001\u5173\u8054\u9700\u6c42\u641c\u7d22
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u6d4b\u8bd5\u8ba1\u5212\u652f\u6301\u6279\u91cf\u5220\u9664\u529f\u80fd
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u573a\u666f\u7528\u4f8b\u4e2d\u590d\u5236\u7684 API \u6b65\u9aa4\u652f\u6301\u53e6\u5b58\u4e3a\u5355\u63a5\u53e3\u7528\u4f8b
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a5\u53e3 CASE \u5f15\u7528\u5173\u7cfb\u67e5\u770b\u4f18\u5316
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a7\u5236\u5668\u5185\u5f15\u7528\u7684\u573a\u666f\u6216\u7528\u4f8b\u652f\u6301\u542f\u7528/\u7981\u7528\u64cd\u4f5c
    • UI\u6d4b\u8bd5\uff1aUI \u6d4b\u8bd5\u652f\u6301\u5173\u8054\u201c\u6587\u4ef6\u7ba1\u7406\u201d\u4e2d\u7684\u6587\u4ef6\uff08X-Pack\uff09
    • UI\u6d4b\u8bd5\uff1aUI \u6d4b\u8bd5\u8be6\u60c5\u9875\u652f\u6301\u6279\u91cf\u7f16\u8f91\u64cd\u4f5c\uff08X-Pack\uff09
    • UI\u6d4b\u8bd5\uff1aUI \u6d4b\u8bd5\u652f\u6301\u914d\u7f6e\u662f\u5426\u5ffd\u7565\u8bc1\u4e66\uff08X-Pack\uff09
    • UI\u6d4b\u8bd5\uff1aUI \u6d4b\u8bd5\u652f\u6301\u83b7\u53d6\u9875\u9762\u5143\u7d20\u7684CSS\u5c5e\u6027\uff08X-Pack\uff09
    • \u6027\u80fd\u6d4b\u8bd5\uff1a\u6027\u80fd\u6d4b\u8bd5\u5217\u8868\u589e\u52a0\u8868\u5934\u5b57\u6bb5\u6392\u5e8f
    • \u6027\u80fd\u6d4b\u8bd5\uff1a\u6027\u80fd\u6d4b\u8bd5 Kubernetes \u8d44\u6e90\u6c60\u652f\u6301\u81ea\u5b9a\u4e49 Job \u6a21\u677f\uff08X-Pack\uff09
    • \u6027\u80fd\u6d4b\u8bd5\uff1a\u5b9e\u65f6\u62a5\u544a\u8ba1\u7b97\u4f18\u5316
    • \u901a\u7528\u529f\u80fd\uff1aJenkins \u63d2\u4ef6\u652f\u6301\u53c2\u6570\u5316
    • \u901a\u7528\u529f\u80fd\uff1aJenkins \u63d2\u4ef6\u652f\u6301\u9009\u62e9UI\u6d4b\u8bd5

    \u95ee\u9898\u4fee\u590d

    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u5728\u6d4b\u8bd5\u8ba1\u5212\u8bbe\u7f6e\u5931\u8d25\u91cd\u8bd5\uff0c\u4f46\u6ca1\u6709\u91cd\u65b0\u6267\u884c\u7684\u95ee\u9898\uff08GitHub #19228\uff09
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u7528\u4f8b\u6267\u884c\u7684\u65f6\u5019\u4e0d\u80fd\u5207\u6362\u6b65\u9aa4\u63cf\u8ff0\u7684\u95ee\u9898\uff08GitHub #19851\uff09
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u6d4b\u8bd5\u7528\u4f8b\u81ea\u5b9a\u4e49 ID \u540e\uff0c\u5728\u7528\u4f8b\u8bc4\u5ba1\u5217\u8868\u8fd8\u663e\u793a\u4e3a\u7cfb\u7edf ID \u7684\u95ee\u9898\uff08GitHub #19730\uff09
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u591a\u9879\u76ee\u540c\u540d\u73af\u5883\u53d8\u91cf\u5b58\u5728\u8986\u76d6\u7684\u95ee\u9898\uff08GitHub #19931\uff09
    • fix(UI\u6d4b\u8bd5): \u4fee\u590d UI \u573a\u666f\u8f6c\u4e3a\u6307\u4ee4\u65f6\uff0c\u5bf9\u5e94\u7684 UI \u573a\u666f\u53d8\u91cf\u6ca1\u6709\u540c\u6b65\u8fc7\u53bb\uff0c\u9700\u8981\u624b\u52a8\u91cd\u65b0\u6dfb\u52a0\u7684\u95ee\u9898\uff08GitHub #19424\uff09
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u4fdd\u5b58\u6027\u80fd\u6d4b\u8bd5\u63d0\u793a\u9519\u8bef\u7684\u95ee\u9898\uff08GitHub #19734\uff09
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590d\u6d88\u606f\u901a\u77e5\u4e0d\u80fd\u901a\u77e5\u7f3a\u9677\u5904\u7406\u4eba\u7684\u95ee\u9898\uff08GitHub #19855\uff09
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590d Minio \u6302\u6389\u540e\uff0c\u9875\u9762\u8fd8\u80fd\u4e0a\u4f20\u6587\u4ef6\u7684\u95ee\u9898\uff08GitHub #19860\uff09
    "},{"location":"about/changelog/#v231","title":"v2.3.1","text":"

    2022\u5e7411\u670810\u65e5

    \u529f\u80fd\u4f18\u5316

    • refactor(\u5de5\u4f5c\u53f0): \u66f4\u6539\u6211\u7684\u5f85\u529e\u6d4b\u8bd5\u8ba1\u5212\u5217\u8868\u7b5b\u9009\u6761\u4ef6
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u7edf\u4e00\u4efb\u52a1\u4e2d\u5fc3Jenkins\u8c03\u7528\u72b6\u6001
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u8111\u56fe\u7f3a\u9677\u56fd\u9645\u5316
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u4ee3\u7801\u4f18\u5316
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u589e\u52a0\u7528\u4f8b\u8bc4\u5ba1\u540d\u79f0\u957f\u5ea6\u9650\u5236
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u529f\u80fd\u7528\u4f8b\u8de8\u9879\u76ee\u8df3\u8f6c\u4f18\u5316
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u6ca1\u6709\u63a5\u53e3\u6d4b\u8bd5\u6743\u9650\u7684\u5173\u8054\u8868\u4e0d\u53ef\u4ee5\u70b9\u51fb\u8df3\u8f6c
    • refactor(\u4efb\u52a1\u4e2d\u5fc3): \u4f18\u5316\u4efb\u52a1\u4e2d\u5fc3\u6309\u7167\u4efb\u52a1\u7c7b\u578b\u52a0\u8f7d
    • refactor(\u4efb\u52a1\u4e2d\u5fc3): \u4efb\u52a1\u7edf\u8ba1\u4f18\u5316\u53ea\u7edf\u8ba1\u5df2\u7ecf\u5f00\u59cb\u6267

    \u95ee\u9898\u4fee\u590d

    • fix(\u5de5\u4f5c\u53f0): \u4fee\u590d\u6267\u884c\u5931\u8d25\u5c31\u8fdb\u5165\u5de5\u4f5c\u53f0\u5f85\u66f4\u65b0\u5217\u8868\u95ee\u9898
    • fix(UI\u81ea\u52a8\u5316): jenkins\u6267\u884c-\u6d4b\u8bd5\u62a5\u544a\u5217\u8868\u89e6\u53d1\u65b9\u5f0f\u7f3a\u5c11API\u8c03\u7528
    • fix(UI\u81ea\u52a8\u5316): \u4fee\u590dUI\u64cd\u4f5c\u65e5\u5fd7\u4e0d\u663e\u793a\u95ee\u9898
    • fix(UI\u81ea\u52a8\u5316): \u4fee\u590d\u8bbe\u7f6e\u6a21\u5757\u64cd\u4f5c\u65e5\u5fd7UI\u6620\u5c04\u95ee\u9898
    • fix(UI\u81ea\u52a8\u5316): \u4fee\u590d\u5f00\u6e90\u7248\u4efb\u52a1\u4e2d\u5fc3\u62a5\u9519\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u590d\u5236\u6d4b\u8bd5\u8ba1\u5212\u6ca1\u6709\u64cd\u4f5c\u65e5\u5fd7\u7684\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u7f3a\u9677\u72b6\u6001\u7edf\u8ba1\u4e0d\u51c6\u786e
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u9996\u9875\u9057\u7559\u7f3a\u9677\u7edf\u8ba1\u603b\u6570\u548c\u5360\u6bd4\u7edf\u8ba1
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u516c\u5171\u7528\u4f8b\u5e93\u7248\u672c\u5b57\u6bb5\u4e0d\u652f\u6301\u7b5b\u9009\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u67e5\u770b\u63a5\u53e3\u6587\u6863\u9875\u9762\u62a5\u9519\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u6267\u884c\u573a\u666f\uff0c\u901a\u8fc7\u7387\u4e0d\u66f4\u65b0\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u73af\u5883\u914d\u7f6e\u5168\u5c40\u8ba4\u8bc1\u4e0d\u751f\u6548\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u5f15\u7528\u573a\u666f\u6b65\u9aa4\u80fd\u6dfb\u52a0\u540c\u7ea7\u6b65\u9aa4\u95ee\u9898
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590dtcp\u6267\u884c\u6ca1\u6709\u63d0\u793a\u9009\u62e9\u73af\u5883\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u81ea\u5b9a\u4e49\u8bf7\u6c42\u6267\u884c\u53d8\u91cf\u503c\u7f3a\u5931\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u63a5\u53e3\u5b9a\u4e49\u65b0\u503c\u548c\u65e7\u503c\u663e\u793a\u4e00\u6837\u7684\u7f3a\u9677
    • fix(\u4efb\u52a1\u4e2d\u5fc3): \u4fee\u590dui\u6d4b\u8bd5\u4efb\u52a1\u6ca1\u6709\u5206\u9875\u95ee\u9898
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u66f4\u6362\u7cfb\u7edfLOGO\u540e\u4e0d\u751f\u6548
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u64cd\u4f5c\u65e5\u5fd7\u64cd\u4f5c\u5bf9\u8c61\u73af\u5883\u8bbe\u7f6e\u66f4\u6539\u540d\u79f0\u4e3a\u73af\u5883\u7ba1\u7406
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u64cd\u4f5c\u65e5\u5fd7\u4e2d\u64cd\u4f5c\u5bf9\u8c61\u7f3a\u5c11\u5de5\u4f5c\u7a7a\u95f4\u7684\u73af\u5883\u7ba1\u7406\u6a21\u5757
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590d\u6d88\u606f\u901a\u77e5\u63a5\u53e3\u5b9a\u4e49API\u66f4\u65b0\u4e8b\u4ef6\u4e00\u4e9b\u6a21\u7248\u5b57\u6bb5\u83b7\u53d6\u4e0d\u5230\u503c\u95ee\u9898
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u7f16\u8f91\u6a21\u677f\u81ea\u5b9a\u4e49\u5b57\u6bb5\u9ed8\u8ba4\u503c\uff0c\u6587\u672c\u8fc7\u5927\u65e0\u6cd5\u7f16\u8f91
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u663e\u793a\u62a5\u544a\u65f6\u6d4b\u8bd5\u8be6\u60c5\u7a7a\u767d\u7684\u95ee\u9898
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u589e\u52a0\u4e86\u81ea\u5b9a\u4e49\u76d1\u63a7\u65f6\u4e0d\u80fd\u6b63\u5e38\u663e\u793a\u76d1\u63a7\u7684\u95ee\u9898
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u7f16\u8f91\u6d4b\u8bd5\u65f6\u5220\u9664\u6587\u4ef6\u540e\u4e0d\u80fd\u7ee7\u7eed\u5bfc\u5165\u540c\u540d\u6587\u4ef6\u7684\u95ee\u9898
    • fix(\u62a5\u544a\u7edf\u8ba1): \u4fee\u590d\u5173\u95ed\u5b9a\u65f6\u4efb\u52a1\u63d0\u793a\u6846\u63d0\u793a\u9519\u8bef\u7684\u95ee\u9898
    • fix(\u62a5\u544a\u7edf\u8ba1): \u6d4b\u8bd5\u7528\u4f8b\u8d8b\u52bf\u62a5\u8868\u67e5\u770b\u9879\u76ee\u4e0d\u518d\u4ee5\u5de5\u4f5c\u7a7a\u95f4\u4e3a\u6761\u4ef6
    "},{"location":"about/changelog/#v230","title":"v2.3.0","text":"

    2022\u5e7410\u670827\u65e5

    \u65b0\u589e\u529f\u80fd

    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u589e\u52a0 XML \u6587\u672c\u81ea\u52a8\u683c\u5f0f\u5316\u529f\u80fd
    • \u63a5\u53e3\u6d4b\u8bd5\uff1aMOCK \u53d8\u66f4\u589e\u52a0\u6d88\u606f\u901a\u77e5
    • \u7f3a\u9677\u7ba1\u7406\uff1a\u652f\u6301\u589e\u91cf\u540c\u6b65\u7b2c\u4e09\u65b9\u5e73\u53f0\u7f3a\u9677

    \u529f\u80fd\u4f18\u5316

    • \u67b6\u6784\u5347\u7ea7\uff1a\u5fae\u670d\u52a1\u6539\u9020
    "},{"location":"about/changelog/#v221","title":"v2.2.1","text":"

    2022\u5e7411\u67082\u65e5

    \u529f\u80fd\u4f18\u5316

    • refactor(\u6027\u80fd\u6d4b\u8bd5): \u6027\u80fd\u6d4b\u8bd5\u53bb\u6389\u6587\u4ef6\u4e0a\u4f20\u6570\u91cf\u7684\u9650\u5236
    • refactor: \u524d\u7aef\u8f93\u5165\u6846Mock\u8865\u5168JMeter\u5185\u7f6e\u51fd\u6570\u7684\u63d0\u793a

    \u95ee\u9898\u4fee\u590d

    • fix(UI\u81ea\u52a8\u5316): \u89e3\u51b3UI\u5e76\u53d1\u62a5\u544a\u90e8\u5206\u672a\u6267\u884c\u95ee\u9898
    • fix(UI\u81ea\u52a8\u5316): \u89e3\u51b3UI\u62a5\u544a\u6267\u884c\u65f6\u95f4\u548c\u672a\u6267\u884c\u5217\u8868\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): Jira\u540c\u6b65\u7ecf\u529e\u4eba\u53ca\u9879\u76ee\u96c6\u5b57\u6bb5\u6709\u8bef (#18282)
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u8bc4\u5ba1\u8bc4\u8bba\u663e\u793a\u95ee\u9898 (#18206)
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): Jira\u6ca1\u52fe\u9009\u7b2c\u4e09\u65b9\u6a21\u677f\uff0c\u63d0\u4ea4\u7f3a\u9677\u56fe\u7247\u4e0d\u663e\u793a
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7528\u4f8b\u8bc4\u5ba1ID\u6392\u5e8f\u663e\u793a\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4f9d\u8d56\u5173\u7cfb\u5217\u8868\u5e03\u5c40\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u529f\u80fd\u7528\u4f8b\u5bfc\u51fa\u4e71\u5e8f\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4f18\u5316\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u67e5\u770b\u901f\u5ea6
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u529f\u80fd\u7528\u4f8b\u8bc4\u5ba1\u72b6\u6001\u7b5b\u9009\u5931\u6548
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u8bc4\u5ba1\u7528\u4f8b\u5168\u9009\u6279\u91cf\u7f16\u8f91\u7b5b\u9009\u5931\u6548
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u53ca\u7528\u4f8b\u8bc4\u5ba1\u4f9d\u8d56\u5173\u7cfb\u7684\u663e\u793a\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u6267\u884c\u573a\u666f\u65f6\u62a5\u544a\u5185\u5bb9\u4e3a\u7a7a\u7684\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u81ea\u5b9a\u4e49\u5b57\u6bb5\u9ad8\u7ea7\u641c\u7d22\u7ed3\u679c\u6709\u591a\u6761\u4f1a\u62a5\u9519
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u5173\u8054Jira\u5e73\u53f0\u4f7f\u7528\u9ed8\u8ba4\u6a21\u677f\u4fee\u6539\u5e73\u53f0\u72b6\u6001\u62a5\u9519\u95ee\u9898
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u63a5\u53e3\u5b9a\u4e49\u4fdd\u5b58\u62a5\u9519\u7684\u7f3a\u9677 (#18258)
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590dcase\u7f16\u8f91\u9875\u9762\u81ea\u5b9a\u4e49\u5b57\u6bb5\u5bcc\u6587\u672c\u5e93\u906e\u6321\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u5faa\u73af\u63a7\u5236\u5668\u4e0b\u573a\u666f\u53d8\u91cfcsv\u53d6\u503c\u4e0d\u5bf9\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u62a5\u544a\u91cd\u7f6e\u89e6\u53d1\u65b9\u5f0f\u9875\u9762\u62a5\u9519\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u5bfc\u5165\u7684\u63a5\u53e3\u5b9a\u4e49\u65e0\u6cd5\u6dfb\u52a0\u6587\u4ef6\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u6587\u6863\u7b5b\u9009\u4e0d\u751f\u6548\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u573a\u666f\u521b\u5efa\u65b0\u7248\u672c\uff0c\u4e0d\u663e\u793a\u521b\u5efa\u4eba\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u63a5\u53e3\u5b9a\u4e49\u81ea\u5b9a\u4e49\u5b57\u6bb5\u8f93\u5165\u6846\uff0c\u8f93\u5165\u957f\u5b57\u7b26\u4fdd\u5b58\u62a5\u9519\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u6d4b\u8bd5): get\u65b9\u5f0f\u7684mock\u63a5\u53e3\uff0c\u4e0d\u8bbe\u7f6e\u4efb\u4f55\u5339\u914d\u6761\u4ef6\u65f6\uff0c\u54cd\u5e94\u4f53\u4e3a\u7a7a
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u89e3\u51b3\u63a5\u53e3API\u70b9\u51fb\u4fdd\u5b58\u4e00\u952e\u540c\u6b65\u529f\u80fd\u5bfc\u81f4\u63a5\u53e3case\u53c2\u6570\u65e0\u6cd5\u65b0\u589e\u548c\u8986\u76d6\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u89e3\u51b3\u63a5\u53e3swagger\u6587\u4ef6\u5bfc\u5165\u89e3\u6790\u9519\u8bef\u95ee\u9898\u4ee5\u53ca\u975eHTTP\u534f\u8bae\u8986\u76d6\u6a21\u5757\u5bfc\u5165\u62a5\u9519\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u89e3\u51b3\u573a\u666f\u7f16\u8f91-\u63a5\u53e3\u5217\u8868\u5bfc\u5165-\u5207\u6362\u5de5\u4f5c\u7a7a\u95f4\u540e\u70b9\u51fb\u6a21\u5757-\u6a21\u5757\u6811\u53d1\u751f\u53d8\u66f4\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u573a\u666f\u6b65\u9aa4\u62d6\u62fd\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u6539\u8ba1\u7b97\u63a5\u53e3\u8986\u76d6\u7387\u7684\u903b\u8f91
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u5f15\u7528\u573a\u666f\u6b65\u9aa4\u80fd\u6dfb\u52a0\u540c\u7ea7\u6b65\u9aa4\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u63a5\u53e3\u5b9a\u4e49\u6587\u6863\u7684\u9ad8\u7ea7\u8bbe\u7f6e\u4e00\u952e\u5c55\u5f00\u529f\u80fd\u589e\u52a0\u5bf9jsonschema\u8282\u70b9\u7684\u5c55\u5f00
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u6d4b\u8bd5\u62a5\u544a\u4e2d\u63a5\u53e3\u7528\u4f8b\u89e6\u53d1\u65b9\u5f0f\u8bc6\u522b\u4e0d\u51fajenkins\u6267\u884c\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u7528\u4f8b\u6309\u7167\u6267\u884c\u72b6\u6001\u67e5\u8be2\u65f6\u5bf9\u505c\u6b62\u72b6\u6001\u7684\u6570\u636e\u5f52\u7c7b\u9519\u8bef\u7684\u95ee\u9898
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u6587\u4ef6\u5e93\u8282\u70b9\u7684token\u8f93\u5165\u6846\u6539\u4e3a\u5bc6\u7801\u6846\uff0ctoken\u4e0d\u4f1a\u660e\u6587\u5c55\u793a
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u81ea\u5b9a\u4e49\u5b57\u6bb5\u4f7f\u7528\u573a\u666f\u7b5b\u9009\uff0c\u7f3a\u5c11\u6d4b\u8bd5\u8ba1\u5212\u9009\u9879
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590d\u7cfb\u7edf\u8bbe\u7f6e\u7f16\u8f91\u9879\u76ee\u8bbe\u7f6e\u9009\u62e9\u63a5\u53e3\u6a21\u7248\u4e0d\u751f\u6548\u7684\u7f3a\u9677 (#18253)
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u89e3\u51b3\u53ea\u6388\u4e88\u4e2a\u4eba\u4fe1\u606f-ui\u8bbe\u7f6e\u6743\u9650\u65f6\uff0c\u4e2a\u4eba\u4fe1\u606f\u5f39\u6846\u70b9\u4e0d\u5f00\u7684\u95ee\u9898
    • fix(\u6d88\u606f\u901a\u77e5): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u53d1\u9001\u901a\u77e5\u53d8\u91cf\u83b7\u53d6\u7684\u95ee\u9898
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u5728\u5f39\u6846\u4e2d\u4fee\u6539\u5b9a\u65f6\u4efb\u52a1\u72b6\u6001\u4e0d\u751f\u6548\u7684\u95ee\u9898
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u573a\u666f\u6279\u91cf\u8f6c\u6210\u6027\u80fd\u6d4b\u8bd5\u65f6\u91cd\u590d\u5bfc\u5165\u7684\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ba1\u5212): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u8df3\u8f6c\u573a\u666f\u63d0\u793a\u573a\u666f\u88ab\u5220\u9664\u7684\u7f3a\u9677

    \u6f0f\u6d1e\u4fee\u590d

    • \u672c\u6b21\u5347\u7ea7\u5305\u62ec\u4fee\u590dshiro\u7684\u5b89\u5168\u6f0f\u6d1e\uff0c\u8bf7\u5c3d\u5feb\u5347\u7ea7
    "},{"location":"about/changelog/#v220","title":"v2.2.0","text":"

    2022\u5e749\u670822\u65e5

    \u65b0\u589e\u529f\u80fd

    • \u63a5\u53e3\u6d4b\u8bd5\u652f\u6301\u81ea\u5b9a\u4e49\u6a21\u677f
    • UI \u6d4b\u8bd5\u652f\u6301\u81ea\u5b9a\u4e49\u7ec4\u5408\u6307\u4ee4(X-Pack \u589e\u5f3a\u5305\u5185)
    • \u6587\u4ef6\u7ba1\u7406\u652f\u6301\u5bf9\u63a5\u7b2c\u4e09\u65b9\u4ed3\u5e93(X-Pack\u589e\u5f3a\u5305\u5185)

    \u529f\u80fd\u4f18\u5316

    • \u6d4b\u8bd5\u8ddf\u8e2a: \u6d4b\u8bd5\u8ba1\u5212/\u7528\u4f8b\u8bc4\u5ba1\u9875\u7528\u4f8b\u6807\u9898\u5c55\u793a\u4f18\u5316
    • \u63a5\u53e3\u6d4b\u8bd5: \u63a5\u53e3 CASE \u9ad8\u7ea7\u641c\u7d22\u589e\u52a0\u8def\u5f84\u641c\u7d22
    • \u63a5\u53e3\u6d4b\u8bd5: TCP \u534f\u8bae\u652f\u6301\u4e00\u952e\u5c06 xml \u6587\u672c\u683c\u5f0f\u8f6c\u6362\u6210\u8868\u683c\u683c\u5f0f
    • UI\u6d4b\u8bd5: \u5217\u8868\u6279\u91cf\u6267\u884c\u4e0e\u6d4b\u8bd5\u8ba1\u5212\u6267\u884c\u65f6\u589e\u52a0\u5931\u8d25\u91cd\u8bd5\u673a\u5236(X-Pack)
    • UI\u6d4b\u8bd5: \u6d4b\u8bd5\u62a5\u544a\u652f\u6301\u4e00\u952e\u5206\u4eab(X-Pack)
    • UI\u6d4b\u8bd5: UI \u573a\u666f\u652f\u6301\u67e5\u770b\u88ab\u5f15\u7528\u5217\u8868(X-Pack)
    • UI\u6d4b\u8bd5: \u652f\u6301\u5728\u914d\u7f6e\u6587\u4ef6\u4e2d\u914d\u7f6e\u6d4f\u89c8\u5668\u7684\u9ed8\u8ba4\u5206\u8fa8\u7387(X-Pack)
    • \u7cfb\u7edf\u8bbe\u7f6e: \u6d88\u606f\u901a\u77e5\u6a21\u677f\u65b0\u589e\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u76f8\u5173\u5b57\u6bb5(X-Pack)
    • \u901a\u7528\u529f\u80fd: \u7248\u672c\u7b5b\u9009\u652f\u6301\u624b\u52a8\u5f55\u5165\u7248\u672c\u53f7(X-Pack)

    \u95ee\u9898\u4fee\u590d

    • \u6d4b\u8bd5\u8ddf\u8e2a: \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u70b9\u51fb\u540d\u79f0\u94fe\u63a5\u4f1a\u76f4\u63a5\u8df3\u8f6c\u5230\u63a5\u53e3\u7528\u4f8b\u6216\u8005\u573a\u666f\u7528\u4f8b\u8be6\u60c5\u9875\u7684\u95ee\u9898(GitHub #17993)
    • \u6d4b\u8bd5\u8ddf\u8e2a: \u4fee\u590d\u6d4b\u8bd5\u8ddf\u8e2a\u9996\u9875\u672a\u8bc4\u5ba1\u201c\u6570\u91cf\u201d\u3001\u8986\u76d6\u201c\u6570\u91cf\u201d\u4e0e\u8df3\u8f6c\u540e\u5217\u8868\u7528\u4f8b\u6570\u91cf\u4e0d\u4e00\u81f4\u7684\u95ee\u9898(GitHub #17910)
    • \u6d4b\u8bd5\u8ddf\u8e2a: \u4fee\u590d\u9879\u76ee\u81ea\u5b9a\u4e49 ID \u5f00\u542f\u5bfc\u5165\u663e\u793a\u7684\u662f\u7cfb\u7edf\u9ed8\u8ba4 ID \u7684\u95ee\u9898(GitHub #17928)
    • \u63a5\u53e3\u6d4b\u8bd5: \u4fee\u590d\u73af\u5883\u53d8\u91cf\u4f18\u5148\u7ea7\u5927\u4e8e\u573a\u666f\u53d8\u91cf\u7684\u95ee\u9898(GitHub #17873)
    • \u63a5\u53e3\u6d4b\u8bd5: \u4fee\u590d\u63a5\u53e3\u81ea\u52a8\u5316\u7f16\u8f91\u573a\u666f\u4fdd\u5b58\u540e\uff0c\u5217\u8868\u4e2d\u201c\u901a\u8fc7\u7387\u201d\u672a\u66f4\u65b0\u7684\u95ee\u9898(GitHub #17784)
    • UI\u6d4b\u8bd5: \u4fee\u590d UI \u81ea\u52a8\u5316\u573a\u666f\u91cc\u590d\u5236\u5bfc\u5165\u4e86\u5df2\u6709\u573a\u666f\uff0c\u5bfc\u81f4\u573a\u666f\u4ee5\u53ca\u5b50\u573a\u666f\u8c03\u8bd5\u6a21\u5f0f\u548c\u6d4b\u8bd5\u8ba1\u5212\u91cc\u4e0d\u4f1a\u88ab\u6267\u884c\u7684\u95ee\u9898(GitHub #17649)
    • UI\u6d4b\u8bd5: \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u4e2d\u5b9a\u65f6\u6267\u884c\u591a\u4e2a UI \u81ea\u52a8\u5316\u573a\u666f\uff0c\u5b58\u5728\u5df2\u6267\u884c\u5931\u8d25\u7684\u573a\u666f\u88ab\u6807\u6ce8\u4e3a\u201c\u672a\u6267\u884c\u201d\u7684\u95ee\u9898(GitHub #17649)
    "},{"location":"about/changelog/#v210","title":"v2.1.0","text":"

    2022\u5e748\u670825\u65e5

    \u65b0\u589e\u529f\u80fd

    • UI\u6d4b\u8bd5\u8986\u76d6\u7ed8\u56fe\u6838\u5fc3\u573a\u666f
    • \u529f\u80fd\u7528\u4f8b\u652f\u6301\u81ea\u5b9a\u4e49\u5b57\u6bb5\u5bfc\u5165\u3001\u5bfc\u51fa
    • \u6587\u4ef6\u7ba1\u7406\u91cd\u6784

    \u529f\u80fd\u4f18\u5316

    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u529f\u80fd\u6d4b\u8bd5\u7528\u4f8b\u6a21\u677f\u5bfc\u5165\u4f18\u5316
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u63a5\u53e3\u5bfc\u5165\u66f4\u65b0\u589e\u52a0\u6d88\u606f\u901a\u77e5
    • \u63a5\u53e3\u6d4b\u8bd5\uff1aAPI\u6587\u6863\u5c55\u793a\u4f18\u5316\u652f\u6301\u5c55\u793a\u9ad8\u7ea7\u8bbe\u7f6e
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u573a\u666f\u53d8\u91cf\u652f\u6301\u67e5\u8be2\u4ee5\u53ca\u5bfc\u5165\u5bfc\u51fa
    • UI\u6d4b\u8bd5\uff1a\u652f\u6301\u4efb\u610f\u4f4d\u7f6e\u6dfb\u52a0\u622a\u56fe\u6b65\u9aa4(X-Pack)
    • UI\u6d4b\u8bd5\uff1a\u8f93\u5165\u6b65\u9aa4\u652f\u6301\u952e\u76d8\u529f\u80fd\u952e(X-Pack)
    • \u9879\u76ee\u8bbe\u7f6e\uff1a\u652f\u6301\u4e8c\u7ea7\u83dc\u5355\u6743\u9650\u7ba1\u63a7
    • \u9879\u76ee\u8bbe\u7f6e\uff1a\u73af\u5883\u914d\u7f6e\u4e2d\u5168\u5c40\u53d8\u91cf\u652f\u6301\u67e5\u8be2\u4ee5\u53ca\u5bfc\u5165\u5bfc\u51fa
    • \u7cfb\u7edf\u8bbe\u7f6e\uff1aOIDC\u548cCAS\u8ba4\u8bc1\u652f\u6301\u914d\u7f6e Callback URL

    \u95ee\u9898\u4fee\u590d

    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u8868\u683c\u7528\u4f8b\u5bfc\u5165\u66f4\u65b0\uff0c\u63d0\u793a\u66f4\u65b0\u6210\u529f\uff0c\u4f46\u662f\u5185\u5bb9\u6ca1\u6709\u66f4\u65b0\u7684\u95ee\u9898\uff08GitHub - #17077\uff09
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u7f3a\u9677\u7ba1\u7406\u7684\u9ad8\u7ea7\u641c\u7d22\u4e2d\u521b\u5efa\u4eba\u65e0\u6cd5\u5217\u51fa\u6240\u6709\u9879\u76ee\u6210\u5458\u7684\u95ee\u9898\uff08GitHub - #16974\uff09
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u4ee3\u7801\u7247\u6bb5\u4e2d\u5bfc\u5165python ssl\u6a21\u5757\u5728\u5347\u7ea7\u52302.0.1\u540e\u6267\u884c\u51fa\u9519\u7684\u95ee\u9898\uff08GitHub - #16945\uff09
    • fix(UI\u6d4b\u8bd5): \u4fee\u590dUI\u81ea\u52a8\u5316\u70b9\u51fb\u540e\u7aef\u8c03\u8bd5\u4e0e\u751f\u6210\u62a5\u544a\u6267\u884c\u7ed3\u679c\u4e0d\u4e00\u81f4\u7684\u95ee\u9898\uff08GitHub #16523\uff09
    • fix(UI\u6d4b\u8bd5): \u4fee\u590dUI\u81ea\u52a8\u5316\u573a\u666f\u65b0\u590d\u5236\u7684\u573a\u666f\u65e0\u521b\u5efa\u4eba\u4fe1\u606f\u7684\u95ee\u9898\uff08GitHub #16732\uff09
    • fix(\u9879\u76ee\u8bbe\u7f6e): \u4fee\u590d\u6d88\u606f\u8bbe\u7f6e\u65b0\u5efa\u7f3a\u9677\u7684\u63a5\u6536\u4eba\u662f\u5904\u7406\u4eba\u4f46\u5728\u6d88\u606f\u901a\u77e5\u65f6\u6ca1\u6709@\u5904\u7406\u4eba\u7684\u95ee\u9898\uff08GitHub #16751\uff09
    "},{"location":"about/changelog/#v201","title":"v2.0.1","text":"

    2022\u5e748\u67084\u65e5

    \u529f\u80fd\u4f18\u5316

    • feat(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u4fdd\u5b58\u7684\u8fd0\u884c\u73af\u5883\u56de\u663e\uff0c\u5e76\u4e14\u4f5c\u4e3a\u5f53\u524d\u8ba1\u5212\u4e0b\u6240\u6709\u7528\u4f8b\u7684\u73af\u5883\u7684\u9ed8\u8ba4\u503c
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u8c03\u6574UI\u548c\u6027\u80fd\u7684\u987a\u5e8f
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u5220\u9664\u529f\u80fd\u4e8c\u6b21\u63d0\u9192\u5f39\u6846\u4fe1\u606f\u4f18\u5316
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u4fdd\u5b58\u7684\u8fd0\u884c\u73af\u5883\u540e\u5237\u65b0\u5217\u8868
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u81ea\u5b9a\u4e49\u5b57\u6bb5\u4e0b\u62c9\u6846\u9009\u9879\u88ab\u5220\u9664\u5219\u7f6e\u7a7a
    • refactor(\u63a5\u53e3\u6d4b\u8bd5): \u6539\u6210\u540c\u6b65\u53d1\u9001\u6267\u884c\u6307\u4ee4\uff0c\u8c03\u6574\u8fde\u63a5\u53c2\u6570
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u4f18\u5316\u6d4b\u8bd5\u8ba1\u5212\u8fd0\u884c\u68c0\u67e5\u53ef\u6267\u884c\u7528\u4f8b\u7684\u65b9\u6cd5 (#16525)
    • refactor(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u4fdd\u5b58\u7684\u914d\u7f6e\u4fe1\u606f\u7684\u8fd0\u884c\u73af\u5883\u4fe1\u606f\u7528\u4e8e\u9ed8\u8ba4\u503c
    • style(\u63a5\u53e3\u6d4b\u8bd5): \u4f18\u5316mock\u671f\u671b\u5220\u9664\u65f6\u7684\u63d0\u793a\u8bed
    • style(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u6d4b\u8bd5\u9996\u9875swagger\u8df3\u8f6c\u7684\u95ee\u9898
    • style(\u63a5\u53e3\u6d4b\u8bd5): \u573a\u666f\u5bfc\u5165\u529f\u80fd\uff0c\u9875\u9762\u6837\u5f0f\u8c03\u6574
    • style(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u6d4b\u8bd5\u9996\u9875\u7528\u4f8b\u6570\u91cf\u7edf\u8ba1\u9875\u7b7e\u7edf\u8ba1\u8f83\u6162\u7684\u95ee\u9898
    • style(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u6d4b\u8bd5\u9996\u9875\u672a\u8986\u76d6\u63a5\u53e3\u8df3\u8f6c\u65f6\u6570\u636e\u6ca1\u6709\u5237\u65b0\u7684\u95ee\u9898
    • style(\u62a5\u8868\u7edf\u8ba1): \u4f18\u5316\u6d4b\u8bd5\u7528\u4f8b\u7edf\u8ba1\u56fe\u8868\u6700\u5927\u5316\u65f6\u7684\u5c55\u793a

    \u95ee\u9898\u4fee\u590d

    • fix(UI\u81ea\u52a8\u5316): UI \u6d4b\u8bd5\u4e0d\u8d70\u8d44\u6e90\u6c60
    • fix(UI\u81ea\u52a8\u5316): \u6d4b\u8bd5\u8ba1\u5212 UI \u6d4b\u8bd5\u7ed3\u679c\u4e0e\u603b\u62a5\u544a\u7ed3\u679c\u4e0d\u540c\u6b65
    • fix(UI\u81ea\u52a8\u5316): \u5173\u8054\u672a\u6267\u884c\u7684ui\u573a\u666f\u67e5\u770b\u5b9e\u65f6\u62a5\u544a\u4e0d\u5c55\u793a\u6d4b\u8bd5\u7ed3\u679c\u6570\u636e
    • fix(UI\u81ea\u52a8\u5316): \u5bfc\u51fa\u6d4b\u8bd5\u62a5\u544a\uff0c\u65e0\u6cd5\u67e5\u770bui\u7528\u4f8b\u6267\u884c\u7ed3\u679c
    • fix(UI\u81ea\u52a8\u5316): \u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u6210\u529f\u7387\u663e\u793a\u4e0d\u5bf9
    • fix(UI\u81ea\u52a8\u5316): \u4fee\u590d\u975e\u6027\u80fd\u6a21\u5f0f\u4e0b\u62a5\u544a\u622a\u56fe\u8bed\u8a00\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dcsv\u573a\u666f\u53d8\u91cf\u5c5e\u6027\u56de\u663e\u9519\u8bef\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590dxmind\u89e3\u6790\u4e0d\u652f\u6301xmind\u7ecf\u5178\u7248\u672c\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u5305\u542bexcel\u6587\u4ef6\u7684\u8bf7\u6c42\u6267\u884c\u5931\u8d25\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u5bfc\u5165ESB\u6587\u4ef6\u4fdd\u5b58\u6570\u636e\u4e0d\u5168\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u63a5\u53e3\u5bfc\u5165\u7528\u4f8bID\u751f\u6210\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u5bfc\u5165\u7528\u4f8bID\u751f\u6210\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u5b9a\u4e49\u5bfc\u5165jmx\u6587\u4ef6\u9009\u62e9\u7f16\u7801\uff0cms\u4e0d\u663e\u793a\u7f16\u7801\u7684\u7f3a\u9677 (#16573)
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u573a\u666f\u6267\u884c\u7ed3\u679c\u663e\u793a\u4e86unexecute\u7684\u7f3a\u9677 (#16610)
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u89e3\u51b3\u63a5\u53e3\u5bfc\u5165\u8986\u76d6\u6a21\u5f0f\uff0c\u88ab\u8986\u76d6\u63a5\u53e3\u65e0case\uff0c\u65b0case\u5bfc\u5165\u5931\u8d25\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u6d4b\u8bd5\u9996\u9875\u5b9a\u65f6\u4efb\u52a1\u8df3\u8f6c\u4e0d\u5bf9\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4f18\u5316\u63a5\u53e3\u5bfc\u5165\u7cfb\u7edf\u5185\u67d0\u4e2a\u63a5\u53e3\u6709\u91cd\u540d\u7528\u4f8b\u7684\u60c5\u51b5
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u4fee\u590d\u63a5\u53e3\u6d4b\u8bd5\u9996\u9875\u573a\u666f\u901a\u8fc7\u7387\u8ba1\u7b97\u4e0d\u6b63\u786e\u7684\u95ee\u9898
    • fix(\u63a5\u53e3\u6d4b\u8bd5): \u5bfc\u5165\u63a5\u53e3\u540e\uff0c\u624b\u52a8\u6dfb\u52a0\u4e00\u4e2a\u63a5\u53e3\u7528\u4f8b\uff0c\u5220\u9664\u5176\u4ed6\u7528\u4f8b\uff0c\u518d\u6b21\u5bfc\u5165\uff0c\u62a5\u9519
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590dsql\u52a0\u8f7d\u7528\u4f8b\uff0csql\u811a\u672c\u6ca1\u6709\u540c\u6b65\u7684\u7f3a\u9677 (#16483)
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u9664http\u534f\u8baeTEST\u9875\u9762\u52a0\u8f7d\u7528\u4f8b\u663e\u793a\u6210\u4e86\u65b0\u5efa\u7528\u4f8b\u9875\u9762\u7684\u7f3a\u9677
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4fee\u590d\u524d\u7f6esql\u7684\u6837\u5f0f
    • fix(\u63a5\u53e3\u5b9a\u4e49): \u4ece\u56de\u6536\u7ad9\u6062\u590d\u63a5\u53e3\u7528\u4f8b\u589e\u52a0\u91cd\u540d\u6821\u9a8c
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590d\u7528\u6237\u901a\u8fc7api\u8c03\u7528\u63a5\u53e3\u540e\uff0c\u672c\u8eab\u6743\u9650\u6ca1\u6709\u53ca\u65f6\u5237\u65b0\u7684\u95ee\u9898
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u521b\u5efa\u9879\u76ee\u63a5\u53e3\u5de5\u4f5c\u7a7a\u95f4ID\u4e3a\u7a7a\u53ef\u6210\u529f\u521b\u5efa
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u4fee\u590d\u521b\u5efa\u9879\u76ee\u65f6\u6743\u9650\u62e6\u622a\u7684\u95ee\u9898
    • fix(\u7cfb\u7edf\u8bbe\u7f6e): \u7528\u6237\u4ec5\u6709\u9879\u76ee\u6743\u9650\u65f6\u4e0d\u5360\u5de5\u4f5c\u7a7a\u95f4\u914d\u989d
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u591a\u8282\u70b9\u90e8\u7f72\u65f6\u67e5\u8be2\u76d1\u63a7targets\u6570\u636e\u4e0d\u4e00\u81f4\u7684\u95ee\u9898
    • fix(\u6027\u80fd\u6d4b\u8bd5): \u4fee\u590d\u62a5\u544a\u5bf9\u6bd4\u65f6\u663e\u793a\u591a\u4f59\u7684y\u8f74\u7684\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): excel\u5bfc\u5165\u5bfc\u51fa\u62a5\u9519
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u8111\u56fe\u521b\u5efa\u7528\u4f8b\u62a5\u9519
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u529f\u80fd\u7528\u4f8b\u6279\u91cf\u5220\u9664\u7684\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u529f\u80fd\u7528\u4f8b\u5bfc\u51fa\u6a21\u677f\u6ca1\u6709\u6807\u6ce8
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u529f\u80fd\u7528\u4f8b\u5bfc\u51fa\u7f3a\u5c11\u6b65\u9aa4\u7b49\u4fe1\u606f
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7f3a\u9677\u5217\u8868\u81ea\u5b9a\u4e49\u591a\u9009\u6846\u7b5b\u9009\u5931\u6548
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u8111\u56fe\u4e00\u952e\u5c55\u5f00\u6ca1\u6709\u5c55\u5f00\u4e34\u65f6\u8282\u70b9
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4f01\u4e1a\u7248\u7985\u9053\u540c\u6b65\u7f3a\u9677\u56fe\u7247\u65e0\u6cd5\u663e\u793a
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7b2c\u4e09\u65b9\u5e73\u53f0\u7f3a\u9677\u90e8\u5206\u5b57\u6bb5\u540c\u6b65\u51fa\u9519
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7f3a\u9677\u5217\u8868\u81ea\u5b9a\u4e49\u5b57\u6bb5\u70b9\u51fb\u6392\u5e8f\u62a5\u9519
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ba1\u5212\u5206\u4eab\u529f\u80fd\u7528\u4f8b\u7edf\u8ba1\u65e0\u6cd5\u5c55\u793a
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u9996\u9875\u7f3a\u9677\u6570\u4e0d\u5e94\u8be5\u7edf\u8ba1\u5df2\u5173\u95ed\u7684\u7f3a\u9677
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u8111\u56fe\u4fdd\u5b58\u4e34\u65f6\u8282\u70b9\u540e\uff0c\u90e8\u5206\u8282\u70b9\u6ca1\u4fdd\u5b58\u6210\u529f
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u7528\u4f8b\u8bc4\u5ba1\u4e2d\u7528\u4f8b\u5217\u8868\u7684\u72b6\u6001\u4e0e\u7f16\u8f91\u7684\u72b6\u6001\u4e0d\u4e00\u81f4
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u6d4b\u8bd5\u8ba1\u5212\u8fd0\u884c\u68c0\u67e5\u662f\u5426\u6709\u53ef\u7528\u884c\u7528\u4f8b\u7684\u7f3a\u9677 (#16497)
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u6d4b\u8bd5\u8ddf\u8e2a\u9996\u9875\u5173\u8054\u7528\u4f8b\u6570\u91cf\u7edf\u8ba1\u5ffd\u7565\u6389\u56de\u6536\u7ad9\u4e2d\u7684\u63a5\u53e3\u548c\u573a\u666f
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u5173\u8054\u7528\u4f8b\u5220\u9664\u65f6\u6d4b\u8bd5\u8ba1\u5212\u8be6\u60c5\u4e2d\u76f8\u5e94\u7528\u4f8b\u5217\u8868\u7684\u6a21\u5757\u6811\u663e\u793a\u95ee\u9898
    • fix(\u6d4b\u8bd5\u8ddf\u8e2a): \u4fee\u590d\u63a5\u53e3\u8c03\u7528\u6ca1\u6709\u5173\u8054\u53ef\u6267\u884c\u7528\u4f8b\u6d4b\u8bd5\u8ba1\u5212\u6267\u884c\u65f6\u6ca1\u6709\u63d0\u793a\u7684\u7f3a\u9677
    • fix(\u9ad8\u7ea7\u641c\u7d22): \u63a5\u53e3\u81ea\u52a8\u5316\u56de\u6536\u7ad9\u9ad8\u7ea7\u641c\u7d22\u72b6\u6001\u5b57\u6bb5\u548c\u5217\u8868\u72b6\u6001\u4e0d\u4e00\u81f4
    "},{"location":"about/changelog/#v200","title":"v2.0.0","text":"

    2022\u5e747\u670827\u65e5

    \u65b0\u589e\u529f\u80fd

    • \u5bfc\u822a\u680f\u5168\u65b0\u5347\u7ea7
    • \u6d4b\u8bd5\u8ba1\u5212\u652f\u6301\u5173\u8054UI\u6d4b\u8bd5\u7528\u4f8b\u6267\u884c
    • \u6d4b\u8bd5\u8ba1\u5212\u4e2d\u8fd0\u884c\u7684\u63a5\u53e3\u6d4b\u8bd5\u652f\u6301\u5931\u8d25\u91cd\u8bd5
    • UI\u6d4b\u8bd5\u573a\u666f\u652f\u6301\u6279\u91cf\u6267\u884c
    • \u5de5\u4f5c\u53f0-\u63a5\u53e3\u7528\u4f8b\u201c\u5f85\u66f4\u65b0\u201d\u5217\u8868\uff0c\u652f\u6301\u4e00\u952e\u540c\u6b65\u63a5\u53e3\u53d8\u66f4
    • \u9ad8\u7ea7\u641c\u7d22\u652f\u6301\u81ea\u5b9a\u4e49\u5b57\u6bb5\u641c\u7d22

    \u529f\u80fd\u4f18\u5316

    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u9644\u4ef6\u529f\u80fd\u652f\u6301\u4e0a\u4f20\u89c6\u9891\u6587\u4ef6
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u529f\u80fd\u7528\u4f8b\u652f\u6301\u6279\u91cf\u5173\u8054\u9700\u6c42
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u6d4b\u8bd5\u8ba1\u5212\u3001\u6d4b\u8bd5\u8bc4\u5ba1\u5173\u8054\u7528\u4f8b\u652f\u6301\u6309\u5173\u8054\u9700\u6c42\u7b5b\u9009\u7528\u4f8b
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u589e\u52a0\u8fd0\u884c\u73af\u5883\u5c55\u793a
    • \u6d4b\u8bd5\u8ddf\u8e2a\uff1a\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u652f\u6301\u63a5\u53e3\u5931\u8d25\u7528\u4f8b\u4e00\u952e\u91cd\u8dd1\uff08X-Pack\uff09
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u9996\u9875\u6570\u636e\u7edf\u8ba1\u4f18\u5316
    • \u63a5\u53e3\u6d4b\u8bd5\uff1aAPI\u5bfc\u5165\u903b\u8f91\u91cd\u6784
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u6d4b\u8bd5\u62a5\u544a\u589e\u52a0\u8fd0\u884c\u73af\u5883\u5c55\u793a
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u652f\u6301\u6dfb\u52a0\u573a\u666f\u7ea7\u522b\u65ad\u8a00
    • \u63a5\u53e3\u6d4b\u8bd5\uff1a\u96c6\u5408\u62a5\u544a\u652f\u6301\u5931\u8d25\u7528\u4f8b\u4e00\u952e\u91cd\u8dd1\uff08X-Pack\uff09
    • UI\u6d4b\u8bd5\uff1a\u9875\u9762\u5143\u7d20\u652f\u6301Excel\u5bfc\u5165\u5bfc\u51fa\u7ba1\u7406\uff08X-Pack\uff09
    • UI\u6d4b\u8bd5\uff1aUI\u573a\u666f\u53d8\u91cf\u4f18\u5316\uff08X-Pack\uff09
    • UI\u6d4b\u8bd5\uff1a\u9ad8\u7ea7\u8bbe\u7f6e\u65ad\u8a00\u548c\u6570\u636e\u63d0\u53d6\u5c55\u793a\u4f18\u5316\uff08X-Pack\uff09
    • \u9879\u76ee\u8bbe\u7f6e\uff1a\u6d88\u606f\u901a\u77e5\u652f\u6301\u5bf9\u63a5\u81ea\u5b9a\u4e49webhook\uff08X-Pack\uff09
    "},{"location":"about/contact/","title":"\u8054\u7cfb\u6211\u4eec","text":""},{"location":"about/contact/#1","title":"1 \u5fae\u4fe1\u516c\u4f17\u53f7","text":""},{"location":"about/contact/#2","title":"2 \u5fae\u4fe1\u7fa4","text":"

    \u5982\u60a8\u5728\u4f7f\u7528\u8fc7\u7a0b\u4e2d\u9047\u5230\u95ee\u9898\uff0c\u6b22\u8fce\u60a8\u5728\u7fa4\u91cc\u8fdb\u884c\u53cd\u9988\u4e0e\u54a8\u8be2\uff08\u6dfb\u52a0\u4e0b\u65b9\u5c0f\u52a9\u624b\u5fae\u4fe1\uff0c\u4ed6\u5c06\u4f1a\u5c06\u60a8\u62c9\u8fdb MeterSphere \u4ea4\u6d41\u7fa4\u4e2d\uff09\uff0c\u8bf7\u60a8\u5728\u8be2\u95ee\u524d\u5c3d\u53ef\u80fd\u5168\u9762\u7684\u63cf\u8ff0\u60a8\u7684\u60c5\u51b5\uff0c\u4f8b\u5982\uff1a

    • \u5f53\u524d\u4f7f\u7528\u7684 MeterSphere \u7248\u672c\u3002
    • \u5f53\u524d\u4f7f\u7528\u7684\u6d4f\u89c8\u5668\u7c7b\u578b\u3002
    • \u8be6\u7ec6\u7684\u95ee\u9898\u63cf\u8ff0\u3002
    • \u95ee\u9898\u7684\u622a\u56fe\u8bf4\u660e\u3002

    "},{"location":"about/contact/#3","title":"3 \u5f00\u6e90\u793e\u533a\u8bba\u575b","text":"

    \u60a8\u53ef\u4ee5\u5728\u98de\u81f4\u4e91\u5b98\u65b9\u7684 \u5f00\u6e90\u793e\u533a\u8bba\u575b \u641c\u7d22\u3001\u54a8\u8be2\u3001\u8ba8\u8bba\u4ea4\u6d41\u4ea7\u54c1\u76f8\u5173\u7684\u6280\u672f\u95ee\u9898\u3002

    "},{"location":"about/contact/#4","title":"4 \u5176\u4ed6\u65b9\u5f0f","text":"
    • \u6280\u672f\u54a8\u8be2\uff1ahttps://jinshuju.net/f/qQOZj1
    • \u4f01\u4e1a\u7248\u8bd5\u7528\uff1ahttps://jinshuju.net/f/CzzAOe
    • \u5b98\u7f51\uff1ahttp://www.metersphere.io
    • \u90ae\u7bb1\uff1asupport@fit2cloud.com
    • \u7535\u8bdd\uff1a400-052-0755
    "},{"location":"about/security_bulletins/","title":"\u5b89\u5168\u516c\u544a","text":"
    • \u91cd\u8981\u901a\u77e5\u4e28MeterSphere\u6f0f\u6d1e\u901a\u77e5\u53ca\u4fee\u590d\u65b9\u6848\uff082023.05.26\uff09
    • \u91cd\u8981\u901a\u77e5\u4e28MeterSphere\u6f0f\u6d1e\u901a\u77e5\u53ca\u4fee\u590d\u65b9\u6848\uff082023.03.10\uff09
    • \u91cd\u8981\u901a\u77e5\u4e28MeterSphere\u6f0f\u6d1e\u901a\u77e5\u53ca\u4fee\u590d\u65b9\u6848\uff082023.01.04\uff09
    "},{"location":"case_studies/user_cases/","title":"\u7528\u6237\u6848\u4f8b","text":"
    • \u4e2d\u56fd\u79fb\u52a8\u4e0a\u7814\u9662\u57fa\u4e8e MeterSphere \u6784\u5efa\u89c4\u8303\u5316\u6d4b\u8bd5\u4f53\u7cfb
    • 88 \u5b8c\u7f8e\u90ae\u7bb1\u5168\u9762\u63d0\u5347\u4ea7\u54c1\u8d28\u91cf\u7684\u843d\u5730\u6307\u5357
    • \u851a\u6f9c\u73af\u4fdd\u57fa\u4e8e MeterSphere \u7684\u81ea\u52a8\u5316\u6d4b\u8bd5\u5b9e\u8df5
    • \u6613\u76db\u4fe1\u606f MeterSphere \u63a5\u53e3\u6d4b\u8bd5\u4f7f\u7528\u7ecf\u9a8c
    • \u6613\u76db\u4fe1\u606f\u5728 MeterSphere \u4e0a\u5b9e\u73b0\u591a\u7c7b\u578b\u63a5\u53e3\u573a\u666f\u81ea\u52a8\u5316\u6d4b\u8bd5
    • \u6c38\u798f\u4fe1\u606f\u57fa\u4e8e MeterSphere \u4ece\u9879\u76ee\u7ef4\u5ea6\u6301\u7eed\u63a8\u8fdb\u6d4b\u8bd5\u4efb\u52a1
    • \u4e5d\u91cc\u4e91\u57fa\u4e8e MeterSphere \u843d\u5730\u4e00\u7ad9\u5f0f\u81ea\u52a8\u5316\u6d4b\u8bd5\u5e73\u53f0
    • \u6c11\u751f\u79d1\u6280\u57fa\u4e8e MeterSphere \u5e73\u53f0\u5b9e\u73b0\u6d4b\u8bd5\u7528\u4f8b\u590d\u7528
    • 360\u501f\u52a9 MeterSphere \u63d0\u5347\u81ea\u52a8\u5316\u6d4b\u8bd5\u6c34\u5e73
    • \u7528\u53cb\u878d\u8054\u501f\u52a9 MeterSphere \u5f00\u6e90\u6301\u7eed\u6d4b\u8bd5\u5e73\u53f0\u63d0\u5347\u6d4b\u8bd5\u6548\u7387
    • \u9886\u5148\u672a\u6765\u7684 MeterSphere \u63a5\u53e3\u6d4b\u8bd5\u5b9e\u8df5
    • MeterSphere \u63a5\u53e3\u6d4b\u8bd5\u5728\u4e92\u8054\u7f51\u96f6\u552e\u5e73\u53f0\u6734\u6734\u8d85\u5e02\u7684\u5b9e\u8df5\u5206\u4eab
    • \u5546\u7c73\u79d1\u6280\u57fa\u4e8e MeterSphere \u7684\u5168\u7403\u5316\u4e91\u670d\u52a1\u63a5\u53e3\u6d4b\u8bd5\u5b9e\u8df5
    "},{"location":"faq/api_test/","title":"\u63a5\u53e3\u6d4b\u8bd5\u76f8\u5173","text":""},{"location":"faq/api_test/#1","title":"1 \u5728\u63a5\u53e3\u81ea\u52a8\u5316\u7684\u4e00\u4e2a\u573a\u666f\u91cc\u9762\uff0c\u4e2a\u522b\u63a5\u53e3\u9700\u8981\u4f7f\u7528\u4e0d\u540c\u7684\u73af\u5883\u53bb\u8fd0\u884c\uff0c\u8be5\u600e\u4e48\u5904\u7406\uff1f","text":"

    \u53ef\u4ee5\u901a\u8fc7\u6dfb\u52a0\u81ea\u5b9a\u4e49\u8bf7\u6c42\u7684\u65b9\u5f0f\u5b9e\u73b0\u3002

    "},{"location":"faq/api_test/#2","title":"2 \u63a5\u53e3\u4f20\u53c2\u9700\u8981\u4f7f\u7528\u968f\u673a\u6570\uff0c\u6709\u54ea\u4e9b\u5185\u7f6e\u65b9\u6cd5\uff1f","text":"

    \u53ef\u4ee5\u53c2\u8003\u4f7f\u7528 JMeter \u5185\u7f6e\u51fd\u6570\u6216\u8005 Mock.js \u51fd\u6570\u751f\u6210\u968f\u673a\u503c\u3002\u8bf7\u53c2\u8003\u5185\u7f6e\u51fd\u6570

    "},{"location":"faq/api_test/#3","title":"3 \u63a5\u53e3\u81ea\u52a8\u5316\u591a\u573a\u666f\u5982\u4f55\u8fdb\u884c\u6279\u91cf\u8fd0\u884c\uff1f","text":"

    \u5728\u573a\u666f\u5217\u8868\u9009\u4e2d\u573a\u666f\uff0c\u70b9\u51fb\u3010\u00b7\u00b7\u00b7\u3011\u5f39\u51fa\u4e0b\u62c9\u6846\uff0c\u9009\u62e9\u3010\u6279\u91cf\u8fd0\u884c\u3011\u3002

    "},{"location":"faq/api_test/#4","title":"4 \u63a5\u53e3\u6d4b\u8bd5\u5982\u4f55\u652f\u6301\u4e0a\u4f20\u6587\u4ef6\u7684\u63a5\u53e3\u5417\uff1f","text":"

    \u6839\u636e\u63a5\u53e3\u8981\u6c42\u7684\u8bf7\u6c42\u4f53\u7c7b\u578b\uff0c\u9009\u62e9 form-data\u3001x-www-form-urlencoded \u683c\u5f0f\u7684\u8bf7\u6c42\u4f53\uff0c\u53c2\u6570\u7c7b\u578b\u9009\u62e9 file\uff0c\u9009\u62e9\u8981\u6dfb\u52a0\u7684\u6587\u4ef6\u3002\u4e5f\u53ef\u4ee5\u4f7f\u7528 binary \u683c\u5f0f\u7684\u8bf7\u6c42\u4f53\uff0c\u76f4\u63a5\u9009\u62e9\u8981\u6dfb\u52a0\u7684\u6587\u4ef6\u3002

    "},{"location":"faq/api_test/#5-cookie","title":"5 \u63a5\u53e3\u81ea\u52a8\u5316\u4e2d\u6a21\u5757\u4e4b\u95f4\u662f\u5426\u652f\u6301\u5171\u4eab cookie?","text":"

    \u73af\u5883\u914d\u7f6e-http \u914d\u7f6e\uff0c\u652f\u6301\u6309\u6a21\u5757\u4e0d\u540c\u73af\u5883\u3002\u540c\u4e00\u6a21\u5757\u4e0b\u4e0d\u540c\u573a\u666f\u53ef\u4ee5\u5f00\u542f\u5171\u4eab cookie\uff0c\u4e0d\u540c\u6a21\u5757\u4e0d\u652f\u6301\u5171\u4eab cookie\u3002

    "},{"location":"faq/api_test/#6","title":"6 \u63a5\u53e3\u6d4b\u8bd5\u4e2d\uff0c\u671f\u671b\u7ed3\u679c\u4e0d\u4e3a\u7a7a\uff0c\u5982\u4f55\u5199\u65ad\u8a00\uff1f","text":"

    \u53ef\u4ee5\u5728\u671f\u671b\u503c\u4e2d\u4f7f\u7528\u5339\u914d\u4efb\u610f\u975e\u7a7a\u5b57\u7b26\u7684\u6b63\u5219\u8868\u8fbe\u5f0f \\S+ \u8fdb\u884c\u5224\u65ad\u3002

    "},{"location":"faq/api_test/#7-sql","title":"7 \u5bf9SQL\u8bf7\u6c42\uff0c\u5982\u4f55\u65ad\u8a00\uff1f","text":"

    SQL\u8bf7\u6c42\u7684\u65ad\u8a00\u53ef\u901a\u8fc7\u5982\u4e0b\u6b65\u9aa4\u8fdb\u884c\uff1a

    • \u914d\u7f6e\u201c\u5b58\u50a8\u7ed3\u679c\u201d\u548c\u201c\u6309\u5217\u5b58\u50a8\u201d\uff0c\u5b58\u50a8\u6570\u636e\u3002
    • \u914d\u7f6eSQL\u811a\u672c\uff0c\u53d6\u51fa\u9700\u8981\u65ad\u8a00\u7684\u53c2\u6570\u3002
    • \u6dfb\u52a0\u811a\u672c\u65ad\u8a00\uff0c\u5224\u65ad\u5b58\u50a8 SQL \u7ed3\u679c\u6570\u636e\u7684\u53d8\u91cf\u7684\u53d8\u91cf\u503c\u3002
    • \u53ef\u53c2\u8003MeterSphere \u6570\u636e\u5e93\u63d0\u53d6\u53c2\u6570\u548c\u65ad\u8a00
    "},{"location":"faq/api_test/#8","title":"8 \u5168\u5c40\u53d8\u91cf\u548c\u573a\u666f\u53d8\u91cf\u91cc\uff0c\u5305\u542b\u76f8\u540c\u53d8\u91cf\u540d\u7684\u53d8\u91cf\uff0c\u4f18\u5148\u7ea7\u5982\u4f55\u5224\u65ad\uff1f","text":"

    \u5f53\u5168\u5c40\u53d8\u91cf\u548c\u573a\u666f\u53d8\u91cf\u53d8\u91cf\u540d\u76f8\u540c\u65f6\uff0c\u4f18\u5148\u4f7f\u7528\u573a\u666f\u53d8\u91cf\u3002

    "},{"location":"faq/api_test/#9","title":"9 \u573a\u666f\u4e2d\u4f7f\u7528\u5f15\u7528\u65b9\u5f0f\u5bfc\u5165\u63a5\u53e3\uff0c\u4f46\u53c2\u6570\u53c8\u9700\u8981\u91cd\u5199\uff0c\u5e94\u8be5\u5982\u4f55\u5904\u7406\uff1f","text":"

    \u63a5\u53e3\u5bfc\u5165\u573a\u666f\u6709\u4e24\u79cd\u65b9\u5f0f\uff0c\u7b2c\u4e00\u79cd\u65b9\u5f0f\u662f\u590d\u5236\uff0c\u590d\u5236\u7684\u63a5\u53e3\u53ef\u4ee5\u5728\u573a\u666f\u4e2d\u4fee\u6539\u53c2\u6570\uff1b\u7b2c\u4e8c\u79cd\u65b9\u5f0f\u662f\u5f15\u7528\uff0c\u5f15\u7528\u7684\u63a5\u53e3\u53ea\u80fd\u5728\u63a5\u53e3\u5b9a\u4e49\u4e2d\u8fdb\u884c\u4fee\u6539\uff0c\u4fee\u6539\u5b8c\u6210\u540e\u4f1a\u81ea\u52a8\u540c\u6b65\u5230\u573a\u666f\u91cc\u3002

    "},{"location":"faq/api_test/#10","title":"10 \u573a\u666f\u4e2d\u6dfb\u52a0\u4e86\u6761\u4ef6\u63a7\u5236\u5668\uff0c\u4e14\u5339\u914d\u5931\u8d25\u4e86\uff0c\u4e3a\u4ec0\u4e48\u540e\u7eed\u7684\u63a5\u53e3\u8fd8\u4f1a\u6267\u884c\uff1f","text":"

    \u540e\u7eed\u7684\u5c06\u63a5\u53e3\u62d6\u5165\u5230\u6761\u4ef6\u63a7\u5236\u5668\u4e0b\u6210\u4e3a\u5b50\u6b65\u9aa4\u624d\u6709\u6548\u3002

    "},{"location":"faq/api_test/#11","title":"11 \u63a5\u53e3\u6d4b\u8bd5\u4e2d\uff0c\u5982\u4f55\u83b7\u53d6\u5f53\u524d\u7684\u65f6\u95f4\u6765\u505a\u4e3a\u53d8\u91cf\uff1f","text":"

    \u53ef\u4ee5\u4f7f\u7528 ${__time()} \u5185\u7f6e\u51fd\u6570\u3002

    "},{"location":"faq/api_test/#12-sql","title":"12 \u5982\u4f55\u521b\u5efa SQL \u534f\u8bae\u7684\u63a5\u53e3\u6d4b\u8bd5\uff1f","text":"

    \u5177\u4f53\u64cd\u4f5c\u8bf7\u53c2\u8003\uff1ahttps://brucelong.blog.csdn.net/article/details/110133647 \u3002

    "},{"location":"faq/api_test/#13","title":"13 \u63a5\u53e3\u81ea\u52a8\u5316\u6d4b\u8bd5\uff0c\u4e00\u4e2a\u9879\u76ee\u4e0b\u7684\u4e0d\u540c\u63a5\u53e3\u573a\u666f\uff0c\u662f\u5426\u53ef\u4ee5\u5f15\u7528\u540c\u4e00\u4e2a\u811a\u672c\uff1f","text":"

    \u53ef\u4ee5\u4f7f\u7528\u516c\u5171\u4ee3\u7801\u7247\u6bb5\u3002\u53ef\u4ee5\u5728\u201c\u7cfb\u7edf\u8bbe\u7f6e\u201d - \u201c\u9879\u76ee\u7ba1\u7406\u201d\uff0c\u7ed9\u6307\u5b9a\u7684\u9879\u76ee\u4e0a\u4f20jar\u5305\uff0c\u7136\u540e\u5728\u9879\u76ee\u8bbe\u7f6e-\u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5\u4e0b\u7f16\u5199\u811a\u672c\uff0c\u4e4b\u540e\u6b64\u9879\u76ee\u4e0b\u7684\u4e0d\u540c\u573a\u666f\u5c31\u53ef\u4ee5\u5f15\u7528\u3002

    "},{"location":"faq/api_test/#14","title":"14 \u573a\u666f\u53d8\u91cf\u7684\u7c7b\u578b\u4e3a\u968f\u673a\u6570\uff0c\u4f46\u6267\u884c\u8fc7\u7a0b\u4e2d\u4e3a\u4ec0\u4e48\u6ca1\u6709\u5b9e\u9645\u751f\u6210\uff1f","text":"

    \u8bf7\u68c0\u67e5\u914d\u7f6e\u7684\u968f\u673a\u6570\u957f\u5ea6\uff0c\u968f\u673a\u6570\u957f\u5ea6\u9700\u8981\u5728 MeterSphere \u9650\u5b9a\u8303\u56f4\u5185\u3002

    "},{"location":"faq/api_test/#15-csv","title":"15 \u5982\u4f55\u901a\u8fc7\u53d8\u91cf\u5f15\u7528 CSV \u6570\u636e\uff1f","text":"

    \u5728\u573a\u666f\u7f16\u8f91\u9875\u9762\uff0c\u70b9\u51fb\u573a\u666f\u53d8\u91cf\u6dfb\u52a0 CSV \u7c7b\u578b\u7684\u573a\u666f\u53d8\u91cf\u3002\u5177\u4f53\u64cd\u4f5c\u53c2\u8003 \u573a\u666f\u53d8\u91cf\u914d\u7f6e \u3002

    "},{"location":"faq/api_test/#16","title":"16 \u63a5\u53e3\u81ea\u52a8\u5316\u91cc\uff0c\u540c\u4e00\u573a\u666f\u4e0b\u662f\u5426\u652f\u6301\u914d\u7f6e\u591a\u4e2a\u63a5\u53e3\u57df\u540d\uff1f","text":"

    \u5728\u73af\u5883\u914d\u7f6e\u91cc\u9762\uff0c\u53ef\u4ee5\u5206\u522b\u6309\u63a5\u53e3\u6240\u5c5e\u6a21\u5757\uff0c\u6216\u8005\u63a5\u53e3\u8def\u5f84\u8fd9\u4e24\u79cd\u65b9\u5f0f\uff0c\u6765\u8bbe\u8ba1\u548c\u5339\u914d\u4e0d\u540c\u63a5\u53e3\u5bf9\u5e94\u7684\u57df\u540d\u3002

    "},{"location":"faq/api_test/#17-code","title":"17 \u8bf7\u6c42\u91cc\u9762\u6d89\u53ca\u5230\u4e86\u8f6c\u53d1\u91cd\u5b9a\u5411\uff0c\u5982\u4f55\u83b7\u53d6\u63a5\u53e3\u8fd4\u56de\u7684code\uff1f","text":"

    \u5728\u63a5\u53e3\u7684\u3010\u8bf7\u6c42\u53c2\u6570\u3011\u533a\u57df\u7684\u3010\u5176\u4ed6\u8bbe\u7f6e\u3011\u9875\u9762\u4e2d\uff0c\u53d6\u6d88\u52fe\u9009 \u3010\u8ddf\u968f\u91cd\u5b9a\u5411\u3011\u9009\u9879\u3002

    "},{"location":"faq/api_test/#18","title":"18 \u63a5\u53e3\u81ea\u52a8\u5316\u6279\u91cf\u6267\u884c\uff0c\u662f\u5e76\u884c\u8fd8\u662f\u4e32\u884c\uff1f","text":"

    \u63a5\u53e3\u81ea\u52a8\u5316\u6279\u91cf\u6267\u884c\u540c\u65f6\u652f\u6301\u4e32\u884c\u548c\u5e76\u884c\u4e24\u79cd\u65b9\u5f0f\uff0c\u53ef\u4ee5\u5728\u9009\u62e9\u8fd0\u884c\u573a\u666f\u540e\uff0c\u5728 \u8fd0\u884c\u914d\u7f6e \u5f39\u7a97\u8fdb\u884c\u9009\u62e9\u3002

    "},{"location":"faq/api_test/#19","title":"19 \u6279\u91cf\u6267\u884c\u63a5\u53e3\u81ea\u52a8\u5316\uff0c\u662f\u5426\u53ef\u4ee5\u6309\u573a\u666f\u5355\u72ec\u663e\u793a\u6d4b\u8bd5\u62a5\u544a\uff1f","text":"

    \u5728 \u8fd0\u884c\u914d\u7f6e \u5f39\u7a97\u7684 \u5176\u4ed6\u914d\u7f6e \u9009\u9879\u4e2d\u9009\u62e9\u751f\u6210 \u72ec\u7acb\u62a5\u544a\u3002

    "},{"location":"faq/api_test/#20","title":"20 \u63a5\u53e3\u81ea\u52a8\u5316\u9009\u62e9\u591a\u573a\u666f\u540c\u65f6\u8fd0\u884c\u65f6\uff0c\u53ef\u4ee5\u628a\u6267\u884c\u7ed3\u679c\u6574\u5408\u6210\u4e00\u4e2a\u6d4b\u8bd5\u62a5\u544a\u5417\uff1f","text":"

    \u5728\u3010\u8fd0\u884c\u914d\u7f6e\u3011\u5f39\u7a97\u7684 \u3010\u5176\u4ed6\u914d\u7f6e\u3011\u9009\u9879\u4e2d\u9009\u62e9\u751f\u6210\u3010\u96c6\u5408\u62a5\u544a\u3011\u3002

    "},{"location":"faq/api_test/#21","title":"21 \u63a5\u53e3\u5b9a\u4e49\u6a21\u5757\uff0c\u7f16\u8f91\u63a5\u53e3\u7684\u9875\u9762\uff0c\u5982\u4f55\u4fdd\u5b58\uff1f","text":"

    \u5728\u7f16\u8f91\u63a5\u53e3\u9875\u9762\u201c\u57fa\u7840\u4fe1\u606f\u201d\u533a\u57df\uff0c\u70b9\u51fb\u6d4b\u8bd5\u6309\u94ae\u540e\u9762\u7684\u5411\u4e0b\u6309\u94ae\uff0c\u70b9\u51fb\u3010\u66f4\u65b0\u63a5\u53e3\u3011\u9009\u9879\u5373\u53ef\u3002

    "},{"location":"faq/api_test/#22-non-http-response-code-javanetsockettimeoutexception","title":"22 \u6267\u884c\u63a5\u53e3\u62a5\u9519\uff1aNon HTTP response code: java.net.SocketTimeoutException","text":"

    \u5728\u63a5\u53e3\u3010\u5176\u4ed6\u8bbe\u7f6e\u3011\u4e2d\u589e\u52a0\u7684\u8fde\u63a5\u8d85\u65f6\u65f6\u95f4\u3002

    "},{"location":"faq/api_test/#23","title":"23 \u63a5\u53e3\u5b9a\u4e49\u91cc\u7684\u5355\u63a5\u53e3\uff0c\u53ef\u4ee5\u6279\u91cf\u6267\u884c\u5417\uff1f","text":"

    \u76ee\u524d\u53ef\u4ee5\u901a\u8fc7\u63a5\u53e3\u5b9a\u4e49\u6a21\u5757\u7684CASE\u5217\u8868\u6765\u6279\u91cf\u6267\u884c\u7528\u4f8b\u3002

    "},{"location":"faq/api_test/#24-httptcpsqldubbo","title":"24 \u63a5\u53e3\u6d4b\u8bd5\u6a21\u5757\u91cc\uff0c\u76ee\u524d\u9664\u4e86\u73b0\u6709\u7684HTTP\u3001TCP\u3001SQL\u3001DUBBO\uff0c\u8fd8\u652f\u6301\u5176\u4ed6\u534f\u8bae\u5417\uff1f","text":"

    1.13 \u7248\u672c\u5df2\u7ecf\u901a\u8fc7\u63d2\u4ef6\u7684\u65b9\u5f0f\u5b9e\u73b0\u4e86\u5bf9 MQTT \u534f\u8bae\u7684\u652f\u6301\uff0c\u8be5\u63d2\u4ef6\u662f\u4f01\u4e1a\u7248\u7684\u529f\u80fd\uff0c\u5728 MeterSphere \u3010\u7cfb\u7edf\u8bbe\u7f6e-\u7cfb\u7edf-\u63d2\u4ef6\u7ba1\u7406\u3011\u4e2d\u4e0a\u4f20\u3002

    "},{"location":"faq/api_test/#25-metersphere-ide-api","title":"25 MeterSphere \u53ef\u4ee5\u76f4\u63a5\u5728 IDE \u4e2d\u540c\u6b65 API \u5417\uff1f","text":"

    MeterSphere \u5df2\u652f\u6301 IDEA API\u540c\u6b65\u63d2\u4ef6\uff0c\u8be6\u7ec6\u4f7f\u7528\u65b9\u6cd5\u89c1metersphere-idea\u63d2\u4ef6\u3002

    "},{"location":"faq/api_test/#26","title":"26 \u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u91cc\u53ef\u4ee5\u8de8\u9879\u76ee\u5f15\u7528\u63a5\u53e3/\u7528\u4f8b\u5417\uff1f","text":"

    \u652f\u6301\u8de8\u9879\u76ee\u5f15\u7528\u63a5\u53e3\u3001\u7528\u4f8b\u3001\u573a\u666f\u3002

    "},{"location":"faq/api_test/#27","title":"27 \u5feb\u6377\u8c03\u8bd5\u7684\u65f6\u5019\uff0c\u4e00\u76f4\u8f6c\u5708\u7b49\u5f85\u662f\u4ec0\u4e48\u539f\u56e0?","text":"

    MeterSphere \u7684\u670d\u52a1\u5668\u5230\u88ab\u6d4b\u670d\u52a1\u7684\u5730\u5740\u7f51\u7edc\u4e0d\u901a\uff0c\u53ef\u5728 MeterSphere \u4e0a telnet \u88ab\u6d4b\u670d\u52a1\u7aef\u53e3\u68c0\u67e5\u7f51\u7edc\u3002

    "},{"location":"faq/api_test/#28-case","title":"28 \u8fdb\u884c\u63a5\u53e3 case \u8c03\u8bd5\u65f6\uff0c\u8c03\u7528\u4e0d\u540c\u63a7\u5236\u53f0\u4fe1\u606f\u663e\u793a\u8fde\u63a5\u67d0\u5730\u5740\u8d85\u65f6\uff0c\u5982\u4f55\u6392\u67e5\uff1f","text":"

    \u8fd9\u79cd\u60c5\u51b5\u5927\u6982\u7387\u662f\u7f51\u7edc\u4e0d\u901a\u9020\u6210\u7684\uff0c\u53ef\u4ee5\u4f7f\u7528 curl \u547d\u4ee4\u5728 ms-node-controller \u5bb9\u5668\u548c\u670d\u52a1\u5668\u4e0a\u8fdb\u884c\u6d4b\u8bd5\uff1b

    "},{"location":"faq/api_test/#29-linuxhost","title":"29 \u5728\u63a5\u53e3\u8c03\u8bd5\u65f6\u4f7f\u7528\u65b0\u7684\u57df\u540d\uff0c\u5728Linux\u7684host\u6587\u4ef6\u4e2d\u6dfb\u52a0\u4e86\u57df\u540d\u89e3\u6790\uff0c\u4f46\u4f9d\u7136\u8c03\u8bd5\u4e0d\u901a\uff0c\u5982\u4f55\u6392\u67e5\uff1f","text":"

    \u56e0\u4e3a node-controller \u5bb9\u5668\u4e2d\u65e0\u6cd5\u89e3\u6790\u51fa\u57df\u540d\uff0c\u56e0\u6b64\u9700\u8981\u8fdb\u5165\u5230 node-controller \u5bb9\u5668\u4e2dhost\u6587\u4ef6\u4e2d\u8fdb\u884c\u914d\u7f6e\uff0c\u7136\u540e\u91cd\u542f node-controller \u5bb9\u5668\u3002

    "},{"location":"faq/api_test/#30","title":"30 \u5982\u4f55\u5faa\u73af\u53d6\u51fa\u5217\u8868\u53d8\u91cf\u7684\u6bcf\u4e00\u4e2a\u503c\uff1f","text":"

    \u7ed3\u5408\u5faa\u73af\u63a7\u5236\u5668\u548c\u8ba1\u6570\u5668\u53d6\u503c\u3002\u53c2\u8003\u65b9\u6cd5\u63a5\u53e3\u6d4b\u8bd5\u5982\u4f55\u4f7f\u7528\u591a\u4e2aList\u8fdb\u5165ForEach\u5faa\u73af\u63a7\u5236\u5668

    "},{"location":"faq/api_test/#31-unicode","title":"31 \u63a5\u53e3\u54cd\u5e94\u5185\u5bb9\u4e3a Unicode \u5b57\u7b26\u5bfc\u81f4\u4e2d\u6587\u663e\u793a\u4e3a\u4e71\u7801\uff0c\u5982\u4f55\u5904\u7406\uff1f","text":"

    \u65b9\u6cd51\uff1a \u5728\u540e\u7f6e\u811a\u672c\u4e2d\u9009\u62e9BeanShell\u8bed\u8a00\u5904\u7406\u7f16\u7801\uff0c\u7136\u540e\u5199\u5165prev.setDataEncoding(\"UTF-8\"); \u65b9\u6cd52\uff1a \u5728\u540e\u7f6e\u811a\u672c\u4e2d\u9009\u62e9BeanShell\uff0c\u7136\u540e\u5199\u5165\u5982\u4e0b\u4ee3\u7801\uff1a

    String response_value=new String(prev.getResponseData(),\"UTF-8\");\nchar aChar;\nint num= response_value.length();\nStringBuffer outBuffer=new StringBuffer(num);\nfor(int x =0; x <num;){\n    aChar= response_value.charAt(x++);\n    if(aChar=='\\\\'){\n        aChar= response_value.charAt(x++);\n        if(aChar=='u'){\n            int value =0;\n            for(int i=0;i<4;i++){\n                aChar= response_value.charAt(x++);\n                switch(aChar){\n                    case'0':\n                    case'1':\n                    case'2':\n                    case'3':\n                    case'4':\n                    case'5':\n                    case'6':\n                    case'7':\n                    case'8':\n                    case'9':\n                        value=(value <<4)+aChar-'0';\n                        break;\n                    case'a':\n                    case'b':\n                    case'c':\n                    case'd':\n                    case'e':\n                    case'f':\n                        value=(value <<4)+10+aChar-'a';\n                        break;\n                    case'A':\n                    case'B':\n                    case'C':\n                    case'D':\n                    case'E':\n                    case'F':\n                        value=(value <<4)+10+aChar-'A';\n                        break;\n                    default:\n                        throw new IllegalArgumentException(\n                                \"Malformed   \\\\uxxxx  encoding.\");}}\n            outBuffer.append((char) value);}else{\n            if(aChar=='t')\n                aChar='\\t';\n            else if(aChar=='r')\n            aChar='\\r';\n            else if(aChar=='n')\n            aChar='\\n';\n            else if(aChar=='f')\n            aChar='\\f';\n            outBuffer.append(aChar);}}else\n        outBuffer.append(aChar);}\nprev.setResponseData(outBuffer.toString());\n

    "},{"location":"faq/api_test/#32","title":"32 \u63a7\u5236\u53f0\u4e2d\u6587\u8f93\u51fa\u4e71\u7801\uff0c\u5982\u4f55\u5904\u7406\uff1f","text":"

    \u4f7f\u7528UTF\u7f16\u7801\uff0clog.info(u\"MeterSphere \u4e00\u7ad9\u5f0f\u6301\u7eed\u6d4b\u8bd5\u5e73\u53f0\")\u3002

    "},{"location":"faq/api_test/#33-jmeter","title":"33 \u63a5\u53e3\u6d4b\u8bd5\u662f\u5426\u53ef\u4ee5\u5bfc\u51fa\u5230 JMeter\uff1f","text":"

    \u53ef\u4ee5\u52fe\u9009\u5bf9\u5e94\u7684\u573a\u666f\u6216\u63a5\u53e3\uff0c\u5bfc\u51fa\u4e3a JMX \u683c\u5f0f\uff0c\u7136\u540e\u518d\u7528 JMeter \u6253\u5f00 JMX \u6587\u4ef6

    "},{"location":"faq/api_test/#34-metersphere-csv","title":"34 MeterSphere \u4e2d CSV \u6587\u4ef6\u7684\u4e3b\u8981\u5e94\u7528\u573a\u666f\u6709\u54ea\u4e9b\uff1f","text":"
    • \u5728\u63a5\u53e3\u81ea\u52a8\u5316\u4e2d\u53ef\u4ee5\u5c06 CSV \u6587\u4ef6\u4f5c\u4e3a\u6279\u91cf\u4f20\u53c2\u6587\u4ef6\u53ef\u4ee5\u7528\u4f5c\u573a\u666f\u53d8\u91cf\u4f7f\u7528\uff0c\u914d\u5408\u5faa\u73af\u63a7\u5236\u5668\u4f7f\u7528\u3002
    • \u5728\u6027\u80fd\u6d4b\u8bd5\u4e2d\u4f5c\u4e3a\u53c2\u6570\u88ab\u5f15\u7528\u3002
    "},{"location":"faq/api_test/#35-csv","title":"35 \u573a\u666f\u4e2d\u5982\u4f55\u4f7f\u7528 CSV \u6587\u4ef6\u53c2\u6570\uff1f","text":"

    \u5728\u573a\u666f\u53d8\u91cf\u4e2d\u6dfb\u52a0 CSV \u6587\u4ef6\uff0c\u5728\u8bf7\u6c42\u4e2d\u901a\u8fc7 ${CSV\u7684\u6587\u4ef6\u5217\u540d} \u8fdb\u884c\u5f15\u7528\u3002

    "},{"location":"faq/api_test/#36-jar","title":"36 \u524d\u7f6e/\u540e\u7f6e\u811a\u672c\u5982\u4f55\u5f15\u7528\u5916\u90e8 jar \u5305\uff1f","text":"

    \u5728\u9879\u76ee\u8bbe\u7f6e-\u6587\u4ef6\u7ba1\u7406\u4e2d\u4e0a\u4f20 jar \u5305\u4e4b\u540e\uff0c\u5728\u524d\u7f6e/\u540e\u7f6e\u811a\u672c\u4e2d\u4f7f\u7528 import \u5373\u53ef\u5f15\u7528\u3002

    "},{"location":"faq/api_test/#37-js","title":"37 \u540e\u7f6e\u811a\u672c\u4e2d\u5982\u4f55\u5f15\u7528 js \u6587\u4ef6\uff1f","text":"

    \u5c06 js \u6587\u4ef6\u4e0a\u4f20\u5230\u670d\u52a1\u5668 /opt/ms/data/\u76ee\u5f55\u4e0b\uff0c\u5728\u540e\u7f6e\u811a\u672c\u4e2d\u9009\u62e9 JavaScript\uff0c\u901a\u8fc7 load \u5f15\u7528 js\u6587\u4ef6\uff1aload(\u201c/opt/ms/data/xx.js\u201d)\u3002

    "},{"location":"faq/api_test/#38-http","title":"38 HTTP \u534f\u8bae\u63a5\u53e3\u652f\u6301\u54ea\u4e9b\u6587\u4ef6\u683c\u5f0f\u5bfc\u5165\uff1f","text":"

    HTTP \u534f\u8bae\u652f\u6301\u4e94\u79cd\u6587\u4ef6\u683c\u5f0f\uff1aMeterSphere\u683c\u5f0f\u3001Postman\u683c\u5f0f\u3001Swagger\u683c\u5f0f\u3001HAR\u683c\u5f0f\u3001JMeter\u683c\u5f0f\uff1a

    • MeterSphere \u683c\u5f0f\uff1a\u901a\u8fc7 MeterSphere \u63a5\u53e3\u6d4b\u8bd5\u9875\u9762\u6216\u8005\u6d4f\u89c8\u5668\u63d2\u4ef6\u5bfc\u51fa\u7684 json \u683c\u5f0f\u6587\u4ef6\u3002
    • Postman \u683c\u5f0f\uff1a\u652f\u6301 Postman Collection v2.1 \u683c\u5f0f\u7684 json \u6587\u4ef6\uff0c\u901a\u8fc7 Postman \u5bfc\u51fa\u6d4b\u8bd5\u96c6\u5408\u3002
    • Swagger \u683c\u5f0f\uff1a\u652f\u6301 Swagger 2.0 \u4e0e 3.0 \u7248\u672c\u7684 json \u6587\u4ef6\uff0c\u901a\u8fc7 Swagger \u9875\u9762\u5bfc\u51fa\u6216\u8005URL\u76f4\u63a5\u5bfc\u5165\u3002
    • HAR \u683c\u5f0f\uff1a\u901a\u8fc7\u6d4f\u89c8\u5668\u7684\u5f00\u53d1\u8005\u5de5\u5177\u5bfc\u51fa HAR \u683c\u5f0f\u6587\u4ef6\u3002
    • JMeter \u683c\u5f0f\uff1a\u652f\u6301 JMeter5.2-5.4 \u7248\u672c\u7684 JMX \u6587\u4ef6\uff0c\u901a\u8fc7 JMeter \u751f\u6210 JMX \u6587\u4ef6\u3002

    "},{"location":"faq/api_test/#39-tcp","title":"39 TCP \u534f\u8bae\u63a5\u53e3\u652f\u6301\u54ea\u4e9b\u6587\u4ef6\u683c\u5f0f\u5bfc\u5165\uff1f","text":"

    TCP \u534f\u8bae\u652f\u6301\u4e09\u79cd\u6587\u4ef6\u683c\u5f0f\uff1a MeterSphere\u683c\u5f0f\u3001JMeter\u683c\u5f0f\u3001ESB\u683c\u5f0f\uff1a

    • MeterSphere \u683c\u5f0f\uff1a\u901a\u8fc7 MeterSphere \u63a5\u53e3\u6d4b\u8bd5\u9875\u9762\u6216\u8005\u6d4f\u89c8\u5668\u63d2\u4ef6\u5bfc\u51fa\u7684 json \u683c\u5f0f\u6587\u4ef6
    • JMeter \u683c\u5f0f\uff1a\u652f\u6301 JMeter5.2-5.4\u7248\u672c\u7684 JMX \u6587\u4ef6\uff0c\u901a\u8fc7 JMeter \u751f\u6210 JMX \u6587\u4ef6
    • ESB \u683c\u5f0f\uff1a\u652f\u6301 ESB \u6a21\u7248\u7684 xlsx \u6587\u4ef6\uff08\u652f\u6301\u6a21\u7248\u4e0b\u8f7d/\u4e0a\u4f20\uff09

    "},{"location":"faq/api_test/#40-sql","title":"40 SQL \u534f\u8bae\u63a5\u53e3\u652f\u6301\u54ea\u4e9b\u6587\u4ef6\u683c\u5f0f\u5bfc\u5165\uff1f","text":"

    SQL \u534f\u8bae\u652f\u6301\u4e24\u79cd\u6587\u4ef6\u683c\u5f0f\uff1aMeterSphere\u683c\u5f0f\u3001JMeter\u683c\u5f0f\uff1a

    • MeterSphere \u683c\u5f0f\uff1a\u901a\u8fc7 MeterSphere \u63a5\u53e3\u6d4b\u8bd5\u9875\u9762\u6216\u8005\u6d4f\u89c8\u5668\u63d2\u4ef6\u5bfc\u51fa\u7684 json \u683c\u5f0f\u6587\u4ef6
    • JMeter \u683c\u5f0f\uff1a\u652f\u6301 JMeter5.2-5.4 \u7248\u672c\u7684 JMX \u6587\u4ef6\uff0c\u901a\u8fc7 JMeter \u751f\u6210 JMX \u6587\u4ef6

    "},{"location":"faq/api_test/#41-dubbo","title":"41 DUBBO \u534f\u8bae\u63a5\u53e3\u652f\u6301\u54ea\u4e9b\u6587\u4ef6\u683c\u5f0f\u5bfc\u5165\uff1f","text":"

    DUBBO \u534f\u8bae\u63a5\u53e3\u652f\u6301\u4e24\u79cd\u6587\u4ef6\u683c\u5f0f\uff1aMeterSphere\u683c\u5f0f\u3001JMeter\u683c\u5f0f\uff1a

    • MeterSphere \u683c\u5f0f\uff1a\u901a\u8fc7 MeterSphere \u63a5\u53e3\u6d4b\u8bd5\u9875\u9762\u6216\u8005\u6d4f\u89c8\u5668\u63d2\u4ef6\u5bfc\u51fa\u7684 json \u683c\u5f0f\u6587\u4ef6\u3002
    • JMeter \u683c\u5f0f\uff1a\u652f\u6301 JMeter5.2-5.4 \u7248\u672c\u7684 JMX \u6587\u4ef6\uff0c\u901a\u8fc7 JMeter \u751f\u6210 JMX \u6587\u4ef6\u3002

    "},{"location":"faq/api_test/#42-metersphere-url","title":"42 MeterSphere \u6839\u636e\u4ec0\u4e48\u89c4\u5219\u5224\u65ad\u540d\u79f0\u76f8\u540c\u6216 URL \u76f8\u540c\u7684\u63a5\u53e3\u662f\u5426\u4e3a\u540c\u4e00\u63a5\u53e3\uff1f","text":"
    • TCP\u3001SQL\u3001DUBBO \u8bf7\u6c42\uff0c\u540c\u9879\u76ee\u540c\u6a21\u5757\u540c\u7248\u672c\u4e0b\uff0c\u63a5\u53e3\u540d\u79f0\u76f8\u540c\u5c31\u662f\u540c\u4e00\u63a5\u53e3
    • \u9488\u5bf9HTTP\u8bf7\u6c42\uff0c\u540c\u9879\u76ee\u540c\u6a21\u5757\u540c\u7248\u672c\u4e0b\uff0c\u5206\u4e3a\u63a5\u53e3\u5b9a\u4e49\u672a\u5f00\u542f url \u53ef\u91cd\u590d\u548c\u5df2\u5f00\u542f url \u53ef\u91cd\u590d\u4e24\u79cd\u60c5\u51b5
    • \u672a\u5f00\u542f URL \u91cd\u590d\uff1a\u8bf7\u6c42\u7c7b\u578b+\u8def\u5f84\u76f8\u540c\u5219\u4e3a\u540c\u4e00\u63a5\u53e3\uff0c\u5982\uff1a
    • \u5f00\u542f URL \u91cd\u590d\uff1a\u63a5\u53e3\u540d\u79f0+\u8bf7\u6c42\u7c7b\u578b+\u8def\u5f84\u76f8\u540c\u5219\u4e3a\u540c\u4e00\u63a5\u53e3\uff0c\u5982\uff1a
    "},{"location":"faq/api_test/#43","title":"43 \u63a5\u53e3\u5bfc\u5165\u7684\u8be6\u7ec6\u903b\u8f91\u662f\u4ec0\u4e48\uff1f","text":"

    \u63a5\u53e3\u5bfc\u5165\u4e3b\u8981\u6d89\u53ca\u5404\u7c7b\u6761\u4ef6\u7684\u5224\u65ad\uff0c\u8be6\u7ec6\u903b\u8f91\u89c1\u4e0b\u56fe\uff1a

    "},{"location":"faq/api_test/#44","title":"44 \u914d\u7f6e\u4e86\u5b9a\u65f6\u4efb\u52a1\uff0c\u6ca1\u6709\u5728\u9489\u9489\u7fa4\u53d1\u6d88\u606f\uff1f","text":"
    • \u786e\u8ba4\u6d88\u606f\u901a\u77e5\u662f\u5426\u6b63\u786e\u586b\u5199\u3002
    • \u5b9a\u65f6\u4efb\u52a1\u662f\u624b\u52a8\u6267\u884c\uff0c\u4e0d\u4f1a\u53d1\u9001\u6d88\u606f\u3002
    "},{"location":"faq/api_test/#45-httpip","title":"45 \u9009\u62e9\u73af\u5883\u540d\u79f0\u540e\uff0c\u8bf7\u6c42\u5185\u5bb9\u91cc\u53ea\u6709http://\u63a5\u53e3\uff0c\u6ca1\u6709\u4f7f\u7528\u5230\u5728\u73af\u5883\u914d\u7f6e\u7684ip\u548c\u7aef\u53e3\uff0c\u5e94\u8be5\u5982\u4f55\u8fdb\u884c\uff1f","text":"

    \u5728\u73af\u5883\u914d\u7f6e\u5904\uff0c\u4e0d\u9009\u62e9\u201c\u6a21\u5757\u201d\u6216\u8005\u201c\u8def\u5f84\u201d\uff0c\u9009\u62e9\u201c\u65e0\u201d\u5373\u53ef

    "},{"location":"faq/api_test/#46","title":"46 \u63a5\u53e3\u6d4b\u8bd5\u65ad\u8a00\u6210\u529f\uff0c\u4e3a\u4ec0\u4e48\u7528\u4f8b\u663e\u793a\u672a\u901a\u8fc7\uff1f","text":"

    \u5982\u679c\u54cd\u5e94\u7801\u4e0d\u662f200\uff0c\u9700\u8981\u52fe\u9009\"\u5ffd\u7565\u72b6\u6001\"\u5ffd\u7565\u72b6\u6001\u7801\u7684\u5224\u65ad\u3002

    "},{"location":"faq/api_test/#47","title":"47 \u5728\u540e\u7f6e\u811a\u672c\u4e2d\u5982\u4f55\u83b7\u53d6\u54cd\u5e94\u7ed3\u679c\uff1f","text":"

    prev.getResponseDataAsString()

    "},{"location":"faq/api_test/#48-jmeter","title":"48 \u63a5\u53e3\u6d4b\u8bd5\u4e2d\u5bfc\u5165 JMeter \u811a\u672c\u540e\uff0c\u6ca1\u6709\u4efb\u4f55\u8bf7\u6c42\u5185\u5bb9\uff1f","text":"

    \u4f7f\u7528 JMeter \u6253\u5f00 jmx \u6587\u4ef6\uff0c\u786e\u8ba4\u63a5\u53e3\u662f\u5426\u88ab\u7981\u7528\uff0c \u5982\u7981\u7528\u624b\u52a8\u5f00\u542f\u4fdd\u5b58\u540e\u518d\u5bfc\u5165\u3002

    "},{"location":"faq/api_test/#49-error-standardjmeterengine-jdbc-data-source-already-defined-for-mysql","title":"49 \u540e\u53f0\u65e5\u5fd7\u62a5\u9519\uff1aERROR StandardJMeterEngine JDBC data source already defined for: mysql","text":"

    \u67e5\u770b\u6570\u636e\u5e93-\u6570\u636e\u6e90\uff0c\u4fee\u6539\u6700\u5927\u8fde\u63a5\u6570\u3002

    "},{"location":"faq/api_test/#50-4m","title":"50 \u63a5\u53e3\u54cd\u5e94\u5185\u5bb9\u8fc7\u5927\uff08\u7ea64M\uff09\u5bfc\u81f4\u8bf7\u6c42\u5361\u4f4f\u4e0d\u52a8\uff0c\u5982\u4f55\u5904\u7406\uff1f","text":"

    \u5f53\u54cd\u5e94\u5185\u5bb9\u8fc7\u5927\u65f6\uff0c\u5728 gateway \u65e5\u5fd7\u4e2d\u53ef\u4ee5\u53d1\u73b0\u5bf9\u5e94\u63d0\u793a\u65e5\u5fd7\uff1a Max frame length of 10485760 has been exceeded\u3002 \u5728 /opt/metersphere/conf/metersphere.properties \u6dfb\u52a0\u5c5e\u6027\uff1aspring.cloud.gateway.httpclient.websocket.max-frame-payload-length=\u81ea\u5b9a\u4e49\u5927\u5c0f\uff0c\u4fee\u6539\u5b8c\u540e msctl reload \u91cd\u65b0\u52a0\u8f7d\u5728\u914d\u7f6e\u6587\u4ef6\u5373\u53ef\u3002

    "},{"location":"faq/api_test/#51-geturlnon-http-response-code-iavaneturisyntaxexception","title":"51 \u63a5\u53e3\u6d4b\u8bd5get\u8bf7\u6c42\u5728URL\u540e\u9762\u4f20\u4e2d\u6587\u3001\u7279\u6b8a\u5b57\u7b26\u53c2\u6570\uff0c\u63a5\u53e3\u8fd4\u56deNon HTTP response code: iava.net.URISyntaxException\u62a5\u9519","text":"

    \u9700\u8981\u5148\u5728\u524d\u7f6e\u811a\u672c\u4e2d\uff0c\u5bf9\u4e2d\u6587\u3001\u7279\u6b8a\u5b57\u7b26\u7b49\u5148\u8fdb\u884c\u7f16\u7801\u5e76\u5b58\u50a8\u4e3a\u53d8\u91cf\uff0c\u7136\u540e\u5728\u4f20\u53c2\u5904\u5f15\u7528\u5bf9\u5e94\u7684\u53d8\u91cf\u5373\u53ef\uff0c\u5bf9\u5e94\u7684\u524d\u7f6e\u811a\u672c\u6837\u4f8b\u5982\u4e0b\uff1a

    import java.net.URLDecoder;\nimport java.net.URLEncoder;\n\nString strTest = \"?=abc?\u4e2d%1&2<3,4>\";\nstrTest = URLEncoder.encode(strTest, \"UTF-8\");//\u8f6c\u7801\nvars.put(\"str\",strTest );\n
    "},{"location":"faq/api_test/#52-finishconnect-failed-connection-refused-1723010148003","title":"52 \u63a5\u53e3\u6d4b\u8bd5\u9875\u9762\u5f39\u51fa\u7ea2\u8272\u62a5\u9519finishConnect(.) failed: Connection refused: /172.30.10.14:8003","text":"

    \u51fa\u73b0\u539f\u56e0\uff1a\u5e38\u89c1\u4e3a\u63a5\u53e3\u6d4b\u8bd5 api-test \u5bb9\u5668\u5185\u5b58\u6ea2\u51fa\u5bfc\u81f4\u5fae\u670d\u52a1\u8fde\u63a5\u5931\u8d25\u3002 \u5904\u7406\u65b9\u6cd5\uff1a\u53ef\u4ee5\u589e\u5927 api-test \u5bb9\u5668\u5185\u5b58\u5e76\u91cd\u542f\u8be5\u5bb9\u5668\u3002 vi /opt/metersphere/docker-compose-api-test.yml \u8c03\u5927mem_limit: \u53ef\u4ee5\u4e3a2g\uff0c\u4fee\u6539\u4fdd\u5b58\u540e msctl reload \u751f\u6548\u3002

    "},{"location":"faq/enterprise/","title":"\u4f01\u4e1a\u7248\u76f8\u5173","text":""},{"location":"faq/enterprise/#1","title":"1 \u5f00\u6e90\u7248\u548c\u4f01\u4e1a\u7248\u7684\u533a\u522b\u662f\u4ec0\u4e48\uff1f","text":"

    MeterSphere \u6838\u5fc3\u529f\u80fd\u5168\u90e8\u5f00\u6e90\uff0c\u575a\u6301\u6309\u6708\u53d1\u5e03\u65b0\u7248\u672c\uff0c\u6c38\u4e45\u514d\u8d39\u4f7f\u7528\u3002 \u76f8\u6bd4 MeterSphere \u5f00\u6e90\u7248\uff0cMeterSphere \u4f01\u4e1a\u7248\u5728\u529f\u80fd\u4e0a\u63d0\u4f9b\u9762\u5411\u4f01\u4e1a\u7ea7\u5e94\u7528\u573a\u666f\u7684 X-Pack \u589e\u5f3a\u5305\uff0c\u5305\u542bUI\u6d4b\u8bd5\u3001\u7248\u672c\u7ba1\u7406\u3001\u7f3a\u9677\u53cc\u5411\u540c\u6b65\u3001\u5355\u70b9\u767b\u5f55\u7b49\u589e\u5f3a\u529f\u80fd\uff0c\u5e76\u968f\u4ea7\u54c1\u8fed\u4ee3\u6301\u7eed\u589e\u52a0\u3002\u540c\u65f6\u4f01\u4e1a\u7248\u672c\u63d0\u4f9b\u539f\u5382\u6280\u672f\u652f\u6301\u670d\u52a1\uff0c\u670d\u52a1\u5185\u5bb9\u5305\u62ec\u90e8\u7f72\u5347\u7ea7\u3001\u4f7f\u7528\u57f9\u8bad\u3001\u6700\u4f73\u5b9e\u8df5\u8d4b\u80fd\u3001\u95ee\u9898\u6392\u67e5\u7b49\u3002

    \u66f4\u591a\u4f01\u4e1a\u7248\u8be6\u60c5\u8bf7\u67e5\u770b\uff1aMeterSphere \u4f01\u4e1a\u7248\u3002

    "},{"location":"faq/enterprise/#2","title":"2 \u5982\u4f55\u7533\u8bf7\u4f01\u4e1a\u7248\u8bd5\u7528\uff1f","text":"

    \u7533\u8bf7 MeterSphere \u4f01\u4e1a\u7248\u8bd5\u7528\uff0c\u8bf7\u70b9\u51fb\uff1aMeterSphere \u4f01\u4e1a\u7248\u8bd5\u7528\u7533\u8bf7\u3002

    "},{"location":"faq/enterprise/#3-metersphere","title":"3 \u5728\u54ea\u91cc\u53ef\u4ee5\u770b\u5230MeterSphere\u540e\u7eed\u7248\u672c\u66f4\u65b0\u7684\u91cd\u70b9\uff1f","text":"

    \u5728 GitHub \u7684\u7f6e\u9876 Issue \u4e2d\u53ef\u4ee5\u67e5\u770b\u540e\u7eed\u7248\u672c\u7684\u89c4\u5212\uff1aMeterSphere \u540e\u7eed\u89c4\u5212 \u3002

    "},{"location":"faq/installation/","title":"\u5b89\u88c5\u90e8\u7f72\u76f8\u5173","text":""},{"location":"faq/installation/#1-metersphere","title":"1 \u5982\u4f55\u8bbe\u7f6e MeterSphere \u5f00\u673a\u540e\u81ea\u52a8\u542f\u52a8\uff1f","text":"

    MeterSphere \u5728\u5b89\u88c5\u811a\u672c\u4e2d\u6ca1\u6709\u914d\u7f6e docker \u670d\u52a1\u53ca\u4ee5\u53ca MeterSphere \u670d\u52a1\u81ea\u542f\u52a8\uff0c\u53ef\u53c2\u8003MeterSphere\u4e4b\u8bbe\u7f6e\u670d\u52a1\u5f00\u673a\u81ea\u542f\u52a8 \u8fdb\u884c\u914d\u7f6e\u3002

    "},{"location":"faq/installation/#2","title":"2 \u5982\u4f55\u4fee\u6539\u5e94\u7528\u7684\u9ed8\u8ba4\u7aef\u53e3\uff1f","text":"

    MeterSphere \u9ed8\u8ba4\u7684 HTTP \u670d\u52a1\u76d1\u542c\u7aef\u53e3\u4e3a8081\uff0c\u5b89\u88c5\u4e4b\u524d\u53ef\u4ee5\u5728\u914d\u7f6e\u6587\u4ef6 install.conf \u4e2d\u4fee\u6539 MS_SERVER_PORT \u5b57\u6bb5\uff0c\u7136\u540e\u518d\u8fdb\u884c\u5b89\u88c5\u3002 \u5b89\u88c5\u5b8c\u6210\u540e\u5982\u679c\u9700\u8981\u4fee\u6539\u9ed8\u8ba4\u7684\u5e94\u7528\u7aef\u53e3\uff0c\u5219\u9700\u8981\u4fee\u6539 /opt/metersphere/.env \u6587\u4ef6\u4e2d\u7684 MS_SERVER_PORT \u5b57\u6bb5\uff0c\u7136\u540e\u6267\u884c msctl reload \u547d\u4ee4\u91cd\u65b0\u52a0\u8f7d\u5e94\u7528\u3002

    "},{"location":"faq/installation/#3-kubernetes-metersphere","title":"3 \u5982\u4f55\u5728 Kubernetes \u4e2d\u642d\u5efa MeterSphere\uff1f","text":"

    MeterSphere Kubernetes \u90e8\u7f72\u64cd\u4f5c\u89c1 MeterSphere Kubernetes \u90e8\u7f72

    "},{"location":"faq/installation/#4-docker-compose-docker-compose","title":"4 docker-compose \u7248\u672c\u4e0e\u914d\u7f6e\u6587\u4ef6\u4e0d\u517c\u5bb9\u6216\u914d\u7f6e\u6587\u4ef6\u5b58\u5728\u95ee\u9898\uff0c\u8bf7\u91cd\u65b0\u5b89\u88c5\u6700\u65b0\u7248\u672c\u7684 docker-compose \u6216\u68c0\u67e5\u914d\u7f6e\u6587\u4ef6?","text":"

    \u5982\u679c\u670d\u52a1\u5668\u5df2\u7ecf\u5b89\u88c5\u4e86 docker-compose\uff0c MeterSphere \u5b89\u88c5\u811a\u672c\u68c0\u6d4b\u5230 docker-compose \u5df2\u5b89\u88c5\uff0c\u5c31\u4f1a\u8df3\u8fc7\u81ea\u52a8\u5b89\u88c5 docker-compose \u7684\u6b65\u9aa4\uff0c\u800c\u5df2\u5b89\u88c5\u7684\u7248\u672c\u4e0e MeterSphere \u8981\u6c42\u7684\u7248\u672c\u4e0d\u5339\u914d\u5c31\u4f1a\u5bfc\u81f4\u8fd9\u4e2a\u95ee\u9898\u3002\u9700\u8981\u624b\u52a8\u5347\u7ea7\u670d\u52a1\u5668\u4e0a\u7684 docker-compose \u7248\u672c\u4e3a /opt/metersphere/docker-compose_*.yml \u4e2d\u6307\u5b9a\u7684\u7248\u672c\uff0c\u6216\u8005\u628a\u79bb\u7ebf\u5b89\u88c5\u5305\u91cc\u7684 docker-compose \u6587\u4ef6\u62f7\u8d1d\u5230\u7cfb\u7edf\u76ee\u5f55\u5e76\u4fee\u6539\u6743\u9650\u5373\u53ef\uff1a

    cp docker/bin/docker-compose /usr/bin/\nchmod +x /usr/bin/docker-compose\n
    "},{"location":"faq/installation/#5","title":"5 \u5982\u4f55\u5347\u7ea7\u5230\u6307\u5b9a\u7248\u672c\uff1f","text":"

    msctl upgrade \u540e\u8fb9\u8ddf\u7248\u672c\u53f7\uff0c\u4f8b\u5982\uff1amsctl upgrade v2.10.1-lts \u3002

    "},{"location":"faq/installation/#6","title":"6 \u5982\u4f55\u5378\u8f7d\uff1f","text":"

    \u5148\u505c\u6b62\u6b63\u5728\u8fd0\u884c\u7684 MeterSphere \u5bb9\u5668\uff0c\u7136\u540e\u518d\u5220\u9664\u5bb9\u5668\uff0c\u6700\u540e\u5220\u9664\u5e94\u7528\u6570\u636e\u76ee\u5f55\u4ee5\u53ca docker \u73af\u5883\u7b49\uff0c\u5177\u4f53\u64cd\u4f5c\u89c1\u5982\u4e0b\u547d\u4ee4\uff1a

    #1\u3001\u5148\u505c\u6b62\u6b63\u5728\u8fd0\u884c\u7684 MeterSphere \u5bb9\u5668\uff0c\u7136\u540e\u518d\u5220\u9664\u5bb9\u5668\nmsctl uninstall\n\n#\u5378\u8f7d\u5e94\u7528\u6570\u636e\nrm -rf /opt/metersphere\nrm -rf /usr/local/bin/msctl\nrm -rf ~/.msrc\n\n#\u5378\u8f7d docker \u548c docker-compose\nsystemctl stop docker\nrm -rf /usr/bin/docker*\nrm -rf /usr/bin/containerd*\nrm -rf /usr/bin/ctr\nrm -rf /usr/bin/runc\nrm -rf /etc/systemd/system/docker.service\nsystemctl daemon-reload\n
    "},{"location":"faq/installation/#7","title":"7 \u5378\u8f7d\u4f1a\u5bfc\u81f4\u6570\u636e\u6e05\u7a7a\u4e48\uff1f","text":"

    MerterSphere \u5e94\u7528\u6570\u636e\u8fdb\u884c\u4e86\u672c\u5730\u7684\u6301\u4e45\u5316\u5b58\u50a8\uff0c\u6240\u4ee5 msctl uninstall \u5378\u8f7d\u4e0d\u4f1a\u5f71\u54cd\u6570\u636e\u3002

    "},{"location":"faq/installation/#8-usrlocalbinmsctl-line-115","title":"8 \u5347\u7ea7\u8fc7\u7a0b\u4e2d\u62a5\u9519\uff1a/usr/local/bin/msctl: line 115 ....","text":"

    \u4e3b\u8981\u539f\u56e0\u662f msctl \u7684 shell \u517c\u5bb9\u6027\u5bfc\u81f4\uff0ccat /usr/local/bin/msctl \u67e5\u770b\u8fd9\u4e2a\u6587\u4ef6\u5bf9\u5e94\u884c\u6570\u7684\u4ee3\u7801\uff0c\u5e76\u8fdb\u884c\u517c\u5bb9\u6027\u5904\u7406\u3002

    "},{"location":"faq/installation/#9-schema-metersphere-contains-a-failed-migration-to-version-86","title":"9 \u5347\u7ea7\u62a5\u9519\uff1aSchema metersphere contains a failed migration to version 86 !","text":"

    sql \u521d\u59cb\u5316\u5931\u8d25\u5bfc\u81f4\uff0c\u9700\u8981\u8fde\u63a5 metersphere \u6570\u636e\u5e93\u624b\u52a8\u6267\u884csql\u3002

    • \u5230 github \u6e90\u7801\u4e0a https://github.com/metersphere/metersphere/tree/v2.3.1/system-setting/backend/src/main/resources/db/migration \u4e0b\u8f7d\u5bf9\u5e94\u6587\u4ef6\u540d\u5e26 86 \u7684 flyway sql\u3002\u6b64\u5904\u94fe\u63a5v2.3.1\u4e3a\u5b89\u88c5\u7684\u7248\u672c\u53f7\uff0c\u5982\u679c\u4e0d\u662f\u8be5\u7248\u672c\uff0c\u53ef\u5207\u6362\u5230\u76ee\u6807\u7248\u672c\u518d\u4e0b\u8f7dsql\u6587\u4ef6.
    • \u5c06\u6587\u4ef6\u4e0a\u4f20\u5230 MeterSphere \u670d\u52a1\u5668\uff0c\u5e76\u5c06sql\u6587\u4ef6 copy \u5230\u5bb9\u5668\u4e2d
          #\u5c06\u5907\u4efd\u7684sql\u6570\u636e\u590d\u5236\u81f3mysql\u5bb9\u5668\n    docker cp V86__v1.10.1_release.sql mysql:/\n    #\u4f7f\u7528 metersphere \u5e76\u6267\u884csql\n    docker exec -it mysql bash\n    mysql -uroot -pPassword123@mysql\n    use metersphere;\n    #\u5bfc\u5165\u6570\u636e\u5e93\u6587\u4ef6\n    source /V86__v1.10.1_release.sql\n
    • \u5168\u90e8\u6267\u884c\u6210\u529f\u540e\uff0c\u4fee\u6539 metersphere_version \u8868\u5bf9\u5e94\u7248\u672c 86 \u7684 success \u503c\u4e3a1\uff0c\u9000\u51famysql\u5bb9\u5668\u7136\u540e msctl reload \u91cd\u542f\u670d\u52a1\u5373\u53ef\u3002 update metersphere_version set success=1 where version=86;
    "},{"location":"faq/installation/#10","title":"10 \u5982\u4f55\u5907\u4efd\u6570\u636e\u5e93?","text":"

    \u5177\u4f53\u64cd\u4f5c\u8be6\u7ec6\u89c1 MeterSphere \u6570\u636e\u5907\u4efd\u3002

    "},{"location":"faq/installation/#11-mysqldump-error-2020-got-packet-bigger-than-max_allowed_packet-bytes-when-dumping-table-api_scenario_report_detail-at-row-94","title":"11 mysqldump \u5bfc\u51fa\u6570\u636e\u5e93\u65f6\u62a5\u9519\uff1a Error 2020: Got packet bigger than 'max_allowed_packet' bytes when dumping table `api_scenario_report_detail` at row: 94","text":"

    mysqldump \u6267\u884c\u65f6\u6dfb\u52a0 max_allowed_packet \u53c2\u6570\uff1a

    docker exec -i mysql mysqldump -uroot -pPassword123@mysql metersphere --max_allowed_packet=2G > metersphere.sql\n

    "},{"location":"faq/installation/#12-non-http-response-code-javanetsockettimeoutexception","title":"12 \u6027\u80fd\u6d4b\u8bd5\u65f6\u5e76\u53d1\u91cf\u52a0\u5927\u7684\u65f6\u5019\u62a5\u9519\uff1aNon HTTP response code: java.net.SocketTimeoutException","text":"

    \u591a\u662f\u56e0\u4e3a\u670d\u52a1\u7aef\u6709\u8f83\u591a\u8bf7\u6c42\u6b63\u5728\u5904\u7406\uff08\u4e14\u5904\u7406\u65f6\u95f4\u8f83\u957f\uff09\uff0c\u5bfc\u81f4 MeterSphere \u5728\u6709\u6548\u65f6\u95f4\u5185\u65e0\u6cd5\u8fde\u63a5\u4e0a\u670d\u52a1\u5668\u800c\u51fa\u73b0\uff0c\u53ef\u901a\u8fc7\u4fee\u6539\u5355\u4e2a\u63a5\u53e3\u7684\u8fde\u63a5\u8d85\u65f6\u65f6\u95f4\u89e3\u51b3\u3002

    "},{"location":"faq/installation/#13-mysql-lower_case_table_names1","title":"13 MySQL \u6570\u636e\u5e93\u8bbe\u7f6e\u4e86\u5ffd\u7565\u5927\u5c0f\u4f46\u672a\u751f\u6548\uff0clower_case_table_names=1","text":"

    \u53ef\u80fd\u662f\u56e0\u4e3a my.cnf \u6587\u4ef6\u6743\u9650\u4e0d\u5bf9\u5bfc\u81f4\uff0c\u4fee\u6539\u6743\u9650\u540e\u91cd\u542f\u6570\u636e\u5e93\u3002

    # chmod 655 /opt/metersphere/conf/my.cnf \n# docker restart mysql\n

    "},{"location":"faq/installation/#14-kafka","title":"14 \u5982\u4f55\u5220\u9664kafka\u4e2d\u7684\u4e34\u65f6\u6570\u636e\uff0c\u51cf\u4f4e\u78c1\u76d8\u4f7f\u7528\u7387\uff1f","text":"

    v1.20.x-lts\uff0c\u9700\u8981\u540c\u65f6\u5220\u9664 Kafka \u548c Zookeeper \u7684\u4e34\u65f6\u6587\u4ef6

    msctl uninstall\nrm -rf /opt/metersphere/data/kafka/kafka   \nrm -rf  /opt/metersphere/data/zookeeper/zookeeper\nmsctl reload   #\u91cd\u65b0\u521b\u5efa\u76ee\u5f55\u548c\u57fa\u7840\u6587\u4ef6  \n

    v2.x \u5fae\u670d\u52a1\u67b6\u6784\uff0c Kafka \u4f7f\u7528\u7248\u672c\u5347\u7ea7\uff0c\u53ea\u9700\u5220\u9664 Kafka \u7684\u4e34\u65f6\u6587\u4ef6

    msctl uninstall\nrm -rf /opt/metersphere/data/kafka/kafka   \nmsctl reload   #\u91cd\u65b0\u521b\u5efa\u76ee\u5f55\u548c\u57fa\u7840\u6587\u4ef6 \n
    "},{"location":"faq/installation/#15-terminating-due-to-javalangoutofmemoryerror-gc-overhead-limit-exceeded","title":"15 \u6267\u884c\u673a\u7ecf\u5e38\u62a5\u5185\u5b58\u6ea2\u51fa\uff1aTerminating due to java.lang.OutOfMemoryError: GC overhead limit exceeded","text":"

    \u589e\u5927\u5806\u5185\u5b58\uff1a

    set JAVA_OPTS=-server -Xms512m -Xmx1024m -XX:MaxNewSize=1024m -XX:MaxPermSize=1024m;\n

    "},{"location":"faq/installation/#16-metersphere-jenkins","title":"16 MeterSphere jenkins \u63d2\u4ef6\u9a8c\u8bc1\u901a\u8fc7\u540e\u627e\u4e0d\u5230\u5de5\u4f5c\u7a7a\u95f4","text":"

    \u68c0\u67e5\u914d\u7f6e\u7684 MeterSphere URL \u5730\u5740\uff0c\u5982\u679c\u5730\u5740\u91cc\u591a\u4e86/login\u8def\u5f84\u4f1a\u51fa\u73b0\u8fd9\u4e2a\u73b0\u8c61\u3002

    "},{"location":"faq/installation/#17-jenkins-metersphere-jenkins-metersphere-meterspherejavalangruntimeexceptionhttpclient","title":"17 Jenkins \u63d2\u4ef6\u4e0e MeterSphere \u7248\u672c\u4e00\u81f4\uff0c\u5e76\u4e14\u5df2\u786e\u8ba4 Jenkins \u4e3b\u673a\u4e0e MeterSphere \u670d\u52a1\u5668\u4e4b\u95f4\u7f51\u7edc\u901a\u7545\uff0c\u4f46\u9a8c\u8bc1\u8d26\u6237\u65f6\u63d0\u793a:\u201c\u9a8c\u8bc1MeterSphere\u8d26\u53f7\u5931\u8d25\uff01java.lang.RuntimeException:HttpClient\u67e5\u8be2\u5931\u8d25\u201d\uff0c\u539f\u56e0\u662f\u4ec0\u4e48\uff1f\u5982\u4f55\u89e3\u51b3\uff1f","text":"

    \u67e5\u770b\u5e76\u786e\u8ba4 MeterSphere \u670d\u52a1\u5668\u4e0e Jenkins \u670d\u52a1\u5668\u65f6\u95f4\u662f\u5426\u4e00\u81f4\uff0c\u5982\u679c\u4e0d\u4e00\u81f4\u5c06\u4f1a\u56e0\u4e3a\u7b7e\u540d\u5931\u6548\u5bfc\u81f4\u9a8c\u8bc1\u8d26\u6237\u65f6\u5f02\u5e38\u3002

    "},{"location":"faq/installation/#18-image-not-found-xxxxxx","title":"18 \u5347\u7ea7\u6216\u5b89\u88c5\u65f6\u540e\u53f0\u62a5\u9519:image not found : xxxxxx","text":"

    \u955c\u50cf\u88ab\u8bef\u5220\u9664\u4e86\uff0c\u9700\u8981\u5728 MeterSphere \u4e3b\u673a\u4e0a\u91cd\u65b0docker pull\u8be5\u955c\u50cf\uff0c\u6216\u4e0b\u8f7d\u5b8c\u6574\u79bb\u7ebf\u5b89\u88c5\u5305\u8fdb\u884c\u79bb\u7ebf\u5347\u7ea7\u6216\u5b89\u88c5\u3002

    "},{"location":"faq/installation/#19-url","title":"19 \u524d\u7aef\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u6216\u63a5\u53e3\u573a\u666f\u62a5\u9519\uff1a\u8bf7\u68c0\u67e5\u5f53\u524d\u7ad9\u70b9url\u914d\u7f6e\uff1b","text":"

    \u672c\u5730\u642d\u5efa\u7684\u9700\u8981\u8981\u628alocalhost `\u6539\u4e3a\u5177\u4f53 IP\u3002

    "},{"location":"faq/installation/#20","title":"20 \u5982\u4f55\u76d1\u63a7\u88ab\u538b\u6d4b\u7684\u673a\u5668\uff1f","text":"

    \u5728\u88ab\u6d4b\u670d\u52a1\u5668\u4e0a\u5b89\u88c5 node-exporter \u670d\u52a1\uff0c\u7136\u540e\u5728 \u6027\u80fd\u6d4b\u8bd5-\u9ad8\u7ea7\u914d\u7f6e \u91cc\u6dfb\u52a0\u76d1\u63a7\uff0c\u586b\u5199\u88ab\u6d4b\u670d\u52a1\u5668\u4e0a node-exporter \u670d\u52a1\u7684 ip \u548c\u7aef\u53e3\u4ee5\u53ca\u76d1\u63a7\u9879\u3002\u8be6\u7ec6\u64cd\u4f5c\u89c1\u6027\u80fd\u6d4b\u8bd5-\u76d1\u63a7

    "},{"location":"faq/installation/#21","title":"21 \u5fd8\u8bb0 \u5bc6\u7801\u5982\u4f55\u5904\u7406\uff1f","text":"

    MeterSphere \u666e\u901a\u7528\u6237\u5fd8\u8bb0\u5bc6\u7801\uff0c\u7ba1\u7406\u5458\u53ef\u4ee5\u5728\u7cfb\u7edf\u8bbe\u7f6e-\u7528\u6237\u9875\u9762\u4e2d\u8fdb\u884c\u4fee\u6539\u3002

    "},{"location":"faq/installation/#22","title":"22 \u7cfb\u7edf\u8fd0\u884c\u4e00\u6bb5\u65f6\u95f4\u540e\u78c1\u76d8\u53ef\u4ee5\u6e05\u7406\u54ea\u4e9b\u65e0\u7528\u7684\u6587\u4ef6\u6765\u91ca\u653e\u78c1\u76d8","text":"
    • \u5220\u9664\u4e4b\u524d\u7248\u672c\u591a\u4f59\u7684\u955c\u50cf\u3002 docker rmi 'docker images -q' docker images # \u68c0\u67e5\u5269\u4f59\u955c\u50cf
    • \u5220\u9664\u4e4b\u524d\u7684MeterSphere \u5b89\u88c5\u5305\u548c\u89e3\u538b\u5305\u3002
    • \u51cf\u5c11\u7cfb\u7edf\u65e5\u5fd7\u4fdd\u7559\u5929\u6570\uff1a vi /opt/metersphere/conf/metersphere.properties \u589e\u52a0\u914d\u7f6e\u9879\u8bbe\u7f6e\u65e5\u5fd7\u4fdd\u5b58\u5929\u6570\uff0c\u5982\uff1a logger.max.history=3\u3002
    • \u505c\u6b62\u5b9a\u65f6\u4efb\u52a1\uff0c\u5e76\u505c\u6b62 MeterSphere \u670d\u52a1\uff0c\u5220\u9664/opt/metersphere/data/kafka/kafka\u548c/opt/metersphere/data/zookeeper/zookeeper\uff08v2.3\u4e4b\u524d\uff09\u76ee\u5f55\uff0c\u7136\u540e\u518d\u91cd\u542f MeterSphere \u670d\u52a1\u3002
    "},{"location":"faq/installation/#23-metersphere-prometheus-restarting","title":"23 MeterSphere \u90e8\u7f72\u4e2d\u9047\u5230 Prometheus \u542f\u52a8\u4e0d\u8d77\u6765\uff0c\u4e00\u76f4\u5904\u4e8e Restarting \u7684\u95ee\u9898","text":"

    \u53ef\u80fd\u662f\u56e0\u4e3a\u6587\u4ef6\u6743\u9650\u4e0d\u5bf9\u5bfc\u81f4\uff0c\u4fee\u6539\u6743\u9650\u540e\u5220\u9664\u4e4b\u524d\u7684 prometheus \u5bb9\u5668\u5e76 reload\u3002

    chmod -R 755 /opt/metersphere/conf/prometheus\ndocker stop ms-prometheus\ndocker rm ms-prometheus\nmsctl reload\n

    "},{"location":"faq/installation/#24-redis-restarting","title":"24 \u9047\u5230 redis \u542f\u52a8\u4e0d\u8d77\u6765\uff0c\u4e00\u76f4\u5904\u4e8e Restarting \u7684\u95ee\u9898","text":"

    \u53ef\u80fd\u662f\u56e0\u4e3a redis.conf \u6587\u4ef6\u6743\u9650\u4e0d\u5bf9\u5bfc\u81f4\uff0c\u4fee\u6539\u6743\u9650\u540e\u5220\u9664\u4e4b\u524d\u7684 redis \u5bb9\u5668\u5e76 reload\u3002

    chmod -R 755 /opt/metersphere/conf/redis.conf\ndocker stop redis\ndocker rm redis\nmsctl reload\n

    "},{"location":"faq/installation/#25-redis","title":"25 Redis \u65e0\u6cd5\u8fde\u63a5","text":"
    • \u68c0\u67e5\u9632\u706b\u5899\u662f\u5426\u5f00\u542f\u3002
    • \u68c0\u67e5 6379\u7aef\u53e3\u662f\u5426\u5f00\u653e\u3002
    • \u68c0\u67e5 opt/metersphere/.env \u6587\u4ef6\u4e2d\u914d\u7f6e\u7684 Redis \u5730\u5740\u662f\u5426\u662f\u5bf9\u4e8e\u7684\u670d\u52a1\u5668\u7684IP\u5730\u5740\u3002\u5982\u5730\u5740\u6b63\u786e\u4efb\u65e0\u6cd5\u8fde\u63a5\u53ef\u4fee\u6539 opt/metersphere/.env \u6587\u4ef6\u628aMS_REDIS_HOST=redis
    "},{"location":"faq/installation/#26-docker-docker-error-response-from-daemon-oci-runtime-create-failed-systemd-cgroup-flag-passed-but-systemd-support-for-managing-cgroups-is-not-available","title":"26 docker \u8fd0\u884c\u9519\u8bef\uff1adocker: Error response from daemon: OCI runtime create failed: systemd cgroup flag passed, but systemd support for managing cgroups is not available:\u2026\u2026","text":"
    • \u6253\u5f00 daemon.json \u6587\u4ef6\uff0c \u5c06 \"exec-opts\": [\"native.cgroupdriver=systemd\"] \u5220\u9664\u3002
    • \u91cd\u542f docker\uff1aservice docker restart\u3002
    • \u91cd\u542f\u670d\u52a1: msctl reload\u3002
    "},{"location":"faq/installation/#27-javasqlsqlnontransientconnectionexception-data-source-rejected-establishment-of-connection-message-from-server-too-many-connection","title":"27 \u540e\u53f0\u65e5\u5fd7\u63d0\u793a\u6570\u636e\u5e93\u8fde\u63a5\u6570\u5f02\u5e38\uff1ajava.sql.SQLNonTransientConnectionException: Data source rejected establishment of connection, message from server, too many connection","text":"

    \u53ef\u80fd\u662f\u56e0\u4e3a my.cnf \u6587\u4ef6\u6743\u9650\u4e0d\u5bf9\u5bfc\u81f4\u914d\u7f6e\u6587\u4ef6\u6ca1\u6709\u751f\u6548\uff0c\u4fee\u6539\u6743\u9650\u540e\u5220\u9664\u4e4b\u524d\u7684 mysql \u5bb9\u5668\u5e76 reload\u3002

    chmod -R 655 /opt/metersphere/conf/my.cnf\ndocker stop mysql\ndocker rm mysql\nmsctl reload\n

    "},{"location":"faq/installation/#28-sqlsyntaxerrorexceptionexpression-3-of-select-list-is-not-in-group-by-clause-and-contains-nonaggregated-column-metersphere-_devapi_definition_exec_resultstart_time","title":"28 \u540e\u53f0\u65e5\u5fd7\u63d0\u793a\u6570\u636e\u5e93\u8bed\u6cd5\u5f02\u5e38\uff1aSQLSyntaxErrorException\uff1aExpression #3 of SELECT list is not in GROUP BY clause and contains nonaggregated column \u201cmetersphere\u201d _dev.api_definition_exec_result.start_time\u2019","text":"

    \u4fee\u6539\u6570\u636e\u5e93\u914d\u7f6e\u6587\u4ef6 my.cnf\uff0c\u589e\u52a0\u914d\u7f6e\u8bed\u6cd5\u6821\u9a8c\u89c4\u5219\uff1asql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE

    "},{"location":"faq/installation/#29-sqljavaxnetsslsslhandshakeexception-no-appropriate-protocol","title":"29 \u524d\u540e\u7f6eSQL\u811a\u672c\u6267\u884c\u62a5\u9519\uff1ajavax.net.ssl.SSLHandshakeException: No appropriate protocol\u2026\u2026","text":"

    \u5728\u73af\u5883\u7ba1\u7406-\u6570\u636e\u5e93\u914d\u7f6e\u4e2d\u7684\"\u6570\u636e\u5e93\u8fde\u63a5URL\"\u540e\u9762\u6dfb\u52a0 '?createDatabaseIfNotExist=true&useSSL=false'\u3002

    "},{"location":"faq/installation/#30-msctl-status","title":"30 msctl status\u663e\u793a\u670d\u52a1\u6b63\u5e38\uff0c\u4f46\u662f\u5b9e\u9645\u670d\u52a1\u5374\u8bbf\u95ee\u4e0d\u4e86\u600e\u4e48\u529e\uff1f","text":"

    \u5982\u679c MeterSphere \u4e3b\u673a\u7f51\u7edc\u914d\u7f6e\uff08IP\u3001firewalld\u3001iptables\u7b49\uff09\u53d1\u751f\u4e86\u53d8\u5316\uff0c\u4f1a\u5bfc\u81f4\u4e4b\u524d\u7684\u5bb9\u5668\u7f51\u7edc\u5931\u6548\uff0c\u51fa\u73b0\u6d4f\u89c8\u5668\u65e0\u6cd5\u8bbf\u4f46\u4f7f\u7528 msctl status \u547d\u4ee4\u67e5\u770b\u5982MeterSphere \u5404\u670d\u52a1\u7ec4\u4ef6\u8fd0\u884c\u90fd\u6b63\u5e38\u5f97\u73b0\u8c61\u3002\u9700\u8981\u5148\u91cd\u542f docker\uff0c\u518d\u91cd\u542f MeterSphere \u670d\u52a1\u3002

    "},{"location":"faq/installation/#31-session","title":"31 \u5982\u4f55\u4fee\u6539 session \u8fc7\u671f\u65f6\u95f4\uff1f","text":"

    \u5728 /opt/metersphere/conf/metersphere.properties \u4e2d\u6dfb\u52a0\u5b57\u6bb5 session.timeout\uff0c\u5355\u4f4d\u79d2\u3002

    "},{"location":"faq/installation/#32-k8s-metersphere-413-request-entity-too-large","title":"32 K8S \u90e8\u7f72 metersphere \u5728\u4e0a\u4f20\u6587\u4ef6\u65f6\u63d0\u793a\uff1a413 request entity too large","text":"

    \u914d\u7f6e ngnix \u8bf7\u6c42\u89e3\u9664\u9ed8\u8ba4\u7684 1M \u9650\u5236\uff1a

    kubectl edit ingress metersphere\napiVersion: extensions/v1beta1\nkind: Ingress\nmetadata:\nannotations:\nmeta.helm.sh/release-name: metersphere\nmeta.helm.sh/release-namespace: default\nnginx.ingress.kubernetes.io/proxy-body-size: 50m\n

    "},{"location":"faq/installation/#33-metersphere-413-request-entity-too-large","title":"33 \u4e3b\u673a\u90e8\u7f72 metersphere \u5728\u4e0a\u4f20\u6587\u4ef6\u65f6\u63d0\u793a\uff1a413 request entity too large","text":"

    \u5728 nginx \u670d\u52a1\u7684\u914d\u7f6e\u6587\u4ef6 nginx.conf \u7684 http \u6bb5\u4e2d\u52a0\u5165 client_max_body_size xxm\uff0c xx\u6839\u636e\u9700\u6c42\u6539\u52a8\uff0c\u4fdd\u5b58\u540e\u91cd\u542f nginx\u3002

    "},{"location":"faq/installation/#34-nginx-f12-websocket","title":"34 \u4f7f\u7528Nginx\u914d\u7f6e\u53cd\u5411\u4ee3\u7406\u540e\uff0c\u5728\u8fdb\u884c\u63a5\u53e3\u6d4b\u8bd5\u65f6\uff0c\u9875\u9762\u5361\u5728\u52a0\u8f7d\u72b6\u6001\uff0c\u6309 F12 \u53ef\u4ee5\u770b\u5230 websocket \u8fde\u63a5\u5931\u8d25","text":"

    \u9700\u8981\u52a0\u4e0a Nginx websocket \u914d\u7f6e:

    server{\n  ...\n  location / {\n    proxy_pass http://jumpserver_nginx;\n    proxy_set_header X-Real-IP $remote_addr;\n    proxy_set_header Host $host;\n    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\n\n    #\u52a0\u4e0a\u8fd9\u6bb5\n    proxy_http_version 1.1;\n    proxy_set_header Upgrade $http_upgrade;\n    proxy_set_header Connection \"upgrade\";\n  }\n}\n
    "},{"location":"faq/installation/#35-the-connection-is-abnormal-please-check-the-environment-configuration","title":"35 \u63a5\u53e3\u8fd0\u884c\u65f6\uff0c\u9875\u9762\u62a5\u9519:The connection is abnormal\uff0c please check the environment configuration","text":"
    • \u5982\u679c\u4f7f\u7528\u4e86Nginx\uff0c \u8bf7\u53c2\u8003 \u914d\u7f6e\u53cd\u5411\u4ee3\u7406\u3002
    • \u5982\u679c\u4f7f\u7528\u4e86fidder\u3001charles\u7b49\u4ee3\u7406\u4ee3\u5de5\u5177\uff0c\u5148\u5173\u95ed\u3002
    • \u5982\u679c https://ip:8081 \u88ab\u62e6\u622a\u4e86\uff0c\u8bf7\u4f7f\u7528 http://ip:8081 \u3002
    "},{"location":"faq/installation/#36-http-error-500-javaxservletservletexception-filtered-request-failed","title":"36 \u5347\u7ea7\u540e\u670d\u52a1\u6b63\u5e38\uff0c\u4f46\u662f\u8bbf\u95ee\u9875\u9762\u63d0\u793a\uff1aHTTP ERROR 500 javax.servlet.ServletException: Filtered request failed.","text":"
    • \u6e05\u6d4f\u89c8\u5668\u7f13\u5b58\uff0c\u91cd\u65b0\u6253\u5f00\u6d4f\u89c8\u5668\u8fdb\u884c\u8bbf\u95ee\u3002
    • \u6e05\u9664 redis \u6570\u636e\uff1a
    docker exec -it redis sh\nredis-cli   \nauth Password123@redis\nflushall\n
    "},{"location":"faq/installation/#37-javaiofilenotfoundexceptionoptmeterspherelogsmeterspherems-jmeter-run-loglogno-such-file-or-directory","title":"37 \u65e5\u5fd7\u4e2d\u63d0\u793a\uff1ajava.io.FileNotFoundException\uff1a/opt/metersphere/logs/metersphere/ms-jmeter-run-log.log(no such file or directory)","text":"

    \u68c0\u67e5 selinux \u72b6\u6001\uff0c\u5982\u679c\u662f\u5f00\u542f\u72b6\u6001\uff0c\u5c1d\u8bd5\u5173\u95ed\u540e\u518d\u91cd\u542f docker\uff0c\u91cd\u65b0\u52a0\u8f7d MeterSphere\u3002

    "},{"location":"faq/installation/#38-metersphere-k8s","title":"38 MeterSphere k8s\u90e8\u7f72\u540e\u5982\u4f55\u63a7\u5236\u6570\u636e\u5e93\u7684\u8fde\u63a5\u6570","text":"
    • \u5728 metersphere-config \u7684 ConfigMap \u6587\u4ef6\u91cc\uff0cDATABASE \u5904\u65b0\u589e\u5982\u4e0b\u4e24\u884c\u53c2\u6570\u3002
    • \u5728 values.yml \u6587\u4ef6\u91cc\uff0cDATABASE \u5904\u65b0\u589e\u5982\u4e0b\u4e24\u884c\u53c2\u6570\u3002
      spring.datasource.hikari.maximum-pool-size=\u4f60\u60f3\u8981\u7684\u6570\u503c\nspring.datasource.quartz.hikari.maximum-pool-size=\u4f60\u60f3\u8981\u7684\u6570\u503c\n
    "},{"location":"faq/installation/#39-encountered-error-while-bringing-up-the-project-msctl-status-mysql-restarting","title":"39 \u5b89\u88c5\u65f6\u51fa\u73b0\uff1aEncountered error while bringing up the project\uff0c msctl status \u65f6\u770b\u5230 mysql \u5bb9\u5668\u4e00\u76f4 Restarting","text":"

    \u5728 /opt/metersphere/docker-compose-mysql.yml \u6587\u4ef6 restart: always \u540e\u9762\u4e00\u884c\u52a0 privileged: true \u8fd9\u4e2a\u53c2\u6570\uff0c\u7136\u540e\u518d\u6267\u884c msctl reload \u5373\u53ef\u3002

    "},{"location":"faq/installation/#40-creating-network-metersphere_ms-network-with-driver-brige-pool-overlaps-with-other-one-on-this-address-space","title":"40 \u5b89\u88c5\u90e8\u7f72\u65f6\u62a5\u9519\uff1aCreating network \"metersphere_ms-network\" with driver \"brige\" Pool overlaps with other one on this address space","text":"

    \u4e3b\u8981\u539f\u56e0\u662f MeterSphere \u9ed8\u8ba4\u7684\u5bb9\u5668\u7f51\u7edc\u5730\u5740\u7a7a\u95f4\u5176\u5b83\u5730\u5740\u51b2\u7a81\uff0c\u9700\u8981\u91cd\u65b0\u624b\u52a8\u4fee\u6539\u5e76\u91cd\u65b0\u521b\u5efa\u3002

    • \u6e05\u9664\u5b50\u7f51\u7f51\u6bb5\uff1adocker network prune
    • \u5c06 opt/metersphere/.env \u91cc MS_DOCKER_SUBNET \u6539\u6210\u5176\u5b83\u7f51\u7edc\u6bb5
    • \u624b\u52a8\u521b\u5efa\u5bb9\u5668\u7f51\u7edc\uff1adocker network create metersphere_ms-network
    • \u91cd\u542f\u670d\u52a1\u5668\uff1amsctl reload
    "},{"location":"faq/installation/#41","title":"41 \u6570\u636e\u5e93\u91c7\u7528\u5b89\u88c5\u5305\u5185\u7f6e\u6570\u636e\uff0c\u672a\u5f00\u542f\u5668\u9632\u706b\u5899\u7684\u60c5\u51b5\u4e0b\uff0c\u4e3a\u4f55\u670d\u52a1\u8fde\u4e0d\u4e0a\u6570\u636e\u5e93\uff1f","text":"

    \u68c0\u67e5 /opt/metersphere/.env \u4e2d\u7684 DOCKER_SUBNET \u4e0e\u670d\u52a1\u5668\u7f51\u5361\u662f\u5426\u5728\u540c\u4e00\u7f51\u6bb5\uff0c\u5982\u679c\u662f\u540c\u4e00\u7f51\u6bb5\u5c06\u5f71\u54cd\u8def\u7531\u8f6c\u53d1\uff0c\u5bfc\u81f4\u670d\u52a1\u8fde\u4e0d\u4e0a\u6570\u636e\u5e93\u3002

    • \u4fee\u6539env\u6587\u4ef6\u4e2d\u7684 DOCKER_SUBNET \u7684\u7f51\u6bb5\u914d\u7f6e\uff0c\u4e0e\u4e3b\u673a\u4e0d\u5728\u540c\u4e00\u7f51\u6bb5\u3002
    • \u6267\u884c msctl uninstall -v \u5148\u8fdb\u884c\u5378\u8f7d\uff0c\u518d\u6267\u884c msctl reload \u91cd\u65b0\u521b\u5efa\u5bb9\u5668\u3002
    "},{"location":"faq/load_test/","title":"\u6027\u80fd\u6d4b\u8bd5\u76f8\u5173","text":""},{"location":"faq/load_test/#1","title":"1 \u662f\u5426\u652f\u6301/\u5982\u4f55\u652f\u6301\u5206\u5e03\u5f0f\u7684\u6027\u80fd\u6d4b\u8bd5\uff1f","text":"

    MeterSphere \u901a\u8fc7\u5728\u6d4b\u8bd5\u8d44\u6e90\u6c60\u4e2d\u6dfb\u52a0\u591a\u4e2a\u6d4b\u8bd5\u6267\u884c\u8282\u70b9\u7684\u65b9\u5f0f\u6765\u652f\u6301\u5206\u5e03\u5f0f\u7684\u6027\u80fd\u6d4b\u8bd5\u3002\u5728\u6211\u4eec\u5411\u4e00\u4e2a\u6d4b\u8bd5\u8d44\u6e90\u6c60\u4e2d\u6dfb\u52a0\u8282\u70b9\u65f6\uff0c\u9664\u4e86\u8282\u70b9\u7684 IP\u3001\u7aef\u53e3\u4fe1\u606f\u5916\uff0c\u8fd8\u9700\u8981\u6839\u636e\u8be5\u8282\u70b9\u7684\u673a\u5668\u89c4\u683c\uff0c\u914d\u7f6e\u8be5\u8282\u70b9\u53ef\u4ee5\u652f\u6301\u7684\u6700\u5927\u5e76\u53d1\u6570\u3002\u5f53\u6211\u4eec\u5728\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u7684\u8fc7\u7a0b\u4e2d\u9009\u62e9\u4e86\u67d0\u4e2a\u6d4b\u8bd5\u8d44\u6e90\u6c60\u65f6\uff0cMeterSphere \u4f1a\u5c06\u672c\u6b21\u6027\u80fd\u6d4b\u8bd5\u5b9a\u4e49\u7684\u5e76\u53d1\u7528\u6237\u6570\uff0c\u6309\u7167\u6240\u9009\u6d4b\u8bd5\u8d44\u6e90\u6c60\u7684\u8282\u70b9\u652f\u6301\u7684\u6700\u5927\u5e76\u53d1\u6570\u8fdb\u884c\u6309\u6bd4\u4f8b\u62c6\u5206\uff0c\u5728\u6d4b\u8bd5\u5f00\u59cb\u6267\u884c\u540e\uff0c\u6bcf\u4e2a\u6d4b\u8bd5\u6267\u884c\u8282\u70b9\u4f1a\u5c06\u6d4b\u8bd5\u7ed3\u679c\u3001\u6d4b\u8bd5\u65e5\u5fd7\u7b49\u4fe1\u606f\u8f93\u9001\u5230\u6267\u884c\u7684 Kafka \u961f\u5217\u4e2d\uff0cMeterSphere \u4e2d\u7684 data-streaming \u7ec4\u4ef6\u4f1a\u4ece Kafka \u4e2d\u6536\u96c6\u8fd9\u4e9b\u4fe1\u606f\u5e76\u8fdb\u884c\u6c47\u603b\u5904\u7406\u3002

    \u4f8b\u5982\u5f53\u6211\u4eec\u5728\u7cfb\u7edf\u4e2d\u5b58\u5728\u4e00\u4e2a\u5982\u4e0b\u914d\u7f6e\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60\uff0c\u5e76\u9009\u62e9\u8be5\u6d4b\u8bd5\u8d44\u6e90\u6c60\u6267\u884c\u4e00\u4e2a 10000 \u5e76\u53d1\u7528\u6237\u7684\u6027\u80fd\u6d4b\u8bd5\u65f6\uff0cnode1 \u53ca node2 \u5c06\u5404\u5206\u914d 4000 \u4e2a\u5e76\u53d1\u7528\u6237\uff0cnode3 \u5c06\u5206\u914d 2000 \u4e2a\u5e76\u53d1\u7528\u6237\u3002

    "},{"location":"faq/load_test/#2","title":"2 \u5982\u4f55\u5411\u6d4b\u8bd5\u8d44\u6e90\u6c60\u4e2d\u6dfb\u52a0\u8282\u70b9\uff1f","text":"

    \u9996\u5148\u9700\u8981\u5728\u8981\u6dfb\u52a0\u7684\u8282\u70b9\u4e0a\u90e8\u7f72 MeterSphere \u7684 node-controller \u7ec4\u4ef6\uff0c\u5b89\u88c5\u65b9\u5f0f\u53c2\u8003\u672c\u6587\u6863\u300c\u5728\u7ebf\u5b89\u88c5\u300d\u6216\u300c\u79bb\u7ebf\u5b89\u88c5\u300d\u7ae0\u8282\u5185\u5bb9\uff0c\u5728\u6267\u884c\u5b89\u88c5\u811a\u672c\u524d\uff0c\u4fee\u6539 install.conf \u6587\u4ef6\u4e2d\u7684 MS_INSTALL_MODE \u5b57\u6bb5\u7684\u503c\u4e3a node-controller \u540e\u6267\u884c\u5b89\u88c5\u811a\u672c\u3002\u5b89\u88c5\u5b8c\u6210\u901a\u8fc7 msctl status \u67e5\u770b\u7ec4\u4ef6\u72b6\u6001\u662f\u5426\u6b63\u5e38\u3002 \u8282\u70b9\u6dfb\u52a0\u5b8c\u6210\u70b9\u51fb\u786e\u5b9a\u540e\u7cfb\u7edf\u5c06\u5bf9\u8282\u70b9\u72b6\u6001\u8fdb\u884c\u68c0\u67e5\uff0c\u82e5\u6d4b\u8bd5\u8d44\u6e90\u6c60\u4e3a\u53ef\u7528\u72b6\u6001\u5219\u8bf4\u660e\u8be5\u6d4b\u8bd5\u8d44\u6e90\u6c60\u53ca\u5176\u4e2d\u7684\u8282\u70b9\u53ef\u4ee5\u6b63\u5e38\u4f7f\u7528\u3002

    "},{"location":"faq/load_test/#3-metersphere-jmeter","title":"3 \u91c7\u7528 MeterSphere \u538b\u6d4b\u548c\u624b\u52a8\u4f7f\u7528 JMeter \u547d\u4ee4\u884c\u538b\u6d4b\u5f97\u5230\u6027\u80fd\u6d4b\u8bd5\u7ed3\u679c\u5dee\u8ddd\u5f88\u5927\u8be5\u5982\u4f55\u4f18\u5316\uff1f","text":"
    • \u793e\u533a\u7248 \u793e\u533a\u7248\u9ed8\u8ba4\u91c7\u7528\u540e\u7f6e\u76d1\u542c\u7684\u65b9\u5f0f\u5b9e\u65f6\u5904\u7406\u62a5\u544a\uff0c\u5373\u5728 JMX \u811a\u672c\u6587\u4ef6\u4e2d\u589e\u52a0 Kafka BackendListener \u914d\u7f6e\uff0c\u5404\u4e2a NodeController \u8282\u70b9\u5728\u672c\u5730\u542f\u52a8 JMeter \u5bb9\u5668\u6267\u884c\u8be5 JMX \u811a\u672c\uff0c\u8fc7\u7a0b\u4e2d\u901a\u8fc7 Kafka BackendListener \u5c06\u539f\u59cb\u7684 JTL \u7ed3\u679c\u6570\u636e\u4e0a\u4f20\u5230\u6307\u5b9a\u7684 Kafka Topic \u4e2d\uff0cDataStreaming \u4f5c\u4e3a\u8be5 Kafka Topic \u7684\u6d88\u8d39\u8005\u5bf9\u5404\u4e2a\u8282\u70b9\u7684\u6570\u636e\u8fdb\u884c\u6c47\u603b\uff0c\u5e76\u8ba1\u7b97\u6027\u80fd\u6d4b\u8bd5\u62a5\u544a\u4e2d\u7684\u5404\u9879\u6307\u6807\u3002 \u56e0\u6b64\u5728\u9ad8\u5e76\u53d1\u65f6 Kafka \u548c DataStreaming \u5f88\u5bb9\u6613\u6210\u4e3a\u74f6\u9888\uff0c\u53ef\u4ee5\u90e8\u7f72 Kafka \u548c DataStreaming \u96c6\u7fa4\u4ee5\u53ca\u589e\u52a0 Partition \u7684\u6570\u91cf\u6765\u589e\u52a0 Kafka \u7684\u541e\u5410\u91cf\u548c\u5904\u7406\u80fd\u529b\u3002\u4f18\u5316\u540e\u6b63\u5e38\u53ef\u4ee5\u8fbe\u5230\u2154\u5de6\u53f3\u7684\u5dee\u8ddd\u3002
    • \u4f01\u4e1a\u7248 \u9488\u5bf9\u793e\u533a\u7248 Kafka BackendListener \u65b9\u5f0f\uff0c\u9700\u8981\u4e0a\u4f20\u548c\u5904\u7406\u539f\u59cb\u7684 JTL \u7ed3\u679c\uff0c\u8fc7\u7a0b\u4e2d\u9700\u8981\u5904\u7406\u5927\u91cf\u7684\u6570\u636e\uff0c\u4f01\u4e1a\u7248\u4e2d\u505a\u4e86\u76f8\u5173\u4f18\u5316\uff0c\u5373\u5728\u6267\u884c\u6d4b\u8bd5\u8fc7\u7a0b\u4e2d\u4e0d\u518d\u4f7f\u7528 BackendListener\uff0c\u5404\u4e2a NodeController \u542f\u52a8 JMeter \u5bb9\u5668\u65f6\u9644\u5e26\u542f\u52a8\u4e00\u4e2a Java \u7a0b\u5e8f\uff0c\u8be5 Java \u7a0b\u5e8f\u8d1f\u8d23\u5b9e\u65f6\u5904\u7406\u672c\u5730 JMeter \u4ea7\u751f\u7684 JTL \u7ed3\u679c\u6570\u636e\uff0c\u751f\u6210\u6027\u80fd\u6d4b\u8bd5\u62a5\u544a\u4e2d\u7684\u5404\u9879\u6307\u6807\u540e\u4e0a\u4f20\u5230\u6307\u5b9a\u7684 Kafka Topic \u4e2d\uff0cDataStreaming \u4f5c\u4e3a\u8be5 Kafka Topic \u7684\u6d88\u8d39\u8005\u5bf9\u5404\u4e2a\u8282\u70b9\u7684\u6570\u636e\u8fdb\u884c\u6c47\u603b\u3002 \u4e0e\u4f18\u5316\u524d\u65b9\u6848\u76f8\u6bd4\uff0cKafka \u548c DataStreaming \u9700\u8981\u5904\u7406\u7684\u6570\u636e\u5927\u5927\u964d\u4f4e\uff0c\u6574\u4f53\u4e0a\u5bf9\u4e8e\u5e76\u53d1\u91cf\u8f83\u5927\u60c5\u51b5\u4e0b\u7684\u7ed3\u679c\u5904\u7406\u80fd\u529b\u5927\u5927\u63d0\u5347\u3002 \u540c\u65f6\u53ef\u4ee5\u91c7\u7528 \u90e8\u7f72 Kafka \u548c DataStreaming \u96c6\u7fa4\u4ee5\u53ca\u589e\u52a0 Partition \u6570\u91cf\u7684\u6765\u589e\u52a0 Kafka \u7684\u541e\u5410\u91cf\u548c\u5904\u7406\u80fd\u529b\uff0c\u53ef\u66f4\u52a0\u63a5\u8fd1 JMeter \u7684\u771f\u5b9e\u503c\u3002
    "},{"location":"faq/load_test/#4-kafka","title":"4 \u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u65f6\u63d0\u793aKafka \u4e0d\u53ef\u7528\uff0c\u8bf7\u68c0\u67e5\u914d\u7f6e\uff0c\u5982\u4f55\u89e3\u51b3\uff1f","text":"

    \u7cfb\u7edf\u5728\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u4e4b\u524d\uff0c\u4f1a\u5148\u68c0\u67e5\u5b89\u88c5\u7cfb\u7edf\u65f6\u914d\u7f6e\u7684 Kafka \u5730\u5740\u662f\u5426\u53ef\u7528\u3002\u5f53\u63d0\u793a\u8be5\u4fe1\u606f\u65f6\uff0c\u8868\u660e MeterSphere \u65e0\u6cd5\u6b63\u5e38\u8fde\u63a5\u5230 Kafka\uff0c\u53ef\u4ee5\u6309\u7167\u4ee5\u4e0b\u6392\u67e5\u601d\u8def\u8fdb\u884c\u5206\u6790\u548c\u5b9a\u4f4d\uff1a

    \uff081\uff09\u68c0\u67e5 Kafka \u662f\u5426\u6b63\u5e38\u8fd0\u884c \u5982\u679c\u5728\u5b89\u88c5\u65f6\u4f7f\u7528\u7684\u5916\u90e8\u7684 Kafka\uff0c\u8bf7\u8054\u7cfb\u76f8\u5173\u4eba\u5458\u8fdb\u884c\u6392\u67e5\uff0c\u68c0\u67e5 Kafka \u670d\u52a1\u662f\u5426\u6b63\u5e38\uff1b\u5982\u679c\u5b89\u88c5\u65f6\u4f7f\u7528 MeterSphere \u9ed8\u8ba4\u914d\u7f6e\u8fdb\u884c\u5b89\u88c5\uff0c\u4f7f\u7528\u4e86\u81ea\u5e26\u7684 Kafka \u670d\u52a1\uff0c\u8bf7\u901a\u8fc7\u5982\u4e0b\u547d\u4ee4\u8fdb\u884c\u6392\u67e5\u3002

    # \u68c0\u67e5\u5404\u7ec4\u4ef6\u7684\u8fd0\u884c\u72b6\u6001\nmsctl status\n# \u82e5 Kafka \u5bb9\u5668\u4e0d\u5904\u4e8e `healthy` \u72b6\u6001\uff0c\u67e5\u770b Kafka \u65e5\u5fd7\u8fdb\u884c\u8fdb\u4e00\u6b65\u6392\u67e5\ndocker logs kafka\n

    \uff082\uff09\u68c0\u67e5 MeterSphere \u5230 Kafka \u670d\u52a1\u7684\u7f51\u7edc\u8fde\u63a5 \u5982\u679c Kafka \u670d\u52a1\u72b6\u6001\u6b63\u5e38\uff0c\u8bf7\u901a\u8fc7\u5982\u4e0b\u547d\u4ee4\u68c0\u67e5 ms-server \u5bb9\u5668\u662f\u5426\u80fd\u6b63\u5e38\u8fde\u63a5\u5230 Kafka \u670d\u52a1\u3002

    # \u68c0\u67e5 ms-server \u662f\u5426\u80fd\u6b63\u5e38\u8bbf\u95ee Kafka \u670d\u52a1\n[root@meter-prototype ~]# docker exec ms-server nc -zv ${kafka \u670d\u52a1 IP} ${kafka \u670d\u52a1\u7aef\u53e3}\nkafka (172.23.0.5:19092) open\n
    \u5982\u679c ms-server \u4e0d\u80fd\u6b63\u5e38\u8bbf\u95ee Kafka \u670d\u52a1\uff0c\u63d0\u793ahost is unreachable\uff0c\u6267\u884c ifconfig \u5c06 br-XXX \u548c docker-XX \u7684\u7f51\u6bb5\uff0c\u52a0\u5165\u5230\u9632\u706b\u5899\u7b56\u7565\u4e2d
    firewall-cmd --zone=trusted --add-source=172.18.0.1/16 --permanent\uff1b\nfirewall-cmd --zone=trusted --add-source=172.19.0.1/16 --permanent\uff1b\nfirewall-cmd --reload\n

    \u5982\u679c\u5728\u5b89\u88c5\u65f6\u4f7f\u7528\u7684\u5916\u90e8\u7684 Kafka\uff0c\u8bf7\u8054\u7cfb\u76f8\u5173\u4eba\u5458\u8fdb\u884c\u6392\u67e5\uff0c\u68c0\u67e5 MeterSphere \u90e8\u7f72\u670d\u52a1\u5668\u5230 Kafka \u670d\u52a1\u4e4b\u95f4\u7684\u7f51\u7edc\u8fde\u63a5\u662f\u5426\u6b63\u5e38\uff0c\u662f\u5426\u6709\u9632\u706b\u5899\u3001\u5b89\u5168\u7ec4\u7b49\u5b89\u5168\u7b56\u7565\u7684\u5f71\u54cd\uff1b\u5982\u679c\u5b89\u88c5\u65f6\u4f7f\u7528 MeterSphere \u9ed8\u8ba4\u914d\u7f6e\u8fdb\u884c\u5b89\u88c5\uff0c\u4f7f\u7528\u4e86\u81ea\u5e26\u7684 Kafka \u670d\u52a1\uff0c\u8bf7\u68c0\u67e5 MeterSphere \u90e8\u7f72\u670d\u52a1\u5668\u4e0a\u7684\u9632\u706b\u5899\u914d\u7f6e\uff0c\u662f\u5426\u653e\u901a\u4e86 Kafka \u7684\u670d\u52a1\u7aef\u53e3\uff08\u9ed8\u8ba4 19092\uff09\uff0c\u4e5f\u53ef\u4ee5\u9009\u62e9\u76f4\u63a5\u7981\u7528\u9632\u706b\u5899\u540e\uff0c\u91cd\u542f docker \u670d\u52a1\u548c MeterSphere \u7ec4\u4ef6\u8fdb\u884c\u91cd\u8bd5\u3002

    # \u4ee5 CentOS 7 \u64cd\u4f5c\u7cfb\u7edf\u4e3a\u4f8b\uff0c\u7981\u7528\u9632\u706b\u5899\u53ca\u91cd\u542f\u670d\u52a1\u547d\u4ee4\nsystemctl stop firewalld\nsystemctl restart docker\nmsctl start\n
    \u82e5\u68c0\u67e5\u53d1\u73b0\u7f51\u7edc\u8fde\u63a5\u72b6\u6001\u6b63\u5e38\uff0c\u5728\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u65f6\u4ecd\u65e7\u63d0\u793a\u8be5\u9519\u8bef\uff0c\u8bf7\u8054\u7cfb\u6211\u4eec\u7684\u56e2\u961f\u8fdb\u884c\u8fdb\u4e00\u6b65\u5b9a\u4f4d\u3002

    "},{"location":"faq/load_test/#5","title":"5 \u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u65f6\u63d0\u793a \u65e0\u6cd5\u8fd0\u884c\u6d4b\u8bd5\uff0c\u8bf7\u68c0\u67e5\u5f53\u524d\u7ad9\u70b9\u914d\u7f6e \u5982\u4f55\u89e3\u51b3\uff1f","text":"

    \u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u8fc7\u7a0b\u4e2d\uff0cnode-controller \u8282\u70b9\u9700\u8981\u901a\u8fc7 \u7cfb\u7edf-\u7cfb\u7edf\u8bbe\u7f6e-\u7cfb\u7edf\u53c2\u6570\u8bbe\u7f6e \u4e2d\u914d\u7f6e\u7684 \u5f53\u524d\u7ad9\u70b9 URL \u4e0b\u8f7d\u76f8\u5173\u6587\u4ef6\u3002\u51fa\u73b0\u8be5\u95ee\u9898\u65f6\u7528\u6237\u9700\u8981\u68c0\u67e5\u8be5\u914d\u7f6e\u53c2\u6570\uff0c\u786e\u4fdd node-controller \u8282\u70b9\u53ef\u4ee5\u6b63\u5e38\u8bbf\u95ee\u5230\u8be5 URL\u3002 URL \u5730\u5740\u4e00\u822c\u4e3a\u901a\u8fc7\u6d4f\u89c8\u5668\u8bbf\u95ee MeterSphere \u7684\u5730\u5740\uff0c\u4f8b\u5982 https://demo.metersphere.com\u3002

    "},{"location":"faq/load_test/#6-url","title":"6 \u7ad9\u70b9\u914d\u7f6e\u7684 URL \u662f\u4ec0\u4e48\uff1f","text":"

    \u7ad9\u70b9\u914d\u7f6e\u4e3a\u90e8\u7f72MeterSphere Sever\u7684\u5730\u5740\uff0c\u53ef\u4ee5\u662f\u57df\u540d\u6216\u8005\u662fIP\u5730\u5740\u3002

    "},{"location":"faq/load_test/#7-jmeter","title":"7 \u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u65f6 JMeter \u5bb9\u5668\u5185\u5b58\u6ea2\u51fa\u5982\u4f55\u89e3\u51b3?","text":"

    \u4fee\u6539\u7cfb\u7edf\u8bbe\u7f6e\u4e2d\u6240\u4f7f\u7528\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60\u914d\u7f6e\u4e2d\u7684 HEAP \u914d\u7f6e\u6765\u8c03\u6574 JMeter \u5bb9\u5668\u7684\u5185\u5b58\u53c2\u6570\u3002

    -Xms2g -Xmx2g -XX:MaxMetaspaceSize=256m\n

    "},{"location":"faq/load_test/#8-jmxjar","title":"8 \u5982\u679c\u6027\u80fd\u6d4b\u8bd5jmx\u6709\u4f9d\u8d56\u7684jar\u5305\uff0c\u9700\u8981\u600e\u4e48\u5904\u7406\uff1f","text":"

    \u5728\u521b\u5efa\u6027\u80fd\u6d4b\u8bd5\u65f6\uff0c\u53ef\u4ee5\u5c06\u4f9d\u8d56\u7684 jar \u5305\u4e0e jmx \u6587\u4ef6\u4e00\u8d77\u4e0a\u4f20\u3002

    "},{"location":"faq/load_test/#9","title":"9 \u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u65f6\uff0c\u63d0\u793a\u5e76\u53d1\u6570\u8d85\u989d\uff0c\u8be5\u600e\u4e48\u89e3\u51b3\uff1f","text":"

    \u4fee\u6539\u7cfb\u7edf\u8bbe\u7f6e-\u6d4b\u8bd5\u8d44\u6e90\u6c60\u4e2d\u7684\u6700\u5927\u5e76\u53d1\u6570\u540e\u518d\u6b21\u6267\u884c\u6d4b\u8bd5\u3002

    "},{"location":"faq/load_test/#10-image-not-found","title":"10 \u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u65f6\uff0c\u663e\u793aimage not found\u5982\u4f55\u5904\u7406\uff1f","text":"

    \u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u6240\u9700\u7684 JMeter \u5bb9\u5668\u9700\u8981\u4e8b\u5148\u5b58\u5728\u4e8e\u6240\u9009\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60\u7684\u8282\u70b9\u4e0a\uff0c\u8bf7\u68c0\u67e5\u786e\u4fdd\u5bb9\u5668\u955c\u50cf\u5b58\u5728\u540e\uff0c\u66f4\u65b0\u6d4b\u8bd5\u8d44\u6e90\u6c60\u7684\u955c\u50cf\u914d\u7f6e\u4e3a\u6b63\u786e\u7684\u955c\u50cf\u6807\u7b7e\u3002

    "},{"location":"faq/load_test/#11-error-check-node-controller-etchosts127001-hostnamemust-be-contained-please-delete-the-report-and-rerun","title":"11 \u538b\u6d4b\u6267\u884c\u65f6\u62a5\u9519\uff1aError: Check node-controller /etc/hosts,127.0.0.1 ${hostname}must be contained. Please delete the report and rerun.","text":"

    \u5728\u90e8\u7f72 node-controller \u7684\u673a\u5668\u4e0a\uff0c\u4f7f\u7528hostname\u547d\u4ee4\u83b7\u53d6\u4e3b\u673a\u540d\u3002

    [root@nginx metersphere-release-v1.8.0]# hostname\nnginx.novalocal\n
    \u5c06\u83b7\u53d6\u5230\u7684\u4e3b\u673a\u540d nginx.novalocal \u914d\u7f6e\u5230 /etc/hosts \u6587\u4ef6\u4e2d\uff0c\u914d\u7f6e\u5b8c\u6210\u6548\u679c\u5982\u4e0b\u3002 \u914d\u7f6e\u524d
    127.0.0.1       localhost\n::1         localhost localhost.localdomain localhost6 localhost6.localdomain6\n10.110.149.133 nginx111\n
    \u914d\u7f6e\u540e
    127.0.0.1       localhost\n127.0.0.1       nginx.novalocal\n::1         localhost localhost.localdomain localhost6 localhost6.localdomain6\n10.110.149.133 nginx111\n

    "},{"location":"faq/load_test/#12","title":"12 \u540c\u4e00\u811a\u672c\u6267\u884c\u591a\u6b21\uff0c\u53ef\u4ee5\u5c06\u591a\u6b21\u7684\u62a5\u544a\u7ed3\u679c\u8fdb\u884c\u5bf9\u6bd4\u5417\uff1f","text":"

    \u5728\u62a5\u544a\u5217\u8868\uff0c\u540c\u4e2a\u4efb\u52a1\u4e0b\uff0c\u5df2\u5b8c\u6210\u72b6\u6001\u7684\u62a5\u544a\u53ef\u4ee5\u8fdb\u884c\u5bf9\u6bd4\u3002

    "},{"location":"faq/load_test/#13","title":"13 \u6267\u884c\u538b\u6d4b\u65f6\uff0c\u591a\u53f0\u53d1\u538b\u673a\u7684\u60c5\u51b5\u4e0b\uff0c\u53ef\u4ee5\u8bbe\u7f6e\u53d8\u91cf\u4e0d\u91cd\u590d\u6267\u884c\u5417\uff1f","text":"

    \u53ef\u4ee5\u5728\u6027\u80fd\u6d4b\u8bd5\u7684\u9ad8\u7ea7\u914d\u7f6e\u9875\u9762\uff0c\u4f7f\u7528CSV\u5206\u5272\u529f\u80fd\uff0c\u7cfb\u7edf\u4f1a\u628a\u53d8\u91cf\u5e73\u5747\u5206\u914d\u7ed9\u538b\u529b\u673a\uff0c\u4fdd\u8bc1\u6570\u503c\u7684\u552f\u4e00\u6027\u3002

    "},{"location":"faq/load_test/#14-metersphere","title":"14 MeterSphere\u53ef\u4ee5\u76d1\u63a7\u88ab\u6d4b\u7cfb\u7edf\u670d\u52a1\u5668\u6307\u6807\u5417\uff1f","text":"

    MeterSphere \u4f7f\u7528 Prometheus \u8fdb\u884c\u53d1\u538b\u673a\u4ee5\u53ca\u88ab\u6d4b\u7cfb\u7edf\u670d\u52a1\u5668\u7684\u76d1\u63a7\uff0c\u53ef\u4ee5\u5728\u6027\u80fd\u6d4b\u8bd5-\u9ad8\u7ea7\u914d\u7f6e\u91cc\u9762\uff0c\u6dfb\u52a0\u88ab\u6d4b\u7cfb\u7edf\u670d\u52a1\u5668\u7684 node_exporter \u7684\u5730\u5740\u3002\u4e3b\u670d\u52a1\u4f1a\u5728\u5b89\u88c5 MeterSphere \u7cfb\u7edf\u65f6\u9ed8\u8ba4\u5b89\u88c5\uff0c\u800c\u5176\u4ed6\u670d\u52a1\u5668\uff0c\u5219\u9700\u8981\u5355\u72ec\u5b89\u88c5 node_exporter\uff0c\u5373\u53ef\u5728\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u7684\u65f6\u5019\u5b8c\u6210\u76f8\u5173\u6307\u6807\u7684\u76d1\u63a7\u3002

    "},{"location":"faq/load_test/#15-node_exporter","title":"15 \u5982\u4f55\u5b89\u88c5 node_exporter \u63d2\u4ef6\uff1f","text":"
    • \u65b9\u6cd51\uff1a docker pull prom/node-exporter \u62c9\u53d6 node_export \u955c\u50cf\uff0c\u4e4b\u540e\u8fd0\u884c\u5bb9\u5668

      docker pull prom/node-exporter # \u62c9\u53d6\u955c\u50cf\ndocker run -d -p 9100:9100 -v \"/proc:/host/proc:ro\" -v \"/sys:/host/sys:ro\" -v \"/:/rootfs:ro\" --net=\"host\" prom/node-exporter # \u542f\u52a8\u5bb9\u5668\n\nhttp://\u670d\u52a1\u5668IP:9100/metrics # \u8bbf\u95ee\u67e5\u770b node_export \u662f\u5426\u6b63\u5e38\u542f\u52a8\n

    • \u65b9\u6cd52\uff1a\u4e0b\u8f7d node_exporter \u79bb\u7ebf\u5305\uff0c\u89e3\u538b\u4e4b\u540e\u53ef\u6267\u884c\u547d\u4ee4\u8fdb\u884c\u542f\u52a8

      wget https://github.com/prometheus/node_exporter/releases/download/v1.3.1/node_exporter-1.3.1.linux-amd64.tar.gz\ntar -zxvf node_exporter-1.3.1.linux-amd64.tar.gz\ncd node_exporter-1.3.1-amd64\n./node_exporter  # \u542f\u52a8 (nohup ./node_exporter & \u540e\u53f0\u542f\u52a8)\n\nhttp://\u670d\u52a1\u5668IP:9100/metrics # \u8bbf\u95ee\u67e5\u770b node_export \u662f\u5426\u6b63\u5e38\u542f\u52a8\n

    "},{"location":"faq/load_test/#16","title":"16 \u538b\u529b\u914d\u7f6e\u4e2d\uff0c\u6bcf\u4e2a\u7ebf\u7a0b\u7ec4\u662f\u5426\u80fd\u5206\u522b\u9009\u62e9\u538b\u529b\u673a\uff1f","text":"

    \u5728\u538b\u529b\u914d\u7f6e\u91cc\uff0c\u63d0\u4f9b\u4e863\u79cd\u5206\u914d\u7b56\u7565\uff0c\u5206\u522b\u4e3a\u201c\u81ea\u52a8\u5206\u914d\u3001\u56fa\u5b9a\u8282\u70b9\u3001\u81ea\u5b9a\u4e49\u201d\uff0c\u53ef\u4ee5\u4e3a\u6bcf\u4e2a\u7ebf\u7a0b\u7ec4\u6307\u5b9a\u4e00\u4e2a\u8282\u70b9\uff0c\u6216\u8005\u6309\u6bd4\u4f8b\u5206\u914d\u591a\u4e2a\u8282\u70b9\u3002

    "},{"location":"faq/load_test/#17-non-http-response-code-javanetsockettimeoutexception","title":"17 \u6027\u80fd\u6d4b\u8bd5\u5e76\u53d1\u91cf\u52a0\u5927\u7684\u65f6\u5019\u62a5\u9519\uff1aNon HTTP response code: java.net.SocketTimeoutException","text":"

    \u5728\u9ad8\u7ea7\u914d\u7f6e\u589e\u52a0\u8d85\u65f6\u65f6\u95f4\u3002

    "},{"location":"faq/load_test/#18-50100","title":"18 \u8fdb\u884c\u538b\u6d4b\u65f6\uff0c\u6700\u5927\u7528\u6237\u52a0\u5230 50/100 \u5c31\u4e0d\u80fd\u7ee7\u7eed\u52a0\u5417\uff1f","text":"

    \u53ef\u5728\u7cfb\u7edf\u8bbe\u7f6e-\u6d4b\u8bd5\u8d44\u6e90\u6c60-\u4fee\u6539\u8d44\u6e90\u6c60\u91cc\u201c\u6700\u5927\u5e76\u53d1\u6570\u201d\u4e2d\u914d\u7f6e\u3002

    "},{"location":"faq/load_test/#19-jmeter","title":"19 \u6027\u80fd\u6d4b\u8bd5\u76f8\u5173\u6587\u4ef6\u5b58\u50a8\u5728 JMeter \u5bb9\u5668\u4e2d\u7684\u54ea\u4e2a\u76ee\u5f55\uff1f","text":"

    \u5728\u5bb9\u5668\u91cc\u7684/test\u76ee\u5f55\u4e0b\u3002

    "},{"location":"faq/load_test/#20-starting","title":"20 \u6027\u80fd\u6d4b\u8bd5\u72b6\u6001\u4e00\u76f4\u662f starting \u4e14\u65e0\u6570\u636e\uff0c\u5982\u4f55\u6392\u67e5\uff1f","text":"
    • \u68c0\u67e5\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u7cfb\u7edf-\u7cfb\u7edf\u53c2\u6570\u8bbe\u7f6e\u3011\uff0c\u5f53\u524d\u7ad9\u70b9\u914d\u7f6e\u662f\u4e0d\u662f\u6b63\u786e\u7684
    • \u5230\u670d\u52a1\u5668\u6216\u8005\u538b\u529b\u673a\u7684\u67e5\u770b /opt/metersphere/logs/node-controler/ \u4e0b\u7684 ms-jmeter-run-log.log \u548c info.log\uff0c\u770b\u65e5\u5fd7\u4e2d\u662f\u5426\u6709\u62a5\u9519\u4fe1\u606f\u3002
    "},{"location":"faq/load_test/#21-k8s-node-controller","title":"21 k8s\u8d44\u6e90\u6c60\u662f\u5426\u9700\u8981\u5b89\u88c5 node-controller \uff1f","text":"
    • \u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u4e0d\u9700\u8981 \u6027\u80fd\u6d4b\u8bd5\u53ea\u9700\u8981\u5728\u4ed3\u5e93\u4e2d\u914d\u7f6e\u597d JMeter \u955c\u50cf\u7684\u5730\u5740\uff0c\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u7684\u65f6\u5019\u4f1a\u81ea\u52a8\u521b\u5efa JMeter POD \u8fdb\u884c\u538b\u6d4b\uff0c\u6267\u884c\u5b8c\u4e4b\u540e\u81ea\u52a8\u9500\u6bc1\u3002
    • \u6267\u884c\u63a5\u53e3\u6d4b\u8bd5\u9700\u8981 \u6267\u884c\u63a5\u53e3\u6d4b\u8bd5\u9700\u8981\u90e8\u7f72 DaemonSet \u6216 Deployment\uff0c\u53ef\u4e0b\u8f7d\u793a\u4f8b yaml \u6587\u4ef6\u8fdb\u884c\u90e8\u7f72\uff0c\u90e8\u7f72\u597d\u4e4b\u540e\u53ef\u4ee5\u8bbe\u7f6e\u5f39\u6027\u4f38\u7f29\u53c2\u6570\uff0c\u4ece\u800c\u5b9e\u73b0\u8d44\u6e90\u6c60\u7684\u5f39\u6027\u4f38\u7f29\u3002
    "},{"location":"faq/load_test/#22-check-node-controller-status","title":"22 \u64cd\u4f5c\u65f6\u63d0\u793a\uff1acheck node-controller status","text":"
    • \u68c0\u67e5\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u7cfb\u7edf\u53c2\u6570\u8bbe\u7f6e-\u5f53\u524d\u7ad9\u70b9URL\u3011\u662f\u5426\u6b63\u786e\uff0c\u662f\u4e0d\u662f\u591a\u4e86\"/\"
    • docker exec ms-server nc -zv ms-node-controller 8082 \u6216\u8005\u53bbms-server\u5bb9\u5668\u91cc curl localhost:8082/status \u8bd5\u8bd5\uff0c\u5b9e\u5728\u4e0d\u884c\u5c31\u91cd\u542fdocker\u3001\u91cd\u542f\u670d\u52a1\u5668\u8bd5\u8bd5
    • \u68c0\u67e5 JMeter \u7684\u955c\u50cf\u7248\u672c\u662f\u4e0d\u662f\u5bf9\u7684\uff0c\u68c0\u67e5 JMeter \u955c\u50cf\u6709\u6ca1\u6709\u52a0\u8f7d\u5230 docker \u4e2d\uff0c\u6267\u884cdocker load -i jmeter-master.tar\uff0c\u770b\u80fd\u5426\u52a0\u8f7d\u5230docker\u4e2d\uff0c\u82e5\u4e0d\u80fd\u5219\u91cd\u65b0\u4e0a\u4f20JMeter\u955c\u50cf\uff0c\u6267\u884cdocker load -i jmeter-master.tar\uff0c\u4fee\u6539.env\u73af\u5883\u91cc\u7684JMeter\u955c\u50cf\uff0c\u91cd\u65b0\u52a0\u8f7d\u9879\u76eemsctl reload\u3002
    "},{"location":"faq/load_test/#23-error","title":"23 \u64cd\u4f5c\u63d0\u793a\uff1aError:\u6ca1\u6709\u8db3\u591f\u7684\u8d44\u6e90\u542f\u52a8\u6d4b\u8bd5","text":"

    \u5c06\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u6d4b\u8bd5\u8d44\u6e90\u6c60-JMeter HEAP\u3011\u8c03\u5927\u3002

    "},{"location":"faq/load_test/#24","title":"24 \u6027\u80fd\u6d4b\u8bd5\u4e2d\u600e\u4e48\u8de8\u7ebf\u7a0b\u4f20\u9012\u53d8\u91cf\uff1f","text":"

    \u6027\u80fd\u6d4b\u8bd5\u91cc\u52a8\u6001\u8bbe\u7f6e\u53d8\u91cf\u53ef\u4ee5\u7528\u5c5e\u6027\u7684\u65b9\u5f0f\uff0c{__setProperty(var,value,)} \u8bbe\u7f6e\u5c5e\u6027\uff0c \u5f15\u7528\u5c5e\u6027\u3002\u7528\u5c5e\u6027\u65b9\u6cd5\u5728\u6027\u80fd\u6d4b\u8bd5\u4e2d\u53ef\u4ee5\u52a8\u6001\u4f20\u9012\u5e76\u4e14\u53ef\u4ee5\u8de8\u7ebf\u7a0b\u4f20\u9012

    "},{"location":"faq/load_test/#25","title":"25 \u6027\u80fd\u6d4b\u8bd5\u65e0\u6cd5\u6b63\u5e38\u6267\u884c\uff0c\u63d0\u793a\u8d44\u6e90\u4e0d\u591f\uff1f","text":"

    \u53ef\u80fd\u7684\u539f\u56e0\u6709:

    • \u6027\u80fd\u6d4b\u8bd5\u91cc\u6709\u6dfb\u52a0\u524d\u540e\u7f6e\u811a\u672c\uff0c\u5c24\u5176\u662fpython\uff0c\u6d88\u8017\u6027\u80fd\u6bd4\u8f83\u5927\u3002
    • \u6d4b\u8bd5\u8d44\u6e90\u6c60\u4e3b\u673a\u8d44\u6e90\uff08\u5c24\u5176\u662f\u5185\u5b58\uff09\u4e0d\u8db3\u3002

    \u89e3\u51b3\u65b9\u6cd5:

    • \u5c3d\u91cf\u4e0d\u8981\u4f7f\u7528\u524d\u540e\u7f6e\u811a\u672c\uff0c\u6216\u8005\u6362\u7528\u8d44\u6e90\u6d88\u8017\u5c0f\u7684\u811a\u672c\uff0c\u5982 groovy\u3002
    • \u6362\u7528\u5355\u72ec\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60\uff0c\u4f7f\u7528 node-controller \u6a21\u5f0f\u5b89\u88c5\u3002
    "},{"location":"faq/load_test/#26","title":"26 \u6027\u80fd\u6d4b\u8bd5\u62a5\u544a\u4e2d\uff0c\u5e76\u53d1\u7528\u6237\u6570\u663e\u793a\u548c\u8bbe\u7f6e\u4e0d\u4e00\u81f4","text":"

    \u53ef\u80fd\u7684\u539f\u56e0\u6709:

    • \u5e76\u53d1\u7528\u6237\u6570\u592a\u5c11\uff0cramp-up\u8bbe\u7f6e\u7684\u65f6\u95f4\u957f\uff0c\u5bfc\u81f4\u52a0\u538b\u540e\u7b2c\u4e00\u4e2a\u7528\u6237\u5df2\u7ecf\u6267\u884c\u5b8c\u6d4b\u8bd5\u4e86\uff0c\u7b2c\u4e8c\u4e2a\u7528\u6237\u624d\u521b\u5efa\u51fa\u6765\uff0c\u770b\u8d77\u6765\u5e76\u53d1\u7528\u6237\u6570\u5c31\u4e00\u76f4\u662f1\u3002
    • \u62a5\u544a\u5de6\u4e0a\u89d2\u7684\u5e76\u53d1\u7528\u6237\u6570\u5728\u62a5\u544a\u91cc\u663e\u793a\u7684\u662f\u5e73\u5747\u503c\uff0c\u4e0d\u662f\u5b9e\u65f6\u53d8\u5316\u7684\u3002

    \u89e3\u51b3\u65b9\u6cd5\uff1a\u51cf\u5c11ramp-up\u65f6\u95f4\uff0c\u53ef\u4ee5\u770b\u5230\u5e76\u53d1\u7528\u6237\u6570\u4e0e\u8bbe\u7f6e\u4e00\u81f4\u3002

    "},{"location":"faq/load_test/#27-kafka","title":"27 \u5982\u4f55\u4fee\u6539 kafka \u7684\u65e5\u5fd7\u4fdd\u7559\u65f6\u95f4\uff1f","text":"

    \u4fee\u6539 /opt/metersphere/docker-compose-kafka.yml \u914d\u7f6e\u6587\u6863\u91cc\u7684 KAFKA_CFG_LOG_RETENTION_HOURS \u53c2\u6570\u3002

    "},{"location":"faq/load_test/#28-csv","title":"28 \u6027\u80fd\u6d4b\u8bd5\u65f6\u63a5\u53e3\u8bfb\u53d6 csv \u4e0d\u80fd\u6309\u987a\u5e8f\u8bfb\u53d6","text":"

    \u6240\u9009\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60\u6709\u591a\u4e2a\u8282\u70b9\uff0c\u591a\u4e2a\u8282\u70b9\u5171\u7528\u4e00\u5957 CSV \u5bfc\u81f4\u53d6\u503c\u91cd\u590d\uff0c\u5728\u6027\u80fd\u6d4b\u8bd5\u7684\u9ad8\u7ea7\u914d\u7f6e\u91cc\uff0c\u5f00\u542f CSV \u5206\u5272\uff0c\u591a\u51c6\u5907\u70b9\u6d4b\u8bd5\u6570\u636e\u3002CSV \u5206\u5272\u662f: \u5047\u8bbe\u67092\u4e2a\u8282\u70b9\uff0cCSV \u91cc\u6709100\u6761\u6570\u636e\uff0c\u5c31\u4f1a\u628a CSV \u91cc\u7684\u6570\u636e\u5747\u5206\u62102\u4efd\uff0c\u7136\u540e\u8282\u70b91 \u4f7f\u7528 1-50 \u6761\u6570\u636e\uff0c\u8282\u70b92 \u4f7f\u7528 51-100 \u6761\u6570\u636e\u3002

    "},{"location":"faq/load_test/#29-csv","title":"29 \u6027\u80fd\u6d4b\u8bd5\u914d\u7f6e\u91cc\u9762\u4e0a\u4f20 CSV \u6587\u4ef6\uff0c\u5728\u9ad8\u7ea7\u914d\u7f6e\u91cc\u9762\u770b\u4e0d\u5230","text":"

    csv \u6587\u4ef6\u6ca1\u6709\u88ab\u6027\u80fd jmx \u811a\u672c\u5f15\u7528\uff0cjmx \u5f15\u7528\u4e86\u624d\u80fd\u770b\u89c1\u3002\u4fee\u6539 jmx \u6587\u4ef6\uff0c\u5f15\u7528\u4e0a\u4f20\u7684 CSV \u6587\u4ef6\uff0c\u6216\u8005\u5728\u573a\u666f\u91cc\u6dfb\u52a0 CSV \u6587\u4ef6\u540e\u8f6c\u6027\u80fd\u6d4b\u8bd5\u3002

    "},{"location":"faq/load_test/#30-windows","title":"30 \u6027\u80fd\u6d4b\u8bd5\u6a21\u5757\uff0c\u81ea\u5b9a\u4e49\u76d1\u63a7\u9879\u4e0d\u652f\u6301 windows \u670d\u52a1\u5668","text":"

    \u9ed8\u8ba4\u63d0\u4f9b\u7684 promQL \u662f\u4e0e linux \u64cd\u4f5c\u7cfb\u7edf\u9002\u914d\uff0cwindows \u64cd\u4f5c\u7cfb\u7edf\u7684\u76d1\u63a7\u9879\u9700\u8981\u81ea\u884c\u7f16\u5199\uff0c\u4f8b\u5982\uff1a\u67e5\u8be2 windows \u7684 cpu \u4f7f\u7528\u7387: 100 - (avg by (instance) (irate(windows_cpu_time_total{mode=\"idle\", instance=\"%1$s\"}[1m])) * 100)

    \u5176\u4e2d %1$s \u662f\u88ab\u76d1\u63a7\u8282\u70b9\u7684ip\u548c\u7aef\u53e3\uff0c\u4e0a\u9762\u8fd9\u6761\u8bed\u53e5\u5728\u6267\u884c\u65f6\u4f1a\u53d8\u6210 100 - (avg by (instance) (irate(windows_cpu_time_total{mode=\"idle\", instance=\"172.16.10.54:9182\"}[1m])) * 100) \u5176\u4ed6\u76d1\u63a7\u9879\u53ef\u4ee5\u81ea\u884c\u67e5\u8be2\u6765\u5199\uff0c\u5185\u5b58\u3001\u78c1\u76d8\u7b49\uff0c\u8fd8\u53ef\u4ee5\u81ea\u884c\u76d1\u63a7\u4e0d\u540c\u7684 exporter\uff0c\u53ea\u8981\u662f\u7b26\u5408 exporter\u89c4\u8303\u7684\u90fd\u53ef\u4ee5\u5728\u81ea\u5b9a\u4e49\u76d1\u63a7\u4e2d\u914d\u7f6e

    "},{"location":"faq/load_test/#31-k8s-ms","title":"31 \u90e8\u7f72\u5728 K8S \u4e0b\u7684 MS \u81ea\u5b9a\u4e49\u76d1\u63a7\u914d\u7f6e\u65b9\u6cd5\uff0c\u9ed8\u8ba4\u65b9\u6cd5\u65e0\u6cd5\u751f\u6548\uff0c\u5e76\u4e14\u76d1\u63a7\u8be6\u60c5\u6ca1\u6709\u6570\u636e","text":"

    \u5728 prometheus.yml \u4e2d\u914d\u7f6e

    consul_sd_configs:\n- server: 'k8s\u4e2dms\u7684ip:port'\nservices: []\n
    \u81ea\u5b9a\u4e49\u76d1\u63a7\u4e2d\u52a0\u4e0a\u9700\u8981\u7684\u8282\u70b9\uff0c\u7cfb\u7edf\u53c2\u6570\u6d4b\u8bd5\u4e2d\u8bbe\u7f6e prometheus \u7684\u5b9e\u9645\u5730\u5740\uff0c\u6267\u884c\u6d4b\u8bd5\u53ef\u4ee5\u663e\u793a\u76d1\u63a7\u3002

    "},{"location":"faq/load_test/#32","title":"32 \u63a5\u53e3\u81ea\u52a8\u5316\u521b\u5efa\u7684\u6027\u80fd\u6d4b\u8bd5\uff0c\u811a\u672c\u53ca\u6587\u4ef6\u5185\u5bb9\u66f4\u65b0\u540e\uff0c\u5df2\u8f6c\u6027\u80fd\u6d4b\u8bd5\u7684\u7528\u4f8b\u6ca1\u6709\u540c\u6b65\u66f4\u65b0","text":"

    \u8f6c\u6027\u80fd\u6d4b\u8bd5\u7684\u65f6\u5019\u751f\u6210\u7684 jmx \u6587\u4ef6\u5c31\u662f\u5f53\u524d\u7684\u914d\u7f6e\uff0c\u4e4b\u540e\u518d\u4fee\u6539\u63a5\u53e3\u5bf9\u6027\u80fd\u6d4b\u8bd5\u65e0\u6548\uff0c\u70b9\u51fb\u6027\u80fd\u6d4b\u8bd5\u53f3\u4e0a\u89d2\u201c\u540c\u6b65\u573a\u666f\u6d4b\u8bd5\u6700\u65b0\u53d8\u66f4\u201d\u6309\u94ae\u624b\u52a8\u540c\u6b65\u5373\u53ef\u3002

    "},{"location":"faq/load_test/#33-image-not-found-registrycn-qingdaoaliyuncscommeterspherejmeter-master543-ms5-jdk11","title":"33 \u8fd0\u884c\u6027\u80fd\u6d4b\u8bd5\u7684\u65f6\u5019\u62a5\u9519Image Not Found: registry.cn-qingdao.aliyuncs.com/metersphere/jmeter-master:5.4.3-ms5-jdk11","text":"

    \u670d\u52a1\u5668\u672c\u5730\u7684 jmeter-master \u955c\u50cf\u88ab\u5220\u9664\u4e86\uff0c\u9700\u8981\u624b\u52a8\u6267\u884c\u547d\u4ee4\u624b\u52a8\u62c9\u53d6\u955c\u50cf docker pull registry.cn-qingdao.aliyuncs.com/metersphere/jmeter-master:5.4.3-ms5-jdk11\u3002

    "},{"location":"faq/load_test/#34-k8s-sa-token","title":"34 \u5982\u679c\u91c7\u7528 K8S \u96c6\u7fa4\u538b\u6d4b\uff0c\u5982\u4f55\u83b7\u53d6 SA \u548c Token\uff1f","text":"
    // \u521b\u5efa namespaces\nkubectl create namespace metersphere\n\n// \u521b\u5efa SA\nkubectl create serviceaccount ms -n metersphere\n\n// \u521b\u5efa namespace \u6388\u6743 SA\nkubectl create clusterrolebinding ms --clusterrole=admin --serviceaccount=metersphere:ms -n metersphere\n\n// \u67e5\u8be2 SA token\nkubectl describe sa/ms -n metersphere\nkubectl describe secrets -n metersphere ms-token-xxxx\n
    "},{"location":"faq/report_statistics/","title":"\u62a5\u8868\u7edf\u8ba1\u76f8\u5173","text":""},{"location":"faq/report_statistics/#1-metersphere","title":"1 MeterSphere \u63d0\u4f9b\u8d28\u91cf\u5927\u5c4f\u5417\uff1f","text":"

    \u76ee\u524d\uff0cMeterSphere \u7684\u3010\u62a5\u8868\u7edf\u8ba1\u3011\u6a21\u5757\u63d0\u4f9b\u4e86\u6d4b\u8bd5\u7528\u4f8b\u5206\u6790\u62a5\u8868\u3002\u5982\u9700\u66f4\u591a\u7ef4\u5ea6\u7684\u5927\u5c4f\u5c55\u793a\uff0c\u53ef\u4ee5\u4f7f\u7528\u53ef\u89c6\u5316\u5206\u6790\u5de5\u5177 DataEase\uff0c\u901a\u8fc7\u8fde\u63a5 MeterSphere \u6570\u636e\u5e93\u83b7\u53d6\u6570\u636e\u8be6\u60c5\uff0c\u521b\u5efa\u6ee1\u8db3\u4e1a\u52a1\u9700\u6c42\u7684\u81ea\u5b9a\u4e49\u8d28\u91cf\u5927\u5c4f\u3002 \u53c2\u7167 \u7528DataEase\u5f00\u6e90\u5de5\u5177\u6784\u5efaMeterSphere\u4eea\u8868\u677f\u3002

    "},{"location":"faq/service_integration/","title":"\u670d\u52a1\u96c6\u6210\u76f8\u5173","text":""},{"location":"faq/service_integration/#1-metersphere","title":"1 MeterSphere \u5982\u4f55\u5bf9\u63a5\u7b2c\u4e09\u65b9\u5e73\u53f0\uff1f","text":"

    TAPD\uff1a \u8bf7\u53c2\u8003MeterSphere \u670d\u52a1\u96c6\u6210\u4e4b TAPD \u5bf9\u63a5 JIRA\uff1a \u8bf7\u53c2\u8003 MeterSphere \u670d\u52a1\u96c6\u6210\u4e4b JIRA \u5bf9\u63a5 \u7985\u9053\uff1a \u8bf7\u53c2\u8003MeterSphere \u670d\u52a1\u96c6\u6210\u4e4b \u7985\u9053 \u5bf9\u63a5 Azure Devops\uff1a \u8bf7\u53c2\u8003MeterSphere \u670d\u52a1\u96c6\u6210\u4e4b Azure Devops \u5bf9\u63a5

    "},{"location":"faq/service_integration/#2-ms","title":"2 \u5728\u7985\u9053\u4e0a\u5df2\u521b\u5efa\u7684\u7f3a\u9677\uff0cMS \u4e0a\u70b9\u51fb\u3010\u540c\u6b65\u7f3a\u9677\u3011\uff0c\u4e3a\u4ec0\u4e48\u672a\u6210\u529f\u540c\u6b65\uff1f","text":"

    \u7985\u9053\u7f3a\u9677\u540c\u6b65\u5230 MS \u662f\u4f01\u4e1a\u7248\u529f\u80fd\uff0c\u5f00\u6e90\u7248\u53ea\u652f\u6301\u5355\u5411\u540c\u6b65\uff0c\u53ea\u80fd\u5c06 MS \u7f3a\u9677\u540c\u6b65\u5230\u7985\u9053\u4e0a\u3002

    "},{"location":"faq/service_integration/#3-path_info","title":"3 \u7985\u9053\u5728 PATH_INFO \u4e0b\uff0c\u9879\u76ee\u96c6\u6210\u63d0\u793a\u5931\u8d25\u600e\u4e48\u5904\u7406?","text":"

    \u4fee\u6539\u7985\u9053\u914d\u7f6e\u6216 MS \u5e73\u53f0\u8bbe\u7f6e\uff0c\u786e\u4fdd\u4e24\u4e2a\u7cfb\u7edf\u4e2d\u7684\u8bf7\u6c42\u65b9\u5f0f\u4fdd\u6301\u4e00\u81f4\uff1a \uff081\uff09\u3010\u4fee\u6539\u7985\u9053\u914d\u7f6e\u3011\u914d\u7f6e\u6587\u4ef6\u8def\u5f84\uff1a/opt/zbox/app/zentao/config/my.php\uff0c\u4fee\u6539 $config->requestType = 'PATH_INFO' \u6216 'GET'\uff0c\u7136\u540e\u91cd\u542f\u7985\u9053/opt/zbox/zbox restart\u3002 \uff082\uff09\u3010\u4fee\u6539MS\u914d\u7f6e\u3011\u5728\u201c\u7cfb\u7edf\u8bbe\u7f6e-\u5de5\u4f5c\u7a7a\u95f4-\u670d\u52a1\u96c6\u6210-\u7985\u9053\u201d\u914d\u7f6e\u9875\u9762\uff0c\u9009\u62e9\u8bf7\u6c42\u65b9\u5f0f\u4e3aPATH_INFO\u6216 GET\u3002

    "},{"location":"faq/service_integration/#4-ms-tapd-ms-tapd","title":"4 MS \u96c6\u6210 TAPD\uff0c\u5728 MS \u5e73\u53f0\u4e0a\u63d0\u4ea4\u7f3a\u9677\u65f6\u4e0a\u4f20\u56fe\u7247\uff0c\u4f46\u5728 TAPD \u4e2d\u65e0\u6cd5\u6b63\u786e\u663e\u793a\u56fe\u7247\uff0c\u5982\u4f55\u5904\u7406\uff1f","text":"

    \u6d4f\u89c8\u5668\u7684\u9ed8\u8ba4\u5b89\u5168\u7b56\u7565\u5bfc\u81f4\uff0c\u9700\u8981\u5728MS\u5e73\u53f0\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u7cfb\u7edf-\u7cfb\u7edf\u53c2\u6570\u8bbe\u7f6e-\u57fa\u672c\u914d\u7f6e-\u5f53\u524d\u7ad9\u70b9URL\u3011\u4e2d\u914d\u7f6e\u4e3a https \u7684\u5730\u5740\u3002

    "},{"location":"faq/service_integration/#5-ms-metersphere-id-id","title":"5 MS \u96c6\u6210\u7985\u9053\uff0c\u5728 MeterSphere \u5e73\u53f0\u4e0a\u9879\u76ee ID \u586b\u5199\u6b63\u786e\uff0c\u68c0\u67e5\u65f6\u63d0\u793aID\u4e0d\u5b58\u5728\u6216\u8005\u5176\u4ed6\u9519\u8bef\u5982\u4f55\u5904\u7406\uff1f","text":"

    \u53ef\u80fd\u539f\u56e0\u5305\u62ec\uff1a

    • v2.4 \u7248\u672c\u4e4b\u540e\uff0c\u670d\u52a1\u96c6\u6210\u4fee\u6539\u4e3a\u63d2\u4ef6\u65b9\u5f0f\uff0c\u7985\u9053\u63d2\u4ef6\u7248\u672c\u548c\u5f53\u524d MeterSphere \u7248\u672c\u4e0d\u4e00\u81f4\u3002
    • \u6ca1\u6709\u5bf9\u5e94\u4ea7\u54c1\u6216\u8005\u9879\u76ee\u7684\u6743\u9650\uff0c\u6216\u8005\u6709\u6743\u9650\u4f46\u662f\u9700\u8981\u586b\u4ea7\u54c1 ID\uff0c\u5b9e\u9645\u586b\u4e86\u9879\u76ee ID\u3002
    • \u7985\u9053\u670d\u52a1\u6ca1\u6709\u542f\u7528api\u8c03\u7528\u6743\u9650\uff1a\u7f3a\u5c11\u914d\u7f6e $config->features->apiGetModel\u3002
    • \u670d\u52a1\u96c6\u6210\u5904\u5bf9\u63a5\u7684\u7985\u9053\u7528\u6237\uff0c\u6ca1\u6709\u52fe\u9009\u8d4b\u4e88\"\u8d85\u7ea7model\u8c03\u7528\u63a5\u53e3\"\u6743\u9650\u3002

    \u89e3\u51b3\u65b9\u6cd5\uff1a

    • \u5728 github\u4e0a\u4e0b\u8f7d\u548c MeterSphere \u7248\u672c\u4e00\u81f4\u7684\u63d2\u4ef6metersphere-platform-plugin \u5e76\u4e0a\u4f20\u5230\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u63d2\u4ef6\u7ba1\u7406\u3011\uff0c\u7528\u6cd5\u53c2\u8003\u670d\u52a1\u96c6\u6210\u63d2\u4ef6\u3002
    • \u5728 MeterSphere \u9879\u76ee\u7f16\u8f91\u6846-\u9879\u76eeID \u5904\u6709\u201ci\u201d\u63d0\u793a\u8bf4\u660e\uff0c\u6309\u7167\u914d\u7f6e\u8bf4\u660e\u586b\u5199\u5bf9\u5e94 \u4ea7\u54c1ID \u6216\u8005 \u9879\u76eeID\u3002
    • \u5728\u7985\u9053\u5b89\u88c5\u8def\u5f84\u4e2d\uff1a${\u5b89\u88c5\u8def\u5f84}/zentao/config/ \u76ee\u5f55\u4e0b my.php (\u5982\u679c\u6ca1\u6709\uff0c\u65b0\u5efa my.php \u6587\u4ef6)\u4e2d\u6dfb\u52a0\u5982\u4e0b\u5185\u5bb9\uff1a$config->features->apiGetModel = true;\u7136\u540e\u91cd\u542f\u7985\u9053\u670d\u52a1\u5668\uff1a/opt/zbox/zbox restart\u3002
    • \u7528\u4e8e\u5bf9\u63a5\u7684\u7985\u9053\u7528\u6237\uff0c\u786e\u8ba4\u5728\u7985\u9053 web \u7aef\u3010\u7ec4\u7ec7-\u6743\u9650-\u6743\u9650\u7ef4\u62a4-API \u63a5\u53e3\u3011\u52fe\u9009\u4e86\u201c\u8d85\u7ea7model\u8c03\u7528\u63a5\u53e3\u201d\u3002
    "},{"location":"faq/service_integration/#6-ms-jira-jirakey-id","title":"6 MS \u96c6\u6210 JIRA \u5e73\u53f0\uff0c\u586b\u5199\u3010JIRA\u9879\u76eekey\u3011\u540e\u8fdb\u884c\u4fdd\u5b58\u65f6\uff0c\u9875\u9762\u63d0\u793a \"ID\u4e0d\u5b58\u5728\u6216\u5176\u4ed6\u9519\u8bef\"\u5982\u4f55\u5904\u7406\uff1f","text":"

    \u4e00\u822c\u4e3a\u7528\u6237\u6ca1\u6709\u6743\u9650\u8bbf\u95ee\u6b64\u9879\u76ee\uff0c\u68c0\u67e5 JIRA \u5bf9\u5e94\u9879\u76ee\u7684\u7ba1\u7406\u5458\u7528\u6237\u662f\u5426\u548c MS \u7cfb\u7edf\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u670d\u52a1\u96c6\u6210-JIRA\u3011\u5904\u914d\u7f6e\u7684\u8d26\u53f7\u4e00\u81f4\uff0c\u53ef\u914d\u5408\u540e\u53f0\u65e5\u5fd7/opt/metersphere/logs/system-setting/info.log\u67e5\u770b\u62a5\u9519\u539f\u56e0\u3002

    "},{"location":"faq/service_integration/#7-jira","title":"7 \u540c\u6b65\u7f3a\u9677\u5230JIRA\uff0c\u5982\u4f55\u5b9e\u73b0\u81ea\u5b9a\u4e49\u5b57\u6bb5\uff1f","text":"

    \u53ef\u4ee5\u5728\u3010\u9879\u76ee\u8bbe\u7f6e-\u66f4\u591a\u9009\u9879-\u6a21\u7248\u7ba1\u7406\u3011\uff0c\u521b\u5efa\u6a21\u677f\u5b57\u6bb5\uff1b\u7136\u540e\u6253\u5f00\u7f3a\u9677\u6a21\u677f-JIRA\u9ed8\u8ba4\u6a21\u7248\uff0c\u6dfb\u52a0\u521b\u5efa\u597d\u7684\u81ea\u5b9a\u4e49\u5b57\u6bb5\uff0c\u5728 MeterSphere \u4e0a\u63d0\u4ea4\u7f3a\u9677\u65f6\u5c31\u4f1a\u51fa\u73b0\u8be5\u5b57\u6bb5\u3002

    "},{"location":"faq/service_integration/#8-jira","title":"8 \u96c6\u6210JIRA\u65f6\uff0c\u5982\u4f55\u5b9e\u73b0\u7ed1\u5b9a\u6307\u5b9a\u8d26\u53f7\uff1f","text":"

    \u53ef\u4ee5\u5728\u3010\u4e2a\u4eba\u8d26\u53f7-\u4e2a\u4eba\u4fe1\u606f-\u7b2c\u4e09\u65b9\u5e73\u53f0\u8d26\u53f7\u3011\u5f39\u7a97\uff0c\u914d\u7f6e JIRA \u8d26\u53f7\u548c\u5bc6\u7801\uff0c\u5c31\u53ef\u4ee5\u7ed1\u5b9a\u8d26\u53f7\u5173\u8054\u9700\u6c42\u4ee5\u53ca\u540c\u6b65\u7f3a\u9677\u4e86\u3002

    "},{"location":"faq/system_management/","title":"\u7cfb\u7edf\u8bbe\u7f6e\u76f8\u5173","text":""},{"location":"faq/system_management/#1-metersphere","title":"1 \u5982\u4f55\u7406\u89e3 MeterSphere \u6d4b\u8bd5\u8d44\u6e90\u6c60\uff1f","text":"

    \u6d4b\u8bd5\u8d44\u6e90\u6c60\u662f MeterSphere \u4e2d\u7684\u6267\u884c\u673a\u96c6\u5408\uff0c\u7528\u4e8e\u6267\u884c\u6307\u5b9a\u7684\u63a5\u53e3\u6216\u6027\u80fd\u6d4b\u8bd5\u3002\u76ee\u524d\u652f\u6301\u6dfb\u52a0 Node \u8d44\u6e90\u6c60\u548c K8S \u8d44\u6e90\u6c60\uff0c\u8be6\u7ec6\u8bf4\u660e\u8bf7\u53c2\u8003\u8d44\u6e90\u6c60\u914d\u7f6e\u3002

    "},{"location":"faq/system_management/#2-ldap","title":"2 LDAP\u6d4b\u8bd5\u8fde\u63a5\uff0c\u63d0\u793a\u7528\u6237\u4e0d\u5b58\u5728\u6216\u8005\u4e0d\u552f\u4e00\u5982\u4f55\u5904\u7406\uff1f","text":"

    \u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u7cfb\u7edf\u53c2\u6570\u8bbe\u7f6e-LDAP \u8bbe\u7f6e\u3011\u66f4\u6539\u7528\u6237\u8fc7\u6ee4\u5668\u4e3a(cn={0})\uff1bLDAP\u5c5e\u6027\u6620\u5c04\u4e3a\uff5b\"username\": \"cn\"\uff5d\u3002

    "},{"location":"faq/system_management/#3","title":"3 \u9879\u76ee\u5982\u4f55\u914d\u7f6e\u901a\u7528\u7684\u57df\u540d\uff1f","text":"

    \u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u5de5\u4f5c\u7a7a\u95f4-\u73af\u5883\u914d\u7f6e\u3011\u9875\u9762\uff0c\u3010\u901a\u7528\u8bbe\u7f6e\u3011\u542f\u7528 Hosts\uff0c\u53ef\u4ee5\u4e3a\u9879\u76ee\u914d\u7f6e\u901a\u7528\u7684\u57df\u540d\u3002

    "},{"location":"faq/system_management/#4","title":"4 \u90ae\u4ef6\u670d\u52a1\u5668\u8fde\u63a5\u4e0d\u6210\u529f\u5982\u4f55\u5904\u7406\uff1f","text":"

    \u5bfc\u81f4\u90ae\u7bb1\u94fe\u63a5\u4e0d\u6210\u529f\u7684\u539f\u56e0\u53ef\u80fd\u662f 465 \u7aef\u53e3\u672a\u5f00\u653e\uff0c \u53ef\u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u7cfb\u7edf\u53c2\u6570\u8bbe\u7f6e-\u90ae\u4ef6\u8bbe\u7f6e\u8bbe\u7f6e\u3011\u5c06\u90ae\u4ef6\u8bbe\u7f6e\u4e2d\u7684 465 \u7aef\u53e3\u6539\u6210 25 \u7aef\u53e3\u5e76\u53bb\u6389 ssl \u9009\u9879.

    "},{"location":"faq/system_management/#5-warn-establishing-ssl-connection-without-servers-identity-verification-is-not-recommended","title":"5 \u73af\u5883\u914d\u7f6e\u6570\u636e\u5e93\u8fde\u63a5\u4e0d\u901a\uff0c \u63d0\u793a\uff1aWARN: Establishing SSL connection without server's identity verification is not recommended.","text":"

    \u6570\u636e\u5e93\u9ed8\u8ba4\u5f00\u542f\u4e86 SSL \u9a8c\u8bc1\u76f8\u5e94\u7684\u914d\u7f6e\u5bfc\u81f4\uff0c\u53ef\u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u73af\u5883\u7ba1\u7406\u3011\u6570\u636e\u5e93\u7684 URL \u589e\u52a0\uff1fuseSSL=false \u6765\u89e3\u51b3\u3002

    "},{"location":"faq/system_management/#6-sqlsql","title":"6 \u5728\u4e00\u4e2aSQL\u8bf7\u6c42\u4e0b\u5982\u4f55\u6267\u884c\u591a\u6761SQL\uff1f","text":"

    \u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u73af\u5883\u7ba1\u7406\u3011\u7f16\u8f91\u73af\u5883\u6570\u636e\u6e90\u914d\u7f6e\u7684 URL \u540e\u9762\u52a0\u4e0a allowMultiQueries=true\u3002

    "},{"location":"faq/system_management/#7-no-database-selected","title":"7 \u73af\u5883\u914d\u7f6e\u6570\u636e\u5e93\u914d\u7f6e\u63d0\u793a\uff1ano database selected\uff0c\u5982\u4f55\u89e3\u51b3\uff1f","text":"

    \u9700\u8981\u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u73af\u5883\u7ba1\u7406\u3011\u7f16\u8f91\u73af\u5883\u6570\u636e\u6e90\u8fde\u63a5 URL \u4e2d\u589e\u52a0\u6570\u636e\u5e93\u5e93\u540d\u4fe1\u606f\u3002\u4f8b\u5982\uff1ajdbc:mysql://127.0.0.1:3306/database\u3002

    "},{"location":"faq/test_track/","title":"\u6d4b\u8bd5\u8ddf\u8e2a\u76f8\u5173","text":""},{"location":"faq/test_track/#1-metersphere","title":"1 MeterSphere \u4e2d\u6d4b\u8bd5\u8ba1\u5212\u5177\u4f53\u7684\u573a\u666f\u662f\u4ec0\u4e48\uff1f","text":"

    \u53c2\u8003\u6587\u7ae0\uff1a \u4ea7\u54c1\u89e3\u8bfb\u4e28MeterSphere\u4e2d\u6d4b\u8bd5\u8ba1\u5212\u7684\u573a\u666f\u8bbe\u8ba1\u4e0e\u5b9e\u73b0\u3002

    "},{"location":"faq/test_track/#2","title":"2 \u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757\uff0c\u7528\u4f8b\u8bc4\u5ba1\u5982\u4f55\u8fdb\u884c\u6279\u91cf\u5904\u7406\uff1f","text":"

    \u9009\u4e2d\u6d4b\u8bd5\u8bc4\u5ba1\u7528\u4f8b\u5217\u8868\u4e2d\u9700\u8981\u6279\u91cf\u5904\u7406\u7684\u7528\u4f8b\uff0c\u70b9\u51fb\u3010\u00b7\u00b7\u00b7\u3011\u5f39\u51fa\u4e0b\u62c9\u6846\uff0c\u9009\u62e9\u6279\u91cf\u7f16\u8f91\uff0c\u53ef\u4ee5\u6279\u91cf\u8bbe\u7f6e\u8bc4\u5ba1\u7ed3\u679c\u3002

    "},{"location":"faq/test_track/#3","title":"3 \u6d4b\u8bd5\u8ba1\u5212\u91cc\uff0c\u5982\u4f55\u6279\u91cf\u5206\u914d\u6267\u884c\u4eba\uff1f","text":"

    \u9009\u4e2d\u6d4b\u8bd5\u8ba1\u5212\u7528\u4f8b\u5217\u8868\u4e2d\u9700\u8981\u6279\u91cf\u5904\u7406\u7684\u7528\u4f8b\uff0c\u70b9\u51fb\u3010\u00b7\u00b7\u00b7\u3011\u5f39\u51fa\u4e0b\u62c9\u6846\uff0c\u9009\u62e9\u6279\u91cf\u7f16\u8f91\uff0c\u53ef\u4ee5\u5206\u914d\u6267\u884c\u4eba\u3002

    "},{"location":"faq/test_track/#4","title":"4 \u6d4b\u8bd5\u8ba1\u5212\u6267\u884c\u5b9a\u65f6\u4efb\u52a1\uff0c\u662f\u5426\u4f1a\u81ea\u52a8\u89e6\u53d1\u63a5\u53e3\u6d4b\u8bd5\u548c\u6027\u80fd\u6d4b\u8bd5\uff1f\u5b9a\u65f6\u4efb\u52a1\u6dfb\u52a0\u540e\u5982\u4f55\u5220\u9664\uff1f","text":"

    \u6d4b\u8bd5\u8ba1\u5212\u7684\u5b9a\u65f6\u4efb\u52a1\u652f\u6301\u5173\u8054\u7ba1\u7406\u63a5\u53e3\u6d4b\u8bd5\u3001\u6027\u80fd\u6d4b\u8bd5\u5e76\u5b9a\u65f6\u89e6\u53d1\uff1b\u914d\u7f6e\u5b9a\u65f6\u4efb\u52a1\u540e\uff0c\u5173\u95ed SCHEDULER \u5f00\u5173\u5373\u53ef\u53d6\u6d88\u5b9a\u65f6\u4efb\u52a1\u3002

    "},{"location":"faq/test_track/#5","title":"5 \u6d4b\u8bd5\u7528\u4f8b\u53ef\u4ee5\u81ea\u5b9a\u4e49\u663e\u793a\u5b57\u6bb5\u5417\uff1f","text":"

    \u5728\u6d4b\u8bd5\u7528\u4f8b\u5217\u8868\uff0c\u70b9\u51fb\u3010\u64cd\u4f5c\u3011\u5217\u4e2d\u7684\u9f7f\u8f6e\u6309\u94ae\u8fdb\u884c\u914d\u7f6e\u3002

    "},{"location":"faq/test_track/#6-jira-metersphere","title":"6 \u5982\u679c\u96c6\u6210\u4e86 JIRA\uff0c\u7f3a\u9677\u72b6\u6001\u53ef\u4ee5\u540c\u6b65\u66f4\u65b0 MeterSphere \u5417\uff1f","text":"

    \u5f00\u6e90\u7248\u4ec5\u652f\u6301\u5355\u5411\u540c\u6b65\uff0c\u5373 MeterSphere \u7f3a\u9677\u540c\u6b65\u5230\u7b2c\u4e09\u65b9\u5e73\u53f0\u3002\u4f01\u4e1a\u7248\u652f\u6301\u53cc\u5411\u540c\u6b65\uff0c\u5373 MeterSphere \u7f3a\u9677\u540c\u6b65\u5230\u7b2c\u4e09\u65b9\u5e73\u53f0\uff0c\u7b2c\u4e09\u65b9\u5e73\u53f0\u4e0a\u7684\u7f3a\u9677\u540c\u6b65\u5230 MeterSphere

    "},{"location":"faq/test_track/#7-jira","title":"7 \u7f3a\u9677\u7ba1\u7406\u81ea\u5b9a\u4e49\u5b57\u6bb5\uff0c\u5982\u4f55\u8ddf JIRA \u7aef\u7684\u5b57\u6bb5\u5173\u8054\uff1f","text":"

    \u5728 Jira \u91cc\u67e5\u770b network\uff0c\u627e\u5230\u5bf9\u5e94\u7684\u81ea\u5b9a\u4e49\u5b57\u6bb5\u7684\u5b57\u6bb5\u540d\u79f0\uff0c\u7136\u540e\u5230 MeterSphere \u7f3a\u9677\u6a21\u7248\u91cc\u8bbe\u7f6e\u4e0a\u5bf9\u5e94\u7684 api \u5b57\u6bb5\u540d\u3002

    "},{"location":"faq/test_track/#8","title":"8 \u6d4b\u8bd5\u7528\u4f8b\u53ef\u4ee5\u81ea\u5b9a\u4e49\u6dfb\u52a0\u5b57\u6bb5\u5417\uff1f","text":"

    \u5728\u3010\u9879\u76ee\u8bbe\u7f6e-\u66f4\u591a\u9009\u9879-\u6a21\u7248\u7ba1\u7406-\u6a21\u677f\u5b57\u6bb5\u3011\uff0c\u53ef\u4ee5\u521b\u5efa\u6a21\u677f\u5b57\u6bb5\uff0c\u521b\u5efa\u65f6\u9009\u62e9\u7528\u4f8b\u6a21\u7248\uff0c\u4fdd\u5b58\u6210\u529f\u540e\u6253\u5f00\u7528\u4f8b\u6a21\u7248\uff0c\u6dfb\u52a0\u521b\u5efa\u7684\u6a21\u677f\u5b57\u6bb5\u3002\u7136\u540e\u5728\u7f16\u5199\u7528\u4f8b\u7684\u9875\u9762\u5c31\u4f1a\u51fa\u73b0\u6a21\u677f\u5b57\u6bb5\u3002

    "},{"location":"faq/test_track/#9","title":"9 \u5982\u4f55\u627e\u56de\u8bef\u5220\u9664\u7684\u6d4b\u8bd5\u7528\u4f8b\uff1f","text":"

    \u5220\u9664\u7684\u6d4b\u8bd5\u7528\u4f8b\u5e76\u4e0d\u4f1a\u7acb\u5373\u5220\u9664\uff0c\u800c\u662f\u79fb\u52a8\u5230\u3010\u56de\u6536\u7ad9\u3011\u4e2d\uff0c\u53ef\u4ee5\u5728\u3010\u6d4b\u8bd5\u8ddf\u8e2a-\u6d4b\u8bd5\u7528\u4f8b\u3011\u6a21\u5757\uff0c\u70b9\u51fb\u3010\u56de\u6536\u7ad9\u3011\u627e\u56de\u3002

    "},{"location":"faq/test_track/#10","title":"10 \u6d4b\u8bd5\u7528\u4f8b\u9875\u9762\u7684\u5b57\u6bb5\u5982\u4f55\u589e\u52a0\u81ea\u5b9a\u4e49\u5b57\u6bb5\uff1f","text":"
    • \u5728\u3010\u9879\u76ee\u8bbe\u7f6e-\u6a21\u7248\u7ba1\u7406-\u7528\u4f8b\u6a21\u7248\u3011\u9875\u9762\u4e2d\uff0c\u9009\u62e9\u8981\u6dfb\u52a0\u5b57\u6bb5\u7684\u7528\u4f8b\u6a21\u7248\uff0c\u6253\u5f00\u3010\u7f16\u8f91\u7528\u4f8b\u6a21\u7248\u3011\u9875\u9762\u3002
    • \u5728\u3010\u7f16\u8f91\u7528\u4f8b\u6a21\u7248\u3011\u9875\u9762\uff0c\u70b9\u51fb\u3010\u8bbe\u7f6e\u81ea\u5b9a\u4e49\u5b57\u6bb5\u3011\u6309\u94ae\u6253\u5f00\u3010\u521b\u5efa\u5b57\u6bb5\u3011\u5bf9\u8bdd\u6846\uff0c\u5728\u5bf9\u8bdd\u6846\u4e2d\u586b\u5199\u5b57\u6bb5\u540d\u79f0\u3001\u5907\u6ce8\uff0c\u9009\u62e9\u3010\u5b57\u6bb5\u7c7b\u578b\u3011\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u4fdd\u5b58\u3002
    "},{"location":"faq/test_track/#11","title":"11 \u63d0\u4ea4\u7f3a\u9677\u9875\u9762\u7684\u5b57\u6bb5\u5982\u4f55\u8fdb\u884c\u81ea\u5b9a\u4e49\u914d\u7f6e\uff1f","text":"

    \u91c7\u7528\u7528\u4f8b\u6a21\u7248\u5b9e\u73b0\u81ea\u5b9a\u4e49\u5b57\u6bb5\u3002

    • \u5728\u3010\u9879\u76ee\u8bbe\u7f6e-\u6a21\u7248\u7ba1\u7406-\u7f3a\u9677\u6a21\u7248\u3011\u9875\u9762\u4e2d\uff0c\u9009\u62e9\u8981\u6dfb\u52a0\u5b57\u6bb5\u7684\u7f3a\u9677\u6a21\u7248\uff0c\u6253\u5f00\u3010\u7f16\u8f91\u7f3a\u9677\u6a21\u7248\u3011\u9875\u9762\u3002
    • \u5728\u3010\u7f16\u8f91\u7f3a\u9677\u6a21\u7248\u3011\u9875\u9762\uff0c\u70b9\u51fb\u3010\u8bbe\u7f6e\u81ea\u5b9a\u4e49\u5b57\u6bb5\u3011\u6309\u94ae\u6253\u5f00\u3010\u521b\u5efa\u5b57\u6bb5\u3011\u5bf9\u8bdd\u6846\uff0c\u5728\u5bf9\u8bdd\u6846\u4e2d\u586b\u5199\u5b57\u6bb5\u540d\u79f0\u3001\u5907\u6ce8\uff0c\u9009\u62e9\u3010\u5b57\u6bb5\u7c7b\u578b\u3011\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u4fdd\u5b58\u3002
    "},{"location":"faq/test_track/#12-jiratapdms","title":"12 \u5728 JIRA\u3001TAPD\u3001\u7985\u9053\u4e0a\u5df2\u521b\u5efa\u7684\u7f3a\u9677\uff0cMS\u4e0a\u70b9\u51fb\u201c\u540c\u6b65\u7f3a\u9677\u201d\uff0c\u672a\u6210\u529f\u540c\u6b65","text":"

    \u9879\u76ee\u4e0e\u8fd9\u4e9b\u5de5\u5177\u8bbe\u7f6e\u4e86\u96c6\u6210\u540e\uff0c\u5f00\u6e90\u7248\u4ec5\u652f\u6301\u5355\u5411\u540c\u6b65\uff0c\u5373 MeterSphere \u7f3a\u9677\u540c\u6b65\u5230\u7b2c\u4e09\u65b9\u5e73\u53f0\u3002\u4f01\u4e1a\u7248\u652f\u6301\u53cc\u5411\u540c\u6b65\uff0c\u5373 MeterSphere \u7f3a\u9677\u540c\u6b65\u5230\u7b2c\u4e09\u65b9\u5e73\u53f0\uff0c\u540c\u65f6\u4e5f\u652f\u6301\u7b2c\u4e09\u65b9\u5e73\u53f0\u4e0a\u7684\u7f3a\u9677\u540c\u6b65\u5230 MeterSphere\u3002

    "},{"location":"faq/test_track/#13","title":"13 \u6d4b\u8bd5\u7528\u4f8b\u6a21\u7248\u6dfb\u52a0\u7684\u81ea\u5b9a\u4e49\u5b57\u6bb5\u5982\u4f55\u5728\u5217\u8868\u5c55\u793a\uff1f","text":"

    \u5728\u6d4b\u8bd5\u7528\u4f8b\u5217\u8868\u4e2d\uff0c\u70b9\u51fb\u3010\u64cd\u4f5c\u3011\u5217\u4e2d\u7684\u9f7f\u8f6e\u6309\u94ae\u8fdb\u884c\u914d\u7f6e\u3002

    "},{"location":"faq/test_track/#14","title":"14 \u540c\u4e00\u4e2a\u6d4b\u8bd5\u8ba1\u5212\uff0c\u65e2\u5305\u542b\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\uff0c\u4e5f\u5305\u542b\u573a\u666f\u7528\u4f8b\u65f6\uff0c\u6267\u884c\u987a\u5e8f\u662f\u600e\u6837\u7684\uff1f","text":"
    • \u4e0d\u540c\u7c7b\u578b\u7684\u7528\u4f8b\u4e4b\u95f4\uff08\u63a5\u53e3\u7528\u4f8b\u3001\u573a\u666f\u7528\u4f8b\u548c\u6027\u80fd\u7528\u4f8b\u7b49\uff09\u6ca1\u6709\u5148\u540e\u5173\u7cfb\uff0c\u662f\u5e76\u884c\u6267\u884c\u3002
    • \u540c\u7c7b\u578b\u7684\u591a\u4e2a\u6d4b\u8bd5\u6839\u636e\u8fd0\u884c\u65f6\u914d\u7f6e\u6267\u884c\uff08\u4e32\u884c\u6216\u8005\u5e76\u884c\uff09\u3002
    "},{"location":"faq/test_track/#15-xmind-metersphere","title":"15 \u4ece\u672c\u5730 xmind \u590d\u5236\u6570\u636e\u7c98\u8d34\u5230 MeterSphere \u7528\u4f8b\u8111\u56fe\u76f4\u63a5\u4fdd\u5b58\u540e\u6ca1\u6709\u6570\u636e","text":"

    \u9700\u8981\u5c06\u76f8\u5e94\u7684\u6570\u636e\u6807\u8bb0\u4e3a\u6a21\u5757\u6216\u8005\u7528\u4f8b\u624d\u80fd\u4fdd\u5b58\u3002

    "},{"location":"faq/test_track/#16-ms-tapd-ms-tapd","title":"16 MS \u96c6\u6210 TAPD\uff0c\u5728 MS \u5e73\u53f0\u63d0\u4ea4\u7f3a\u9677\u65f6\u4e0a\u4f20\u56fe\u7247\u6587\u4ef6\uff0c\u4f46 TAPD \u4e2d\u65e0\u6cd5\u6b63\u786e\u663e\u793a\u56fe\u7247","text":"

    \u95ee\u9898\u539f\u56e0\uff1a \u6d4f\u89c8\u5668\u7684\u9ed8\u8ba4\u5b89\u5168\u7b56\u7565\u5bfc\u81f4\u7684\uff0c\u56e0\u4e3a\u56fe\u7247\u5b9e\u9645\u4e0a\u662f\u653e\u5728\u7985\u9053\u7684\uff0cMS \u662fhttps\u7684\uff0cTAPD \u7684\u5730\u5740\u662fhttp\uff0c\u8bbf\u95ee http \u7684\u7985\u9053\u4f1a\u81ea\u52a8\u8f6c\u6210 https\u3002

    \u89e3\u51b3\u65b9\u6cd5\uff1a MS\u5e73\u53f0\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u7cfb\u7edf-\u7cfb\u7edf\u53c2\u6570\u8bbe\u7f6e-\u57fa\u672c\u914d\u7f6e-\u5f53\u524d\u7ad9\u70b9URL\u3011\uff0c\u9700\u8981\u914d\u7f6e\u6210 https \u7684\u5730\u5740

    "},{"location":"faq/test_track/#17-ms-ms-id-id","title":"17 MS\u96c6\u6210\u7985\u9053\uff0c\u5728 MS\u5e73\u53f0\u4e0a \u9879\u76eeID \u586b\u5199\u6b63\u786e\uff0c\u68c0\u67e5\u65f6\u63d0\u793aID\u4e0d\u5b58\u5728\u6216\u8005\u5176\u4ed6\u9519\u8bef\uff0c\u5982\u4f55\u89e3\u51b3\uff1f","text":"

    \u53ef\u80fd\u539f\u56e0\u5305\u62ec\uff1a

    • v2.4 \u7248\u672c\u4e4b\u540e\uff0c\u670d\u52a1\u96c6\u6210\u4fee\u6539\u4e3a\u63d2\u4ef6\u65b9\u5f0f\uff0c\u7985\u9053\u63d2\u4ef6\u7248\u672c\u548c\u5f53\u524d MeterSphere \u7248\u672c\u4e0d\u4e00\u81f4\u3002
    • \u6ca1\u6709\u5bf9\u5e94\u4ea7\u54c1\u6216\u8005\u9879\u76ee\u7684\u6743\u9650\uff0c\u6216\u8005\u6709\u6743\u9650\u4f46\u662f\u9700\u8981\u586b\u4ea7\u54c1 ID\uff0c\u5b9e\u9645\u586b\u4e86\u9879\u76ee ID\u3002
    • \u7985\u9053\u670d\u52a1\u6ca1\u6709\u542f\u7528api\u8c03\u7528\u6743\u9650\uff1a\u7f3a\u5c11\u914d\u7f6e $config->features->apiGetModel\u3002
    • \u670d\u52a1\u96c6\u6210\u5904\u5bf9\u63a5\u7684\u7985\u9053\u7528\u6237\uff0c\u6ca1\u6709\u52fe\u9009\u8d4b\u4e88\"\u8d85\u7ea7model\u8c03\u7528\u63a5\u53e3\"\u6743\u9650\u3002

    \u89e3\u51b3\u65b9\u6cd5\uff1a

    • \u5728 github\u4e0a\u4e0b\u8f7d\u548c MeterSphere \u7248\u672c\u4e00\u81f4\u7684\u63d2\u4ef6metersphere-platform-plugin \u5e76\u4e0a\u4f20\u5230\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u63d2\u4ef6\u7ba1\u7406\u3011\uff0c\u7528\u6cd5\u53c2\u8003\u670d\u52a1\u96c6\u6210\u63d2\u4ef6\u3002
    • \u5728 MeterSphere \u9879\u76ee\u7f16\u8f91\u6846-\u9879\u76eeID \u5904\u6709\u201ci\u201d\u63d0\u793a\u8bf4\u660e\uff0c\u6309\u7167\u914d\u7f6e\u8bf4\u660e\u586b\u5199\u5bf9\u5e94 \u4ea7\u54c1ID \u6216\u8005 \u9879\u76eeID\u3002
    • \u5728\u7985\u9053\u5b89\u88c5\u8def\u5f84\u4e2d\uff1a${\u5b89\u88c5\u8def\u5f84}/zentao/config/ \u76ee\u5f55\u4e0b my.php (\u5982\u679c\u6ca1\u6709\uff0c\u65b0\u5efa my.php \u6587\u4ef6)\u4e2d\u6dfb\u52a0\u5982\u4e0b\u5185\u5bb9\uff1a$config->features->apiGetModel = true;\u7136\u540e\u91cd\u542f\u7985\u9053\u670d\u52a1\u5668\uff1a/opt/zbox/zbox restart\u3002
    • \u7528\u4e8e\u5bf9\u63a5\u7684\u7985\u9053\u7528\u6237\uff0c\u786e\u8ba4\u5728\u7985\u9053 web \u7aef\u3010\u7ec4\u7ec7-\u6743\u9650-\u6743\u9650\u7ef4\u62a4-API \u63a5\u53e3\u3011\u52fe\u9009\u4e86\u201c\u8d85\u7ea7model\u8c03\u7528\u63a5\u53e3\u201d\u3002
    "},{"location":"faq/ui_test/","title":"UI \u6d4b\u8bd5\u76f8\u5173","text":""},{"location":"faq/ui_test/#1-chromedriver","title":"1.\u672c\u5730\u8c03\u8bd5\u65f6\uff0c\u542f\u52a8\u65e5\u5fd7\u4e2d\u51fa\u73b0\u4e24\u4e2a ChromeDriver \u7248\u672c\u53f7\uff0c\u539f\u56e0\u662f\uff1f","text":"

    \u672c\u5730\u6d4f\u89c8\u5668\u7684\u7248\u672c\u53f7\u4e0e\u4e0b\u8f7d\u7684\u9a71\u52a8\u7248\u672c\u4e0d\u5339\u914d\uff0c\u53ef\u67e5\u770b\u6d4f\u89c8\u5668\u7248\u672c\u540e\uff0c\u91cd\u65b0\u4e0b\u8f7d\u5bf9\u5e94\u7248\u672c\u7684\u9a71\u52a8\u3002

    "},{"location":"faq/ui_test/#2cannot-find-chrome-binary","title":"2.\u672c\u5730\u8c03\u8bd5\uff0c\u542f\u52a8\u65e5\u5fd7\u4e2d\u62a5\u9519\uff1acannot find Chrome binary\uff0c\u5982\u4f55\u89e3\u51b3\uff1f","text":"

    \u5c06 chrome.exe \u7684\u8def\u5f84\u914d\u7f6e\u5230\u73af\u5883\u53d8\u91cf PATH \u91cc\u3002

    "},{"location":"faq/ui_test/#3","title":"3.\u672c\u5730\u8c03\u8bd5\uff0c\u65e5\u5fd7\u6ca1\u6709\u4efb\u4f55\u62a5\u9519\u60c5\u51b5\uff0c\u4f46\u662f\u9875\u9762\u6d4f\u89c8\u5668\u6ca1\u6709\u88ab\u8c03\u7528\u8d77\u6765\uff0c\u5982\u4f55\u5904\u7406\uff1f","text":"

    \u5728UI\u573a\u666f\u4e2d\uff0c\u4e0d\u52fe\u9009\u3010\u6027\u80fd\u6a21\u5f0f\u3011\uff0c\u5373\u53ef\u770b\u5230\u6d4f\u89c8\u5668\u88ab\u8c03\u7528\u7684\u8fc7\u7a0b\u3002

    "},{"location":"installation/backup_data/","title":"\u6570\u636e\u5907\u4efd\u4e0e\u8fd8\u539f","text":"

    \u6ce8\u610f

    \u4e3b\u8981\u662f MySQL \u6570\u636e\u5e93\u7684\u6570\u636e\u5907\u4efd\u548c /opt/metersphere/data \u8def\u5f84\u4e0b\u7684\u76ee\u5f55\u5907\u4efd\u3002 \u6570\u636e\u5e93\u4e3b\u8981\u6709 mysqldump \u548c \u624b\u52a8\u5907\u4efd /opt/metersphere/data/mysql \u76ee\u5f55\u4e24\u79cd\u65b9\u5f0f\uff0c\u53ef\u6839\u636e\u4f01\u4e1a\u5b9e\u9645\u60c5\u51b5\u548c\u5df2\u6709\u5907\u4efd\u5de5\u5177\u5236\u5b9a\u5907\u4efd\u7b56\u7565\u548c\u5907\u4efd\u624b\u6bb5

    "},{"location":"installation/backup_data/#1","title":"1 \u6570\u636e\u5907\u4efd","text":""},{"location":"installation/backup_data/#11","title":"1.1 \u624b\u52a8\u5907\u4efd","text":"

    #\u6570\u636e\u5e93\u5907\u4efd\uff1a\ndocker exec -i mysql mysqldump -uroot -pPassword123@mysql metersphere > metersphere.sql\n\n#data \u76ee\u5f55\u5907\u4efd\ntar -cvf data_backup.tar /opt/metersphere/data\n
    \u82e5\u5907\u4efd\u6570\u636e\u5e93\u65f6\u51fa\u73b0mysqldump: Error 2020: Got packet bigger than \u2018max_allowed_packet\u2019 bytes when dumping tableapi_scenario_report_detailat row: 94\uff0c\u5219\u6dfb\u52a0max_allowed_packet\u53c2\u6570\uff0c\u5982\u4e0b:
    docker exec -i mysql mysqldump -uroot -pPassword123@mysql metersphere --max_allowed_packet=2G > metersphere.sql\n

    "},{"location":"installation/backup_data/#12","title":"1.2 \u81ea\u52a8\u5907\u4efd","text":"

    ms_backup.sh

    #!/bin/bash\n\nbackupDir=/opt/db_bak    \ndata=/opt/metersphere/data\ncurrentTime=`date \"+%Y-%m-%d-%H-%M-%S\"`   \nbackupZipFileName=ms_db_$currentTime.zip  \ndumpSqlFilePath=$backupDir/ms_db_$currentTime.sql  \necho dumpSqlFilePath=$dumpSqlFilePath\ndocker exec -i mysql mysqldump -uroot -pPassword123@mysql metersphere --max_allowed_packet=2G > $dumpSqlFilePath\ncd $backupDir\nzip -r $backupZipFileName $dumpSqlFilePath $data\necho rm -rf dumpSqlFilePath\nrm -rf $backupDir/ms_db_$currentTime.sql\n\n#remove outdated backup files\nkeepBackupNum=3\noutput=`ls -lt $backupDir/*.zip | awk '{print $9}'`\nstep=0\nfor backupFile in $output ;do\n    step=$((step+1))\n    echo step=$step\n    echo $backupFile\n    if [ $step -gt $keepBackupNum ];then\n        echo Remove outdated backup $backupFile\n        rm -rf  $backupFile\n    fi\ndone\n

    install_ms_backup.sh

    #!/bin/bash\n\ntimedate_fields=\"0 1 * * *\"  #\u6bcf\u5929\u51cc\u66681:00\u6267\u884c\u5907\u4efd\u7a0b\u5e8f\ncmd=\"bash /opt/db_bak/ms_backup.sh\"\ncrontab -l | grep \"$cmd \" > /dev/null 2>&1\nif test $? -ne 0; then\n    crontab -l > crontab.tmp\n    echo \"$timedate_fields $cmd\" >> crontab.tmp\n    crontab crontab.tmp\nfi\n

    \u6267\u884c crontab -l \u5373\u53ef\u67e5\u770b\u5b9a\u65f6\u4efb\u52a1

    "},{"location":"installation/backup_data/#2","title":"2 \u6570\u636e\u8fd8\u539f","text":"

    \u8fdb\u5165\u5907\u4efd sql \u76ee\u5f55\uff0c\u5c06 sql \u590d\u5236\u5230 mysql \u5bb9\u5668\u7684\u6302\u8f7d\u76ee\u5f55 /opt/metersphere/data/mysql \u4e0b

    cp metersphere.sql /opt/metersphere/data/mysql\n

    \u8fdb\u5165 mysql \u5bb9\u5668\uff0c\u767b\u5f55\u6570\u636e\u5e93

    docker exec -it mysql sh\nmysql -uroot -pPassword123@mysql\n

    \u4f7f\u7528 metersphere \u5e93\uff0c\u5e76\u5c06\u6570\u636e\u5bfc\u5165\u5230\u5e93\u91cc

    use metersphere;\nsource /var/lib/mysql/metersphere.sql\n

    "},{"location":"installation/build_data_streaming/","title":"\u90e8\u7f72Data-Streaming\u96c6\u7fa4","text":"

    \u51c6\u5907\u597d\u73af\u5883\u53d8\u91cf\u6587\u4ef6\u3001compose \u6587\u4ef6\uff0c\u4e09\u53f0\u673a\u5668\u90e8\u7f72\u4e00\u6837

    \u73af\u5883\u53d8\u91cf\u6587\u4ef6 .env

    vim .env   #\u53c2\u8003ms\u7684.env\u6587\u4ef6\u8fdb\u884c\u4fee\u6539\n\nMS_KAFKA_TOPIC=JMETER_METRICS\nMS_MYSQL_HOST=10.1.240.110 #\u4fee\u6539MS\u7684\u6570\u636e\u5e93\nMS_KAFKA_LOG_TOPIC=JMETER_LOGS\nMS_TAG=v1.9.3\nMS_JMETER_DATA_PATH=metersphere/data/jmeter\nMS_BASE=/opt\nMS_KAFKA_TEST_TOPIC=LOAD_TESTS\nMS_MYSQL_USER=root\nMS_EXTERNAL_MYSQL=true\nMS_PREFIX=registry.cn-qingdao.aliyuncs.com/metersphere\nMS_MYSQL_DB=metersphere\nMS_MYSQL_PASSWORD=Password123@mysql\nMS_JMETER_TAG=5.4.1-ms3-jdk8\nMS_MYSQL_PORT=3307\n\nMS_KAFKA_BOOTSTRAP_SERVERS=10.1.240.154:9092,10.1.240.155:9092,10.1.240.156:9092  #\u65b0\u52a0\n

    docker-compose-base.yml

    vim docker-compose-base.yml #\u62f7\u8d1dms\u670d\u52a1\u5668\u7684docker-compose-base.yml \n\nversion: \"2.1\"\nvolumes:\n  ms-conf:\n    driver_opts:\n      type: none\n      device: ${MS_BASE}/metersphere/conf\n      o: bind\n  ms-logs:\n    driver_opts:\n      type: none\n      device: ${MS_BASE}/metersphere/logs\n      o: bind\n  ms-data:\n    driver_opts:\n      type: none\n      device: ${MS_BASE}/metersphere/data\n      o: bind\n\nnetworks:\n  ms-network:\n    driver: bridge\n    ipam:\n      driver: default\n      config:\n        - subnet: ${MS_DOCKER_SUBNET}\n

    docker-compose-ds.yml

    vim docker-compose-ds.yml #\u65b0\u52a0ds yaml\u6587\u4ef6\n\nversion: \"2.1\"\nservices:\n  ms-data-streaming:\n    image: ${MS_IMAGE_PREFIX}/ms-data-streaming:${MS_IMAGE_TAG}\n    container_name: ms-data-streaming\n    environment:\n      HOST_HOSTNAME: $HOSTNAME\n      SPRING_DATASOURCE_URL: jdbc:mysql://${MS_MYSQL_HOST}:${MS_MYSQL_PORT}/${MS_MYSQL_DB}?autoReconnect=false&useUnicode=true&characterEncoding=UTF-8&characterSetResults=UTF-8&zeroDateTimeBehavior=convertToNull&allowPublicKeyRetrieval=true&useSSL=false\n      SPRING_DATASOURCE_USERNAME: ${MS_MYSQL_USER}\n      SPRING_DATASOURCE_PASSWORD: ${MS_MYSQL_PASSWORD}\n      KAFKA_PARTITIONS: 4\n      KAFKA_REPLICAS: 1\n      KAFKA_TOPIC: ${MS_KAFKA_TOPIC}\n      KAFKA_LOG_TOPIC: ${MS_KAFKA_LOG_TOPIC}\n      KAFKA_TEST_TOPIC: ${MS_KAFKA_TEST_TOPIC}\n      KAFKA_REPORT_TOPIC: ${MS_KAFKA_REPORT_TOPIC}\n      KAFKA_BOOTSTRAP-SERVERS: ${MS_KAFKA_HOST}:${MS_KAFKA_PORT}\n      FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS: 'true'\n    healthcheck:\n      test: [\"CMD\", \"nc\", \"-zv\", \"localhost\", \"8084\"]\n      interval: 6s\n      timeout: 10s\n      retries: 20\n    restart: always\n    volumes:\n      - ./conf/metersphere.properties:/opt/metersphere/conf/metersphere.properties\n      - ${MS_BASE}/metersphere/logs/data-streaming:/opt/metersphere/logs/data-streaming\n    networks:\n      - ms-network\n

    \u542f\u52a8 Data-Streaming\uff0c\u6267\u884c\u547d\u4ee4:

    source .env \ndocker-compose -f docker-compose-base.yml -f docker-compose-ds.yml up -d\n

    "},{"location":"installation/build_kafka/","title":"\u90e8\u7f72Kafka\u96c6\u7fa4","text":"

    MeterSphere \u914d\u7f6e kafka \u96c6\u7fa4\u65b9\u6848\u91c7\u7528\u5b89\u88c5\u5305\u81ea\u5e26\u7684 kafka3.4 \u914d\u7f6e\u96c6\u7fa4\u3002\u672c\u65b9\u6848\u5206\u522b\u90e8\u7f72\u4e86\u4e09\u4e2a\u72ec\u7acb\u7684 MeterSphere \u670d\u52a1\uff0c\u7136\u540e\u628a\u8fd9\u4e09\u4e2a\u72ec\u7acb\u7684 MeterSphere \u7684 kafka \u5173\u8054\u6210\u96c6\u7fa4\u3002\u5982\u9700\u505a\u6d41\u91cf\u8f6c\u53d1\u53ef\u4ee5\u5c06\u4e09\u4e2a\u670d\u52a1\u914d\u7f6e\u5230 NGINX \u505a\u6d41\u91cf\u8f6c\u53d1\u3002 Kafka 3.0 \u4e4b\u524d\u7684\u67b6\u6784: \u5143\u6570\u636e\u5728 zookeeper \u4e2d\uff0c\u8fd0\u884c\u65f6\u52a8\u6001\u9009\u4e3e controller\uff0c\u7531 controller \u8fdb\u884c Kafka \u96c6\u7fa4\u7ba1\u7406\u3002kraft \u6a21\u5f0f\u67b6\u6784: \u4e0d\u518d\u4f9d\u8d56 zookeeper \u96c6\u7fa4\uff0c\u800c\u662f\u7528\u4e09\u53f0 controller \u8282\u70b9\u4ee3\u66ff zookeeper\uff0c\u5143\u6570\u636e\u4fdd\u5b58\u5728 controller \u4e2d\uff0c\u7531 controller \u76f4\u63a5\u8fdb\u884c Kafka \u96c6\u7fa4\u7ba1\u7406\u3002 Kafka \u96c6\u7fa4\u63d0\u4f9b\u4e86\u9ad8\u53ef\u9760\u6027\u3001\u9ad8\u541e\u5410\u91cf\u3001\u6c34\u5e73\u6269\u5c55\u6027\u3001\u5bb9\u9519\u6027\u3001\u5b9e\u65f6\u5904\u7406\u548c\u6301\u4e45\u6027\u5b58\u50a8\u7b49\u4f18\u52bf\uff0c\u4f7f\u5176\u6210\u4e3a\u5353\u8d8a\u7684\u5206\u5e03\u5f0f\u6d88\u606f\u961f\u5217\u548c\u6570\u636e\u6d41\u5e73\u53f0\uff0c\u5728\u5927\u89c4\u6a21\u6570\u636e\u5904\u7406\u3001\u5b9e\u65f6\u6570\u636e\u7ba1\u9053\u548c\u6d41\u5f0f\u5904\u7406\u7b49\u65b9\u9762\u53d1\u6325\u7740\u5173\u952e\u4f5c\u7528\u3002

    "},{"location":"installation/build_kafka/#1-kraft","title":"1 kraft \u67b6\u6784\u7684\u597d\u5904","text":"
    • Kafka \u4e0d\u518d\u4f9d\u8d56\u5916\u90e8\u6846\u67b6\uff0c\u800c\u662f\u80fd\u591f\u72ec\u7acb\u8fd0\u884c\u3002
    • controller \u7ba1\u7406\u96c6\u7fa4\u65f6\uff0c\u4e0d\u518d\u9700\u8981\u4ece zookeeper \u4e2d\u5148\u8bfb\u53d6\u6570\u636e\uff0c\u96c6\u7fa4\u6027\u80fd\u4e0a\u5347\u3002
    • \u7531\u4e8e\u4e0d\u4f9d\u8d56 zookeeper\uff0c\u96c6\u7fa4\u6269\u5c55\u65f6\u4e0d\u518d\u53d7\u5230 zookeeper \u8bfb\u5199\u80fd\u529b\u9650\u5236 controller \u4e0d\u518d\u52a8\u6001\u9009\u4e3e\uff0c\u800c\u662f\u7531\u914d\u7f6e\u6587\u4ef6\u89c4\u5b9a\uff0c\u8fd9\u6837\u6211\u4eec\u53ef\u4ee5\u6709\u9488\u5bf9\u6027\u7684\u52a0\u5f3a controller \u8282\u70b9\u7684\u914d\u7f6e\u3002
    • \u540e\u7eed\u7248\u672c\u5347\u7ea7\u65b9\u4fbf\uff0c\u4e0d\u7528\u548c zookeeper \u4e00\u8d77\u7ef4\u62a4\u3002
    "},{"location":"installation/build_kafka/#2-metersphere","title":"2 \u90e8\u7f72 MeterSphere \u670d\u52a1","text":"

    \u7533\u8bf7\u4e09\u53f0\u670d\u52a1\u5668\u5206\u522b\u90e8\u7f72 MeterSphere \u670d\u52a1\uff0c\u90e8\u7f72\u6b65\u9aa4\u8bf7\u53c2\u8003 Linux\u5355\u673a\u90e8\u7f72\u79bb\u7ebf\u5b89\u88c5\u3002

    "},{"location":"installation/build_kafka/#3-docker-compose-kafkayml","title":"3 \u670d\u52a1\u5b89\u88c5\u5b8c\u6210\u540e\uff0c\u4e09\u53f0\u670d\u52a1\u5206\u522b\u4fee\u6539docker-compose-kafka.yml \u914d\u7f6e\u6587\u4ef6\u4e3a\u96c6\u7fa4\u6a21\u5f0f\u3002","text":"

    vi /opt/metersphere/docker-compose-kafka.yml \u914d\u7f6e

        version: \"2.1\"\n  services:\n    kafka:\n      image: '${MS_IMAGE_PREFIX}/kafka:3.4.0'\n      container_name: kafka\n      ports:\n        - '${MS_KAFKA_PORT}:9092'\n        - '9093:9093'     #\u5f00\u653e9093\u7aef\u53e3\n      healthcheck:\n        test: [\"CMD\", \"bash\", \"-c\", \"< /dev/tcp/localhost/9093\"]\n        interval: 6s\n        timeout: 10s\n        retries: 50\n      restart: always\n      environment:\n        KAFKA_ENABLE_KRAFT: 'yes'\n        KAFKA_BROKER_ID: 3        #\u6807\u8bc6 Kafka \u96c6\u7fa4\u4e2d\u7684\u6bcf\u4e2a Broker\uff08\u4ee3\u7406\uff09\u7684\u552f\u4e00ID\u4e09\u4e2a\u670d\u52a1\u5668\u4e0a\u914d\u7f6e\u5206\u522b\u4e3a 1 2 3 \n        KAFKA_KRAFT_CLUSTER_ID: LelM2dIFQkiUFVXCECqRWA  #\u96c6\u7fa4\u914d\u7f6e\u4e00\u4e2a\u96c6\u7fa4ID\n        ALLOW_PLAINTEXT_LISTENER: 'yes'\n        KAFKA_CFG_ADVERTISED_LISTENERS: PLAINTEXT://10.1.11.58:9092  #roker \u5bf9\u5916\u66b4\u9732\u7684\u5730\u5740\uff0c\u9700\u8981\u586b\u5199\u6bcf\u4e2a\u8282\u70b9\u771f\u5b9e\u7684 ip \u548c\u7aef\u53e3\n        KAFKA_CFG_CONTROLLER_QUORUM_VOTERS: 1@10.1.11.53:9093,2@10.1.11.54:9093,3@10.1.11.58:9093  #\u6240\u6709\u7684 controller \u5217\u8868\uff0c\u4e09\u4e2a\u914d\u7f6e\u6587\u4ef6\u90fd\u586b\u4e00\u6837\u3002\u683c\u5f0f\uff1a1@ip1:9093\uff0c2@ip2:9093\uff0c3@ip3:9093\n        KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP: CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT\n        KAFKA_CFG_CONTROLLER_LISTENER_NAMES: CONTROLLER\n        KAFKA_CFG_LISTENERS: PLAINTEXT://:9092,CONTROLLER://:9093\n        KAFKA_CFG_PROCESS_ROLES: broker,controller\n        KAFKA_CFG_LOG_RETENTION_HOURS: 64\n        KAFKA_CFG_MAX_REQUEST_SIZE: 52428800\n        KAFKA_CFG_MESSAGE_MAX_BYTES: 52428800\n        KAFKA_CFG_REPLICA_FETCH_MAX_BYTES: 52428800\n        KAFKA_CFG_FETCH_MESSAGE_MAX_BYTES: 52428800\n        KAFKA_CFG_PARTITION_FETCH_BYTES: 52428800\n        KAFKA_HEAP_OPTS: '-Xmx512m -Xms256m'\n        FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS: 'true'\n      networks:\n        - ms-network\n    data-streaming:\n      depends_on:\n        kafka:\n          condition: service_healthy\n
    \u4ee5 v2.10.0 \u7248\u672c\u4e3a\u4f8b\uff0cKAFKA_ENABLE_KRAFT: 'yes'\uff0c\u9ed8\u8ba4\u5141\u8bb8 kraft \u96c6\u7fa4\u6a21\u5f0f\uff0c\u6211\u4eec\u53ea\u9700\u8981\u628a\u5176\u4ed6\u8282\u70b9\u52a0\u5165\u5230\u96c6\u7fa4\u4e2d\u5373\u53ef\u3002\u9700\u8981\u4fee\u6539\u7684\u914d\u7f6e\u9879\u5305\u62ec KAFKA_CFG_ADVERTISED_LISTENERS\u3001KAFKA_CFG_CONTROLLER_QUORUM_VOTERS\u3001KAFKA_BROKER_ID\u9700\u8981\u6dfb\u52a0\u7684\u914d\u7f6e\u9879\u5305\u62ec KAFKA_KRAFT_CLUSTER_ID\u3001ports 9093\u7aef\u53e3\uff1b\u5177\u4f53\u5185\u5bb9\u89c1\u4e0a\u8ff0\u914d\u7f6e\u6587\u4ef6\u6ce8\u91ca\u8bf4\u660e\u3002

    "},{"location":"installation/build_kafka/#4-metersphere-docker-kafka-kafka_bootstrap-serversip19092ip29092ip39092","title":"4 \u5206\u522b\u4fee\u6539\u4e09\u53f0 MeterSphere \u670d\u52a1docker\u914d\u7f6e\u6587\u4ef6\uff0c\u5c06\u4f7f\u7528\u5230 kafka \u96c6\u7fa4\u7684\u914d\u7f6e\u9879\u6539\u4e3a KAFKA_BOOTSTRAP-SERVERS\uff1aip1:9092,ip2:9092,ip3:9092\u3002","text":"

    cd /opt/metersphere \u9700\u4fee\u6539\u6587\u4ef6:

    • vi docker-compose-project-management.yml
    • vi docker-compose-ui-test.yml
    • vi docker-compose-gateway.yml
    • vi docker-compose-workstation.yml
    • vi docker-compose-report-stat.yml
    • vi docker-compose-api-test.yml
    • vi docker-compose-seleniarm.yml
    • vi docker-compose-system-setting.yml
    • vi docker-compose-data-streaming.yml
    • vi docker-compose-performance-test.yml
    • vi docker-compose-test-track.yml

    "},{"location":"installation/build_kafka/#5-msctl-reload-kraft","title":"5 \u6240\u6709\u914d\u7f6e\u4fee\u6539\u5b8c\u6210\uff0cmsctl reload \u751f\u6548\u5373\u53ef\u521b\u5efa kraft \u96c6\u7fa4\u3002","text":"

    \u4ee5\u4e0a\u5185\u5bb9\u914d\u7f6e\u597d\u4e4b\u540e\uff0c\u4f7f\u7528 msctl reload \u547d\u4ee4\u91cd\u65b0\u52a0\u8f7d\u914d\u7f6e\u6587\u4ef6\uff0c\u5373\u53ef\u521b\u5efa kraft \u96c6\u7fa4\u3002

    "},{"location":"installation/build_node_controller/","title":"\u90e8\u7f72Node-Controller\u96c6\u7fa4","text":"

    \u5982\u91c7\u7528\u72ec\u7acb\u4e3b\u673a\u538b\u6d4b\uff0c\u9700\u8981\u90e8\u7f72 Node-Controller\uff0c\u90e8\u7f72\u8fc7\u7a0b\u53ef\u4ee5\u53c2\u8003 https://metersphere.io/docs/v2.x/installation/online_installation/ \u3002 \u8fdb\u5165\u5b89\u88c5\u5305\u6240\u5728\u76ee\u5f55\uff0c\u5c06 install.conf \u4e2d\u4fee\u6539\u5b89\u88c5\u6a21\u5f0f MS_INSTALL_MODE \u7684\u503c(\u7531\u539f\u5148\u7684 allinone \u6539\u4e3a node-controller)\uff0c\u5b89\u88c5\u5305\u8def\u5f84\u4e0b\u6267\u884c /bin/bash install.sh \u5373\u53ef\u3002

    • \u5b89\u88c5\u5b8c\u6210\u540e\uff0c\u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u6d4b\u8bd5\u8d44\u6e90\u6c60\u3011\u6dfb\u52a0\u8d44\u6e90\u6c60\uff0c\u586b\u5199\u5b8c\u6574\u8d44\u6e90\u6c60 ip\u3001\u7aef\u53e3\u4fe1\u606f\u5373\u53ef\u3002
    • \u5982\u679c\u6d4b\u8bd5\u8d44\u6e90\u5e76\u53d1\u8981\u6c42\u8f83\u5927\uff0c\u53ef\u4ee5\u5c06\u8d44\u6e90\u6c60\u4e2d JMeter \u7684\u5185\u5b58\u914d\u7f6e\uff0c\u5efa\u8bae\u8c03\u6574\u5230 4G \u4ee5\u4e0a\u3002-Xms4g -Xmx4g -XX:MaxMetaspaceSize=256m
    • \u6700\u540e\uff0c\u8d44\u6e90\u6c60\u914d\u7f6e\u5b8c\u6210\u540e\uff0c\u9700\u8981\u5728\u8d44\u6e90\u6c60\u5217\u8868\u542f\u7528\u8d44\u6e90\u6c60\uff0c\u6821\u9a8c\u901a\u8fc7\u5373\u53ef\u4f7f\u7528\u3002

    "},{"location":"installation/cli/","title":"\u547d\u4ee4\u884c\u5de5\u5177","text":"

    MeterSphere \u9ed8\u8ba4\u5185\u7f6e\u4e86\u547d\u4ee4\u884c\u8fd0\u7ef4\u5de5\u5177\u3010msctl\u3011\uff0c\u901a\u8fc7\u6267\u884c\u3010msctl help\u3011\u547d\u4ee4\uff0c\u53ef\u4ee5\u67e5\u770b\u76f8\u5173\u7684\u5e2e\u52a9\u6587\u6863\u3002

    MeterSphere \u63a7\u5236\u811a\u672c\n\nUsage: \n  ./msctl.sh [COMMAND] [ARGS...]\n  ./msctl.sh --help\n\nCommands: \n  status    \u67e5\u770b MeterSphere \u670d\u52a1\u8fd0\u884c\u72b6\u6001\n  start     \u542f\u52a8 MeterSphere \u670d\u52a1\n  stop      \u505c\u6b62 MeterSphere \u670d\u52a1\n  restart   \u91cd\u542f MeterSphere \u670d\u52a1\n  reload    \u91cd\u65b0\u52a0\u8f7d MeterSphere \u670d\u52a1\uff08\u4fee\u6539\u914d\u7f6e\u6587\u4ef6 /opt/metersphere/.env \u65f6\uff0c\u8fd0\u884c\u6b64\u547d\u4ee4\u4f7f\u914d\u7f6e\u751f\u6548\uff09\n  upgrade   \u5347\u7ea7 MeterSphere \u81f3\u6700\u65b0\u7248\u672c\n  upgrade [RELEASE]  \u6839\u636e\u7248\u672c\u53f7\u641c\u7d22\u79bb\u7ebf\u5305\uff0c\u5347\u7ea7 MeterSphere \u81f3\u5bf9\u5e94\u7248\u672c\n  uninstall \u5378\u8f7d MeterSphere \u670d\u52a1\n  version   \u67e5\u770b MeterSphere \u7248\u672c\u4fe1\u606f\n
    "},{"location":"installation/kubernetes_installation/","title":"Kubernetes \u90e8\u7f72","text":""},{"location":"installation/kubernetes_installation/#1-helm-charts","title":"1 Helm Charts \u5728\u7ebf\u90e8\u7f72","text":"
    kubectl create ns ms\nhelm repo add bitnami https://charts.bitnami.com/bitnami\nhelm repo add metersphere https://metersphere.github.io/helm-chart/\n# \u4ece chart \u4ed3\u5e93\u4e2d\u66f4\u65b0\u672c\u5730\u53ef\u7528chart\u7684\u4fe1\u606f\nhelm repo update  \nhelm install metersphere metersphere/metersphere -n ms\n
    "},{"location":"installation/kubernetes_installation/#2-helm-charts","title":"2 Helm Charts \u79bb\u7ebf\u90e8\u7f72","text":"
    • \u5bfc\u5165\u955c\u50cf \u4e0b\u8f7d MeterSphere \u6700\u65b0\u7248\u672c\u7684\u79bb\u7ebf\u5b89\u88c5\u5305\u5e76\u4e14\u89e3\u538b\uff0c\u5c06\u5b89\u88c5\u5305\u91cc image \u76ee\u5f55\u4e0b\u7684\u955c\u50cf tar \u5305\u4e0a\u4f20\u5230 kubernetes \u7684\u955c\u50cf\u5e93\u91cc\u6216\u8005\u624b\u52a8 load \u5230 kubernetes \u5404\u4e2a\u5bbf\u4e3b\u673a\u8282\u70b9\u4e0a\u3002 MeterSphere \u79bb\u7ebf\u5b89\u88c5\u5305\u4e0b\u8f7d\u94fe\u63a5: https://community.fit2cloud.com/#/products/metersphere/downloads

    • \u4e0b\u8f7d\u79bb\u7ebf Chart \u5305 helm-chart \u5b89\u88c5\u5305\u4e0b\u8f7d\u94fe\u63a5: https://github.com/metersphere/helm-chart/releases,\u5982\uff1ahttps://github.com/metersphere/helm-chart/releases/download/metersphere-2.3.0/metersphere-2.3.0.tgz

    • \u8fdb\u884c\u5b89\u88c5

      helm install metersphere metersphere-2.3.0.tgz -n ms\n\n# \u6839\u636e\u9700\u8981\u4fee\u6539 values.yml \u6587\u4ef6\u914d\u7f6e\u540e\u5b89\u88c5\nhelm install metersphere metersphere-2.3.0.tgz -f metersphere/values.yml -n ms\n

    "},{"location":"installation/kubernetes_installation/#3-helm-charts","title":"3 Helm Charts \u5728\u7ebf\u5347\u7ea7","text":"
    helm repo update  # \u4ece chart \u4ed3\u5e93\u4e2d\u66f4\u65b0\u672c\u5730\u53ef\u7528chart\u7684\u4fe1\u606f\nhelm upgrade metersphere metersphere/metersphere -n ms\n
    "},{"location":"installation/kubernetes_installation/#4-helm-charts","title":"4 Helm Charts \u79bb\u7ebf\u5347\u7ea7","text":"
    • \u5bfc\u5165\u65b0\u7248\u672c\u955c\u50cf \u4e0b\u8f7d MeterSphere \u6700\u65b0\u7248\u672c\u7684\u79bb\u7ebf\u5b89\u88c5\u5305\u5e76\u4e14\u89e3\u538b\uff0c\u5c06\u5b89\u88c5\u5305\u91cc image \u76ee\u5f55\u4e0b\u7684\u955c\u50cf tar \u5305\u4e0a\u4f20\u5230 kubernetes \u7684\u955c\u50cf\u5e93\u91cc\u6216\u8005\u624b\u52a8 load \u5230 kubernetes \u5404\u4e2a\u5bbf\u4e3b\u673a\u8282\u70b9\u4e0a\u3002 MeterSphere \u79bb\u7ebf\u5b89\u88c5\u5305\u4e0b\u8f7d\u94fe\u63a5: https://community.fit2cloud.com/#/products/metersphere/downloads

    • \u4e0b\u8f7d\u6700\u65b0\u79bb\u7ebf Chart \u5305 helm-chart \u5b89\u88c5\u5305\u4e0b\u8f7d\u94fe\u63a5: https://github.com/metersphere/helm-chart/releases \u5982\uff1ahttps://github.com/metersphere/helm-chart/releases/download/metersphere-2.3.0/metersphere-2.3.0.tgz

    • \u8fdb\u884c\u5347\u7ea7

      helm upgrade metersphere metersphere-2.3.0.tgz -n ms\n\n# \u6839\u636e\u9700\u8981\u4fee\u6539 values.yml \u6587\u4ef6\u914d\u7f6e\u540e\u5347\u7ea7\nhelm upgrade metersphere metersphere-1.0.10.tgz -f metersphere/values.yml -n ms\n

    "},{"location":"installation/kubernetes_installation/#5-valuesyaml","title":"5 values.yaml","text":"

    \u4ee5\u4e0b values.yaml \u5185\u5bb9\u5bf9\u5e94\u7248\u672c\u4e3a v2.3.0\uff0c\u6700\u65b0\u7684 values.yaml \u53ef\u5230 github \u4e0a metersphere helm-chart \u4ed3\u5e93\u4e2d\u67e5\u627e\u5bf9\u5e94\u7248\u672c\u7684 values.yaml\uff0c\u4f8b\u5982\uff1av2.9.1 \u7248\u672c value.yaml \u6587\u4ef6\u4e3a https://github.com/metersphere/helm-chart/blob/metersphere-2.9.1/charts/metersphere/values.yaml

    ingress: # \u4e0d\u4f7f\u7528 ingress \u53ef\u4ee5\u5173\u95ed\n  enabled: true\n  host: ms-dev.apps.metersphere.com\n  annotations: {}\n    ## example for ingress annotions.\n    # kubernetes.io/ingress.class: nginx\n    # kubernetes.io/tls-acme: \"true\"      \n  https:\n    enabled: false\n    secretName: \"\"\n\ncommon:\n  imagePrefix: \"registry.cn-qingdao.aliyuncs.com/metersphere/\"\n  imagePullSecrets: nil\n  storageClass: default\n  imageTag: v2.3.0     # \u5b89\u88c5\u7684\u7248\u672c\u53f7\n  imagePullPolicy: Always  # \u955c\u50cf\u62c9\u53d6\u7b56\u7565\n  properties: |-\n    ## DATABASE\n    spring.datasource.url=jdbc:mysql://{{.Values.mysql.host}}:{{.Values.mysql.port}}/metersphere?autoReconnect=false&useUnicode=true&characterEncoding=UTF-8&characterSetResults=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true\n    spring.datasource.username={{.Values.mysql.username}}\n    spring.datasource.password={{.Values.mysql.password}}\n    ## redis\n    spring.session.store-type=redis\n    spring.redis.host={{.Values.redis.host}}\n    spring.redis.port={{.Values.redis.port}}\n    spring.redis.database={{.Values.redis.database}}\n    spring.redis.password={{.Values.redis.password}}\n    ## KAFKA\n    kafka.partitions=1\n    kafka.replicas=1\n    kafka.topic={{.Values.kafka.metricTopic}}\n    kafka.bootstrap-servers={{.Values.kafka.host}}.{{.Release.Namespace}}:{{.Values.kafka.port}}\n    kafka.log.topic={{.Values.kafka.logTopic}}\n    kafka.test.topic={{.Values.kafka.testTopic}}\n    kafka.report.topic={{.Values.kafka.reportTopic}}\n    tcp.mock.port=10000\n    ## minio\n    minio.endpoint=http://{{.Values.minio.host}}:{{.Values.minio.port}}\n    minio.access-key={{.Values.minio.username}}\n    minio.secret-key={{.Values.minio.password}}\n    ## JMETER\n    jmeter.image={{ .Values.common.imagePrefix }}{{.Values.jmeter.image}}:{{.Values.jmeter.imageTag}}\n    jmeter.pod.threads.limit=500\n    ## K8S\n    k8s.node-controller-image={{ .Values.common.imagePrefix }}{{.Values.nodeController.image}}:{{.Values.common.imageTag}}\n    ## spring cloud\n    eureka.client.service-url.defaultZone=http://{{.Values.eureka.host}}:{{.Values.eureka.port}}/eureka/\n    logger.sql.level=info\napiTest:  # \u63a5\u53e3\u6d4b\u8bd5\u6a21\u5757,\u53ef\u4ee5\u4fee\u6539\u4e3afalse,\u542f\u52a8\u65f6\u4e0d\u518d\u5b89\u88c5\u63a5\u53e3\u6d4b\u8bd5\u6a21\u5757\n  enabled: true\n  image: api-test\n  replicas: 1\n\nperformanceTest: # \u6027\u80fd\u6d4b\u8bd5\u6a21\u5757,\u53ef\u4ee5\u4fee\u6539\u4e3afalse,\u542f\u52a8\u65f6\u4e0d\u518d\u5b89\u88c5\u6027\u80fd\u6d4b\u8bd5\u6a21\u5757\n  enabled: true\n  image: performance-test\n  replicas: 1\n\nsystemSetting: # \u7cfb\u7edf\u8bbe\u7f6e\u6a21\u5757,\u53ef\u4ee5\u4fee\u6539\u4e3afalse,\u542f\u52a8\u65f6\u4e0d\u518d\u5b89\u88c5\u7cfb\u7edf\u8bbe\u7f6e\u6a21\u5757\n  enabled: true\n  image: system-setting\n  replicas: 1\n\nprojectManagement: # \u9879\u76ee\u7ba1\u7406\u6a21\u5757,\u53ef\u4ee5\u4fee\u6539\u4e3afalse,\u542f\u52a8\u65f6\u4e0d\u518d\u5b89\u88c5\u9879\u76ee\u7ba1\u7406\u6a21\u5757\n  enabled: true\n  image: project-management\n  replicas: 1\n\nreportStat:  # \u62a5\u544a\u7ba1\u7406\u6a21\u5757,\u53ef\u4ee5\u4fee\u6539\u4e3afalse,\u542f\u52a8\u65f6\u4e0d\u518d\u5b89\u88c5\u62a5\u544a\u7ba1\u7406\u6a21\u5757\n  enabled: true\n  image: report-stat\n  replicas: 1\n\ntestTrack: # \u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757,\u53ef\u4ee5\u4fee\u6539\u4e3afalse,\u542f\u52a8\u65f6\u4e0d\u518d\u5b89\u88c5\u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757\n  enabled: true\n  image: test-track\n  replicas: 1\n\ngateway: # \u7f51\u5173,\u53ef\u4ee5\u4fee\u6539\u4e3afalse,\u542f\u52a8\u65f6\u4e0d\u518d\u5b89\u88c5\n  enabled: true\n  image: gateway\n  replicas: 1\n\neureka: # \u670d\u52a1\u6ce8\u518c\u4e2d\u5fc3,\u53ef\u4ee5\u4fee\u6539\u4e3afalse,\u542f\u52a8\u65f6\u4e0d\u518d\u5b89\u88c5\n  enabled: true\n  image: eureka\n  host: metersphere-eureka\n  port: 8761\n  replicas: 1\n\ndataStreaming: \n  enabled: true\n  image: data-streaming\n  replicas: 1\n  properties: |-\n    ## DATABASE\n    spring.datasource.url=jdbc:mysql://{{.Values.mysql.host}}:{{.Values.mysql.port}}/metersphere?autoReconnect=false&useUnicode=true&characterEncoding=UTF-8&characterSetResults=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true\n    spring.datasource.username={{.Values.mysql.username}}\n    spring.datasource.password={{.Values.mysql.password}}\n    ## KAFKA\n    kafka.partitions=1\n    kafka.replicas=1\n    kafka.topic={{.Values.kafka.metricTopic}}\n    kafka.bootstrap-servers={{.Values.kafka.host}}:{{.Values.kafka.port}}\n    kafka.log.topic={{.Values.kafka.logTopic}}\n    kafka.test.topic={{.Values.kafka.testTopic}}\n    kafka.report.topic={{.Values.kafka.reportTopic}}\n    jmeter.report.granularity=5000\n    ## minio\n    minio.endpoint=http://{{.Values.minio.host}}:{{.Values.minio.port}}\n    minio.access-key={{.Values.minio.username}}\n    minio.secret-key={{.Values.minio.password}}\nnodeController:\n  enabled: true\n  image: node-controller\n  replicas: 1\n  properties: |-\n    ## TBD\njmeter:\n  image: jmeter-master\n  imageTag: 5.4.3-ms5-jdk11\n\nlogPersistence:\n  enabled: true\n  accessModes: ReadWriteOnce\n  size: 10Gi\n\ndataPersistence:\n  enabled: true\n  accessModes: ReadWriteOnce\n  size: 10Gi\n\nmysql:  # \u5f15\u7528\u5916\u90e8\u6570\u636e\u5e93\u65f6\uff0c\u53ef\u4ee5\u4fee\u6539\u4e3afalse,\u542f\u52a8\u65f6\u4e0d\u518d\u5b89\u88c5mysql\n  enabled: true\n  image: mysql\n  imageTag: \"8.0.30\"\n  host: metersphere-mysql\n  port: 3306\n  username: root\n  password: Password123@mysql\n  persistence:\n    enabled: true\n    accessModes: ReadWriteOnce\n    size: 20Gi\nminio:\n  enabled: true\n  image: minio\n  imageTag: \"latest\"\n  username: admin\n  password: Password123@minio\n  host: metersphere-minio\n  port: 9000\n  persistence:\n    enabled: true\n    accessModes: ReadWriteOnce\n    size: 20Gi\nredis:   # \u5f15\u7528\u5916\u90e8redis\u65f6\uff0c\u53ef\u4ee5\u4fee\u6539\u4e3afalse,\u542f\u52a8\u65f6\u4e0d\u518d\u5b89\u88c5redis\n  enabled: true\n  image: redis\n  imageTag: \"6.2.6\"\n  password: Password123@redis\n  host: metersphere-redis\n  port: 6379\n  database: 1\n  persistence:\n    enabled: true\n    accessModes: ReadWriteOnce\n    size: 10Gi\nkafka:   # \u5f15\u7528\u5916\u90e8kafka\u65f6\uff0c\u53ef\u4ee5\u4fee\u6539\u4e3afalse,\u542f\u52a8\u65f6\u4e0d\u518d\u5b89\u88c5kafka\n  enabled: true\n  fullnameOverride: metersphere-kafka\n  host: metersphere-kafka\n  port: 9092\n  metricTopic: JMETER_METRICS\n  logTopic: JMETER_LOGS\n  testTopic: LOAD_TESTS\n  reportTopic: JMETER_REPORTS\n  persistence:\n    enabled: false\n  logPersistence:\n    enabled: false\n  logFlushIntervalMessages: _10000\n  logFlushIntervalMs: 1000\n  logRetentionBytes: _1073741824\n  logRetentionCheckIntervalMs: 300000\n  logRetentionHours: 168\n  logSegmentBytes: _1073741824\n  maxMessageBytes: _1000012\n  livenessProbe:\n    initialDelaySeconds: 20\n    periodSeconds: 15\n    timeoutSeconds: 15\n  readinessProbe:\n    initialDelaySeconds: 20\n    periodSeconds: 15\n    timeoutSeconds: 15\n  externalAccess:\n    enabled: true\n    service:\n      type: NodePort\n      useHostIPs: true\n    autoDiscovery:\n      enabled: true\n  serviceAccount:\n    create: true\n  rbac:\n    create: true\n  zookeeper:\n    enabled: true\n    logLevel: ERROR\n    persistence:\n      enabled: false\n    fullnameOverride: metersphere-zookeeper\n  extraEnvVars:\n    - name: FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS\n      value: \"true\"\nzookeeper:\n  enabled: true\n
    "},{"location":"installation/kubernetes_installation/#51-kafka","title":"5.1 \u5f15\u7528\u5916\u90e8 Kafka","text":"
    vim values.yaml\n\u5c06 values.yaml \u4e2d zookeeper.enabled \u548c kafka.enabled \u6539\u4e3a false\ncommon.kafka.host\u3001common.kafka.port \u6539\u4e3a\u5916\u90e8 kafka \u7684\u5730\u5740\u548c\u7aef\u53e3\n
    "},{"location":"installation/kubernetes_installation/#52-mysql","title":"5.2 \u5f15\u7528\u5916\u90e8 MySQL","text":"
    vim values.yaml\n\u5c06 values.yaml \u4e2d mysql.enabled \u6539\u4e3a false\ncommon.host.host\u3001common.host.port\u3001common.host.username\u3001common.host.password \u6539\u4e3a\u5916\u90e8 mysql \u7684\u5730\u5740\u3001\u7aef\u53e3\u53ca\u7528\u6237\u540d\u3001\u5bc6\u7801\n
    "},{"location":"installation/kubernetes_installation/#53-redis","title":"5.3 \u5f15\u7528\u5916\u90e8 Redis","text":"
    vim values.yaml\n\u5c06 values.yaml \u4e2d redis.enabled \u6539\u4e3a false\ncommon.redis.host\u3001common.redis.port\u3001common.redis.password \u6539\u4e3a\u5916\u90e8 redis \u7684\u5730\u5740\u3001\u7aef\u53e3\u548c\u5bc6\u7801\n
    "},{"location":"installation/kubernetes_installation/#54-valueyaml","title":"5.4 \u4f7f\u7528\u4fee\u6539\u540e\u7684 value.yaml \u90e8\u7f72","text":"
    helm -n ms install metersphere ./metersphere-2.3.0.tgz -f values.yaml\n
    "},{"location":"installation/kubernetes_installation/#55-node-port","title":"5.5 \u521b\u5efa Node Port \u8bbf\u95ee\u65b9\u5f0f","text":"

    \u4f7f\u7528\u547d\u4ee4 kubectl get svc -n ms \u53ef\u67e5\u770b metersphere-gateway \u6240\u5360\u7528\u7684\u7aef\u53e3\u53f7\u3002\u5982\u679c\u4e0d\u4f7f\u7528 ingress \u7684\u8bbf\u95ee\u65b9\u5f0f\uff0c\u53ef\u4ee5\u521b\u5efa\u4e00\u4e2a nodeport\u3002

    vi ms-gateway-nodeport.yaml\n\napiVersion: v1\nkind: Service\nmetadata:\n  name: metersphere-gateway-nodeport\n  namespace: ms\nspec:\n  ports:\n    - name: metersphere-gateway\n      protocol: TCP\n      port: 8000\n      targetPort: 8000\n      nodePort: 30801\n  type: NodePort\n  selector:\n    app: metersphere-gateway\n\nkubectl create -f ms-gateway-nodeport.yaml \n

    \u8bbf\u95ee MeterSphere \u9875\u9762: http://nodeIP:30801

    "},{"location":"installation/network_port/","title":"\u7f51\u7edc\u7aef\u53e3\u8981\u6c42","text":"

    MeterSphere \u4f5c\u4e3a\u4e00\u7ad9\u5f0f\u6301\u7eed\u6d4b\u8bd5\u5e73\u53f0\uff0c\u5176\u6b63\u5e38\u8fd0\u884c\u9700\u8981\u5f00\u653e\u5982\u4e0b\u7f51\u7edc\u7aef\u53e3\uff0c\u7ba1\u7406\u5458\u53ef\u6839\u636e\u5b9e\u9645\u73af\u5883\u4e2d MeterSphere \u7ec4\u4ef6\u90e8\u7f72\u7684\u65b9\u6848\uff0c\u5728\u7f51\u7edc\u4fa7\u548c\u4e3b\u673a\u4fa7\u5f00\u653e\u76f8\u5173\u7aef\u53e3\u3002

    \u7ec4\u4ef6 \u9ed8\u8ba4\u7aef\u53e3 \u8bf4\u660e GateWay 8081 API \u7f51\u5173\u9879\u76ee\uff0c\u6d4f\u89c8\u5668\u8bbf\u95ee\u7aef\u53e3 Node Controller 8082 \u4e3a\u63a5\u53e3\u6216\u8005\u6027\u80fd\u6d4b\u8bd5\u63d0\u4f9b\u72ec\u7acb\u8282\u70b9\u7c7b\u578b\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60 Prometheus 9090 \u6536\u96c6\u538b\u529b\u673a\u53ca\u88ab\u6d4b\u7cfb\u7edf\u7684\u76d1\u63a7\u6570\u636e Node Exporter 9100 \u7528\u4e8e\u91c7\u96c6 Node \u7684\u8fd0\u884c\u6307\u6807 Selenium Grid 4444 \u4e3a UI\u81ea\u52a8\u5316\u6d4b\u8bd5\u63d0\u4f9b\u8fd0\u884c\u73af\u5883\uff0c\u652f\u6301\u5206\u5e03\u5f0f\u62d3\u5c55 TCP Mock 10000-10010 TCP Mock \u5bf9\u5916\u63d0\u4f9b\u670d\u52a1\u9700\u8981\u5f00\u653e\u7684\u7aef\u53e3\u8303\u56f4 MySQL 3307 MeterSphere \u9ed8\u8ba4\u5b89\u88c5\u7684\u6570\u636e\u5e93\u5bf9\u5916\u63d0\u4f9b\u7684\u7aef\u53e3 Redis 6379 MeterSphere \u9ed8\u8ba4\u5b89\u88c5\u7684 Redis \u5bf9\u5916\u63d0\u4f9b\u7684\u7aef\u53e3 Minio 9000 MeterSphere \u9ed8\u8ba4\u5b89\u88c5\u7684\u5206\u5e03\u5f0f\u5bf9\u8c61\u5b58\u50a8\u5bf9\u5916\u63d0\u4f9b\u7684\u7aef\u53e3 Kafka 9092 MeterSphere \u9ed8\u8ba4\u5b89\u88c5\u7684\u6d88\u606f\u4e2d\u95f4\u4ef6\u5bf9\u5916\u63d0\u4f9b\u7684\u7aef\u53e3"},{"location":"installation/offline_installation/","title":"\u79bb\u7ebf\u5b89\u88c5","text":""},{"location":"installation/offline_installation/#1","title":"1 \u73af\u5883\u8981\u6c42","text":"

    \u90e8\u7f72\u670d\u52a1\u5668\u8981\u6c42

    • \u64cd\u4f5c\u7cfb\u7edf: CentOS 7.x / Redhat 7.x
    • CPU/\u5185\u5b58: \u6700\u4f4e\u8981\u6c42 4C8G\uff0c\u63a8\u8350 8C16G (2.3.0\u7248\u672c\u53ca\u5176\u4e4b\u540e\u7684\u7248\u672c\uff0c\u6700\u4f4e\u914d\u7f6e 8C16G)
    • \u78c1\u76d8\u7a7a\u95f4: 50G
    "},{"location":"installation/offline_installation/#2","title":"2 \u4e0b\u8f7d\u5b89\u88c5\u5305","text":"

    \u8bf7\u81ea\u884c\u4e0b\u8f7d MeterSphere \u6700\u65b0\u7248\u672c\u7684\u79bb\u7ebf\u5b89\u88c5\u5305\uff0c\u5e76\u590d\u5236\u5230\u76ee\u6807\u673a\u5668\u7684 /tmp \u76ee\u5f55\u4e0b\u3002 \u5b89\u88c5\u5305\u4e0b\u8f7d\u94fe\u63a5: https://community.fit2cloud.com/#/products/metersphere/downloads

    "},{"location":"installation/offline_installation/#3","title":"3 \u89e3\u538b\u5b89\u88c5\u5305","text":"

    \u4ee5 root \u7528\u6237 ssh \u767b\u5f55\u5230\u76ee\u6807\u673a\u5668\uff0c \u5e76\u6267\u884c\u5982\u4e0b\u547d\u4ee4\u3002

    cd /tmp\n# \u89e3\u538b\u5b89\u88c5\u5305\ntar zxvf metersphere-offline-installer-v2.3.0.tar.gz\n

    "},{"location":"installation/offline_installation/#4","title":"4 \u4fee\u6539\u5b89\u88c5\u914d\u7f6e","text":""},{"location":"installation/offline_installation/#41","title":"4.1 \u4fee\u6539\u914d\u7f6e","text":"

    \u5728\u5b89\u88c5\u5305\u89e3\u538b\u540e\u7684\u76ee\u5f55\uff0c\u7f16\u8f91\u4fee\u6539\u5b89\u88c5\u53c2\u6570\u3002

    cd metersphere-offline-installer-v2.3.0\nvi install.conf\n

    "},{"location":"installation/offline_installation/#42","title":"4.2 \u5b89\u88c5\u914d\u7f6e\u6587\u4ef6\u8bf4\u660e","text":"

    \u5b89\u88c5\u914d\u7f6e\u6587\u4ef6\u8bf4\u660e

    \u5982\u679c\u65e0\u7279\u6b8a\u9700\u6c42\u53ef\u4ee5\u4e0d\u8fdb\u884c\u4fee\u6539\u91c7\u7528\u9ed8\u8ba4\u53c2\u6570\u5b89\u88c5\uff08\u9996\u6b21\u5b89\u88c5\u53ef\u4fee\u6539\u914d\u7f6e install.conf \u6587\u4ef6\u4e2d\u76f8\u5173\u914d\u7f6e\uff0c\u4fee\u6539\u5b8c\u540e\u6267\u884c /bin/bash install.sh \u547d\u4ee4\u8fdb\u884c\u5b89\u88c5\uff0c\u5df2\u5b89\u88c5\u6210\u529f\u5982\u9700\u518d\u4fee\u6539\u914d\u7f6e\u53c2\u6570\uff0c\u9700\u8981\u5230 ${MS_BASE}/metersphere/.env \u91cc\u4fee\u6539\uff0c\u4fee\u6539\u5b8c\u540e\u6267\u884c msctl reload \u5373\u53ef\u91cd\u65b0\u52a0\u8f7d\u914d\u7f6e\u6587\u4ef6\uff09\u3002

    # \u57fa\u7840\u914d\u7f6e\n## \u5b89\u88c5\u8def\u5f84\uff0c MeterSphere \u914d\u7f6e\u53ca\u6570\u636e\u6587\u4ef6\u9ed8\u8ba4\u5c06\u5b89\u88c5\u5728 ${MS_BASE}/metersphere \u76ee\u5f55\u4e0b\nMS_BASE=/opt\n## MeterSphere \u4f7f\u7528\u7684 docker \u7f51\u7edc\u7f51\u6bb5\u4fe1\u606f\nMS_DOCKER_SUBNET=172.30.10.0/24\n## \u955c\u50cf\u524d\u7f00\uff0c MeterSphere \u76f8\u5173\u7ec4\u4ef6\u4f7f\u7528\u7684 Docker \u955c\u50cf\u524d\u7f00\uff0c \u4f8b\u5982 registry.cn-qingdao.aliyuncs.com/metersphere\nMS_IMAGE_PREFIX=registry.cn-qingdao.aliyuncs.com/metersphere\n## \u955c\u50cf\u6807\u7b7e\uff0c MeterSphere \u76f8\u5173\u7ec4\u4ef6\u4f7f\u7528\u7684 Docker \u955c\u50cf\u6807\u7b7e\nMS_IMAGE_TAG=v2.3.0\n## \u6027\u80fd\u6d4b\u8bd5\u4f7f\u7528\u7684 JMeter \u955c\u50cf\nMS_JMETER_IMAGE=${MS_IMAGE_PREFIX}/jmeter-master:5.5-ms2-jdk11\n## \u5b89\u88c5\u6a21\u5f0f allinone | server | node-controller | selenium-hub\uff0c \u5176\u4e2d selenium-hub \u548c node-controller \u53ef\u4ee5\u5355\u72ec\u5728\u670d\u52a1\u5668\u4e0a\u90e8\u7f72\u4f5c\u4e3a\u6267\u884c\u673a\u4f7f\u7528\nMS_INSTALL_MODE=allinone\n## MeterSphere \u4e3b\u7a0b\u5e8f\u7684 HTTP \u670d\u52a1\u76d1\u542c\u7aef\u53e3\nMS_SERVER_PORT=8081\n## MeterSphere Node-Controller \u7ec4\u4ef6\u7684 HTTP \u670d\u52a1\u76d1\u542c\u7aef\u53e3\nMS_NODE_CONTROLLER_PORT=8082\nMS_NODEEXPORTER_PORT=9100\n\n# \u6570\u636e\u5e93\u914d\u7f6e\n## \u662f\u5426\u4f7f\u7528\u5916\u90e8\u6570\u636e\u5e93\nMS_EXTERNAL_MYSQL=false\n## \u6570\u636e\u5e93\u5730\u5740\nMS_MYSQL_HOST=mysql\n## \u6570\u636e\u5e93\u7aef\u53e3\nMS_MYSQL_PORT=3306\n## \u6570\u636e\u5e93\u5e93\u540d\nMS_MYSQL_DB=metersphere\n## \u6570\u636e\u5e93\u7528\u6237\u540d\nMS_MYSQL_USER=root\n## \u6570\u636e\u5e93\u5bc6\u7801\nMS_MYSQL_PASSWORD=Password123@mysql\n\n# Prometheus \u914d\u7f6e\n## \u662f\u5426\u4f7f\u7528\u5916\u90e8Prometheus\nMS_EXTERNAL_PROM=false\nMS_PROMETHEUS_PORT=9090\n\n# Redis \u914d\u7f6e\n## \u662f\u5426\u4f7f\u7528\u5916\u90e8Redis\nMS_EXTERNAL_REDIS=false\n## Redis \u7aef\u53e3\nMS_REDIS_PORT=6379\n## Redis \u5bc6\u7801\nMS_REDIS_PASSWORD=Password123@redis\n## Redis\u5730\u5740\nMS_REDIS_HOST=$(hostname -I|cut -d\" \" -f 1)\n\n# Kafka \u914d\u7f6e\n## \u662f\u5426\u4f7f\u7528\u5916\u90e8 Kafka\nMS_EXTERNAL_KAFKA=false\n## Kafka \u5730\u5740\nMS_KAFKA_HOST=10.1.*.*\n## Kafka \u7aef\u53e3\nMS_KAFKA_PORT=9092\n## \u6027\u80fd\u6d4b\u8bd5\u7ed3\u679c\u6570\u636e\u4f7f\u7528\u7684 Kafka Topic\nMS_KAFKA_TOPIC=JMETER_METRICS\n## \u6027\u80fd\u6d4b\u8bd5\u65e5\u5fd7\u6570\u636e\u4f7f\u7528\u7684 Kafka Topic\nMS_KAFKA_LOG_TOPIC=JMETER_LOGS\n## \u6027\u80fd\u6d4b\u8bd5\u5b9a\u65f6\u4efb\u52a1\u901a\u77e5\u4f7f\u7528\u7684 Kafka Topic\nMS_KAFKA_TEST_TOPIC=LOAD_TESTS\n## \u91cd\u6784\u540e\u6027\u80fd\u6d4b\u8bd5\u7ed3\u679c\u6570\u636e\u4f7f\u7528\u7684 Kafka Topic\nMS_KAFKA_REPORT_TOPIC=JMETER_REPORTS\n\n# UI\u5bb9\u5668\u914d\u7f6e\n## \u662f\u5426\u542f\u52a8UI\u6a21\u5757\nMS_UI_ENABLED=false\n## \u662f\u5426\u542f\u52a8\u5de5\u4f5c\u53f0\u5bb9\u5668\nMS_WORKSTATION_ENABLED=false\n\n# minio \u914d\u7f6e\n## \u662f\u5426\u4f7f\u7528\u5916\u90e8minio\nMS_EXTERNAL_MINIO=false\n## minio \u5730\u5740\nMS_MINIO_ENDPOINT=http://minio:9000\n## minio access\nMS_MINIO_ACCESS_KEY=admin\n## minio \u5bc6\u7801\nMS_MINIO_SECRET_KEY=Password123@minio\n\n# \u4fee\u6539\u7ec4\u4ef6\u6700\u5927\u5185\u5b58\u9650\u5236\uff08v2.7\u4ee5\u4e0a\u53ef\u4ee5\u5728 /opt/metersphere/.env \u91cc\u4fee\u6539\u67d0\u5bb9\u5668\u670d\u52a1\u7684\u6700\u5927\u5185\u5b58\u9650\u5236\uff0c\u5728/opt/metersphere/ \u76ee\u5f55\u4e0b\u7684docker-compose\u5206\u522b\u5b9a\u4e49\u5404\u81ea\u670d\u52a1\u7684\u6700\u5927\u5c5e\u6027\u503c\uff0c\u5982 api-test \u7684\u5c5e\u6027\u5728 docker-compose-api-test.yml \u4e2d\u5b9a\u4e49\uff0c\u4e3a MS_API_MEM_LIMIT\uff09\nMS_API_MEM_LIMIT=1073741824\uff08\u9ed8\u8ba4\u4e3a 1g\uff09\n

    "},{"location":"installation/offline_installation/#43","title":"4.3 \u6570\u636e\u5e93\u914d\u7f6e\u6587\u4ef6\u8bf4\u660e","text":"

    \u6ce8\u610f

    MeterSphere \u4f7f\u2f64 MySQL 8.0 \u5bf9\u7cfb\u7edf\u6570\u636e\u8fdb\u2f8f\u5b58\u50a8\u3002\u540c\u65f6 MeterSphere \u5bf9\u6570\u636e\u5e93\u90e8\u5206\u914d\u7f6e\u9879\u6709\u8981\u6c42\uff0c\u8bf7\u53c2\u8003\u4e0b\u9644\u7684\u6570\u636e\u5e93\u914d\u7f6e\uff0c\u4fee\u6539\u73af\u5883\u4e2d\u7684\u6570\u636e\u5e93\u914d\u7f6e\u6587\u4ef6\u3002

    [mysqld]\ndatadir=/var/lib/mysql\n\ndefault-storage-engine=INNODB\ncharacter_set_server=utf8mb4\nlower_case_table_names=1\nperformance_schema=off\ntable_open_cache=128\ntransaction_isolation=READ-COMMITTED\nmax_connections=1000\nmax_connect_errors=6000\nmax_allowed_packet=64M\ninnodb_file_per_table=1\ninnodb_buffer_pool_size=512M\ninnodb_flush_method=O_DIRECT\ninnodb_lock_wait_timeout=1800\n\nserver-id=1\nlog-bin=mysql-bin\nexpire_logs_days = 2\nbinlog_format=mixed\n\ncharacter-set-client-handshake = FALSE\ncharacter-set-server=utf8mb4\ncollation-server=utf8mb4_general_ci\ninit_connect='SET default_collation_for_utf8mb4=utf8mb4_general_ci'\n\nsql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION\n\nskip-name-resolve\n\n[mysql]\ndefault-character-set=utf8mb4\n\n[mysql.server]\ndefault-character-set=utf8mb4\n

    \u8bf7\u53c2\u8003\u6587\u6863\u4e2d\u7684\u5efa\u5e93\u8bed\u53e5\u521b\u5efa MeterSphere \u4f7f\u7528\u7684\u6570\u636e\u5e93\uff0cmetersphere-server \u670d\u52a1\u542f\u52a8\u65f6\u4f1a\u81ea\u52a8\u5728\u914d\u7f6e\u7684\u5e93\u4e2d\u521b\u5efa\u6240\u9700\u7684\u8868\u7ed3\u6784\u53ca\u521d\u59cb\u5316\u6570\u636e\u3002

    CREATE DATABASE `metersphere` /*!40100 DEFAULT CHARACTER SET utf8mb4 */\n

    \u5b89\u88c5\u811a\u672c\u9ed8\u8ba4\u4f7f\u7528 /opt/metersphere \u76ee\u5f55\u4f5c\u4e3a\u5b89\u88c5\u76ee\u5f55\uff0cMeterSphere \u7684\u914d\u7f6e\u6587\u4ef6\u3001\u6570\u636e\u53ca\u65e5\u5fd7\u7b49\u5747\u5b58\u653e\u5728\u8be5\u5b89\u88c5\u76ee\u5f55\u3002

    "},{"location":"installation/offline_installation/#44","title":"4.4 \u5b89\u88c5\u76ee\u5f55\u7ed3\u6784\u8bf4\u660e","text":"

    \u5b89\u88c5\u76ee\u5f55\u7ed3\u6784\u8bf4\u660e

    /opt/metersphere/\n\u251c\u2500\u2500 bin                                         #-- \u5b89\u88c5\u8fc7\u7a0b\u4e2d\u9700\u8981\u52a0\u8f7d\u5230\u5bb9\u5668\u4e2d\u7684\u811a\u672c\n\u251c\u2500\u2500 compose_files                               #-- \u6839\u636e\u4e0d\u540c\u7684\u5b89\u88c5\u6a21\u5f0f\uff0c\u4fdd\u5b58\u9700\u8981\u4f7f\u7528\u5230\u7684 compose \u6587\u4ef6\u4fe1\u606f\n\u251c\u2500\u2500 conf                                        #-- MeterSphere \u5404\u7ec4\u4ef6\u53ca\u6570\u636e\u5e93\u7b49\u4e2d\u95f4\u4ef6\u7684\u914d\u7f6e\u6587\u4ef6\n\u251c\u2500\u2500 data                                        #-- MeterSphere \u5404\u7ec4\u4ef6\u53ca\u6570\u636e\u5e93\u7b49\u4e2d\u95f4\u4ef6\u7684\u6570\u636e\u6301\u4e45\u5316\u76ee\u5f55\n\u251c\u2500\u2500 docker-compose-gateway.yml                  #-- MeterSphere \u7684 API \u7f51\u5173\n\u251c\u2500\u2500 docker-compose-eureka.yml                   #-- MeterSphere \u7684\u670d\u52a1\u6ce8\u518c\u4e2d\u5fc3\n\u251c\u2500\u2500 docker-compose-base.yml                     #-- MeterSphere \u57fa\u7840 Docker Compose \u6587\u4ef6\uff0c\u5b9a\u4e49\u4e86\u7f51\u7edc\u7b49\u57fa\u7840\u4fe1\u606f \n\u251c\u2500\u2500 docker-compose-workstation.yml              #-- MeterSphere \u5de5\u4f5c\u53f0\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6 \n\u251c\u2500\u2500 docker-compose-test-track.yml               #-- MeterSphere \u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6 \n\u251c\u2500\u2500 docker-compose-api-test.yml                 #-- MeterSphere \u63a5\u53e3\u6d4b\u8bd5\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6 \n\u251c\u2500\u2500 docker-compose-ui-test.yml                  #-- MeterSphere UI \u6d4b\u8bd5\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6 \n\u251c\u2500\u2500 docker-compose-performance-test.yml         #-- MeterSphere \u6027\u80fd\u6d4b\u8bd5\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6  \n\u251c\u2500\u2500 docker-compose-report-stat.yml              #-- MeterSphere \u62a5\u8868\u7edf\u8ba1\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6  \n\u251c\u2500\u2500 docker-compose-project-management.yml       #-- MeterSphere \u9879\u76ee\u7ba1\u7406\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6  \n\u251c\u2500\u2500 docker-compose-system-setting.yml           #-- MeterSphere \u7cfb\u7edf\u8bbe\u7f6e\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6  \n\u251c\u2500\u2500 docker-compose-kafka.yml                    #-- MeterSphere \u81ea\u5e26\u7684 Kafka \u6240\u9700\u7684 Docker Compose \u6587\u4ef6\n\u251c\u2500\u2500 docker-compose-mysql.yml                    #-- MeterSphere \u81ea\u5e26\u7684 MySQL \u6240\u9700\u7684 Docker Compose \u6587\u4ef6\n\u251c\u2500\u2500 docker-compose-node-controller.yml          #-- MeterSphere Node-Controller \u7ec4\u4ef6\u6240\u9700\u7684 Docker Compose\u6587\u4ef6\n\u251c\u2500\u2500 docker-compose-redis.yml                    #-- MeterSphere Redis \u7ec4\u4ef6\u6240\u9700\u7684 Docker Compose\u6587\u4ef6\n\u251c\u2500\u2500 docker-compose-minio.yml                    #-- MeterSphere \u81ea\u5e26\u7684\u5206\u5e03\u5f0f\u5bf9\u8c61\u5b58\u50a8\u670d\u52a1\n\u251c\u2500\u2500 docker-compose-prometheus.yml               #-- MeterSphere Prometheus \u7ec4\u4ef6\u6240\u9700\u7684Docker Compose \u6587\u4ef6\n\u251c\u2500\u2500 install.conf -> /opt/metersphere/.env       #-- MeterSphere \u7684\u914d\u7f6e\u6587\u4ef6 /opt/metersphere/.env \u7684\u8f6f\u94fe\u63a5\n\u251c\u2500\u2500 logs                                        #-- MeterSphere \u5404\u7ec4\u4ef6\u7684\u65e5\u5fd7\u6587\u4ef6\u6301\u4e45\u5316\u76ee\u5f55\n\u2514\u2500\u2500 version                                     #-- \u5b89\u88c5\u5305\u5bf9\u5e94\u7684 MeterSphere \u7248\u672c\u4fe1\u606f\n
    "},{"location":"installation/offline_installation/#5","title":"5 \u6267\u884c\u5b89\u88c5\u811a\u672c","text":"
    # \u8fdb\u5165\u5b89\u88c5\u5305\u76ee\u5f55\ncd metersphere-offline-installer-v2.3.0\n# \u8fd0\u884c\u5b89\u88c5\u811a\u672c\n/bin/bash install.sh\n

    \u6267\u884c\u5b8c\u5b89\u88c5\u811a\u672c\u540e\uff0c\u4f1a\u5b89\u88c5\u955c\u50cf\uff0c\u7b49\u63d0\u793a\u5b89\u88c5\u5b8c\u6210\u540e\uff0c\u4f7f\u7528 msctl status \u67e5\u770b\u670d\u52a1\u5404\u4e2a\u7ec4\u4ef6\u72b6\u6001\u3002

    \u7b49\u5f85\u51e0\u5206\u949f\u540e\uff0c\u4f7f\u7528\u547d\u4ee4 msctl status \u68c0\u67e5\u670d\u52a1\u8fd0\u884c\u60c5\u51b5\uff0c\u82e5\u5404\u4e2a\u7ec4\u4ef6\u90fd\u662f healthy \u72b6\u6001\uff0c\u901a\u8fc7\u6d4f\u89c8\u5668\u8bbf\u95ee\u5982\u4e0b\u9875\u9762\u767b\u5f55 MeterSphere\u3002

    \u8bf7\u901a\u8fc7\u4ee5\u4e0b\u65b9\u5f0f\u8bbf\u95ee:\n\n URL: http://\u670d\u52a1\u5668IP:8081\n \u7528\u6237\u540d: admin\n \u521d\u59cb\u5bc6\u7801: metersphere\n
    \u4f01\u4e1a\u7528\u6237\u5347\u7ea7\u540e\u9700\u624b\u52a8\u8bbe\u7f6e ${MS_BASE}/metersphere/install.conf \u4e2d\u7684 MS_UI_ENABLED=true \u5e76\u6267\u884c msctl reload \u6765\u5f00\u542f UI \u529f\u80fd

    "},{"location":"installation/offline_installation/#6","title":"6 \u914d\u7f6e\u53cd\u5411\u4ee3\u7406","text":"

    \u6ce8\u610f

    \u5982\u679c\u4f7f\u7528\u4e86 Nginx\u3001HAProxy \u8fdb\u884c\u53cd\u5411\u4ee3\u7406\u914d\u7f6e\uff0c\u9700\u8981\u589e\u52a0\u5bf9 websocket \u7684\u652f\u6301\u3002\u4ee5 Nginx \u4e3a\u4f8b\uff0c\u53c2\u8003\u914d\u7f6e\u5982\u4e0b:

    server {\n    listen 80;\n    server_name demo.metersphere.com;\n    server_tokens off;\n    return 301 https://$host$request_uri;\n}\nserver {\n    listen 443 ssl;\n    # RSA certificate\n    ssl_certificate /etc/nginx/ssl/metersphere.com/fullchain.cer; # managed by Certbot\n    ssl_certificate_key /etc/nginx/ssl/metersphere.com/metersphere.com.key; # managed by Certbot\n    server_name  demo.metersphere.com;\n    proxy_connect_timeout       300;\n    proxy_send_timeout          300;\n    proxy_read_timeout          300;\n    send_timeout                300;\n    proxy_set_header Host $host;\n    proxy_set_header X-Forwarded-For $remote_addr;\n    proxy_set_header X-Forwarded-Host $server_name;\n    proxy_set_header X-Real-IP $remote_addr;\n    proxy_set_header X-Forwarded-Proto $scheme;\n    proxy_redirect http:// $scheme://;\n\n    location / {\n        proxy_pass http://ip:8081;\n        client_max_body_size 1000m;\n        #access_log off;\n\n        # \u914d\u7f6e websocket \u652f\u6301\n        proxy_http_version 1.1;\n        proxy_set_header Upgrade $http_upgrade;\n        proxy_set_header Connection \"upgrade\";\n    }\n}\n

    "},{"location":"installation/offline_installation_mac/","title":"MacOS \u5355\u673a\u90e8\u7f72","text":""},{"location":"installation/offline_installation_mac/#1","title":"1 \u73af\u5883\u8981\u6c42","text":"

    \u90e8\u7f72\u670d\u52a1\u5668\u8981\u6c42

    • \u64cd\u4f5c\u7cfb\u7edf: \u53ef\u8fd0\u884c Docker \u7684 Mac \u64cd\u4f5c\u7cfb\u7edf
    • CPU/\u5185\u5b58: \u6700\u4f4e\u8981\u6c42 4C8G\uff0c\u63a8\u8350 8C16G (2.3.0\u7248\u672c\u53ca\u5176\u4e4b\u540e\u7684\u7248\u672c\uff0c\u6700\u4f4e\u914d\u7f6e 8C16G)
    • \u78c1\u76d8\u7a7a\u95f4: 50G
    "},{"location":"installation/offline_installation_mac/#2","title":"2 \u5b89\u88c5\u90e8\u7f72","text":""},{"location":"installation/offline_installation_mac/#21-docker","title":"2.1 \u5b89\u88c5 Docker","text":"

    \u5728\u5e94\u7528\u5546\u5e97\u4e0b\u8f7d Docker \u8fdb\u884c\u5b89\u88c5\uff0c\u5b89\u88c5\u540e\u5e76\u542f\u52a8 Docker

    "},{"location":"installation/offline_installation_mac/#22-docker","title":"2.2 Docker \u8bbe\u7f6e","text":"

    \u8fdb\u884c Docker \u8bbe\u7f6e\uff0c\u9700\u8981\u6dfb\u52a0 /opt/metersphere \u8def\u5f84

    "},{"location":"installation/offline_installation_mac/#23-metersphere","title":"2.3 \u5b89\u88c5 MeterSphere","text":"

    \u4e0b\u8f7d\u5b89\u88c5\u5305\uff0c\u5b89\u88c5\u5305\u4e0b\u8f7d\u94fe\u63a5: https://community.fit2cloud.com/#/products/metersphere/downloads

    \u89e3\u538b\u5b89\u88c5\u5305

    \u8fdb\u5165\u89e3\u538b\u597d\u7684\u5b89\u88c5\u5305\u76ee\u5f55

    \u6267\u884c\u5b89\u88c5\u547d\u4ee4 sh install.sh\uff0c\u5b89\u88c5\u8fc7\u7a0b\u4e2d\u7684\u63d0\u793a\uff0c\u8f93\u5165 y

    \u5b89\u88c5\u5b8c\u6210\uff0c\u4f7f\u7528 docker ps \u67e5\u770b\u540e\u53f0\u670d\u52a1\u90fd\u4e3a healthy \u72b6\u6001\uff0c\u5219\u901a\u8fc7\u6d4f\u89c8\u5668\u8bbf\u95ee\u5982\u4e0b\u5730\u5740\u8bbf\u95ee MeterSphere

    \u5730\u5740: http://\u76ee\u6807\u670d\u52a1\u5668IP\u5730\u5740:\u670d\u52a1\u8fd0\u884c\u7aef\u53e3\n\u7528\u6237\u540d: admin\n\u5bc6\u7801: metersphere\n

    "},{"location":"installation/offline_installation_windows/","title":"Windows \u5355\u673a\u90e8\u7f72","text":""},{"location":"installation/offline_installation_windows/#1","title":"1 \u73af\u5883\u8981\u6c42","text":"

    \u5f97\u76ca\u4e8e Docker \u8de8\u5e73\u53f0\u5e94\u7528\uff0cMeterSphere \u7406\u8bba\u4e0a\u53ef\u4ee5\u90e8\u7f72\u5728\u4efb\u4f55\u53ef\u4ee5\u8fd0\u884c Docker \u7684\u5bbf\u4e3b\u673a\uff0c\u5305\u62ec Windows \u64cd\u4f5c\u7cfb\u7edf\u7684\u4e3b\u673a\u3002\u5c06\u4ee5 Windows 10 \u4e3a\u4f8b\uff0c\u4ecb\u7ecd\u5982\u4f55\u5728 Windows \u64cd\u4f5c\u7cfb\u7edf\u901a\u8fc7 WSL \u4e0a\u5b89\u88c5 MeterSphere\u3002

    \u90e8\u7f72\u670d\u52a1\u5668\u8981\u6c42\uff1a

    • \u64cd\u4f5c\u7cfb\u7edf: \u53ef\u8fd0\u884c Docker \u7684 Windows \u64cd\u4f5c\u7cfb\u7edf
    • CPU/\u5185\u5b58: \u6700\u4f4e\u8981\u6c42 4C8G\uff0c\u63a8\u8350 8C16G (2.3.0\u7248\u672c\u53ca\u5176\u4e4b\u540e\u7684\u7248\u672c\uff0c\u6700\u4f4e\u914d\u7f6e 8C16G)
    • \u78c1\u76d8\u7a7a\u95f4: 200G

    \u6ce8\u610f\uff1a

    • WSL \u9700\u8981\u652f\u6301\u5d4c\u5957\u865a\u62df\u5316\uff0c\u4e91\u865a\u62df\u673a(Windows)\u53ef\u80fd\u4e0d\u652f\u6301\u800c\u5bfc\u81f4\u65e0\u6cd5\u5b89\u88c5 MeterSphere
    "},{"location":"installation/offline_installation_windows/#2","title":"2 \u5b89\u88c5\u90e8\u7f72","text":""},{"location":"installation/offline_installation_windows/#21-wsl","title":"2.1 \u5b89\u88c5 WSL","text":"

    \u53c2\u8003\u5728 Windows 10 \u4e0a\u5b89\u88c5 WSL | Microsoft Docs\u8fdb\u884c Windows \u5bbf\u4e3b\u673a WSL \u7684\u5b89\u88c5\u548c\u914d\u7f6e\u3002

    \u4f7f\u7528\u7ba1\u7406\u5458\u8eab\u4efd\u8fd0\u884c\u4ee5\u4e0b\u547d\u4ee4\uff0c\u7136\u540e\u91cd\u542f\u64cd\u4f5c\u7cfb\u7edf\u3002

    dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart\ndism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart\n

    \u4e0b\u8f7d\u5e76\u5b89\u88c5 \u9002\u7528\u4e8e x64 \u8ba1\u7b97\u673a\u7684 WSL2 Linux \u5185\u6838\u66f4\u65b0\u5305

    \u4ee5\u7ba1\u7406\u5458\u8eab\u4efd\u6267\u884c\u4ee5\u4e0b\u547d\u4ee4\uff0c\u8bbe\u7f6e WSL \u9ed8\u8ba4\u7248\u672c\uff1a

    wsl --set-default-version 2\n

    "},{"location":"installation/offline_installation_windows/#22-ubuntu","title":"2.2 \u5b89\u88c5 Ubuntu","text":"

    \u5728 Windows 10 \u7684\u5e94\u7528\u5546\u5e97\u91cc\u641c\u7d22\"Ubuntu\"\u5e76\u5b89\u88c5\uff1a

    "},{"location":"installation/offline_installation_windows/#23-ubuntu-wsl","title":"2.3 \u68c0\u6d4b Ubuntu WSL \u7248\u672c","text":"

    \u4ee5\u7ba1\u7406\u5458\u8eab\u4efd\u6267\u884c\uff1a

    wsl.exe -l -v\n

    \u793a\u4f8b\u4e2d\u5b89\u88c5\u7684 Ubuntu Name \u4e3a \"Ubuntu\"\uff0c \u5982\u50cf\u4e0a\u56fe\u51fa\u73b0 Ubuntu \u7248\u672c\u4e3a 1\uff0c \u5219\u7ee7\u7eed\u6267\u884c\u547d\u4ee4\uff1a

    wsl.exe --set-version Ubuntu 2\n

    \u51fa\u73b0\u4e0b\u56fe\u7ed3\u679c\u5373\u4e3a\u6210\u529f\uff1a

    "},{"location":"installation/offline_installation_windows/#24-docker","title":"2.4 Docker \u5b89\u88c5\u4e0e\u914d\u7f6e","text":"

    \u4e0b\u8f7dDocker Desktop for Windows\uff0c\u53cc\u51fb Docker Desktop Installer.exe \u5b8c\u6210docker \u7684\u5b89\u88c5\u3002

    Docker Desktop \u5b89\u88c5\u5b8c\u6210\u540e\uff0c\u8fdb\u5165 Settings \u754c\u9762\uff0c\u9009\u62e9 Resources \u83dc\u5355\u4e0b\u7684 WSL INTEGRATION\uff0c\u6309\u4e0b\u56fe\u8bbe\u7f6e\u540e\uff0c\u70b9\u51fb\u53f3\u4e0b\u89d2\u7684Apply & Restart\u3002

    "},{"location":"installation/offline_installation_windows/#25-ubuntu","title":"2.5 \u542f\u52a8 Ubuntu","text":"

    \u5728\u5e94\u7528\u5546\u5e97\u91cc\uff0c\u9009\u62e9 Ubuntu\uff0c\u70b9\u51fb\"\u542f\u52a8\"\u6309\u94ae\u542f\u52a8 Ubuntu\uff0c\u5e76\u6267\u884c sudo su \u547d\u4ee4\u5207\u6362\u5230 root \u7528\u6237\uff1a

    `

    "},{"location":"installation/offline_installation_windows/#26-docker","title":"2.6 \u68c0\u67e5 Docker \u73af\u5883","text":"

    \u5728 Ubuntu \u547d\u4ee4\u884c\u4e2d\u6267\u884c\u547d\u4ee4docker version\uff0c\u5982\u80fd\u50cf\u4e0b\u56fe\u4e00\u6837\u6b63\u5e38\u663e\u793a docker \u7248\u672c\u4fe1\u606f\uff0c\u5219\u80fd\u6b63\u5e38\u6267\u884c MeterSphere \u540e\u7eed\u7684\u5b89\u88c5\u64cd\u4f5c\uff0c\u5982\u51fa\u73b0\u5f02\u5e38\uff0c\u5219\u9700\u8981\u6839\u636e\u63d0\u793a\u4fe1\u606f\u89e3\u51b3\u3002

    "},{"location":"installation/offline_installation_windows/#27","title":"2.7 \u4e0b\u8f7d\u5b89\u88c5\u5305","text":"

    \u5728 \u98de\u81f4\u4e91\u5f00\u6e90\u793e\u533a \u6216 MeterSphere Github Release \u4e0b\u8f7d MeterSphere \u6700\u65b0\u7248\u672c\u7684\u79bb\u7ebf\u5b89\u88c5\u5305\u3002

    "},{"location":"installation/offline_installation_windows/#28","title":"2.8 \u89e3\u538b\u5b89\u88c5\u5305","text":"

    \u5728 Ubuntu \u4e2d\uff0c\u4ee5 root \u7528\u6237\u6267\u884c\u5982\u4e0b\u547d\u4ee4\uff1a

    # \u5047\u8bbe\u5b89\u88c5\u5305\u5b58\u653e\u8def\u5f84\u4e3a c:\\metersphere-offline-installer-v2.10.0.tar.gz\ncd /mnt/c\n# \u89e3\u538b\u5b89\u88c5\u5305\ntar zxvf metersphere-offline-installer-v2.10.0.tar.gz\n

    "},{"location":"installation/offline_installation_windows/#29","title":"2.9 \u914d\u7f6e\u5b89\u88c5\u53c2\u6570\uff08\u53ef\u9009\uff09","text":"

    MeterSphere \u652f\u6301\u4ee5\u914d\u7f6e\u6587\u4ef6\u7684\u5f62\u5f0f\u6765\u8bbe\u7f6e\u5b89\u88c5\u53c2\u6570\uff0c\u5982\u5b89\u88c5\u76ee\u5f55\u3001\u670d\u52a1\u8fd0\u884c\u7aef\u53e3\u3001\u6570\u636e\u5e93\u914d\u7f6e\u53c2\u6570\u7b49\uff0c\u5b89\u88c5\u524d\u4fee\u6539\u5b89\u88c5\u5305\u4e2d\u7684 install.conf \u6587\u4ef6\u53ef\u5b8c\u6210\u914d\u7f6e\u3002\u5177\u4f53\u8bf4\u660e\u89c1\uff1a\u5b89\u88c5\u914d\u7f6e\u6587\u4ef6\u8bf4\u660e\u3002

    "},{"location":"installation/offline_installation_windows/#210","title":"2.10 \u6267\u884c\u5b89\u88c5\u811a\u672c","text":"
    # \u8fdb\u5165\u5b89\u88c5\u5305\u76ee\u5f55\ncd metersphere-offline-installer-v2.10.0\n# \u8fd0\u884c\u5b89\u88c5\u811a\u672c\n/bin/bash install.sh\n

    \u5b89\u88c5\u6210\u529f\u540e\uff0c\u4f7f\u7528 msctl status \u67e5\u770b\u540e\u53f0\u670d\u52a1\u72b6\u6001\uff0c\u5f85\u6240\u6709\u670d\u52a1\u8fd0\u884c\u72b6\u6001\u90fd\u4e3a healthy \u540e\uff0c\u5219\u901a\u8fc7\u6d4f\u89c8\u5668\u8bbf\u95ee MeterSphere\u3002

    \u5730\u5740: http://\u76ee\u6807\u670d\u52a1\u5668IP\u5730\u5740:\u670d\u52a1\u8fd0\u884c\u7aef\u53e3\n\u7528\u6237\u540d: admin\n\u5bc6\u7801: metersphere\n

    "},{"location":"installation/offline_upgrade/","title":"\u79bb\u7ebf\u5347\u7ea7","text":"

    \u6ce8\u610f

    \u5347\u7ea7\u524d\u4e00\u5b9a\u8981\u8fdb\u884c\u6570\u636e\u5e93\u5907\u4efd\uff0c\u8be6\u7ec6\u64cd\u4f5c\u8bf7\u53c2\u8003 MeterSphere \u6570\u636e\u5907\u4efd\u3002

    "},{"location":"installation/offline_upgrade/#1","title":"1 \u4e0b\u8f7d\u5e76\u89e3\u538b\u5b89\u88c5\u5305","text":"

    \u6309\u7167\u672c\u6587\u6863 \u79bb\u7ebf\u5b89\u88c5 \u6b65\u9aa4\uff0c \u4e0b\u8f7d\u65b0\u7248\u672c\u5b89\u88c5\u5305\u5e76\u4e0a\u4f20\u89e3\u538b\u540e, \u91cd\u65b0\u6267\u884c\u5b89\u88c5\u547d\u4ee4\u8fdb\u884c\u5347\u7ea7\u3002 \u3010\u6ce8\u610f\u3011\u5982\u679c\u5347\u7ea7\u7248\u672c\u8de8\u5ea6\u8f83\u5927\uff1a\u5982 V1.x \u5347\u7ea7\u81f3 V2.x \u6700\u65b0\u7248\u672c\uff0c\u7531\u4e8e\u8de8\u591a\u7248\u672c\u65b0\u589e\u529f\u80fd\u8f83\u591a\uff0c\u4e14 v2.8.1 \u4e4b\u540edocker \u4f7f\u7528\u7248\u672c\u5347\u7ea7\uff0c\u8bf7\u6309\u7167\u5347\u7ea7\u6307\u5357\u64cd\u4f5c\uff1a MeterSphere 1.20 LTS \u81f32.10 LTS \u5347\u7ea7\u6307\u5357\u3002\u5982\u679c\u5347\u7ea7\u7248\u672c\u8de8\u5ea6\u4e0d\u5927\uff0c\u5219\u6309\u7167\u4e0b\u9762\u8bf4\u660e\u5347\u7ea7\u5373\u53ef\u3002

    "},{"location":"installation/offline_upgrade/#2","title":"2 \u6267\u884c\u5b89\u88c5\u547d\u4ee4","text":"
    #\u5347\u7ea7\u524d\u505c\u6b62\u670d\u52a1\nmsctl stop\n\nMeterSphere \u5b89\u88c5\u5305\u4e0b\u8f7d\u94fe\u63a5: https://github.com/metersphere/metersphere/releases\n\n# \u4e0b\u8f7d\u5728\u7ebf\u5b89\u88c5\u5305\nwget https://github.com/metersphere/metersphere/releases/download/v2.x.y/metersphere-online-installer-v2.x.y.tar.gz\n\n# \u89e3\u538b\u5728\u7ebf\u5b89\u88c5\u5305\ntar -zxvf metersphere-online-installer-v2.x.y.tar.gz\n\n# \u8fdb\u5165\u79bb\u7ebf\u90e8\u7f72\u5305\u89e3\u538b\u7f29\u76ee\u5f55\ncd metersphere-offline-installer-v2.x.y\n\n# \u8fd0\u884c\u5b89\u88c5\u811a\u672c\n/bin/bash install.sh\n\n# \u67e5\u770b MeterSphere \u72b6\u6001\nmsctl status\n
    "},{"location":"installation/online_installation/","title":"\u5728\u7ebf\u5b89\u88c5","text":""},{"location":"installation/online_installation/#1","title":"1 \u73af\u5883\u8981\u6c42","text":"

    \u90e8\u7f72\u670d\u52a1\u5668\u8981\u6c42

    • \u64cd\u4f5c\u7cfb\u7edf: CentOS 7.x / Redhat 7.x
    • CPU/\u5185\u5b58: \u6700\u4f4e\u8981\u6c42 4C8G\uff0c\u63a8\u8350 8C16G (2.3.0\u7248\u672c\u53ca\u5176\u4e4b\u540e\u7684\u7248\u672c\uff0c\u6700\u4f4e\u914d\u7f6e 8C16G)
    • \u78c1\u76d8\u7a7a\u95f4: 50G
    • \u7f51\u7edc\u8981\u6c42\uff1a\u53ef\u8bbf\u95ee\u4e92\u8054\u7f51
    "},{"location":"installation/online_installation/#2","title":"2 \u4e00\u952e\u5b89\u88c5","text":"

    \u5728\u670d\u52a1\u5668\u4e0a\u4ee5 root \u7528\u6237\u6267\u884c\u5982\u4e0b\u547d\u4ee4\u4e00\u952e\u5b89\u88c5 MeterSphere\u3002

    curl -sSL https://resource.fit2cloud.com/metersphere/metersphere/releases/latest/download/quick_start.sh | bash\n

    \u5b89\u88c5\u6210\u529f\u540e\uff0c\u901a\u8fc7\u6d4f\u89c8\u5668\u8bbf\u95ee\u5982\u4e0b\u9875\u9762\u767b\u5f55 MeterSphere\u3002

    \u5730\u5740: http://\u76ee\u6807\u670d\u52a1\u5668IP\u5730\u5740:8081\n\u7528\u6237\u540d: admin\n\u5bc6\u7801: metersphere\n

    \u5b89\u88c5\u811a\u672c\u9ed8\u8ba4\u4f7f\u7528 /opt/metersphere \u76ee\u5f55\u4f5c\u4e3a\u5b89\u88c5\u76ee\u5f55\uff0cMeterSphere \u7684\u914d\u7f6e\u6587\u4ef6\u3001\u6570\u636e\u53ca\u65e5\u5fd7\u7b49\u5747\u5b58\u653e\u5728\u8be5\u5b89\u88c5\u76ee\u5f55\u3002

    \u5b89\u88c5\u76ee\u5f55\u76ee\u5f55\u7ed3\u6784\u8bf4\u660e

    /opt/metersphere/\n\u251c\u2500\u2500 bin                                         #-- \u5b89\u88c5\u8fc7\u7a0b\u4e2d\u9700\u8981\u52a0\u8f7d\u5230\u5bb9\u5668\u4e2d\u7684\u811a\u672c\n\u251c\u2500\u2500 compose_files                               #-- \u6839\u636e\u4e0d\u540c\u7684\u5b89\u88c5\u6a21\u5f0f\uff0c\u4fdd\u5b58\u9700\u8981\u4f7f\u7528\u5230\u7684 compose \u6587\u4ef6\u4fe1\u606f\n\u251c\u2500\u2500 conf                                        #-- MeterSphere \u5404\u7ec4\u4ef6\u53ca\u6570\u636e\u5e93\u7b49\u4e2d\u95f4\u4ef6\u7684\u914d\u7f6e\u6587\u4ef6\n\u251c\u2500\u2500 data                                        #-- MeterSphere \u5404\u7ec4\u4ef6\u53ca\u6570\u636e\u5e93\u7b49\u4e2d\u95f4\u4ef6\u7684\u6570\u636e\u6301\u4e45\u5316\u76ee\u5f55\n\u251c\u2500\u2500 docker-compose-gateway.yml                  #-- MeterSphere \u7684 API \u7f51\u5173\n\u251c\u2500\u2500 docker-compose-eureka.yml                   #-- MeterSphere \u7684\u670d\u52a1\u6ce8\u518c\u4e2d\u5fc3\n\u251c\u2500\u2500 docker-compose-base.yml                     #-- MeterSphere \u57fa\u7840 Docker Compose \u6587\u4ef6\uff0c\u5b9a\u4e49\u4e86\u7f51\u7edc\u7b49\u57fa\u7840\u4fe1\u606f \n\u251c\u2500\u2500 docker-compose-workstation.yml              #-- MeterSphere \u5de5\u4f5c\u53f0\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6 \n\u251c\u2500\u2500 docker-compose-test-track.yml               #-- MeterSphere \u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6 \n\u251c\u2500\u2500 docker-compose-api-test.yml                 #-- MeterSphere \u63a5\u53e3\u6d4b\u8bd5\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6 \n\u251c\u2500\u2500 docker-compose-ui-test.yml                  #-- MeterSphere UI \u6d4b\u8bd5\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6 \n\u251c\u2500\u2500 docker-compose-performance-test.yml         #-- MeterSphere \u6027\u80fd\u6d4b\u8bd5\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6  \n\u251c\u2500\u2500 docker-compose-report-stat.yml              #-- MeterSphere \u62a5\u8868\u7edf\u8ba1\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6  \n\u251c\u2500\u2500 docker-compose-project-management.yml       #-- MeterSphere \u9879\u76ee\u7ba1\u7406\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6  \n\u251c\u2500\u2500 docker-compose-system-setting.yml           #-- MeterSphere \u7cfb\u7edf\u8bbe\u7f6e\u6a21\u5757\u7684 Docker Compose \u6587\u4ef6  \n\u251c\u2500\u2500 docker-compose-kafka.yml                    #-- MeterSphere \u81ea\u5e26\u7684 Kafka \u6240\u9700\u7684 Docker Compose \u6587\u4ef6\n\u251c\u2500\u2500 docker-compose-mysql.yml                    #-- MeterSphere \u81ea\u5e26\u7684 MySQL \u6240\u9700\u7684 Docker Compose \u6587\u4ef6\n\u251c\u2500\u2500 docker-compose-node-controller.yml          #-- MeterSphere Node-Controller \u7ec4\u4ef6\u6240\u9700\u7684 Docker Compose\u6587\u4ef6\n\u251c\u2500\u2500 docker-compose-redis.yml                    #-- MeterSphere Redis \u7ec4\u4ef6\u6240\u9700\u7684 Docker Compose\u6587\u4ef6\n\u251c\u2500\u2500 docker-compose-minio.yml                    #-- MeterSphere \u81ea\u5e26\u7684\u5206\u5e03\u5f0f\u5bf9\u8c61\u5b58\u50a8\u670d\u52a1\n\u251c\u2500\u2500 docker-compose-prometheus.yml               #-- MeterSphere Prometheus \u7ec4\u4ef6\u6240\u9700\u7684Docker Compose \u6587\u4ef6\n\u251c\u2500\u2500 install.conf -> /opt/metersphere/.env       #-- MeterSphere \u7684\u914d\u7f6e\u6587\u4ef6 /opt/metersphere/.env \u7684\u8f6f\u94fe\u63a5\n\u251c\u2500\u2500 logs                                        #-- MeterSphere \u5404\u7ec4\u4ef6\u7684\u65e5\u5fd7\u6587\u4ef6\u6301\u4e45\u5316\u76ee\u5f55\n\u2514\u2500\u2500 version                                     #-- \u5b89\u88c5\u5305\u5bf9\u5e94\u7684 MeterSphere \u7248\u672c\u4fe1\u606f\n
    "},{"location":"installation/online_installation/#3","title":"3 \u624b\u52a8\u5b89\u88c5","text":""},{"location":"installation/online_installation/#31","title":"3.1 \u624b\u52a8\u5b89\u88c5","text":"

    MeterSphere \u5b89\u88c5\u5305\u4e0b\u8f7d\u94fe\u63a5: https://github.com/metersphere/metersphere/releases

    # \u4e0b\u8f7d\u5728\u7ebf\u5b89\u88c5\u5305\nwget https://github.com/metersphere/metersphere/releases/download/v2.x.y/metersphere-online-installer-v2.x.y.tar.gz\n\n# \u89e3\u538b\u5728\u7ebf\u5b89\u88c5\u5305\ntar -zxvf metersphere-online-installer-v2.x.y.tar.gz\n\n# \u8fdb\u5165\u89e3\u538b\u76ee\u5f55\ncd metersphere-online-installer-v2.x.y\n\n# \u914d\u7f6e\u5b89\u88c5\u53c2\u6570\uff0c\u53c2\u6570\u8bf4\u660e\u89c1\u4e0b\u6587\n# vi install.conf\n\n# \u6267\u884cinstall.sh\u5b89\u88c5\u811a\u672c\n/bin/bash install.sh\n

    \u6267\u884c\u5b8c\u5b89\u88c5\u811a\u672c\u540e\uff0c\u4f1a\u5728\u7ebf\u62c9\u53d6\u955c\u50cf\uff0c\u7b49\u63d0\u793a\u5b89\u88c5\u5b8c\u6210\u540e\uff0c\u4f7f\u7528 msctl status \u67e5\u770b\u670d\u52a1\u5404\u4e2a\u7ec4\u4ef6\u72b6\u6001

    \u7b49\u5f85\u51e0\u5206\u949f\u540e\uff0c\u4f7f\u7528\u547d\u4ee4 msctl status \u68c0\u67e5\u670d\u52a1\u8fd0\u884c\u60c5\u51b5\uff0c\u82e5\u5404\u4e2a\u7ec4\u4ef6\u90fd\u662f healthy \u72b6\u6001\uff0c\u901a\u8fc7\u6d4f\u89c8\u5668\u8bbf\u95ee\u5982\u4e0b\u9875\u9762\u767b\u5f55 MeterSphere\u3002

     \u8bf7\u901a\u8fc7\u4ee5\u4e0b\u65b9\u5f0f\u8bbf\u95ee:\n\n URL: http://\u670d\u52a1\u5668IP:8081\n \u7528\u6237\u540d: admin\n \u521d\u59cb\u5bc6\u7801: metersphere\n

    "},{"location":"installation/online_installation/#32","title":"3.2 \u5b89\u88c5\u914d\u7f6e\u6587\u4ef6\u8bf4\u660e","text":"

    \u5b89\u88c5\u914d\u7f6e\u6587\u4ef6\u8bf4\u660e

    \u5982\u679c\u65e0\u7279\u6b8a\u9700\u6c42\u53ef\u4ee5\u4e0d\u8fdb\u884c\u4fee\u6539\u91c7\u7528\u9ed8\u8ba4\u53c2\u6570\u5b89\u88c5\uff08\u9996\u6b21\u5b89\u88c5\u53ef\u4fee\u6539\u914d\u7f6e install.conf \u6587\u4ef6\u4e2d\u76f8\u5173\u914d\u7f6e\uff0c\u4fee\u6539\u5b8c\u540e\u6267\u884c /bin/bash install.sh \u547d\u4ee4\u8fdb\u884c\u5b89\u88c5\uff0c\u5df2\u5b89\u88c5\u6210\u529f\u5982\u9700\u518d\u4fee\u6539\u914d\u7f6e\u53c2\u6570\uff0c\u9700\u8981\u5230 ${MS_BASE}/metersphere/.env \u91cc\u4fee\u6539\uff0c\u4fee\u6539\u5b8c\u540e\u6267\u884c msctl reload \u5373\u53ef\u91cd\u65b0\u52a0\u8f7d\u914d\u7f6e\u6587\u4ef6\uff09\u3002

    # \u57fa\u7840\u914d\u7f6e\n## \u5b89\u88c5\u8def\u5f84\uff0c MeterSphere \u914d\u7f6e\u53ca\u6570\u636e\u6587\u4ef6\u9ed8\u8ba4\u5c06\u5b89\u88c5\u5728 ${MS_BASE}/metersphere \u76ee\u5f55\u4e0b\nMS_BASE=/opt\n## MeterSphere \u4f7f\u7528\u7684 docker \u7f51\u7edc\u7f51\u6bb5\u4fe1\u606f\nMS_DOCKER_SUBNET=172.30.10.0/24\n## \u955c\u50cf\u524d\u7f00\uff0c MeterSphere \u76f8\u5173\u7ec4\u4ef6\u4f7f\u7528\u7684 Docker \u955c\u50cf\u524d\u7f00\uff0c \u4f8b\u5982 registry.cn-qingdao.aliyuncs.com/metersphere\nMS_IMAGE_PREFIX=registry.cn-qingdao.aliyuncs.com/metersphere\n## \u955c\u50cf\u6807\u7b7e\uff0c MeterSphere \u76f8\u5173\u7ec4\u4ef6\u4f7f\u7528\u7684 Docker \u955c\u50cf\u6807\u7b7e\nMS_IMAGE_TAG=v2.3.0\n## \u6027\u80fd\u6d4b\u8bd5\u4f7f\u7528\u7684 JMeter \u955c\u50cf\nMS_JMETER_IMAGE=${MS_IMAGE_PREFIX}/jmeter-master:5.5-ms2-jdk11\n## \u5b89\u88c5\u6a21\u5f0f allinone | server | node-controller | selenium-hub\uff0c \u5176\u4e2d selenium-hub \u548c node-controller \u53ef\u4ee5\u5355\u72ec\u5728\u670d\u52a1\u5668\u4e0a\u90e8\u7f72\u4f5c\u4e3a\u6267\u884c\u673a\u4f7f\u7528\nMS_INSTALL_MODE=allinone\n## MeterSphere \u4e3b\u7a0b\u5e8f\u7684 HTTP \u670d\u52a1\u76d1\u542c\u7aef\u53e3\nMS_SERVER_PORT=8081\n## MeterSphere Node-Controller \u7ec4\u4ef6\u7684 HTTP \u670d\u52a1\u76d1\u542c\u7aef\u53e3\nMS_NODE_CONTROLLER_PORT=8082\nMS_NODEEXPORTER_PORT=9100\n\n# \u6570\u636e\u5e93\u914d\u7f6e\n## \u662f\u5426\u4f7f\u7528\u5916\u90e8\u6570\u636e\u5e93\nMS_EXTERNAL_MYSQL=false\n## \u6570\u636e\u5e93\u5730\u5740\nMS_MYSQL_HOST=mysql\n## \u6570\u636e\u5e93\u7aef\u53e3\nMS_MYSQL_PORT=3306\n## \u6570\u636e\u5e93\u5e93\u540d\nMS_MYSQL_DB=metersphere\n## \u6570\u636e\u5e93\u7528\u6237\u540d\nMS_MYSQL_USER=root\n## \u6570\u636e\u5e93\u5bc6\u7801\nMS_MYSQL_PASSWORD=Password123@mysql\n\n# Prometheus \u914d\u7f6e\n## \u662f\u5426\u4f7f\u7528\u5916\u90e8Prometheus\nMS_EXTERNAL_PROM=false\nMS_PROMETHEUS_PORT=9090\n\n# Redis \u914d\u7f6e\n## \u662f\u5426\u4f7f\u7528\u5916\u90e8Redis\nMS_EXTERNAL_REDIS=false\n## Redis \u7aef\u53e3\nMS_REDIS_PORT=6379\n## Redis \u5bc6\u7801\nMS_REDIS_PASSWORD=Password123@redis\n## Redis\u5730\u5740\nMS_REDIS_HOST=$(hostname -I|cut -d\" \" -f 1)\n\n# Kafka \u914d\u7f6e\n## \u662f\u5426\u4f7f\u7528\u5916\u90e8 Kafka\nMS_EXTERNAL_KAFKA=false\n## Kafka \u5730\u5740\nMS_KAFKA_HOST=10.1.*.*\n## Kafka \u7aef\u53e3\nMS_KAFKA_PORT=9092\n## \u6027\u80fd\u6d4b\u8bd5\u7ed3\u679c\u6570\u636e\u4f7f\u7528\u7684 Kafka Topic\nMS_KAFKA_TOPIC=JMETER_METRICS\n## \u6027\u80fd\u6d4b\u8bd5\u65e5\u5fd7\u6570\u636e\u4f7f\u7528\u7684 Kafka Topic\nMS_KAFKA_LOG_TOPIC=JMETER_LOGS\n## \u6027\u80fd\u6d4b\u8bd5\u5b9a\u65f6\u4efb\u52a1\u901a\u77e5\u4f7f\u7528\u7684 Kafka Topic\nMS_KAFKA_TEST_TOPIC=LOAD_TESTS\n## \u91cd\u6784\u540e\u6027\u80fd\u6d4b\u8bd5\u7ed3\u679c\u6570\u636e\u4f7f\u7528\u7684 Kafka Topic\nMS_KAFKA_REPORT_TOPIC=JMETER_REPORTS\n\n# UI\u5bb9\u5668\u914d\u7f6e\n## \u662f\u5426\u542f\u52a8UI\u6a21\u5757\nMS_UI_ENABLED=false\n## \u662f\u5426\u542f\u52a8\u5de5\u4f5c\u53f0\u5bb9\u5668\nMS_WORKSTATION_ENABLED=false\n\n# minio \u914d\u7f6e\n## \u662f\u5426\u4f7f\u7528\u5916\u90e8minio\nMS_EXTERNAL_MINIO=false\n## minio \u5730\u5740\nMS_MINIO_ENDPOINT=http://minio:9000\n## minio access\nMS_MINIO_ACCESS_KEY=admin\n## minio \u5bc6\u7801\nMS_MINIO_SECRET_KEY=Password123@minio\n\n# \u4fee\u6539\u7ec4\u4ef6\u6700\u5927\u5185\u5b58\u9650\u5236\uff08v2.7\u4ee5\u4e0a\u53ef\u4ee5\u5728 /opt/metersphere/.env \u91cc\u4fee\u6539\u67d0\u5bb9\u5668\u670d\u52a1\u7684\u6700\u5927\u5185\u5b58\u9650\u5236\uff0c\u5728/opt/metersphere/ \u76ee\u5f55\u4e0b\u7684docker-compose\u5206\u522b\u5b9a\u4e49\u5404\u81ea\u670d\u52a1\u7684\u6700\u5927\u5c5e\u6027\u503c\uff0c\u5982 api-test \u7684\u5c5e\u6027\u5728 docker-compose-api-test.yml \u4e2d\u5b9a\u4e49\uff0c\u4e3a MS_API_MEM_LIMIT\uff09\nMS_API_MEM_LIMIT=1073741824\uff08\u9ed8\u8ba4\u4e3a 1g\uff09\n

    "},{"location":"installation/online_installation/#33","title":"3.3 \u6570\u636e\u5e93\u914d\u7f6e\u6587\u4ef6\u8bf4\u660e","text":"

    \u6ce8\u610f

    MeterSphere \u4f7f\u2f64 MySQL 8.0 \u5bf9\u7cfb\u7edf\u6570\u636e\u8fdb\u2f8f\u5b58\u50a8\u3002\u540c\u65f6 MeterSphere \u5bf9\u6570\u636e\u5e93\u90e8\u5206\u914d\u7f6e\u9879\u6709\u8981\u6c42\uff0c\u8bf7\u53c2\u8003\u4e0b\u9644\u7684\u6570\u636e\u5e93\u914d\u7f6e\uff0c\u4fee\u6539\u73af\u5883\u4e2d\u7684\u6570\u636e\u5e93\u914d\u7f6e\u6587\u4ef6\u3002

    [mysqld]\ndatadir=/var/lib/mysql\n\ndefault-storage-engine=INNODB\ncharacter_set_server=utf8mb4\nlower_case_table_names=1\nperformance_schema=off\ntable_open_cache=128\ntransaction_isolation=READ-COMMITTED\nmax_connections=1000\nmax_connect_errors=6000\nmax_allowed_packet=64M\ninnodb_file_per_table=1\ninnodb_buffer_pool_size=512M\ninnodb_flush_method=O_DIRECT\ninnodb_lock_wait_timeout=1800\n\nserver-id=1\nlog-bin=mysql-bin\nexpire_logs_days = 2\nbinlog_format=mixed\n\ncharacter-set-client-handshake = FALSE\ncharacter-set-server=utf8mb4\ncollation-server=utf8mb4_general_ci\ninit_connect='SET default_collation_for_utf8mb4=utf8mb4_general_ci'\n\nsql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION\n\nskip-name-resolve\n\n[mysql]\ndefault-character-set=utf8mb4\n\n[mysql.server]\ndefault-character-set=utf8mb4\n

    \u8bf7\u53c2\u8003\u6587\u6863\u4e2d\u7684\u5efa\u5e93\u8bed\u53e5\u521b\u5efa MeterSphere \u4f7f\u7528\u7684\u6570\u636e\u5e93\uff0cmetersphere-server \u670d\u52a1\u542f\u52a8\u65f6\u4f1a\u81ea\u52a8\u5728\u914d\u7f6e\u7684\u5e93\u4e2d\u521b\u5efa\u6240\u9700\u7684\u8868\u7ed3\u6784\u53ca\u521d\u59cb\u5316\u6570\u636e\u3002

    CREATE DATABASE `metersphere` /*!40100 DEFAULT CHARACTER SET utf8mb4 */\n

    "},{"location":"installation/online_installation/#4","title":"4 \u914d\u7f6e\u53cd\u5411\u4ee3\u7406","text":"

    \u5982\u679c\u4f7f\u7528\u4e86 Nginx\u3001HAProxy \u8fdb\u884c\u53cd\u5411\u4ee3\u7406\u914d\u7f6e\uff0c\u9700\u8981\u589e\u52a0\u5bf9 websocket \u7684\u652f\u6301\u3002\u4ee5 Nginx \u4e3a\u4f8b\uff0c\u53c2\u8003\u914d\u7f6e\u5982\u4e0b:

    server {\n    listen 80;\n    server_name demo.metersphere.com;\n    server_tokens off;\n    return 301 https://$host$request_uri;\n}\nserver {\n    listen 443 ssl;\n    # RSA certificate\n    ssl_certificate /etc/nginx/ssl/metersphere.com/fullchain.cer; # managed by Certbot\n    ssl_certificate_key /etc/nginx/ssl/metersphere.com/metersphere.com.key; # managed by Certbot\n    server_name  demo.metersphere.com;\n    proxy_connect_timeout       300;\n    proxy_send_timeout          300;\n    proxy_read_timeout          300;\n    send_timeout                300;\n    proxy_set_header Host $host;\n    proxy_set_header X-Forwarded-For $remote_addr;\n    proxy_set_header X-Forwarded-Host $server_name;\n    proxy_set_header X-Real-IP $remote_addr;\n    proxy_set_header X-Forwarded-Proto $scheme;\n    proxy_redirect http:// $scheme://;\n\n    location / {\n        proxy_pass http://ip:8081;\n        client_max_body_size 1000m;\n        #access_log off;\n\n        #\u914d\u7f6e websocket \u652f\u6301\n        proxy_http_version 1.1;\n        proxy_set_header Upgrade $http_upgrade;\n        proxy_set_header Connection \"upgrade\";\n    }\n}\n

    "},{"location":"installation/online_upgrade/","title":"\u5728\u7ebf\u5347\u7ea7","text":"

    \u5347\u7ea7\u524d\u4e00\u5b9a\u8981\u8fdb\u884c\u6570\u636e\u5e93\u5907\u4efd\uff0c\u8bf7\u53c2\u8003 MeterSphere \u6570\u636e\u5907\u4efd\u3002 - \u5982\u679c MeterSphere \u670d\u52a1\u5668\u53ef\u4ee5\u8bbf\u95ee\u4e92\u8054\u7f51\uff0c\u4e14\u5728\u7ebf\u5347\u7ea7\u7248\u672c\u8de8\u5ea6\u4e0d\u5927\uff0c\u53ef\u5728\u7ebf\u5347\u7ea7\u5230\u6700\u65b0\u6216\u6307\u5b9a\u7248\u672c\u3002 - \u5982\u679c\u5347\u7ea7\u7248\u672c\u8de8\u5ea6\u8f83\u5927\uff0c\u5982 V1.x \u5347\u7ea7\u81f3 V2.x \u7248\u672c\uff0c\u7531\u4e8e\u7248\u672c\u65b0\u589e\u53d8\u66f4\u529f\u80fd\u8f83\u591a\uff0c\u4e14 v2.8.1 \u4e4b\u540edocker \u4f7f\u7528\u7248\u672c\u5347\u7ea7\uff0c\u907f\u514d\u7f51\u7edc\u56e0\u7d20\u5f71\u54cd\u5efa\u8bae\u91c7\u7528\u79bb\u7ebf\u5347\u7ea7\u65b9\u5f0f\u3002\u8be6\u7ec6\u6b65\u9aa4\u53ef\u53c2\u8003\uff1a MeterSphere 1.20 LTS \u81f32.10 LTS \u5347\u7ea7\u6307\u5357

    "},{"location":"installation/online_upgrade/#1","title":"1 \u4e00\u952e\u5347\u7ea7\u81f3\u6700\u65b0\u7248\u672c","text":"
    #\u5347\u7ea7\u524d\u505c\u6b62\u670d\u52a1\nmsctl stop\n\n# \u5347\u7ea7\u81f3\u6700\u65b0\u7248\u672c\nmsctl upgrade\n\n# \u67e5\u770b MeterSphere \u72b6\u6001\nmsctl status\n
    "},{"location":"installation/online_upgrade/#2","title":"2 \u4e00\u952e\u5347\u7ea7\u81f3\u6307\u5b9a\u7248\u672c","text":"
    #\u5347\u7ea7\u524d\u505c\u6b62\u670d\u52a1\nmsctl stop\n\n# \u5347\u7ea7\u81f3\u6307\u5b9a\u7248\u672c\nmsctl upgrade v2.x.y\n\n# \u67e5\u770b MeterSphere \u72b6\u6001\nmsctl status\n
    "},{"location":"installation/pre_work/","title":"\u6574\u4f53\u90e8\u7f72\u89c4\u5212","text":"

    MeterSphere \u5927\u89c4\u6a21\u7684\u6027\u80fd\u538b\u6d4b\u4e3b\u8981\u53d6\u51b3\u4e8e\u4e09\u4e2a\u7ec4\u4ef6

    \u25a0 Node Controller: \u4e3a\u6027\u80fd\u6d4b\u8bd5\u63d0\u4f9b\u72ec\u7acb\u8282\u70b9\u7c7b\u578b\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60\uff0c \u63a5\u6536\u6765\u81ea\u7cfb\u7edf\u7684\u6027\u80fd\u6d4b\u8bd5\u4efb\u52a1\uff0c \u52a8\u6001\u7684\u542f\u52a8 JMeter \u5bb9\u5668\u5b8c\u6210\u6027\u80fd\u6d4b\u8bd5 \u25a0 Data Streaming: \u4ece Kafka \u4e2d\u83b7\u53d6\u6027\u80fd\u6d4b\u8bd5\u7ed3\u679c\u6570\u636e\u8fdb\u884c\u5904\u7406\u540e\u5b58\u5165 MySQL \u6570\u636e\u5e93 \u25a0 Kafka: \u63a5\u6536 JMeter \u4ea7\u751f\u7684\u6027\u80fd\u6d4b\u8bd5\u7ed3\u679c\u6570\u636e

    \u6240\u4ee5\u5982\u679c\u9700\u8981\u8fdb\u884c\u5927\u89c4\u6a21\uff085000 VU\u4ee5\u4e0a\uff09\u7684\u6027\u80fd\u6d4b\u8bd5\uff0c\u9700\u8981\u5bf9\u4e0a\u8ff0\u4e09\u4e2a\u7ec4\u4ef6\u8fdb\u884c\u6c34\u5e73\u6269\u5bb9\u3002\u5177\u4f53\u67b6\u6784\u5982\u4e0b\uff1a

    \u4f9d\u636e\u67b6\u6784\u6240\u793a\uff0c\u9700\u8981\u72ec\u7acb\u90e8\u7f72 Kafka \u96c6\u7fa4\u548c Data-Streaming \u96c6\u7fa4\uff08Kafka\u548cData-Streaming\u53ef\u4ee5\u90e8\u7f72\u5728\u4e00\u8d77\uff09\uff0c\u5982\u679c\u91c7\u7528\u72ec\u7acb\u4e3b\u673a\u538b\u6d4b\uff0c\u8fd8\u9700\u8981\u90e8\u7f72 Node-Controller \u96c6\u7fa4\u3002\u90e8\u7f72\u6b65\u9aa4:

    \u25a0 \u90e8\u7f72 Kafka \u96c6\u7fa4 \u25a0 \u90e8\u7f72 Data-Streaming \u96c6\u7fa4 \u25a0 \u90e8\u7f72 Node-Controller \u96c6\u7fa4

    "},{"location":"quick_start/api_test/","title":"\u4f7f\u7528\u63a5\u53e3\u6d4b\u8bd5","text":"

    MeterSphere \u63a5\u53e3\u6d4b\u8bd5\u6a21\u5757\u63d0\u4f9b\u4e86\u63a5\u53e3\u5b9a\u4e49\u3001\u63a5\u53e3\u81ea\u52a8\u5316\u7b49\u63a5\u53e3\u6d4b\u8bd5\u76f8\u5173\u529f\u80fd\u3002 \u7528\u6237\u53ef\u4ee5\u4f7f\u7528\u6811\u72b6\u591a\u7ea7\u6a21\u5757\u6765\u5206\u7ea7\u5206\u7ec4\u7ba1\u7406\u9879\u76ee\u4e0b\u7684\u63a5\u53e3\u5217\u8868\uff0c\u521b\u5efa\u6267\u884c\u63a5\u53e3\u7528\u4f8b\u6d4b\u8bd5\u63a5\u53e3\uff0c\u7ec4\u5408\u7f16\u6392\u591a\u4e2a\u63a5\u53e3\u7528\u4f8b\u8fdb\u884c\u573a\u666f\u81ea\u52a8\u5316\u6d4b\u8bd5\u3002

    "},{"location":"quick_start/api_test/#1","title":"1 \u63a5\u53e3\u5b9a\u4e49\u7ba1\u7406","text":"

    \u8fdb\u5165\u3010\u63a5\u53e3\u6d4b\u8bd5\u3011->\u3010\u63a5\u53e3\u5b9a\u4e49\u3011 \u9875\u9762\u3002

    "},{"location":"quick_start/api_test/#11-swagger","title":"1.1 \u5bfc\u5165 Swagger \u63a5\u53e3\u6587\u6863","text":"

    \u70b9\u51fb\u5de6\u4fa7\u3010\u66f4\u591a\u64cd\u4f5c\u3011\u4e0b\u62c9\u83dc\u5355\u4e2d\u7684\u3010\u5bfc\u5165\u3011\u6309\u94ae\u3002

    \u9009\u62e9 Swagger \u6570\u636e\u683c\u5f0f\uff0c\u9009\u62e9 MeterSphere \u6a21\u5757\uff0c\u9009\u62e9\u3010\u5bfc\u5165\u6a21\u5f0f\u3011\u4e3a\u4e0d\u8986\u76d6\uff0c\u9009\u62e9\u3010\u5bfc\u5165\u7248\u672c\u3011\uff0c\u9009\u62e9\u4f7f\u7528 URL \u5bfc\u5165\uff0c\u5e76\u586b\u5165 Swagger \u5bf9\u5e94\u7684 JSON \u5730\u5740 http://xxx.fit2cloud.com/v3/api-docs\uff0c\u5bfc\u5165 API \u63a5\u53e3\u3002

    \u3010\u7248\u672c\u7ba1\u7406\u3011\u4e3a\u4f01\u4e1a\u7248 X-Pack \u529f\u80fd\uff0c\u5982\u679c\u662f\u793e\u533a\u7248\uff0c\u6ca1\u6709 \u3010\u5bfc\u5165\u7248\u672c\u3011\u9009\u9879\u3002

    "},{"location":"quick_start/api_test/#12","title":"1.2 \u67e5\u770b\u63a5\u53e3\u5b9a\u4e49","text":"

    \u5bfc\u5165 Swagger \u6587\u4ef6\u4e4b\u540e\uff0c\u5728\u63a5\u53e3\u5217\u8868\u4e2d\u627e\u9700\u8981\u7f16\u8f91\u7684\u76ee\u6807\u63a5\u53e3 \uff0c\u70b9\u51fb\u64cd\u4f5c\u5217\u4e2d\u7684\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u67e5\u770b\u63a5\u53e3\u8be6\u60c5\u3002

    "},{"location":"quick_start/api_test/#13","title":"1.3 \u6dfb\u52a0\u6d4b\u8bd5\u73af\u5883","text":"

    \u63a5\u53e3\u5217\u8868\u4e2d\u4ec5\u8bb0\u5f55\u4e86\u63a5\u53e3\u7684\u76f8\u5bf9 URL\uff0c\u5f53\u6211\u4eec\u9700\u8981\u5bf9\u67d0\u4e2a\u63a5\u53e3\u8fdb\u884c\u6d4b\u8bd5\u65f6\uff0c\u9700\u8981\u5148\u5728\u8be5\u9879\u76ee\u4e2d\u6dfb\u52a0\u9488\u5bf9\u8be5\u9879\u76ee\u7684\u6d4b\u8bd5\u73af\u5883\u4fe1\u606f\u3002 \u70b9\u51fb\u5de6\u4fa7\u83dc\u5355\u680f\u3010\u7cfb\u7edf\u8bbe\u7f6e\u3011->\u3010\u9879\u76ee\u7ba1\u7406\u3011 \u9875\u9762\u3002\u70b9\u51fb\u3010\u521b\u5efa\u73af\u5883\u3011 \u6309\u94ae\uff0c\u586b\u5199\u73af\u5883\u540d\u79f0\u53ca\u73af\u5883\u57df\u540d\uff0c\u70b9\u51fb\u786e\u5b9a\u4fdd\u5b58\u6d4b\u8bd5\u73af\u5883\u4fe1\u606f\u3002

    "},{"location":"quick_start/api_test/#14","title":"1.4 \u8c03\u8bd5\u5355\u4e2a\u63a5\u53e3","text":"

    \u5982 /signin \u767b\u5f55\u63a5\u53e3\u8c03\u8bd5\uff0c\u70b9\u51fb\u64cd\u4f5c\u5217\u4e2d\u7684 \u3010\u7f16\u8f91\u3011 \u6309\u94ae\uff0c\u8fdb\u5165\u63a5\u53e3\u8be6\u60c5\u9875\u9762\u3002

    \u70b9\u51fb\u754c\u9762\u4e0a\u65b9\u7684\u3010TEST\u3011\u6309\u94ae\uff0c\u8fdb\u5165\u63a5\u53e3\u6d4b\u8bd5\u9875\u9762\u3002\u5728\u63a5\u53e3\u6d4b\u8bd5\u9875\u9762\u9009\u62e9\u63a5\u53e3\u6267\u884c\u73af\u5883\uff0c\u5e76\u586b\u5199\u63a5\u53e3\u6240\u9700\u7684\u53c2\u6570\u540e\uff0c\u70b9\u51fb\u3010\u6d4b\u8bd5\u3011\u6309\u94ae\u53d1\u9001\u8be5\u63a5\u53e3\u8bf7\u6c42\u3002

    \u5f53\u63a5\u53e3\u8bf7\u6c42\u5b8c\u6210\u540e\uff0c\u53ef\u4ee5\u5728\u4e0b\u65b9\u7684\u54cd\u5e94\u5185\u5bb9\u4e2d\u67e5\u770b\u5230\u672c\u6b21\u63a5\u53e3\u8bf7\u6c42\u7684\u54cd\u5e94\u4fe1\u606f\u3002

    "},{"location":"quick_start/api_test/#2","title":"2 \u521b\u5efa\u5355\u63a5\u53e3\u7528\u4f8b","text":"

    \u8fdb\u5165\u3010\u63a5\u53e3\u6d4b\u8bd5\u3011->\u3010\u63a5\u53e3\u5b9a\u4e49\u3011\u9875\u9762\u3002

    "},{"location":"quick_start/api_test/#21","title":"2.1 \u65b0\u5efa\u5355\u63a5\u53e3\u7528\u4f8b","text":"

    \u5982\u7ed9 /signin \u767b\u5f55\u63a5\u53e3\u6dfb\u52a0\u7528\u4f8b\uff0c\u70b9\u51fb\u64cd\u4f5c\u5217\u4e2d\u7684\u3010CASE\u3011\u6309\u94ae\uff0c\u6253\u5f00\u8be5\u63a5\u53e3\u7684\u7528\u4f8b\u5217\u8868\u9875\u9762\uff0c\u70b9\u51fb\u3010\u6dfb\u52a0\u3011\u6309\u94ae\uff0c\u6dfb\u52a0\u7528\u4f8b\u3002

    \u8f93\u5165\u63a5\u53e3\u7528\u4f8b\u7684\u540d\u79f0\u53ca\u8bf7\u6c42\u63a5\u53e3\u6240\u9700\u7684\u5176\u4ed6\u53c2\u6570\u540e\uff0c\u70b9\u51fb\u53f3\u4e0a\u89d2\u7684\u3010\u4fdd\u5b58\u3011\u6309\u94ae\u4fdd\u5b58\u8be5\u63a5\u53e3\u7528\u4f8b\u3002

    "},{"location":"quick_start/api_test/#22","title":"2.2 \u6d4b\u8bd5\u5355\u63a5\u53e3\u7528\u4f8b","text":"

    \u5728\u5355\u63a5\u53e3\u7528\u4f8b\u53f3\u4e0a\u65b9\u9009\u62e9\u3010\u6267\u884c\u73af\u5883\u3011\uff0c\u70b9\u51fb\u3010\u6267\u884c\u3011\u6309\u94ae\u8c03\u8bd5\u5355\u63a5\u53e3\u7528\u4f8b\uff0c\u6267\u884c\u7ed3\u675f\u540e\uff0c\u5c55\u5f00\u7528\u4f8b\u8be6\u60c5\u67e5\u770b\u54cd\u5e94\u5185\u5bb9\u3002

    "},{"location":"quick_start/api_test/#3","title":"3 \u521b\u5efa\u573a\u666f\u7528\u4f8b","text":"

    \u8fdb\u5165\u3010\u63a5\u53e3\u6d4b\u8bd5\u3011->\u3010\u63a5\u53e3\u81ea\u52a8\u5316\u3011\u9875\u9762\u3002

    "},{"location":"quick_start/api_test/#31","title":"3.1 \u65b0\u5efa\u573a\u666f\u7528\u4f8b","text":"

    \u5728\u573a\u666f\u7528\u4f8b\u5217\u8868\u9875\u9762\uff0c\u70b9\u51fb\u5de6\u4fa7\u7684\u6a21\u5757\u6811\u65b0\u5efa MeterSphere \u6a21\u5757\u3002

    \u70b9\u51fb\u3010\u521b\u5efa\u573a\u666f\u3011\u6309\u94ae\u65b0\u5efa\u4e00\u4e2a \u83b7\u53d6\u7528\u6237\u5217\u8868 \u7684\u573a\u666f\uff0c\u8be5\u573a\u666f\u7684\u76ee\u7684\u662f\u83b7\u53d6\u5f53\u524d MeterSphere \u7cfb\u7edf\u6240\u6709\u7684\u7528\u6237\u5217\u8868\u4fe1\u606f\uff0c\u56e0\u4e3a\u83b7\u53d6\u7528\u6237\u5217\u8868\u63a5\u53e3\u9700\u8981\u767b\u5f55\u72b6\u6001\u6216\u8005\u63a5\u53e3\u7b7e\u540d\u8ba4\u8bc1\u624d\u53ef\u4ee5\u6b63\u5e38\u8bf7\u6c42\uff0c\u8fd9\u91cc\u91c7\u7528\u7c7b\u4f3c Swagger \u8c03\u8bd5\u7684\u65b9\u5f0f\uff0c\u5148\u83b7\u53d6\u767b\u5f55\u6001\uff0c\u518d\u6267\u884c\u83b7\u53d6\u7528\u6237\u5217\u8868\u63a5\u53e3\uff0c\u8fd9\u91cc\u9700\u8981\u5206\u522b\u5bfc\u5165\u767b\u5f55\u548c\u83b7\u53d6\u7528\u6237\u5217\u8868\u4e24\u4e2a\u63a5\u53e3\uff0c\u540c\u65f6\u9700\u8981\u52fe\u9009\u4e0a\u3010\u5171\u4eabcookie\u3011\uff0c\u586b\u5199\u5b8c\u573a\u666f\u57fa\u672c\u4fe1\u606f\u540e\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u6309\u94ae\u4fdd\u5b58\u8be5\u573a\u666f\u3002

    "},{"location":"quick_start/api_test/#32","title":"3.2 \u6dfb\u52a0\u573a\u666f\u6b65\u9aa4","text":"

    \u9996\u5148\u52fe\u9009\u3010\u5171\u4eabcookie\u3011\u6309\u94ae\uff0c\u7136\u540e\u70b9\u51fb\u573a\u666f\u8be6\u60c5\u4e2d\u53f3\u4e0b\u89d2\u7684\u3010+\u3011\u6dfb\u52a0\u573a\u666f\u6b65\u9aa4\u6309\u94ae\uff0c\u5728\u573a\u666f\u4e2d\u4e00\u6b21\u6dfb\u52a0\u5982\u4e0b\u51e0\u4e2a\u6b65\u9aa4\u3002

    \u9009\u62e9\u3010\u63a5\u53e3\u5217\u8868\u5bfc\u5165\u3011\u6b65\u9aa4\uff0c\u5728\u5f39\u51fa\u7684\u63a5\u53e3\u5217\u8868\u4e2d\u627e\u5230 \u767b\u5f55 \u63a5\u53e3\u8fdb\u884c\u6dfb\u52a0\u3002

    \u5728\u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u53ef\u4ee5\u76f4\u63a5\u4fee\u6539\u590d\u5236\u8fc7\u6765\u7684\u63a5\u53e3\u505a\u53c2\u6570\u4fee\u6539\u3002\u5982\u6b64\u5904\u7684 /signin \u76f8\u5173\u53c2\u6570\u53ef\u76f4\u63a5\u7f16\u8f91\u3002

    \u5c55\u5f00 /signin \u767b\u5f55\u63a5\u53e3\u7684\u8bf7\u6c42\u53c2\u6570\uff0c\u5207\u6362\u5230\u3010\u540e\u7f6e\u64cd\u4f5c\u3011\uff0c\u5728\u8be5\u9875\u9762\u6dfb\u52a0\u4e00\u4e2a\u540d\u79f0\u4e3a \u83b7\u53d6CSRF-TOKEN\u7684\u63d0\u53d6\u6b65\u9aa4\uff0c\u91c7\u7528\u3010\u63a8\u8350 JSONPath \u63d0\u53d6\u3011\u65b9\u5f0f\u6dfb\u52a0\u4e00\u4e2a\u63d0\u53d6\uff0c\u5728\u5f39\u51fa\u7684\u54cd\u5e94\u7ed3\u679c Json \u9875\u9762\u4e2d\uff0c\u4e0b\u62c9\u5230\u6700\u5e95\u5c42\uff0c\u52fe\u9009\u540d\u79f0\u4e3acsrfToken\u548csessionId\u7684\u5c5e\u6027\uff0cJSONPath \u8868\u8fbe\u5f0f\u5206\u522b\u4e3a $.data.csrfToken\u548c$.data.sessionId\u3002

    \u6ce8\u610f

    \u5f53\u524d\u6b65\u9aa4\u9700\u5148\u624b\u52a8\u6267\u884c\u6210\u529f\uff0c\u624d\u53ef\u4ee5\u4f7f\u7528\u63a8\u8350 JSONPath \u63d0\u53d6\u65b9\u5f0f\u3002

    \u518d\u6b21\u6dfb\u52a0\u4e00\u4e2a \u3010\u63a5\u53e3\u5217\u8868\u5bfc\u5165\u3011 \u6b65\u9aa4\uff0c\u9009\u62e9 getUserList \u63a5\u53e3\u3002\u4fee\u6539\u8bf7\u6c42\u5934\u91cc\u7684CSRF-TOKEN\u53c2\u6570\uff0c\u8bbe\u7f6e\u4e3a${csrfToken}\uff0cX-AUTH-TOKEN\u53c2\u6570\u503c\u8bbe\u7f6e\u4e3a${sessionId}\uff0c\u4fee\u6539\u8be5\u63a5\u53e3\u8bf7\u6c42\u4e2d\u7684REST\u53c2\u6570 goPage \u4e3a1\uff0cpageSize \u4e3a10\u3002

    "},{"location":"quick_start/api_test/#3_1","title":"3 \u573a\u666f\u8c03\u8bd5","text":"

    \u573a\u666f\u6b65\u9aa4\u6dfb\u52a0\u5b8c\u6210\u540e\uff0c\u70b9\u51fb\u573a\u666f\u6b65\u4e0a\u65b9\u7684\u7684\u3010\u8c03\u8bd5\u3011\u6309\u94ae\uff0c\u53ef\u5728\u5217\u8868\u67e5\u770b\u5404\u4e2a\u6b65\u9aa4\u6267\u884c\u72b6\u6001\uff0c\u5c55\u5f00\u53ef\u67e5\u770b\u63a5\u53e3\u6267\u884c\u7684\u8be6\u7ec6\u4fe1\u606f\u3002

    \u70b9\u51fb\u3010\u8c03\u8bd5\u5386\u53f2\u3011\u4e5f\u53ef\u4ee5\u76f4\u63a5\u67e5\u770b\u8be6\u7ec6\u7684\u62a5\u544a\u4fe1\u606f\u3002

    "},{"location":"quick_start/api_test/#4","title":"4 \u6d4b\u8bd5\u62a5\u544a\u751f\u6210\u548c\u67e5\u770b","text":"

    \u70b9\u51fb\u573a\u666f\u6b65\u4e0a\u65b9\u7684\u3010\u8c03\u8bd5\u3011 \u6309\u94ae\u65c1\u8fb9\u7684\u3010V\u3011\uff0c\u9009\u62e9\u3010\u751f\u6210\u62a5\u544a\u3011\uff0c\u751f\u6210\u62a5\u544a\u548c\u67e5\u770b\u573a\u666f\u62a5\u544a\u7684\u6b65\u9aa4\u8be6\u7ec6\u4fe1\u606f\u3002

    \u4e5f\u53ef\u4ee5\u76f4\u63a5\u5728\u3010\u6d4b\u8bd5\u62a5\u544a\u3011\u5217\u8868\u70b9\u51fb\u53f3\u4fa7\u3010\u62a5\u544a\u8be6\u60c5\u3011\u67e5\u770b\u62a5\u544a\u8be6\u7ec6\u4fe1\u606f\u3002

    \u5728\u62a5\u544a\u5217\u8868\u4e2d\u9009\u62e9\u62a5\u544a\u3010\u8be6\u60c5\u3011\u6309\u94ae\u6253\u5f00\u3010\u6d4b\u8bd5\u62a5\u544a\u3011\u9875\u9762\uff0c\u5728\u9875\u9762\u4e2d\u53ef\u4ee5\u67e5\u770b\u62a5\u544a\u8be6\u60c5\uff0c\u5206\u4eab\u548c\u5bfc\u51fa\u62a5\u544a\u3002

    "},{"location":"quick_start/create_project/","title":"\u521b\u5efa\u9879\u76ee","text":"

    \u5728 MeterSphere \u4e2d\uff0c\u6d4b\u8bd5\u7528\u4f8b\u3001\u6d4b\u8bd5\u8ba1\u5212\u3001\u63a5\u53e3\u6d4b\u8bd5\u3001UI \u6d4b\u8bd5\u53ca\u6027\u80fd\u6d4b\u8bd5\u7b49\u7684\u7ba1\u7406\u5747\u901a\u8fc7\u9879\u76ee\u8fdb\u884c\u5206\u6743\u5206\u57df\u67e5\u770b\u548c\u7ba1\u7406\uff0c\u4f7f\u7528MeterSphere \u8fdb\u884c\u6d4b\u8bd5\uff0c\u767b\u5f55\u8fdb\u5165\u5de5\u4f5c\u7a7a\u95f4\u540e\uff0c\u9996\u5148\u9700\u8981\u521b\u5efa\u9879\u76ee\uff0c\u5728\u9879\u76ee\u4e0b\u521b\u5efa\u7ba1\u7406\u64cd\u4f5c\u529f\u80fd\u7528\u4f8b\u3001\u6d4b\u8bd5\u8ba1\u5212\u3001\u63a5\u53e3\u6d4b\u8bd5\u3001UI \u6d4b\u8bd5\u3001\u6027\u80fd\u6d4b\u8bd5\u7b49\u3002\u8fdb\u4e00\u6b65\u7684\u7ba1\u7406\u6a21\u578b\u8bf4\u660e\u8bf7\u53c2\u8003\u7ba1\u7406\u6a21\u578b\u3002

    \u5728\u5de6\u4fa7\u83dc\u5355\u4e2d\u70b9\u51fb\u3010\u7cfb\u7edf\u8bbe\u7f6e\u3011\uff0c\u5728\u6253\u5f00\u7684\u9875\u9762\u5de6\u4fa7\u4e8c\u7ea7\u83dc\u5355\u4e2d\uff0c\u9009\u62e9\u3010\u5de5\u4f5c\u7a7a\u95f4\u3011\u4e0b\u3010\u9879\u76ee\u7ba1\u7406\u3011\u83dc\u5355\uff0c\u6253\u5f00\u3010\u9879\u76ee\u7ba1\u7406\u3011\u9875\u9762\u3002

    \u5728\u3010\u9879\u76ee\u7ba1\u7406\u3011\u9875\u9762\uff0c\u70b9\u51fb\u3010\u521b\u5efa\u9879\u76ee\u3011 \u6309\u94ae\uff0c\u6253\u5f00\u3010\u521b\u5efa\u9879\u76ee\u3011\u5bf9\u8bdd\u6846\uff0c\u5728\u5bf9\u8bdd\u6846\u4e2d\u8f93\u5165\u9879\u76ee\u7684\u57fa\u672c\u4fe1\u606f\u540e\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u6309\u94ae\u521b\u5efa\u4e00\u4e2a\u65b0\u9879\u76ee\u3002

    "},{"location":"quick_start/load_test/","title":"\u4f7f\u7528\u6027\u80fd\u6d4b\u8bd5","text":"

    MeterSphere \u6027\u80fd\u6d4b\u8bd5\u6a21\u5757\u652f\u6301\u901a\u8fc7\u5df2\u6709\u7684\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u3001\u573a\u666f\u6d4b\u8bd5\u521b\u5efa\u3001\u4e0a\u4f20 JMeter JMX \u505a\u6027\u80fd\u6d4b\u8bd5\uff0c\u5e76\u6309\u9700\u8bbe\u7f6e\u5e76\u53d1\u7528\u6237\u6570\u7b49\u6d4b\u8bd5\u53c2\u6570\uff0c\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u5e76\u5b9e\u65f6\u67e5\u770b\u6027\u80fd\u6d4b\u8bd5\u62a5\u544a\u3002

    "},{"location":"quick_start/load_test/#1","title":"1 \u521b\u5efa\u6d4b\u8bd5\u8d44\u6e90\u6c60","text":"

    \u901a\u8fc7\u5b89\u88c5\u5305\u5b89\u88c5 MeterSphere \u540e\uff0c\u7cfb\u7edf\u9ed8\u8ba4\u4f7f\u7528\u5f53\u524d\u8282\u70b9\u521b\u5efa\u4e86\u540d\u4e3a\u3010LOCAL\u3011\u6d4b\u8bd5\u8d44\u6e90\u6c60\u3002\u5173\u4e8e\u6d4b\u8bd5\u8d44\u6e90\u6c60\u7684\u4f5c\u7528\u8bf7\u53c2\u8003 FAQ\u3002

    \u5982\u679c\u9700\u8981\u521b\u5efa\u65b0\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60\uff0c\u6216\u5411\u5df2\u6709\u8d44\u6e90\u6c60\u4e2d\u6dfb\u52a0\u8282\u70b9\uff0c\u8bf7\u53c2\u8003 \u5982\u4f55\u5411\u6d4b\u8bd5\u8d44\u6e90\u6c60\u4e2d\u6dfb\u52a0\u8282\u70b9\uff1f

    "},{"location":"quick_start/load_test/#2-url","title":"2 \u4fee\u6539\u5f53\u524d\u7ad9\u70b9 URL","text":"

    \u6027\u80fd\u6d4b\u8bd5\u6267\u884c\u8fc7\u7a0b\u4e2d node-controller \u8282\u70b9\u9700\u8981\u901a\u8fc7\u914d\u7f6e\u7684\u3010\u5f53\u524d\u7ad9\u70b9URL\u3011 \u4e0b\u8f7d JMX \u7b49\u6d4b\u8bd5\u8d44\u6e90\u6587\u4ef6\u3002\u5728\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u524d\u9700\u8981\u914d\u7f6e\u5e76\u68c0\u67e5\u6d4b\u8bd5\u8d44\u6e90\u6c60\u4e2d\u7684\u8282\u70b9\u53ef\u4ee5\u6b63\u5e38\u8bbf\u95ee\u5230\u8be5 URL\uff0cURL \u503c\u4e00\u822c\u4e3a\u901a\u8fc7\u6d4f\u89c8\u5668\u8bbf\u95ee MeterSphere \u7684\u5730\u5740\u3002

    "},{"location":"quick_start/load_test/#3","title":"3 \u521b\u5efa\u6027\u80fd\u6d4b\u8bd5","text":"

    \u8fdb\u5165\u3010\u6027\u80fd\u6d4b\u8bd5\u3011-\u3010\u6d4b\u8bd5\u3011\u9875\u9762\u3002

    \u5728\u6027\u80fd\u6d4b\u8bd5\u5217\u8868\u4e2d\u70b9\u51fb\u3010\u521b\u5efa\u6027\u80fd\u6d4b\u8bd5\u3011\uff0c\u5728\u3010\u573a\u666f\u914d\u7f6e\u3011\u70b9\u51fb\u3010\u5f15\u7528\u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u3011\uff0c\u5c06\u5df2\u6709\u7684\u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u6dfb\u52a0\u5230\u6027\u80fd\u6d4b\u8bd5\u4e2d\u3002

    "},{"location":"quick_start/load_test/#4","title":"4 \u8c03\u6574\u538b\u529b\u914d\u7f6e","text":"

    \u5728\u538b\u529b\u914d\u7f6e\u9875\u9762\u9009\u62e9\u7cfb\u7edf\u914d\u7f6e\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60\u3002 \u70b9\u51fb\u5c55\u5f00\u7b2c\u4e00\u4e2a\u7ebf\u7a0b\u7ec4\u7684\u914d\u7f6e\u9875\u9762\uff0c\u586b\u5165\u5e76\u53d1\u53c2\u6570\u3002 \u5177\u4f53\u7684\u5e76\u53d1\u914d\u7f6e\u5982\u4e0b\uff1a

    • \u5e76\u53d1\u7528\u6237\u6570\uff1a10
    • \u9009\u62e9\u3010\u6309\u6301\u7eed\u65f6\u95f4\u3011\u6a21\u5f0f
    • \u538b\u6d4b\u65f6\u957f\uff1a5\u5206\u949f
    • RPS \u4e0a\u9650\u4e0d\u8bbe\u7f6e
    • \u5728\u573a\u666f\u914d\u7f6e\u4e2d\u9009\u62e9\u3010ConcurrencyThreadGroup\u3011\u52a0\u538b\u6a21\u578b\uff0c\u8bbe\u7f6e10\u79d2\u5185\u52065\u6b65\u589e\u52a0\u5e76\u53d1\u7528\u6237

    "},{"location":"quick_start/load_test/#5","title":"5 \u6267\u884c\u5e76\u67e5\u770b\u62a5\u544a","text":"

    \u70b9\u51fb\u6027\u80fd\u6d4b\u8bd5\u914d\u7f6e\u9875\u9762\u7684\u3010\u4fdd\u5b58\u5e76\u6267\u884c\u3011\u6309\u94ae\uff0c\u7cfb\u7edf\u81ea\u52a8\u8fdb\u5165\u6027\u80fd\u6d4b\u8bd5\u6d4b\u8bd5\u62a5\u544a\u9875\u9762\u3002\u5f53\u6536\u5230\u6d4b\u8bd5\u7ed3\u679c\u6570\u636e\u540e\uff0c\u62a5\u544a\u9875\u9762\u5c06\u81ea\u52a8\u66f4\u65b0\u3002

    "},{"location":"quick_start/quick_start/","title":"\u4e00\u952e\u90e8\u7f72","text":""},{"location":"quick_start/quick_start/#1","title":"1 \u4e00\u952e\u90e8\u7f72","text":"

    \u51c6\u5907\u597d\u90e8\u7f72\u670d\u52a1\u5668\u540e\uff0c\u53ef\u901a\u8fc7 MeterSphere \u5feb\u901f\u5b89\u88c5\u811a\u672c\u4e00\u952e\u5feb\u901f\u90e8\u7f72\u3002\u4e00\u952e\u5b89\u88c5\u91c7\u7528\u9ed8\u8ba4\u5b89\u88c5\u53c2\u6570\uff0c\u66f4\u591a\u6709\u5173\u79bb\u7ebf\u90e8\u7f72\u3001\u5bb9\u5668\u90e8\u7f72\u3001\u5206\u5e03\u5f0f\u90e8\u7f72\u7b49\u65b9\u5f0f\u53ef\u67e5\u770b\u3010\u5b89\u88c5\u90e8\u7f72\u3011\u7ae0\u8282\u5185\u5bb9\u3002

    \u90e8\u7f72\u670d\u52a1\u5668\u8981\u6c42\uff1a

    • \u64cd\u4f5c\u7cfb\u7edf\u8981\u6c42\uff1aCentOS 7.x
    • CPU\u5185\u5b58\u8981\u6c42\uff1a\u6700\u4f4e\u8981\u6c42 4C8G\uff0c\u63a8\u8350 8C16G
    • \u90e8\u7f72\u76ee\u5f55\u7a7a\u95f4\uff08\u9ed8\u8ba4/opt\u76ee\u5f55\uff09\u8981\u6c42\uff1a50G
    • \u7f51\u7edc\u8981\u6c42\uff1a\u53ef\u8bbf\u95ee\u4e92\u8054\u7f51

    \u4ee5 root \u7528\u6237 ssh \u767b\u5f55\u90e8\u7f72\u76ee\u6807\u670d\u52a1\u5668\uff0c\u6267\u884c\u4ee5\u4e0b\u811a\u672c\u8fdb\u884c\u4e00\u952e\u5b89\u88c5:

    curl -sSL https://resource.fit2cloud.com/metersphere/metersphere/releases/latest/download/quick_start.sh | bash\n

    \u5b89\u88c5\u6210\u529f\u540e\uff0c\u5ba2\u6237\u7aef\u901a\u8fc7\u6d4f\u89c8\u5668\u8bbf\u95ee\u4ee5\u4e0b\u5730\u5740\uff0c\u8f93\u5165\u7528\u6237\u540d\u548c\u5bc6\u7801\uff0c\u5373\u53ef\u5f00\u59cb\u4f7f\u7528 MeterSphere\u3002

    \u5730\u5740: http://\u76ee\u6807\u670d\u52a1\u5668IP\u5730\u5740:8081\n\u9ed8\u8ba4\u7528\u6237\u540d: admin\n\u9ed8\u8ba4\u5bc6\u7801: metersphere\n

    "},{"location":"quick_start/quick_start/#2","title":"2 \u754c\u9762\u8bf4\u660e","text":"

    \u8fdb\u5165 MeterSphere \u4e3b\u754c\u9762\u540e\u53ef\u4ee5\u770b\u5230\u754c\u9762\u5de6\u8fb9\u662f\u5bfc\u822a\u680f\uff0c\u5305\u62ec\u3010\u5de5\u4f5c\u53f0\u3011\u3010\u6d4b\u8bd5\u8ddf\u8e2a\u3011\u3010\u63a5\u53e3\u6d4b\u8bd5\u3011\u3010UI \u6d4b\u8bd5\u3011\u3010\u6027\u80fd\u6d4b\u8bd5\u3011\u3010\u62a5\u8868\u7edf\u8ba1\u3011\u3010\u9879\u76ee\u8bbe\u7f6e\u3011\u3010\u7cfb\u7edf\u8bbe\u7f6e\u3011\u516b\u4e2a\u6a21\u5757\uff0c\u5176\u4e2d UI \u6d4b\u8bd5\u662f\u4f01\u4e1a\u7248\u672c X-Pack\u7684\u529f\u80fd\uff0c\u754c\u9762\u4e0a\u65b9\u4ee5 Tab \u9875\u65b9\u5f0f\u5c55\u793a\u5f53\u524d\u6a21\u5757\u7684\u5177\u4f53\u529f\u80fd\u3002

    "},{"location":"quick_start/test_track/","title":"\u4f7f\u7528\u6d4b\u8bd5\u8ddf\u8e2a","text":"

    MeterSphere \u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757\u652f\u6301\u6d4b\u8bd5\u7528\u4f8b\u7ba1\u7406\u3001\u6d4b\u8bd5\u7528\u4f8b\u8bc4\u5ba1\u3001\u6d4b\u8bd5\u8ba1\u5212\u8ddf\u8e2a\u7b49\u3002

    \u7528\u6237\u53ef\u4ee5\u4f7f\u7528\u6811\u72b6\u591a\u7ea7\u6a21\u5757\u6765\u5206\u7ea7\u5206\u7ec4\u7ba1\u7406\u9879\u76ee\u4e0b\u7684\u6d4b\u8bd5\u7528\u4f8b\uff0c\u5bf9\u5df2\u6dfb\u52a0\u7684\u6d4b\u8bd5\u7528\u4f8b\u8fdb\u884c\u8bc4\u5ba1\uff0c\u521b\u5efa\u6d4b\u8bd5\u8ba1\u5212\uff0c\u5c06\u5f85\u6d4b\u529f\u80fd\u6d4b\u8bd5\u7528\u4f8b\u3001\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u3001UI \u6d4b\u8bd5\u7528\u4f8b\u53ca\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u6dfb\u52a0\u5230\u6d4b\u8bd5\u8ba1\u5212\uff0c\u6267\u884c\u6d4b\u8bd5\u8ba1\u5212\uff0c\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u3002

    "},{"location":"quick_start/test_track/#1","title":"1 \u6dfb\u52a0\u6d4b\u8bd5\u7528\u4f8b","text":"

    \u5728\u5de6\u4fa7\u83dc\u5355\u680f\u4e2d\u9009\u62e9\u3010\u6d4b\u8bd5\u8ddf\u8e2a\u3011\uff0c\u5728\u6253\u5f00\u7684\u9875\u9762\u9876\u90e8\u83dc\u5355\u4e2d\u9009\u62e9\u3010\u529f\u80fd\u7528\u4f8b\u3011\u6253\u5f00\u3010\u7528\u4f8b\u5217\u8868\u3011\u9875\u9762\u3002

    "},{"location":"quick_start/test_track/#11","title":"1.1 \u521b\u5efa\u6a21\u5757","text":"

    MeterSphere \u901a\u8fc7\u6a21\u5757\u6811\u7684\u65b9\u5f0f\u7ec4\u7ec7\u7ba1\u7406\u6d4b\u8bd5\u7528\u4f8b\uff0c\u7528\u6237\u53ef\u4ee5\u5728\u5de6\u4fa7\u67e5\u770b\u5230\u5f53\u524d\u9879\u76ee\u6d4b\u8bd5\u7528\u4f8b\u7684\u6a21\u5757\u6811\u3002\u70b9\u51fb\u5de6\u4fa7\u7684\u6a21\u5757\u6811\u4e2d\u7684\u3010\u6dfb\u52a0\u5b50\u6a21\u5757\u3011\u6309\u94ae\uff0c\u53ef\u4e3a\u8be5\u9879\u76ee\u6dfb\u52a0\u6a21\u5757\u3002

    "},{"location":"quick_start/test_track/#12","title":"1.2 \u8868\u5355\u65b9\u5f0f\u521b\u5efa\u7528\u4f8b","text":"

    \u521b\u5efa\u597d\u6a21\u5757\u540e\uff0c\u5373\u53ef\u5728\u5404\u4e2a\u6a21\u5757\u4e2d\u6dfb\u52a0\u6d4b\u8bd5\u7528\u4f8b\u3002\u5728\u3010\u7528\u4f8b\u5217\u8868\u3011\u9875\u9762\u4e2d\uff0c\u70b9\u51fb\u3010\u7528\u4f8b\u5217\u8868\u3011\u6807\u7b7e\u65c1\u7684\u3010+\u3011\u6309\u94ae\uff0c\u5728\u4e0b\u62c9\u83dc\u5355\u4e2d\u9009\u62e9\u3010\u65b0\u5efa\u7528\u4f8b\u3011 \u6309\u94ae\u6253\u5f00\u3010\u65b0\u5efa\u7528\u4f8b\u3011\u9875\u9762\u3002

    \u5728\u6253\u5f00\u7684\u3010\u65b0\u5efa\u7528\u4f8b\u3011\u9875\u9762\u4e2d\uff0c\u586b\u5199\u7528\u4f8b\u540d\u79f0\u3001\u524d\u7f6e\u6761\u4ef6\u3001\u6d4b\u8bd5\u6b65\u9aa4\u7b49\u8be6\u7ec6\u4fe1\u606f\uff0c\u4e4b\u540e\u70b9\u51fb\u3010\u4fdd\u5b58\u3011 \u6309\u94ae\u5b8c\u6210\u7528\u4f8b\u521b\u5efa\u3002

    "},{"location":"quick_start/test_track/#13","title":"1.3 \u8868\u5355\u65b9\u5f0f\u67e5\u770b\u7528\u4f8b","text":"

    \u5728\u3010\u7528\u4f8b\u5217\u8868\u3011\u9875\u9762\u4e2d\uff0c\u70b9\u51fb\u3010\u67e5\u770b\u3011\u6309\u94ae\uff0c\u5373\u53ef\u67e5\u770b\u8be5\u7528\u4f8b\u3002

    "},{"location":"quick_start/test_track/#14","title":"1.4 \u8111\u56fe\u65b9\u5f0f\u521b\u5efa\u7528\u4f8b","text":"

    \u9664\u4e86\u901a\u8fc7\u586b\u5199\u8868\u5355\u7684\u65b9\u5f0f\u7f16\u8f91\u3001\u5c55\u793a\u7528\u4f8b\uff0c\u8fd8\u53ef\u4ee5\u901a\u8fc7\u8111\u56fe\u7684\u65b9\u5f0f\u5b9e\u73b0\u6b64\u529f\u80fd\u3002\u5728\u3010\u7528\u4f8b\u5217\u8868\u3011\u9875\u9762\u70b9\u51fb\u3010\u8111\u56fe\u3011\u6807\u7b7e\u5207\u6362\u5230\u8111\u56fe\u5c55\u793a\u6a21\u5f0f\uff0c\u901a\u8fc7\u5728\u6a21\u5757\u4e0b\u6dfb\u52a0\u5b50\u8282\u70b9\u5e76\u6dfb\u52a0\u6807\u7b7e\u7684\u65b9\u5f0f\u521b\u5efa\u7528\u4f8b\u3002

    "},{"location":"quick_start/test_track/#2","title":"2 \u53d1\u8d77\u7528\u4f8b\u8bc4\u5ba1","text":"

    \u5728\u9876\u90e8\u83dc\u5355\u680f\u4e2d\uff0c\u9009\u62e9\u3010\u7528\u4f8b\u8bc4\u5ba1\u3011\u6253\u5f00\u3010\u7528\u4f8b\u8bc4\u5ba1\u3011\u9875\u9762\u3002

    "},{"location":"quick_start/test_track/#21","title":"2.1 \u521b\u5efa\u7528\u4f8b\u8bc4\u5ba1","text":"

    \u5728\u3010\u7528\u4f8b\u8bc4\u5ba1\u3011\u5217\u8868\u9875\u9762\u4e2d\uff0c\u70b9\u51fb\u5217\u8868\u4e0a\u65b9\u7684\u3010\u521b\u5efa\u7528\u4f8b\u8bc4\u5ba1\u3011\u6309\u94ae\uff0c\u5728\u6253\u5f00\u7684\u9875\u9762\u4e2d\u8f93\u5165\u7528\u4f8b\u8bc4\u5ba1\u4efb\u52a1\u540d\u79f0\u3001\u8bc4\u5ba1\u4eba\u7b49\u4fe1\u606f\u540e\uff0c\u70b9\u51fb\u4e0b\u65b9\u7684\u3010\u786e\u5b9a\u3011\u6309\u94ae\u5b8c\u6210\u7528\u4f8b\u8bc4\u5ba1\u7684\u521b\u5efa\u3002

    "},{"location":"quick_start/test_track/#22","title":"2.2 \u7528\u4f8b\u8bc4\u5ba1\u5173\u8054\u7528\u4f8b","text":"

    \u5728\u3010\u7528\u4f8b\u8bc4\u5ba1\u3011\u5217\u8868\u9875\u9762\uff0c\u627e\u5230\u8981\u6dfb\u52a0\u7528\u4f8b\u7684\u8bc4\u5ba1\uff0c\u70b9\u51fb\u6253\u5f00\u3010\u529f\u80fd\u6d4b\u8bd5\u7528\u4f8b\u3011\u5217\u8868\u9875\u9762\u3002 \u5728\u3010\u529f\u80fd\u6d4b\u8bd5\u7528\u4f8b\u3011\u5217\u8868\u9875\u9762\uff0c\u70b9\u51fb\u3010\u5173\u8054\u7528\u4f8b\u3011 \u6309\u94ae\uff0c\u6253\u5f00\u3010\u5173\u8054\u7528\u4f8b\u3011\u5bf9\u8bdd\u6846\uff0c\u5728\u5bf9\u8bdd\u6846\u4e2d\u7684\u7528\u4f8b\u5217\u8868\u4e2d\u9009\u62e9\u8981\u6dfb\u52a0\u5230\u7528\u4f8b\u8bc4\u5ba1\u4efb\u52a1\u4e2d\u7684\u6d4b\u8bd5\u7528\u4f8b\uff0c\u9009\u62e9\u540e\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u6309\u94ae\u4fdd\u5b58\u3002

    "},{"location":"quick_start/test_track/#23","title":"2.3 \u8bc4\u5ba1\u6d4b\u8bd5\u7528\u4f8b","text":"

    \u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\u540e\uff0c\u5373\u53ef\u5728\u7528\u4f8b\u8bc4\u5ba1\u9875\u9762\u53f3\u4fa7\u7684\u6d4b\u8bd5\u7528\u4f8b\u5217\u8868\u4e2d\u67e5\u770b\u5230\u5df2\u5173\u8054\u7684\u6d4b\u8bd5\u7528\u4f8b\u3002\u70b9\u51fb\u67d0\u4e2a\u6d4b\u8bd5\u7528\u4f8b\u64cd\u4f5c\u5217\u4e2d\u7684\u7f16\u8f91\u6309\u94ae\uff0c\u8fdb\u5165\u3010\u7528\u4f8b\u8be6\u60c5\u3011\u9875\u9762\u3002

    \u5728\u3010\u7528\u4f8b\u8be6\u60c5\u3011\u9875\u9762\u53f3\u4fa7\u8f93\u5165\u5e76\u53d1\u9001\u9488\u5bf9\u6b64\u6761\u6d4b\u8bd5\u7528\u4f8b\u7684\u8bc4\u8bba\u3002\u57fa\u4e8e\u8bc4\u5ba1\u7ed3\u679c\uff0c\u70b9\u51fb \u3010\u901a\u8fc7\u3011 \u6216 \u3010\u672a\u901a\u8fc7\u3011 \u7684\u72b6\u6001\u6309\u94ae\u4e3a\u672c\u6761\u7528\u4f8b\u6807\u8bb0\u8bc4\u5ba1\u72b6\u6001\u3002

    "},{"location":"quick_start/test_track/#24","title":"2.4 \u8111\u56fe\u65b9\u5f0f\u8bc4\u5ba1\u7528\u4f8b","text":"

    \u9664\u4e86\u901a\u8fc7\u5217\u8868\u53ca\u8868\u5355\u65b9\u5f0f\u8bc4\u5ba1\u7528\u4f8b\u5916\uff0c\u8fd8\u53ef\u4ee5\u901a\u8fc7\u8111\u56fe\u65b9\u5f0f\u5b9e\u73b0\u6b64\u529f\u80fd\u3002\u5728\u3010\u7528\u4f8b\u5217\u8868\u3011\u9875\u9762\u70b9\u51fb \u3010\u8111\u56fe\u3011 \u6807\u7b7e\u5207\u6362\u5230\u8111\u56fe\u5c55\u793a\u6a21\u5f0f\uff0c\u9009\u4e2d\u5f85\u8bc4\u5ba1\u7528\u4f8b\uff0c\u901a\u8fc7\u6dfb\u52a0\u6807\u7b7e\u7684\u65b9\u5f0f\u6765\u6807\u8bb0\u7528\u4f8b\u8bc4\u5ba1\u7ed3\u679c\u3002

    "},{"location":"quick_start/test_track/#3","title":"3 \u521b\u5efa\u6d4b\u8bd5\u8ba1\u5212","text":"

    \u5728\u9876\u90e8\u83dc\u5355\u680f\u4e2d\uff0c\u9009\u62e9\u3010\u6d4b\u8bd5\u8ba1\u5212\u3011\u6253\u5f00\u3010\u6d4b\u8bd5\u8ba1\u5212\u3011\u9875\u9762\u3002

    "},{"location":"quick_start/test_track/#31","title":"3.1 \u65b0\u5efa\u6d4b\u8bd5\u8ba1\u5212","text":"

    \u5728\u3010\u6d4b\u8bd5\u8ba1\u5212\u3011\u9875\u9762\uff0c\u70b9\u51fb\u6d4b\u8bd5\u8ba1\u5212\u5217\u8868\u4e0a\u65b9\u7684\u3010\u521b\u5efa\u6d4b\u8bd5\u8ba1\u5212\u3011\u6309\u94ae\uff0c\u6253\u5f00\u3010\u521b\u5efa\u6d4b\u8bd5\u8ba1\u5212\u3011\u5bf9\u8bdd\u6846\uff0c\u5728\u5bf9\u8bdd\u6846\u4e2d\u8f93\u5165\u6b64\u6b21\u6d4b\u8bd5\u8ba1\u5212\u7684\u540d\u79f0\u3001\u8d1f\u8d23\u4eba\u7b49\u4fe1\u606f\u540e\uff0c\u70b9\u51fb \u3010\u786e\u5b9a\u3011 \u6309\u94ae\u5b8c\u6210\u6d4b\u8bd5\u8ba1\u5212\u521b\u5efa\u3002

    "},{"location":"quick_start/test_track/#32","title":"3.2 \u6d4b\u8bd5\u8ba1\u5212\u5173\u8054\u7528\u4f8b","text":"

    \u70b9\u51fb\u6d4b\u8bd5\u8ba1\u5212\u5217\u8868\u4e2d\u65b0\u521b\u5efa\u7684\u6d4b\u8bd5\u8ba1\u5212\uff0c\u8fdb\u5165\u6d4b\u8bd5\u8ba1\u5212\u8be6\u60c5\u9875\u9762\u3002 \u5207\u6362\u8981\u5173\u8054\u7684\u6d4b\u8bd5\u7528\u4f8b\u7c7b\u578b\u83dc\u5355\uff0c\u70b9\u51fb\u53f3\u4fa7\u5217\u8868\u4e0a\u65b9\u7684 \u3010\u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\u3011 \u6309\u94ae\uff0c\u5728\u5f39\u51fa\u7684\u7528\u4f8b\u9009\u62e9\u5217\u8868\u4e2d\u9009\u62e9\u8981\u6dfb\u52a0\u5230\u6b64\u6b21\u6d4b\u8bd5\u8ba1\u5212\u4e2d\u7684\u6d4b\u8bd5\u7528\u4f8b\u3002\u53ef\u4ee5\u901a\u8fc7\u641c\u7d22\u6846\u53ca\u9ad8\u7ea7\u641c\u7d22\u529f\u80fd\u8fdb\u4e00\u6b65\u7b5b\u9009\u7279\u5b9a\u7684\u6d4b\u8bd5\u7528\u4f8b\u8fdb\u884c\u6dfb\u52a0\u3002

    \u8bb0\u5f55\u7528\u4f8b\u6267\u884c\u7ed3\u679c \u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\u540e\uff0c\u5373\u53ef\u5728\u6d4b\u8bd5\u8ba1\u5212\u9875\u9762\u53f3\u4fa7\u7684\u6d4b\u8bd5\u7528\u4f8b\u5217\u8868\u4e2d\u67e5\u770b\u5230\u5df2\u5173\u8054\u7684\u6d4b\u8bd5\u7528\u4f8b\u3002\u70b9\u51fb\u67d0\u4e2a\u6d4b\u8bd5\u7528\u4f8b\u64cd\u4f5c\u5217\u4e2d\u7684\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u8fdb\u5165\u3010\u7528\u4f8b\u8be6\u60c5\u3011\u9875\u9762\u3002 \u5728\u6267\u884c\u6b65\u9aa4\u4e2d\uff0c\u586b\u5199\u6bcf\u4e00\u6b65\u7684\u5b9e\u9645\u7ed3\u679c\u53ca\u8be5\u6b65\u7684\u6267\u884c\u7ed3\u679c\uff0c\u57fa\u4e8e\u5404\u6b65\u9aa4\u6267\u884c\u60c5\u51b5\u53ca\u8bc4\u5b9a\u6807\u51c6\uff0c\u70b9\u51fb\u4e0a\u65b9\u7684\u72b6\u6001\u6309\u94ae\u4e3a\u6b64\u6761\u7528\u4f8b\u6807\u8bb0\u6267\u884c\u72b6\u6001\u3002 Tips:\u5728\u6d4b\u8bd5\u8ba1\u5212\u4e2d\u4fee\u6539\u529f\u80fd\u7528\u4f8b\u7684\u72b6\u6001\uff0c\u4f1a\u540c\u6b65\u66f4\u65b0\u3010\u7528\u4f8b\u5217\u8868\u3011\u7684\u5bf9\u5e94\u7528\u4f8b\u7684\u72b6\u6001\u3002

    \u540c\u65f6\u5728\u6d4b\u8bd5\u8ba1\u5212\u5217\u8868\u53ef\u76f4\u63a5\u5728\u66f4\u65b0\u7528\u4f8b\u72b6\u6001\u3002

    \u5173\u8054 \u3010\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u3011\u3001\u3010UI \u6d4b\u8bd5\u7528\u4f8b\u3011\u3001\u3010\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u3011\u65e0\u9700\u624b\u52a8\u4fee\u6539\u72b6\u6001\uff0c\u5173\u8054\u65b9\u5f0f\u548c\u3010\u529f\u80fd\u6d4b\u8bd5\u7528\u4f8b\u3011\u76f8\u540c\u3002

    "},{"location":"quick_start/test_track/#33","title":"3.3 \u8111\u56fe\u65b9\u5f0f\u8bb0\u5f55\u7528\u4f8b\u6267\u884c\u7ed3\u679c","text":"

    \u4e0e\u7528\u4f8b\u7684\u521b\u5efa\u548c\u8bc4\u5ba1\u7c7b\u4f3c\uff0c\u7528\u4f8b\u6267\u884c\u7ed3\u679c\u540c\u6837\u53ef\u4ee5\u901a\u8fc7\u8111\u56fe\u65b9\u5f0f\u8bb0\u5f55\u3002\u5728\u3010\u7528\u4f8b\u5217\u8868\u3011\u9875\u9762\u70b9\u51fb\u3010\u8111\u56fe\u3011\u6807\u7b7e\u5207\u6362\u5230\u8111\u56fe\u5c55\u793a\u9875\u9762\uff0c\u9009\u4e2d\u5f85\u6267\u884c\u7528\u4f8b\uff0c\u901a\u8fc7\u6dfb\u52a0\u6807\u7b7e\u7684\u65b9\u5f0f\u6765\u6807\u8bb0\u7528\u4f8b\u6267\u884c\u7ed3\u679c\u3002

    "},{"location":"quick_start/test_track/#4","title":"4 \u6d4b\u8bd5\u8ba1\u5212\u6267\u884c","text":"

    \u70b9\u51fb\u6d4b\u8bd5\u8ba1\u5212\u5217\u8868\u53f3\u4fa7\u3010\u6267\u884c\u3011\u6309\u94ae\uff0c\u53ef\u4ee5\u6267\u884c\u6d4b\u8bd5\u8ba1\u5212\uff0c\u540c\u65f6\u6267\u884c\u65f6\u53ef\u9009\u62e9\u8fd0\u884c\u73af\u5883\u3001\u6267\u884c\u6a21\u5f0f\u3001\u8fd0\u884c\u8d44\u6e90\u6c60\u3001\u5931\u8d25\u91cd\u8bd5\u7b49\u5176\u4ed6\u914d\u7f6e\u3002

    "},{"location":"quick_start/test_track/#5","title":"5 \u67e5\u770b\u6d4b\u8bd5\u62a5\u544a","text":"

    \u5f53\u6d4b\u8bd5\u8ba1\u5212\u4e2d\u7684\u6d4b\u8bd5\u7528\u4f8b\u6267\u884c\u5b8c\u6210\u540e\uff0c\u3010\u62a5\u544a\u3011\u9875\u7b7e\u83dc\u5355\u4e0b\u4f1a\u81ea\u52a8\u751f\u6210\u4e00\u4efd\u6d4b\u8bd5\u62a5\u544a\u3002\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u5c55\u793a\u6d4b\u8bd5\u6267\u884c\u7ed3\u679c\u7684\u8be6\u7ec6\u4fe1\u606f\u5e76\u7edf\u8ba1\u6d4b\u8bd5\u6267\u884c\u7387\u3001\u901a\u8fc7\u7387\u7b49\u6570\u636e\u3002\u6d4b\u8bd5\u62a5\u544a\u8be6\u60c5\u53f3\u4e0a\u89d2\u652f\u6301\u5206\u4eab\u3001\u5bfc\u51fa\u64cd\u4f5c\u3002

    "},{"location":"quick_start/ui_test/","title":"\u4f7f\u7528 UI \u6d4b\u8bd5","text":"

    MeterSphere UI \u6d4b\u8bd5\u63d0\u4f9b\u4e86\u5143\u7d20\u5e93\u3001UI \u81ea\u52a8\u5316\u3001\u6d4b\u8bd5\u62a5\u544a\u7b49UI\u6d4b\u8bd5\u76f8\u5173\u529f\u80fd\u3002 \u7528\u6237\u53ef\u4ee5\u4f7f\u7528\u591a\u7ea7\u6a21\u5757\u6765\u7ec4\u7ec7\u7ba1\u7406\u9879\u76ee\u4e0b\u7684 UI \u81ea\u52a8\u5316\u573a\u666f\uff0c\u6267\u884c\u573a\u666f\uff0c\u751f\u6210\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u3002UI \u6d4b\u8bd5\u6a21\u5757\u662f\u4f01\u4e1a\u7248 X-Pack \u529f\u80fd\u589e\u5f3a\u5305\u529f\u80fd\uff0c\u5982\u9700\u4f7f\u7528\uff0c\u8bf7\u70b9\u51fb\uff1a\u7533\u8bf7\u4f01\u4e1a\u7248\u8bd5\u7528\u3002

    \u6ce8\u610f\u4e8b\u9879

    1. \u4fee\u6539 /opt/metersphere/.env \u6587\u4ef6\uff0cMS_UI_ENABLED=true \u4fee\u6539\u914d\u7f6e\u540e\u52a0\u8f7d\u914d\u7f6e\u6587\u4ef6\u6267\u884c msctl reload\u3002
    2. docker ps \u68c0\u67e5 selenium-hub \u5bb9\u5668\u662f\u5426\u6210\u529f\u542f\u52a8\u3002
    3. v2.8.1\u4e4b\u540e\u7248\u672c\u5728 MeterSphere \u7cfb\u7edf\u53c2\u6570\u8bbe\u7f6e\u4e2d\u4fee\u6539 selenium-docker \u5730\u5740\u4e3ahttp://selenium-hub:4444\u3002\u8be6\u60c5\u53c2\u8003https://bbs.fit2cloud.com/t/topic/127
    4. UI \u6d4b\u8bd5\u7528\u4f8b\uff0c\u9ed8\u8ba4\u52fe\u9009 \"\u6027\u80fd\u6a21\u5f0f\" \u6ca1\u6709\u622a\u56fe\u5c55\u793a\uff0c\u4e0d\u52fe\u9009 \"\u6027\u80fd\u6d4b\u8bd5\" \u53ef\u4ee5\u67e5\u770b\u6bcf\u4e2a\u6b65\u9aa4\u7684\u622a\u56fe\u3002
    5. \u5982\u679c\u5bfc\u5165 License \u6210\u529f\u540e\uff0c\u4f9d\u7136\u6ca1\u6709 UI \u6d4b\u8bd5\u6a21\u5757\uff0c\u8bf7\u5230\u3010\u7528\u6237\u7ec4\u4e0e\u6743\u9650\u3011\u5904\u914d\u7f6e UI \u6a21\u5757\u6743\u9650\u3002
    "},{"location":"quick_start/ui_test/#1","title":"1 \u521b\u5efa\u6a21\u5757","text":"

    MeterSphere \u901a\u8fc7\u6a21\u5757\u6811\u7684\u65b9\u5f0f\u7ec4\u7ec7\u7ba1\u7406\u573a\u666f\uff0c\u7528\u6237\u53ef\u4ee5\u5728\u5de6\u4fa7\u521b\u5efa\u5e76\u7ba1\u7406\u6a21\u5757\u6811\u3002\u5143\u7d20\u5e93\u3001UI\u81ea\u52a8\u5316\u6a21\u5757\u5747\u652f\u6301\u521b\u5efa\u6a21\u5757\u6811\uff0c \u70b9\u51fb\u5de6\u4fa7\u7684\u6a21\u5757\u6811\u4e2d\u7684\u3010\u6dfb\u52a0\u5b50\u6a21\u5757\u3011\u6309\u94ae\uff0c\u4e3a\u8be5\u9879\u76ee\u6dfb\u52a0\u6a21\u5757\u3002

    "},{"location":"quick_start/ui_test/#2","title":"2 \u521b\u5efa\u5143\u7d20","text":"

    \u70b9\u51fb\u5de6\u4fa7\u7684\u6a21\u5757\u6811\u4e2d\u7684\u3010\u6dfb\u52a0\u5b50\u6a21\u5757\u3011 \u6309\u94ae\uff0c\u6dfb\u52a0\u6a21\u5757\uff0c\u7136\u540e\u521b\u5efa\u5143\u7d20\u3002\u5143\u7d20\u5e93\u53ef\u7528\u4e8e\u573a\u666f\u6b65\u9aa4\u4e2d\u5143\u7d20\u7684\u9009\u62e9\u3002

    "},{"location":"quick_start/ui_test/#3","title":"3 \u521b\u5efa\u573a\u666f","text":"

    \u7528\u6237\u53ef\u5728\u5404\u4e2a\u6a21\u5757\u4e2d\u6dfb\u52a0\u573a\u666f\uff0c\u53ef\u4ee5\u624b\u52a8\u521b\u5efa\uff0c\u4e5f\u53ef\u4ee5\u901a\u8fc7\u5bfc\u5165\u7684\u65b9\u5f0f\u521b\u5efa UI \u81ea\u52a8\u5316\u573a\u666f\u3002

    "},{"location":"quick_start/ui_test/#31-selenium-ide","title":"3.1 \u5bfc\u5165 Selenium IDE \u811a\u672c","text":""},{"location":"quick_start/ui_test/#32","title":"3.2 \u624b\u52a8\u521b\u5efa\u573a\u666f","text":"

    \u70b9\u51fb\u53f3\u4fa7\u573a\u666f\u5217\u8868\u4e2d\u7684\u3010+\u3011\u53f7\u6309\u94ae\uff0c\u521b\u5efa\u573a\u666f\u3002

    \u5728\u6253\u5f00\u7684\u3010\u7528\u4f8b\u7f16\u8f91\u3011\u9875\u9762\u4e2d\u586b\u5199\u540d\u79f0\u3001\u6a21\u5757\u3001\u72b6\u6001\u3001\u8d23\u4efb\u4eba\u7b49\u8be6\u7ec6\u4fe1\u606f\u3002

    \u70b9\u51fb\u9875\u9762\u53f3\u4e0b\u89d2\u3010+\u3011\u53f7\uff0c\u53ef\u4ee5\u6dfb\u52a0\u573a\u666f\u6b65\u9aa4\uff0c\u573a\u666f\u6b65\u9aa4\u4e2d\u7684\u64cd\u4f5c\u5bf9\u8c61\u53ef\u4ee5\u9009\u62e9\u3010\u5143\u7d20\u5bf9\u8c61\u3011\u6216\u8005\u3010\u5143\u7d20\u5b9a\u4f4d\u3011\uff0c\u3010\u5143\u7d20\u5bf9\u8c61\u3011\u662f\u4ece\u5143\u7d20\u5e93\u4e2d\u9009\u53d6\u914d\u7f6e\u597d\u7684\u5143\u7d20\uff0c\u3010\u5143\u7d20\u5b9a\u4f4d\u3011\u9700\u8981\u7528\u5143\u7d20\u5b9a\u4f4d\u7684\u65b9\u5f0f\u53bb\u5b9a\u4f4d\u5143\u7d20\u3002 \u4ee5\u767b\u5f55 MeterSphere \u7cfb\u7edf\u4e3a\u4f8b\uff0c\u6dfb\u52a0\u5982\u4e0b\u51e0\u4e2a\u6b65\u9aa4\uff1a

    • \u6dfb\u52a0\u3010\u6d4f\u89c8\u5668\u64cd\u4f5c\u3011\u6b65\u9aa4\uff0c\u8f93\u5165 MeterSphere \u767b\u5f55\u9875\u9762\u5730\u5740\u3002

    • \u6dfb\u52a0\u3010\u8f93\u5165\u7528\u6237\u540d\u3011\u6b65\u9aa4: \u64cd\u4f5c\u5bf9\u8c61\u9009\u62e9\u3010\u5143\u7d20\u5b9a\u4f4d\u3011\uff0c\u5b9a\u4f4d\u65b9\u5f0f\u9009\u62e9\u3010xpath\u3011\uff0cxpath \u8def\u5f84\u8f93\u5165 //input[@placeholder=\"ID \u6216 \u90ae\u7bb1\"]\u3002

    • \u83b7\u53d6 xpath \u8def\u5f84\u65b9\u5f0f\u5982\u4e0b\uff08\u4ee5\u8c37\u6b4c\u6d4f\u89c8\u5668\u4e3a\u4f8b\uff09\uff1a\u6309\u4e0b F12 \u6253\u5f00\u5f53\u524d\u9875\u7684\u3010\u5143\u7d20\u3011\u754c\u9762\uff0c\u9009\u4e2d\u5de6\u4e0a\u65b9\u7684\u3010\u9f20\u6807\u3011\u6309\u94ae\uff0c\u62d6\u5230\u767b\u5f55\u754c\u9762\u7684\u3010\u7528\u6237\u540d\u8f93\u5165\u6846\u3011\u4e0a\uff0c\u70b9\u51fb\u9f20\u6807\u53ef\u5feb\u901f\u5b9a\u4f4d\u5230\u3010\u7528\u6237\u540d\u3011\u7684 html \u5143\u7d20\u5185\u5bb9\uff0c\u8f93\u5165\u3010Ctrl+F\u3011\uff0c\u6839\u636e\u5143\u7d20\u5185\u5bb9\u7684\u5173\u952e\u5c5e\u6027\uff0c\u5728\u6587\u672c\u6846\u4e2d\u8f93\u5165 xpath \u8def\u5f84\uff0c\u5373\u53ef\u5feb\u901f\u5b9a\u4f4d\u5230\u5143\u7d20\uff0c\u5982\u679c\u5143\u7d20\u5185\u5bb9\u53d8\u9ec4\uff0c\u5219\u8868\u793a xpath \u6210\u529f\u5b9a\u4f4d\u5230\u5143\u7d20\u3002

    • \u6dfb\u52a0\u3010\u8f93\u5165\u5bc6\u7801\u3011\u6b65\u9aa4\uff0c\u65b9\u5f0f\u540c\u4e0a\uff0cxpath \u8def\u5f84\u8f93\u5165 //input[@placeholder=\"\u5bc6\u7801\"]\u3002

    • \u6dfb\u52a0\u3010\u70b9\u51fb\u767b\u5f55\u3011\u6b65\u9aa4\uff0c\u70b9\u51fb\u9875\u9762\u53f3\u4e0b\u89d2\u3010+\u3011\u53f7\uff0c\u9009\u62e9\u3010\u9f20\u6807\u64cd\u4f5c\u3011\uff0c\u3010\u6b65\u9aa4\u7c7b\u578b\u3011\u9009\u62e9\u9f20\u6807\u70b9\u51fb\uff0c\u3010\u70b9\u51fb\u65b9\u5f0f\u3011\u9009\u62e9\u5355\u673a\uff0c\u5143\u7d20\u4f4d\u7f6e\u9009\u62e9\u3010\u5143\u7d20\u5b9a\u4f4d\u3011\uff0c\u5b9a\u4f4d\u65b9\u5f0f\u9009\u62e9\u3010xpath\u3011\uff0cxpath \u8def\u5f84\u4e3a //button[@type=\"button\"]\u3002

    "},{"location":"quick_start/ui_test/#4","title":"4 \u5728\u573a\u666f\u6b65\u9aa4\u4e2d\u6dfb\u52a0\u9ad8\u7ea7\u8bbe\u7f6e","text":"

    \u5728\u9ad8\u7ea7\u8bbe\u7f6e\u4e2d\uff0c\u4ee5\u540e\u7f6e\u64cd\u4f5c\u4e3a\u4f8b\uff0c\u9009\u62e9 \u540e\u7f6e\u64cd\u4f5c \uff0c\u70b9\u51fb\u4e0b\u62c9\u6846\uff0c\u9009\u62e9\u9700\u8981\u7684\u65b9\u5f0f\uff0c\u70b9\u51fb\u6dfb\u52a0\u3002\u53ef\u4ee5\u6dfb\u52a0\u540e\u7f6e\u811a\u672c\uff0c\u7b49\u5f85\u65f6\u95f4\uff0c\u65ad\u8a00\u548c\u540e\u7f6e\u63d0\u53d6\u3002

    "},{"location":"quick_start/ui_test/#5-ui","title":"5 \u8c03\u8bd5 UI \u81ea\u52a8\u5316\u573a\u666f","text":"

    \u53ef\u5728\u7f16\u8f91\u573a\u666f\u9875\u9762\u8c03\u8bd5 UI \u573a\u666f\uff0c\u4e5f\u53ef\u4ee5\u5728 UI \u81ea\u52a8\u5316\u573a\u666f\u5217\u8868\u9875\u9762\u6267\u884cUI\u573a\u666f\u3002\u5982\u56fe\u70b9\u51fb\u573a\u666f\u7f16\u8f91\u9875\u9762\u7684\u3010\u751f\u6210\u62a5\u544a\u3011\u6309\u94ae\uff0c\u53ef\u751f\u6210\u5e76\u67e5\u770b\u573a\u666f\u62a5\u544a\u3002 \u52fe\u9009\u6027\u80fd\u6a21\u5f0f\uff0c\u573a\u666f\u62a5\u544a\u4e2d\u65e0\u622a\u56fe\u4fe1\u606f\uff0c\u4e0d\u52fe\u9009\u6027\u80fd\u6a21\u5f0f\uff0c\u573a\u666f\u62a5\u544a\u4e2d\u6709\u622a\u56fe\u4fe1\u606f\u3002

    "},{"location":"quick_start/ui_test/#6","title":"6 \u751f\u6210\u6d4b\u8bd5\u62a5\u544a","text":"

    \u70b9\u51fb\u573a\u666f\u5217\u8868\u4e2d\u6267\u884c\u6309\u94ae\uff0c\u4f1a\u5f39\u51fa\u9875\u9762\u663e\u793a\u672c\u6b21\u573a\u666f\u7684\u6267\u884c\u7ed3\u679c\u3002

    \u67e5\u770b\u62a5\u544a\u4e2d\u6b65\u9aa4\u622a\u56fe\u4fe1\u606f

    \u4e5f\u53ef\u5728\u6d4b\u8bd5\u62a5\u544a\u9875\u9762\u4e2d\uff0c\u627e\u5230\u8981\u67e5\u770b\u7684\u62a5\u544a\uff0c\u70b9\u51fb\u5176\u3010\u62a5\u544a\u8be6\u60c5\u3011\u6309\u94ae\u6253\u5f00\u3010\u6d4b\u8bd5\u62a5\u544a\u3011\u9875\u9762\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u3002

    "},{"location":"teach_video/video_index/","title":"\u6559\u5b66\u89c6\u9891","text":""},{"location":"teach_video/video_index/#1","title":"1 \u8bfe\u7a0b\u7b80\u4ecb\u548c\u7ebf\u4e0a\u73af\u5883\u4ecb\u7ecd","text":""},{"location":"teach_video/video_index/#2","title":"2 \u6d4b\u8bd5\u8ddf\u8e2a","text":""},{"location":"teach_video/video_index/#3","title":"3 \u63a5\u53e3\u6d4b\u8bd5","text":""},{"location":"teach_video/video_index/#4","title":"4 \u6027\u80fd\u6d4b\u8bd5","text":""},{"location":"teach_video/video_index/#5-ui","title":"5 UI \u6d4b\u8bd5","text":""},{"location":"teach_video/video_index/#6-devops","title":"6 \u878d\u5165 DevOps","text":""},{"location":"teach_video/video_index/#7","title":"7 \u5176\u5b83\u89c6\u9891","text":"
    • MeterSphere \u5982\u4f55\u4e0e TAPD\u548c Jira \u5bf9\u63a5
    • MeterSphere \u5982\u4f55\u5bf9\u63a5\u90ae\u4ef6\u3001\u9489\u9489\u3001\u4f01\u4e1a\u5fae\u4fe1
    • \u5982\u4f55\u5728 MeterSphere \u4e2d\u505a\u573a\u666f\u5316\u7684\u63a5\u53e3\u6d4b\u8bd5
    • \u5982\u4f55\u5728 MeterSphere \u4e2d\u5bfc\u5165 Postman \u811a\u672c\u505a\u63a5\u53e3\u6d4b\u8bd5
    • \u5982\u4f55\u5728 MeterSphere \u4e2d\u5bfc\u5165 Swagger UI \u811a\u672c\u505a\u63a5\u53e3\u6d4b\u8bd5
    "},{"location":"tutorial/use_tutorial/","title":"\u4f7f\u7528\u6559\u7a0b","text":""},{"location":"tutorial/use_tutorial/#1","title":"1 \u63a5\u53e3\u6d4b\u8bd5","text":"
    • \u5982\u4f55\u4f7f\u7528 MeterSphere \u8fdb\u884c Dubbo \u534f\u8bae\u63a5\u53e3\u6d4b\u8bd5
    • \u5982\u4f55\u4f7f\u7528 MeterSphere \u8fdb\u884c\u573a\u666f\u5316\u63a5\u53e3\u6d4b\u8bd5
    • \u5982\u4f55\u5728 MeterSphere \u4e2d\u4f7f\u7528 BeanShell \u524d\u7f6e\u811a\u672c\u751f\u6210\u63a5\u53e3\u8ba4\u8bc1\u7b7e\u540d
    • MeterSphere \u4e2d\u5404\u7c7b\u53d8\u91cf\u7684\u8bbe\u7f6e\u548c\u4f7f\u7528\u5168\u6559\u7a0b
    • MeterSphere \u4e2d JMeter \u51fd\u6570\u3001MockJS \u51fd\u6570\u4f7f\u7528\u6559\u7a0b
    • \u57fa\u4e8e MeterSphere \u63a5\u53e3\u81ea\u52a8\u5316\u505a\u6570\u636e\u9a71\u52a8\uff08ddt\uff09\u6d4b\u8bd5
    • MeterSphere Mock \u670d\u52a1\u529f\u80fd\u7684\u521b\u5efa\u548c\u8c03\u7528
    • \u4f7f\u7528 Python \u8c03\u7528 MeterSphere API \u89e6\u53d1\u6d4b\u8bd5\u8ba1\u5212\u6267\u884c
    • MeterSphere \u4e2d\u5e38\u7528 Jmeter \u51fd\u6570\u4f7f\u7528\u8be6\u7ec6
    • MeterSphere \u5feb\u901f\u751f\u6210\u6d4b\u8bd5\u6570\u636e(\u679a\u4e3e\u3001\u6b63\u5219\u3001\u51fd\u6570)
    • MeterSphere \u63a5\u53e3\u6d4b\u8bd5\u73af\u5883\u53ca\u73af\u5883\u7ec4+\u52a8\u6001\u6570\u636e\u6e90\u4f7f\u7528
    • MeterSphere \u6570\u636e\u5e93\u63d0\u53d6\u53c2\u6570\u548c\u65ad\u8a00
    "},{"location":"tutorial/use_tutorial/#2-ui","title":"2 UI \u6d4b\u8bd5","text":"
    • MeterSphere \u7684 UI \u6d4b\u8bd5\u6a21\u5757\u5982\u4f55\u8fdc\u7a0b\u8c03\u7528\u6d4f\u89c8\u5668
    • MeterSphere \u7684 UI \u81ea\u52a8\u5316\u5982\u4f55\u5b9e\u73b0\u6587\u4ef6\u4e0a\u4f20\u7684\u573a\u666f
    • MeterSphere \u7684 UI \u6d4b\u8bd5\u6ed1\u5757\u9a8c\u8bc1\u53ca\u9875\u9762\u6eda\u52a8\u6761\u95ee\u9898\u5904\u7406
    "},{"location":"tutorial/use_tutorial/#3","title":"3 \u670d\u52a1\u96c6\u6210","text":"
    • MeterSphere \u670d\u52a1\u96c6\u6210\u4e4b\u7985\u9053\u5bf9\u63a5
    • MeterSphere \u670d\u52a1\u96c6\u6210\u4e4b JIRA \u5bf9\u63a5
    • MeterSphere \u670d\u52a1\u96c6\u6210\u4e4b TAPD \u5bf9\u63a5
    • MeterSphere \u670d\u52a1\u96c6\u6210 Azure Devops \u5bf9\u63a5
    • \u5728 MeterSphere \u5e73\u53f0\u6dfb\u52a0\u5e76\u4f7f\u7528 Kubernetes \u8d44\u6e90\u6c60
    • MeterSphere\u5f00\u6e90\u6301\u7eed\u6d4b\u8bd5\u5e73\u53f0\u4e0e\u817e\u8baf\u4e91CODING DevOps\u7684\u96c6\u6210
    "},{"location":"tutorial/use_tutorial/#4","title":"4 \u63d2\u4ef6\u4f7f\u7528","text":"
    • MeterSphere \u548c Jenkins \u5b9e\u73b0\u6d41\u6c34\u7ebf\u96c6\u6210
    • MeterSphere\u4e4b\u6d4f\u89c8\u5668\u5f55\u5236\u63d2\u4ef6\uff1achrome-extensions
    • MeterSphere \u63a5\u53e3\u81ea\u52a8\u5316\u63d2\u4ef6\u57fa\u7840\u5f00\u53d1\u6559\u7a0b
    • MeterSphere \u4e4b IDEA \u63a5\u53e3\u540c\u6b65\u63d2\u4ef6
    • Metersphere Selenium IDE\u63d2\u4ef6\u5f55\u5236UI\u811a\u672c
    "},{"location":"tutorial/use_tutorial/#5","title":"5 \u811a\u672c\u5f15\u7528","text":"
    • MeterSphere Python \u524d\u540e\u7f6e\u811a\u672c\u5982\u4f55\u5f15\u7528\u7b2c\u4e09\u65b9\u5e93
    • MeterSphere BeanShell \u524d\u540e\u7f6e\u811a\u672c\u5982\u4f55\u5f15\u7528\u5916\u90e8 Jar \u5305
    • MeterSphere JavaScript \u524d\u540e\u7f6e\u811a\u672c\u5982\u4f55\u5f15\u7528\u5916\u90e8\u5305
    "},{"location":"tutorial/use_tutorial/#6","title":"6 \u9879\u76ee\u8bbe\u7f6e","text":"
    • MeterSphere \u6d88\u606f\u901a\u77e5\u4e4b\u5bf9\u63a5\u90ae\u4ef6\u3001\u9489\u9489\u3001\u4f01\u4e1a\u5fae\u4fe1\u3001\u98de\u4e66
    "},{"location":"user_manual/access_matrix/","title":"\u6743\u9650\u77e9\u9635","text":"\u4e00\u7ea7\u529f\u80fd \u4e8c\u7ea7\u529f\u80fd \u4e09\u7ea7\u529f\u80fd \u5177\u4f53\u7528\u4f8b \u7cfb\u7edf\u7ba1\u7406\u5458 \u5de5\u4f5c\u7a7a\u95f4\u7ba1\u7406\u5458 \u5de5\u4f5c\u7a7a\u95f4\u6210\u5458 \u9879\u76ee\u7ba1\u7406\u5458 \u9879\u76ee\u6210\u5458 \u53ea\u8bfb\u7528\u6237 \u81ea\u5b9a\u4e49\u89d2\u8272 \u7cfb\u7edf\u7ba1\u7406 \u7cfb\u7edf \u7528\u6237\u7ba1\u7406 \u5217\u51fa\u7cfb\u7edf\u4e2d\u7684\u6240\u6709\u7528\u6237 Y * \u6307\u5b9a\u7528\u6237\u00a0ID\u3001\u7528\u6237\u540d\u3001\u90ae\u7bb1\u3001\u7535\u8bdd\u3001\u5bc6\u7801\u7b49\u4fe1\u606f\u521b\u5efa\u65b0\u7528\u6237 Y * \u4fee\u6539\u6307\u5b9a\u7528\u6237\u7684\u7528\u6237\u540d\u3001\u90ae\u7bb1\u3001\u7535\u8bdd\u3001\u5bc6\u7801\u7b49\u4fe1\u606f Y * \u6dfb\u52a0\u3001\u4fee\u6539\u6307\u5b9a\u7528\u6237\u7684\u89d2\u8272 Y * \u5220\u9664\u6307\u5b9a\u7528\u6237 Y * \u542f\u7528\u3001\u7981\u7528\u6307\u5b9a\u7528\u6237\uff0c\u7528\u6237\u7981\u7528\u540e\u65e0\u6cd5\u767b\u5f55\u7cfb\u7edf Y * \u5de5\u4f5c\u7a7a\u95f4\u7ba1\u7406 \u5217\u51fa\u7cfb\u7edf\u4e2d\u7684\u6240\u6709\u5de5\u4f5c\u7a7a\u95f4 Y * \u6307\u5b9a\u5de5\u4f5c\u7a7a\u95f4\u540d\u79f0\u3001\u63cf\u8ff0\u53ca\u6240\u5c5e\u7ec4\u7ec7\u7b49\u4fe1\u606f\u521b\u5efa\u65b0\u5de5\u4f5c\u7a7a\u95f4 Y * \u4fee\u6539\u6307\u5b9a\u5de5\u4f5c\u7a7a\u95f4\u7684\u540d\u79f0\u3001\u63cf\u8ff0\u53ca\u6240\u5c5e\u7ec4\u7ec7\u7b49\u4fe1\u606f Y * \u5220\u9664\u6307\u5b9a\u5de5\u4f5c\u7a7a\u95f4 Y * \u7528\u6237\u7ec4\u4e0e\u6743\u9650\u7ba1\u7406 \u5217\u51fa\u7cfb\u7edf\u6240\u6709\u89d2\u8272\u4fe1\u606f Y * \u521b\u5efa\u3001\u4fee\u6539\u7528\u6237\u7ec4\u57fa\u672c\u4fe1\u606f Y * \u4fee\u6539\u7528\u6237\u7ec4\u6743\u9650 Y * \u7ed9\u7528\u6237\u7ec4\u6dfb\u52a0\u3001\u5220\u9664\u6210\u5458 Y * \u5220\u9664\u7528\u6237\u7ec4 Y * \u6d4b\u8bd5\u8d44\u6e90\u6c60\u7ba1\u7406 \u5217\u51fa\u7cfb\u7edf\u4e2d\u7684\u6240\u6709\u6d4b\u8bd5\u8d44\u6e90\u6c60 Y * \u8bbe\u7f6e\u6d4b\u8bd5\u8d44\u6e90\u6c60\u540d\u79f0\u3001\u5177\u4f53\u914d\u7f6e\u7b49\u4fe1\u606f\u521b\u5efa\u65b0\u6d4b\u8bd5\u8d44\u6e90\u6c60 Y * \u4fee\u6539\u6307\u5b9a\u6d4b\u8bd5\u8d44\u6e90\u6c60\u7684\u540d\u79f0\u3001\u5177\u4f53\u7b49\u4fe1\u606f Y * \u5220\u9664\u6307\u5b9a\u6d4b\u8bd5\u8d44\u6e90\u6c60 Y * \u542f\u7528\u3001\u7981\u7528\u6307\u5b9a\u6d4b\u8bd5\u8d44\u6e90\u6c60 Y * \u7ed9\u6307\u5b9a\u8d44\u6e90\u6c60\u6dfb\u52a0\u3001\u5220\u9664\u538b\u529b\u8282\u70b9 Y * \u7cfb\u7edf\u8bbe\u7f6e \u57fa\u672c\u4fe1\u606f\u914d\u7f6e Y * \u90ae\u4ef6\u8bbe\u7f6e Y * LDAP\u8bbe\u7f6e Y * \u5de5\u4f5c\u7a7a\u95f4 \u5de5\u4f5c\u7a7a\u95f4\u6210\u5458\u7ba1\u7406 \u5217\u51fa\u8be5\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u7684\u6240\u6709\u6210\u5458\u53ca\u5176\u89d2\u8272\u4fe1\u606f Y * \u9009\u62e9\u7cfb\u7edf\u4e2d\u5df2\u6709\u7528\u6237\u5e76\u6307\u5b9a\u5de5\u4f5c\u7a7a\u95f4\u7ea7\u89d2\u8272\u6dfb\u52a0\u81f3\u5de5\u4f5c\u7a7a\u95f4\u6210\u5458 Y * \u4fee\u6539\u6307\u5b9a\u6210\u5458\u5728\u8be5\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u7684\u89d2\u8272 Y * \u4ece\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u5220\u9664\u6307\u5b9a\u6210\u5458\uff08\u53bb\u9664\u89d2\u8272\u4fe1\u606f\uff09 Y * \u670d\u52a1\u96c6\u6210 \u914d\u7f6eTapd\u3001Jira\u3001\u7985\u9053\u7b49\u670d\u52a1\u96c6\u6210\u4fe1\u606f Y Y Y * \u4e2a\u4eba\u4fe1\u606f \u4e2a\u4eba\u8bbe\u7f6e \u4fee\u6539\u81ea\u5df1\u7684\u7528\u6237\u540d\u3001\u90ae\u7bb1\u3001\u7535\u8bdd\u3001\u5bc6\u7801\u7b49\u4fe1\u606f Y Y Y Y Y Y * \u6d4b\u8bd5\u8ddf\u8e2a \u9996\u9875 Y Y Y \u9879\u76ee \u9879\u76ee \u5217\u51fa\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u7684\u6240\u6709\u9879\u76ee Y Y Y \u6307\u5b9a\u9879\u76ee\u540d\u79f0\u3001\u63cf\u8ff0\u7b49\u4fe1\u606f\uff0c\u5728\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u521b\u5efa\u65b0\u9879\u76ee Y Y \u4fee\u6539\u6307\u5b9a\u9879\u76ee\u7684\u540d\u79f0\u3001\u63cf\u8ff0\u7b49\u4fe1\u606f Y Y \u5220\u9664\u6307\u5b9a\u9879\u76ee Y Y \u5728\u9879\u76ee\u5217\u8868\u4e2d\u70b9\u51fb\u9879\u76ee\u540d\u79f0\uff0c\u8fdb\u5165\u8be5\u9879\u76ee\u4e0b\u7684\u6d4b\u8bd5\u7528\u4f8b\u9875\u9762 Y Y Y \u6d4b\u8bd5\u7528\u4f8b \u6d4b\u8bd5\u7528\u4f8b\u6811 \u4ee5\u6811\u72b6\u5f62\u5f0f\u5c55\u793a\u9879\u76ee\u7684\u6a21\u5757\u53ca\u5b50\u6a21\u5757 Y Y Y \u5728\u7528\u4f8b\u6811\u4e2d\u7684\u4efb\u4e00\u8282\u70b9\u5747\u53ef\u521b\u5efa\u8be5\u8282\u70b9\u7684\u5b50\u8282\u70b9\uff0c\u7528\u4f8b\u6811\u6700\u591a\u652f\u6301\u00a05\u00a0\u7ea7\u5b50\u8282\u70b9 Y Y \u901a\u8fc7\u524d\u7aef\u62d6\u62fd\u7684\u65b9\u5f0f\u79fb\u52a8\u7528\u4f8b\u6811\u7684\u67d0\u4e2a\u8282\u70b9\u5230\u6307\u5b9a\u4f4d\u7f6e Y Y \u4ece\u7528\u4f8b\u6811\u4e2d\u5220\u9664\u67d0\u4e2a\u8282\u70b9\uff0c\u8be5\u8282\u70b9\u53ca\u5176\u5b50\u8282\u70b9\u4e0b\u4e0b\u7684\u6240\u6709\u7528\u4f8b\uff0c\u79fb\u52a8\u5230\u540d\u4e3a\u2018\u672a\u5f52\u7c7b\u7528\u4f8b\u00a0\u2019\u7684\u865a\u62df1\u00a0\u7ea7\u8282\u70b9 Y Y \u6d4b\u8bd5\u7528\u4f8b\u7ba1\u7406 \u4ee5\u5217\u8868\u5f62\u5f0f\u5c55\u793a\u5f53\u524d\u9009\u4e2d\u7684\u7528\u4f8b\u6811\u67d0\u8282\u70b9\u4e0b\u7684\u6240\u6709\u7528\u4f8b Y Y Y \u5728\u5f53\u524d\u9009\u4e2d\u7684\u7528\u4f8b\u6811\u8282\u70b9\u4e0b\uff0c\u65b0\u5efa\u6d4b\u8bd5\u7528\u4f8b\uff1b\u6d4b\u8bd5\u7528\u4f8b\u4fe1\u606f\u5305\u542b\u7528\u4f8b\u540d\u79f0\u3001\u6240\u5c5e\u6a21\u5757\u3001\u4f18\u5148\u7ea7\u3001\u6267\u884c\u6b65\u9aa4\u7b49\u4fe1\u606f Y Y \u5220\u9664\u6307\u5b9a\u7684\u6d4b\u8bd5\u7528\u4f8b Y Y \u9009\u62e9\u67d0\u4e2a\u6d4b\u8bd5\u7528\u4f8b\uff0c\u7f16\u8f91\u4fee\u6539\u6d4b\u8bd5\u7528\u4f8b\u76f8\u5173\u4fe1\u606f Y Y \u9009\u62e9\u67d0\u4e2a\u6d4b\u8bd5\u7528\u4f8b\uff0c\u7f16\u8f91\u4fee\u6539\u6d4b\u8bd5\u7528\u4f8b\u7ef4\u62a4\u4eba\u4fe1\u606f Y Y \u6d4b\u8bd5\u8ba1\u5212 \u6d4b\u8bd5\u8ba1\u5212\u5217\u8868 \u4ee5\u5217\u8868\u5f62\u5f0f\u5c55\u793a\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u6240\u6709\u9879\u76ee\u4e0b\u7684\u6240\u6709\u6d4b\u8bd5\u8ba1\u5212 Y Y Y \u6307\u5b9a\u6d4b\u8bd5\u8ba1\u5212\u7684\u540d\u79f0\u3001\u63cf\u8ff0\u3001\u6240\u5c5e\u9879\u76ee\u7b49\u4fe1\u606f\u521b\u5efa\u6d4b\u8bd5\u8ba1\u5212 Y Y \u9009\u62e9\u67d0\u4e2a\u6d4b\u8bd5\u8ba1\u5212\uff0c\u7f16\u8f91\u4fee\u6539\u6d4b\u8bd5\u8ba1\u5212\u76f8\u5173\u4fe1\u606f Y Y \u6d4b\u8bd5\u8ba1\u5212\u4e2d\u7684\u7528\u4f8b\u7ba1\u7406 \u4ece\u8be5\u6d4b\u8bd5\u8ba1\u5212\u6240\u5c5e\u9879\u76ee\u4e2d\uff0c\u9009\u62e9\u7528\u4f8b\u6811\u8282\u70b9\u6216\u5177\u4f53\u7528\u4f8b\uff0c\u6dfb\u52a0\u5230\u8be5\u6d4b\u8bd5\u8ba1\u5212\uff0c\u5e76\u6307\u5b9a\u8be5\u7528\u4f8b\u7684\u6267\u884c\u4eba\u7b49\u4fe1\u606f Y Y \u4ee5\u53ea\u8bfb\u7684\u5f62\u5f0f\u5c55\u793a\u5f53\u524d\u5df2\u6dfb\u52a0\u5230\u6d4b\u8bd5\u8ba1\u5212\u4e2d\u7684\u7528\u4f8b\u6811 Y Y Y \u4ee5\u5217\u8868\u5f62\u5f0f\u5c55\u793a\u5f53\u524d\u9009\u4e2d\u7684\u7528\u4f8b\u6811\u67d0\u8282\u70b9\u4e0b\u7684\u6240\u6709\u7528\u4f8b Y Y Y \u9009\u62e9\u6d4b\u8bd5\u8ba1\u5212\u4e2d\u7684\u67d0\u4e2a\u6d4b\u8bd5\u7528\u4f8b\uff0c\u7f16\u8f91\u4fee\u6539\u6267\u884c\u4eba\u7b49\u76f8\u5173\u4fe1\u606f Y Y \u9009\u62e9\u6d4b\u8bd5\u8ba1\u5212\u4e2d\u7684\u67d0\u4e2a\u6d4b\u8bd5\u7528\u4f8b\uff0c\u7f16\u8f91\u4fee\u6539\u6267\u884c\u7ed3\u679c\u7b49\u76f8\u5173\u4fe1\u606f Y Y \u63a5\u53e3\u6d4b\u8bd5 \u9879\u76ee \u5217\u51fa\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u7684\u6240\u6709\u9879\u76ee Y Y Y \u6307\u5b9a\u9879\u76ee\u540d\u79f0\u3001\u63cf\u8ff0\u7b49\u4fe1\u606f\uff0c\u5728\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u521b\u5efa\u65b0\u9879\u76ee Y Y \u4fee\u6539\u6307\u5b9a\u9879\u76ee\u7684\u540d\u79f0\u3001\u63cf\u8ff0\u7b49\u4fe1\u606f Y Y \u5220\u9664\u6307\u5b9a\u9879\u76ee Y Y \u5728\u9879\u76ee\u5217\u8868\u4e2d\u70b9\u51fb\u9879\u76ee\u540d\u79f0\uff0c\u8fdb\u5165\u8be5\u9879\u76ee\u4e0b\u7684\u63a5\u53e3\u7ba1\u7406\u9875\u9762 Y Y Y \u63a5\u53e3 TBD Y Y Y \u6d4b\u8bd5 \u4ee5\u5217\u8868\u5f62\u5f0f\u5c55\u793a\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u6240\u6709\u9879\u76ee\u4e0b\u7684\u6240\u6709\u63a5\u53e3\u6d4b\u8bd5 Y Y Y \u70b9\u51fb\u521b\u5efa\u6d4b\u8bd5\u6309\u94ae\uff0c\u9009\u62e9\u6d4b\u8bd5\u6240\u5c5e\u9879\u76ee\uff0c\u586b\u5199\u6d4b\u8bd5\u7684\u5177\u4f53\u914d\u7f6e\u4fe1\u606f\u5e76\u4fdd\u5b58\u6d4b\u8bd5 Y Y \u5220\u9664\u6307\u5b9a\u7684\u63a5\u53e3\u6d4b\u8bd5 Y Y \u9009\u62e9\u67d0\u4e2a\u63a5\u53e3\u6d4b\u8bd5\uff0c\u67e5\u770b\u5e76\u7f16\u8f91\u4fee\u6539\u8be5\u63a5\u53e3\u6d4b\u8bd5\u5177\u4f53\u4fe1\u606f Y Y \u4ec5\u67e5\u770b \u9009\u62e9\u67d0\u4e2a\u63a5\u53e3\u6d4b\u8bd5\u6267\u884c\u8be5\u6d4b\u8bd5\uff0c\u6d4b\u8bd5\u5f00\u59cb\u6267\u884c\u540e\u81ea\u52a8\u8df3\u8f6c\u5230\u8be5\u6b21\u6267\u884c\u4ea7\u751f\u7684\u6d4b\u8bd5\u62a5\u544a Y Y \u62a5\u544a \u4ee5\u5217\u8868\u5f62\u5f0f\u5c55\u793a\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u6240\u6709\u9879\u76ee\u4e0b\u7684\u6240\u6709\u6d4b\u8bd5\u62a5\u544a Y Y Y \u5220\u9664\u6307\u5b9a\u7684\u6d4b\u8bd5\u62a5\u544a Y Y \u9009\u62e9\u67d0\u4e2a\u6d4b\u8bd5\u62a5\u544a\uff0c\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u8be6\u7ec6\u5185\u5bb9 Y Y Y \u9009\u62e9\u591a\u4e2a\u6d4b\u8bd5\u62a5\u544a\u5bf9\u6bd4\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u5185\u5bb9 Y Y Y \u6027\u80fd\u6d4b\u8bd5 \u9879\u76ee \u5217\u51fa\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u7684\u6240\u6709\u9879\u76ee Y Y Y \u6307\u5b9a\u9879\u76ee\u540d\u79f0\u3001\u63cf\u8ff0\u7b49\u4fe1\u606f\uff0c\u5728\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u521b\u5efa\u65b0\u9879\u76ee Y Y \u4fee\u6539\u6307\u5b9a\u9879\u76ee\u7684\u540d\u79f0\u3001\u63cf\u8ff0\u7b49\u4fe1\u606f Y Y \u5220\u9664\u6307\u5b9a\u9879\u76ee Y Y \u6d4b\u8bd5 \u4ee5\u5217\u8868\u5f62\u5f0f\u5c55\u793a\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u6240\u6709\u9879\u76ee\u4e0b\u7684\u6240\u6709\u6027\u80fd\u6d4b\u8bd5 Y Y Y \u70b9\u51fb\u521b\u5efa\u6d4b\u8bd5\u6309\u94ae\uff0c\u9009\u62e9\u6d4b\u8bd5\u6240\u5c5e\u9879\u76ee\uff0c\u586b\u5199\u6d4b\u8bd5\u7684\u5177\u4f53\u914d\u7f6e\u4fe1\u606f\u5e76\u4fdd\u5b58\u6d4b\u8bd5 Y Y \u5220\u9664\u6307\u5b9a\u7684\u6027\u80fd\u6d4b\u8bd5 Y Y \u9009\u62e9\u67d0\u4e2a\u6027\u80fd\u6d4b\u8bd5\uff0c\u67e5\u770b\u5e76\u7f16\u8f91\u4fee\u6539\u8be5\u6027\u80fd\u6d4b\u8bd5\u5177\u4f53\u4fe1\u606f Y Y \u4ec5\u67e5\u770b \u9009\u62e9\u67d0\u4e2a\u6027\u80fd\u6d4b\u8bd5\u6267\u884c\u8be5\u6d4b\u8bd5\uff0c\u6d4b\u8bd5\u5f00\u59cb\u6267\u884c\u540e\u81ea\u52a8\u8df3\u8f6c\u5230\u8be5\u6b21\u6267\u884c\u4ea7\u751f\u7684\u6d4b\u8bd5\u62a5\u544a Y Y \u62a5\u544a \u4ee5\u5217\u8868\u5f62\u5f0f\u5c55\u793a\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u6240\u6709\u9879\u76ee\u4e0b\u7684\u6240\u6709\u6d4b\u8bd5\u62a5\u544a Y Y Y \u5220\u9664\u6307\u5b9a\u7684\u6d4b\u8bd5\u62a5\u544a Y Y \u9009\u62e9\u67d0\u4e2a\u6d4b\u8bd5\u62a5\u544a\uff0c\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u8be6\u7ec6\u5185\u5bb9 Y Y Y \u9009\u62e9\u591a\u4e2a\u6d4b\u8bd5\u62a5\u544a\u5bf9\u6bd4\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u5185\u5bb9 Y Y Y"},{"location":"user_manual/api_test/","title":"Api test","text":"

    \u4f20\u7edf\u7684\u63a5\u53e3\u81ea\u52a8\u5316\u6d4b\u8bd5\u5927\u591a\u501f\u52a9\u7b2c\u4e09\u65b9\u6d4b\u8bd5\u6846\u67b6\uff0c\u4ee5\u4ee3\u7801\u5de5\u7a0b\u9879\u76ee\u7684\u5f62\u5f0f\u5b9e\u73b0\uff0c\u4e0d\u5229\u4e8e\u7ba1\u7406\u548c\u7ef4\u62a4\uff1b MeterSphere \u4e3a\u4e86\u89e3\u51b3\u8fd9\u4e2a\u95ee\u9898\uff0c\u5f00\u53d1\u4e86\u53ef\u89c6\u5316\u63a5\u53e3\u81ea\u52a8\u5316\u6d4b\u8bd5\u529f\u80fd\uff0c\u53ea\u9700\u8981\u914d\u7f6e\u6bcf\u4e2a\u63a5\u53e3\u7684\u5165\u53c2\u548c \u65ad\u8a00\uff0c\u5373\u53ef\u5b9e\u73b0\u5bf9\u63a5\u53e3\u7684\u81ea\u52a8\u5316\u6d4b\u8bd5\uff0c\u540c\u65f6\u8fd8\u5f00\u53d1\u4e86\u57fa\u4e8echrome\u6d4f\u89c8\u5668\u7684MeterSphere Recorder\u63d2\u4ef6\uff0c\u65b9\u4fbf\u5f55\u5236\u573a\u666f\u4ee5\u53ca\u5feb\u901f\u5bfc\u5165\u573a\u666f\uff0c\u5927\u5927\u63d0\u5347\u4e86\u63a5\u53e3\u6d4b\u8bd5\u7684\u6548\u7387\u3002

    "},{"location":"user_manual/api_test/#_1","title":"\u9996\u9875","text":"

    \u7531\u6d4b\u8bd5\u3001\u62a5\u544a\u3001\u6d4b\u8bd5\u65e5\u5386\u4e09\u4e2a\u90e8\u5206\u7ec4\u6210\uff0c\u53ef\u5feb\u901f\u4e86\u89e3\u5230\u6700\u8fd1\u6267\u884c\u7684\u6d4b\u8bd5\u5185\u5bb9\u4ee5\u53ca\u6574\u4f53\u7684\u63a5\u53e3\u6d4b\u8bd5\u9891\u6b21\u3002

    • \u6d4b\u8bd5\uff1a\u5c55\u793a\u6700\u8fd1 5 \u6b21\u6267\u884c\u7684\u63a5\u53e3\u6d4b\u8bd5

    • \u62a5\u544a\uff1a\u5c55\u793a\u6700\u8fd1 5 \u6b21\u6267\u884c\u7684\u63a5\u53e3\u6d4b\u8bd5\u6240\u751f\u6210\u7684\u62a5\u544a

    • \u6d4b\u8bd5\u65e5\u5386\uff1a\u6309\u65f6\u95f4\u7ef4\u5ea6\u5c55\u793a\u63a5\u53e3\u6d4b\u8bd5\u6267\u884c\u7684\u9891\u6b21\uff0c\u989c\u8272\u8d8a\u6df1\uff0c\u4ee3\u8868\u4f7f\u7528\u9891\u6b21\u8d8a\u9ad8

    "},{"location":"user_manual/api_test/#_2","title":"\u9879\u76ee","text":"

    \u5bf9\u9879\u76ee\u8fdb\u884c\u65b0\u589e\u3001\u4fee\u6539\u3001\u5220\u9664\u3001\u67e5\u8be2\u64cd\u4f5c

    "},{"location":"user_manual/api_test/#_3","title":"\u65b0\u589e\u9879\u76ee","text":"

    \u70b9\u51fb\u201c\u521b\u5efa\u9879\u76ee\u201d\uff0c\u5f55\u5165\u9879\u76ee\u540d\u79f0\u548c\u63cf\u8ff0

    "},{"location":"user_manual/api_test/#_4","title":"\u4fee\u6539\u9879\u76ee","text":"

    \u9009\u62e9\u8981\u4fee\u6539\u7684\u9879\u76ee\uff0c\u70b9\u51fb\u7f16\u8f91\u6309\u94ae

    "},{"location":"user_manual/api_test/#_5","title":"\u5220\u9664\u9879\u76ee","text":"

    \u9009\u62e9\u8981\u5220\u9664\u7684\u9879\u76ee\uff0c\u70b9\u51fb\u5220\u9664\u6309\u94ae

    "},{"location":"user_manual/api_test/#_6","title":"\u67e5\u8be2\u9879\u76ee","text":"

    \u67e5\u8be2\u5168\u90e8\u9879\u76ee\u9009\u62e9\u201c\u663e\u793a\u5168\u90e8\u201d\uff0c\u67e5\u8be2\u5355\u4e2a\u9879\u76ee\u53ef\u4ee5\u6839\u636e\u540d\u79f0\u641c\u7d22

    "},{"location":"user_manual/api_test/#_7","title":"\u73af\u5883\u914d\u7f6e","text":"

    \u53ef\u4ee5\u6dfb\u52a0\u8be5\u9879\u76ee\u4e0b\u63a5\u53e3\u7684\u5b9e\u9645\u73af\u5883\uff0c\u589e\u52a0\u4e86\u5168\u5c40 header\uff0c\u53ef\u4ee5\u5728\u9879\u76ee\u4e2d\u8bbe\u7f6e\u5168\u5c40 header \u503c\u3002\u5728\u63a5\u53e3\u8fd0\u884c\u9875\u9762\u7684\u573a\u666f\u4e2d\u4e5f\u589e\u52a0\u73af\u5883\u914d\u7f6e\u5f39\u5c42\u3002

    \u65b0\u589e\u5168\u5c40\u53d8\u91cf\uff0c\u53ef\u4ee5\u5728\u73af\u5883\u5217\u8868\u4e2d\u5b9a\u4e49\u5168\u5c40\u53d8\u91cf\u7684\u540d\u79f0\u548c\u503c\uff0c\u63a5\u53e3\u6d4b\u8bd5\u91cc\u9762\u53ef\u4ee5\u901a\u8fc7$(xx)\u6765\u8bbf\u95ee\u5f53\u524d\u73af\u5883\u53d8\u91cf\u4e0b\u5b9a\u4e49\u7684\u5168\u5c40\u53d8\u91cf

    "},{"location":"user_manual/api_test/#_8","title":"\u6d4b\u8bd5","text":"

    \u5bf9\u6d4b\u8bd5\u63a5\u53e3\u6216\u63a5\u53e3\u96c6\u5408\u8fdb\u884c\u65b0\u589e\u3001\u4fee\u6539\u3001\u5220\u9664\u3001\u67e5\u8be2\u64cd\u4f5c

    "},{"location":"user_manual/api_test/#_9","title":"\u521b\u5efa\u6d4b\u8bd5","text":"

    \u70b9\u51fb\u521b\u5efa\u6d4b\u8bd5\uff0c\u5982\u56fe 5 \u6b65\u5373\u53ef\u6210\u529f\u521b\u5efa\u63a5\u53e3\u6d4b\u8bd5

    \u76ee\u524d\u652f\u6301HTTP\u3001DUBBO \u4e24\u79cd\u534f\u8bae\u7684\u63a5\u53e3\u6d4b\u8bd5

    "},{"location":"user_manual/api_test/#_10","title":"\u573a\u666f\u914d\u7f6e","text":"

    \u573a\u666f\u5185\u7684\u5168\u5c40\u53d8\u91cf\u548c\u8bf7\u6c42\u5934\u914d\u7f6e\uff0c\u4f5c\u7528\u57df\u4e3a\u573a\u666f\u5185

    "},{"location":"user_manual/api_test/#_11","title":"\u73af\u5883\u914d\u7f6e","text":"

    \u573a\u666f\u4e2d\u53ef\u4ee5\u914d\u7f6e\u73af\u5883

    "},{"location":"user_manual/api_test/#_12","title":"\u81ea\u5b9a\u4e49\u53d8\u91cf","text":"

    \u5728\u573a\u666f\u914d\u7f6e\u4e2d\u81ea\u5b9a\u4e49\u53d8\u91cf\u7684\u540d\u79f0\u548c\u503c\uff0c \u63a5\u53e3\u8fd0\u884c\u6216\u8005\u6d4b\u8bd5\u96c6\u5408\u91cc\u9762\u53ef\u4ee5\u901a\u8fc7 ${BASE} \u6765\u8bbf\u95ee\u5f53\u524d\u573a\u666f\u4e0b\u5b9a\u4e49\u7684\u5168\u5c40\u53d8\u91cf

    "},{"location":"user_manual/api_test/#_13","title":"\u8bf7\u6c42\u5934","text":"

    \u8fd9\u91cc\u589e\u52a0\u5168\u5c40 header\uff0c\u53ef\u4ee5\u5728\u9879\u76ee\u4e2d\u8bbe\u7f6e\u5168\u5c40 header \u503c

    "},{"location":"user_manual/api_test/#dubbo","title":"Dubbo\u914d\u7f6e","text":"

    \u4e3b\u8981\u7528\u4e8eDubbo RPC\u63a5\u53e3\u6d4b\u8bd5

    \u534f\u8bae\u652f\u6301\uff1azookeeper\u3001nacos\u3001Apollo

    dubbo\u53c2\u6570\u652f\u6301\uff1aconnections\u3001loadbalance\u3001async

    "},{"location":"user_manual/api_test/#_14","title":"\u8bf7\u6c42\u914d\u7f6e","text":""},{"location":"user_manual/api_test/#http","title":"HTTP\u8bf7\u6c42","text":""},{"location":"user_manual/api_test/#_15","title":"\u5f15\u7528\u73af\u5883","text":"

    \u5f15\u7528\u73af\u5883\u5f00\u542f\u540e\uff0c\u53ef\u4ee5\u5f15\u7528\u73af\u5883\u4e2d\u7684\u57df\u540d\u3001\u8bf7\u6c42\u5934\u548c\u53d8\u91cf

    "},{"location":"user_manual/api_test/#_16","title":"\u8bf7\u6c42\u53c2\u6570","text":"

    \u63a5\u53e3 url \u7684\u67e5\u8be2\u5b57\u7b26\u4e32

    "},{"location":"user_manual/api_test/#_17","title":"\u8bf7\u6c42\u5934","text":"

    http\u8bf7\u6c42\u7684header\uff0c\u4f5c\u7528\u57df\u4e3a\u8bf7\u6c42\u5185

    "},{"location":"user_manual/api_test/#_18","title":"\u8bf7\u6c42\u5185\u5bb9","text":"

    http \u8bf7\u6c42\u7684 body \u90e8\u5206\uff0c\u5982\u679c http \u8bf7\u6c42\u65b9\u5f0f\u662f post\uff0c put \u7b49\u8bf7\u6c42\u65b9\u5f0f\u65f6\u4f1a\u6709 \u8bf7\u6c42\u5185\u5bb9 \u90e8\u5206\uff0c\u5f62\u5f0f\u67092\u79cd\uff0c\u5206\u522b\u662f \u952e\u503c\u5bf9\uff08form\uff09\u3001\u6587\u672c\uff08json\uff09

    "},{"location":"user_manual/api_test/#dubbo_1","title":"DUBBO\u8bf7\u6c42","text":"

    Dubbo \u8bf7\u6c42\u7531\u534f\u8bae\u3001\u914d\u7f6e\u4e2d\u5fc3\u3001\u8bf7\u6c42\u53c2\u6570\u4e09\u90e8\u5206\u7ec4\u5408\u800c\u6210

    "},{"location":"user_manual/api_test/#dubbo_2","title":"Dubbo \u534f\u8bae","text":"

    \u76ee\u524d\u4ec5\u652f\u6301dubbo\u534f\u8bae

    "},{"location":"user_manual/api_test/#_19","title":"\u914d\u7f6e\u4e2d\u5fc3","text":"

    Interface

    Config Center \u914d\u7f6e\u4e2d\u5fc3\uff0c\u534f\u8bae\u652f\u6301 Zookeeper\u3001Nacos\u3001Apollo

    Registry Center \u6ce8\u518c\u4e2d\u5fc3\uff0c\u652f\u6301 Zookeeper\u3001Redis\u3001Multicast\u3001simple

    Consumer & Service

    "},{"location":"user_manual/api_test/#_20","title":"\u8bf7\u6c42\u53c2\u6570","text":"

    Args

    "},{"location":"user_manual/api_test/#_21","title":"\u65ad\u8a00","text":"

    \u65ad\u8a00\u652f\u6301\u6587\u672c\u3001\u6b63\u5219\u548c\u54cd\u5e94\u65f6\u95f4\u4e09\u79cd\u65b9\u5f0f\uff0c\u9009\u62e9\u65ad\u8a00\u65b9\u5f0f\u540e\uff0c\u70b9\u51fb\u201c+\u201d\u751f\u6210\u89c4\u5219\u5373\u53ef\u751f\u6548

    "},{"location":"user_manual/api_test/#_22","title":"\u63d0\u53d6","text":"

    \u652f\u6301\u4ece\u54cd\u5e94\u4e2d\u63d0\u53d6\u8fd4\u56de\u503c\u4f5c\u4e3a\u53d8\u91cf\u5b58\u50a8\uff0c\u4f5c\u7528\u57df\u4e3a\u573a\u666f\u5185\uff0c\u63d0\u53d6\u65b9\u5f0f\u4e3a\u6b63\u5219\u3001JSONPath\u3001XPath\u4e09\u79cd

    "},{"location":"user_manual/api_test/#_23","title":"\u4fee\u6539\u6d4b\u8bd5","text":"

    \u8bf7\u6c42\u6267\u884c\u987a\u5e8f\u548c\u573a\u666f\u6267\u884c\u987a\u5e8f\u652f\u6301\u62d6\u62fd\u8c03\u6574\uff1b\u53d8\u66f4\u7ed3\u675f\u70b9\u51fb\u4fdd\u5b58

    "},{"location":"user_manual/api_test/#_24","title":"\u5220\u9664\u6d4b\u8bd5","text":"

    \u70b9\u51fb\u6d4b\u8bd5-\u663e\u793a\u5168\u90e8\uff0c\u9009\u62e9\u8981\u5220\u9664\u7684\u6d4b\u8bd5\uff0c\u70b9\u51fb\u5220\u9664\u6309\u94ae

    "},{"location":"user_manual/api_test/#_25","title":"\u67e5\u8be2\u6d4b\u8bd5","text":"

    \u67e5\u8be2\u5168\u90e8\u6d4b\u8bd5\uff0c\u70b9\u51fb\u663e\u793a\u5168\u90e8\uff0c\u67e5\u8be2\u5355\u4e2a\u6d4b\u8bd5\u53ef\u4ee5\u6839\u636e\u540d\u79f0\u641c\u7d22

    "},{"location":"user_manual/api_test/#_26","title":"\u6267\u884c\u6d4b\u8bd5","text":"

    \u4fdd\u5b58\u6210\u529f\u7684\u6d4b\u8bd5\u70b9\u51fb\u201c\u6267\u884c\u201d\u6309\u94ae\uff0c\u7f16\u8f91\u5b8c\u6210\u7684\u6d4b\u8bd5\u4e5f\u53ef\u4ee5\u70b9\u51fb\u201c\u4fdd\u5b58\u5e76\u6267\u884c\u201d\u6309\u94ae\uff0c\u9875\u9762\u5c06\u4f1a\u8df3\u8f6c\u5230\u5f53\u524d\u6d4b\u8bd5\u7684\u6d4b\u8bd5\u62a5\u544a\u4e2d\u3002

    "},{"location":"user_manual/api_test/#_27","title":"\u5b9a\u65f6\u4efb\u52a1","text":"

    \u4fdd\u5b58\u6210\u529f\u7684\u6d4b\u8bd5\uff0c\u53ef\u4ee5\u8bbe\u7f6e\u5b9a\u65f6\u4efb\u52a1\uff0c\u6d4b\u8bd5\u5c06\u4f1a\u5728\u6307\u5b9a\u65f6\u95f4\u8fd0\u884c\u5e76\u4ea7\u751f\u6d4b\u8bd5\u62a5\u544a

    "},{"location":"user_manual/api_test/#_28","title":"\u521b\u5efa\u5b9a\u65f6\u4efb\u52a1","text":"

    \u70b9\u51fbSCHEDULER\u53ef\u4ee5\u7f16\u8f91\u5b9a\u65f6\u4efb\u52a1\uff0c\u70b9\u51fb\u201c\u751f\u6210\u8868\u8fbe\u5f0f\u201d\u53ef\u5feb\u901f\u751f\u6210cron\u8868\u8fbe\u5f0f

    "},{"location":"user_manual/api_test/#_29","title":"\u5b9a\u65f6\u4efb\u52a1\u6267\u884c","text":"

    \u5b9a\u65f6\u4efb\u52a1\u4e3a\u5f00\u5173\u63a7\u5236\uff0c\u5e76\u5c55\u793a\u6700\u8fd1\u4e00\u6b21\u7684\u8ba1\u5212\u6267\u884c\u65f6\u95f4\uff0c\u751f\u6210\u7684\u6d4b\u8bd5\u62a5\u544a\u89e6\u53d1\u65b9\u5f0f\u4e3a\u201c\u5b9a\u65f6\u4efb\u52a1\u201d

    "},{"location":"user_manual/api_test/#_30","title":"\u66f4\u591a\u64cd\u4f5c","text":""},{"location":"user_manual/api_test/#_31","title":"\u521b\u5efa\u6027\u80fd\u6d4b\u8bd5","text":"

    \u521b\u5efa\u6027\u80fd\u6d4b\u8bd5\uff0c\u63a5\u53e3\u6d4b\u8bd5\u4fdd\u5b58\u540e\u53ef\u4ee5\u76f4\u63a5\u521b\u5efa\u8be5\u573a\u666f\u5bf9\u5e94\u7684\u6027\u80fd\u6d4b\u8bd5\uff0c\u914d\u7f6e\u538b\u529b\u6d4b\u8bd5\u53c2\u6570\u540e\uff0c\u53ef\u4e00\u952e\u6267\u884c

    "},{"location":"user_manual/api_test/#_32","title":"\u5bfc\u51fa","text":"

    \u5728\u66f4\u591a\u64cd\u4f5c\u4e2d\u9009\u62e9\u5bfc\u51fa\uff0c\u53ef\u4ee5\u5c06\u5f53\u524d\u6d4b\u8bd5\u5bfc\u51fa\u4e3ajson\u6587\u4ef6

    "},{"location":"user_manual/api_test/#_33","title":"\u5bfc\u5165","text":"

    \u652f\u6301\u5feb\u901f\u5bfc\u5165MeterSphere Record \uff0cpostman\uff0c swagger\u6570\u636e

    "},{"location":"user_manual/api_test/#metersphere-record","title":"MeterSphere Record","text":"

    \u4e3a MeterSphere \u914d\u5957\u7684\u6d4f\u89c8\u5668\u63d2\u4ef6\uff0c\u8be5\u63d2\u4ef6\u53ef\u5c06\u7528\u6237\u5728\u6d4f\u89c8\u5668\u64cd\u4f5c\u65f6\u7684 HTTP \u8bf7\u6c42\u8bb0\u5f55\u4e0b\u6765\u5e76\u751f\u6210 JMX \u6587\u4ef6\uff08JMeter \u811a\u672c\u6587\u4ef6\uff09\u6216 JSON \u6587\u4ef6\uff0c\u7528\u4e8e\u5728 MeterSphere \u4e2d\u8fdb\u884c\u63a5\u53e3\u6d4b\u8bd5\u6216\u6027\u80fd\u6d4b\u8bd5\u3002

    \u8be6\u7ec6\u4ecb\u7ecd\u4e0e\u5b89\u88c5\uff1ahttps://github.com/metersphere/chrome-extensions

    \u5f55\u5236\u811a\u672c\uff1a

    \u7f16\u8f91\u811a\u672c\uff1a\u53ef\u4ee5\u9488\u5bf9\u5f55\u5236\u7684\u8bf7\u6c42\u8fdb\u884c\u7f16\u8f91\u8c03\u6574\uff0c\u5bfc\u51fa\u683c\u5f0f\u652f\u6301JMX\u548cJSON\u4e24\u79cd

    \u5bfc\u5165\u811a\u672c\uff1aJSON\u811a\u672c\u53ef\u4ee5\u5bfc\u5165\u5230\u5e73\u53f0\u8fdb\u884c\u63a5\u53e3\u6d4b\u8bd5\uff0cJMX\u811a\u672c\u53ef\u4ee5\u5bfc\u5165\u5230\u5e73\u53f0\u8fdb\u884c\u6027\u80fd\u6d4b\u8bd5

    "},{"location":"user_manual/api_test/#postman","title":"postman","text":"

    \u5bfc\u51fapostman\u6d4b\u8bd5

    \u5bfc\u5165\u5230MeterSphere

    "},{"location":"user_manual/api_test/#swagger","title":"swagger","text":"

    swagger\u5bfc\u5165\uff1a\u5c06swagger\u6587\u4ef6\u5bfc\u5165\u5e73\u53f0

    "},{"location":"user_manual/api_test/#_34","title":"\u62a5\u544a","text":"

    \u5bf9\u63a5\u53e3\u6d4b\u8bd5\u62a5\u544a\u7684\u67e5\u8be2\u548c\u5220\u9664\u64cd\u4f5c

    "},{"location":"user_manual/api_test/#_35","title":"\u67e5\u8be2\u62a5\u544a","text":"

    \u67e5\u8be2\u5168\u90e8\u62a5\u544a\uff0c\u70b9\u51fb\u663e\u793a\u5168\u90e8\uff0c\u67e5\u8be2\u5355\u4e2a\u62a5\u544a\u53ef\u4ee5\u6839\u636e\u540d\u79f0\u641c\u7d22

    "},{"location":"user_manual/api_test/#_36","title":"\u62a5\u544a\u8be6\u60c5","text":"

    \u5c55\u793a\u63a5\u53e3\u6d4b\u8bd5\u7684\u6267\u884c\u7ed3\u679c\uff0c\u5305\u542b\u54cd\u5e94\u65f6\u95f4\u3001\u9519\u8bef\u3001\u65ad\u8a00\u4ee5\u53ca\u8bf7\u6c42\u7684\u5177\u4f53\u54cd\u5e94\u62a5\u6587\u7b49

    "},{"location":"user_manual/api_test/#_37","title":"\u5220\u9664\u62a5\u544a","text":"

    \u70b9\u51fb\u62a5\u544a-\u663e\u793a\u5168\u90e8\uff0c\u9009\u62e9\u8981\u5220\u9664\u7684\u62a5\u544a\uff0c\u70b9\u51fb\u5220\u9664\u6309\u94ae

    "},{"location":"user_manual/general/","title":"\u901a\u7528\u529f\u80fd","text":""},{"location":"user_manual/general/#1","title":"1 \u5207\u6362\u8bed\u8a00","text":"

    \u70b9\u51fb\u9875\u9762\u53f3\u4e0a\u65b9\u7684\u8bed\u8a00\u4e0b\u62c9\u83dc\u5355\uff0c\u8fdb\u884c\u6307\u5b9a\u8bed\u8a00\u7684\u5207\u6362\u3002

    "},{"location":"user_manual/general/#2","title":"2 \u5207\u6362\u5de5\u4f5c\u7a7a\u95f4","text":"

    \u5de5\u4f5c\u7a7a\u95f4\u7684\u6982\u5ff5\u8bf4\u660e\u53ca\u5173\u7cfb\u8bf7\u53c2\u8003 \u6982\u5ff5\u8bf4\u660e\u3002 \u9875\u9762\u53f3\u4e0a\u65b9\u5c55\u793a\u4e86\u7528\u6237\u5f53\u524d\u6240\u5904\u7684\u5de5\u4f5c\u7a7a\u95f4\u3002\u70b9\u51fb\u5de5\u4f5c\u7a7a\u95f4\u4e0b\u62c9\u83dc\u5355\uff0c\u83dc\u5355\u4e2d\u5217\u51fa\u4e86\u5f53\u524d\u7528\u6237\u5177\u6709\u6743\u9650\u7684\u5de5\u4f5c\u7a7a\u95f4\u5217\u8868\uff0c\u70b9\u51fb\u67d0\u4e2a\u5de5\u4f5c\u7a7a\u95f4\u8fdb\u884c\u5207\u6362\u3002

    "},{"location":"user_manual/general/#3","title":"3 \u5207\u6362\u9879\u76ee","text":"

    MeterSphere \u4e2d\u7684\u6d4b\u8bd5\u7528\u4f8b\u3001\u63a5\u53e3\u5b9a\u4e49\u3001\u6027\u80fd\u6d4b\u8bd5\u7b49\u8d44\u6e90\u5747\u4f7f\u7528\u9879\u76ee\u8fdb\u884c\u9694\u79bb\uff0c\u7528\u6237\u9700\u8981\u64cd\u4f5c\u53e6\u4e00\u4e2a\u9879\u76ee\u4e2d\u7684\u8d44\u6e90\u65f6\u9700\u8981\u5148\u8fdb\u884c\u9879\u76ee\u5207\u6362\u3002 \u70b9\u51fb\u5de6\u4e0a\u65b9\u7684\u9879\u76ee\u4e0b\u62c9\u83dc\u5355\uff0c\u83dc\u5355\u4e2d\u5217\u51fa\u4e86\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e0b\u7684\u9879\u76ee\u5217\u8868\uff0c\u70b9\u51fb\u67d0\u4e2a\u9879\u76ee\u8fdb\u884c\u5207\u6362\u3002

    "},{"location":"user_manual/general/#4","title":"4 \u6279\u91cf\u64cd\u4f5c","text":"

    \u7cfb\u7edf\u4e2d\u7684\u5927\u90e8\u5206\u5217\u8868\u5747\u63d0\u4f9b\u4e86\u591a\u9009\u53ca\u5168\u9009\u529f\u80fd\uff0c\u5f53\u9009\u4e2d\u591a\u4e2a\u6570\u636e\u540e\u53ef\u4ee5\u70b9\u51fb\u3010\u6279\u91cf\u5904\u7406\u3011\u6309\u94ae\u8fdb\u884c\u6279\u91cf\u64cd\u4f5c\u3002

    \u4e3a\u4e86\u66f4\u65b9\u4fbf\u7684\u8fdb\u884c\u5168\u9009\u64cd\u4f5c\uff0c\u7cfb\u7edf\u63d0\u4f9b\u4e86\u4e24\u79cd\u5168\u9009\u6a21\u5f0f\u3002\u70b9\u51fb\u5217\u8868\u5de6\u4e0a\u65b9\u5168\u9009\u6846\u65c1\u8fb9\u7684\u4e0b\u62c9\u6309\u94ae\uff0c\u9009\u62e9\u3010\u9009\u62e9\u53ef\u89c1\u6570\u636e\u3011\u9009\u9879\uff0c\u8be5\u65b9\u5f0f\u53ea\u9009\u4e2d\u5f53\u524d\u5206\u9875\u4e2d\u53ef\u89c1\u7684\u6570\u636e\u6761\u76ee\u3002\u9009\u62e9\u3010\u9009\u62e9\u6240\u6709\u6570\u636e\u3011\u9879\uff0c\u8be5\u65b9\u5f0f\u9009\u4e2d\u5f53\u524d\u5217\u8868\u6240\u6709\u5206\u9875\u4e2d\u7684\u6570\u636e\u6761\u76ee\u3002

    \u8bf4\u660e

    \u76f4\u63a5\u70b9\u51fb\u5168\u9009\u6846\u4e0d\u4e0b\u62c9\u9009\u62e9\u65f6\u9ed8\u8ba4\u4f7f\u7528\u3010\u9009\u62e9\u53ef\u89c1\u6570\u636e\u3011\u65b9\u5f0f\u3002

    "},{"location":"user_manual/general/#5","title":"5 \u67e5\u8be2\u7ba1\u7406","text":"

    \u5728\u6240\u6709\u5217\u8868\u4fe1\u606f\u9875\u9762\uff0c\u7cfb\u7edf\u90fd\u4f1a\u63d0\u4f9b\u67e5\u8be2\u529f\u80fd\uff0c\u67e5\u8be2\u529f\u80fd\u4e00\u822c\u6709\u5355\u4e00\u67e5\u8be2\uff0c\u6216\u540c\u65f6\u63d0\u4f9b\u5355\u4e00\u67e5\u8be2\u548c\u9ad8\u7ea7\u67e5\u8be2\u3002

    "},{"location":"user_manual/general/#51","title":"5.1 \u5355\u4e00\u67e5\u8be2","text":"

    \u5355\u4e00\u67e5\u8be2\uff1a\u4e00\u822c\u6309ID\u3001\u540d\u79f0\u7b49\u4fe1\u606f\u6a21\u7cca\u67e5\u8be2\uff0c\u5e76\u4e14\u5728\u67e5\u8be2\u8f93\u5165\u6846\u5185\u6709\u76f8\u5e94\u6761\u4ef6\u7684\u8bf4\u660e\uff0c\u5982\u4e0b\u56fe

    "},{"location":"user_manual/general/#52","title":"5.2 \u9ad8\u7ea7\u67e5\u8be2","text":"

    \u5728\u90e8\u5206\u5217\u8868\u4fe1\u606f\u9875\u9762\u7684\u53f3\u4e0a\u89d2\u4f1a\u63d0\u4f9b\u9ad8\u7ea7\u67e5\u8be2\u529f\u80fd\u3002 \u70b9\u51fb\u3010\u9ad8\u7ea7\u67e5\u8be2\u3011\u53ef\u770b\u5230\u63d0\u4f9b\u7684\u591a\u79cd\u6761\u4ef6\u7684\u7ec4\u5408\u67e5\u8be2\u3002\u4e0d\u540c\u9875\u9762\u7684\u9ad8\u7ea7\u67e5\u8be2\u6761\u4ef6\u4e0d\u4e00\u6837\uff0c\u4e0b\u9762\u4e3e\u4f8b\u7684\u662f\u529f\u80fd\u7528\u4f8b\u5217\u8868\u4e2d\u7684\u9ad8\u7ea7\u67e5\u8be2\u9875\u9762\u3002

    "},{"location":"user_manual/general/#6","title":"6 \u8868\u5934\u529f\u80fd","text":"

    \u5217\u8868\u6a21\u5f0f\u4e0b\uff0c\u5728\u4fe1\u606f\u5217\u8868\u5934\u4e0a\u63d0\u4f9b\u4e86\u5176\u4ed6\u76f8\u5173\u529f\u80fd\uff1a\u6bd4\u5982\u67e5\u8be2\u3001\u5217\u8868\u4fe1\u606f\u663e\u793a\u8bbe\u7f6e\u7b49\u3002

    "},{"location":"user_manual/general/#61","title":"6.1 \u590d\u9009\u6846\u529f\u80fd","text":"

    \u5728\u5217\u8868\u4fe1\u606f\u9875\u7684\u7b2c\u4e00\u5217\u590d\u9009\u6846\u5934\u90e8\uff0c\u6709\u4e2a\u5411\u4e0b\u7bad\u5934\u3010V\u3011\uff0c\u70b9\u51fb\u5411\u4e0b\u7bad\u5934\u3010V\u3011\u53ef\u4ee5\u770b\u5230\u5bf9\u4e8e\u8bb0\u5f55\u7684\u9009\u4e2d\u63d0\u4f9b\u4e24\u79cd\u9009\u62e9\u6570\u636e\u8303\u56f4\uff0c\u5373\u5bf9\u5f53\u524d\u9875\uff0c\u6216\u5bf9\u67e5\u8be2\u5230\u7684\u6240\u6709\u8bb0\u5f55\u3002

    "},{"location":"user_manual/general/#62","title":"6.2 \u5217\u8868\u5185\u67e5\u8be2","text":"

    \u5728\u5217\u8868\u4fe1\u606f\u5934\u4e2d\uff0c\u5982\u679c\u8868\u5934\u4fe1\u606f\u6709\u5411\u4e0b\u7bad\u5934\u3010V\u3011\uff0c\u5219\u8868\u793a\u5728\u5f53\u524d\u7684\u5217\u8868\u4fe1\u606f\u96c6\u4e2d\uff0c\u53ef\u4ee5\u6839\u636e\u6b64\u4fe1\u606f\u8fdb\u884c\u5feb\u901f\u7b5b\u9009\u67e5\u8be2\u3002

    "},{"location":"user_manual/general/#63","title":"6.3 \u6392\u5e8f\u529f\u80fd","text":"

    \u5728\u5217\u8868\u4fe1\u606f\u5934\u4e2d\uff0c\u5982\u679c\u8868\u5934\u4fe1\u606f\u6709\u5411\u4e0a\u4e0b\u7bad\u5934\uff0c\u5219\u8868\u793a\u6839\u636e\u6b64\u5b57\u6bb5\u5bf9\u5f53\u524d\u7684\u5217\u8868\u4fe1\u606f\u96c6\u8fdb\u884c\u5012\u5e8f\u548c\u6b63\u5e8f\u6392\u5217\u3002\u7cfb\u7edf\u4e00\u822c\u63d0\u4f9b\u591a\u79cd\u4fe1\u606f\u7684\u6b63\u5e8f\u6216\u5012\u5e8f\u7684\u6392\u5217\u3002

    "},{"location":"user_manual/general/#64","title":"6.4 \u81ea\u5b9a\u4e49\u5217\u8868\u663e\u793a","text":"

    \u7cfb\u7edf\u5bf9\u4e8e\u90e8\u5206\u5217\u8868\u4fe1\u606f\u9875\u9762\uff0c\u90fd\u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u5217\u8868\u663e\u793a\u4fe1\u606f\u7684\u8bbe\u7f6e\u3002 \u5728\u4fe1\u606f\u5217\u8868\u7684\u64cd\u4f5c\u5217\uff0c\u5934\u90e8\u6709\u3010\u8bbe\u7f6e\u3011\u6309\u94ae\uff0c\u53ef\u4ee5\u81ea\u5b9a\u4e49\u5217\u8868\u663e\u793a\u6570\u636e\u7684\u5b57\u6bb5\u3002

    \u4e0b\u9762\u4ee5\u6d4b\u8bd5\u8ba1\u5212\u9875\u9762\u7684\u8bbe\u7f6e\u4e3a\u4f8b\uff0c\u70b9\u51fb\u3010\u8bbe\u7f6e\u3011\u6309\u94ae\uff0c\u5f39\u51fa\u8868\u5934\u663e\u793a\u5b57\u6bb5\u8bbe\u7f6e\uff0c\u7cfb\u7edf\u9ed8\u8ba4\u663e\u793a\u6240\u6709\u5b57\u6bb5\u3002 \u9700\u8981\u663e\u793a\u7684\u5b57\u6bb5\u79fb\u5230\u53f3\u8fb9\u5df2\u9009\u5b57\u6bb5\u6846\u4e2d\uff1b\u4e0d\u9700\u8981\u663e\u793a\u7684\u5b57\u6bb5\u79fb\u5230\u5de6\u8fb9\u5f85\u9009\u5b57\u6bb5\u6846\u4e2d\u3002

    \u70b9\u51fb\u3010\u786e\u5b9a\u3011\u5b8c\u6210\u8bbe\u7f6e\uff0c\u7cfb\u7edf\u4f1a\u8fd4\u56de\u4fe1\u606f\u5217\u8868\u9875\u9762\uff0c\u6b64\u65f6\u7cfb\u7edf\u4f1a\u81ea\u52a8\u5237\u65b0\u4fe1\u606f\u5217\u8868\u9875\uff0c\u6b64\u65f6\u6309\u8bbe\u7f6e\u7684\u4fe1\u606f\u8fdb\u884c\u663e\u793a\u3002

    "},{"location":"user_manual/general/#65","title":"6.5 \u8c03\u6574\u5217\u8868\u5bbd\u5ea6","text":"

    \u70b9\u51fb\u5217\u8868\u8868\u5934\u5217\u4e2d\u95f4\u7684\u3010|\u3011\uff0c\u53ef\u5de6\u53f3\u62d6\u52a8\u81ea\u5b9a\u4e49\u8c03\u6574\u5217\u8868\u7684\u5bbd\u5ea6\u3002

    "},{"location":"user_manual/general/#7","title":"7 \u4e2a\u4eba\u4fe1\u606f","text":"

    \u5728\u53f3\u4e0a\u89d2\u7528\u6237\u540d\u5904\u7684\u4e0b\u62c9\u83dc\u5355\u4e2d\uff0c\u9009\u62e9\u3010\u4e2a\u4eba\u4fe1\u606f\u3011\u9009\u9879\uff0c\u53ef\u770b\u5f53\u524d\u4e2a\u4eba\u76f8\u5173\u7684\u914d\u7f6e\u4fe1\u606f\u3002

    "},{"location":"user_manual/general/#8","title":"8 \u67e5\u770b\u7248\u672c\u4fe1\u606f","text":"

    \u5728\u53f3\u4e0a\u89d2\u7528\u6237\u540d\u5904\u7684\u4e0b\u62c9\u83dc\u5355\u4e2d\uff0c\u9009\u62e9\u3010\u5173\u4e8e\u3011\u9009\u9879\uff0c\u5728\u5f39\u51fa\u7684\u9875\u9762\u4e2d\u53ef\u4ee5\u67e5\u770b\u5f53\u524d\u7248\u672c\u4fe1\u606f\u3002

    "},{"location":"user_manual/general/#9","title":"9 \u67e5\u770b\u5e2e\u52a9\u6587\u6863","text":"

    \u5728\u53f3\u4e0a\u89d2\u7528\u6237\u540d\u5904\u7684\u4e0b\u62c9\u83dc\u5355\u4e2d\uff0c\u9009\u62e9\u3010\u5e2e\u52a9\u6587\u6863\u3011\u9009\u9879\uff0c\u6d4f\u89c8\u5668\u5c06\u5728\u65b0\u9875\u9762\u6253\u5f00\u5728\u7ebf\u6587\u6863\u9875\u9762\u3002

    "},{"location":"user_manual/general/#10-api","title":"10 \u67e5\u770b API \u6587\u6863","text":"

    \u5728\u53f3\u4e0a\u89d2\u7528\u6237\u540d\u5904\u7684\u4e0b\u62c9\u83dc\u5355\u4e2d\uff0c\u9009\u62e9\u3010API\u6587\u6863\u3011\u9009\u9879\uff0c\u6d4f\u89c8\u5668\u5c06\u5728\u65b0\u9875\u9762\u6253\u5f00\u5185\u7f6e\u7684 API \u6587\u6863\u9875\u9762\u3002

    "},{"location":"user_manual/general/#11","title":"11 \u9000\u51fa\u7cfb\u7edf","text":"

    \u5728\u53f3\u4e0a\u89d2\u7528\u6237\u540d\u5904\u7684\u4e0b\u62c9\u83dc\u5355\u4e2d\uff0c\u9009\u62e9\u3010\u9000\u51fa\u7cfb\u7edf\u3011\u9009\u9879\uff0c\u9875\u9762\u5c06\u4f1a\u8df3\u5230\u767b\u5f55\u9875\u9762\u3002

    "},{"location":"user_manual/api_test/api_automation/","title":"\u63a5\u53e3\u81ea\u52a8\u5316","text":"

    \u573a\u666f\u662f\u63a5\u53e3\u81ea\u52a8\u5316\u4e2d\u7684\u57fa\u672c\u7ba1\u7406\u5355\u5143\uff0c\u7531\u4e00\u7ec4\u7528\u4f8b\u548c\u63a5\u53e3\u7ec4\u88c5\u800c\u6210\u3002\u5982\u7528\u6237\u7ba1\u7406\u573a\u666f\uff0c\u5305\u542b\u7528\u6237\u6ce8\u518c\u3001\u7528\u6237\u767b\u9646\u3001\u7528\u6237\u4fee\u6539\u3001\u7528\u6237\u6ce8\u9500\u3001\u7528\u6237\u9500\u6237\u7b49\u7528\u4f8b\u6216\u8005\u63a5\u53e3\u3002 MeterSphere \u652f\u6301\u5bfc\u5165\u63a5\u53e3\u901a\u8fc7\u62d6\u62fd\u7684\u65b9\u5f0f\u5bf9\u4e0a\u8ff0\u573a\u666f\u8fdb\u884c\u7528\u4f8b/\u63a5\u53e3\u7684\u7f16\u6392\u8bbe\u8ba1\u3002\u5728\u63a5\u53e3\u81ea\u52a8\u5316\u811a\u672c\u4e2d\u652f\u6301\u6dfb\u52a0\u5404\u79cd\u534f\u8bae\u7684\u8bf7\u6c42\u3001\u65ad\u8a00\u3001\u81ea\u5b9a\u4e49\u811a\u672c\u3001\u903b\u8f91\u63a7\u5236\u5668\u7b49\u7ec4\u4ef6\u5b8c\u6210\u4e00\u4e2a\u63a5\u53e3\u6d4b\u8bd5\u573a\u666f\uff0c\u5e76\u4e14\u652f\u6301\u5b9a\u65f6\u3001API\u8c03\u7528\u3001Jenkins\u8c03\u7528\u65b9\u5f0f\u89e6\u53d1\u81ea\u52a8\u5316\u6267\u884c\u4efb\u52a1\u3002

    "},{"location":"user_manual/api_test/api_automation/#1","title":"1 \u6a21\u5757\u6811\u7ba1\u7406","text":"

    \u6bcf\u4e2a\u573a\u666f\u90fd\u9700\u8981\u5c5e\u4e8e\u4e00\u4e2a\u7279\u5b9a\u7684\u6a21\u5757\uff0c\u5728\u521b\u5efa\u573a\u666f\u524d\u9700\u8981\u5148\u89c4\u5212\u5e76\u521b\u5efa\u6a21\u5757\u6811\u3002\u63a5\u53e3\u81ea\u52a8\u5316\u4e0e\u63a5\u53e3\u5b9a\u4e49\u4e2d\u7684\u6a21\u5757\u6811\u76f8\u4e92\u72ec\u7acb\uff0c\u63a5\u53e3\u5b9a\u4e49\u4e2d\u521b\u5efa\u7684\u6a21\u5757\u4e0d\u4f1a\u51fa\u73b0\u5728\u63a5\u53e3\u81ea\u52a8\u5316\u7684\u6a21\u5757\u6811\u4e2d\u3002 \u5177\u4f53\u7684\u6a21\u5757\u7ba1\u7406\u64cd\u4f5c\u4e0e\u63a5\u53e3\u5b9a\u4e49\u4e2d\u7684\u6a21\u5757\u6811\u7c7b\u4f3c\uff0c\u8bf7\u53c2\u8003\u63a5\u53e3\u5b9a\u4e49\u4e2d\u7684 \u6a21\u5757\u6811\u7ba1\u7406\u3002

    "},{"location":"user_manual/api_test/api_automation/#2","title":"2 \u573a\u666f\u7ba1\u7406","text":""},{"location":"user_manual/api_test/api_automation/#21","title":"2.1 \u5feb\u6377\u529f\u80fd","text":"

    \u573a\u666f\u5217\u8868\u7684\u5feb\u6377\u6309\u94ae\u6709\u3010\u6267\u884c\u3011\u3010\u7f16\u8f91\u3011\u3010\u590d\u5236\u3011\u3010\u5220\u9664\u3011\u70b9\u51fb\u66f4\u591a\u53ef\u64cd\u4f5c\u3010\u67e5\u770b\u5f15\u7528\u3011\u3010\u5b9a\u65f6\u4efb\u52a1\u3011\u3010\u521b\u5efa\u6027\u80fd\u6d4b\u8bd5\u3011\u3002

    "},{"location":"user_manual/api_test/api_automation/#22","title":"2.2 \u5feb\u901f\u521b\u5efa","text":"

    \u9009\u62e9\u4e00\u4e2a\u6a21\u5757\uff0c\u70b9\u51fb\u3010\u66f4\u591a\u64cd\u4f5c-\u521b\u5efa\u573a\u666f\u3011\u6309\u94ae\uff0c\u53ef\u4ec5\u586b\u5199\u63a5\u53e3\u57fa\u672c\u4fe1\u606f\uff0c\u5728\u8be5\u6a21\u5757\u4e0b\u5feb\u901f\u521b\u5efa\u63a5\u53e3\u3002

    "},{"location":"user_manual/api_test/api_automation/#23","title":"2.3 \u7f16\u8f91\u8be6\u60c5","text":"

    \u5728\u573a\u666f\u5217\u8868\u4e2d\u70b9\u51fb\u6307\u5b9a\u573a\u666f\u64cd\u4f5c\u5217\u4e2d\u7684\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u8fdb\u5165\u573a\u666f\u8be6\u60c5\u7f16\u8f91\u9875\u9762\u3002\u5728\u8be5\u9875\u9762\u4e2d\u53ef\u5bf9\u573a\u666f\u7684\u57fa\u7840\u4fe1\u606f\uff0c\u573a\u666f\u7684\u5177\u4f53\u6b65\u9aa4\u7b49\u8fdb\u884c\u8fdb\u4e00\u6b65\u7f16\u8f91\uff0c\u7f16\u8f91\u5b8c\u6210\u540e\u70b9\u51fb\u53f3\u4e0a\u89d2\u7684\u4fdd\u5b58\u6309\u94ae\u8fdb\u884c\u4fdd\u5b58\u3002

    "},{"location":"user_manual/api_test/api_automation/#24","title":"2.4 \u573a\u666f\u53d8\u91cf\u914d\u7f6e","text":"

    \u5728\u6dfb\u52a0\u573a\u666f\u6b65\u9aa4\u524d\u53ef\u4ee5\u6dfb\u52a0\u6574\u4e2a\u573a\u666f\u516c\u7528\u7684\u53d8\u91cf\u53c2\u6570\uff0c\u652f\u6301\u591a\u79cd\u4e0d\u540c\u7c7b\u578b\uff0c\u5728\u573a\u666f\u4e2d\u7684\u6b65\u9aa4\u5747\u53ef\u5f15\u7528\u8fd9\u4e9b\u53c2\u6570\u3002

    \u53c2\u6570\u8bf4\u660e

    • \u3010\u5e38\u91cf\u3011

      • \u53d8\u91cf\u540d: \u8be5\u53d8\u91cf\u7684\u53d8\u91cf\u540d\uff0c\u53ef\u4ee5\u5728\u573a\u666f\u6b65\u9aa4\u4e2d\u901a\u8fc7 ${varName} \u7684\u5f62\u5f0f\u5f15\u7528\u8be5\u53d8\u91cf\u3002
      • \u63cf\u8ff0\uff1a\u9488\u5bf9\u8be5\u53d8\u91cf\u7684\u8be6\u7ec6\u8bf4\u660e\u3002
      • \u503c\uff1a\u8be5\u53d8\u91cf\u7684\u503c\uff0c\u53ef\u4ee5\u4f7f\u7528 JMeter \u4e2d\u7684\u5185\u7f6e\u51fd\u6570\u3002
      • \u4e3e\u4f8b\u8bf4\u660e\uff1a\u5b9a\u4e49\u53d8\u91cf\u540d\u4e3a varName\uff0c\u53d8\u91cf\u503c\u4e3a varValue \u7684\u53d8\u91cf\uff0c\u5728\u540e\u7eed\u6b65\u9aa4\u4e2d\u901a\u8fc7 ${varName} \u5f15\u7528\u5f97\u5230 varValue\u3002
    • \u3010\u5217\u8868\u3011

      • \u53d8\u91cf\u540d: \u8be5\u53d8\u91cf\u7684\u53d8\u91cf\u540d\uff0c\u53ef\u4ee5\u5728\u573a\u666f\u6b65\u9aa4\u4e2d\u901a\u8fc7 ${varName} \u7684\u5f62\u5f0f\u5f15\u7528\u8be5\u53d8\u91cf\u3002
      • \u63cf\u8ff0\uff1a\u9488\u5bf9\u8be5\u53d8\u91cf\u7684\u8be6\u7ec6\u8bf4\u660e\u3002
      • \u503c\uff1a\u4ee5\u9017\u53f7 , \u5206\u9694\u7684\u503c\u5217\u8868\uff0c\u53ef\u4ee5\u5728\u6b65\u9aa4\u4e2d\u901a\u8fc7 ${varName_n} \u7684\u5f62\u5f0f\u5f15\u7528\u6307\u5b9a\u4f4d\u7f6e\u7684\u503c\uff0c\u5176\u4e2d n \u4ee3\u8868\u8981\u5f15\u7528\u7684\u503c\u7684\u4f4d\u7f6e\uff0c\u4ece 1 \u5f00\u59cb\u3002
      • \u4e3e\u4f8b\u8bf4\u660e\uff1a\u5b9a\u4e49\u53d8\u91cf\u540d\u4e3a listVar\uff0c\u53d8\u91cf\u503c\u4e3a value1,value2,value3 \u7684\u53d8\u91cf\uff0c\u5728\u540e\u7eed\u6b65\u9aa4\u4e2d\u901a\u8fc7 ${listVar_1} \u5f15\u7528\u5f97\u5230 value1\uff0c\u901a\u8fc7 ${listVar_2} \u5f15\u7528\u5f97\u5230 value2\u3002
    • \u3010CSV\u3011

      • \u53d8\u91cf\u540d: CSV \u6587\u4ef6\u7684\u540d\u79f0\uff0c\u4ec5\u8d77\u5230\u6807\u8bb0\u4f5c\u7528\uff0c\u65e0\u6cd5\u5728\u573a\u666f\u6b65\u9aa4\u4e2d\u901a\u8fc7 ${varName} \u7684\u5f62\u5f0f\u5f15\u7528\u8be5\u53d8\u91cf\u3002
      • \u63cf\u8ff0\uff1a\u9488\u5bf9\u8be5\u53d8\u91cf\u7684\u8be6\u7ec6\u8bf4\u660e\u3002
      • \u6dfb\u52a0\u6587\u4ef6\uff1aCSV \u6587\u4ef6\u9009\u62e9\uff0c\u4ece\u672c\u5730\u4e0a\u4f20 CSV \u6587\u4ef6\u3002
      • Encoding\uff1aCSV \u6587\u4ef6\u7684\u7f16\u7801\u683c\u5f0f\u3002
      • \u5206\u9694\u7b26\uff1aCSV \u6587\u4ef6\u4e2d\u7684\u6570\u636e\u5206\u9694\u7b26\uff0c\u9ed8\u8ba4\u4e3a ,\u3002
      • \u4e3e\u4f8b\u8bf4\u660e\uff1a\u4e0a\u4f20 CSV \u4e2d\u7684\u5185\u5bb9\u5982\u4e0b\u6240\u793a\uff0c\u7b2c\u4e00\u5217\u4e3a\u53d8\u91cf\u540d\u5217\uff0c\u53ef\u4ee5\u5728\u573a\u666f\u7684\u540e\u7eed\u6b65\u9aa4\u4e2d\u901a\u8fc7 ${name}\uff0c${age} \u5206\u522b\u5f15\u7528\u7b2c\u4e00\u5217\u548c\u7b2c\u4e8c\u5217\u7684\u503c\u3002\u5f53\u5728\u5faa\u73af\u63a7\u5236\u5668\u5916\u5f15\u7528\u53d8\u91cf\u65f6\uff0c\u53d8\u91cf\u503c\u4e3a\u7b2c\u4e00\u4e2a\u6570\u636e\u503c\uff0c${name}=Andy\uff0c${age}=20\uff1b\u5f53\u5728\u5faa\u73af\u63a7\u5236\u5668\u5185\u5f15\u7528\u53d8\u91cf\u65f6\uff0c\u6bcf\u8fed\u4ee3\u4e00\u6b21\u90fd\u4f1a\u53d6\u4e0b\u4e00\u884c\u7684\u6570\u636e\u503c\u3002

        name,age\nAndy,20\nTom,22\n
    • \u3010\u8ba1\u6570\u5668\u3011

      • \u53d8\u91cf\u540d: \u8be5\u53d8\u91cf\u7684\u53d8\u91cf\u540d\uff0c\u53ef\u4ee5\u5728\u573a\u666f\u6b65\u9aa4\u4e2d\u901a\u8fc7 ${varName} \u7684\u5f62\u5f0f\u5f15\u7528\u8be5\u53d8\u91cf\u3002
      • \u63cf\u8ff0\uff1a\u9488\u5bf9\u8be5\u53d8\u91cf\u7684\u8be6\u7ec6\u8bf4\u660e\u3002
      • \u5f00\u59cb\uff1a\u8ba1\u6570\u5668\u53d8\u91cf\u7684\u8d77\u59cb\u503c\uff0c\u5373\u6700\u5c0f\u503c\u3002
      • \u7ed3\u675f\uff1a\u8ba1\u6570\u5668\u53d8\u91cf\u7684\u7ed3\u675f\u503c\uff0c\u5373\u6700\u5927\u503c\u3002
      • \u589e\u91cf\uff1a\u8ba1\u6570\u5668\u53d8\u91cf\u6bcf\u6b21\u589e\u52a0\u7684\u589e\u91cf\u503c\uff0c\u9ed8\u8ba4\u4e3a 1\u3002
      • \u4e3e\u4f8b\u8bf4\u660e\uff1a\u5b9a\u4e49\u53d8\u91cf\u540d\u4e3a counter1 \u7684\u8ba1\u6570\u5668\u53d8\u91cf\uff0c\u5f00\u59cb\u503c\u4e3a 1\uff0c\u7ed3\u675f\u503c\u4e3a 100\uff0c\u589e\u91cf\u4e3a 1\u3002\u5f53\u5728\u5faa\u73af\u63a7\u5236\u5668\u5916\u5f15\u7528\u53d8\u91cf\u65f6\uff0c\u53d8\u91cf\u503c\u4e0d\u4f1a\u9012\u589e\uff0c\u4e00\u76f4\u4e3a\u5f53\u524d\u503c\uff1b\u5f53\u5728\u5faa\u73af\u63a7\u5236\u5668\u5185\u5f15\u7528\u53d8\u91cf\u65f6\uff0c\u6bcf\u8fed\u4ee3\u4e00\u6b21\u53d8\u91cf\u503c\u90fd\u4f1a\u589e\u52a0\u4e00\u6b21\u3002
    • \u3010\u968f\u673a\u6570\u3011

      • \u53d8\u91cf\u540d: \u8be5\u53d8\u91cf\u7684\u53d8\u91cf\u540d\uff0c\u53ef\u4ee5\u5728\u573a\u666f\u6b65\u9aa4\u4e2d\u901a\u8fc7 ${varName} \u7684\u5f62\u5f0f\u5f15\u7528\u8be5\u53d8\u91cf\u3002
      • \u63cf\u8ff0\uff1a\u9488\u5bf9\u8be5\u53d8\u91cf\u7684\u8be6\u7ec6\u8bf4\u660e\u3002
      • \u6700\u5c0f\u503c\uff1a\u968f\u673a\u8303\u56f4\u7684\u6700\u5c0f\u503c\u3002
      • \u6700\u5927\u503c\uff1a\u968f\u673a\u8303\u56f4\u7684\u6700\u5927\u503c\u3002
      • \u8f93\u51fa\u683c\u5f0f\uff1a\u968f\u673a\u6570\u7684\u8f93\u51fa\u683c\u5f0f\uff0c\u4f8b\u5982\u8bbe\u5b9a\u6700\u5c0f\u503c 1\uff0c\u6700\u5927\u503c 100\uff0c\u8f93\u51fa\u683c\u5f0f\u4e3a 000\uff0c\u5219\u53d8\u91cf\u503c\u4e3a 013\uff0c074 \u8fd9\u6837\u7684\u683c\u5f0f\u3002
      • \u4e3e\u4f8b\u8bf4\u660e\uff1a\u5b9a\u4e49\u53d8\u91cf\u540d\u4e3a random1\uff0c\u6700\u5c0f\u503c 1\uff0c\u6700\u5927\u503c 100\uff0c\u8f93\u51fa\u683c\u5f0f\u4e3a 000 \u7684\u53d8\u91cf\u3002\u5f53\u5728\u5faa\u73af\u63a7\u5236\u5668\u5916\u5f15\u7528\u53d8\u91cf\u65f6\uff0c\u591a\u6b21\u5f15\u7528\u53d8\u91cf\u503c\u4e0d\u4f1a\u91cd\u65b0\u968f\u673a\uff0c\u4e00\u76f4\u4e3a\u5f53\u524d\u503c\uff1b\u5f53\u5728\u5faa\u73af\u63a7\u5236\u5668\u5185\u5f15\u7528\u53d8\u91cf\u65f6\uff0c\u6bcf\u8fed\u4ee3\u4e00\u6b21\u53d8\u91cf\u503c\u90fd\u4f1a\u91cd\u65b0\u968f\u673a\u4e00\u6b21\u3002
    "},{"location":"user_manual/api_test/api_automation/#25","title":"2.5 \u573a\u666f\u6b65\u9aa4\u7f16\u6392","text":"

    \u6dfb\u52a0\u4e00\u7ea7\u6b65\u9aa4 \u5728\u573a\u666f\u8be6\u60c5\u7f16\u8f91\u9875\u9762\uff0c\u70b9\u51fb\u9875\u9762\u53f3\u4e0b\u65b9\u7684\u3010+\u3011\u6309\u94ae\uff0c\u53ef\u5728\u5f53\u524d\u573a\u666f\u4e2d\u6dfb\u52a0\u6b65\u9aa4\u3002

    \u70b9\u51fb\u6b65\u9aa4\u6761\u76ee\u7684\u7a7a\u767d\u5904\uff0c\u53ef\u4ee5\u5c55\u5f00\u67e5\u770b\u6b65\u9aa4\u8be6\u60c5\u3002

    \u6dfb\u52a0\u5b50\u6b65\u9aa4 \u5728\u6b65\u9aa4\u7684\u8bf7\u6c42\u53c2\u6570\u8be6\u60c5\u754c\u9762\uff0c\u53ef\u9009\u62e9\u6dfb\u52a0\u3010\u524d\u7f6e\u64cd\u4f5c\u3011\u3001\u3010\u540e\u7f6e\u64cd\u4f5c\u3011\u3001\u3010\u65ad\u8a00\u89c4\u5219\u3011\u5b50\u6b65\u9aa4\u3002

    • \u3010\u524d\u7f6e\u64cd\u4f5c\u3011\u53ef\u6dfb\u52a0\u3010\u524d\u7f6e\u811a\u672c\u3011\u3001\u3010\u524d\u7f6eSQL\u3011\u3001\u3010\u7b49\u5f85\u63a7\u5236\u5668\u3011\u3002
    • \u3010\u540e\u7f6e\u64cd\u4f5c\u3011\u53ef\u6dfb\u52a0\u3010\u63d0\u53d6\u53c2\u6570\u3011\u3001\u3010\u540e\u7f6eSQL\u3011\u3001\u3010\u540e\u7f6e\u811a\u672c\u3011\u3002
    • \u3010\u65ad\u8a00\u89c4\u5219\u3011\u53ef\u6dfb\u52a0\u591a\u79cd\u7c7b\u578b\u7684\u3010\u65ad\u8a00\u3011\u3002\u5177\u4f53\u6b65\u9aa4\u53ef\u53c2\u8003\u63a5\u53e3\u7528\u4f8b\u64cd\u4f5c\u4e2d\u7684 \u64cd\u4f5c\u6b65\u9aa4\u3002

    \u8c03\u6574\u6b65\u9aa4\u987a\u5e8f\u53ca\u5c42\u7ea7 \u9009\u4e2d\u67d0\u4e2a\u6b65\u9aa4\u540e\u957f\u6309\u9f20\u6807\u5de6\u952e\u53ef\u4ee5\u5bf9\u6b65\u9aa4\u8fdb\u884c\u62d6\u62fd\uff0c\u62d6\u62fd\u652f\u6301\u8c03\u6574\u6b65\u9aa4\u987a\u5e8f\u53ca\u5c42\u7ea7\uff0c\u901a\u8fc7\u62d6\u62fd\u53ef\u5c06\u5176\u53d8\u4e3a\u4e00\u7ea7\u6b65\u9aa4\u6216\u67d0\u4e2a\u6b65\u9aa4\u7684\u5b50\u6b65\u9aa4\u3002

    \u9488\u5bf9\u6b65\u9aa4\u7684\u5176\u4ed6\u64cd\u4f5c

    • \u3010\u7f16\u8f91\u540d\u79f0\u3011\uff1a\u5bf9\u4e8e\u652f\u6301\u914d\u7f6e\u540d\u79f0\u7684\u6b65\u9aa4\uff0c\u70b9\u51fb\u8be5\u6309\u94ae\u53ef\u4ee5\u4fee\u6539\u8be5\u6b65\u9aa4\u7684\u540d\u79f0\u3002
    • \u3010\u542f\u7528/\u7981\u7528\u3011\uff1a\u70b9\u51fb\u8be5\u6309\u94ae\u542f\u7528/\u7981\u7528\u8be5\u6b65\u9aa4\u3002
    • \u3010\u8c03\u8bd5\u3011\uff1a\u5bf9\u4e8e\u652f\u6301\u5355\u72ec\u6267\u884c\u7684\u6b65\u9aa4\uff0c\u70b9\u51fb\u8be5\u6309\u94ae\u53ef\u4ee5\u5355\u72ec\u6267\u884c\u6b65\u9aa4\uff0c\u6267\u884c\u540e\u70b9\u51fb\u6b65\u9aa4\u7a7a\u767d\u5904\u53ef\u4ee5\u5728\u5176\u8be6\u60c5\u4e2d\u67e5\u770b\u6267\u884c\u7ed3\u679c\u3002
    • \u3010\u590d\u5236\u3011\uff1a\u590d\u5236\u8be5\u6b65\u9aa4\u3002
    • \u3010\u5220\u9664\u3011\uff1a\u5220\u9664\u8be5\u6b65\u9aa4\u3002

    \u8c03\u9488\u5bf9\u573a\u666f\u7684\u5176\u4ed6\u64cd\u4f5c

    • \u3010\u573a\u666f\u53d8\u91cf\u3011\uff1a\u81ea\u5b9a\u4e49\u573a\u666f\u53d8\u91cf\uff0c\u5305\u62ec\u5e38\u91cf\u3001\u5217\u8868\u53d8\u91cf\u3001csv\u3001\u8ba1\u6570\u5668\u3001\u968f\u673a\u6570\u7b49\u3002
    • \u3010\u5171\u4eabcookie\u3011\uff1a\u573a\u666f\u91cc\u7684\u6240\u6709\u6b65\u9aa4\u5171\u4eabcookie\u3002
    • \u3010\u5931\u8d25\u7ee7\u7eed\u3011\uff1a\u573a\u666f\u4e2d\u6709\u6b65\u9aa4\u5931\u8d25\u4e0d\u5f71\u54cd\u540e\u9762\u6b65\u9aa4\u6267\u884c\u3002
    • \u3010\u8fd0\u884c\u73af\u5883\u3011\uff1a\u573a\u666f\u8fd0\u884c\u73af\u5883\u914d\u7f6e\uff0c\u53ef\u9009\u9879\u76ee\u73af\u5883\u6216\u8005\u73af\u5883\u7ec4\u4e24\u79cd\u7c7b\u578b\u3002
    • \u3010\u8c03\u8bd5\u3011\uff1a\u8c03\u6574\u573a\u666f\u548c\u751f\u6210\u62a5\u544a\u3002
    • \u3010\u4fdd\u5b58\u3011\uff1a\u4fdd\u5b58\u573a\u666f\u3002
    • \u3010\u5237\u65b0\u3011\uff1a\u573a\u666f\u5185\u5237\u65b0\u6b65\u9aa4\u3002
    • \u3010\u8c03\u8bd5\u5386\u53f2\u3011\uff1a\u67e5\u770b\u573a\u666f\u7684\u8c03\u8bd5\u5386\u53f2\u548c\u62a5\u544a\u8be6\u60c5\u3002
    • \u3010\u53d8\u66f4\u8bb0\u5f55\u3011\uff1a\u67e5\u770b\u573a\u666f\u53d8\u66f4\u8bb0\u5f55\u3002
    • \u3010\u7248\u672c\uff08X-Pack\uff09\u3011\uff1a\u5c55\u793a\u5f53\u524d\u573a\u666f\u6240\u5c5e\u7248\u672c\u4fe1\u606f\u3002
    • \u3010\u6279\u91cf\u64cd\u4f5c\u3011\uff1a\u573a\u666f\u5185\u90e8\u7684\u6279\u91cf\u64cd\u4f5c\uff0c\u5305\u542b \u6279\u91cf\u542f\u7528\u6b65\u9aa4\u3001\u6279\u91cf\u7981\u7528\u6b65\u9aa4\u3001\u6279\u91cf\u5c55\u5f00\u6b65\u9aa4\uff0c\u6279\u91cf\u6298\u53e0\u6b65\u9aa4\u3001\u6279\u91cf\u5220\u9664\u6b65\u9aa4\u3002

    "},{"location":"user_manual/api_test/api_automation/#26","title":"2.6 \u8c03\u8bd5\u6307\u5b9a\u573a\u666f","text":"

    \u573a\u666f\u53ca\u573a\u666f\u4e2d\u7684\u6b65\u9aa4\u521b\u5efa\u5b8c\u6210\u540e\uff0c\u70b9\u51fb\u3010\u8c03\u8bd5\u3011\u53ef\u5b9e\u65f6\u67e5\u770b\u573a\u666f\u5185\u5404\u4e2a\u6b65\u9aa4\u6267\u884c\u72b6\u6001\u53ca\u54cd\u5e94\u7ed3\u679c\u4fe1\u606f\uff0c\u53ea\u70b9\u51fb\u3010\u8c03\u8bd5\u3011\u4ea7\u751f\u7684\u7ed3\u679c\u4ec5\u4e34\u65f6\u5b58\u5728\uff0c\u65e0\u6cd5\u4fdd\u5b58\u4e3a\u6d4b\u8bd5\u62a5\u544a\u4f9b\u540e\u7eed\u67e5\u770b\u3002

    \u70b9\u51fb\u3010\u8c03\u8bd5\u3011\u6309\u94ae\u4e0b\u62c9\u56fe\u6807\uff0c\u518d\u70b9\u51fb\u751f\u6210\u6d4b\u8bd5\u62a5\u544a\u3002\u5f39\u51fa\u6267\u884c\u7ed3\u679c\u9875\u9762\uff0c\u5f53\u573a\u666f\u6267\u884c\u5b8c\u6210\u540e\u53ef\u67e5\u770b\u5230\u8be6\u7ec6\u7684\u6267\u884c\u62a5\u544a\u3002

    "},{"location":"user_manual/api_test/api_automation/#27","title":"2.7 \u6267\u884c\u6307\u5b9a\u573a\u666f","text":"

    \u5728\u573a\u666f\u5217\u8868\u4e2d\u70b9\u51fb\u6307\u5b9a\u573a\u666f\u64cd\u4f5c\u5217\u4e2d\u7684\u3010\u6267\u884c\u3011\u6309\u94ae\uff0c\u5f39\u51fa\u6267\u884c\u7ed3\u679c\u9875\u9762\uff0c\u5f53\u573a\u666f\u6267\u884c\u5b8c\u6210\u540e\u53ef\u67e5\u770b\u5230\u8be6\u7ec6\u7684\u6267\u884c\u7ed3\u679c\u3002

    "},{"location":"user_manual/api_test/api_automation/#28","title":"2.8 \u6279\u91cf\u6267\u884c\u573a\u666f","text":"

    \u5728\u573a\u666f\u5217\u8868\u4e2d\u9009\u4e2d\u591a\u4e2a\u573a\u666f\u540e\u70b9\u51fb\u6279\u91cf\u64cd\u4f5c\u6309\u94ae\u4e2d\u7684\u3010\u6279\u91cf\u6267\u884c\u3011\uff0c\u6240\u6709\u7528\u4f8b\u6267\u884c\u5b8c\u6210\u540e\u53ef\u8fdb\u5165\u3010\u6d4b\u8bd5\u62a5\u544a\u3011\u9875\u9762\u67e5\u770b\u6267\u884c\u7ed3\u679c\u3002

    • \u3010\u8fd0\u884c\u73af\u5883\u3011\uff1a\u6279\u91cf\u6267\u884c\u573a\u666f\u9009\u62e9\u7684\u73af\u5883\uff0c\u652f\u6301\u9879\u76ee\u73af\u5883\u548c\u73af\u5883\u7ec4\u4e24\u79cd\u65b9\u5f0f\u3002
    • \u3010\u6a21\u5f0f\u3011\uff1a\u4e32\u884c\u8868\u793a\u591a\u573a\u666f\u4f9d\u6b21\u6267\u884c\uff1b\u5e76\u884c\u8868\u793a\u591a\u573a\u666f\u540c\u65f6\u6267\u884c\u3002
    • \u3010\u5176\u4ed6\u914d\u7f6e\u3011\uff1a\u72ec\u7acb\u62a5\u544a\u8868\u793a\u6bcf\u4e2a\u573a\u666f\u90fd\u751f\u6210\u4e00\u4efd\u62a5\u544a\uff1b\u96c6\u5408\u62a5\u544a\u8868\u793a\u6240\u6709\u573a\u666f\u53ea\u751f\u6210\u4e00\u4efd\u62a5\u544a\u3002
    • \u3010\u8d44\u6e90\u6c60\u3011\uff1a\u652f\u6301\u9009\u62e9\u4e0d\u540c\u8282\u70b9\u6267\u884c\u573a\u666f\uff0c\u53ef\u4ee5\u9009\u62e9\u666e\u901a\u8d44\u6e90\u6c60\u548c K8S \u8d44\u6e90\u6c60\uff0cK8S \u8d44\u6e90\u6c60\u662f\u4f01\u4e1a\u7248\u529f\u80fd\u3002

    "},{"location":"user_manual/api_test/api_automation/#29","title":"2.9 \u6279\u91cf\u7f16\u8f91\u573a\u666f","text":"

    \u5728\u573a\u666f\u5217\u8868\u4e2d\u9009\u4e2d\u591a\u4e2a\u573a\u666f\u540e\u70b9\u51fb\u6279\u91cf\u64cd\u4f5c\u6309\u94ae\u4e2d\u7684\u3010\u6279\u91cf\u7f16\u8f91\u3011\uff0c\u652f\u6301\u6279\u91cf\u7f16\u8f91\u3010\u7528\u4f8b\u7b49\u7ea7\u3001\u72b6\u6001\u3001\u8d23\u4efb\u4eba\u3001\u8fd0\u884c\u73af\u5883\u3001\u6807\u7b7e\u3011\u56db\u4e2a\u5c5e\u6027\u3002

    "},{"location":"user_manual/api_test/api_automation/#210","title":"2.10 \u6279\u91cf\u79fb\u52a8\u573a\u666f","text":"

    \u5728\u573a\u666f\u5217\u8868\u4e2d\u9009\u4e2d\u591a\u4e2a\u573a\u666f\u540e\u70b9\u51fb\u6279\u91cf\u64cd\u4f5c\u6309\u94ae\u4e2d\u7684\u3010\u6279\u91cf\u79fb\u52a8\u3011\uff0c\u652f\u6301\u5c06\u573a\u666f\u5230\u79fb\u52a8\u5176\u4ed6\u6a21\u5757\u4f4d\u7f6e\u3002

    "},{"location":"user_manual/api_test/api_automation/#211","title":"2.11 \u6279\u91cf\u590d\u5236\u573a\u666f","text":"

    \u5728\u573a\u666f\u5217\u8868\u4e2d\u9009\u4e2d\u591a\u4e2a\u573a\u666f\u540e\u70b9\u51fb\u6279\u91cf\u64cd\u4f5c\u6309\u94ae\u4e2d\u7684\u3010\u6279\u91cf\u590d\u5236\u3011\uff0c\u652f\u6301\u590d\u5236\u591a\u4e2a\u573a\u666f\u3002

    "},{"location":"user_manual/api_test/api_automation/#212","title":"2.12 \u6279\u91cf\u5220\u9664\u573a\u666f","text":"

    \u5728\u573a\u666f\u5217\u8868\u4e2d\u9009\u4e2d\u591a\u4e2a\u573a\u666f\u540e\u70b9\u51fb\u6279\u91cf\u64cd\u4f5c\u6309\u94ae\u4e2d\u7684\u3010\u6279\u91cf\u5220\u9664\u3011\uff0c\u652f\u6301\u5220\u9664\u591a\u4e2a\u573a\u666f\u3002

    "},{"location":"user_manual/api_test/api_automation/#213","title":"2.13 \u751f\u6210\u4f9d\u8d56\u5173\u7cfb","text":"

    \u5728\u573a\u666f\u5217\u8868\u4e2d\u9009\u4e2d\u591a\u4e2a\u573a\u666f\u540e\u70b9\u51fb\u6279\u91cf\u64cd\u4f5c\u6309\u94ae\u4e2d\u7684\u3010\u751f\u6210\u4f9d\u8d56\u5173\u7cfb\u3011\u3002 \u3010\u4f9d\u8d56\u5173\u7cfb\u56fe\u3011\u53ef\u4ee5\u5bfc\u51fa\u3010JPG\u3011\u548c\u3010PNG\u3011\u56fe\u7247\u683c\u5f0f\u3002

    "},{"location":"user_manual/api_test/api_automation/#214","title":"2.14 \u6279\u91cf\u6dfb\u52a0\u6d4b\u8bd5\u8ba1\u5212","text":"

    \u5728\u573a\u666f\u5217\u8868\u4e2d\u9009\u4e2d\u591a\u4e2a\u573a\u666f\u540e\u70b9\u51fb\u6279\u91cf\u64cd\u4f5c\u6309\u94ae\u4e2d\u7684\u3010\u6279\u91cf\u6dfb\u52a0\u6d4b\u8bd5\u8ba1\u5212\u3011\uff0c\u652f\u6301\u5c06\u591a\u4e2a\u573a\u666f\u6dfb\u52a0\u5230\u6d4b\u8bd5\u8ba1\u5212\u3002

    \u52fe\u9009\u8981\u6dfb\u52a0\u7684\u6d4b\u8bd5\u8ba1\u5212\uff0c\u70b9\u51fb\u786e\u5b9a\u5373\u53ef\u6dfb\u52a0\u6210\u529f\u3002

    "},{"location":"user_manual/api_test/api_automation/#215","title":"2.15 \u6279\u91cf\u521b\u5efa\u6027\u80fd\u6d4b\u8bd5","text":"

    \u5728\u573a\u666f\u5217\u8868\u4e2d\u9009\u4e2d\u591a\u4e2a\u573a\u666f\u540e\u70b9\u51fb\u6279\u91cf\u64cd\u4f5c\u6309\u94ae\u4e2d\u7684\u3010\u6279\u91cf\u521b\u5efa\u6027\u80fd\u6d4b\u8bd5\u3011\uff0c\u652f\u6301\u5c06\u591a\u4e2a\u573a\u666f\u5bfc\u5165\u6027\u80fd\u6d4b\u8bd5\u3002

    "},{"location":"user_manual/api_test/api_automation/#216","title":"2.16 \u573a\u666f\u5b9a\u65f6\u4efb\u52a1","text":"

    \u573a\u666f\u5217\u8868\u9875\u70b9\u51fb\u53f3\u4fa7\u3010...\u3011\uff0c \u9009\u62e9\u5b9a\u65f6\u4efb\u52a1\u3002\u5f39\u51fa\u5b9a\u65f6\u4efb\u52a1\u914d\u7f6e\u9875\u9762\uff0c\u5b9a\u65f6\u4efb\u52a1\u53ef\u4ee5\u914d\u7f6e\u81ea\u52a8\u751f\u6210\uff0c\u80fd\u770b\u5230\u8fd1 5 \u6b21\u8fd0\u884c\u7ed3\u679c\uff0c\u652f\u6301\u9009\u62e9\u8fd0\u884c\u8d44\u6e90\u6c60\u3002

    "},{"location":"user_manual/api_test/api_automation/#217","title":"2.17 \u573a\u666f\u5bfc\u51fa \u5bfc\u5165","text":"

    \u573a\u666f\u5217\u8868\u652f\u6301\u5bfc\u51fa\u3010MeterSphere \u683c\u5f0f\u3011\u548c\u3010JMETER \u683c\u5f0f\u3011 \u4e24\u79cd\u683c\u5f0f\u3002

    \u573a\u666f\u5217\u8868\u652f\u6301\u5bfc\u5165\u3010MeterSphere\u3011\u3001\u3010Postman\u3011\u3001\u3010JMeter\u3011\u3001\u3010HAR\u3011\u56db\u79cd\u683c\u5f0f\uff0c\u573a\u666f\u5bfc\u5165\u652f\u6301\u3010\u8986\u76d6\u3011\u548c\u3010\u4e0d\u8986\u76d6\u3011\u4e24\u79cd\u6a21\u5f0f\u3002

    \u573a\u666f\u5728\u8de8\u9879\u76ee\u3001\u8de8\u5de5\u4f5c\u7a7a\u95f4\u751a\u81f3\u662f\u8de8\u670d\u52a1\u8fc1\u79fb\u6570\u636e\u5bfc\u5165\u3001\u5bfc\u51fa\u65f6\uff0c\u80fd\u591f\u4fdd\u7559\u81ea\u8eab\u6b65\u9aa4\u7684\u5f15\u7528\u5173\u7cfb\uff0c\u4fdd\u8bc1\u6570\u636e\u7684\u5b8c\u6574\u6027\u548c\u4e00\u81f4\u6027\u3002\u540c\u4e00\u5de5\u4f5c\u7a7a\u95f4\u4e0b\uff0c\u652f\u6301\u5bfc\u5165\u4e0d\u540c\u5de5\u4f5c\u7a7a\u95f4\u4e0b\u7684\u6570\u636e\u5bfc\u5165\u3002

    "},{"location":"user_manual/api_test/api_automation/#218","title":"2.18 \u573a\u666f\u67e5\u770b\u5f15\u7528","text":"

    \u652f\u6301\u67e5\u770b\u573a\u666f\u5728\u53e6\u5916\u573a\u666f\u548c\u6d4b\u8bd5\u8ba1\u5212\u7684\u5f15\u7528\u60c5\u51b5\u3002

    "},{"location":"user_manual/api_test/api_automation/#219","title":"2.19 \u5c06\u573a\u666f\u79fb\u5165\u56de\u6536\u7ad9","text":"

    \u5728\u573a\u666f\u5217\u8868\u4e2d\u70b9\u51fb\u6307\u5b9a\u573a\u666f\u64cd\u4f5c\u5217\u4e2d\u7684\u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u8be5\u573a\u666f\u5c06\u88ab\u79fb\u5165\u56de\u6536\u7ad9\uff0c\u540c\u65f6\u573a\u666f\u53d8\u4e3a\u3010\u5e9f\u5f03\u3011\u72b6\u6001\u3002\u7528\u6237\u53ef\u4ee5\u70b9\u51fb\u5de6\u4fa7\u6a21\u5757\u6811\u4e2d\u7684\u3010\u56de\u6536\u7ad9\u3011\u67e5\u770b\u5df2\u5e9f\u5f03\u7684\u573a\u666f\u3002

    "},{"location":"user_manual/api_test/api_automation/#220","title":"2.20 \u56de\u6536\u7ad9\u64cd\u4f5c","text":"

    \u70b9\u51fb\u5de6\u4fa7\u6a21\u5757\u6811\u4e2d\u7684\u3010\u56de\u6536\u7ad9\u3011\uff0c\u8fdb\u5165\u56de\u6536\u7ad9\u9875\u9762\uff0c\u652f\u6301\u5bf9\u5df2\u7ecf\u5220\u9664\u7684\u573a\u666f\u8fdb\u884c\u3010\u6062\u590d\u3011\u3010\u5220\u9664\u3011\u64cd\u4f5c\u3002\u9009\u62e9\u8981\u6062\u590d\u7684\u573a\u666f\u70b9\u51fb\u64cd\u4f5c\u5217\u4e2d\u7684\u3010\u6062\u590d\u3011\u6309\u94ae\uff0c\u53ef\u4ee5\u5c06\u6570\u636e\u6062\u590d\u5230\u63a5\u53e3\u81ea\u52a8\u5316\u5217\u8868\uff1b\u70b9\u51fb\u64cd\u4f5c\u5217\u4e2d\u7684\u3010\u5220\u9664\u3011\u6309\u94ae\u3002 \u4ece\u56de\u6536\u7ad9\u4e2d\u5220\u9664\u67d0\u4e2a\u573a\u666f\u65f6\uff0c\u8be5\u573a\u666f\u5c06\u4ece\u6570\u636e\u5e93\u4e2d\u5220\u9664\u4e14\u65e0\u6cd5\u6062\u590d\uff0c\u8bf7\u8c28\u614e\u4f7f\u7528\u8be5\u529f\u80fd\u3002

    "},{"location":"user_manual/api_test/api_automation/#221-mqtt-x-pack","title":"2.21 MQTT\u534f\u8bae (X-Pack)","text":"

    \u70b9\u51fb\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u7cfb\u7edf-\u63d2\u4ef6\u7ba1\u7406\u3011\uff0c\u70b9\u51fb\u3010\u70b9\u51fb\u4e0a\u4f20\u3011\uff0c\u5c06 MQTT \u534f\u8bae\u7684 Jar \u5305\u4e0a\u4f20\u4e0a\u53bb\u3002

    \u70b9\u51fb\u3010\u63a5\u53e3\u81ea\u52a8\u5316-\u521b\u5efa\u573a\u666f\u3011\uff0c\u53f3\u4fa7\u4f1a\u51fa\u73b0 MQTT \u8bf7\u6c42\u76f8\u5173\u5185\u5bb9\u3002

    \u6839\u636e\u9700\u8981\uff0c\u9009\u62e9 MQTT \u8bf7\u6c42\u7684\u7ec4\u4ef6

    "},{"location":"user_manual/api_test/api_automation/#222-websocket-x-pack","title":"2.22 Websocket\u534f\u8bae (X-Pack)","text":"

    \u70b9\u51fb\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u7cfb\u7edf-\u63d2\u4ef6\u7ba1\u7406\u3011\uff0c\u70b9\u51fb\u3010\u70b9\u51fb\u4e0a\u4f20\u3011\uff0c\u5c06 Websocket \u534f\u8bae\u7684 Jar \u5305\u4e0a\u4f20\u4e0a\u53bb\u3002

    \u70b9\u51fb\u3010\u63a5\u53e3\u81ea\u52a8\u5316-\u521b\u5efa\u573a\u666f\u3011\uff0c\u53f3\u4fa7\u4f1a\u51fa\u73b0 Websocket \u8bf7\u6c42\u76f8\u5173\u5185\u5bb9\uff0c\u6839\u636e\u9700\u8981\uff0c\u9009\u62e9 Websocket \u8bf7\u6c42\u7684\u7ec4\u4ef6\u3002

    "},{"location":"user_manual/api_test/api_automation/#223-thrift-x-pack","title":"2.23 Thrift\u534f\u8bae (X-Pack)","text":"

    \u4e0e\u4e0a\u9762 MQTT\u534f\u8bae (X-Pack) \u548c Websocket\u534f\u8bae (X-Pack) \u64cd\u4f5c\u6b65\u9aa4\u76f8\u540c

    "},{"location":"user_manual/api_test/api_definition/","title":"\u63a5\u53e3\u5b9a\u4e49","text":""},{"location":"user_manual/api_test/api_definition/#1","title":"1 \u6982\u8ff0","text":"

    \u63a5\u53e3\u5b9a\u4e49\u5c55\u793a\u5f53\u524d\u9879\u76ee\u7684\u6240\u6709\u63a5\u53e3\u6570\u636e\uff0c\u5305\u542b\u5de6\u4fa7\u63a5\u53e3\u6a21\u5757\u6811\u3001API \u63a5\u53e3\u5217\u8868\u3001\u63a5\u53e3 CASE \u5217\u8868\u3001\u6587\u6863\u56db\u4e2a\u90e8\u5206\u3002

    "},{"location":"user_manual/api_test/api_definition/#2","title":"2 \u63a5\u53e3\u7ba1\u7406","text":""},{"location":"user_manual/api_test/api_definition/#21","title":"2.1 \u63a5\u53e3\u534f\u8bae","text":"

    \u70b9\u51fb\u5de6\u4e0a\u89d2\u3010HTTP\u3011\u4e0b\u62c9\u6846\uff0c\u53ef\u5207\u6362\u63a5\u53e3\u534f\u8bae\uff0c\u76ee\u524d\u652f\u6301 HTTP\u3001TCP \u3001SQL \u548c DUBBO \u56db\u79cd\u534f\u8bae\u3002

    "},{"location":"user_manual/api_test/api_definition/#22","title":"2.2 \u6a21\u5757\u6811\u7ba1\u7406","text":"

    \u63a5\u53e3\u6570\u636e\u53ef\u4ee5\u5206\u6a21\u5757\u7ba1\u7406\uff0c\u53ef\u6309\u7167\u4f01\u4e1a\u5b9e\u9645\u6d4b\u8bd5\u9879\u76ee\u5212\u5206\u4e3a\u591a\u7ea7\u6a21\u5757\u8fdb\u884c\u7ba1\u7406\uff0c\u6700\u591a\u53ef\u5206\u516b\u7ea7\u3002\u9f20\u6807\u60ac\u6d6e\u5728\u6a21\u5757\u4e0a\u70b9\u51fb\u3010+\u3011\u521b\u5efa\u4e00\u7ea7\u6a21\u5757\u3002\u6a21\u5757\u652f\u6301\u6dfb\u52a0\u5b50\u6a21\u5757\u3001\u6a21\u7cca\u641c\u7d22\u3001\u5220\u9664\u3001\u91cd\u547d\u540d\u64cd\u4f5c\uff0c\u9009\u4e2d\u76ee\u5f55\u53ef\u8fdb\u884c\u62d6\u62fd\u8c03\u6574\u3002

    "},{"location":"user_manual/api_test/api_definition/#23","title":"2.3 \u63a5\u53e3\u5feb\u6377\u8c03\u8bd5","text":"

    \u9f20\u6807\u60ac\u6d6e\u5728\u3010+\u3011\u53ef\u4ee5\u5b8c\u6210\u3010\u5feb\u901f\u8c03\u8bd5\u3011\u3010\u521b\u5efa\u63a5\u53e3\u3011\u3010\u5173\u95ed\u6240\u6709\u9875\u7b7e\u3011\u64cd\u4f5c\u3002\u70b9\u51fb\u3010\u5feb\u6377\u8c03\u8bd5\u3011\u8fdb\u5165\u5feb\u6377\u8c03\u8bd5\u9875\u9762\u3002\u586b\u5199\u5b8c\u6574\u7684\u6d4b\u8bd5\u5730\u5740\u548c\u57fa\u672c\u8bf7\u6c42\u53c2\u6570\uff0c\u70b9\u51fb\u3010\u6d4b\u8bd5\u3011\u6309\u94ae\u5373\u53ef\u8fdb\u884c\u63a5\u53e3\u8c03\u8bd5\u3002\u6d4b\u8bd5\u5b8c\u6210\u70b9\u51fb\u3010\u53e6\u5b58\u4e3a\u65b0\u7528\u4f8b\u3011\uff0c\u586b\u5199\u63a5\u53e3\u7528\u4f8b\u540d\u79f0\u53ef\u4fdd\u5b58\u4e3a\u4e00\u4e2a\u65b0\u7684\u63a5\u53e3\u7528\u4f8b\u3002

    "},{"location":"user_manual/api_test/api_definition/#24","title":"2.4 \u5feb\u901f\u521b\u5efa\u63a5\u53e3","text":"

    \u9f20\u6807\u60ac\u6d6e\u5728\u3010+\u3011\uff0c\u70b9\u51fb\u5982\u4e0a\u56fe\u3010\u521b\u5efa\u63a5\u53e3\u3011\u5f39\u51fa\u521b\u5efa\u63a5\u53e3\u8be6\u60c5\u9875\u9762\u3002\u521b\u5efa\u63a5\u53e3\u9875\u9762\u586b\u5199\u63a5\u53e3\u57fa\u7840\u4fe1\u606f\u3001\u8bf7\u6c42\u65b9\u5f0f\u3001\u8bf7\u6c42\u53c2\u6570\u3001\u54cd\u5e94\u5185\u5bb9\u5373\u53ef\u3002

    • \u8bf7\u6c42\u65b9\u5f0f\uff1a\u652f\u6301GET\u3001POST\u3001PUT\u3001PATCH\u3001DELETE\u3001OPTIONS\u3001HEAD\u3001CONNECT\u3002
    • \u8bf7\u6c42\u53c2\u6570\uff1a\u5305\u542b\u9ed8\u8ba4\u8bf7\u6c42\u5934\u53d8\u91cf\uff1b\u5e38\u7528query\u3001rest\u53c2\u6570\uff0c\u9f20\u6807\u60ac\u6d6e\u4f1a\u6709\u63d0\u793a\u3002
    • \u8bf7\u6c42\u4f53\uff1a\u652f\u6301\u591a\u79cd\u5f62\u5f0f\uff1aform-data\uff0cx-www-form-urlencoded\uff0cjson\uff0cxml\uff0craw\uff0cbinary\u3002

    \u53c2\u6570\u586b\u5199\u5b8c\u6210\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u6309\u94ae\u5373\u53ef\u5b8c\u6210\u63a5\u53e3\u5b9a\u4e49\u521b\u5efa\uff0c\u5e76\u8df3\u8f6c\u5230\u63a5\u53e3\u5c55\u793a\u3010\u7f16\u8f91\u8be6\u60c5\u3011\u9875\u9762\uff0c\u53ef\u5728\u3010API\u3011\u3010TEST\u3011\u3010CASE\u3011\u3010MOCK\u3011\u83dc\u5355\u4e0b\u5bf9\u63a5\u53e3\u505a\u8fdb\u4e00\u6b65\u8c03\u6574\u3002

    "},{"location":"user_manual/api_test/api_definition/#3-api","title":"3 API","text":""},{"location":"user_manual/api_test/api_definition/#31-api","title":"3.1 \u7f16\u8f91 API","text":"

    \u5728\u7f16\u8f91\u63a5\u53e3\u3010API\u3011\u9875\u9762\u4e2d\u53ef\u4ee5\u5bf9\u63a5\u53e3\u7684\u57fa\u7840\u4fe1\u606f\u3001\u8bf7\u6c42\u53ca\u54cd\u5e94\u5b9a\u4e49\u3001\u524d\u540e\u7f6e\u4f9d\u8d56\u5173\u7cfb\u8fdb\u884c\u8be6\u7ec6\u7f16\u8f91\u3002 \u5728\u4f01\u4e1a\u7248\u3010Xpack\u3011\u529f\u80fd\u5305\u4e2d\uff1a\u5bf9\u5df2\u6709 CASE \u7684\u63a5\u53e3\uff0c\u66f4\u6539\u63a5\u53e3\u5730\u5740\u3001\u8bf7\u6c42\u5934\u3001\u8bf7\u6c42\u53c2\u6570\u7b49\u5185\u5bb9\u3002\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\uff0c\u4f1a\u5f39\u51fa\u540c\u6b65\u66f4\u65b0\u8bbe\u7f6e\u786e\u8ba4\u6846\uff0c\u53ef\u4e00\u952e\u540c\u6b65\u88ab\u4f7f\u7528\u7684 CASE \u53c2\u6570\uff0c\u4fbf\u4e8e\u7ef4\u62a4\u811a\u672c\u3002

    "},{"location":"user_manual/api_test/api_definition/#32","title":"3.2 \u5173\u6ce8\u63a5\u53e3","text":"

    \u70b9\u51fb\u9875\u9762\u53f3\u4e0a\u89d2\u7684\u3010\u4e94\u89d2\u661f\u56fe\u6807\u3011\uff0c\u53ef\u5173\u6ce8/\u53d6\u6d88\u5173\u6ce8\u8be5\u63a5\u53e3\u5b9a\u4e49\u3002\u82e5\u63a5\u53e3\u6709\u53d8\u66f4\u4f1a\u53ca\u65f6\u63d0\u9192\u5173\u6ce8\u8005\u3002

    "},{"location":"user_manual/api_test/api_definition/#33","title":"3.3 \u63a5\u53e3\u53d8\u66f4\u8bb0\u5f55","text":"

    \u70b9\u51fb\u9875\u9762\u53f3\u4e0a\u89d2\u7684\u3010\u53d8\u66f4\u8bb0\u5f55\u3011\u53ef\u67e5\u770b\u6b64\u63a5\u53e3\u6240\u6709\u7684\u53d8\u66f4\u8bb0\u5f55\u3002\u53ef\u67e5\u770b\u5177\u4f53\u7684\u53d8\u66f4\u5b57\u6bb5\u3001\u53d8\u66f4\u524d\u3001\u53d8\u66f4\u540e\u7684\u4fe1\u606f\u3002

    "},{"location":"user_manual/api_test/api_definition/#34-x-pack","title":"3.4 \u7248\u672c\u7ba1\u7406 (X-Pack)","text":"

    \u70b9\u51fb\u9875\u9762\u53f3\u4e0a\u89d2\u7684\u3010\u7248\u672c: v1.1.0\u3011\u53ef\u67e5\u770b\u6240\u6709\u7684\u7248\u672c\u53f7\uff0c\u9009\u62e9\u5f53\u524d\u7248\u672c\u53f7\uff0c\u521b\u5efa\u63a5\u53e3\u3002\u5728\u63a5\u53e3\u5217\u8868\u9ed8\u8ba4\u5c55\u793a\u6240\u6709\u63a5\u53e3\u7684\u6700\u65b0\u7248\u672c\u6570\u636e\uff0c\u5e76\u652f\u6301\u6279\u91cf\u64cd\u4f5c\u590d\u5236\u6307\u5b9a\u7248\u672c\u7684 CASE \u548c Mock \u6570\u636e\uff0c\u53ef\u5feb\u901f\u5207\u6362\u7248\u672c\u53ca\u5386\u53f2\u6570\u636e\u5bf9\u6bd4\uff0c\u4f18\u5316\u5bf9\u63a5\u53e3\u7684\u7ba1\u7406\u65b9\u6cd5\u3002

    "},{"location":"user_manual/api_test/api_definition/#35-http","title":"3.5 HTTP \u8bf7\u6c42","text":"

    \u8bf7\u6c42\u5934 \u8bf7\u6c42\u5934\uff1a\u63d0\u4f9b\u8bf7\u6c42\u5934\u53d8\u91cf\uff0c\u70b9\u51fb\u5373\u53ef\u5f39\u51fa\u65b9\u6cd5\u5217\u8868\u3002\u70b9\u51fb\u53c2\u6570\u3010\u94c5\u7b14\u56fe\u6807\u3011\u8fd8\u53ef\u6dfb\u52a0 Mock \u6570\u636e\u548c JMeter \u65b9\u6cd5\u5185\u7f6e\u51fd\u6570\u3002

    • \u51fd\u6570 Tab \u9875\u7b7e\u9ed8\u8ba4\u9009\u4e2d\u3010Mock\u65b9\u6cd5\u3011\uff0c\u9009\u62e9\u6570\u636e\u7c7b\u578b\u53ef\u6dfb\u52a0\u51fd\u6570\u4f7f\u7528\uff0c\u6570\u636e\u7c7b\u578b\u5217\u8868\u4e0b\u65b9\u4f1a\u5c55\u793a\u51fd\u6570\u9884\u89c8\u6548\u679c\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u6309\u94ae\u751f\u6548\u3002
    • \u51fd\u6570 Tab \u9875\u7b7e\u9009\u62e9\u9009\u62e9\u3010JMeter\u65b9\u6cd5\u3011\uff0c\u5373\u53ef\u9009\u62e9\u4f7f\u7528\u5185\u7f6e\u7684 Jmeter \u51fd\u6570\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u6309\u94ae\u751f\u6548\u3002 \u5185\u7f6e\u51fd\u6570\u7684\u8be6\u7ec6\u8bf4\u660e\u8bf7\u53c2\u8003 \u5185\u7f6e\u51fd\u6570

    QUERY\u53c2\u6570 QUERY \u53c2\u6570\u662f\u5728\u63a5\u53e3\u5730\u5740\u680f\u4e2d\u8ddf\u5728\uff1f\u540e\u9762\u7684\u53c2\u6570\uff0c\u5982 updateapi?id=11\uff1b\u53ef\u76f4\u63a5\u5728\u4e0b\u65b9\u5217\u8868\u8f93\u5165 QUERY \u53c2\u6570\u952e\u503c\u5bf9\u3002\u70b9\u51fb\u53c2\u6570\u4e0a\u9762\u7684 \u3010\u8bbe\u7f6e\u56fe\u6807\u3011\uff0c\u53ef\u6dfb\u52a0\u53c2\u6570\u7684\u5176\u4ed6\u5c5e\u6027\u5982\u7f16\u7801\u3001\u6700\u5927\u957f\u5ea6\u3001\u63cf\u8ff0\u7b49\u3002\u70b9\u51fb\u3010\u6279\u91cf\u6dfb\u52a0\u3011\u6309\u94ae\uff0c\u53ef\u4ee5\u6279\u91cf\u6dfb\u52a0\u53c2\u6570\uff1a\u586b\u5199\u53c2\u6570\u952e\u503c\u5bf9\u70b9\u51fb\u786e\u5b9a\u5373\u53ef\u89e3\u6790\u5230\u53c2\u6570\u5217\u8868\u3002

    REST\u53c2\u6570 REST\u53c2\u6570\u662f\u5728\u63a5\u53e3\u5730\u5740\u680f\u4e2d\u88ab\u3010/\u3011\u5206\u9694\u7684\u53c2\u6570\uff0c\u5982 updateapi/{id}\u3002\u4f7f\u7528\u65b9\u6cd5\u540c\u4e0a\u3002

    \u8bf7\u6c42\u4f53 \u8bf7\u6c42\u4f53\u53c2\u6570\u652f\u6301\u591a\u79cd\u5f62\u5f0f\uff1aform-data\uff0cx-www-form-urlencoded\uff0cjson\uff0cxml\uff0craw\uff0cbinary\u3002 \u8bf7\u6c42\u4f53\u662f form-data \u548c x-www-form-urlencoded \u683c\u5f0f\u65f6\uff0c\u53ef\u4ee5\u9009\u62e9\u53c2\u6570\u7c7b\u578b\u3002\u4e0d\u540c\u7684\u53c2\u6570\u7c7b\u578b\uff0c\u7cfb\u7edf\u4f1a\u63d0\u4f9b \u9ed8\u8ba4\u5c5e\u6027\u3002

    \u8bf7\u6c42\u4f53\u662f json \u683c\u5f0f\u65f6\uff0c\u53ef\u4ee5\u4f7f\u7528 Json-schema \u7528\u4e8e\u9a8c\u8bc1json\u6570\u636e\u683c\u5f0f\u3002

    \u8ba4\u8bc1\u914d\u7f6e \u652f\u6301 Basic Auth \u7684\u8ba4\u8bc1\u65b9\u5f0f\u548c\u5bf9\u6570\u636e\u52a0\u5bc6\uff0c\u6b64\u5904\u53ef\u4ee5\u914d\u7f6e\u8ba4\u8bc1\u4fe1\u606f\u53ca\u52a0\u5bc6\u65b9\u5f0f\u3002

    \u5176\u4ed6\u8bbe\u7f6e \u53ef\u8bbe\u7f6e\u8bc1\u4e66\u3001\u8ddf\u968f\u91cd\u5b9a\u5411\u3001\u8fde\u63a5\u8d85\u65f6\u3001\u54cd\u5e94\u8d85\u65f6\u65f6\u95f4\u7b49\u3002

    "},{"location":"user_manual/api_test/api_definition/#36-tcp","title":"3.6 TCP \u8bf7\u6c42","text":"

    \u8bf7\u6c42\u53c2\u6570 \u8bf7\u6c42\u53c2\u6570\u53ef\u4ee5\u5728\u8bf7\u6c42\u6a21\u677f\u901a\u8fc7 ${xxx} \u5f15\u7528\u3002

    \u8bf7\u6c42\u4f53 \u8bf7\u6c42\u4f53\u53c2\u6570\u652f\u6301 json\u3001xml\u3001raw \u4e09\u79cd\u6570\u636e\u683c\u5f0f\u3002\u5176\u4e2d\u5728 xml \u53c2\u6570\u4e2d\u70b9\u51fb\u3010\u6dfb\u52a0\u3011\u6309\u94ae\uff0c\u652f\u6301\u4ee5\u8868\u683c\u5f62\u5f0f\u6dfb\u52a0\u53c2\u6570\u3002xml \u53ef\u6dfb\u52a0 object\u3001string\u3001array \u4e09\u79cd\u6570\u636e\u7c7b\u578b\u7684\u53c2\u6570\u3002\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u6309\u94ae\u4fdd\u5b58\u6dfb\u52a0\u7684 xml \u53c2\u6570\u3002

    \u5176\u4ed6\u8bbe\u7f6e \u5728\u5176\u4ed6\u8bbe\u7f6e\u4e2d\u53ef\u8bbe\u7f6e TCP \u5ba2\u6237\u7aef\u3001\u8fde\u63a5\u65f6\u95f4\u3001\u54cd\u5e94\u65f6\u95f4\u7b49\u53c2\u6570\u3002TCPClient \u9ed8\u8ba4\u63d0\u4f9b\u4e09\u79cd\u8fde\u63a5\u65b9\u5f0f\u3002

    "},{"location":"user_manual/api_test/api_definition/#37-sql","title":"3.7 SQL \u8bf7\u6c42","text":"

    SQL \u8bf7\u6c42\u652f\u6301\u914d\u7f6e\u591a\u4e2a\u6570\u636e\u6e90\uff0c\u9009\u62e9\u8fd0\u884c\u73af\u5883\u3001\u6570\u636e\u6e90\uff0c\u7f16\u5199sql\u811a\u672c\uff08sql\u811a\u672c\u652f\u6301\u4f20\u9012\u53d8\u91cf${\u53d8\u91cf\u540d}\uff09\uff0c\u67e5\u8be2\u7ed3\u679c\u53ef\u4ee5\u3010\u6309\u7ed3\u679c\u5b58\u50a8\u3011\u3010\u6309\u5217\u5b58\u50a8\u3011\u4e24\u79cd\u65b9\u5f0f\u3002 \u6309\u7ed3\u679c\u5b58\u50a8\uff1a\u662f\u5c06\u8fd4\u56de\u7ed3\u679c\u6240\u6709\u7684\u5b57\u6bb5\u5b58\u50a8\u5230\u4e00\u4e2a\u53d8\u91cf\u4e2d\u53bb\uff0c\u5982\u679c\u9700\u8981\u4f7f\u7528\u5176\u4e2d\u7684\u67d0\u4e2a\u5b57\u6bb5\u5219\u9700\u8981\u5bf9\u53d8\u91cf\u8fdb\u884c\u89e3\u6790\uff0c\u91cc\u9762\u7684\u5b9e\u9645\u6570\u636e\u662f\u96c6\u5408\u5d4c\u5957\u96c6\u5408\u3002\u6bcf\u4e00\u884c\u6570\u636e\u90fd\u662f\u4ee5 <\u5b57\u6bb5\u540d>\uff1a<\u5b57\u6bb5\u503c>( \u5373key :value)\u7684\u683c\u5f0f\u5b58\u5230map\u4e2d\u7684\uff0c\u800c\u6574\u4e2a\u8fd4\u56de\u6570\u636e\u5c31\u662f\u4ee5\u4e00\u4e2a\u5927\u7684map\u53bb\u5b58\u50a8\u6bcf\u4e00\u884c\u7684\u6570\u636e\u7684map \uff0c\u6700\u540e\u5f97\u5230\u4e00\u4e2a\u7ed3\u679c\u96c6\u5408\uff0c\u5982\u679c\u9700\u8981\u5176\u4e2d\u7684\u6570\u636e\uff0c\u9700\u8981\u901a\u8fc7 beanshell \u6216 python \u811a\u672c\u53bb\u89e3\u6790\u3002 \u6309\u5217\u5b58\u50a8\uff1a\u76f4\u63a5\u6307\u5b9a\u8fd4\u56de\u5b57\u6bb5\u7684\u7ed3\u679c\u503c\uff0c\u5217\u6570\u8981\u548c SQL \u8bed\u53e5\u4e2d\u67e5\u8be2\u5b57\u6bb5\u8fd4\u56de\u7ed3\u679c\u7684\u5217\u6570\u76f8\u540c\u3002\u540c\u65f6\u53ef\u4ee5\u7528\u9017\u53f7\u4f5c\u4e3a\u5360\u4f4d\u7b26\u4ee3\u66ff\u5217\u540d\uff0c\u53ea\u5199\u51fa \u8981\u63d0\u53d6\u7684\u5217\u540d\u5373\u53ef\uff0c\u5f15\u7528\u65f6 ${\u5217\u540d\u53d8\u91cf_n}

    "},{"location":"user_manual/api_test/api_definition/#38-dubbo","title":"3.8 DUBBO \u8bf7\u6c42","text":"

    Interface \u70b9\u51fb\u3010Get Providers List\u3011\u6309\u94ae\uff0c\u53ef\u4ece\u3010Registry Center\u3011\u4e2d\u83b7\u53d6\u670d\u52a1\u5217\u8868\u3002\u53ef\u5728\u5b57\u6bb5 Interfaces \u4e0b\u62c9\u5217\u8868\u4e2d\u9009\u62e9\u9700\u8981\u6d4b\u8bd5\u7684\u63a5\u53e3\u53ca\u65b9\u6cd5\uff0c\u6839\u636e\u8be5\u65b9\u6cd5\u7684\u5b9a\u4e49\u4f20\u5165\u6240\u9700\u7684\u53c2\u6570\u3002

    Config Center \u53ef\u5728\u3010Config Center\u3011\u4e2d\u586b\u5199\u914d\u7f6e\u8d85\u65f6\u65f6\u95f4\u3001\u7528\u6237\u540d\u3001\u5bc6\u7801\u7b49\u76f8\u5173\u57fa\u7840\u4fe1\u606f\u3002

    Registry Center \u53ef\u5728\u3010Registry Center\u3011\u9875\u9762\u4e2d\u9009\u62e9\u534f\u8bae\u3001\u586b\u5199\u8fde\u63a5\u4fe1\u606f\u7b49\u3002

    Consumer & Service \u53ef\u5728\u3010Consumer & Service\u3011\u586b\u5199 Consumer \u548c Service \u4fe1\u606f\u3002

    Args \u53ef\u5728\u3010Args\u3011\u4e2d\u6dfb\u52a0\u8bf7\u6c42\u76f8\u5173\u53c2\u6570\u3002

    Attachment Args \u53ef\u5728\u3010Attachment Args\u3011\u4e2d\u8bbe\u7f6e\u5176\u4ed6\u952e\u503c\u5bf9\u53c2\u6570\u3002

    "},{"location":"user_manual/api_test/api_definition/#39","title":"3.9 \u4f9d\u8d56\u5173\u7cfb\u8bbe\u7f6e","text":"

    \u63a5\u53e3\u5b9a\u4e49\u652f\u6301\u8bbe\u7f6e\u63a5\u53e3\u7684\u524d\u540e\u7f6e\u4f9d\u8d56\u5173\u7cfb\u3002\u70b9\u51fb\u3010\u6dfb\u52a0\u3011\u6309\u94ae\uff0c\u53ef\u4ee5\u6dfb\u52a0\u524d\u7f6e\u63a5\u53e3\u3001\u540e\u7f6e\u63a5\u53e3\u4f9d\u8d56\u3002

    "},{"location":"user_manual/api_test/api_definition/#310-api","title":"3.10 API \u5217\u8868\u529f\u80fd","text":"

    \u652f\u6301\u5bf9\u63a5\u53e3\u5b9a\u4e49\u7684\u6267\u884c\u3001\u7f16\u8f91\u3001\u5220\u9664\u3001\u590d\u5236\u64cd\u4f5c\u70b9\u51fb\u66f4\u591a\u64cd\u4f5c\u3010...\u3011\u53ef\u4ee5 \u67e5\u770b\u5f15\u7528\u3001\u67e5\u770bCASE\u3002

    • \u6267\u884c\uff1a\u8fdb\u5165\u3010\u7f16\u8f91\u63a5\u53e3\u8be6\u60c5-TEST\u3011\u9875\u9762
    • \u7f16\u8f91\uff1a\u8fdb\u5165\u3010\u7f16\u8f91\u63a5\u53e3\u8be6\u60c5-API\u3011\u9875\u9762
    • \u5220\u9664\uff1a\u5220\u9664\u8be5\u63a5\u53e3\u5230\u3010\u56de\u6536\u7ad9\u3011
    • \u590d\u5236\uff1a\u590d\u5236\u8be5\u63a5\u53e3\u5b9a\u4e49\u4fe1\u606f
    • \u67e5\u770b\u5f15\u7528\uff1a\u53ef\u4ee5\u67e5\u770b\u63a5\u53e3\u5177\u4f53\u54ea\u4e2a\u573a\u666f\u5f15\u7528
    • \u67e5\u770b CASE :\u53ef\u4ee5\u67e5\u770b\u63a5\u53e3\u4e0b\u5199\u597d\u7684 CASE \u7528\u4f8b

    "},{"location":"user_manual/api_test/api_definition/#4-test","title":"4 TEST","text":"

    \u5728\u3010TEST\u3011\u9875\u9762\u4e2d\u53ef\u4ee5\u9009\u62e9\u8fd0\u884c\u73af\u5883\u8c03\u8bd5\u63a5\u53e3\uff0c\u540c\u65f6\u53ef\u4ee5\u6dfb\u52a0\u524d\u540e\u7f6e\u811a\u672c\u3001\u524d\u540e\u7f6eSQL\u3001\u65ad\u8a00\u3001\u63d0\u53d6\u53c2\u6570\u7b49\u5b50\u6b65\u9aa4\u3002

    "},{"location":"user_manual/api_test/api_definition/#41","title":"4.1 \u81ea\u52a8\u751f\u6210\u6d4b\u8bd5\u6570\u636e","text":"

    \u63a5\u53e3\u8bf7\u6c42\u4f53\u4e3a json \u683c\u5f0f\u53ef\u5f00\u542f \u3010JSON-SCHEMA\u3011\u6a21\u5f0f\uff0c\u70b9\u51fb\u3010\u751f\u6210\u6d4b\u8bd5\u6570\u636e\u3011\u4f1a\u751f\u6210\u968f\u673a\u53c2\u6570\u503c \uff0c\u7528\u4e8e\u5feb\u901f\u4f20\u53c2\u6d4b\u8bd5\u3002 \u5982\u9700\u5b9a\u5236\u751f\u6210\u89c4\u5219\u53ef\u70b9\u51fb\u3010\u8bbe\u7f6e\u3011\u56fe\u6807\uff0c\u5bf9\u679a\u4e3e\u503c\u751f\u6210\u89c4\u5219\u8fdb\u884c\u8bbe\u7f6e\u3002

    \u5feb\u901f\u751f\u6210\u6570\u636e\u89c4\u5219\u5728\u3010\u9ad8\u7ea7\u8bbe\u7f6e\u3011\u9875\u9762\uff0c\u53ef\u4ee5\u8bbe\u7f6e\u9ed8\u8ba4\u503c\u3001\u679a\u4e3e\u503c\u3001\u6700\u5927\u6700\u5c0f\u957f\u5ea6\u3001\u6b63\u5219\u8868\u8fbe\u3001\u63cf\u8ff0\u76f8\u5173\u4fe1\u606f\uff0c\u89c4\u5219\u8bbe\u7f6e\u597d\u540e\u70b9\u51fb\u3010\u751f\u6210\u6d4b\u8bd5\u6570\u636e\u3011\u751f\u6548\u3002\u5982\u6709\u8bbe\u7f6e\u4e86\u9ed8\u8ba4\u503c\uff0c\u5219\u751f\u6210\u6d4b\u8bd5\u6570\u636e\u662f\u9ed8\u8ba4\u503c\uff1b\u5982\u8bbe\u7f6e\u679a\u4e3e\u503c\uff0c\u751f\u6210\u7684\u6570\u636e\u662f\u679a\u4e3e\u503c\u5176\u4e2d\u4e00\u4e2a\uff0c\u679a\u4e3e\u503c\u53ef\u4ee5\u6362\u884c\u8bbe\u7f6e\u591a\u4e2a\u3002

    "},{"location":"user_manual/api_test/api_definition/#42","title":"4.2 \u9488\u5bf9\u5355\u4e2a\u63a5\u53e3\u53d1\u8d77\u6d4b\u8bd5","text":"

    \u9009\u62e9\u8fd0\u884c\u73af\u5883\uff0c\u70b9\u51fb \u3010\u6d4b\u8bd5\u3011\u6309\u94ae\u5373\u53ef\u8c03\u8bd5\u63a5\u53e3\u3002\u5728\u54cd\u5e94\u5185\u5bb9\u53ef\u4ee5\u770b\u5230\u63a5\u53e3\u7684\u8bf7\u6c42\u54cd\u5e94\u4f53\u3001\u54cd\u5e94\u5934\u3001\u63a7\u5236\u53f0\u3001\u65ad\u8a00\u3001\u63d0\u53d6\u3001\u8bf7\u6c42\u5185\u5bb9\u4fe1\u606f\u3002 \u524d\u540e\u7f6e\u811a\u672c\u3001\u524d\u540e\u7f6eSQL\u3001\u65ad\u8a00\u53ca\u53c2\u6570\u63d0\u53d6\u7b49\u5b50\u6b65\u9aa4\u7684\u8be6\u60c5\u8bf4\u660e\u8bf7\u53c2\u8003\u3002 \u7528\u4f8b\u6b65\u9aa4\u8bf4\u660e

    "},{"location":"user_manual/api_test/api_definition/#43","title":"4.3 \u5176\u4ed6\u529f\u80fd","text":"

    \u70b9\u51fb\u3010\u6d4b\u8bd5\u3011\u6309\u94ae\u65c1\u8fb9\u7684\u5411\u4e0b\u7bad\u5934\u3010V\u3011\uff0c\u8fd8\u63d0\u4f9b\u4e86\u52a0\u8f7d\u7528\u4f8b\u3001\u53e6\u5b58\u4e3a\u65b0\u7528\u4f8b\u3001\u66f4\u65b0\u63a5\u53e3\u3001\u53e6\u5b58\u4e3a\u65b0\u63a5\u53e3\u5feb\u6377\u529f\u80fd\u3002

    \u3010\u52a0\u8f7d\u7528\u4f8b\u3011\u52a0\u8f7d\u8be5\u63a5\u53e3\u4e0b\u7684\u6240\u6709\u7528\u4f8b\u3002

    \u3010\u53e6\u5b58\u4e3a\u65b0\u7528\u4f8b\u3011\u53ef\u4f7f\u7528\u8be5\u63a5\u53e3\u9875\u9762\u586b\u5199\u7684\u53c2\u6570\u4fe1\u606f\u53ca\u6dfb\u52a0\u7684\u5b50\u6b65\u9aa4\uff0c\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u63a5\u53e3\u7528\u4f8b\u3002\u8f93\u5165\u7528\u4f8b\u540d\u79f0\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u6309\u94ae\uff0c\u5373\u53ef\u4fdd\u5b58\u4e3a\u4e00\u4e2a\u65b0\u7684\u63a5\u53e3\u7528\u4f8b\u3002

    \u3010\u66f4\u65b0\u63a5\u53e3\u3011\u53ef\u5c06\u5f53\u524d\u9875\u9762\u586b\u5199\u7684\u53c2\u6570\u4fe1\u606f\u66f4\u65b0\u5230\u5bf9\u5e94\u7684\u63a5\u53e3\u5b9a\u4e49\u4e2d\u3002

    \u3010\u53e6\u5b58\u4e3a\u65b0\u63a5\u53e3\u3011\u5373\u53ef\u4f7f\u7528\u5f53\u524d\u9875\u9762\u63a5\u53e3\u4fe1\u606f\u6765\u521b\u5efa\u65b0\u7684\u63a5\u53e3\u5b9a\u4e49\u3002

    "},{"location":"user_manual/api_test/api_definition/#5-case","title":"5 CASE","text":"

    \u5728 CASE \u9875\u9762\u4e2d\u5c55\u793a\u5f53\u524d\u63a5\u53e3\u4e0b\u7684\u6240\u6709\u63a5\u53e3\u7528\u4f8b\u5217\u8868\u3002

    "},{"location":"user_manual/api_test/api_definition/#51","title":"5.1 \u5217\u8868\u529f\u80fd","text":"

    \u652f\u6301\u5bf9\u63a5\u53e3\u7528\u4f8b\u7684 \u7f16\u8f91 \u6267\u884c \u590d\u5236 \u5220\u9664\u9f20\u6807\u60ac\u6d6e\u3010\u2026\u3011\u53ef\u5c55\u793a\u66f4\u591a\u529f\u80fd\u3001\u67e5\u770b\u5f15\u7528\u3001\u6267\u884c\u5386\u53f2\u3001\u521b\u5efa\u6027\u80fd\u6d4b\u8bd5\u64cd\u4f5c\u3002

    • \u7f16\u8f91\uff1a\u7f16\u8f91\u8be5\u63a5\u53e3\u7528\u4f8b
    • \u6267\u884c\uff1a\u8c03\u8bd5\u8be5\u63a5\u53e3
    • \u590d\u5236\uff1a\u590d\u5236\u8be5\u63a5\u53e3\u7528\u4f8b\u4fe1\u606f
    • \u5220\u9664\uff1a\u5220\u9664\u8be5\u63a5\u53e3\u7528\u4f8b\u5230\u56de\u6536\u7ad9
    • \u67e5\u770b\u5f15\u7528\uff1a\u67e5\u770b\u8be5\u63a5\u53e3\u7528\u4f8b\u88ab\u573a\u666f\u5f15\u7528\u548c\u6d4b\u8bd5\u8ba1\u5212\u5f15\u7528\u60c5\u51b5
    • \u6267\u884c\u5386\u53f2\uff1a\u53ef\u67e5\u770b\u8be5\u63a5\u53e3\u7528\u4f8b\u6267\u884c\u5386\u53f2\u5217\u8868\u53ca\u6267\u884c\u7ed3\u679c\u8be6\u60c5
    • \u521b\u5efa\u6027\u80fd\u6d4b\u8bd5\uff1a\u53ef\u4f7f\u7528\u5f53\u524d\u63a5\u53e3\u7528\u4f8b\u5feb\u901f\u521b\u5efa\u6027\u80fd\u6d4b\u8bd5

    "},{"location":"user_manual/api_test/api_definition/#52","title":"5.2 \u6279\u91cf\u64cd\u4f5c","text":"

    \u9009\u62e9\u591a\u6761\u63a5\u53e3\u7528\u4f8b\uff0c\u70b9\u51fb\u3010\u2026\u3011\uff0c\u53ef\u5bf9\u591a\u4e2a\u63a5\u53e3\u7528\u4f8b\u8fdb\u884c\u6279\u91cf\u5220\u9664\u3001\u6279\u91cf\u7f16\u8f91\u3001\u6279\u91cf\u6267\u884c\u3001\u6279\u91cf\u540c\u6b65\u64cd\u4f5c\u3002

    • \u6279\u91cf\u5220\u9664\uff1a\u6279\u91cf\u5220\u9664\u63a5\u53e3\u7528\u4f8b\u5230\u56de\u6536\u7ad9
    • \u6279\u91cf\u7f16\u8f91\uff1a\u6279\u91cf\u7f16\u8f91\u63a5\u53e3\u7528\u4f8b\u7b49\u7ea7\u3001\u6807\u7b7e\u5c5e\u6027
    • \u6279\u91cf\u6267\u884c\uff1a\u6279\u91cf\u8c03\u8bd5\u63a5\u53e3\u7528\u4f8b\uff0c\u8fd0\u884c\u6a21\u5f0f\u53ef\u9009\u62e9\u4e32\u884c\u6216\u5e76\u884c\uff0c\u751f\u6210\u62a5\u544a\u53ef\u9009\u751f\u6210\u72ec\u7acb\u62a5\u544a\u3001\u96c6\u5408\u62a5\u544a\u3002
    • \u6279\u91cf\u540c\u6b65\uff1a\u6279\u91cf\u540c\u6b65\u63a5\u53e3\u7528\u4f8b\uff0c\u53ef\u5bf9\u540c\u6b65\u7528\u4f8b\u8fdb\u884c\u57fa\u672c\u4fe1\u606f\u3001\u8bf7\u6c42\u53c2\u6570\u3001\u5176\u4ed6\u8bbe\u7f6e\u76f8\u5173\u5185\u5bb9\u8fdb\u884c\u914d\u7f6e\u3002

    "},{"location":"user_manual/api_test/api_definition/#53","title":"5.3 \u65b0\u5efa\u63a5\u53e3\u7528\u4f8b","text":"

    \u70b9\u51fb \u3010+\u6dfb\u52a0\u3011\u6309\u94ae\uff0c\u53ef\u4f7f\u7528\u5f53\u524d\u63a5\u53e3\u5b9a\u4e49\u7684\u53c2\u6570\u4fe1\u606f\u521b\u5efa\u65b0\u7684\u63a5\u53e3\u7528\u4f8b\u3002

    "},{"location":"user_manual/api_test/api_definition/#54","title":"5.4 \u641c\u7d22","text":"

    \u666e\u901a\u641c\u7d22\u652f\u6301\u901a\u8fc7\u63a5\u53e3\u7528\u4f8b\u7684 ID \u3001\u540d\u79f0\u3001\u6807\u7b7e\u8fdb\u884c\u6a21\u7cca\u641c\u7d22\u3002\u9ad8\u7ea7\u641c\u7d22\u652f\u6301\u6309 ID \u3001\u540d\u79f0\u3001\u7528\u4f8b\u7b49\u7ea7\u3001\u6807\u7b7e\u3001\u6267\u884c\u7ed3\u679c\u3001\u66f4\u65b0\u65f6\u95f4\u3001\u521b\u5efa\u65f6\u95f4\u3001\u521b\u5efa\u4eba\u3001\u5173\u6ce8\u4eba\u3001\u8def\u5f84\u641c\u7d22\u3002

    "},{"location":"user_manual/api_test/api_definition/#6-mock","title":"6 MOCK","text":"

    \u5728 MOCK \u9875\u9762\u4e2d\u5c55\u793a\u5f53\u524d\u63a5\u53e3\u5b9a\u4e49\u4e0b\u7684 MOCK \u670d\u52a1\u3002\u5728\u63a5\u53e3\u7f16\u8f91\u9875\u9762\u53ef\u5c55\u793a\u6b64\u63a5\u53e3\u7684 Mock \u4fe1\u606f\uff0cMock \u9ed8\u8ba4\u5730\u5740\u662f MeterSphere \u7cfb\u7edf\u5730\u5740+\u6a21\u5757 ID + \u63a5\u53e3\u5730\u5740\uff0c\u4e00\u4e2a\u63a5\u53e3\u5b9a\u4e49\u53ef\u4ee5\u8bbe\u7f6e\u591a\u4e2a Mock \u670d\u52a1\u3002

    "},{"location":"user_manual/api_test/api_definition/#61-http-mock","title":"6.1 HTTP Mock\u670d\u52a1\u8bbe\u7f6e","text":"

    MeterSphere \u63d0\u4f9b\u7684 Mock \u529f\u80fd\u53ef\u4ee5\u6839\u636e\u7528\u6237\u8f93\u5165\u7684\u8bf7\u6c42\u53c2\u6570\u3001\u8fd4\u56de\u6570\u636e\u751f\u6210Mock\u63a5\u53e3\uff0c\u8fd9\u4e9b\u63a5\u53e3\u4f1a\u81ea\u52a8\u751f\u6210\u6a21\u62df\u6570\u636e\uff0c\u4ee5\u8986\u76d6\u7528\u6237\u7684\u6a21\u62df\u6d4b\u8bd5\u9700\u6c42\u3002Mock \u671f\u671b\u662f\u6839\u636e\u8bbe\u7f6e\u7684\u8bf7\u6c42\u89e6\u53d1\u6761\u4ef6\u6765\u8fdb\u884c\u8fc7\u6ee4\uff0c\u7136\u540e\u8fd4\u56de\u671f\u671b\u7684\u6570\u636e\u3002\u5728\u3010MOCK\u3011\u9875\u9762\u70b9\u51fb\u3010+\u6dfb\u52a0\u3011\u6309\u94ae\u6dfb\u52a0 Mock \u670d\u52a1\u3002

    \u8bbe\u7f6e Mock \u670d\u52a1\u89e6\u53d1\u6761\u4ef6\u3002\u53ef\u4ee5\u5728\u8bf7\u6c42\u5934\u3001QUERY\u53c2\u6570\u3001REST\u53c2\u6570\u3001\u8bf7\u6c42\u4f53\u8bbe\u7f6e\u89e6\u53d1\u6761\u4ef6\uff1b\u5728\u54cd\u5e94\u5185\u5bb9\u4e2d\u8bbe\u7f6e\u81ea\u5b9a\u4e49\u54cd\u5e94\u5934\u3001\u54cd\u5e94\u4f53\u3001\u72b6\u6001\u7801\u3001\u54cd\u5e94\u5ef6\u8fdf\u65f6\u95f4\u76f8\u5173\u4fe1\u606f

    Mock \u670d\u52a1\u89e6\u53d1\u6761\u4ef6\u8bbe\u7f6e\u89c4\u5219\u5339\u914d\u53ca\u903b\u8f91\u5224\u65ad: \u8bf7\u6c42\u53c2\u6570\u8bbe\u7f6e\u89c4\u5219\u5339\u914d\uff0c\u53ef\u4ee5\u6839\u636e\u53c2\u6570\u8bbe\u5b9a\u7684\u503c\u3001\u957f\u5ea6\u3001\u6b63\u5219\u8868\u8fbe\u5f0f Mock \u51fa\u76f8\u5e94\u7684\u8bf7\u6c42\u53c2\u6570\uff0c\u540c\u65f6\u53c2\u6570\u4e0e\u53c2\u6570\u4e4b\u95f4\u65b0\u589e\u4e86\u903b\u8f91\u5224\u65ad\uff08AND/OR\uff09\uff0c\u4ee5\u63d0\u5347\u89e6\u53d1\u6761\u4ef6\u7684\u7075\u6d3b\u6027\u3002

    \u9488\u5bf9\u4e00\u4e9b\u7279\u5b9a\u6d4b\u8bd5\u573a\u666f\u9700\u8981\u5bf9\u8fd4\u56de\u4fe1\u606f\u8fdb\u4e00\u6b65\u5904\u7406\u7684\u60c5\u51b5\uff0c\u6bd4\u5982\u52a0\u89e3\u5bc6\u64cd\u4f5c\u3001\u8c03\u7528\u7b2c\u4e09\u65b9 JAR \u5305\u7b49\u64cd\u4f5c\u3002MeterSphere \u5728 Mock \u670d\u52a1\u4e2d\u6dfb\u52a0 \u540e\u7f6e\u811a\u672c\uff0c\u7528\u6237\u53ef\u4ee5\u901a\u8fc7\u7f16\u5199\u811a\u672c\u6216\u6dfb\u52a0\u7cfb\u7edf\u5df2\u6709\u7684 \u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5\u6765\u5b9e\u73b0\u5bf9\u8fd4\u56de\u4fe1\u606f\u7684\u5904\u7406\u3002

    \u5728\u3010MOCK\u3011\u6570\u636e\u5217\u8868\uff0c\u9009\u62e9\u4e00\u6761\u6570\u636e\u70b9\u51fb\u6267\u884c\uff0c\u9009\u62e9 MOCK \u73af\u5883\uff0c\u5f53\u8bf7\u6c42\u53c2\u6570\u4e0e\u8bbe\u7f6e\u7684\u89e6\u53d1\u6761\u4ef6\u5339\u914d\u65f6\u5019\uff0c\u5219\u8fd4\u56de\u8bbe\u7f6e\u7684\u54cd\u5e94\u5185\u5bb9\u3002

    "},{"location":"user_manual/api_test/api_definition/#62-tcp-mock","title":"6.2 TCP Mock\u8bbe\u7f6e","text":"

    TCP Mock \u670d\u52a1\u9700\u5728\u3010\u9879\u76ee\u8bbe\u7f6e-\u5e94\u7528\u7ba1\u7406-\u63a5\u53e3\u6d4b\u8bd5\u3011\u4e2d\u5f00\u542f TCP Mock \u670d\u52a1\u3002\u5176\u529f\u80fd\u8bbe\u7f6e\u540c HTTP MOCK\u3002

    "},{"location":"user_manual/api_test/api_definition/#63-mock","title":"6.3 MOCK \u5217\u8868\u529f\u80fd","text":"

    \u652f\u6301\u5bf9 Mock \u6570\u636e\u8fdb\u884c\u6267\u884c\u3001\u7f16\u8f91\u3001\u590d\u5236 \u3001\u5220\u9664\u64cd\u4f5c\u3002

    "},{"location":"user_manual/api_test/api_definition/#7","title":"7 \u5b9a\u65f6\u540c\u6b65","text":"

    \u63a5\u53e3\u5b9a\u4e49\u5217\u8868\uff0c\u70b9\u51fb\u3010\u66f4\u591a\u64cd\u4f5c-\u5b9a\u65f6\u540c\u6b65\u3011\u53ef\u8bbe\u7f6e Swagger \u5728\u7ebf\u63a5\u53e3\u6587\u6863\u5b9a\u65f6\u540c\u6b65\u3002

    \u5b9a\u65f6\u540c\u6b65\u9875\u9762\u9700\u8bbe\u7f6e\u540c\u6b65\u7684\u8def\u5f84\uff08\u4ee5/api-docs\u7ed3\u5c3e\uff09\u3001\u5b9a\u65f6Cron\u8868\u8fbe\u5f0f\uff08\u652f\u6301\u81ea\u52a8\u751f\u6210\u53ef\u4ee5\u9884\u89c8\u8fd15\u6b21\u8fd0\u884c\u65f6\u95f4\uff09\u3001\u5bfc\u5165\u6a21\u5757\u3001\u5bfc\u5165\u6a21\u5f0f\uff0c\u70b9\u51fb\u3010\u6dfb\u52a0\u3011\u6309\u94ae\u5b8c\u6210\u63a5\u53e3\u5b9a\u65f6\u540c\u6b65\u8bbe\u7f6e\u3002

    \u63a5\u53e3\u5b9a\u65f6\u540c\u6b65\u4efb\u52a1\u652f\u6301\u8bbe\u7f6e\u4efb\u52a1\u901a\u77e5\u65b9\u5f0f\uff0c\u70b9\u51fb\u4efb\u52a1\u901a\u77e5\u6309\u94ae\uff0c\u5f39\u51fa\u4efb\u52a1\u901a\u77e5\u8bbe\u7f6e\u9875\u9762\uff0c\u6d88\u606f\u901a\u77e5\u65b9\u5f0f\uff1a\u90ae\u4ef6\u3001\u9489\u9489\u673a\u5668\u4eba\u3001\u4f01\u4e1a\u5fae\u4fe1\u673a\u5668\u4eba\u3001\u98de\u4e66\u673a\u5668\u4eba\u3001\u81ea\u5b9a\u4e49 Webhook \u3002

    \u5b9a\u65f6\u540c\u6b65\u4efb\u52a1\u652f\u6301\u5b9a\u65f6\u540c\u6b65\u4efb\u52a1\u67e5\u770b\u3001\u5f00\u542f\u3001\u5173\u95ed\u3001\u5220\u9664\u64cd\u4f5c\u3002

    "},{"location":"user_manual/api_test/api_definition/#8","title":"8 \u5bfc\u5165\u63a5\u53e3","text":"

    \u63a5\u53e3\u5b9a\u4e49\u5217\u8868\u3010\u66f4\u591a\u64cd\u4f5c-\u5bfc\u5165\u3011\uff0c\u652f\u6301\u591a\u79cd\u7c7b\u578b\u63a5\u53e3\u6587\u6863\u7684\u5bfc\u5165\uff0c\u5305\u62ec\uff1aMeterSphere\u3001Postman\u3001Swagger\u3001HAR\u3001JMX\u7c7b\u578b\u6570\u636e\u3002

    \u652f\u6301 Swagger Json \u6587\u4ef6\u7684\u79bb\u7ebf\u5bfc\u5165\uff0c\u540c\u65f6\u4e5f\u652f\u6301\u4f7f\u7528 Swagger URL \u8fdb\u884c\u5728\u7ebf\u540c\u6b65\uff0c\u5bfc\u5165\u89c4\u5219\u8bf7\u770b\u5bfc\u5165\u9875\u9762\u4e0b\u65b9\u7684\u63d0\u793a\u3002\u6ce8\u610f: \u82e5\u5bfc\u5165\u7684\u63a5\u53e3\u4e3a\u65b0\u5efa\u63a5\u53e3\u4e14\u6ca1\u6709\u7528\u4f8b\uff0c\u5219\u9ed8\u8ba4\u4e3a\u63a5\u53e3\u521b\u5efa\u4e00\u4e2a\u7528\u4f8b\u3002

    "},{"location":"user_manual/api_test/api_definition/#9","title":"9 \u5bfc\u51fa\u63a5\u53e3\u5b9a\u4e49","text":"

    \u63a5\u53e3\u5b9a\u4e49\u5217\u8868\u3010\u66f4\u591a\u64cd\u4f5c-\u5bfc\u51fa\u3011\u652f\u6301\u5bfc\u51fa MeterSphere \u548c Swagger3.0 \u683c\u5f0f\u7684\u63a5\u53e3\u6587\u4ef6\u5bfc\u51fa\u3002\u9009\u62e9\u8981\u5bfc\u51fa\u7684\u63a5\u53e3\uff0c\u70b9\u51fb \u3010\u66f4\u591a\u64cd\u4f5c-\u5bfc\u51fa\u3011\u9009\u62e9\u8981\u5bfc\u51fa\u7684\u6587\u4ef6\u683c\u5f0f\uff0c\u7cfb\u7edf\u81ea\u52a8\u5b8c\u6210\u63a5\u53e3\u5bfc\u51fa\u3002

    "},{"location":"user_manual/api_test/api_definition/#10","title":"10 \u6279\u91cf\u64cd\u4f5c","text":"

    \u9009\u62e9\u591a\u6761 API \u6570\u636e\u70b9\u51fb\u3010\u2026\u3011\uff0c\u53ef\u5bf9\u591a\u4e2a\u63a5\u53e3\u8fdb\u884c\u6279\u91cf\u64cd\u4f5c\u3002\u6279\u91cf\u5220\u9664\u3001\u6279\u91cf\u7f16\u8f91\u3001\u6279\u91cf\u79fb\u52a8\u3001\u6279\u91cf\u590d\u5236\u3001\u590d\u5236\u7248\u672c\u6570\u636e\u3001\u751f\u6210\u4f9d\u8d56\u5173\u7cfb

    • \u6279\u91cf\u5220\u9664\uff1a\u6279\u91cf\u5220\u9664\u63a5\u53e3\u5230\u56de\u6536\u7ad9
    • \u6279\u91cf\u7f16\u8f91\uff1a\u6279\u91cf\u7f16\u8f91\u63a5\u53e3\u5c5e\u6027
    • \u6279\u91cf\u79fb\u52a8\uff1a\u6279\u91cf\u5c06\u63a5\u53e3\u79fb\u52a8\u5230\u5176\u4ed6\u6a21\u5757
    • \u6279\u91cf\u590d\u5236\uff1a\u6279\u91cf\u5c06\u63a5\u53e3\u590d\u5236\u5230\u5176\u4ed6\u6a21\u5757
    • \u590d\u5236\u7248\u672c\u6570\u636e(X-Pack)\uff1a\u968f\u7740\u7248\u672c\u7684\u8fed\u4ee3\uff0c\u540c\u4e00\u63a5\u53e3\uff0c\u5f53\u65b0\u7248\u63a5\u53e3\u53c2\u6570\u53d8\u66f4\u9700\u8981\u521b\u5efa\u5bf9\u5e94\u65b0\u7248\u672c\u7684\u63a5\u53e3 CASE \u548c Mock \u6570\u636e\u3002\u4f7f\u7528\u6b64\u529f\u80fd\u53ef\u6279\u91cf\u5c06\u5386\u53f2\u7248\u672c\u7684 CASE \u548c Mock \u6570\u636e\u5feb\u901f\u590d\u5236\u5230\u65b0\u7248\u672c\uff0c\u65b9\u4fbf\u5feb\u901f\u7ef4\u62a4\u63a5\u53e3\u7684\u7528\u4f8b\u6570\u636e\u3002
    • \u751f\u6210\u4f9d\u8d56\u5173\u7cfb\uff1a\u6279\u91cf\u63a5\u53e3\u4e4b\u95f4\u7684\u8054\u7cfb\u751f\u6210\u4f9d\u8d56\u5173\u7cfb\u62d3\u6251\u56fe

    "},{"location":"user_manual/api_test/api_definition/#11","title":"11 \u641c\u7d22","text":"

    \u63a5\u53e3\u5b9a\u4e49\u5217\u8868\u652f\u6301\u666e\u901a\u641c\u7d22\u63a5\u53e3\u5b9a\u4e49\u7684 ID\u3001\u540d\u79f0\u3001\u6807\u7b7e\u3001\u8def\u5f84 \u8fdb\u884c\u6a21\u7cca\u641c\u7d22\u3002\u9ad8\u7ea7\u641c\u7d22\u652f\u6301 ID \u3001\u540d\u79f0\u3001\u8bf7\u6c42\u7c7b\u578b\u3001\u8def\u5f84\u3001\u72b6\u6001\u3001\u6807\u7b7e\u3001\u66f4\u65b0\u4e8b\u4ef6\u3001\u521b\u5efa\u4e8b\u4ef6\u3001\u8d23\u4efb\u4eba\u3001\u6240\u5c5e\u6a21\u5757\u3001\u5173\u6ce8\u4eba\u8fdb\u884c\u641c\u7d22\u3002

    "},{"location":"user_manual/api_test/api_definition/#12","title":"12 \u56de\u6536\u7ad9","text":"

    \u56de\u6536\u7ad9\u5c55\u793a\u5df2\u5220\u9664\u7684\u63a5\u53e3 API\u3001CASE \u5217\u8868\u3002\u652f\u6301\u628a\u56de\u6536\u7ad9\u7684\u6570\u636e\u6062\u590d\u5230\u63a5\u53e3\u5217\u8868\u548c\u5f7b\u5e95\u5220\u9664\u64cd\u4f5c\u3002

    \u56de\u6536\u7ad9\u5217\u8868\u6279\u91cf\u9009\u62e9\u6570\u636e\uff0c\u70b9\u51fb\u3010...\u3011\u6309\u94ae\u5f39\u51fa\u64cd\u4f5c\u83dc\u5355\uff0c\u652f\u6301\u6279\u91cf\u5220\u9664\u3001\u6279\u91cf\u6062\u590d\u64cd\u4f5c\u3002

    "},{"location":"user_manual/api_test/api_definition/#13","title":"13 \u6587\u6863\u7ba1\u7406","text":"

    API \u63a5\u53e3\u652f\u6301\u4ee5\u6587\u6863\u5f62\u5f0f\u5c55\u793a\u63a5\u53e3\u5b9a\u4e49\u8be6\u7ec6\u4fe1\u606f\uff0c\u9875\u9762\u53f3\u4fa7\u5c55\u793a\u63a5\u53e3\u5217\u8868\uff0c\u70b9\u51fb\u63a5\u53e3\u540d\u79f0\u53ef\u5feb\u901f\u5b9a\u4f4d\u5230\u8be5\u63a5\u53e3\u8be6\u60c5\u6240\u5728\u4f4d\u7f6e\u3002 \u70b9\u51fb\u3010\u5206\u4eab\u3011\u56fe\u6807\uff0c\u7cfb\u7edf\u4f1a\u751f\u6210\u63a5\u53e3\u7684 URL \u5730\u5740\u3002 \u70b9\u51fb\u3010\u590d\u5236\u3011\u6309\u94ae\u5373\u53ef\u5c06\u63a5\u53e3\u7684 URL \u5730\u5740\u5206\u4eab\u7ed9\u4ed6\u4eba\u3002

    "},{"location":"user_manual/api_test/api_definition/#14-x-pack","title":"14 \u7248\u672c\u7ba1\u7406 (X-Pack)","text":"

    \u63a5\u53e3\u5b9a\u4e49\u5217\u8868\u53ef\u5207\u6362\u67e5\u770b\u5f53\u524d\u5b9a\u4e49\u63a5\u53e3\u7684\u7248\u672c\u4fe1\u606f\uff0c\u5217\u8868\u9ed8\u8ba4\u5c55\u793a\u6700\u65b0\u7248\u6570\u636e\uff0c\u53ef\u5207\u6362\u67e5\u770b\u5404\u7248\u672c\u7684\u63a5\u53e3\u5b9a\u4e49\u4fe1\u606f\u3002

    "},{"location":"user_manual/api_test/api_scenario/","title":"\u63a5\u53e3\u573a\u666f\u7f16\u6392","text":""},{"location":"user_manual/api_test/api_scenario/#1","title":"1 \u63a5\u53e3\u5217\u8868\u5bfc\u5165","text":"

    \u901a\u8fc7\u63a5\u53e3\u5217\u8868\u5bfc\u5165\u529f\u80fd\uff0c\u53ef\u4ee5\u76f4\u63a5\u6dfb\u52a0\u63a5\u53e3\u5b9a\u4e49\u4e2d\u5df2\u7ef4\u62a4\u597d\u7684\u63a5\u53e3\u6216\u7528\u4f8b\uff0c\u51cf\u5c11\u91cd\u590d\u5de5\u4f5c\u3002

    "},{"location":"user_manual/api_test/api_scenario/#11","title":"1.1 \u5bfc\u5165\u63a5\u53e3","text":"

    \u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u53f3\u4e0b\u89d2\u83dc\u5355\u3010+\u3011\u9009\u62e9 \u3010\u63a5\u53e3\u5217\u8868\u5bfc\u5165\u3011\uff0c\u4ece\u63a5\u53e3\u5217\u8868\u53ef\u4ee5\u9009\u62e9 API \u91cc\u9762\u7684\u6570\u636e\uff0c\u4f7f\u7528\u65b9\u5f0f\u652f\u6301 \u3010\u590d\u5236\u3011\u6a21\u5f0f\u3002 \u3010\u590d\u5236\u3011\u65b9\u5f0f\u5bfc\u5165\u7684\u7528\u4f8b\uff0c\u5f53\u539f\u7528\u4f8b\u53d1\u751f\u53d8\u5316\u65f6\uff0c\u573a\u666f\u4e2d\u5bfc\u5165\u7684\u7528\u4f8b\u4e0d\u4f1a\u6539\u53d8\u3002

    "},{"location":"user_manual/api_test/api_scenario/#12","title":"1.2 \u5bfc\u5165\u7528\u4f8b","text":"

    \u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u53f3\u4e0b\u89d2\u83dc\u5355\u3010+\u3011\u9009\u62e9\u3010\u63a5\u53e3\u5217\u8868\u5bfc\u5165\u3011\uff0c\u4ece\u63a5\u53e3\u5217\u8868\u53ef\u4ee5\u9009\u62e9 CASE \u91cc\u9762\u7684\u6570\u636e\uff0c\u4f7f\u7528\u65b9\u5f0f\u652f\u6301 \u3010\u590d\u5236\u3011\u3001\u3010\u5f15\u7528\u3011\u4e24\u79cd\u6a21\u5f0f\u3002

    • \u3010\u590d\u5236\u3011\u65b9\u5f0f\u5bfc\u5165\u7684\u7528\u4f8b\uff0c\u5f53\u539f\u7528\u4f8b\u53d1\u751f\u53d8\u5316\u65f6\uff0c\u573a\u666f\u4e2d\u5bfc\u5165\u7684\u7528\u4f8b\u4e0d\u4f1a\u6539\u53d8\uff1b
    • \u3010\u5f15\u7528\u3011\u65b9\u5f0f\u5bfc\u5165\u7684\u7528\u4f8b\uff0c\u5f53\u539f\u7528\u4f8b\u53d1\u751f\u53d8\u5316\u65f6\uff0c\u573a\u666f\u4e2d\u5bfc\u5165\u7684\u7528\u4f8b\u4e5f\u4f1a\u968f\u4e4b\u6539\u53d8\u3002

    "},{"location":"user_manual/api_test/api_scenario/#2","title":"2 \u81ea\u5b9a\u4e49\u8bf7\u6c42","text":"

    \u9664\u4e86\u5bfc\u5165\u5df2\u6709\u5b9a\u4e49\u7684\u63a5\u53e3\u6216\u7528\u4f8b\uff0c\u8fd8\u53ef\u4ee5\u901a\u8fc7\u81ea\u5b9a\u4e49\u8bf7\u6c42\u7684\u65b9\u5f0f\u589e\u52a0\u8bf7\u6c42\uff0c\u76ee\u524d\u652f\u6301 HTTP\u3001TCP\u3001DUBBO\u3001SQL \u7b49\u4e0d\u540c\u7c7b\u578b\u3002

    "},{"location":"user_manual/api_test/api_scenario/#3","title":"3 \u81ea\u5b9a\u4e49\u811a\u672c","text":"

    \u81ea\u5b9a\u4e49\u811a\u672c\u4e0e\u524d\u540e\u7f6e\u811a\u672c\u4f7f\u7528\u65b9\u5f0f\u7c7b\u4f3c\uff0c\u4f46\u662f\u53ef\u4ee5\u72ec\u7acb\u6dfb\u52a0\uff0c\u4e0d\u9700\u8981\u4f9d\u8d56\u4e8e\u67d0\u4e2a\u5df2\u6709\u8bf7\u6c42\u4f5c\u4e3a\u5176\u5b50\u6b65\u9aa4\u3002\u76ee\u524d\u652f\u6301\u7684\u811a\u672c\u8bed\u8a00\u53ca\u5185\u7f6e\u53d8\u91cf\u8bf7\u53c2\u8003 \u524d\u7f6e\u811a\u672c\u3002

    "},{"location":"user_manual/api_test/api_scenario/#4","title":"4 \u573a\u666f\u5bfc\u5165","text":"

    \u7528\u6237\u53ef\u4ee5\u7ef4\u62a4\u4e00\u4e9b\u57fa\u7840\u3001\u901a\u7528\u573a\u666f\uff0c\u901a\u8fc7\u573a\u666f\u5bfc\u5165\u529f\u80fd\uff0c\u53ef\u4ee5\u76f4\u63a5\u5c06\u5df2\u6709\u7684\u573a\u666f\u6dfb\u52a0\u5230\u5f53\u524d\u573a\u666f\u4e2d\uff0c\u51cf\u5c11\u91cd\u590d\u5de5\u4f5c\uff0c\u63d0\u9ad8\u573a\u666f\u7684\u590d\u7528\u6027\u3002

    • \u3010\u590d\u5236\u3011\u65b9\u5f0f\u5bfc\u5165\u7684\u573a\u666f\uff0c\u5f53\u539f\u573a\u666f\u53d1\u751f\u53d8\u5316\u65f6\uff0c\u573a\u666f\u4e2d\u5bfc\u5165\u7684\u573a\u666f\u4e0d\u4f1a\u6539\u53d8\u3002
    • \u3010\u5f15\u7528\u3011\u65b9\u5f0f\u5bfc\u5165\u7684\u573a\u666f\uff0c\u5f53\u539f\u573a\u666f\u53d1\u751f\u53d8\u5316\u65f6\uff0c\u573a\u666f\u4e2d\u5bfc\u5165\u7684\u573a\u666f\u4e5f\u4f1a\u968f\u4e4b\u6539\u53d8\u3002

    "},{"location":"user_manual/api_test/api_scenario/#5","title":"5 \u6761\u4ef6\u63a7\u5236\u5668","text":"

    \u5f53\u6761\u4ef6\u63a7\u5236\u5668\u4e2d\u914d\u7f6e\u7684\u6761\u4ef6\u6ee1\u8db3\u65f6\uff0c\u6761\u4ef6\u63a7\u5236\u5668\u4e0b\u7684\u5b50\u6b65\u9aa4\u624d\u4f1a\u6267\u884c\uff0c\u5426\u5219\u5b50\u6b65\u9aa4\u4f1a\u88ab\u8df3\u8fc7\u3002

    "},{"location":"user_manual/api_test/api_scenario/#6","title":"6 \u5faa\u73af\u63a7\u5236\u5668","text":"

    \u901a\u8fc7\u4f7f\u7528\u5faa\u73af\u63a7\u5236\u5668\uff0c\u53ef\u4ee5\u91cd\u590d\u6267\u884c\u5faa\u73af\u63a7\u5236\u5668\u4e0b\u7684\u5b50\u6b65\u9aa4\u3002

    "},{"location":"user_manual/api_test/api_scenario/#61","title":"6.1 \u6b21\u6570\u5faa\u73af","text":"

    \u6b21\u6570\u5faa\u73af\u652f\u6301\u81ea\u5b9a\u4e49\u8bbe\u7f6e\u6b21\u6570\u3001\u95f4\u9694\u7b49\u65b9\u5f0f\u8fdb\u884c\u5faa\u73af\u63a7\u5236\u3002

    • \u3010\u5faa\u73af\u6b21\u6570\u3011\uff1a\u8be5\u5faa\u73af\u63a7\u5236\u5668\u4e0b\u7684\u5b50\u6b65\u9aa4\u603b\u5171\u6267\u884c\u7684\u6b21\u6570\u3002
    • \u3010\u5faa\u73af\u95f4\u9694\u3011\uff1a\u6bcf\u6b21\u6267\u884c\u95f4\u7684\u65f6\u95f4\u95f4\u9694\uff0c\u4ee5\u6beb\u79d2\u4e3a\u5355\u4f4d\u3002
    • \u3010\u6210\u529f\u540e\u662f\u5426\u7ee7\u7eed\u5faa\u73af\u3011\uff1a\u4ec5\u5faa\u73af\u63a7\u5236\u5668\u4e0b\u5b58\u5728\u4e00\u4e2a\u8bf7\u6c42\u65f6\u53ef\u4ee5\u5173\u95ed\u3002\u5f53\u5173\u95ed\u65f6\uff0c\u82e5\u5faa\u73af\u63a7\u5236\u5668\u4e0b\u7684\u8bf7\u6c42\u662f\u6210\u529f\u72b6\u6001\uff0c\u5219\u7acb\u5373\u7ec8\u6b62\u5faa\u73af\uff0c\u65e0\u8bba\u6709\u6ca1\u6709\u8fbe\u5230\u5faa\u73af\u6b21\u6570\u3002\u53ef\u4ee5\u7528\u5728\u5f02\u6b65\u8bf7\u6c42\u540e\u8f6e\u8be2\u67e5\u8be2\u6267\u884c\u7ed3\u679c\u7684\u573a\u666f\uff0c\u5f53\u67e5\u8be2\u7ed3\u679c\u7b26\u5408\u9884\u671f\u65f6\u7ec8\u6b62\u5faa\u73af\uff0c\u907f\u514d\u591a\u4f59\u7684\u67e5\u8be2\u64cd\u4f5c\u3002

    \u793a\u4f8b

    \u5f00\u542f\u3010\u6210\u529f\u540e\u7ee7\u7eed\u5faa\u73af\u3011\uff0c\u5faa\u73af\u603b\u5171\u6267\u884c\u4e86 5 \u6b21\u3002

    \u5173\u95ed\u3010\u6210\u529f\u540e\u7ee7\u7eed\u5faa\u73af\u3011\uff0c\u7531\u4e8e\u5faa\u73af\u4e0b\u7684\u8bf7\u6c42\u7b2c\u4e00\u6b21\u4fbf\u6267\u884c\u6210\u529f\uff0c\u5faa\u73af\u4ec5\u6267\u884c\u4e86 1 \u6b21\u3002

    "},{"location":"user_manual/api_test/api_scenario/#62-foreach","title":"6.2 ForEach \u5faa\u73af","text":"

    ForEach \u5faa\u73af\u4e00\u822c\u914d\u5408\u5217\u8868\u53d8\u91cf\u4f7f\u7528\uff0c\u4f8b\u5982\u5b58\u5728 ID_1\uff0cID_2\uff0cID_3 \u5f62\u5f0f\u7684\u4e00\u7ec4\u53d8\u91cf\u65f6\uff0c\u53ef\u4ee5\u901a\u8fc7 ForEach \u5faa\u73af\u4f7f\u7528\u5176\u4e2d\u6bcf\u4e2a ID \u53d1\u9001\u7279\u5b9a\u8bf7\u6c42\u3002

    • \u3010\u8f93\u51fa\u53d8\u91cf\u540d\u79f0\u3011\uff1a\u5728\u5faa\u73af\u4e2d\u53ef\u4ee5\u901a\u8fc7\u8be5\u53d8\u91cf\u5f15\u7528\u5230\u5217\u8868\u53d8\u91cf\u4e2d\u5f53\u524d\u8fed\u4ee3\u7684\u53d8\u91cf\u503c\u3002
    • \u3010\u8f93\u5165\u53d8\u91cf\u524d\u7f00\u3011\uff1a\u5217\u8868\u53d8\u91cf\u7684\u53d8\u91cf\u524d\u7f00\u3002
    • \u3010\u5faa\u73af\u95f4\u9694\u3011\uff1a\u6bcf\u6b21\u6267\u884c\u95f4\u7684\u65f6\u95f4\u95f4\u9694\uff0c\u4ee5\u6beb\u79d2\u4e3a\u5355\u4f4d\u3002

    \u793a\u4f8b

    \u5728\u573a\u666f\u53d8\u91cf\u4e2d\u8bbe\u7f6e\u5217\u8868\u53d8\u91cf id\uff0c\u5217\u8868\u503c\u4e3a1\uff0c2\uff0c3\u3002

    \u904d\u5386\u573a\u666f\u53d8\u91cf\u4e2d\u7684\u5217\u8868\u53d8\u91cf\uff0c\u5728\u3010\u524d\u7f6e\u811a\u672c\u3011\u4e2d\u6253\u5370\u5217\u8868\u53d8\u91cf\u4e2d\u7684\u6bcf\u4e2a\u503c\u3002

    \u5faa\u73af\u6b21\u6570\u4e0e\u5217\u8868\u957f\u5ea6\u76f8\u540c\uff0c\u4e14\u8f93\u51fa\u5217\u8868\u53d8\u91cf\u4e2d\u7684\u6bcf\u4e2a\u503c\u3002

    "},{"location":"user_manual/api_test/api_scenario/#63-while","title":"6.3 While \u5faa\u73af","text":"

    While \u5faa\u73af\u66f4\u4e3a\u7075\u6d3b\uff0c\u5f53\u914d\u7f6e\u7684\u6761\u4ef6\u6ee1\u8db3\u65f6\u5faa\u73af\u4f1a\u4e00\u76f4\u8fdb\u884c\u3002

    • \u3010\u53d8\u91cf\u3011\uff1a\u8981\u8fdb\u884c\u5224\u65ad\u7684\u53d8\u91cf\u3002
    • \u3010\u5224\u65ad\u6761\u4ef6\u3011\uff1a\u53d8\u91cf\u4e0e\u671f\u671b\u503c\u7684\u6bd4\u8f83\u65b9\u5f0f\u3002
    • \u3010\u503c\u3011\uff1a\u8981\u5bf9\u53d8\u91cf\u8fdb\u884c\u5224\u65ad\u7684\u503c\u3002
    • \u3010\u5faa\u73af\u8d85\u65f6\u65f6\u95f4\u3011\uff1a\u7531\u4e8e while \u5faa\u73af\u7684\u7279\u6b8a\u6027\uff0c\u5f53\u6761\u4ef6\u6ee1\u8db3\u65f6\u5c06\u4f1a\u4e00\u76f4\u5faa\u73af\uff0c\u4e3a\u4e86\u907f\u514d\u6b7b\u5faa\u73af\u7684\u60c5\u51b5\u51fa\u73b0\uff0c\u7528\u6237\u53ef\u4ee5\u914d\u7f6e\u5faa\u73af\u8d85\u65f6\u65f6\u95f4\uff0c\u5230\u8d85\u8fc7\u8be5\u65f6\u95f4\u540e\uff0c\u4e0d\u7ba1\u5faa\u73af\u6761\u4ef6\u662f\u5426\u6ee1\u8db3\uff0c\u5faa\u73af\u90fd\u5c06\u88ab\u7ec8\u6b62\u3002

    \u793a\u4f8b

    \u5728\u573a\u666f\u53d8\u91cf\u4e2d\u8bbe\u7f6e\u5e38\u91cf\u53d8\u91cf NUM\uff0c\u503c\u4e3a5\u3002

    \u8bbe\u7f6e While\u5faa\u73af\u7684\u6761\u4ef6\uff0c\u5728\u524d\u7f6e\u811a\u672c\u83b7\u53d6\u53d8\u91cf\u503c\u5e76\u66f4\u6539\u53d8\u91cf\u503c

    \u6bcf\u6b21\u5faa\u73af\u4fee\u6539\u7684\u503c\u5728\u63a7\u5236\u53f0\u8fdb\u884c\u6253\u5370

    "},{"location":"user_manual/api_test/api_scenario/#7","title":"7 \u7b49\u5f85\u63a7\u5236\u5668","text":"

    \u5f53\u67d0\u4e2a\u6b65\u9aa4\u6267\u884c\u540e\u9700\u8981\u7b49\u5f85\u4e00\u6bb5\u65f6\u95f4\u65f6\uff0c\u53ef\u4f7f\u7528\u7b49\u5f85\u63a7\u5236\u5668\u8fdb\u884c\u63a7\u5236\u3002\u5f53\u4f5c\u4e3a\u6b65\u9aa4\u6dfb\u52a0\u65f6\uff0c\u4e0e\u4e4b\u540c\u7ea7\u7684\u6240\u6709\u6b65\u9aa4\u5747\u4f1a\u7b49\u5f85\u82e5\u5e72\u65f6\u95f4\uff1b\u4f5c\u4e3a\u67d0\u4e2a\u6b65\u9aa4\u7684\u5b50\u6b65\u9aa4\u6dfb\u52a0\u65f6\uff0c\u8be5\u6b65\u9aa4\u5c06\u7b49\u5f85\u82e5\u5e72\u65f6\u95f4\u540e\u518d\u6267\u884c\u3002

    "},{"location":"user_manual/api_test/api_scenario/#8","title":"8 \u4e8b\u52a1\u63a7\u5236\u5668","text":"

    \u4e8b\u52a1\u63a7\u5236\u5668\u5c06\u4e00\u7ec4\u8bf7\u6c42\u5f53\u6210\u4e00\u4e2a\u4e8b\u52a1\u8fdb\u884c\u5904\u7406\uff0c\u6bd4\u5982\u7528\u6237\u4e00\u4e2a\u52a8\u4f5c\u5305\u542b\u5f88\u591a\u4e2a\u8bf7\u6c42\uff0c\u8fd9\u90e8\u5206\u8bf7\u6c42\u5c31\u90fd\u53ef\u4ee5\u653e\u5728\u4e00\u4e2a\u4e8b\u52a1\u63a7\u5236\u5668\u4e0b\uff0c\u5f53\u6210\u4e00\u4e2a\u4e8b\u52a1\uff0c\u5e38\u7528\u4e8e\u6027\u80fd\u6d4b\u8bd5\u3002

    "},{"location":"user_manual/api_test/api_scenario/#9","title":"9 \u524d\u7f6e\u811a\u672c","text":"

    \u4e0e\u63a5\u53e3\u7528\u4f8b\u64cd\u4f5c\u4e2d\u7684\u524d\u7f6e\u811a\u672c\u7c7b\u4f3c\uff0c\u8bf7\u53c2\u8003 \u524d\u7f6e\u811a\u672c\u3002

    "},{"location":"user_manual/api_test/api_scenario/#10","title":"10 \u540e\u7f6e\u811a\u672c","text":"

    \u4e0e\u63a5\u53e3\u7528\u4f8b\u64cd\u4f5c\u4e2d\u7684\u540e\u7f6e\u811a\u672c\u7c7b\u4f3c\uff0c\u8bf7\u53c2\u8003 \u540e\u7f6e\u811a\u672c\u3002

    "},{"location":"user_manual/api_test/api_scenario/#11-sql","title":"11 \u524d\u7f6eSQL","text":"

    \u4e0e\u63a5\u53e3\u7528\u4f8b\u64cd\u4f5c\u4e2d\u7684\u524d\u7f6eSQL\u7c7b\u4f3c\uff0c\u8bf7\u53c2\u8003 \u524d\u7f6eSQL\u3002

    "},{"location":"user_manual/api_test/api_scenario/#12-sql","title":"12 \u540e\u7f6eSQL","text":"

    \u4e0e\u63a5\u53e3\u7528\u4f8b\u64cd\u4f5c\u4e2d\u7684\u540e\u7f6eSQL\u7c7b\u4f3c\uff0c\u8bf7\u53c2\u8003 \u540e\u7f6eSQL\u3002

    "},{"location":"user_manual/api_test/api_scenario/#13","title":"13 \u65ad\u8a00\u89c4\u5219","text":"

    \u4e0e\u63a5\u53e3\u7528\u4f8b\u64cd\u4f5c\u4e2d\u7684\u65ad\u8a00\u89c4\u5219\u7c7b\u4f3c\uff0c\u8bf7\u53c2\u8003 \u65ad\u8a00\u89c4\u5219\u3002

    "},{"location":"user_manual/api_test/api_scenario/#14","title":"14 \u63d0\u53d6\u53c2\u6570","text":"

    \u4e0e\u63a5\u53e3\u7528\u4f8b\u64cd\u4f5c\u4e2d\u7684\u63d0\u53d6\u53c2\u6570\u7c7b\u4f3c\uff0c\u8bf7\u53c2\u8003 \u63d0\u53d6\u53c2\u6570\u3002

    "},{"location":"user_manual/api_test/api_step/","title":"\u63a5\u53e3\u7528\u4f8b\u64cd\u4f5c\u6b65\u9aa4","text":""},{"location":"user_manual/api_test/api_step/#1","title":"1 \u524d\u7f6e\u811a\u672c","text":"

    \u524d\u7f6e\u811a\u672c\u53ef\u4ee5\u6dfb\u52a0\u4e3a\u8bf7\u6c42\u7684\u5b50\u6b65\u9aa4\uff0c\u5728\u8bf7\u6c42\u53d1\u9001\u524d\u6267\u884c\uff0c\u53ef\u4ee5\u7528\u5728\u4fee\u6539\u8bf7\u6c42\u5185\u5bb9\u3001\u521d\u59cb\u5316\u8bf7\u6c42\u9700\u8981\u7684\u53c2\u6570\u503c\u7b49\u573a\u666f\u3002 \u76ee\u524d MeterSphere \u652f\u6301\u4ee5\u4e0b\u51e0\u79cd\u8bed\u8a00\u7684\u524d\u7f6e\u811a\u672c\uff1a

    • BeanShell
    • Python2
    • Groovy
    • NashornScript
    • RhinoScript

    \u5728\u524d\u7f6e\u811a\u672c\u4e2d\u53ef\u4ee5\u76f4\u63a5\u5f15\u7528JMeter \u9884\u5b9a\u4e49\u5bf9\u8c61\uff0c\u4f8b\u5982\uff1a - log\uff1a\u7528\u4e8e\u5728\u811a\u672c\u6267\u884c\u8fc7\u7a0b\u4e2d\u6253\u5370\u65e5\u5fd7

    //\u6253\u5370 `Hello World!` \u5230 info \u65e5\u5fd7\u4e2d\nlog.info(\"Hello World!\");\n
    - Label\uff1a\u524d\u7f6e\u811a\u672c\u6240\u5c5e\u8bf7\u6c42\u7684\u8bf7\u6c42\u540d\u79f0 - SampleResult\uff1a\u5f53\u524d\u8bf7\u6c42\u8bf7\u6c42\u7ed3\u679c SamplerResult \u7684\u6307\u9488
    //\u8bbe\u7f6e\u8bf7\u6c42\u7ed3\u679c\u6210\u529f\u6216\u5931\u8d25\nSampleResult.setSuccessful(true/false);\n//\u8bbe\u7f6e\u8bf7\u6c42\u8fd4\u56de\u7801\nSampleResult.setResponseCode(\"code\");\n//\u8bbe\u7f6e\u8bf7\u6c42\u8fd4\u56de\u6d88\u606f\nSampleResult.setResponseMessage(\"message\");\n
    - sampler\uff1a\u5f53\u524d\u8bf7\u6c42 sampler \u7684\u6307\u9488
    //\u83b7\u53d6\u5f53\u524d\u8bf7\u6c42\u540d\u79f0\nsampler.getName();\n
    - vars\uff1aJMeterVariables\uff0c\u7528\u4e8e\u64cd\u4f5c\u53d8\u91cf
    //\u83b7\u53d6\u53d8\u91cf VAR1 \u7684\u503c\nvars.get(\"VAR1\");\n//\u8bbe\u7f6e\u53d8\u91cf VAR2 \u7684\u503c\u4e3a value\nvars.put(\"VAR2\",\"value\");\n//\u79fb\u9664\u53d8\u91cf VAR3\nvars.remove(\"VAR3\");\n

    \u3010\u6ce8\u610f\u3011 \u4e0d\u540c\u811a\u672c\u8bed\u8a00\u8bed\u6cd5\u4e0d\u540c\uff0c\u4ee5\u4e0a\u793a\u4f8b\u4ec5\u9488\u5bf9 BeanShell \u6216 Groovy\u3002

    \u5728\u63a5\u53e3 CASE \u7f16\u8f91\u9875\u9762\uff0c\u64cd\u4f5c Tab \u9875\u524d\u7f6e\u64cd\u4f5c\u83dc\u5355\uff1a\u63d0\u4f9b\u4e86\u591a\u79cd\u4e0d\u540c\u7c7b\u578b\u548c\u8303\u56f4\u7684\u6807\u51c6\u4ee3\u7801\u6a21\u677f\uff0c\u540c\u65f6\u8fd8\u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u4ee3\u7801\u6a21\u677f\u3002\u4ee3\u7801\u6a21\u7248\u5206\u4e3a\uff1aAPI\u6d4b\u8bd5\u3001\u81ea\u5b9a\u4e49\u53d8\u91cf\u3001\u9879\u76ee\u73af\u5883\u3001\u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5\u3001\u5f02\u5e38\u5904\u7406\u3002

    "},{"location":"user_manual/api_test/api_step/#11-api","title":"1.1 API\u6d4b\u8bd5","text":"

    \u3010\u4eceAPI\u5b9a\u4e49\u5bfc\u5165\u3011\uff1aAPI\u5b9a\u4e49\u5bfc\u5165\u53ef\u4ee5\u76f4\u63a5\u5bfc\u5165 API / CASE \u81ea\u52a8\u751f\u6210\u811a\u672c\u3002\u70b9\u51fb\u3010API\u5b9a\u4e49\u5bfc\u5165\u3011\u6309\u94ae\uff0c\u4ece\u63a5\u53e3\u5217\u8868 API/ CASE \u9009\u62e9\u76ee\u6807\u6570\u636e\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u4f1a\u5728\u524d\u7f6e\u811a\u672c\u4e2d\u9ed8\u8ba4\u751f\u6210 beanshell \u811a\u672c\u3002\u811a\u672c\u8bed\u8a00\u53ef\u5207\u6362\uff0c\u9ed8\u8ba4\u652f\u6301 beanshell \u3001python2 \u3001groovy \u3001javascript \u8bed\u8a00\u3002

    \u70b9\u51fb\u3010\u65b0API\u6d4b\u8bd5[json]\u3011\u53ef\u4ee5\u81ea\u52a8\u751f\u6210 json \u8bf7\u6c42\u65b9\u5f0f\u7684 API \u8bf7\u6c42\u6a21\u677f\u3002

    "},{"location":"user_manual/api_test/api_step/#12","title":"1.2 \u81ea\u5b9a\u4e49\u53d8\u91cf","text":"

    \u5728\u3010\u81ea\u5b9a\u4e49\u53d8\u91cf\u3011\u65b9\u6cd5\u5217\u8868\uff0c\u9009\u62e9\u9700\u8981\u7684\u81ea\u5b9a\u4e49\u53d8\u91cf\u65b9\u6cd5\u53ef\u81ea\u52a8\u751f\u6210\u83b7\u53d6\u53d8\u91cf\u7684\u811a\u672c\u3002\u5305\u62ec\u83b7\u53d6\u54cd\u5e94\u5934\u3001\u83b7\u53d6\u54cd\u5e94\u7801\u3001\u83b7\u53d6\u54cd\u5e94\u7b49\u811a\u672c\uff0c\u4ee5\u83b7\u53d6\u63a5\u53e3\u8c03\u8bd5\u7ed3\u679c\u4e2d\u7684\u54cd\u5e94\u5934\u3001\u54cd\u5e94\u7801\u3001\u54cd\u5e94\u7ed3\u679c\u7b49\u4fe1\u606f\u3002

    "},{"location":"user_manual/api_test/api_step/#13","title":"1.3 \u9879\u76ee\u73af\u5883","text":"

    \u9009\u62e9\u3010\u9879\u76ee\u73af\u5883\u3011\u8bbe\u7f6e\u73af\u5883\u53c2\u6570\uff0c\u81ea\u52a8\u751f\u6210\u8bbe\u7f6e\u73af\u5883\u53d8\u91cf\u65b9\u6cd5\u586b\u5199\u5bf9\u5e94\u65b9\u6cd5\u952e\u503c\u5bf9\u5373\u53ef\u8bd5\u7528\u3002 vars.put(${__metersphere_env_id}+\"key\",\"value\"); // \u5c06\u503c\u5b58\u50a8\u4e3a\u73af\u5883\u53d8\u91cf\uff0c\u53ef\u5728\u3010\u73af\u5883-\u901a\u7528\u8bbe\u7f6e\u3011\u5904\u770b\u5230\u503c\u3002\u5f53\u524d\u73af\u5883\u4e0b\u7684\u6240\u6709\u63a5\u53e3\u4f7f\u7528\u3002 vars.put(\"key\",\"value\") // \u5c06\u503c\u5b58\u50a8\u4e3a\u573a\u666f\u53d8\u91cf

    "},{"location":"user_manual/api_test/api_step/#14","title":"1.4 \u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5","text":"

    \u9009\u62e9\u3010\u81ea\u5b9a\u4e49\u4ee3\u7801\u3011\u63d2\u5165\u4ee3\u7801\u7247\u6bb5\uff0c\u9009\u62e9\u5728\u3010\u9879\u76ee\u7ba1\u7406-\u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5\u3011\u5b9a\u4e49\u597d\u7684\u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5\uff0c\u53ef\u5b9e\u73b0\u590d\u7528\u811a\u672c\u4f18\u5316\u6d4b\u8bd5\u7ba1\u7406\u529e\u6cd5\u3002

    "},{"location":"user_manual/api_test/api_step/#15","title":"1.5 \u5f02\u5e38\u5904\u7406","text":"

    \u9009\u62e9\u3010\u5f02\u5e38\u5904\u7406\u3011\u7ec8\u6b62\u6d4b\u8bd5\uff0c\u53ef\u81ea\u52a8\u751f\u6210 \u7ec8\u6b62\u6d4b\u8bd5\u7ebf\u7a0b\u7684\u811a\u672c\u3002\u8bbe\u7f6e\u7ec8\u6b62\u6d4b\u8bd5\u5f02\u5e38\u6761\u4ef6\uff0c\u63a5\u53e3\u6216\u573a\u666f\u6267\u884c\u8fc7\u7a0b\u4e2d\u5339\u914d\u5230\u7ec8\u6b62\u6761\u4ef6\u5219\u7ec8\u6b62\u8be5\u8fdb\u7a0b\u3002

    "},{"location":"user_manual/api_test/api_step/#2","title":"2 \u540e\u7f6e\u811a\u672c","text":"

    \u540e\u7f6e\u811a\u672c\u4e0e\u524d\u7f6e\u811a\u672c\u7c7b\u4f3c\uff0c\u53ef\u4ee5\u6dfb\u52a0\u4e3a\u8bf7\u6c42\u7684\u5b50\u6b65\u9aa4\uff0c\u5728\u8bf7\u6c42\u53d1\u9001\u540e\u6267\u884c\uff0c\u53ef\u4ee5\u7528\u4e8e\u5904\u7406\u54cd\u5e94\u7ed3\u679c\uff0c\u4ece\u4e2d\u63d0\u53d6\u53d8\u91cf\u7b49\u573a\u666f\u3002

    "},{"location":"user_manual/api_test/api_step/#3-sql","title":"3 \u524d\u7f6e SQL","text":"

    \u5728\u8bf7\u6c42\u53d1\u9001\u4e4b\u524d\u6267\u884c SQL \u811a\u672c\u3002\u524d\u7f6e\u64cd\u4f5c\u4e0b\u62c9\u9009\u62e9 \u524d\u7f6eSQL\uff0c\u914d\u7f6e \u8fd0\u884c\u73af\u5883\u53ca \u76ee\u6807\u6570\u636e\u6e90\uff0c\u53ef\u76f4\u63a5\u5728 SQL\u811a\u672c\u4e2d\u7f16\u5199 SQL \u8bed\u53e5\uff0c\u8fd4\u56de\u7684\u63a5\u53e3\u652f\u6301\u5b58\u50a8\u7ed3\u679c\u3001\u6309\u5217\u5b58\u50a8\uff0c\u652f\u6301\u5728 SQL\u811a\u672c\u4e2d\u8bbe\u7f6e\u53d8\u91cf\u4f20\u53c2\u3002

    • \u5b58\u50a8\u7ed3\u679c\uff1a\u8fd4\u56de\u7ed3\u679c\u7684\u6240\u6709\u5b57\u6bb5\u5b58\u50a8\u5230\u4e00\u4e2a\u53d8\u91cf\u4e2d\u3002\u53ef\u914d\u5408\u811a\u672c\u5904\u7406\u83b7\u8fd4\u56de\u7ed3\u679c\u4e2d\u7684\u67d0\u4e00\u90e8\u5206\u503c\u3002
    • \u6309\u5217\u5b58\u50a8\uff1a\u76f4\u63a5\u6307\u5b9a\u53d6\u51fa\u8fd4\u56de\u7ed3\u679c\u5b57\u6bb5\u7684\u503c\uff0c\u5217\u540d\u8981\u548cSQL\u8bed\u53e5\u4e2d\u67e5\u8be2\u8fd4\u56de\u7ed3\u679c\u5217\u540d\u5bf9\u5e94\u3002\u53ef\u4ee5\u7528\u9017\u53f7\u4f5c\u4e3a\u5360\u4f4d\u7b26\u4ee3\u66ff\u5217\u540d\uff0c\u53ea\u5199\u51fa\u8981\u63d0\u53d6\u7684\u5217\u540d\u5373\u53ef\u3002

    \u5982\u56fe\u6240\u793a\u67e5\u8be2\uff0c\u7528\u6237\u3010\u6309\u5217\u5b58\u50a8\u3011\u67e5\u8be2 id \u548c name\uff0c\u901a\u8fc7${name_n}\u8fdb\u884c\u5f15\u7528\uff0cn\u4e3a\u884c\u6570\uff0c${name_1} \u4e3a name \u5217\u7684\u7b2c\u4e00\u884c\u503c\u3002

    "},{"location":"user_manual/api_test/api_step/#4-sql","title":"4 \u540e\u7f6e SQL","text":"

    \u540e\u7f6eSQL\u4e0e\u524d\u7f6eSQL\u7c7b\u4f3c\uff0c\u5728\u8bf7\u6c42\u6267\u884c\u5b8c\u6210\u540e\u518d\u8fdb\u884cSQL\u5904\u7406\u3002

    "},{"location":"user_manual/api_test/api_step/#5","title":"5 \u65ad\u8a00\u89c4\u5219","text":"

    \u65ad\u8a00\u7684\u4e3b\u8981\u529f\u80fd\u662f\u901a\u8fc7\u9a8c\u8bc1\u54cd\u5e94\u62a5\u6587\u662f\u5426\u6ee1\u8db3\u9700\u6c42\u89c4\u7ea6\u6765\u786e\u8ba4\u63a5\u53e3\u8fd0\u884c\u662f\u5426\u6b63\u786e\u3002 \u76ee\u524d MeterSphere \u652f\u6301\u4ee5\u4e0b\u51e0\u79cd\u5f62\u5f0f\u7684\u65ad\u8a00\u89c4\u5219\uff1a

    • \u6587\u672c
    • \u6b63\u5219
    • JSONPath
    • XPath
    • \u54cd\u5e94\u65f6\u95f4
    • \u811a\u672c
    • \u6587\u6863\u7ed3\u6784\u6821\u9a8c

    "},{"location":"user_manual/api_test/api_step/#51","title":"5.1 \u6587\u672c\u65ad\u8a00","text":"

    \u6587\u672c\u65ad\u8a00\u5373\u5bf9\u54cd\u5e94\u5bf9\u8c61\u6309\u6587\u672c\u65b9\u5f0f\u8ddf\u8fdb\u6307\u5b9a\u5224\u65ad\u6761\u4ef6\u8fdb\u884c\u5224\u65ad\u3002

    • \u5bf9\u8c61\u5305\u62ec\uff1a Response Code\uff0cResponse Headers\uff0cResponse Data \u3002
    • \u6761\u4ef6\u652f\u6301\uff1a \u5305\u542b\uff0c\u4e0d\u5305\u542b\uff0c\u7b49\u4e8e\uff0c\u4ee5...\u5f00\u59cb\uff0c\u4ee5...\u7ed3\u675f \u3002
    • \u503c\uff1a\u65ad\u8a00\u5bf9\u8c61\u9700\u8981\u5339\u914d\u7684\u503c\uff0c\u5339\u914d\u6210\u529f\u5219\u65ad\u8a00\u6210\u529f\uff0c\u5426\u5219\u65ad\u8a00\u5931\u8d25\u3002

    "},{"location":"user_manual/api_test/api_step/#52","title":"5.2 \u6b63\u5219\u65ad\u8a00","text":"

    \u6b63\u5219\u65ad\u8a00\u9002\u7528\u4e8e\u54cd\u5e94\u5185\u5bb9\u4e0d\u662f JSON\u3001XML\u3001HTML \u7b49\u8fd9\u6837\u7684\u6807\u51c6\u4e14\u5e38\u89c1\u7684\u7ed3\u6784\u5316\u6587\u672c\u7684\u8bf7\u6c42\u8fdb\u884c\u65ad\u8a00\u64cd\u4f5c\u3002

    • \u5bf9\u8c61\u5305\u62ec\uff1aResponse Code\uff0cResponse Headers\uff0cResponse Data\u3002
    • Perl\u578b\u6b63\u5219\u8868\u8fbe\u5f0f\uff1a\u65ad\u8a00\u5bf9\u8c61\u9700\u8981\u5339\u914d\u7684\u6b63\u5219\u8868\u8fbe\u5f0f\uff0c\u5339\u914d\u6210\u529f\u5219\u65ad\u8a00\u6210\u529f\uff0c\u5426\u5219\u65ad\u8a00\u5931\u8d25\u3002

    \u793a\u4f8b

    \u8bf7\u6c42\u7684\u54cd\u5e94\u4f53\uff1a

    id=\"ddc86657-d402-4c10-b458-2ba2e4604cef\"&name=\"myorg\"&description=\"test org\"\n
    \u65ad\u8a00\u9700\u6c42\uff1a\u5224\u65ad\u54cd\u5e94\u4f53\u4e2d\u5305\u542b name=\"\u4efb\u610f\u6587\u672c\"\u3002

    \u65ad\u8a00\u914d\u7f6e\uff1a

    • \u5bf9\u8c61\uff1aResponse Data
    • Perl\u578b\u6b63\u5219\u8868\u8fbe\u5f0f\uff1aname=\".*?\"
    "},{"location":"user_manual/api_test/api_step/#53-jsonpath","title":"5.3 JSONPath \u65ad\u8a00","text":"

    JSONPath \u65ad\u8a00\u9002\u7528\u4e8e\u54cd\u5e94\u5185\u5bb9\u662f JSON \u683c\u5f0f\u8fdb\u884c\u65ad\u8a00\u3002

    • JSONPath\u8868\u8fbe\u5f0f\uff1aJSONPath \u8868\u8fbe\u5f0f\uff0c\u901a\u8fc7\u8be5\u8868\u8fbe\u5f0f\u5b9a\u4f4d\u5230\u7279\u5b9a\u5b57\u6bb5\u3002
    • \u671f\u671b\u503c\uff1a\u901a\u8fc7 JSONPath \u8868\u8fbe\u5f0f\u5b9a\u4f4d\u7684\u5b57\u6bb5\u7684\u671f\u671b\u503c\uff0c\u652f\u6301\u6b63\u5219\u8868\u8fbe\u5f0f\u3002

    "},{"location":"user_manual/api_test/api_step/#54-xpath","title":"5.4 XPath \u65ad\u8a00","text":"

    XPath \u65ad\u8a00\u9002\u7528\u4e8e\u5bf9\u54cd\u5e94\u5185\u5bb9\u662f XML\u3001HTML \u7b49\u683c\u5f0f\u7684\u8bf7\u6c42\u8fdb\u884c\u65ad\u8a00\u3002

    • XPath\u8868\u8fbe\u5f0f\uff1a\u9700\u8981\u8fdb\u884c\u5339\u914d\u7684 XPath \u8868\u8fbe\u5f0f\u3002

    \u793a\u4f8b

    \u8bf7\u6c42\u7684\u54cd\u5e94\u4f53\uff1a

    <root xmlns:foo=\"http://www.foo.org/\" xmlns:bar=\"http://www.bar.org\">\n    <employees>\n        <employee id=\"1\">Johnny Dapp</employee>\n        <employee id=\"2\">Al Pacino</employee>\n        <employee id=\"3\">Robert De Niro</employee>\n        <employee id=\"4\">Kevin Spacey</employee>\n        <employee id=\"5\">Denzel Washington</employee>\n    </employees>\n    <foo:companies>\n        <foo:company id=\"6\">Tata Consultancy Services</foo:company>\n        <foo:company id=\"7\">Wipro</foo:company>\n        <foo:company id=\"8\">Infosys</foo:company>\n        <foo:company id=\"9\">Microsoft</foo:company>\n        <foo:company id=\"10\">IBM</foo:company>\n        <foo:company id=\"11\">Apple</foo:company>\n        <foo:company id=\"12\">Oracle</foo:company>\n    </foo:companies>\n</root>\n
    \u65ad\u8a00\u9700\u6c42\uff1a\u5224\u65ad\u54cd\u5e94\u4f53\u4e2d\u7684 id \u4e3a 10 \u7684\u516c\u53f8\u540d\u79f0\u4e3a IBM

    \u65ad\u8a00\u914d\u7f6e\uff1a

    - XPath \u8868\u8fbe\u5f0f\uff1a//*[local-name()='company' and @id=\"10\"]/text()=\"IBM\"\n
    "},{"location":"user_manual/api_test/api_step/#55","title":"5.5 \u54cd\u5e94\u65f6\u95f4\u65ad\u8a00","text":"

    \u54cd\u5e94\u65f6\u95f4\u65ad\u8a00\u9002\u7528\u4e8e\u5bf9\u54cd\u5e94\u65f6\u95f4\u6709\u7279\u5b9a\u8981\u6c42\u65f6\u7684\u8bf7\u6c42\u8fdb\u884c\u65ad\u8a00\u64cd\u4f5c\u3002

    • \u54cd\u5e94\u65f6\u95f4\u5728...\u6beb\u79d2\u4ee5\u5185\uff1a\u4ee5\u6beb\u79d2\u4e3a\u5355\u4f4d\u7684\u54cd\u5e94\u65f6\u95f4\u671f\u671b\uff0c\u5f53\u5b9e\u9645\u54cd\u5e94\u65f6\u95f4\u5c0f\u4e8e\u7b49\u4e8e\u8be5\u503c\u65f6\u65ad\u8a00\u6210\u529f\u3002

    "},{"location":"user_manual/api_test/api_step/#56","title":"5.6 \u6587\u6863\u7ed3\u6784\u6821\u9a8c","text":"

    \u6587\u6863\u7ed3\u6784\u6821\u9a8c\u65ad\u8a00\u9002\u7528\u4e8e\u54cd\u5e94\u7ed3\u679c\u4e3aXML/JSON\u683c\u5f0f\u7684\u8bf7\u6c42\u8fdb\u884c\u65ad\u8a00\u64cd\u4f5c\u3002

    \u5bfc\u5165\u6587\u6863\u6821\u9a8c\uff1a \u70b9\u51fb\u3010\u5bfc\u5165\u3011\u53ef\u5bfc\u5165\u9700\u65ad\u8a00 Json/xml \u6570\u636e\uff0c\u81ea\u52a8\u751f\u6210\u6587\u6863\u7ed3\u6784\u6821\u9a8c\u5143\u7d20\u8868\u683c\u3002\u53ef\u4ee5\u81ea\u5b9a\u4e49\u8bbe\u7f6e \u6821\u9a8c\u89c4\u5219\u3002 \u8ddf\u968f API \u5b9a\u4e49\uff1a\u662f API \u54cd\u5e94\u4f53\u8bbe\u7f6e\u8fd4\u56de\u503c\u4e00\u81f4\uff0c\u52fe\u9009\u3010\u8ddf\u968fAPI\u5b9a\u4e49\u3011\u53ef\u4ee5\u81ea\u52a8\u751f\u6210\u5185\u5bb9\u6821\u9a8c\u3002

    "},{"location":"user_manual/api_test/api_step/#57","title":"5.7 \u811a\u672c\u65ad\u8a00","text":"

    \u5f53\u5e38\u89c4\u65ad\u8a00\u65e0\u6cd5\u6ee1\u8db3\u9700\u6c42\u65f6\uff0c\u53ef\u4ee5\u9009\u62e9\u811a\u672c\u65ad\u8a00\uff0c\u5373\u9009\u62e9\u5408\u9002\u7684\u8bed\u8a00\u7f16\u5199\u811a\u672c\u6765\u5bf9\u7ed3\u679c\u8fdb\u884c\u5224\u65ad\u3002

    • \u4e0e\u524d\u540e\u7f6e\u811a\u672c\u4e00\u6837\uff0c\u811a\u672c\u5728\u52a0\u8f7d\u524d\u5df2\u7ecf\u5185\u7f6e\u4e86\u90e8\u5206\u53d8\u91cf\uff0c\u76ee\u524d\u652f\u6301 BeanShell\u3001Groovy\u3001Python \u3001javascript \u811a\u672c\u8bed\u8a00\u3002\u9664\u4e86\u5728\u4e4b\u524d\u5df2\u7ecf\u4ecb\u7ecd\u8fc7\u7684\u53d8\u91cf\u5916\uff0c\u811a\u672c\u65ad\u8a00\u4e2d\u7684\u811a\u672c\u8fd8\u989d\u5916\u63d0\u4f9b\u4e86\u65ad\u8a00\u7ed3\u679c\u5bf9\u8c61AssertionResult\uff0c\u901a\u8fc7 AssertionResult.setFailure(true) \u65b9\u6cd5\u8bbe\u7f6e\u65ad\u8a00\u662f\u5426\u6210\u529f\uff0c\u901a\u8fc7 AssertionResult.setFailureMessage(\"message\") \u65b9\u6cd5\u8bbe\u7f6e\u65ad\u8a00\u5931\u8d25\u63d0\u793a\u4fe1\u606f\u3002

    "},{"location":"user_manual/api_test/api_step/#6","title":"6 \u63d0\u53d6\u53c2\u6570","text":"

    \u63d0\u53d6\u53c2\u6570\u4e3b\u8981\u7528\u4e8e\u4ece\u8bf7\u6c42\u54cd\u5e94\u4e2d\u63d0\u53d6\u7279\u5b9a\u8fd4\u56de\u503c\u5e76\u5b58\u50a8\u5230\u53d8\u91cf\u4e2d\uff0c\u4fbf\u4e8e\u5728\u540e\u7eed\u7684\u6b65\u9aa4\u4e2d\u5f15\u7528\u8be5\u8fd4\u56de\u503c\u3002 MeterSphere\u5df2\u652f\u6301\u7684\u63d0\u53d6\u53c2\u6570\u65b9\u5f0f\u5305\u62ec\uff1a

    • \u6b63\u5219
    • JSONPath
    • XPath

    "},{"location":"user_manual/api_test/api_step/#61","title":"6.1 \u6b63\u5219\u63d0\u53d6","text":"

    \u6b63\u5219\u63d0\u53d6\u9002\u7528\u4e8e\u8bf7\u6c42\u975e JSON\u3001XML\u3001HTML \u6807\u51c6\u4e14\u5e38\u89c1\u7684\u7ed3\u6784\u5316\u6587\u672c\u7684\u54cd\u5e94\u5185\u5bb9\u3002

    • \u5bf9\u8c61\uff1a\u652f\u6301 Body\uff0cRequest Headers\uff0cResponse Headers\uff0cURL\uff0cResponse Code\uff0cResponse Message
    • \u53d8\u91cf\u540d\uff1a\u4fdd\u5b58\u63d0\u53d6\u503c\u7684\u53d8\u91cf\u540d\uff0c\u540e\u7eed\u53ef\u4ee5\u901a\u8fc7 ${varName} \u5f62\u5f0f\u5f15\u7528\u5230\uff0c\u5982\u679c\u9009\u62e9\u4e86 \u3010\u5339\u914d\u591a\u4e2a\u3011\u53ef\u4ee5\u901a\u8fc7 ${varName_matchNr} \u83b7\u53d6\u5230\u5339\u914d\u7684\u603b\u4e2a\u6570\uff0c\u901a\u8fc7 ${varName_n} \u4f9d\u6b21\u83b7\u53d6\u5230\u6bcf\u4e2a\u5339\u914d\u503c\u3002
    • Perl\u578b\u6b63\u5219\u8868\u8fbe\u5f0f\uff1a\u63d0\u53d6\u7279\u5b9a\u503c\u4f7f\u7528\u7684\u6b63\u5219\u8868\u8fbe\u5f0f\uff0c\u5c06\u63d0\u53d6\u6b63\u5219\u8868\u8fbe\u5f0f\u4e2d\u7684\u7b2c\u4e00\u4e2a\u7ec4\u3002

    \u8bf7\u6c42\u7684\u54cd\u5e94\u4f53\uff1a

    id=\"ddc86657-d402-4c10-b458-2ba2e4604cef\"&name=\"myorg\"&description=\"test org\"\n
    \u63d0\u53d6\u9700\u6c421\uff1a\u54cd\u5e94\u4f53\u4e2d name \u5b57\u6bb5\u7684\u503c\u3002

    \u63d0\u53d6\u914d\u7f6e\uff1a

    • \u5bf9\u8c61\uff1aBody
    • \u53d8\u91cf\u540d\uff1aname
    • Perl\u578b\u6b63\u5219\u8868\u8fbe\u5f0f\uff1aname=\"(.*?)\"
    "},{"location":"user_manual/api_test/api_step/#62-jsonpath","title":"6.2 JSONPath \u63d0\u53d6","text":"

    JSONPath \u63d0\u53d6\u9002\u7528\u4e8e\u54cd\u5e94\u5185\u5bb9\u662f JSON \u683c\u5f0f\u7684\u54cd\u5e94\u5185\u5bb9\u7684\u5904\u7406\uff0c\u53ef\u4ee5\u65b9\u4fbf\u5730\u901a\u8fc7 JSONPath \u8868\u8fbe\u5f0f\u5b9a\u4f4d\u5230\u7279\u5b9a\u5b57\u6bb5\u8fdb\u884c\u63d0\u53d6\u3002

    • \u53d8\u91cf\u540d\uff1a\u4fdd\u5b58\u63d0\u53d6\u503c\u7684\u53d8\u91cf\u540d\uff0c\u540e\u7eed\u53ef\u4ee5\u901a\u8fc7 ${varName} \u5f62\u5f0f\u5f15\u7528\u5230\uff0c\u5982\u679c\u9009\u62e9\u4e86\u3010\u5339\u914d\u591a\u4e2a\u3011\uff0c\u53ef\u4ee5\u901a\u8fc7 ${varName_matchNr} \u83b7\u53d6\u5230\u5339\u914d\u7684\u603b\u4e2a\u6570\uff0c\u901a\u8fc7 ${varName_n} \u4f9d\u6b21\u83b7\u53d6\u5230\u6bcf\u4e2a\u5339\u914d\u503c\u3002
    • JSONPath\u8868\u8fbe\u5f0f\uff1aJSONPath \u8868\u8fbe\u5f0f\uff0c\u901a\u8fc7\u8be5\u8868\u8fbe\u5f0f\u5b9a\u4f4d\u5230\u8981\u63d0\u53d6\u7684\u5b57\u6bb5\u3002

    \u8bf7\u6c42\u7684\u54cd\u5e94\u4f53\uff1a

    {\n    \"success\": true,\n    \"message\": null,\n    \"data\": {\n        \"id\": \"ddc86657-d402-4c10-b458-2ba2e4604cef\",\n        \"name\": \"myorg\",\n        \"description\": \"form api\",\n        \"createTime\": 1611154807818,\n        \"updateTime\": 1611154807818\n    }\n}\n
    \u63d0\u53d6\u9700\u6c42\uff1a\u63d0\u53d6\u54cd\u5e94\u4f53 data \u4e2d\u7684 name \u5b57\u6bb5\u5e76\u5b58\u50a8\u5728 name \u53d8\u91cf\u4e2d\u3002 \u63d0\u53d6\u914d\u7f6e\uff1a

    • \u53d8\u91cf\u540d\uff1aname
    • JSONPath \u8868\u8fbe\u5f0f\uff1a$.data.name
    "},{"location":"user_manual/api_test/api_step/#63-xpath","title":"6.3 XPath \u63d0\u53d6","text":"

    XPath \u63d0\u53d6\u9002\u7528\u4e8e\u5904\u7406 XML\u3001HTML \u7b49\u683c\u5f0f\u7684\u54cd\u5e94\u5185\u5bb9\uff0c\u53ef\u4ee5\u65b9\u4fbf\u5730\u901a\u8fc7 XPath \u8868\u8fbe\u5f0f\u5b9a\u4f4d\u5230\u7279\u5b9a\u5b57\u6bb5\u8fdb\u884c\u63d0\u53d6\u3002

    • \u53d8\u91cf\u540d\uff1a\u4fdd\u5b58\u63d0\u53d6\u503c\u7684\u53d8\u91cf\u540d\uff0c\u540e\u7eed\u53ef\u4ee5\u901a\u8fc7 ${varName} \u5f62\u5f0f\u5f15\u7528\u5230\uff0c\u5982\u679c\u9009\u62e9\u4e86\u3010\u5339\u914d\u591a\u4e2a\u3011\uff0c\u53ef\u4ee5\u901a\u8fc7 ${varName_matchNr} \u83b7\u53d6\u5230\u5339\u914d\u7684\u603b\u4e2a\u6570\uff0c\u901a\u8fc7 ${varName_n} \u4f9d\u6b21\u83b7\u53d6\u5230\u6bcf\u4e2a\u5339\u914d\u503c\u3002
    • XPath\u8868\u8fbe\u5f0f\uff1a\u9700\u8981\u8fdb\u884c\u5339\u914d\u7684 XPath \u8868\u8fbe\u5f0f\u3002

    \u793a\u4f8b

    \u8bf7\u6c42\u7684\u54cd\u5e94\u4f53\uff1a

    <root xmlns:foo=\"http://www.foo.org/\" xmlns:bar=\"http://www.bar.org\">\n    <employees>\n        <employee id=\"1\">Johnny Dapp</employee>\n        <employee id=\"2\">Al Pacino</employee>\n        <employee id=\"3\">Robert De Niro</employee>\n        <employee id=\"4\">Kevin Spacey</employee>\n        <employee id=\"5\">Denzel Washington</employee>\n    </employees>\n    <foo:companies>\n        <foo:company id=\"6\">Tata Consultancy Services</foo:company>\n        <foo:company id=\"7\">Wipro</foo:company>\n        <foo:company id=\"8\">Infosys</foo:company>\n        <foo:company id=\"9\">Microsoft</foo:company>\n        <foo:company id=\"10\">IBM</foo:company>\n        <foo:company id=\"11\">Apple</foo:company>\n        <foo:company id=\"12\">Oracle</foo:company>\n    </foo:companies>\n</root>\n
    \u63d0\u53d6\u9700\u6c42\uff1a\u63d0\u53d6\u54cd\u5e94\u4f53\u4e2d\u7684 id \u4e3a 3 \u7684\u5458\u5de5\u7684\u59d3\u540d\uff0c\u5373\u4e0a\u8ff0\u54cd\u5e94\u4e2d\u7684 Robert De Niro\uff0c\u5e76\u5b58\u50a8\u5728 employeeName \u53d8\u91cf\u4e2d\u3002

    \u63d0\u53d6\u914d\u7f6e\uff1a

    • \u53d8\u91cf\u540d\uff1aemployeeName
    • XPath \u8868\u8fbe\u5f0f\uff1astring(//employee[@id='3'])
    "},{"location":"user_manual/api_test/functions/","title":"\u5185\u7f6e\u51fd\u6570","text":""},{"location":"user_manual/api_test/functions/#1","title":"1 \u5185\u7f6e\u51fd\u6570\u6982\u8ff0","text":"

    MeterSphere \u63a5\u53e3\u6d4b\u8bd5\u57fa\u4e8e JMeter \u5b9e\u73b0\uff0c\u56e0\u6b64 JMeter \u4e2d\u7684\u5185\u7f6e\u51fd\u6570\u53ca\u53d8\u91cf\u5728 MeterSphere \u4e2d\u90fd\u53ef\u4ee5\u6b63\u5e38\u4f7f\u7528\u3002\u5185\u7f6e\u51fd\u6570\u53ca\u53d8\u91cf\u53ef\u5e94\u7528\u4e8eQUERY \u53c2\u6570\u3001REST \u53c2\u6570\u3001\u8bf7\u6c42\u4f53\u3001\u524d\u540e\u7f6e\u811a\u672c\u7b49\u3002 \u5185\u7f6e\u51fd\u6570\u4e00\u822c\u4ee5\u4e24\u4e2a\u4e0b\u5212\u7ebf\u5f00\u5934\uff0c\u5e76\u4f7f\u7528\u7c7b\u4f3c ${__functionName(var1,var2,var3)} \u7684\u5f62\u5f0f\u8c03\u7528\u3002\u5176\u4e2d __functionName \u4ee3\u8868\u51fd\u6570\u540d\uff0cvar1\uff0cvar2 \u548c var3 \u5206\u522b\u662f\u4f20\u7ed9\u8be5\u51fd\u6570\u7684\u4e09\u4e2a\u53c2\u6570\u3002 \u53d8\u91cf\u53ef\u4ee5\u901a\u8fc7\u7c7b\u4f3c ${varName} \u7684\u5f62\u5f0f\u5f15\u7528\uff0c\u5176\u4e2d varName \u4ee3\u8868\u53d8\u91cf\u540d\u3002\u4f8b\u5982\uff1a\u751f\u62101\u5230100\u7684\u968f\u673a\u6570\u4f7f\u7528\u8868\u8fbe\u5f0f\uff1a${__Random(1,100)}\u3002

    "},{"location":"user_manual/api_test/functions/#2","title":"2 \u5185\u7f6e\u51fd\u6570\u5217\u8868","text":"\u51fd\u6570\u7c7b\u578b \u51fd\u6570\u540d\u79f0 \u51fd\u6570\u8bf4\u660e Information threadNum get thread number Information threadGroupName get thread group name Information samplerName get the sampler name (label) Information machineIP get the local machine IP address Information machineName get the local machine name Information time return current time in various formats Information timeShift return a date in various formats with the specified amount of seconds/minutes/hours/days added Information log log (or display) a message (and return the value) Information logn log (or display) a message (empty return value) Input StringFromFile read a line from a file Input FileToString read an entire file Input CSVRead read from CSV delimited file Input XPath Use an XPath expression to read from a file Input StringToFile write a string to a file Calculation counter generate an incrementing number Formatting dateTimeConvert Convert a date or time from source to target format Calculation digest Generate a digest (SHA-1, SHA-256, MD5...) Calculation intSum add int numbers Calculation longSum add long numbers Calculation Random generate a random number Calculation RandomDate generate random date within a specific date range Calculation RandomFromMultipleVars extracts an element from the values of a set of variables separated by | Calculation RandomString generate a random string Calculation UUID generate a random type 4 UUID Scripting groovy run an Apache Groovy script Scripting BeanShell run a BeanShell script Scripting javaScript process JavaScript (Nashorn) Scripting jexl2 evaluate a Commons Jexl2 expression Scripting jexl3 evaluate a Commons Jexl3 expression Properties isPropDefined Test if a property exists Properties property read a property Properties P read a property (shorthand method) Properties setProperty set a JMeter property Variables split Split a string into variables Variables eval evaluate a variable expression Variables evalVar evaluate an expression stored in a variable Properties isVarDefined Test if a variable exists Variables V evaluate a variable name String char generate Unicode char values from a list of numbers String changeCase Change case following different modes String escapeHtml Encode strings using HTML encoding String escapeOroRegexpChars quote meta chars used by ORO regular expression String escapeXml Encode strings using XMl encoding String regexFunction parse previous response using a regular expression String unescape Process strings containing Java escapes (e.g. \\n & \\t) String unescapeHtml Decode HTML-encoded strings String urldecode Decode a application/x-www-form-urlencoded string String urlencode Encode a string to a application/x-www-form-urlencoded string String TestPlanName Return name of current test plan"},{"location":"user_manual/api_test/home/","title":"\u9996\u9875","text":"

    \u63a5\u53e3\u6d4b\u8bd5\u3010\u9996\u9875\u3011\u7528\u4e8e\u5c55\u793a\u73b0\u6709\u9879\u76ee\u7684\u63a5\u53e3\u6570\u91cf\u3001\u63a5\u53e3\u7528\u4f8b\u6570\u91cf\u3001\u573a\u666f\u7528\u4f8b\u6570\u91cf\u3001\u573a\u666f\u5b9a\u65f6\u4efb\u52a1\u6570\u91cf\u3001\u8fc7\u53bb7\u5929\u6709\u66f4\u65b0\u63a5\u53e3\u3001\u8fd0\u884c\u4e2d\u7684\u5b9a\u65f6\u4efb\u52a1\u4fe1\u606f\uff0c\u5e2e\u52a9\u7528\u6237\u5feb\u901f\u4e86\u89e3\u5f53\u524d\u9879\u76ee\u63a5\u53e3\u6d4b\u8bd5\u60c5\u51b5\u3002

    "},{"location":"user_manual/api_test/intro/","title":"\u6982\u8ff0","text":"

    \u4ece\u3010\u63a5\u53e3\u6d4b\u8bd5\u3011\u83dc\u5355\u8fdb\u5165\u63a5\u53e3\u6d4b\u8bd5\u529f\u80fd\u6a21\u5757\uff0c\u8be5\u6a21\u5757\u7531\u9996\u9875\u3001\u63a5\u53e3\u5b9a\u4e49\u3001\u63a5\u53e3\u81ea\u52a8\u5316\u3001\u6d4b\u8bd5\u62a5\u544a\u56db\u90e8\u5206\u7ec4\u6210\u3002

    \u9996\u9875\uff1a\u5c55\u793a\u5f53\u524d\u9879\u76ee\u7684\u63a5\u53e3\u6570\u91cf\u3001\u63a5\u53e3\u7528\u4f8b\u6570\u91cf\u3001\u81ea\u52a8\u5316\u573a\u666f\u6570\u91cf\u3001\u573a\u666f\u5b9a\u65f6\u4efb\u52a1\u6570\u91cf\u3001\u63a5\u53e3\u8986\u76d6\u5ea6\u3001\u7528\u4f8b\u8986\u76d6\u5ea6\u7b49\u4fe1\u606f\uff0c\u8fc7\u53bb 7 \u5929\u6709\u66f4\u65b0\u7684\u63a5\u53e3\u3001\u8fd0\u884c\u4e2d\u7684\u5b9a\u65f6\u4efb\u52a1\uff0c\u5e2e\u52a9\u7528\u6237\u5feb\u901f\u5f53\u524d\u9879\u76ee\u63a5\u53e3\u6d4b\u8bd5\u60c5\u51b5\u3002 \u63a5\u53e3\u5b9a\u4e49\uff1a\u53ef\u7528\u4e8e\u7ba1\u7406\u63a5\u53e3\u3001\u63a5\u53e3\u7528\u4f8b\uff0c\u5e76\u6267\u884c\u8c03\u8bd5\u7b49\u6d4b\u8bd5\u5de5\u4f5c\u3002\u5176\u4e2d\u63a5\u53e3\u5b9a\u4e49\u652f\u6301 HTTP\u3001TCP\u3001SQL\u3001DUBBO \u534f\u8bae\uff0c\u5bfc\u5165\u652f\u6301\u624b\u52a8\u5f55\u5165\uff0c\u4e5f\u652f\u6301\u5bfc\u5165\u4f01\u4e1a\u73b0\u6709\u7684\u63a5\u53e3\u6d4b\u8bd5\u5de5\u5177\u4e2d\u7684\u63a5\u53e3\uff0c\u5982 MeterSphere \u683c\u5f0f\u3001Postman \u683c\u5f0f\u3001Swagger \u683c\u5f0f\u3001HAR \u683c\u5f0f\u3001JMeter \u683c\u5f0f\u7b49\u3002\u540c\u65f6\u4e5f\u652f\u6301\u4f7f\u7528 Chrome \u63d2\u4ef6\u5f55\u5236\u63a5\u53e3\uff0c\u53ef\u4ee5\u5feb\u901f\u5f55\u5236\u63a5\u53e3\u5e76\u5bfc\u5165\u81f3 MeterSphere \u5e73\u53f0\u63d0\u9ad8\u521b\u5efa\u63a5\u53e3\u6548\u7387\uff0c\u63a5\u53e3\u5f55\u5236\u5de5\u5177\u53ef\u5230 GitHub \u7f51\u7ad9 MeterSphere \u9879\u76ee\u4e0b\u8f7d\uff0c\u5177\u4f53\u7528\u6cd5\u53ef\u53c2\u8003 MeterSphere \u6d4f\u89c8\u5668\u63d2\u4ef6\u3002 \u63a5\u53e3\u81ea\u52a8\u5316\uff1a\u7528\u4e8e\u573a\u666f\u7ea7\u81ea\u52a8\u5316\u6d4b\u8bd5\u5de5\u4f5c\uff0c\u80fd\u591f\u7f16\u6392\u7ec4\u5408\u591a\u4e2a\u63a5\u53e3\u5b9e\u73b0\u4e00\u4e2a\u573a\u666f\u7684\u6d4b\u8bd5\uff1b\u5728\u573a\u666f\u4e2d\u652f\u6301\u81ea\u7531\u6dfb\u52a0\u63a5\u53e3\u8bf7\u6c42\uff0c\u63d0\u4f9b\u53d8\u91cf\u63d0\u53d6\u3001\u54cd\u5e94\u65ad\u8a00\u3001\u524d\u540e\u7f6e\u811a\u672c\u3001\u903b\u8f91\u63a7\u5236\u5668\u7b49\u529f\u80fd\u3002\u63a5\u53e3\u81ea\u52a8\u5316\u652f\u6301\u7528\u6237\u5feb\u901f\u5bfc\u5165\u73b0\u6709\u7684 Postman \u63a5\u53e3\u6d4b\u8bd5\u96c6\u3001JMeter \u63a5\u53e3\u6d4b\u8bd5\u811a\u672c\u3001HAR \u811a\u672c\u3001 Chrome \u63d2\u4ef6\u5f55\u5236\u7684\u811a\u672c\u3002 \u6d4b\u8bd5\u62a5\u544a\uff1a\u5bf9\u63a5\u53e3\u6d4b\u8bd5\u7ed3\u679c\u8fdb\u884c\u53ef\u89c6\u5316\u7684\u7f8e\u89c2\u9875\u9762\u62a5\u544a\u5c55\u793a\uff0c\u652f\u6301\u62a5\u544a\u5206\u4eab\u3001\u5bfc\u51fa\u65b9\u4fbf\u5bf9\u6d4b\u8bd5\u7ed3\u679c\u8fdb\u884c\u5f52\u6863\u7559\u5b58\u3002

    "},{"location":"user_manual/api_test/test_report/","title":"\u63a5\u53e3\u6d4b\u8bd5\u62a5\u544a","text":"

    \u63a5\u53e3\u6d4b\u8bd5\u62a5\u544a\u662f\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u3001\u573a\u666f\u6267\u884c\u7684\u7ed3\u679c\u5c55\u793a\u3002\u5728\u6d4b\u8bd5\u62a5\u544a\u4e2d\u53ef\u4ee5\u67e5\u770b\u573a\u666f\u53ca\u7528\u4f8b\u6267\u884c\u5b8c\u6210\u7684\u8be6\u7ec6\u4fe1\u606f\uff0c\u5305\u542b\u63a5\u53e3\u8fd0\u884c\u73af\u5883\u3001\u8fd0\u884c\u8d44\u6e90\u6c60\u3001\u63a5\u53e3\u6210\u529f\u5931\u8d25\u6570\u636e\u5c55\u793a\u53ca\u63a7\u5236\u53f0\u65e5\u5fd7\u3002

    "},{"location":"user_manual/api_test/test_report/#1","title":"1 \u67e5\u770b\u6d4b\u8bd5\u62a5\u544a","text":"

    \u5728\u6d4b\u8bd5\u62a5\u544a\u5217\u8868\u4e2d\uff0c\u652f\u6301\u67e5\u770b\u7528\u4f8b\u3001\u573a\u666f\u62a5\u544a\u3002\u70b9\u51fb\u6307\u5b9a\u6d4b\u8bd5\u62a5\u544a\u64cd\u4f5c\u5217\u4e2d\u7684\u3010\u62a5\u544a\u8be6\u60c5\u3011\u6309\u94ae\uff0c\u8fdb\u5165\u62a5\u544a\u8be6\u60c5\u9875\u9762\u3002\u5728\u8be5\u9875\u9762\u4e2d\u53ef\u4ee5\u67e5\u770b\u8be5\u62a5\u544a\u7684\u8be6\u7ec6\u5185\u5bb9\uff0c\u5e76\u652f\u6301\u91cd\u547d\u540d\u3001\u5bfc\u51fa\u7b49\u64cd\u4f5c\u3002

    "},{"location":"user_manual/api_test/test_report/#2","title":"2 \u5bfc\u51fa\u548c\u5206\u4eab\u6d4b\u8bd5\u62a5\u544a","text":"

    \u5728\u6d4b\u8bd5\u62a5\u544a\u8be6\u60c5\u9875\u9762\uff0c\u70b9\u51fb\u53f3\u4e0a\u89d2\u3010\u5206\u4eab\u62a5\u544a\u3011\u751f\u6210\u4e00\u4e2a\u6709\u5b9e\u6548\u7684\u62a5\u544a\u5206\u4eab\u94fe\u63a5\u3002\u70b9\u51fb \u3010\u5bfc\u51fa\u62a5\u544a\u3011\u6309\u94ae\u5c06\u62a5\u544a\u5bfc\u51fa\u4e3a PDF \u683c\u5f0f\u3002

    "},{"location":"user_manual/api_test/test_report/#3","title":"3 \u5220\u9664\u6d4b\u8bd5\u62a5\u544a","text":"

    \u5728\u6d4b\u8bd5\u62a5\u544a\u5217\u8868\u4e2d\u70b9\u51fb\u6307\u5b9a\u6d4b\u8bd5\u62a5\u544a\u64cd\u4f5c\u5217\u4e2d\u7684\u3010\u5220\u9664\u3011\u6309\u94ae\u5220\u9664\u62a5\u544a\u3002

    \u5728\u6d4b\u8bd5\u62a5\u544a\u5217\u8868\u6279\u91cf\u52fe\u9009\uff0c\u70b9\u51fb\u5217\u8868\u4e09\u4e2a\u5c0f\u70b9\u3010...\u3011\u5373\u53ef\u51fa\u73b0\u3010\u6279\u91cf\u5220\u9664\u62a5\u544a\u3011\u83dc\u5355\uff0c\u70b9\u51fb\u53ef\u6279\u91cf\u5220\u9664\u6d4b\u8bd5\u62a5\u544a\u3002 \u3010\u6ce8\u610f\u3011 \u5220\u9664\u6d4b\u8bd5\u62a5\u544a\u540e\u65e0\u6cd5\u6062\u590d\uff0c\u8bf7\u8c28\u614e\u4f7f\u7528\u8be5\u529f\u80fd\u3002

    "},{"location":"user_manual/load_test/home/","title":"Home","text":"

    \u6027\u80fd\u6d4b\u8bd5\u7684\u9996\u9875\u4e3b\u8981\u7528\u4e8e\u5c55\u793a\u73b0\u6709\u9879\u76ee\u7684\u6d4b\u8bd5\u5217\u8868\u3001\u62a5\u544a\u3001\u6d4b\u8bd5\u65e5\u5386\u3001\u8fd0\u884c\u4e2d\u7684\u4efb\u52a1\u3002

    • \u6d4b\u8bd5\uff1a\u5c55\u793a\u6700\u8fd1 5 \u6b21\u6267\u884c\u7684\u6027\u80fd\u6d4b\u8bd5\u3002
    • \u62a5\u544a\uff1a\u5c55\u793a\u6700\u8fd1 5 \u6b21\u6267\u884c\u7684\u6027\u80fd\u6d4b\u8bd5\u6240\u751f\u6210\u7684\u62a5\u544a\u3002
    • \u6d4b\u8bd5\u65e5\u5386\uff1a\u6309\u65f6\u95f4\u7ef4\u5ea6\u5c55\u793a\u6027\u80fd\u6d4b\u8bd5\u6267\u884c\u7684\u9891\u6b21\uff0c\u989c\u8272\u8d8a\u6df1\uff0c\u4ee3\u8868\u4f7f\u7528\u9891\u6b21\u8d8a\u9ad8\u3002

    "},{"location":"user_manual/load_test/intro/","title":"\u6982\u8ff0","text":"

    \u6027\u80fd\u6d4b\u8bd5\u7684\u9996\u9875\u4e3b\u8981\u7528\u4e8e\u5c55\u793a\u73b0\u6709\u9879\u76ee\u7684\u6d4b\u8bd5\u5217\u8868\u3001\u62a5\u544a\u3001\u6d4b\u8bd5\u65e5\u5386\u3001\u8fd0\u884c\u4e2d\u7684\u4efb\u52a1\u3002

    • \u6d4b\u8bd5\uff1a\u5c55\u793a\u6700\u8fd1 5 \u6b21\u6267\u884c\u7684\u6027\u80fd\u6d4b\u8bd5\u3002
    • \u62a5\u544a\uff1a\u5c55\u793a\u6700\u8fd1 5 \u6b21\u6267\u884c\u7684\u6027\u80fd\u6d4b\u8bd5\u6240\u751f\u6210\u7684\u62a5\u544a\u3002
    • \u6d4b\u8bd5\u65e5\u5386\uff1a\u6309\u65f6\u95f4\u7ef4\u5ea6\u5c55\u793a\u6027\u80fd\u6d4b\u8bd5\u6267\u884c\u7684\u9891\u6b21\uff0c\u989c\u8272\u8d8a\u6df1\uff0c\u4ee3\u8868\u4f7f\u7528\u9891\u6b21\u8d8a\u9ad8\u3002

    \u3002

    "},{"location":"user_manual/load_test/load_test/","title":"\u6027\u80fd\u6d4b\u8bd5","text":"

    MeterSphere \u6027\u80fd\u6d4b\u8bd5\u6a21\u5757\u652f\u6301\u7528\u6237\u901a\u8fc7\u5df2\u6709\u7684\u63a5\u53e3\u6d4b\u8bd5\u521b\u5efa\u6216\u76f4\u63a5\u4e0a\u4f20 JMX \u811a\u672c\u6765\u521b\u5efa\u6027\u80fd\u6d4b\u8bd5\uff0c\u5e76\u6309\u9700\u8c03\u6574\u5e76\u53d1\u7528\u6237\u6570\u7b49\u538b\u529b\u53c2\u6570\u3002

    "},{"location":"user_manual/load_test/load_test/#1","title":"1 \u521b\u5efa\u6d4b\u8bd5\u8d44\u6e90\u6c60","text":"

    \u901a\u8fc7\u5b89\u88c5\u5305\u5b89\u88c5 MeterSphere \u540e\uff0c\u7cfb\u7edf\u9ed8\u8ba4\u4f7f\u7528\u5f53\u524d\u8282\u70b9\u521b\u5efa\u4e86\u540d\u4e3a\u3010LOCAL\u3011\u6d4b\u8bd5\u8d44\u6e90\u6c60\u3002\u5173\u4e8e\u6d4b\u8bd5\u8d44\u6e90\u6c60\u7684\u4f5c\u7528\u8bf7\u53c2\u8003 FAQ\u3002 \u5982\u679c\u9700\u8981\u521b\u5efa\u65b0\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60\uff0c\u6216\u5411\u5df2\u6709\u8d44\u6e90\u6c60\u4e2d\u6dfb\u52a0\u8282\u70b9\uff0c\u8bf7\u53c2\u8003 \u5982\u4f55\u5411\u6d4b\u8bd5\u8d44\u6e90\u6c60\u4e2d\u6dfb\u52a0\u8282\u70b9\uff1f\u3002

    "},{"location":"user_manual/load_test/load_test/#2-url","title":"2 \u4fee\u6539\u5f53\u524d\u7ad9\u70b9 URL","text":"

    \u6027\u80fd\u6d4b\u8bd5\u6267\u884c\u8fc7\u7a0b\u4e2d node-controller \u8282\u70b9\u9700\u8981\u901a\u8fc7\u914d\u7f6e\u7684\u3010\u5f53\u524d\u7ad9\u70b9URL\u3011\u4e0b\u8f7d JMX \u7b49\u6d4b\u8bd5\u8d44\u6e90\u6587\u4ef6\u3002\u5728\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u524d\u9700\u8981\u914d\u7f6e\u5e76\u68c0\u67e5\u6d4b\u8bd5\u8d44\u6e90\u6c60\u4e2d\u7684\u8282\u70b9\u53ef\u4ee5\u6b63\u5e38\u8bbf\u95ee\u5230\u8be5 URL\uff0cURL \u503c\u4e00\u822c\u4e3a\u901a\u8fc7\u6d4f\u89c8\u5668\u8bbf\u95ee MeterSphere \u7684\u5730\u5740\u3002

    "},{"location":"user_manual/load_test/load_test/#3","title":"3 \u521b\u5efa\u6027\u80fd\u6d4b\u8bd5","text":"

    \u8fdb\u5165\u3010\u6027\u80fd\u6d4b\u8bd5-\u6d4b\u8bd5\u3011\u9875\u9762\uff0c\u53ef\u9009\u62e9\u7248\u672c\u7ba1\u7406 (X-Pack)\u3002

    \u70b9\u51fb\u3010\u521b\u5efa\u6d4b\u8bd5\u3011\u8fdb\u5165\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u521b\u5efa\u9875\u9762\uff0c\u6216\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u8fdb\u5165\u6027\u80fd\u6d4b\u8bd5\u8be6\u60c5\u9875\uff0c\u5176\u754c\u9762\u5305\u542b\u591a\u4e2a\u9875\u7b7e\uff1a\u3010\u573a\u666f\u914d\u7f6e\u3011\u3001\u3010\u538b\u529b\u914d\u7f6e\u3011\u3001\u3010\u9ad8\u7ea7\u914d\u7f6e\u3011\u7b49\u3002

    "},{"location":"user_manual/load_test/load_test/#4","title":"4 \u573a\u666f\u914d\u7f6e","text":"

    \u573a\u666f\u914d\u7f6e\u9700\u8981\u586b\u5199\u5185\u5bb9\u5305\u62ec\u6d4b\u8bd5\u540d\u79f0\u3001\u4e0a\u4f20\u6d4b\u8bd5\u811a\u672c\u6216\u5f15\u7528\u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u3001\u4e0a\u4f20\u5176\u4ed6\u6027\u80fd\u6d4b\u8bd5\u8f85\u52a9\u6587\u4ef6\uff08jar \u5305\u3001cvs\u3001excel\u3001word\u3001pdf \u7b49\u6587\u4ef6\uff09\u3002 \u6027\u80fd\u6d4b\u8bd5\u811a\u672c\u652f\u6301\u5bfc\u5165 JMeter JMX\u6d4b\u8bd5\u8ba1\u5212\uff0c\u8fd8\u652f\u6301\u57fa\u4e8e\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u811a\u672c\u548c\u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u4e00\u952e\u8f6c\u6027\u80fd\u6d4b\u8bd5\u3002

    • \u52a0\u8f7d\u6027\u80fd\u6d4b\u8bd5\u811a\u672c\uff1a\u5728\u3010\u573a\u666f\u5217\u8868\u3011\u4e2d\u70b9\u51fb\u3010\u5f15\u7528\u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u3011\uff0c\u5c06\u5df2\u6709\u7684\u63a5\u53e3\u81ea\u52a8\u5316\u573a\u666f\u6dfb\u52a0\u5230\u6027\u80fd\u6d4b\u8bd5\u4e2d\uff0c\u6216\u8005\u70b9\u51fb\u3010\u52a0\u8f7dJMX\u6587\u4ef6\u3011\u5c06JMeter\u811a\u672c\u76f4\u63a5\u5bfc\u5165\u5230\u6027\u80fd\u4e2d\u3002

    • \u7ebf\u7a0b\u7ec4\uff1a\u652f\u6301\u4e24\u79cd\u6a21\u5f0f\uff1a\u7ebf\u6027\u52a0\u538b\u6a21\u5f0f ThreadGroup\u548c\u9636\u68af\u52a0\u538b\u6a21\u5f0f ConcurrencyThreadGroup\u3002

    • \u52a0\u8f7d\u8d44\u6e90\u6587\u4ef6\uff1a\u5982\u679c\u6d4b\u8bd5\u4e2d\u6709\u4f7f\u7528 CSV \u53c2\u6570\u5316\u6216\u8005\u81ea\u5b9a\u4e49 jar \u5305\uff0c\u53ef\u70b9\u51fb\u3010\u52a0\u8f7d\u6587\u4ef6\u3011\u5c06 CSV \u6587\u4ef6\u6216\u8005 jar \u6dfb\u52a0\u5230\u5e73\u53f0\u3002

    "},{"location":"user_manual/load_test/load_test/#5","title":"5 \u538b\u529b\u914d\u7f6e","text":"

    \u6bcf\u4e00\u4e2a\u6027\u80fd\u6d4b\u8bd5\u573a\u666f\u811a\u672c\u90fd\u53ef\u4ee5\u5404\u81ea\u5206\u522b\u8fdb\u884c\u6027\u80fd\u6d4b\u8bd5\u538b\u529b\u8bbe\u7f6e\uff1a\u5e76\u53d1\u6570\u91cf\u3001\u538b\u6d4b\u65f6\u957f\u3001RPS \u4e0a\u9650\uff08\u6307\u7684\u662f\u540c\u4e00\u65f6\u523b\u6700\u9ad8\u7684\u5e76\u53d1\u6570\u91cf\uff09\u7b49\u914d\u7f6e\uff0c\u540c\u65f6\u53f3\u4fa7\u7edf\u8ba1\u56fe\u4f1a\u6839\u636e\u5de6\u4fa7\u7684\u8bbe\u7f6e\u5b9e\u65f6\u663e\u793a\u6bcf\u4e2a\u573a\u666f\u914d\u7f6e\u8d70\u52bf\u56fe\u3002\u70b9\u51fb\u3010\u538b\u529b\u914d\u7f6e\u3011\u8bbe\u7f6e\u538b\u6d4b\u57fa\u672c\u7684\u6d4b\u8bd5\u6570\u636e

    • \u8d44\u6e90\u6c60\uff1a\u6307\u5b9a\u6d4b\u8bd5\u7684\u6d4b\u8bd5\u8d44\u6e90\u6c60\uff0c\u7cfb\u7edf\u652f\u6301\u72ec\u7acb\u4e3b\u673a\u548c K8s \u8d44\u6e90\u6c60\u914d\u7f6e\uff0c\u5176\u53ef\u7528\u8d44\u6e90\u6c60\u4f9d\u636e\u7cfb\u7edf\u7684\u8d44\u6e90\u6c60\u914d\u7f6e\u3002

    • \u6267\u884c\u987a\u5e8f\uff1a\u573a\u666f\u662f\u5426\u987a\u5e8f\u6267\u884c\uff1a\u56e0\u4e3a\u7cfb\u7edf\u652f\u6301\u591a\u573a\u666f\u7ec4\u5408\u538b\u6d4b\uff0c\u5bf9\u4e8e\u6709\u4e9b\u573a\u666f\u662f\u6709\u987a\u5e8f\u8981\u6c42\u7684\uff0c\u6b64\u9700\u8981\u628a\u5f00\u5173\u6253\u5f00\uff0c\u53ef\u4ee5\u907f\u514d\u811a\u672c 1 \u6ca1\u8dd1\u5b8c\uff0c\u811a\u672c 2 \u5c31\u542f\u52a8\u4e86\u3002

    • \u81ea\u52a8\u505c\u6b62\u5f00\u5173\uff1a\u8bbe\u7f6e\u6b64\u5f00\u5173\u5f00\u542f\u65f6\uff0c\u9700\u8981\u6307\u5b9a\u538b\u6d4b\u591a\u4e45\u540e\uff0c\u5f3a\u5236\u505c\u6b62\u6d4b\u8bd5\u3002

    • \u5e76\u53d1\u6570\uff1a\u6a21\u62df\u4e00\u5b9a\u6570\u91cf\u7528\u6237\u64cd\u4f5c\u7684\u4e00\u4e2a\u914d\u7f6e\u3002
    • \u53d6\u6837\u5668\u9519\u8bef\u540e\u7eed\u6267\u884c\u52a8\u4f5c\uff1a\u53d6\u6837\u5668\u9519\u8bef\u540e\uff0c\u63d0\u4f9b\u591a\u79cd\u5904\u7406\u65b9\u5f0f\u3002\u6bcf\u79cd\u65b9\u5f0f\u4f5c\u7528\u4ecb\u7ecd\u5982\u4e0b\uff1a
    • \u3010\u7ee7\u7eed\u3011\uff1a\u5ffd\u7565\u9519\u8bef\uff0c\u7ee7\u7eed\u6267\u884c\u3002
    • \u3010\u542f\u52a8\u4e0b\u4e00\u6b21\u5faa\u73af\u3011\uff1a\u5ffd\u7565\u9519\u8bef\uff0c\u7ebf\u7a0b\u5f53\u524d\u5faa\u73af\u7ec8\u6b62\uff0c\u6267\u884c\u4e0b\u4e00\u4e2a\u5faa\u73af\u3002
    • \u3010\u505c\u6b62\u7ebf\u7a0b\u3011\uff1a\u5f53\u524d\u7ebf\u7a0b\u505c\u6b62\u6267\u884c\uff0c\u4e0d\u5f71\u54cd\u5176\u4ed6\u7ebf\u7a0b\u6b63\u5e38\u6267\u884c\u3002
    • \u3010\u505c\u6b62\u6d4b\u8bd5\u3011\uff1a\u6574\u4e2a\u6d4b\u8bd5\u4f1a\u5728\u6240\u6709\u5f53\u524d\u6b63\u5728\u6267\u884c\u7684\u7ebf\u7a0b\u6267\u884c\u5b8c\u6bd5\u540e\u505c\u6b62\u3002
    • \u3010\u7acb\u5373\u505c\u6b62\u6d4b\u8bd5\u3011\uff1a\u6574\u4e2a\u6d4b\u8bd5\u4f1a\u7acb\u5373\u505c\u6b62\u6267\u884c\uff0c\u5f53\u524d\u6b63\u5728\u6267\u884c\u7684\u53d6\u6837\u5668\u53ef\u80fd\u4f1a\u88ab\u4e2d\u65ad\u3002

    • \u6267\u884c\u65b9\u5f0f\uff1a\u5982\u679c\u8bbe\u7f6e\u672c\u6b21\u538b\u6d4b\u9700\u8981\u6301\u7eed\u6267\u884c\u591a\u957f\u65f6\u95f4\uff0c\u538b\u6d4b\u8fd0\u884c\u65f6\u957f\u8fbe\u5230\u8bbe\u5b9a\u7684\u65f6\u95f4\u5c31\u505c\u6b62\u538b\u529b\u6d4b\u8bd5\u3002\u76ee\u524d\u7cfb\u7edf\u63d0\u4f9b\u6309\u5c0f\u65f6\u3001\u5206\u949f\u3001\u79d2\u6765\u8bbe\u7f6e\u3002\u8bbe\u7f6e\u672c\u6b21\u538b\u6d4b\u6267\u884c\u7684\u6b21\u6570\uff0c\u5e76\u4e14\u8bbe\u7f6e\u8fd0\u884c\u65f6\u95f4\uff0c\u538b\u6d4b\u8fd0\u884c\u6b21\u6570\u8fbe\u5230\u8bbe\u5b9a\u7684\u6b21\u6570\u6216\u8005\u5230\u8fbe\u8bbe\u7f6e\u8fd0\u884c\u7684\u65f6\u95f4\uff0c\u5c31\u505c\u6b62\u538b\u529b\u6d4b\u8bd5\u3002
    • \u3010\u6309\u6301\u7eed\u65f6\u95f4\u3011\uff1a\u8bbe\u7f6e\u672c\u6b21\u538b\u6d4b\u9700\u8981\u6301\u7eed\u6267\u884c\u591a\u957f\u65f6\u95f4\uff0c\u538b\u6d4b\u8fd0\u884c\u65f6\u957f\u8fbe\u5230\u8bbe\u5b9a\u7684\u65f6\u95f4\u5c31\u505c\u6b62\u538b\u529b\u6d4b\u8bd5\u3002\u76ee\u524d\u7cfb\u7edf\u63d0\u4f9b\u6309\u5c0f\u65f6\u3001\u5206\u949f\u3001\u79d2\u6765\u8bbe\u7f6e\u3002
    • \u3010\u6309\u8fed\u4ee3\u6b21\u6570\u3011\uff1a\u8bbe\u7f6e\u672c\u6b21\u538b\u6d4b\u6267\u884c\u7684\u6b21\u6570\uff0c\u5e76\u4e14\u8bbe\u7f6e\u8fd0\u884c\u65f6\u95f4\uff0c\u538b\u6d4b\u8fd0\u884c\u6b21\u6570\u8fbe\u5230\u8bbe\u5b9a\u7684\u6b21\u6570\u6216\u8005\u5230\u8fbe\u8bbe\u7f6e\u8fd0\u884c\u7684\u65f6\u95f4\uff0c\u5c31\u505c\u6b62\u538b\u529b\u6d4b\u8bd5\u3002

    • RPS\u8bbe\u7f6e\uff1a\u8bbe\u7f6e RPS \u65f6\uff0c\u9700\u8981\u5148\u6253\u5f00 RPS \u5f00\u5173\u624d\u53ef\u4ee5\uff0cRPS\uff08Requests per second\uff09\uff1a\u6bcf\u79d2\u8bf7\u6c42\u6570\u3002 \u5982\u679c\u8bbe\u7f6e\u4e86 RPS \u4e0a\u9650\uff0c\u5219\u53d1\u538b\u8fbe\u5230\u8fd9\u4e2a\u503c\u540e\uff0c\u5c31\u4e0d\u4f1a\u518d\u7ee7\u7eed\u52a0\u538b\u3002

    • Ramp-Up\u8bbe\u7f6e\uff1a\u662f\u5e76\u53d1\u7528\u6237\u6570\u5230\u8fbe\u6307\u5b9a\u4e2a\u6570\u6240\u82b1\u8d39\u7684\u65f6\u95f4\uff0cStep \u662f\u5206\u51e0\u6b65\u8fbe\u5230\u3002

    • \u5206\u914d\u7b56\u7565\uff1a\u9488\u5bf9\u6709\u591a\u4e2a\u8282\u70b9\u7684\u8d44\u6e90\u6c60\uff0cMeterSphere \u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u8bbe\u7f6e\u4e0d\u540c\u7684\u5206\u914d\u7b56\u7565\u3002\u76ee\u524d\u5206\u914d\u7b56\u7565\u652f\u6301\u81ea\u52a8\u5206\u914d\u3001\u56fa\u5b9a\u8282\u70b9\u3001\u4ee5\u53ca\u81ea\u5b9a\u4e49\u3002

    \uff081\uff09\u81ea\u52a8\u5206\u914d\uff1a\u7cfb\u7edf\u9ed8\u8ba4\u4e3a\u3010\u81ea\u52a8\u5206\u914d\u3011\uff0c\u5176\u6838\u5fc3\u903b\u8f91\u662f\u6309\u8d44\u6e90\u6c60\u8282\u70b9\u6700\u5927\u5e76\u53d1\u6570\u5360\u6bd4\u6bd4\u4f8b\u5206\u914d\uff0c\u6bd4\u5982\u3010\u6d4b\u8bd5\u8d44\u6e90\u6c60\u3011\u8bbe\u7f6e\u5982\u4e0b\u3002

    \uff082\uff09\u56fa\u5b9a\u8282\u70b9\uff1a\u5141\u8bb8\u7528\u6237\u6307\u5b9a\u538b\u6d4b\u4ec5\u4ec5\u5728\u67d0\u4e00\u4e2a\u8282\u70b9\u4e0a\u6267\u884c\u3002

    \uff083\uff09\u81ea\u5b9a\u4e49\uff1a\u652f\u6301\u7528\u6237\u6839\u636e\u9700\u8981\u81ea\u5b9a\u4e49\u6bcf\u4e2a\u8282\u70b9\u6267\u884c\u5206\u914d\u5360\u6bd4\u7684\u60c5\u51b5\u3002

    "},{"location":"user_manual/load_test/load_test/#6","title":"6 \u9ad8\u7ea7\u914d\u7f6e","text":"

    \u8fdb\u5165\u6027\u80fd\u6d4b\u8bd5\u811a\u672c\u7f16\u8f91\u9875\u9762\uff0c\u9009\u62e9\u3010\u9ad8\u7ea7\u914d\u7f6e\u3011\uff0c\u8fdb\u5165\u6027\u80fd\u6d4b\u8bd5\u9ad8\u7ea7\u914d\u7f6e\u9875\u9762\u3002\u9ad8\u7ea7\u8bbe\u7f6e\u5206\u4e3a\u591a\u90e8\u5206\uff1a\u5e38\u89c4\u3001\u57df\u540d\u7ed1\u5b9a\u3001CSVDataSet\u3001\u81ea\u5b9a\u4e49\u53d8\u91cf\u3001JMeter Properties\u3001System Properties\u3001\u76d1\u63a7\u7b49\u3002

    • \u5e38\u89c4\uff1a\u8fdb\u5165\u3010\u9ad8\u7ea7\u914d\u7f6e\u3011\u9875\u9762\uff0c\u6700\u4e0a\u9762\u7684\u8bbe\u7f6e\u53ef\u7406\u89e3\u4e3a\u5e38\u89c4\u4fe1\u606f\u8bbe\u7f6e\u90e8\u5206\uff0c\u6b64\u5305\u542b\u8bbe\u7f6e\u6d4b\u8bd5\u811a\u672c\u7684\u8fde\u63a5\u8d85\u65f6\u65f6\u95f4\u548c HTTP \u54cd\u5e94\u7801\u7b49\u4fe1\u606f\u3002\u4e0b\u9762\u4ecb\u7ecd\u90e8\u5206\u53c2\u6570\u4fe1\u606f\u3002

    • \u8d85\u65f6\u914d\u7f6e\uff1a\u8fde\u63a5\u8d85\u65f6\u662f\u8fde\u63a5\u65f6\u8d85\u8fc7\u8bbe\u7f6e\u7684\u65f6\u95f4\u5c31\u4e0d\u5728\u8fde\u63a5\uff0c\u54cd\u5e94\u8d85\u65f6\u662f\u7b49\u5f85\u54cd\u5e94\u65f6\u8d85\u8fc7\u8bbe\u7f6e\u7684\u65f6\u95f4\u5c31\u4e0d\u5728\u7b49\u5f85\u54cd\u5e94\u3002

    • \u805a\u5408\u65f6\u95f4\uff1a\u8868\u793a\u62a5\u544a\u91c7\u96c6\u65f6\u95f4\u4e5f\u53eb\u6253\u70b9\u65f6\u95f4\uff0c\u662f\u6307\u6d4b\u8bd5\u62a5\u544a\u5237\u65b0\u6570\u636e\u65f6\u95f4\u3002\u628a\u9f20\u6807\u653e\u5728\u3010\u805a\u5408\u65f6\u95f4\u3011\u540e\u7684\u3010i\u3011\u6309\u94ae\u4e0a\uff0c\u53ef\u4ee5\u770b\u5230\u7cfb\u7edf\u9ed8\u8ba4\u63d0\u4f9b\u4fe1\u606f\u8bf4\u660e\u3002

    • \u81ea\u5b9a\u4e49\u54cd\u5e94\uff1a\u8868\u793a\u6307\u5728\u8fd9\u91cc\u8bbe\u7f6e\u7684\u54cd\u5e94\u7801\uff0c\u5c31\u4e0d\u7edf\u8ba1\u4e3a\u5931\u8d25\u7684\u63a5\u53e3\u3002\u7cfb\u7edf\u652f\u6301\u6dfb\u52a0\u591a\u4e2a\u54cd\u5e94\u7801\uff0c\u6309\u9017\u53f7\u5206\u5272\u3002

    • \u57df\u540d\u7ed1\u5b9a\uff1a\u4f7f\u7528 JMeter \u7684\u65f6\u5019\u4f1a\u6d89\u53ca\u5230\u4f7f\u7528\u57df\u540d\u7684\u60c5\u51b5\uff0c\u4e3a\u4e86\u4f7f\u811a\u672c\u66f4\u5177\u6709\u901a\u7528\u6027\uff0c\u4ee5\u53ca\u53d1\u9001\u7ed9\u5176\u4ed6\u4eba\u65f6\uff0c\u811a\u672c\u4e00\u6837\u53ef\u4ee5\u76f4\u63a5\u8fd0\u884c\uff0c\u6545\u9700\u8981\u5728\u8fd0\u884c\u811a\u672c\u4e2d\u6dfb\u52a0 hosts \u5185\u5bb9\uff0c\u76f4\u63a5\u4ece JMeter \u4e2d\u83b7\u53d6\u3002

    • CSVDataSet\uff1a\u6027\u80fd\u6d4b\u8bd5\u65f6\u6240\u9700\u8981\u7684\u53c2\u6570\u6570\u636e\u6587\u4ef6\uff0c\u5982\u679c\u6240\u6709\u573a\u666f\u4f7f\u7528\u4e00\u4e2a\u7edf\u4e00\u7684\u53c2\u6570\u6587\u4ef6\uff0c\u4e3a\u4e86\u907f\u514d\u76f8\u540c\u7684\u53c2\u6570\u88ab\u4e0d\u540c\u7684\u573a\u666f\u5f15\u7528\u9020\u6210\u6d41\u7a0b\u5f02\u5e38\u3002\u7cfb\u7edf\u4f1a\u6839\u636e\u538b\u6d4b\u7b56\u7565\u81ea\u52a8\u6765\u5206\u5272 CSV \u6570\u636e\u6587\u4ef6\u91cc\u7684\u53c2\u6570\uff0c\u628a\u4e0d\u540c\u7684\u53c2\u6570\u5206\u914d\u7ed9\u4e0d\u540c\u7684\u4e1a\u52a1\u573a\u666f\u3002

    • \u81ea\u5b9a\u4e49\u53d8\u91cf\uff1a\u7cfb\u7edf\u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u6027\u80fd\u6d4b\u8bd5\u811a\u672c\u91cc\u6240\u9700\u7684\u53d8\u91cf\u3002\u4e0d\u4f7f\u7528\u65f6\uff0c\u53ef\u4ee5\u5173\u95ed\u542f\u7528\u5f00\u5173\u3002

    • JMeter Properties\uff1a\u7cfb\u7edf\u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u9700\u8981\u5173\u6ce8\u6216\u4f7f\u7528\u7684\u4efb\u4f55 JMeter Properties \u4fe1\u606f\u3002

    • System Properties\uff1a\u5982\u679c\u6027\u80fd\u6d4b\u8bd5\u6709\u7528\u5230\u8bc1\u4e66\uff0c\u9664\u4e86\u8981\u5728\u8d44\u6e90\u6587\u4ef6\u91cc\u6dfb\u52a0\u5916\uff0c\u8fd8\u8981\u5728 System_Properties \u91cc\u8fdb\u884c\u914d\u7f6e\u3002

    • \u76d1\u63a7\uff1a\u7cfb\u7edf\u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u914d\u7f6e\u9700\u8981\u5173\u6ce8\u4efb\u4f55\u53d1\u538b\u7aef\u548c\u88ab\u6d4b\u670d\u52a1\u7684\u6d4b\u8bd5\u5b9e\u65f6\u76d1\u63a7\uff0c\u76ee\u524d\u5bf9\u4e8e\u88ab\u76d1\u63a7\u7cfb\u7edf\u9700\u8981\u5b89\u88c5 Prometheus \u7684\u76d1\u63a7\u63d2\u4ef6 node_export \u5e76\u542f\u52a8\u670d\u52a1\u3002

    • \u76d1\u63a7\u914d\u7f6e\uff1a\u70b9\u51fb\u3010\u9ad8\u7ea7\u914d\u7f6e-\u76d1\u63a7-\u6dfb\u52a0\u3011\uff0c\u53ef\u4ee5\u6307\u5b9a\u8981\u76d1\u63a7\u7684\u670d\u52a1\u5668\u6216\u538b\u6d4b\u8282\u70b9\uff0c\u8bbe\u7f6e\u8981\u76d1\u63a7\u7cfb\u7edf\u7684\u76f8\u5173\u4fe1\u606f\u3002\u70b9\u51fb\u3010\u786e\u8ba4\u3011\u5b8c\u6210\u8bbe\u7f6e\u3002

    "},{"location":"user_manual/load_test/load_test/#7","title":"7 \u6027\u80fd\u6d4b\u8bd5\u7ef4\u62a4\u7ba1\u7406","text":"
    • \u4fdd\u5b58\u548c\u6267\u884c\uff1a\u5b8c\u6210\u6027\u80fd\u6d4b\u8bd5\u4ee5\u4e0a\u7684\u76f8\u5173\u914d\u7f6e\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u5b8c\u6210\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u7684\u521b\u5efa\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u5e76\u6267\u884c\u3011\u7cfb\u7edf\u4f1a\u5728\u4fdd\u5b58\u540e\uff0c\u76f4\u63a5\u8fd0\u884c\u8be5\u6027\u80fd\u6d4b\u8bd5\u3002
    • \u6027\u80fd\u5217\u8868\uff1a\u5728\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u5217\u8868\u4e2d\u53ef\u67e5\u770b\u5230\u521b\u5efa\u7684\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\uff0c\u70b9\u51fb\u3010\u6267\u884c\u3011\u3001\u3010\u7f16\u8f91\u3011\u3001\u3010\u590d\u5236\u3011\u548c\u3010\u5220\u9664\u3011\u53ef\u5bf9\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u8fdb\u884c\u76f8\u5e94\u7684\u64cd\u4f5c\u3002
    • \u5b9a\u65f6\u4efb\u52a1\uff1a\u70b9\u51fb\u3010\u5b9a\u65f6\u4efb\u52a1\u3011\u53ef\u8bbe\u7f6e\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u7684\u5b9a\u65f6\u4efb\u52a1\u3002

    \u914d\u7f6e\u5b9a\u65f6\u4efb\u52a1\u5e76\u5f00\u542f\uff1a

    \u914d\u7f6e\u5b9a\u65f6\u4efb\u52a1\u901a\u77e5\uff1a

    • \u6027\u80fd\u6d4b\u8bd5\u6267\u884c\uff1a\u70b9\u51fb\u3010\u4fdd\u5b58\u5e76\u6267\u884c\u3011\u8fdb\u884c\u6027\u80fd\u6d4b\u8bd5\u7684\u6267\u884c\uff0c\u6267\u884c\u5b8c\u6210\u540e\u53ef\u5b9e\u65f6\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\uff0c\u5728\u6d4b\u8bd5\u62a5\u544a\u4e2d\u53ef\u70b9\u51fb\u3010\u7acb\u5373\u505c\u6b62\u3011\u7ec8\u6b62\u6027\u80fd\u6d4b\u8bd5\uff0c\u53ef\u70b9\u51fb\u3010\u518d\u6b21\u6267\u884c\u3011\u3001\u3010\u5bfc\u51fa\u62a5\u544a\u3011\u548c\u3010\u4e0b\u8f7dJTL\u3011\u7b49\u64cd\u4f5c\u529f\u80fd\uff0c\u5bf9\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u548c\u62a5\u544a\u8fdb\u884c\u76f8\u5e94\u7684\u64cd\u4f5c\u3002

    • \u53d8\u66f4\u8bb0\u5f55\uff1a\u5728\u6027\u80fd\u6d4b\u8bd5\u811a\u672c\u4e2d\u4e5f\u53ef\u4ee5\u67e5\u770b\u3010\u53d8\u66f4\u8bb0\u5f55\u3011\u3002

    • \u7248\u672c\u7ba1\u7406 (X-Pack)\uff1a\u6027\u80fd\u6d4b\u8bd5\u811a\u672c\u4e2d\u4e5f\u53ef\u4ee5\u8fdb\u884c\u3010\u7248\u672c\u7ba1\u7406\u3011\u3002

    • \u540c\u6b65\u53d8\u66f4\u573a\u666f\u6d4b\u8bd5\uff1a\u5f53\u6027\u80fd\u6d4b\u8bd5\u573a\u666f\u6709\u66f4\u65b0\u65f6\uff0c\u5728\u6027\u80fd\u6d4b\u8bd5\u9875\u9762\u53ef\u70b9\u51fb\u3010\u540c\u6b65\u53d8\u66f4\u573a\u666f\u6d4b\u8bd5\u3011\u6309\u94ae\u8fdb\u884c\u540c\u6b65\u66f4\u65b0\u3002

    "},{"location":"user_manual/load_test/test_report/","title":"\u6027\u80fd\u6d4b\u8bd5\u62a5\u544a","text":""},{"location":"user_manual/load_test/test_report/#1","title":"1 \u62a5\u544a","text":"

    \u5bf9\u4e8e\u6027\u80fd\u6d4b\u8bd5\u63d0\u4f9b\u4e86\u4e0d\u540c\u7684\u7ba1\u7406\u529f\u80fd\uff0c\u5982\uff1a - \u3010\u7acb\u5373\u505c\u6b62\u3011\uff1a\u5bf9\u8fdb\u884c\u4e2d\u7684\u6027\u80fd\u6d4b\u8bd5\uff0c\u53ef\u4ee5\u624b\u52a8\u8fdb\u884c\u505c\u6b62\u6267\u884c\u3002 - \u3010\u518d\u6b21\u6267\u884c\u3011\uff1a\u518d\u6b21\u6267\u884c\u8be5\u6027\u80fd\u6d4b\u8bd5\u3002 - \u3010\u5bfc\u51fa\u62a5\u544a\u3011\uff1a\u53ef\u5c06\u62a5\u544a\u8fdb\u884c\u5bfc\u51fa\u6210 PDF\u3002 - \u3010\u62a5\u544a\u5bf9\u6bd4\u3011\uff1a\u53ef\u5bf9\u8fd1\u51e0\u6b21\u6d4b\u8bd5\u62a5\u544a\u8fdb\u884c\u6bd4\u5bf9\u3002 - \u3010\u4e0b\u8f7d JTL\u3011\uff1a\u53ef\u4e0b\u8f7d JTL \u6587\u4ef6\u3002 - \u3010\u4e0b\u8f7d\u6267\u884c\u6587\u4ef6\u3011\uff1a\u53ef\u4e0b\u8f7d\u6267\u884c\u6587\u4ef6(\u5305\u62ec JMX \u811a\u672c\u3001Jar\u5305\u3001CSV\u6587\u4ef6)\u3002

    • \u67e5\u770b\u62a5\u544a:\u70b9\u51fb\u6027\u80fd\u6d4b\u8bd5\u914d\u7f6e\u9875\u9762\u7684\u3010\u4fdd\u5b58\u5e76\u6267\u884c\u3011\u6309\u94ae\uff0c\u7cfb\u7edf\u81ea\u52a8\u8fdb\u5165\u6027\u80fd\u6d4b\u8bd5\u6d4b\u8bd5\u62a5\u544a\u9875\u9762\u3002\u5f53\u6536\u5230\u6d4b\u8bd5\u7ed3\u679c\u6570\u636e\u540e\uff0c\u62a5\u544a\u9875\u9762\u5c06\u81ea\u52a8\u66f4\u65b0\u3002

    • \u6d4b\u8bd5\u6982\u89c8:\u8ba4\u8fdb\u5165\u6d4b\u8bd5\u62a5\u544a\uff0c\u5373\u4e3a\u6d4b\u8bd5\u6982\u89c8\u9875\u9762\uff0c\u53ef\u770b\u5230\u4e0d\u540c\u6307\u6807\u4e0b\u7684\u6d4b\u8bd5\u6570\u636e\u6c47\u603b\u60c5\u51b5\u3002

    • \u6d4b\u8bd5\u8be6\u60c5:\u7cfb\u7edf\u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u5404\u79cd\u6d4b\u8bd5\u6307\u6807\uff0c\u5e76\u4e14\u6839\u636e\u7528\u6237\u81ea\u5b9a\u4e49\u7684\u6307\u6807\u52a8\u6001\u5b9e\u65f6\u751f\u6210\u6d4b\u8bd5\u62a5\u8868\u3002

    • \u8bf7\u6c42\u7edf\u8ba1:\u6027\u80fd\u6d4b\u8bd5\u6240\u6709\u8bf7\u6c42\u60c5\u51b5\u7684\u7edf\u8ba1\u548c\u5206\u6790\u3002

    • \u9519\u8bef\u8bb0\u5f55:\u5bf9\u6027\u80fd\u6d4b\u8bd5\u8fc7\u7a0b\u4e2d\u53d1\u751f\u7684\u6240\u6709\u7684\u9519\u8bef\u8bb0\u5f55\u7684\u7edf\u8ba1\u53ca\u5206\u6790\u3002

    • \u65e5\u5fd7\u8be6\u60c5:\u6bcf\u6b21\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u65f6\uff0c\u90fd\u4f1a\u8bb0\u5f55\u548c\u4fdd\u5b58\u672c\u6b21\u6267\u884c\u8fc7\u7a0b\u4e2d\u6240\u6709\u7684\u65e5\u5fd7\u60c5\u51b5\uff0c\u65b9\u4fbf\u6280\u672f\u4eba\u5458\u95ee\u9898\u7684\u67e5\u9605\u548c\u5b9a\u4f4d\u3002\u540c\u65f6\u53ef\u4ee5\u4e0b\u8f7d\u5b8c\u6574\u7684\u65e5\u5fd7\u4fe1\u606f\u3002

    • \u76d1\u63a7\u8be6\u60c5:\u5bf9\u6027\u80fd\u6d4b\u8bd5\u6267\u884c\u65f6\uff0c\u8bbe\u7f6e\u7684\u6240\u6709\u76d1\u63a7\u4fe1\u606f\u7684\u76d1\u63a7\u6570\u636e\u3002\u540c\u65f6\u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u9009\u62e9\u76d1\u63a7\u6307\u6807\uff0c\u6839\u636e\u4e0d\u540c\u7684\u6307\u6807\uff0c\u7cfb\u7edf\u4f1a\u5b9e\u65f6\u52a8\u6001\u751f\u6210\u76d1\u63a7\u62a5\u544a\u3002

    • \u6d4b\u8bd5\u914d\u7f6e:\u67e5\u770b\u6b64\u62a5\u544a\u5bf9\u5e94\u7684\u6bcf\u4e2a\u573a\u666f\u5bf9\u5e94\u7684\u538b\u529b\u914d\u7f6e\u60c5\u51b5\u3002\u70b9\u9009\u6bcf\u4e2a\u573a\u666f\u53ef\u4ee5\u67e5\u770b\u5404\u81ea\u7684\u538b\u529b\u914d\u7f6e\u3002

    • \u505c\u6b62\u6d4b\u8bd5:\u70b9\u51fb\u3010\u7acb\u5373\u505c\u6b62\u3011\u6309\u94ae\uff0c\u53ef\u624b\u52a8\u505c\u6b62\u6d4b\u8bd5\u3002

    • \u518d\u6b21\u6267\u884c:\u70b9\u51fb\u3010\u518d\u6b21\u6267\u884c\u3011\u6309\u94ae\uff0c\u53ef\u518d\u6b21\u6267\u884c\u6d4b\u8bd5\u3002

    • \u5bfc\u51fa\u62a5\u544a:\u70b9\u51fb\u3010\u5bfc\u51fa\u62a5\u544a\u3011\u6309\u94ae\uff0c\u53ef\u5c06\u672c\u6b21\u6d4b\u8bd5\u62a5\u544a\u5bfc\u51fa PDF \u6587\u4ef6\u3002

    • \u5206\u4eab\u62a5\u544a:\u70b9\u51fb\u3010\u5206\u4eab\u62a5\u544a\u3011\u6309\u94ae\uff0c\u7cfb\u7edf\u5373\u4f1a\u751f\u6210\u8be5\u62a5\u544a\u5bf9\u5e94\u7684\u94fe\u63a5\u3002\u63a5\u4e0b\u6765\uff0c\u70b9\u51fb\u3010\u590d\u5236\u3011\u6309\u94ae\u5c31\u53ef\u4ee5\u5206\u4eab\u7ed9\u9700\u8981\u67e5\u770b\u62a5\u544a\u7684\u7528\u6237\u3002

    \u6027\u80fd\u6d4b\u8bd5\u62a5\u544a\u7684\u94fe\u63a5\u6709\u6548\u65f6\u957f\u9ed8\u8ba4\u4e3a 24 \u5c0f\u65f6\uff0c\u7528\u6237\u53ef\u4ee5\u9009\u62e9\u3010\u9879\u76ee\u8bbe\u7f6e-\u66f4\u591a\u9009\u9879-\u5e94\u7528\u7ba1\u7406-\u6027\u80fd\u6d4b\u8bd5\u3011\uff0c\u6839\u636e\u9700\u8981\u81ea\u5b9a\u4e49\u8be5\u94fe\u63a5\u7684\u6709\u6548\u65f6\u957f\u3002

    • \u62a5\u544a\u5bf9\u6bd4\uff1a\u70b9\u51fb\u3010\u62a5\u544a\u5bf9\u6bd4\u3011\uff0c\u52fe\u9009\u8981\u5bf9\u6bd4\u7684\u62a5\u544a\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u6309\u94ae\u5373\u53ef\u3002

    • \u4e0b\u8f7dJTL\u6587\u4ef6\uff1a\u70b9\u51fb\u3010\u4e0b\u8f7dJTL\u3011\uff0c\u53ef\u4e0b\u8f7d\u6d4b\u8bd5\u7ed3\u679c\u6587\u4ef6\uff0c\u652f\u6301\u5bfc\u51fa JTL \u6587\u4ef6\u7528\u4ee5\u751f\u6210 JMeter \u81ea\u5b9a\u4e49\u62a5\u8868\u3002

    • \u4e0b\u8f7d\u6267\u884c\u6587\u4ef6\uff1a\u70b9\u51fb\u3010\u4e0b\u8f7d\u6267\u884c\u6587\u4ef6\u3011\uff0c\u53ef\u4e0b\u8f7d\u6d4b\u8bd5 JMX \u811a\u672c\u914d\u7f6e\u6587\u4ef6(\u5305\u62ec Jar\u5305\u3001CSV\u6587\u4ef6\u7b49)\u3002

    "},{"location":"user_manual/load_test/test_report/#2","title":"2 \u6d4b\u8bd5\u62a5\u544a\u7ba1\u7406","text":"

    \u70b9\u51fb\u3010\u62a5\u544a\u3011\u53ef\u8fdb\u5165\u6d4b\u8bd5\u62a5\u544a\u5217\u8868\uff0c\u53ef\u67e5\u770b\u3001\u5bf9\u6bd4\u3001\u5220\u9664\u62a5\u544a\u3002

    • \u62a5\u544a\u8be6\u60c5\uff1a\u70b9\u51fb\u3010\u62a5\u544a\u8be6\u60c5\u3011\u53ef\u67e5\u770b\u62a5\u544a\u3002

    • \u5bf9\u6bd4\uff1a\u70b9\u51fb\u3010\u5bf9\u6bd4\u3011\u53ef\u8fdb\u884c\u591a\u62a5\u544a\u6570\u636e\u5bf9\u6bd4\u3002

    • \u5220\u9664\uff1a\u70b9\u51fb\u3010\u5220\u9664\u3011\u53ef\u5220\u9664\u62a5\u544a\u3002

    • \u6279\u91cf\u5220\u9664\uff1a\u9009\u4e2d\u591a\u4efd\u62a5\u544a\uff0c\u70b9\u51fb\u3010\u6279\u91cf\u5220\u9664\u62a5\u544a\u3011\u53ef\u5220\u9664\u62a5\u544a\u3002

    "},{"location":"user_manual/my_desk/attention/","title":"\u6211\u7684\u5173\u6ce8","text":"

    \u8f93\u5165\u9879\u76ee\u540d\u79f0\u53ef\u641c\u7d22\u5230\u9879\u76ee\uff0c\u9009\u4e2d\u9879\u76ee\uff0c\u5207\u6362\u5230\u5bf9\u5e94\u7684\u83dc\u5355\uff0c\u4e0b\u65b9\u5217\u8868\u4e5f\u4e0e\u4e4b\u5bf9\u5e94\u3002\u53ef\u5207\u6362\u5230\u4efb\u610f\u83dc\u5355\uff0c\u4e0b\u65b9\u5217\u8868\u5c31\u663e\u793a\u5bf9\u5e94\u5185\u5bb9\u3002\u9ed8\u8ba4\u3010\u529f\u80fd\u7528\u4f8b\u3011\uff0c\u9009\u62e9\u5f53\u524d\u7248\u672c\u53f7\uff0c\u70b9\u51fb\u5217\u8868\u4efb\u4e00\u6570\u636e\uff0c\u4f1a\u8df3\u8f6c\u5230\u5bf9\u5e94\u7684\u9875\u9762\u67e5\u770b\u8be6\u7ec6\u60c5\u51b5\u3002

    "},{"location":"user_manual/my_desk/created/","title":"\u6211\u521b\u5efa\u7684","text":"

    \u8f93\u5165\u9879\u76ee\u540d\u79f0\u53ef\u641c\u7d22\u5230\u9879\u76ee\uff0c\u9009\u4e2d\u9879\u76ee\uff0c\u5207\u6362\u5230\u5bf9\u5e94\u7684\u83dc\u5355\uff0c\u4e0b\u65b9\u5217\u8868\u4e5f\u4e0e\u4e4b\u5bf9\u5e94\u3002\u53ef\u5207\u6362\u5230\u4efb\u610f\u83dc\u5355\uff0c\u4e0b\u65b9\u5217\u8868\u5c31\u663e\u793a\u5bf9\u5e94\u5185\u5bb9\u3002\u9ed8\u8ba4\u3010\u529f\u80fd\u7528\u4f8b\u3011\uff0c\u9009\u62e9\u5f53\u524d\u7248\u672c\u53f7\uff0c\u70b9\u51fb\u5217\u8868\u4efb\u4e00\u6570\u636e\uff0c\u4f1a\u8df3\u8f6c\u5230\u5bf9\u5e94\u7684\u9875\u9762\u67e5\u770b\u8be6\u7ec6\u60c5\u51b5\u3002

    "},{"location":"user_manual/my_desk/dashboard/","title":"\u6211\u7684\u4eea\u8868\u76d8","text":"

    \u9875\u9762\u4e3b\u8981\u5c55\u793a\u3010\u6211\u7684\u5f85\u529e\u3011\u3001\u3010\u6211\u7684\u5173\u6ce8\u3011\u3001\u3010\u6211\u521b\u5efa\u7684\u7528\u4f8b\u3011\u3001\u3010\u6211\u521b\u5efa\u7684\u7f3a\u9677\u3011\u6a21\u5757\u7684\u7edf\u8ba1\u6570\u636e\u3002

    "},{"location":"user_manual/my_desk/dashboard/#1","title":"1 \u6211\u7684\u5f85\u529e","text":"

    \u5c55\u793a\u4e0d\u540c\u7c7b\u522b\u7684\u5f85\u529e\u6570\u636e\uff0c\u5982\u529f\u80fd\u7528\u4f8b\u3001\u6d4b\u8bd5\u8ba1\u5212\u3001\u7528\u4f8b\u8bc4\u5ba1\u3001\u7f3a\u9677\u7ba1\u7406\u3001\u63a5\u53e3\u5b9a\u4e49\u3001\u63a5\u53e3\u7528\u4f8b\u3001\u63a5\u53e3\u81ea\u52a8\u5316\u3001\u6027\u80fd\u6d4b\u8bd5\u7b49\uff0c\u70b9\u51fb\u5f85\u529e\u5217\u8868\u4e2d\u7684\u4e0d\u540c\u7c7b\u522b\uff0c\u4f1a\u8df3\u81f3\u76f8\u5e94\u7684\u9875\u9762\u3002

    "},{"location":"user_manual/my_desk/dashboard/#2","title":"2 \u6211\u7684\u5173\u6ce8","text":"

    \u5c55\u793a\u4e0d\u540c\u7c7b\u522b\u7684\u5173\u6ce8\uff0c\u5982\u529f\u80fd\u7528\u4f8b\u3001\u6d4b\u8bd5\u8ba1\u5212\u3001\u7528\u4f8b\u8bc4\u5ba1\u3001\u7f3a\u9677\u7ba1\u7406\u3001\u63a5\u53e3\u5b9a\u4e49\u3001\u63a5\u53e3\u7528\u4f8b\u3001\u63a5\u53e3\u81ea\u52a8\u5316\u3001\u6027\u80fd\u6d4b\u8bd5\u7b49\uff0c\u70b9\u51fb\u5173\u6ce8\u5217\u8868\u4e2d\u7684\u4e0d\u540c\u7c7b\u522b\uff0c\u4f1a\u8df3\u81f3\u76f8\u5e94\u7684\u9875\u9762\u3002

    "},{"location":"user_manual/my_desk/dashboard/#3","title":"3 \u6211\u521b\u5efa\u7684\u7528\u4f8b","text":"

    \u997c\u56fe\u5c55\u793a\u5404\u7c7b\u7528\u4f8b\u7684\u6570\u91cf\uff0c\u9f20\u6807\u60ac\u6d6e\u5728\u5404\u7c7b\u7528\u4f8b\u4e0a\uff0c\u4f1a\u663e\u793a\u8be5\u7c7b\u7528\u4f8b\u7684\u4e2a\u6570\u3002

    "},{"location":"user_manual/my_desk/dashboard/#4","title":"4 \u6211\u521b\u5efa\u7684\u7f3a\u9677","text":"

    \u997c\u56fe\u5c55\u793a\u5404\u7c7b\u7f3a\u9677\u7684\u4e2a\u6570\uff0c\u9f20\u6807\u60ac\u6d6e\u5728\u5404\u7c7b\u7f3a\u9677\u4e0a\uff0c\u4f1a\u663e\u793a\u8be5\u7c7b\u7f3a\u9677\u7684\u4e2a\u6570\u3002

    "},{"location":"user_manual/my_desk/todo/","title":"\u6211\u7684\u5f85\u529e","text":"

    \u53ef\u5207\u6362\u5230\u4efb\u610f\u83dc\u5355\uff0c\u4e0b\u65b9\u5217\u8868\u5c31\u663e\u793a\u5bf9\u5e94\u5185\u5bb9\u3002\u9ed8\u8ba4\u3010\u529f\u80fd\u7528\u4f8b\u3011\uff0c\u9009\u62e9\u5f53\u524d\u7248\u672c\u53f7\uff0c\u70b9\u51fb\u5217\u8868\u4efb\u4e00\u6570\u636e\uff0c\u4f1a\u8df3\u8f6c\u5230\u5bf9\u5e94\u7684\u9875\u9762\u67e5\u770b\u8be6\u7ec6\u60c5\u51b5\u3002

    "},{"location":"user_manual/my_desk/todo/#1","title":"1 \u5f85\u5b8c\u6210","text":"

    \u5728\u3010\u63a5\u53e3\u5b9a\u4e49\u3011\u3001\u3010\u63a5\u53e3\u7528\u4f8b\u3011\u3001\u3010\u63a5\u53e3\u81ea\u52a8\u5316\u3011Tab \u4e0b\u53ef\u4ee5\u5c55\u793a\u6240\u6709\u3010\u5f85\u5b8c\u6210\u3011\u7684\u63a5\u53e3\u6216\u8005\u7528\u4f8b\u5217\u8868\u3002

    "},{"location":"user_manual/my_desk/todo/#2","title":"2 \u5f85\u66f4\u65b0","text":"

    \u5df2\u5b58\u5728\u7684\u63a5\u53e3\uff0c\u4fee\u6539\u5730\u5740\u3001\u8bf7\u6c42\u5934\u3001\u8bf7\u6c42\u4f53\u7b49\u4fe1\u606f\uff0c\u70b9\u51fb\u4fdd\u5b58\u540e\uff0c\u672a\u8fdb\u884c\u3010\u540c\u6b65\u8bbe\u7f6e\u3011\u64cd\u4f5c\u3002

    \u540c\u6b65\u8bbe\u7f6e

    \u5373\u5728 API \u63a5\u53e3\u53d1\u751f\u53d8\u66f4\u5e76\u70b9\u51fb\u4fdd\u5b58\u540e\uff0c\u53ef\u52fe\u9009\u540c\u6b65\u8bbe\u7f6e Header\u3001QUERY\u53c2\u6570\u3001REST\u53c2\u6570\u7b49\u9009\u9879\uff0c\u52fe\u9009\u540e\uff0c\u4f1a\u540c\u6b65\u66f4\u65b0\u8be5 API \u5bf9\u5e94\u7684 CASE \u548c\u5f15\u7528\u8be5 API \u7684\u573a\u666f\u3002

    \u53ef\u5728\u3010\u5f85\u66f4\u65b0\u3011\u9875\u9762\u5217\u8868\u4e2d\u8fdb\u884c\u3010\u540c\u6b65\u3011\u6216\u3010\u5ffd\u7565\u3011\u64cd\u4f5c\u3002

    "},{"location":"user_manual/plugin_use/api_test_plugin/","title":"Api test plugin","text":"

    MeterSphere \u9664\u652f\u6301\u901a\u7528\u7684HTTP/HTTPS\u3001TCP\u3001SQL\u3001DUBBO\u534f\u8bae\u5916\uff0c\u8fd8\u53ef\u4ee5\u901a\u8fc7\u63d2\u4ef6\u7684\u65b9\u5f0f\u652f\u6301\u5176\u5b83\u6269\u5c55\u534f\u8bae\uff0c\u76ee\u524d\u4f01\u4e1a\u7248\u672c\u5df2\u652f\u6301\u7684\u6269\u5c55\u534f\u8bae\u5305\u62ec\uff1aWebSocket/MQTT/AMQP\u3002WebSocket/MQTT/AMQP \u7b49\u534f\u8bae\u63d2\u4ef6\u5305\u662f\u4f01\u4e1a\u7248\u529f\u80fd\uff0c\u4ec5\u5411\u4f01\u4e1a\u5ba2\u6237\u5f00\u653e\u3002 \u4e0b\u9762\u4ee5 WebSocket \u534f\u8bae\u4e3a\u4f8b\uff0c\u4ecb\u7ecd\u63a5\u53e3\u6d4b\u8bd5\u6269\u5c55\u63d2\u4ef6\u7684\u5b89\u88c5\u4ee5\u53ca\u4f7f\u7528\u3002

    "},{"location":"user_manual/plugin_use/api_test_plugin/#1","title":"1 \u63d2\u4ef6\u5b89\u88c5","text":"

    \u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e\u3011-\u3010\u7cfb\u7edf\u3011-\u3010\u63d2\u4ef6\u7ba1\u7406\u3011\u754c\u9762\u4e0b\uff0c\u4e0a\u4f20 WebSocket \u63d2\u4ef6\u3002

    "},{"location":"user_manual/plugin_use/api_test_plugin/#2","title":"2 \u63d2\u4ef6\u4f7f\u7528","text":"

    \u5728\u3010\u63a5\u53e3\u6d4b\u8bd5\u3011-\u3010\u63a5\u53e3\u81ea\u52a8\u5316\u3011\u754c\u9762\u4e0b\uff0c\u65b0\u5efa\u573a\u666f\uff0c\u70b9\u51fb\u573a\u666f\u53f3\u4e0b\u89d2\u3010+\u3011\u53f7\uff0c\u5373\u53ef\u6dfb\u52a0 WebSocket \u76f8\u5173\u8bf7\u6c42\u3002

    "},{"location":"user_manual/plugin_use/chrome_plugin/","title":"Chrome plugin","text":"

    \u8be5\u63d2\u4ef6\u4e3a MeterSphere \u914d\u5957\u7684\u6d4f\u89c8\u5668\u5f55\u5236\u63d2\u4ef6\uff0c\u8be5\u63d2\u4ef6\u53ef\u5c06\u7528\u6237\u5728 chrome \u6d4f\u89c8\u5668\u64cd\u4f5c\u65f6\u7684\u6240\u6709 HTTP \u8bf7\u6c42\u8bb0\u5f55\u4e0b\u6765\u5e76\u751f\u6210 JMX \u6587\u4ef6\uff08JMeter \u811a\u672c\u6587\u4ef6\uff09\uff0c\u5bfc\u5165 MeterSphere \u540e\u8fdb\u884c\u63a5\u53e3\u6d4b\u8bd5\u6216\u6027\u80fd\u6d4b\u8bd5\u3002

    "},{"location":"user_manual/plugin_use/chrome_plugin/#1","title":"1 \u63d2\u4ef6\u5b89\u88c5","text":"

    \u5728 MeterSphere chrome-extensions \u9879\u76ee\u4e2d\u4e0b\u8f7d\u6700\u65b0\u7684\u53d1\u5e03\u7248\u672c\uff0c\u4e0b\u8f7d\u5b8c\u6210\u540e\u8fdb\u884c\u89e3\u538b\uff0c\u7136\u540e\u5728\u8c37\u6b4c\u6d4f\u89c8\u5668\u8f93\u5165 chrome://extensions/ \u8fdb\u5165\u6269\u5c55\u7a0b\u5e8f\u5b89\u88c5\u754c\u9762\uff0c \u9009\u62e9\u3010\u52a0\u8f7d\u5df2\u89e3\u538b\u7684\u6269\u5c55\u7a0b\u5e8f\u3011\uff0c\u9009\u62e9\u63d2\u4ef6\u89e3\u538b\u540e\u7684\u76ee\u5f55\u8fdb\u884c\u5b89\u88c5\u3002

    "},{"location":"user_manual/plugin_use/chrome_plugin/#2","title":"2 \u4f7f\u7528\u8bf4\u660e","text":"

    \u5728 Chrome \u6d4f\u89c8\u5668\u4e2d\u70b9\u51fb\u6269\u5c55\u7a0b\u5e8f\u6309\u94ae\uff0c\u5e76\u9009\u62e9MeterSphere \u5f55\u5236\u63d2\u4ef6\u56fe\u6807\uff0c\u70b9\u51fb\u5f00\u59cb\u5f55\u5236\u6309\u94ae\u3002

    \u8bbf\u95ee\u9700\u8981\u8fdb\u884c\u5f55\u5236\u7684\u7ad9\u70b9\uff0c\u8fdb\u884c\u6b63\u5e38\u4f7f\u7528\u64cd\u4f5c\uff0c\u6d4f\u89c8\u5668\u4e2d\u7684\u6240\u6709\u7f51\u7edc\u8bf7\u6c42\u5747\u4f1a\u88ab\u8bb0\u5f55\u4e0b\u6765\u3002\u5f53\u64cd\u4f5c\u5b8c\u6210\u540e\uff0c\u70b9\u51fb\u505c\u6b62\u6309\u94ae\u505c\u6b62\u5f55\u5236\u3002

    \u5f55\u5236\u7ed3\u675f\u540e\uff0c\u70b9\u51fb\u4fdd\u5b58\u6309\u94ae\u8fdb\u884c\u4fdd\u5b58\u3002

    \u63d2\u4ef6\u5f39\u51fa\u6240\u6709\u8bb0\u5f55\u5230\u8bf7\u6c42\u7684\u7ad9\u70b9\u5217\u8868\uff0c\u52fe\u9009\u9700\u8981\u4fdd\u7559\u7684\u7ad9\u70b9\u8bf7\u6c42\u70b9\u51fb\u4e0b\u8f7d\u6309\u94ae\uff0c\u4e0b\u8f7d JMX \u811a\u672c\u81f3\u672c\u5730\u3002

    \u5728 MeterSphere \u4e2d\u521b\u5efa\u6027\u80fd\u6d4b\u8bd5\u4efb\u52a1\uff0c \u4e0a\u4f20\u521a\u521a\u5f55\u5236\u7684 JMX \u811a\u672c\uff0c\u7136\u540e\u8bbe\u7f6e\u5e76\u53d1\u53c2\u6570\uff0c\u8fdb\u884c\u6027\u80fd\u6d4b\u8bd5\u3002

    "},{"location":"user_manual/plugin_use/idea_plugin/","title":"Idea plugin","text":"

    \u8be5\u63d2\u4ef6\u5e2e\u52a9\u5f00\u53d1\u4eba\u5458\u5728IntelliJ IDEA IDE \u4e2d\uff0c\u5c06\u7f16\u5199\u7684 HTTP \u63a5\u53e3\u6587\u6863\u4fe1\u606f\u5feb\u6377\u63a8\u9001\u5230 MeterSphere \u7cfb\u7edf\u4e2d\u3002

    "},{"location":"user_manual/plugin_use/idea_plugin/#1","title":"1 \u63d2\u4ef6\u5b89\u88c5","text":""},{"location":"user_manual/plugin_use/idea_plugin/#11","title":"1.1 \u5728\u7ebf\u5b89\u88c5","text":"

    \u5728 IDEA -> Settings -> plugins -> Marketplace \u641c\u7d22\u5e76\u9009\u62e9\u3010MeterSphere\u3011\uff0c\u70b9\u51fb install \u5373\u53ef\u8fdb\u884c\u5728\u7ebf\u5b89\u88c5\u3002

    "},{"location":"user_manual/plugin_use/idea_plugin/#12","title":"1.2 \u79bb\u7ebf\u5b89\u88c5","text":"

    \u5148\u5728 jetbrains plugin marketplace \u4e2d\u4e0b\u8f7d\u4e0e IDEA\u7248\u672c\u5339\u914d\u7684\u7248\u672c\uff0c \u7136\u540e\u5728 IDEA -> Settings -> plugins\uff0c\u70b9\u51fb\u3010Install Plugin from Disk\u3011\u5e76\u9009\u62e9\u5df2\u4e0b\u8f7d\u7684\u79bb\u7ebf\u5305\u8fdb\u884c\u5b89\u88c5\u3002

    "},{"location":"user_manual/plugin_use/idea_plugin/#2","title":"2 \u63d2\u4ef6\u4f7f\u7528","text":"

    IDEA -> Settings -> MeterSphere \u4e2d\u914d\u7f6e\u597d\u8bbf\u95ee\u5730\u5740\u4ee5\u53ca AK/SK \u7b49\u8be6\u7ec6\u4fe1\u606f\uff0c\u70b9\u51fb\u3010test\u3011\u6309\u94ae\u5373\u786e\u8ba4\u8fde\u63a5\u6210\u529f\u3002

    \u914d\u7f6e\u5bfc\u51fa\u662f\u5426\u8986\u76d6\u3001\u76ee\u5f55\u5c42\u7ea7\u7b49\u4fe1\u606f\u540e\uff0c\u70b9\u51fb\u3010Apply\u3011\u6309\u94ae\u3002

    \u5728\u8981\u540c\u6b65\u63a5\u53e3\u7684 Controller \u9875\u9762\u4e2d\u53f3\u952e\u9009\u62e9\u3010Export MeterSphere\u3011\u5373\u53ef\u5c06\u4ee3\u7801\u4e2d\u7684 HTTP \u63a5\u53e3\u63a8\u9001\u5230 MeterSphere \u7cfb\u7edf\u4e2d\u3002

    "},{"location":"user_manual/plugin_use/jenkins_plugin/","title":"Jenkins plugin","text":"

    \u8be5\u63d2\u4ef6\u4e3a MeterSphere \u914d\u5957DevOps \u6301\u7eed\u96c6\u6210\u5de5\u5177\u94fe\u4e2d\u4e0e Jenkins \u7684\u81ea\u52a8\u5316\u6267\u884c\u63d2\u4ef6\u3002

    "},{"location":"user_manual/plugin_use/jenkins_plugin/#1","title":"1 \u63d2\u4ef6\u5b89\u88c5","text":"

    \u6839\u636e MeterSphere \u7248\u672c\uff0c\u5728 MeterSphere Jenkins-plugin \u4e0b\u8f7d\u5bf9\u5e94\u7248\u672c\u7684 hpi \u5305\uff0c \u5e76\u5728 Jenkins \u7684\u63d2\u4ef6\u7ba1\u7406-\u9ad8\u7ea7\u4e2d\u7684Deploy Plugin\u6bb5\u4e2d\uff0c\u9009\u62e9\u4e0a\u4f20\u5df2\u4e0b\u8f7d\u597d\u7684 hpi \u63d2\u4ef6\u5305\u3002

    "},{"location":"user_manual/plugin_use/jenkins_plugin/#2","title":"2 \u63d2\u4ef6\u4f7f\u7528","text":"

    \u63d2\u4ef6\u5b89\u88c5\u540e\uff0c\u5728\u6307\u5b9a\u7684 Jenkins \u6784\u5efa\u4efb\u52a1\u7684\u6784\u5efa\u6b65\u9aa4\u4e2d\uff0c\u589e\u52a0\u5e76\u914d\u7f6e\u3010MeterSphere\u3011\u7c7b\u578b\u7684\u6784\u5efa\u6b65\u9aa4\u3002 \u914d\u7f6e MeterSphere \u8ba4\u8bc1\u4fe1\u606f\uff0c\u5e76\u6307\u5b9a\u9700\u8981\u89e6\u53d1\u6267\u884c\u7684\u63a5\u53e3\u6d4b\u8bd5\u3001\u6027\u80fd\u6d4b\u8bd5\u6216\u6d4b\u8bd5\u8ba1\u5212\uff0c\u914d\u7f6e\u5b8c\u6210\u540e\u5373\u53ef\u8fd0\u884c Jenkins Job\u3002

    v2\u7248\u672c\u5c06 Jenkins Job \u7684\u8fd0\u884c\u7ed3\u679c\u53d8\u66f4\u4e3a\u5f53\u524d\u8fd0\u884c\u7684\u6d4b\u8bd5\u8ba1\u5212\u6216\u7528\u4f8b\u7684\u5b9e\u9645\u8fd0\u884c\u7ed3\u679c\u72b6\u6001\uff0c\u5373\u5f53\u7528\u4f8b\u8fd0\u884c\u5931\u8d25\u65f6\uff0cJenkins Job \u7684\u72b6\u6001\u4e5f\u4e3a\u5931\u8d25\u3002

    "},{"location":"user_manual/plugin_use/selenium_ide_plugin/","title":"Selenium ide plugin","text":"

    \u8be5\u63d2\u4ef6\u4e3a Selenium \u539f\u751f\u63d2\u4ef6\uff0c\u7528\u4e8e\u5f55\u5236\u3001\u56de\u653e\u7528\u6237\u5728 web \u9875\u9762\u4e0a\u7684\u64cd\u4f5c\uff0c\u652f\u6301 Chrome\uff0cfirefox\u3001Edge\u7b49\u4e3b\u6d41\u6d4f\u89c8\u5668\u3002\u4ee5Chrome\u6d4f\u89c8\u5668\u4e3a\u4f8b\u8bf4\u660e\u63d2\u4ef6\u7684\u4e0b\u8f7d\u5b89\u88c5\u4ee5\u53ca\u4f7f\u7528\u3002

    "},{"location":"user_manual/plugin_use/selenium_ide_plugin/#1","title":"1 \u63d2\u4ef6\u5b89\u88c5","text":"

    \u5728 Chrome \u5e94\u7528\u5546\u5e97\u4e2d\u641c\u7d22 selenium \u5173\u952e\u5b57\uff0c \u9009\u62e9Selenium IDE\uff0c\u70b9\u51fb\u3010\u6dfb\u52a0\u81f3 Chrome\u3011\u5b8c\u6210\u63d2\u4ef6\u5b89\u88c5\u3002

    "},{"location":"user_manual/plugin_use/selenium_ide_plugin/#2","title":"2 \u63d2\u4ef6\u4f7f\u7528","text":"

    \u5728 Chrome \u6d4f\u89c8\u5668\u4e2d\u70b9\u51fb\u6269\u5c55\u7a0b\u5e8f\u6309\u94ae\uff0c\u5e76\u9009\u62e9 Selenium IDE\u63d2\u4ef6\u56fe\u6807\uff0c\u542f\u52a8\u63d2\u4ef6\u7a0b\u5e8f\u3002

    \u542f\u52a8\u3010Selenium IDE\u3011\u63d2\u4ef6

    \u521b\u5efa\u5f55\u5236\u7684\u9879\u76ee\uff0c\u8f93\u5165\u9879\u76ee\u540d\u79f0 \u70b9\u51fb\u3010\u5f55\u5236\u3011\u6309\u94ae\uff0c\u5728\u8f93\u5165\u5f55\u5236\u7f51\u7ad9\u5730\u5740\u4e4b\u540e\u5f00\u59cb\u5f55\u5236\u3002

    \u5f55\u5236\u5b8c\u6210\u540e\uff0c\u70b9\u51fb\u3010\u505c\u6b62\u3011\u6309\u94ae\u7ed3\u675f\u5f55\u5236\uff0c\u5e76\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u6309\u94ae\uff0c\u5c06\u5f55\u5236\u7ed3\u679c\u4fdd\u5b58\u540e\u7f6e\u4e3a .side \u6587\u4ef6

    \u5c06\u4fdd\u5b58\u7684 .side \u6587\u4ef6\u5bfc\u5165\u5230 MeterSphere UI \u6d4b\u8bd5\u4e2d\u5373\u8fdb\u884c Web UI\u7684\u81ea\u52a8\u5316\u6d4b\u8bd5\u3002

    "},{"location":"user_manual/plugin_use/service_integration_plugin/","title":"Service integration plugin","text":"

    MeterSphere v2.4 \u7248\u672c\u5b9e\u73b0\u4e86\u670d\u52a1\u96c6\u6210\u7684\u63d2\u4ef6\u5316\uff0c\u76ee\u524d\u5df2\u7ecf\u652f\u6301\u7985\u9053\u3001Jira\u3001TAPD\u7b49\u5e73\u53f0\u7684\u5bf9\u63a5\uff0c\u4e5f\u53ef\u6839\u636e\u81ea\u8eab\u9700\u6c42\u5f00\u53d1\u5bf9\u5e94\u63d2\u4ef6\u3002\u7cfb\u7edf\u8bbe\u7f6e-\u63d2\u4ef6\u7ba1\u7406\u4e0a\u4f20\u63d2\u4ef6 \u4f7f\u7528\u65b9\u5f0f\u8ddf\u539f\u6765\u4e00\u81f4\uff0c\u5177\u4f53\u53c2\u8003 metersphere-platform-plugin \u3002\u4ee5 Jira \u5e73\u53f0\u4e3a\u4f8b\uff0c\u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e\u3011-\u3010\u7cfb\u7edf\u3011-\u3010\u63d2\u4ef6\u7ba1\u7406\u3011\u754c\u9762\u4e0b\uff0c\u4e0a\u4f20 Jira \u63d2\u4ef6\u5305\u3002

    \u3010\u7cfb\u7edf\u8bbe\u7f6e\u3011-\u3010\u7cfb\u7edf\u3011-\u3010\u670d\u52a1\u96c6\u6210\u3011\u5904\u53ef\u770b\u5230 Jira \u5e73\u53f0\uff0c\u9009\u4e2d Jira \u5e73\u53f0\u53ef\u51fa\u73b0\u76f8\u5173\u8d26\u53f7\u4fe1\u606f\u3002\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u586b\u5199Jira \u5e73\u53f0\u76f8\u5173\u8d26\u53f7\u4fe1\u606f\u540e\u8fdb\u884c\u4fdd\u5b58\uff0c\u5e76\u901a\u8fc7\u3010\u6d4b\u8bd5\u8fde\u63a5\u3011\u8fdb\u884c\u9a8c\u8bc1\u3002

    \u9a8c\u8bc1\u901a\u8fc7\u540e\uff0c\u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e\u3011-\u3010\u7cfb\u7edf\u3011-\u3010\u9879\u76ee\u7ba1\u7406\u3011\u5904\uff0c\u8fdb\u884c\u9879\u76ee\u7f16\u8f91\u65f6\uff0c\u53ef\u770b\u5230\u3010\u96c6\u6210\u7b2c\u4e09\u65b9\u5e73\u53f0\u3011\u7684\u4e0b\u62c9\u6846\u6709 Jira \u5e73\u53f0\u9009\u9879\u4ee5\u53ca Jira \u5e73\u53f0\u7684\u76f8\u5173\u4fe1\u606f\u3002

    "},{"location":"user_manual/project_management/application_management/","title":"\u5e94\u7528\u7ba1\u7406","text":""},{"location":"user_manual/project_management/application_management/#1","title":"1 \u5e94\u7528\u7ba1\u7406\u6743\u9650","text":"

    \u5982\u679c\u3010\u9879\u76ee\u8bbe\u7f6e\u3011-\u3010\u66f4\u591a\u9009\u9879\u3011\u91cc\u770b\u4e0d\u5230\u3010\u5e94\u7528\u7ba1\u7406\u3011\u83dc\u5355\uff0c\u8868\u793a\u6b64\u7528\u6237\u6ca1\u6709\u6b64\u6743\u9650\uff0c\u9700\u8981\u5230\u3010\u7cfb\u7edf\u8bbe\u7f6e\u3011-\u3010\u7cfb\u7edf\u3011-\u3010\u7528\u6237\u7ec4\u4e0e\u6743\u9650\u3011\u4fee\u6539\u3010\u9879\u76ee\u7ba1\u7406\u5458\u3011\u7684\u6743\u9650\u3002

    \u9009\u4e2d\u5e94\u7528\u8bbe\u7f6e\u6743\u9650\u5373\u53ef\u3002

    "},{"location":"user_manual/project_management/application_management/#2","title":"2 \u5e94\u7528\u7ba1\u7406\u8bbe\u7f6e","text":"

    \u70b9\u51fb\u3010\u9879\u76ee\u8bbe\u7f6e\u3011-\u3010\u66f4\u591a\u9009\u9879\u3011-\u3010\u5e94\u7528\u7ba1\u7406\u3011\u53ef\u4ee5\u5bf9 MeterSphere \u7684\u3010\u5de5\u4f5c\u53f0\u3011\u3001\u3010\u6d4b\u8bd5\u8ddf\u8e2a\u3011\u3001\u3010\u63a5\u53e3\u6d4b\u8bd5\u3011\u3001\u3010UI\u6d4b\u8bd5\u3011\u3001\u3010\u6027\u80fd\u6d4b\u8bd5\u3011\u7b49\u5e94\u7528\u8fdb\u884c\u9ad8\u7ea7\u8bbe\u7f6e\u3002

    "},{"location":"user_manual/project_management/application_management/#21","title":"2.1 \u5de5\u4f5c\u53f0","text":"

    \u7ef4\u62a4\u3010\u5de5\u4f5c\u53f0\u3011\u4e0b\u7684\u4e00\u4e9b\u9ad8\u7ea7\u5e94\u7528\u914d\u7f6e\u7ba1\u7406\uff0c\u5305\u542b\u3010\u6211\u7684\u5f85\u529e-\u5f85\u66f4\u65b0\u5217\u8868\u3011\u914d\u7f6e\u3002

    "},{"location":"user_manual/project_management/application_management/#22","title":"2.2 \u6d4b\u8bd5\u8ddf\u8e2a\u8bbe\u7f6e","text":"

    \u7ef4\u62a4\u3010\u6d4b\u8bd5\u8ddf\u8e2a\u3011\u4e0b\u7684\u4e00\u4e9b\u9ad8\u7ea7\u5e94\u7528\u914d\u7f6e\u7ba1\u7406\uff0c\u5305\u542b \u3010\u542f\u52a8\u516c\u5171\u7528\u4f8b\u5e93\u3011\u3001\u3010\u6d4b\u8bd5\u7528\u4f8b\u81ea\u5b9a\u4e49ID\u3011\u3001\u3010\u5b9a\u65f6\u6e05\u7406\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a\u3011\u3001\u3010\u62a5\u544a\u5206\u4eab\u94fe\u63a5\u3011\u914d\u7f6e\u3002

    • \u542f\u52a8\u516c\u5171\u7528\u4f8b\u5e93

    • \u6d4b\u8bd5\u7528\u4f8b\u81ea\u5b9a\u4e49ID \u5f00\u542f\u540e\uff0c\u5728\u521b\u5efa\u3010\u6d4b\u8bd5\u7528\u4f8b\u3011\u9875\u9762\uff0c\u53ef\u4ee5\u81ea\u5b9a\u4e49\u8bbe\u7f6e\u7528\u4f8b ID\u3002

    • \u5b9a\u65f6\u6e05\u7406\u6d4b\u8bd5\u8ba1\u5212\u62a5\u544a

    • \u62a5\u544a\u5206\u4eab\u94fe\u63a5

    "},{"location":"user_manual/project_management/application_management/#23","title":"2.3 \u63a5\u53e3\u6d4b\u8bd5\u8bbe\u7f6e","text":"

    \u7ef4\u62a4\u3010\u63a5\u53e3\u6d4b\u8bd5\u3011\u4e0b\u7684\u4e00\u4e9b\u9ad8\u7ea7\u5e94\u7528\u914d\u7f6e\u7ba1\u7406\uff0c\u5305\u542b\u3010\u63a5\u53e3\u5b9a\u4e49URL\u53ef\u91cd\u590d\u3011\u3001\u3010\u573a\u666f\u81ea\u5b9a\u4e49ID\u3011\u3001\u3010TCP Mock Port\u3011\u4ee5\u53ca\u3010\u5b9a\u65f6\u6e05\u7406\u63a5\u53e3\u6d4b\u8bd5\u62a5\u544a\u3011\u3001\u3010\u62a5\u544a\u5206\u4eab\u94fe\u63a5\u3011\u4ee5\u53ca\u3010\u63a5\u53e3\u5b9a\u4e49\u5feb\u6377\u6dfb\u52a0\u6309\u94ae\u3011\u7b49\u914d\u7f6e\u3002

    • \u63a5\u53e3\u5b9a\u4e49URL\u53ef\u91cd\u590d \u542f\u7528\u540e\u63a5\u53e3\u5b9a\u4e49\u91cd\u590d\u6027\u6821\u9a8c\u5c06\u4e0d\u6821\u9a8cURL\uff0c\u540c\u4e00\u4e2a\u9879\u76ee\u4e0b\u5141\u8bb8\u63a5\u53e3\u8def\u5f84\u76f8\u540c\u7684\u3010\u63a5\u53e3\u5b9a\u4e49\u3011\u3002

    • \u573a\u666f\u81ea\u5b9a\u4e49ID \u542f\u7528\u540e\u521b\u5efa\u573a\u666f\u652f\u6301\u81ea\u5b9a\u4e49\u8bbe\u7f6e\u573a\u666fID\u3002

    • TCP Mock Port \u8bbe\u7f6e\u63a5\u53e3\u534f\u8bae\u4e3aTCP\u7684\u63a5\u53e3\uff0cMock\u670d\u52a1\u7684\u53ef\u7528\u6027\u3002

    \u5982\u679c TCP \u534f\u8bae\u7684\u63a5\u53e3\u9700\u8981\u4f7f\u7528 Mock \u670d\u52a1\uff0c\u5219\u9700\u8981\u5f00\u542f\u6b64\u670d\u52a1\uff0c\u5f00\u542f\u540e\u5728\u63a5\u53e3\u6d4b\u8bd5\u4e2d\uff0cMock \u670d\u52a1\u624d\u53ef\u7528\u3002

    • \u5b9a\u65f6\u6e05\u7406\u63a5\u53e3\u6d4b\u8bd5\u62a5\u544a

    • \u62a5\u544a\u5206\u4eab\u94fe\u63a5

    • \u63a5\u53e3\u5b9a\u4e49\u5feb\u6377\u6dfb\u52a0\u6309\u94ae

    "},{"location":"user_manual/project_management/application_management/#24-ui","title":"2.4 UI\u6d4b\u8bd5\u8bbe\u7f6e","text":""},{"location":"user_manual/project_management/application_management/#25","title":"2.5 \u6027\u80fd\u6d4b\u8bd5\u8bbe\u7f6e","text":"

    \u7ef4\u62a4\u3010\u6027\u80fd\u6d4b\u8bd5\u3011\u4e0b\u7684\u4e00\u4e9b\u9ad8\u7ea7\u5e94\u7528\u914d\u7f6e\u7ba1\u7406\uff0c\u5305\u542b\u3010\u5b9a\u65f6\u6e05\u7406\u63a5\u53e3\u6d4b\u8bd5\u62a5\u544a\u3011\u3001\u3010\u62a5\u544a\u5206\u4eab\u94fe\u63a5\u3011\u914d\u7f6e\u3002

    "},{"location":"user_manual/project_management/customcode_snippets/","title":"\u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5","text":"

    \u5728\u63a5\u53e3\u81ea\u52a8\u5316\u4e2d\u7ecf\u5e38\u9700\u8981\u6dfb\u52a0\u524d\u540e\u7f6e\u811a\u672c\u53ca\u81ea\u5b9a\u4e49\u811a\u672c\uff0c\u901a\u8fc7\u65b0\u589e\u7684\u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5\u529f\u80fd\uff0c\u7528\u6237\u53ef\u4ee5\u5c06\u5e38\u7528\u7684\u811a\u672c\u4fdd\u5b58\u4e0b\u6765\uff0c\u5728\u9700\u8981\u4f7f\u7528\u7684\u5730\u65b9\u76f4\u63a5\u6dfb\u52a0\u5373\u53ef\u3002

    "},{"location":"user_manual/project_management/customcode_snippets/#1","title":"1 \u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5\u7ef4\u62a4","text":"

    \u9009\u62e9\u3010\u9879\u76ee\u8bbe\u7f6e\u3011-\u3010\u66f4\u591a\u9009\u9879\u3011-\u3010\u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5\u3011\u3002

    \u70b9\u51fb\u3010\u521b\u5efa\u4ee3\u7801\u7247\u6bb5\u3011\uff0c\u53ef\u4ee5\u628a\u5e38\u7528\u7684\u811a\u672c\u4ee3\u7801\u4fdd\u5b58\u5728\u8fd9\u91cc\u3002

    \u70b9\u51fb\u3010\u6d4b\u8bd5\u3011\u53ef\u4ee5\u6821\u9a8c\u6b64\u4ee3\u7801\u6267\u884c\u7684\u60c5\u51b5\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u521b\u5efa\u7684\u4ee3\u7801\u7247\u6bb5\u4fdd\u5b58\u5728\u4ee3\u7801\u5217\u8868\u4e2d\u3002

    \u540c\u65f6\u7cfb\u7edf\u63d0\u4f9b\u76f8\u5173\u7684\u7ba1\u7406\u529f\u80fd\uff1a\u3010\u7f16\u8f91\u3011\u3001\u3010\u590d\u5236\u3011\u548c\u3010\u5220\u9664\u3011\u7b49\uff0c\u5bf9\u4ee3\u7801\u7247\u6bb5\u8fdb\u884c\u7ba1\u7406\u3002

    "},{"location":"user_manual/project_management/customcode_snippets/#2","title":"2 \u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5\u4f7f\u7528","text":"

    \u4ee3\u7801\u7247\u6bb5\u7ef4\u62a4\u597d\u540e\uff0c\u5728\u3010\u63a5\u53e3\u3001\u573a\u666f\u6d4b\u8bd5\u7528\u4f8b\u3011\u6216\u8005\u3010\u73af\u5883\u3011\u7684\u3010\u524d\u7f6e\u811a\u672c\u3001\u540e\u7f6e\u811a\u672c\u3011\u4e2d\uff0c\u9009\u62e9\u3010\u63d2\u5165\u81ea\u5b9a\u4e49\u4ee3\u7801\u7247\u6bb5\u3011\u53ef\u4ee5\u76f4\u63a5\u5f15\u7528\u6b64\u4ee3\u7801\uff0c\u4ee5\u3010\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u3011\u4e3a\u4f8b\u3002

    "},{"location":"user_manual/project_management/false_library/","title":"\u8bef\u62a5\u5e93","text":"

    \u5f53\u6267\u884c\u53cd\u5411\u7528\u4f8b\u540e\u54cd\u5e94\u72b6\u6001\u7801\u975e 200 \u65f6\uff0cMS \u4f1a\u5c06\u5176\u5f52\u4e3a\u9519\u8bef\u7ed3\u679c\uff0c\u4f46\u5bf9\u7528\u6237\u4e1a\u52a1\u800c\u8a00\u662f\u6b63\u786e\u7684\uff0c\u6b64\u65f6\u53ef\u4ee5\u4f7f\u7528\u8bef\u62a5\u5e93\u7684\u529f\u80fd\u8fdb\u884c\u907f\u514d

    "},{"location":"user_manual/project_management/false_library/#1-x-pack","title":"1 \u8bef\u62a5\u5e93 (X-Pack)","text":"

    \u70b9\u51fb\u3010\u9879\u76ee\u8bbe\u7f6e\u3011-\u3010\u66f4\u591a\u9009\u9879\u3011-\u3010\u8bef\u62a5\u5e93\u3011\u9875\u9762\uff0c\u70b9\u51fb\u3010\u521b\u5efa\u8bef\u62a5\u3011

    \u5728\u3010\u521b\u5efa\u8bef\u62a5\u3011\u9875\u9762\uff0c\u8f93\u5165\u76f8\u5173\u914d\u7f6e\u540e\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u5373\u53ef

    \u3010\u521b\u5efa\u8bef\u62a5\u3011\u5b8c\u6210\u540e\uff0c\u53ef\u3010\u5f00\u542f/\u5173\u95ed\u3011\u8be5\u8bef\u62a5

    \u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u53ef\u7f16\u8f91\u8bef\u62a5\u5185\u5bb9\uff0c\u4e4b\u540e\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u5373\u53ef

    \u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u70b9\u51fb\u5220\u9664\u63d0\u793a\u4e2d\u7684\u3010\u786e\u5b9a\u3011\u6309\u94ae\uff0c\u8be5\u8bef\u62a5\u5c31\u88ab\u5220\u9664\u4e86

    "},{"location":"user_manual/project_management/file_management/","title":"\u6587\u4ef6\u7ba1\u7406","text":"

    \u53ef\u4e0a\u4f20\u6d4b\u8bd5\u6240\u9700\u7684 JAR \u5305\u3001\u811a\u672c\u3001\u76f8\u5173\u6587\u4ef6\uff0c\u5728\u9879\u76ee\u7ea7\u522b\u7edf\u4e00\u7ba1\u7406\u3002

    "},{"location":"user_manual/project_management/file_management/#1","title":"1 \u6a21\u5757\u7ba1\u7406","text":"

    \u65b0\u5efa\u6a21\u5757\u65f6\uff0c\u9009\u62e9\u3010\u6a21\u5757\u3011\uff0c\u53ef\u5bf9\u6a21\u5757\u76ee\u5f55\u8fdb\u884c\u91cd\u547d\u540d\u3001\u65b0\u589e\u3001\u5220\u9664\u7b49\u64cd\u4f5c

    "},{"location":"user_manual/project_management/file_management/#2","title":"2.\u4e0a\u4f20\u6587\u4ef6","text":"

    \u53ef\u4e0a\u4f20 JAR\u3001CSV\u3001TXT\u3001JMX\u3001XLSX \u7b49\u591a\u79cd\u683c\u5f0f\u7684\u6587\u4ef6\uff0c\u4e0a\u4f20\u7684 JAR \u53ef\u5728\u63a5\u53e3\u524d\u540e\u7f6e\u811a\u672c\u4e2d\u8fdb\u884c\u4f7f\u7528

    \u7528\u4e8e\u63a5\u53e3\u6d4b\u8bd5\u7684\u8981\u5f00\u542f\u52a0\u8f7d Jar \u5305\u7684 Switch \u5f00\u5173\uff0c\u5426\u5219\u5728\u63a5\u53e3\u524d\u540e\u7f6e\u811a\u672c\u4e2d\u5f15\u7528\u8be5 Jar \u5305\u4e0d\u751f\u6548

    \u4e0a\u4f20\u7684\u6587\u4ef6\u53ef\u5728\u6027\u80fd\u6d4b\u8bd5\u9875\u9762\u8fdb\u884c\u9009\u62e9

    "},{"location":"user_manual/project_management/file_management/#3","title":"3 \u67e5\u770b\u6587\u4ef6","text":"

    \u70b9\u51fb\u67e5\u770b\u6309\u94ae\uff0c\u53ef\u67e5\u770b\u8be5\u6587\u4ef6\u7684\u8be6\u7ec6\u4fe1\u606f\uff0c\u4e5f\u53ef\u5728\u8be5\u9875\u9762\u589e\u52a0\u6587\u4ef6\u7684\u63cf\u8ff0

    \u53ef\u70b9\u51fb\u4e0a\u4e00\u4e2a/\u4e0b\u4e00\u4e2a\u6309\u94ae\uff0c\u5207\u6362\u5f53\u524d\u67e5\u770b\u7684\u6587\u4ef6

    \u53ef\u5bf9\u8be5\u6587\u4ef6\u51fa\u73b0\u4e0a\u4f20\uff0c\u4e0b\u8f7d\uff0c\u5220\u9664\u7b49\u64cd\u4f5c

    "},{"location":"user_manual/project_management/file_management/#4","title":"4 \u6587\u4ef6\u4e0b\u8f7d","text":"

    \u53ef\u70b9\u51fb\u5217\u8868\u540e\u9762\u4e0b\u8f7d\u6309\u94ae\u8fdb\u884c\u6587\u4ef6\u4e0b\u8f7d\uff0c\u4e5f\u53ef\u5728\u6587\u4ef6\u67e5\u770b\u9875\u9762\u8fdb\u884c\u6587\u4ef6\u4e0b\u8f7d

    "},{"location":"user_manual/project_management/file_management/#5","title":"5 \u6587\u4ef6\u5220\u9664","text":"

    \u53ef\u70b9\u51fb\u5217\u8868\u540e\u9762\u5220\u9664\u6309\u94ae\u8fdb\u884c\u6587\u4ef6\u5220\u9664\uff0c\u4e5f\u53ef\u5728\u6587\u4ef6\u67e5\u770b\u9875\u9762\u8fdb\u884c\u6587\u4ef6\u5220\u9664

    "},{"location":"user_manual/project_management/file_management/#6","title":"6 \u7b2c\u4e09\u65b9\u4ed3\u5e93","text":"

    \u65b0\u5efa\u6a21\u5757\u65f6\uff0c\u9009\u62e9\u3010\u5b58\u50a8\u5e93\u3011\uff0c\u652f\u6301\u5bf9\u63a5\u7b2c\u4e09\u65b9\u4ed3\u5e93\uff08\u5982 GitHub\u3001GitLab \u548c Gitee\uff09\uff0c\u586b\u5199\u76f8\u5e94\u4fe1\u606f\u3002

    \u70b9\u51fb\u3010\u4e0a\u4f20\u6587\u4ef6\u3011\u6309\u94ae\uff0c\u586b\u5199\u76f8\u5173\u4fe1\u606f\uff0c\u70b9\u51fb\u786e\u5b9a\u6309\u94ae\u5373\u53ef

    \u70b9\u51fb\u3010\u67e5\u770b\u3011\u6309\u94ae\uff0c\u53ef\u67e5\u770b\u6587\u4ef6\u8be6\u7ec6\u4fe1\u606f

    \u5207\u6362\u5230\u3010\u5173\u8054\u7528\u4f8b\u3011\u548c\u3010\u7248\u672c\u5386\u53f2\u3011\u9875\u9762\uff0c\u53ef\u67e5\u770b\u5177\u4f53\u8be6\u7ec6\u4fe1\u606f

    "},{"location":"user_manual/project_management/notice_management/","title":"\u6d88\u606f\u8bbe\u7f6e","text":""},{"location":"user_manual/project_management/notice_management/#1","title":"1 \u6d88\u606f\u8bbe\u7f6e","text":"

    \u9488\u5bf9\u7cfb\u7edf\u7684\u6bcf\u4e2a\u529f\u80fd\u90fd\u652f\u6301\u7528\u6237\u6839\u636e\u9700\u8981\u8fdb\u884c\u3010\u9879\u76ee\u7ea7\u522b\u3011\u7684\u4efb\u52a1\u901a\u77e5\u8bbe\u7f6e\u3002\u70b9\u51fb\u3010\u9879\u76ee\u7ba1\u7406\u3011-\u3010\u66f4\u591a\u9009\u9879\u3011-\u3010\u6d88\u606f\u8bbe\u7f6e\u3011\u5373\u53ef\u8fdb\u5165\u6d88\u606f\u8bbe\u7f6e\u9875\u9762\uff0c\u5e76\u4e14\u7cfb\u7edf\u652f\u6301\u63a5\u6536\u4eba\u5458\u6309\u89d2\u8272\u6216\u6307\u5b9a\u5177\u4f53\u4eba\u5458\uff1b\u540c\u65f6\u652f\u6301\u7ad9\u5185\u901a\u77e5\u548c\u7ad9\u5916\u901a\u77e5\u591a\u79cd\u901a\u77e5\u65b9\u5f0f\u7b49\u529f\u80fd\u3002

    • \u6d4b\u8bd5\u8ddf\u8e2a\u4efb\u52a1\u901a\u77e5 \u6d4b\u8bd5\u8ddf\u8e2a\u7684\u6bcf\u4e2a\u9875\u9762\uff1a\u9996\u9875\u3001\u6d4b\u8bd5\u7528\u4f8b\u3001\u7528\u4f8b\u8bc4\u5ba1\u3001\u6d4b\u8bd5\u8ba1\u5212\u3001\u6d4b\u8bd5\u62a5\u544a\u3001\u7f3a\u9677\u7ba1\u7406\u7b49\u9875\u9762\u90fd\u652f\u6301\u81ea\u5b9a\u4e49\u4efb\u52a1\u901a\u77e5\u3002

    \u540c\u65f6\u6d4b\u8bd5\u8ddf\u8e2a\u9875\u9762\u4e0a\u7684\u6bcf\u4e2a\u5173\u952e\u64cd\u4f5c\uff0c\u90fd\u53ef\u4ee5\u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u4efb\u52a1\u901a\u77e5\u3002\u6bd4\u5982\u6d4b\u8bd5\u8ba1\u5212\u7684\u65b0\u5efa\u3001\u66f4\u65b0\u3001\u5220\u9664\u3001\u6267\u884c\u5b8c\u6210\u7b49\uff0c\u90fd\u53ef\u4ee5\u8bbe\u7f6e\u76f8\u5e94\u7684\u4efb\u52a1\u901a\u77e5\u3002

    • \u63a5\u53e3\u6d4b\u8bd5\u4efb\u52a1\u901a\u77e5 \u63a5\u53e3\u6d4b\u8bd5\u7684\u6bcf\u4e2a\u9875\u9762\uff1a\u9996\u9875\u3001\u63a5\u53e3\u5b9a\u4e49\u3001\u63a5\u53e3\u81ea\u52a8\u5316\u3001\u6d4b\u8bd5\u62a5\u544a\u7b49\u9875\u9762\u90fd\u652f\u6301\u81ea\u5b9a\u4e49\u4efb\u52a1\u901a\u77e5\u3002

    \u540c\u65f6\u63a5\u53e3\u6d4b\u8bd5\u9875\u9762\u4e0a\u7684\u6bcf\u4e2a\u5173\u952e\u64cd\u4f5c\uff0c\u90fd\u53ef\u4ee5\u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u4efb\u52a1\u901a\u77e5\u3002\u6bd4\u5982\u63a5\u53e3\u5b9a\u4e49\u4e2d API \u76f8\u5173\u7684\u589e\u5220\u6539\u3001CASE \u76f8\u5173\u7684\u589e\u5220\u6539\u7b49\u64cd\u4f5c\uff0c\u90fd\u53ef\u4ee5\u8bbe\u7f6e\u76f8\u5e94\u7684\u4efb\u52a1\u901a\u77e5\u3002

    • \u6027\u80fd\u6d4b\u8bd5\u4efb\u52a1\u901a\u77e5 \u6027\u80fd\u6d4b\u8bd5\u7684\u6bcf\u4e2a\u9875\u9762\uff1a\u6d4b\u8bd5\u3001\u6d4b\u8bd5\u62a5\u544a\u7b49\u9875\u9762\u90fd\u652f\u6301\u81ea\u5b9a\u4e49\u4efb\u52a1\u901a\u77e5\u3002

    \u540c\u65f6\u6027\u80fd\u6d4b\u8bd5\u9875\u9762\u4e0a\u7684\u6bcf\u4e2a\u5173\u952e\u64cd\u4f5c\uff0c\u90fd\u53ef\u4ee5\u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u4efb\u52a1\u901a\u77e5\u3002\u6bd4\u5982\u6d4b\u8bd5\u7684\u65b0\u5efa\u3001\u66f4\u65b0\u3001\u5220\u9664\u3001\u6267\u884c\u5b8c\u6210\u7b49\u64cd\u4f5c\uff0c\u90fd\u53ef\u4ee5\u8bbe\u7f6e\u76f8\u5e94\u7684\u4efb\u52a1\u901a\u77e5\u3002

    • Jenkins\u4efb\u52a1\u901a\u77e5 \u81ea\u52a8\u5316\u901a\u8fc7 Jenkins \u6301\u7eed\u90e8\u7f72\u6765\u542f\u52a8 MeterSphere \u81ea\u52a8\u5316\u811a\u672c\u65f6\uff0c\u53ef\u4ee5\u5728\u8fd9\u91cc\u8bbe\u7f6e\u6b64\u7c7b\u578b\u7684\u4efb\u52a1\u901a\u77e5\u3002

    Jenkins \u4efb\u52a1\u901a\u77e5\u81ea\u52a8\u5316\u901a\u8fc7 Jenkins \u6301\u7eed\u90e8\u7f72\u6765\u542f\u52a8 MeterSphere \u81ea\u52a8\u5316\u811a\u672c\u65f6\uff0c\u53ef\u4ee5\u5728\u8fd9\u91cc\u8bbe\u7f6e\u6b64\u7c7b\u578b\u7684\u4efb\u52a1\u901a\u77e5\u3002

    "},{"location":"user_manual/project_management/notice_management/#2-x-pack","title":"2 \u81ea\u5b9a\u4e49\u6d88\u606f\u6a21\u677f (X-Pack)","text":"

    \u70b9\u51fb\u3010\u6a21\u677f\u3011\u6309\u94ae\uff0c\u6765\u5230\u81ea\u5b9a\u4e49\u6a21\u677f\u9875\u9762\uff0c\u53ef\u4ee5\u70b9\u51fb\u3010\u6a21\u677f\u3011\u540e\u7684\u3010i\u3011\uff0c\u4f1a\u6709\u4e00\u4e9b\u53d8\u91cf\u8bf4\u660e\u53ca\u5176\u5f15\u7528\u65b9\u5f0f\uff0c\u53ef\u4ee5\u7528\u4e8e\u81ea\u5b9a\u4e49\u5185\u5bb9\u4e2d\u3002

    "},{"location":"user_manual/project_management/operation_log/","title":"\u64cd\u4f5c\u65e5\u5fd7","text":"

    \u663e\u793a\u767b\u5f55\u7528\u6237\u5f53\u524d\u6240\u5904\u7684\u3010\u9879\u76ee\u3011\u7684\u6d4b\u8bd5\u8d44\u6e90\u65e5\u5fd7\u4fe1\u606f\uff0c\u5e76\u4e14\u53ef\u4ee5\u4f7f\u7528\u9ad8\u7ea7\u67e5\u8be2\u6765\u5feb\u901f\u67e5\u627e\u76f8\u5173\u65e5\u5fd7\u7cfb\u7edf\u3002

    "},{"location":"user_manual/project_management/operation_log/#1","title":"1 \u64cd\u4f5c\u65e5\u5fd7","text":"

    \u8be6\u7ec6\u529f\u80fd\u64cd\u4f5c\u53ca\u8bf4\u660e\u53c2\u8003 \u7cfb\u7edf->\u5de5\u4f5c\u7a7a\u95f4->\u64cd\u4f5c\u65e5\u5fd7\u3002

    "},{"location":"user_manual/project_management/project_environment/","title":"\u9879\u76ee\u73af\u5883","text":"

    \u663e\u793a\u5f53\u524d\u9879\u76ee\u7684\u6240\u6709\u73af\u5883\u4fe1\u606f\uff0c\u540c\u65f6\u53ef\u4ee5\u7ef4\u62a4\u9879\u76ee\u73af\u5883\u4fe1\u606f\u3001\u5bfc\u5165\u548c\u5bfc\u51fa\u73af\u5883\u4fe1\u606f\u3002

    "},{"location":"user_manual/project_management/project_environment/#1","title":"1 \u9879\u76ee\u73af\u5883","text":"

    \u3010\u521b\u5efa\u73af\u5883\u3011\u3001\u3010\u5bfc\u5165\u3011\u3001\u3010\u5bfc\u51fa\u3011\u3001\u3010\u7f16\u8f91\u3011\u3001\u3010\u590d\u5236\u3011\u3001\u3010\u5220\u9664\u3011\u7b49\u8be6\u7ec6\u529f\u80fd\u64cd\u4f5c\u53ca\u8bf4\u660e\u53c2\u8003 \u7cfb\u7edf\u8bbe\u7f6e->\u5de5\u4f5c\u7a7a\u95f4->\u73af\u5883\u7ba1\u7406\u3002

    "},{"location":"user_manual/project_management/project_info/","title":"\u9879\u76ee\u4fe1\u606f","text":"

    \u663e\u793a\u5f53\u524d\u9879\u76ee\u7684\u57fa\u672c\u4fe1\u606f\u548c\u9879\u76ee\u57fa\u672c\u64cd\u4f5c\u529f\u80fd\u3002

    "},{"location":"user_manual/project_management/project_info/#1","title":"1 \u9879\u76ee\u57fa\u7840\u914d\u7f6e","text":"

    \u9ed8\u8ba4\u5728\u3010\u9879\u76ee\u4fe1\u606f\u3011\u9875\u9762\uff0c\u8be5\u9875\u9762\u5206\u4e3a\u5de6\u53f3\u4e24\u90e8\u5206\uff0c\u5de6\u8fb9\u662f\u9879\u76ee\u57fa\u672c\u4fe1\u606f\uff1b\u53f3\u8fb9\u662f\u9879\u76ee\u57fa\u672c\u64cd\u4f5c\u529f\u80fd\uff0c\u6b64\u529f\u80fd\u5728\u9875\u9762\u9876\u90e8\u4e5f\u6709\u663e\u793a\u3002

    "},{"location":"user_manual/project_management/project_user/","title":"\u9879\u76ee\u6210\u5458","text":"

    \u4e3a\u9879\u76ee\u6307\u5b9a\u9879\u76ee\u6210\u5458\uff0c\u5373\u54ea\u4e9b\u6210\u5458\u6709\u9879\u76ee\u89d2\u8272\uff0c\u540c\u65f6\u53ef\u5bf9\u5f53\u524d\u9879\u76ee\u6210\u5458\u8fdb\u884c\u6dfb\u52a0\u3001\u4fee\u6539\u53ca\u5220\u9664\u7684\u64cd\u4f5c\u3002

    "},{"location":"user_manual/project_management/project_user/#1","title":"1 \u9879\u76ee\u6210\u5458","text":"

    \u70b9\u51fb\u3010\u9879\u76ee\u6210\u5458\u3011\u83dc\u5355\uff0c\u5373\u53ef\u67e5\u770b\u5f53\u524d\u6709\u9879\u76ee\u89d2\u8272\u7684\u6210\u5458\u3002

    \u70b9\u51fb\u9875\u9762\u5de6\u4e0a\u89d2\u3010\u6dfb\u52a0\u6210\u5458\u3011\uff0c\u53ef\u6839\u636e\u7528\u6237 ID \u548c\u7528\u6237\u90ae\u7bb1\u641c\u7d22\u9700\u8981\u6dfb\u52a0\u7684\u7528\u6237\uff0c\u53ef\u9009\u62e9\u7528\u6237\u7ec4\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u6309\u94ae\u5b8c\u6210\u9879\u76ee\u6210\u5458\u6dfb\u52a0\u3002

    \u6dfb\u52a0\u5b8c\u6210\u540e\u53ef\u5728\u6210\u5458\u5217\u8868\u4e2d\u67e5\u770b\u5230\u6dfb\u52a0\u7684\u6210\u5458\uff0c\u5728\u6210\u5458\u7684\u64cd\u4f5c\u5217\u4e2d\u53ef\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u548c\u3010\u5220\u9664\u3011\u8fdb\u884c\u6210\u5458\u4fee\u6539\u548c\u6210\u5458\u5220\u9664\u64cd\u4f5c\u3002

    "},{"location":"user_manual/project_management/template_management/","title":"\u6a21\u7248\u7ba1\u7406","text":"

    \u7cfb\u7edf\u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u3010\u9879\u76ee\u7ea7\u522b\u3011\u7684\u3010\u6a21\u677f\u5b57\u6bb5\u3011\u3001\u3010\u7528\u4f8b\u6a21\u677f\u3011\u3001\u3010\u7f3a\u9677\u6a21\u677f\u3011\u3001\u3010\u63a5\u53e3\u6a21\u677f\u3011\u3002

    "},{"location":"user_manual/project_management/template_management/#1","title":"1 \u6a21\u677f\u5b57\u6bb5","text":"

    \u5728\u81ea\u5b9a\u4e49\u6a21\u677f\u524d\uff08\u7528\u4f8b&\u7f3a\u9677\uff09\uff0c\u9700\u8981\u5148\u81ea\u5b9a\u4e49\u6a21\u677f\u4e2d\u5b57\u6bb5\u7684\u57fa\u672c\u5c5e\u6027\u3002\u70b9\u51fb\u3010\u9879\u76ee\u8bbe\u7f6e\u3011-\u3010\u66f4\u591a\u9009\u9879\u3011-\u3010\u6a21\u677f\u7ba1\u7406\u3011-\u3010\u6a21\u677f\u5b57\u6bb5\u3011\uff0c\u5373\u53ef\u67e5\u770b\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u7684\u6240\u6709\u6a21\u677f\u5b57\u6bb5\u5217\u8868\u3002

    • \u521b\u5efa\u5b57\u6bb5 \u70b9\u51fb\u9875\u9762\u5de6\u4e0a\u89d2\u3010\u521b\u5efa\u5b57\u6bb5\u3011\uff0c\u8bbe\u7f6e\u5b57\u6bb5\u7684\u57fa\u672c\u4fe1\u606f\uff1a\u540d\u79f0\u3001\u5907\u6ce8\u3001\u4f7f\u7528\u573a\u666f\u3001\u5b57\u6bb5\u7c7b\u578b\u7b49\u57fa\u672c\u4fe1\u606f\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u5b8c\u6210\u6a21\u677f\u5b57\u6bb5\u6dfb\u52a0\u3002

    \u4e2a\u522b\u5b57\u6bb5\u8bf4\u660e

    \u3010\u4f7f\u7528\u573a\u666f\u3011\uff1a\u8bbe\u7f6e\u5b9a\u4e49\u7684\u5b57\u6bb5\u4f7f\u7528\u4e8e\u5177\u4f53\u7684\u6a21\u677f\u4e2d\u3002 \u3010\u5b57\u6bb5\u7c7b\u578b\u3011\uff1a\u7cfb\u7edf\u63d0\u4f9b\u591a\u79cd\u5b57\u6bb5\u7c7b\u578b\u53ef\u4f9b\u9009\u62e9\uff0c\u6839\u636e\u4e0d\u540c\u5b57\u6bb5\u7c7b\u578b\uff0c\u7cfb\u7edf\u81ea\u52a8\u63a7\u5236\u5b57\u6bb5\u7684\u663e\u793a\u3001\u8bbe\u7f6e\u548c\u5c5e\u6027\u7b49\u3002\u5b57\u6bb5\u652f\u6301\u7684\u7c7b\u578b\u6709\u8f93\u5165\u6846\u3001\u6587\u672c\u6846\u3001\u4e0b\u6765\u9009\u62e9\u6846\uff08\u5355\u9009&\u591a\u9009\uff09\u3001\u65e5\u671f\u65f6\u95f4\u5668\u3001\u6570\u503c\u7b49\u7b49\u7c7b\u578b\u3002

    • \u7ef4\u62a4\u5b57\u6bb5 \u521b\u5efa\u5b8c\u6210\u540e\u53ef\u5728\u6a21\u677f\u5b57\u6bb5\u5217\u8868\u4e2d\u67e5\u770b\u5230\u6dfb\u52a0\u7684\u6a21\u677f\u5b57\u6bb5\uff0c\u5728\u81ea\u5b9a\u4e49\u5b57\u6bb5\u4fe1\u606f\u4e2d\u53ef\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u3001\u3010\u590d\u5236\u3011\u548c\u3010\u5220\u9664\u3011\u6309\u94ae\u8fdb\u884c\u6a21\u677f\u5b57\u6bb5\u4fee\u6539\u3001\u590d\u5236\u548c\u5220\u9664\u64cd\u4f5c\u3002

    "},{"location":"user_manual/project_management/template_management/#2","title":"2 \u7528\u4f8b\u6a21\u7248","text":"

    \u7528\u4f8b\u6a21\u677f\u5373\u5f53\u524d\u9879\u76ee\u4e0b\u90fd\u53ef\u4f7f\u7528\u7684\u6d4b\u8bd5\u7528\u4f8b\u6a21\u677f\uff0c\u5e76\u4e14\u53ef\u5bf9\u7528\u4f8b\u6a21\u677f\u6dfb\u52a0\u3001\u4fee\u6539\u3001\u590d\u5236\u53ca\u79fb\u9664\u7684\u64cd\u4f5c\u3002\u70b9\u51fb\u9875\u9762\u3010\u9879\u76ee\u8bbe\u7f6e\u3011-\u3010\u66f4\u591a\u9009\u9879\u3011-\u3010\u6a21\u7248\u7ba1\u7406\u3011-\u3010\u7528\u4f8b\u6a21\u7248\u3011\uff0c\u5373\u53ef\u67e5\u770b\u5f53\u524d\u9879\u76ee\u4e2d\u7684\u6240\u6709\u7528\u4f8b\u6a21\u677f\u5217\u8868\u3002

    • \u521b\u5efa\u6a21\u677f \u70b9\u51fb\u9875\u9762\u5de6\u4e0a\u89d2\u3010\u521b\u5efa\u6a21\u677f\u3011\uff0c\u521b\u5efa\u65b0\u7684\u7528\u4f8b\u6a21\u677f\uff0c\u8bbe\u7f6e\u7528\u4f8b\u57fa\u672c\u4fe1\u606f\u3001\u6a21\u677f\u8bbe\u7f6e\u660e\u7ec6\u4fe1\u606f\u7b49\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u5b8c\u6210\u7528\u4f8b\u6a21\u677f\u6dfb\u52a0\u3002\u5982\u679c\u6a21\u677f\u6dfb\u52a0\u7684\u5b57\u6bb5\u4fe1\u606f\u4e0d\u5b58\u5728\uff0c\u53ef\u4ee5\u5728\u3010\u9879\u76ee\u8bbe\u7f6e\u3011-\u3010\u66f4\u591a\u9009\u9879\u3011-\u3010\u6a21\u7248\u7ba1\u7406\u3011-\u3010\u6a21\u7248\u5b57\u6bb5\u3011\u4e2d\u8fdb\u884c\u521b\u5efa\uff0c\u7136\u540e\u5728\u6b64\u5f15\u7528\u5373\u53ef\u3002

    • \u7ef4\u62a4\u6a21\u677f \u521b\u5efa\u5b8c\u6210\u540e\u53ef\u5728\u7528\u4f8b\u6a21\u677f\u5217\u8868\u4e2d\u67e5\u770b\u5230\u6dfb\u52a0\u7684\u7528\u4f8b\u6a21\u677f\uff0c\u5728\u7528\u4f8b\u6a21\u677f\u4fe1\u606f\u4e2d\u53ef\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u3001\u3010\u590d\u5236\u3011\u548c\u3010\u5220\u9664\u3011\u6309\u94ae\u8fdb\u884c\u7528\u4f8b\u6a21\u677f\u4fee\u6539\u3001\u590d\u5236\u548c\u5220\u9664\u64cd\u4f5c\u3002

    • \u5f15\u7528\u6a21\u677f \u521b\u5efa\u7528\u4f8b\u6a21\u677f\u540e\uff0c\u9700\u8981\u5728\u9879\u76ee\u4e2d\u4f7f\u7528\u521b\u5efa\u7684\u6a21\u677f\uff0c\u53ef\u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e\u3011-\u3010\u9879\u76ee\u7ba1\u7406\u3011-\u3010\u7f16\u8f91\u3011\u9875\u9762\uff0c\u9009\u62e9\u8981\u4f7f\u7528\u7684\u7528\u4f8b\u6a21\u677f

    "},{"location":"user_manual/project_management/template_management/#3","title":"3 \u7f3a\u9677\u6a21\u7248","text":"

    \u5728\u3010\u6a21\u7248\u7ba1\u7406\u3011-\u3010\u7f3a\u9677\u6a21\u7248\u3011\uff0c\u4f1a\u663e\u793a\u5f53\u524d\u9879\u76ee\u4e0b\u7684\u7f3a\u9677\u6a21\u7248\u5217\u8868\uff0c\u652f\u6301\u67e5\u8be2\u3001\u7f16\u8f91\u3001\u590d\u5236\u3001\u5220\u9664\u7b49\u64cd\u4f5c\u3002

    • \u521b\u5efa\u7f3a\u9677\u6a21\u677f \u70b9\u51fb\u9875\u9762\u5de6\u4e0a\u89d2\u3010\u521b\u5efa\u7f3a\u9677\u6a21\u677f\u3011\u65b0\u5efa\u7f3a\u9677\u6a21\u677f\uff0c\u8bbe\u7f6e\u7528\u4f8b\u57fa\u672c\u4fe1\u606f\u3001\u6a21\u677f\u8bbe\u7f6e\u660e\u7ec6\u4fe1\u606f\u7b49\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u5b8c\u6210\u9879\u76ee\u7f3a\u9677\u6a21\u677f\u6dfb\u52a0\u3002\u5982\u679c\u6a21\u677f\u6dfb\u52a0\u5b57\u6bb5\u4fe1\u606f\u4e0d\u5b58\u5728\uff0c\u53ef\u4ee5\u5728\u3010\u9879\u76ee\u8bbe\u7f6e\u3011-\u3010\u66f4\u591a\u9009\u9879\u3011-\u3010\u6a21\u7248\u7ba1\u7406\u3011-\u3010\u6a21\u7248\u5b57\u6bb5\u3011\u4e2d\u8fdb\u884c\u521b\u5efa\uff0c\u7136\u540e\u5728\u6b64\u5f15\u7528\u5373\u53ef\u3002

    • \u7ef4\u62a4\u5b57\u6bb5 \u521b\u5efa\u5b8c\u6210\u540e\u53ef\u5728\u7f3a\u9677\u6a21\u677f\u5217\u8868\u4e2d\u67e5\u770b\u5230\u6dfb\u52a0\u7684\u6a21\u677f\uff0c\u5728\u7f3a\u9677\u6a21\u677f\u4fe1\u606f\u4e2d\u53ef\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u3001\u3010\u590d\u5236\u3011\u548c\u3010\u5220\u9664\u3011\u6309\u94ae\u8fdb\u884c\u7f3a\u9677\u6a21\u677f\u4fee\u6539\u3001\u590d\u5236\u548c\u5220\u9664\u7b49\u64cd\u4f5c\u3002

    • \u5f15\u7528\u6a21\u677f \u521b\u5efa\u7f3a\u9677\u6a21\u677f\u540e\uff0c\u9700\u8981\u5728\u9879\u76ee\u4e2d\u4f7f\u7528\u521b\u5efa\u7684\u6a21\u677f\uff0c\u53ef\u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e\u3011-\u3010\u9879\u76ee\u7ba1\u7406\u3011-\u3010\u7f16\u8f91\u3011\u9875\u9762\uff0c\u9009\u62e9\u8981\u4f7f\u7528\u7684\u7f3a\u9677\u6a21\u677f

    "},{"location":"user_manual/project_management/template_management/#4","title":"4 \u63a5\u53e3\u6a21\u677f","text":"

    \u63a5\u53e3\u6d4b\u8bd5\u652f\u6301\u81ea\u5b9a\u4e49\u63a5\u53e3\u6a21\u677f\uff0c\u652f\u6301\u67e5\u8be2\u3001\u7f16\u8f91\u3001\u590d\u5236\u3001\u5220\u9664\u7b49\u64cd\u4f5c\u3002

    • \u521b\u5efa\u63a5\u53e3\u6a21\u677f \u70b9\u51fb\u9875\u9762\u5de6\u4e0a\u89d2\u3010\u521b\u5efa\u6a21\u677f\u3011\u65b0\u5efa\u63a5\u53e3\u9677\u6a21\u677f\uff0c\u586b\u5199\u57fa\u672c\u4fe1\u606f\u3001\u6a21\u677f\u8bbe\u7f6e\u7b49\u4fe1\u606f\uff0c\u6dfb\u52a0\u5b57\u6bb5\u6216\u8bbe\u7f6e\u81ea\u5b9a\u4e49\u5b57\u6bb5\u540e\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u5373\u53ef\u3002

    • \u7ef4\u62a4\u6a21\u677f \u521b\u5efa\u5b8c\u6210\u540e\u53ef\u5728\u63a5\u53e3\u6a21\u677f\u5217\u8868\u4e2d\u67e5\u770b\u5230\u6dfb\u52a0\u7684\u63a5\u53e3\u6a21\u677f\uff0c\u5728\u63a5\u53e3\u6a21\u677f\u4fe1\u606f\u4e2d\u53ef\u5bf9\u6a21\u677f\u8fdb\u884c\u3010\u7f16\u8f91\u3011\u3001\u3010\u590d\u5236\u3011\u548c\u3010\u5220\u9664\u3011\u7b49\u64cd\u4f5c\u3002

    • \u5f15\u7528\u6a21\u677f \u521b\u5efa\u63a5\u53e3\u6a21\u677f\u540e\uff0c\u9700\u8981\u5728\u9879\u76ee\u4e2d\u4f7f\u7528\u521b\u5efa\u7684\u6a21\u677f\uff0c\u53ef\u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e\u3011-\u3010\u9879\u76ee\u7ba1\u7406\u3011-\u3010\u7f16\u8f91\u3011\u9875\u9762\uff0c\u9009\u62e9\u8981\u4f7f\u7528\u7684\u63a5\u53e3\u6a21\u677f

    \u5728\u521b\u5efa\u63a5\u53e3\u5b9a\u4e49\u65f6\uff0c\u63a5\u53e3\u57fa\u7840\u4fe1\u606f\u4e2d\u4f1a\u5c55\u793a\u81ea\u5b9a\u4e49\u7684\u6a21\u677f\u5b57\u6bb5\u3002

    "},{"location":"user_manual/project_management/usergroup_permission/","title":"\u7528\u6237\u7ec4\u4e0e\u6743\u9650","text":"

    \u7ef4\u62a4\u5f53\u524d\u9879\u76ee\u7528\u6237\u53ca\u6743\u9650\u3002

    "},{"location":"user_manual/project_management/usergroup_permission/#1","title":"1 \u65b0\u589e\u7528\u6237\u7ec4","text":"

    \u70b9\u51fb\u3010\u521b\u5efa\u7528\u6237\u7ec4\u3011\uff0c\u65b0\u589e\u5f53\u524d\u9879\u76ee\u7684\u7528\u6237\u7ec4\u4fe1\u606f\u3002\u8be6\u7ec6\u529f\u80fd\u64cd\u4f5c\u53ca\u8bf4\u660e\u53c2\u8003 \u7cfb\u7edf\u8bbe\u7f6e->\u7cfb\u7edf->\u7528\u6237\u7ec4\u4e0e\u6743\u9650->\u521b\u5efa\u7528\u6237\u7ec4\u3002

    "},{"location":"user_manual/project_management/usergroup_permission/#2","title":"2 \u8bbe\u7f6e\u7528\u6237\u7ec4\u6743\u9650","text":"

    \u70b9\u51fb\u3010\u8bbe\u7f6e\u6743\u9650\u3011\u4e3a\u7528\u6237\u7ec4\u8fdb\u884c\u6743\u9650\u8bbe\u7f6e\u3002\u8be6\u7ec6\u529f\u80fd\u64cd\u4f5c\u53ca\u8bf4\u660e\u53c2\u8003 \u7cfb\u7edf\u8bbe\u7f6e->\u7cfb\u7edf->\u7528\u6237\u7ec4\u4e0e\u6743\u9650->\u8bbe\u7f6e\u6743\u9650\u3002

    "},{"location":"user_manual/project_management/usergroup_permission/#3","title":"3 \u8bbe\u7f6e\u7528\u6237\u7ec4\u6210\u5458","text":"

    \u5728\u7528\u6237\u7ec4\u5217\u8868\u4fe1\u606f\u6210\u5458\u5904\uff0c\u70b9\u51fb\u4fe1\u606f\u5217\u91cc\u7684\u3010\u6570\u5b57\u3011\u4e3a\u7528\u6237\u7ec4\u8fdb\u884c\u6210\u5458\u8bbe\u7f6e\u3002\u8be6\u7ec6\u529f\u80fd\u64cd\u4f5c\u53ca\u8bf4\u660e\u53c2\u8003 \u7cfb\u7edf\u8bbe\u7f6e->\u7cfb\u7edf->\u7528\u6237\u7ec4\u4e0e\u6743\u9650->\u6210\u5458\u8bbe\u7f6e\u3002

    "},{"location":"user_manual/project_management/version%20management/","title":"\u7248\u672c\u7ba1\u7406","text":"

    \u4e0d\u540c\u7248\u672c\u7684\u9879\u76ee\u6709\u4e0d\u540c\u7248\u672c\u7684\u7528\u4f8b\uff0c\u540e\u4e00\u4e2a\u7248\u672c\u662f\u5728\u524d\u4e00\u4e2a\u7248\u672c\u7684\u57fa\u7840\u4e0a\u4e0d\u65ad\u66f4\u65b0\u5b8c\u5584

    "},{"location":"user_manual/project_management/version%20management/#1-x-pack","title":"1 \u7248\u672c\u7ba1\u7406 (X-Pack)","text":"

    \u3010\u9879\u76ee\u8bbe\u7f6e\u3011-\u3010\u66f4\u591a\u9009\u9879\u3011-\u3010\u7248\u672c\u7ba1\u7406\u3011\u9875\u9762\uff0c\u542f\u7528\u7248\u672c\u7ba1\u7406\uff0c\u70b9\u51fb\u3010\u521b\u5efa\u7248\u672c\u3011\u3002

    \u5728\u3010\u521b\u5efa\u7248\u672c\u3011\u9875\u9762\uff0c\u8f93\u5165\u57fa\u672c\u914d\u7f6e\u4fe1\u606f\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u6216\u8005\u3010\u4fdd\u5b58\u5e76\u521b\u5efa\u3011\u5373\u53ef\u3002

    \u521b\u5efa\u7248\u672c\u5b8c\u6210\u540e\uff0c\u662f\u5426\u542f\u7528\u3010\u72b6\u6001\u3011\u548c\u3010\u6700\u65b0\u7248\u3011\u3002

    \u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u8fdb\u5165\u7f16\u8f91\u9875\u9762\uff0c\u7f16\u8f91\u5b8c\u6210\u540e\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u5373\u53ef\u3002

    \u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u6309\u7167\u63d0\u793a\u8f93\u5165\u3010DELETE-v1.0.0\u3011\uff0c\u8be5\u7248\u672c\u53f7\u5c31\u88ab\u5220\u9664\u4e86\u3002

    "},{"location":"user_manual/report_statistics/project_statistics/","title":"\u9879\u76ee\u62a5\u8868","text":"

    \u62a5\u8868\u7edf\u8ba1\u9875\u9762\u4e3b\u8981\u5c55\u793a\u62a5\u8868\u7c7b\u578b\uff0c\u7528\u6237\u53ef\u6839\u636e\u4e0d\u540c\u62a5\u8868\u7c7b\u578b\u521b\u5efa\u62a5\u8868\u3002

    "},{"location":"user_manual/report_statistics/project_statistics/#1","title":"1 \u6d4b\u8bd5\u7528\u4f8b\u7edf\u8ba1","text":"

    \u70b9\u51fb\u3010\u6d4b\u8bd5\u7528\u4f8b\u7edf\u8ba1\u3011\uff0c\u8fdb\u5165\u6d4b\u8bd5\u7528\u4f8b\u7edf\u8ba1\u9875\u9762\uff0c\u53ef\u4ee5\u770b\u5230\u5df2\u521b\u5efa\u7684\u62a5\u8868\u3002

    • \u521b\u5efa\u65b0\u62a5\u8868

    \u9009\u9879\u63d0\u4f9b\u6c34\u5e73\u8f74\u7cfb\u5217\u3001\u7eb5\u5411\u8f74\u7cfb\u5217\uff0c\u521b\u5efa\u65f6\u95f4\u4e09\u4e2a\u7ef4\u5ea6\u751f\u6210\u62a5\u544a\u3002

    • \u6c34\u5e73\u8f74\u7cfb\u5217

    \u6c34\u5e73\u8f74\u53ea\u652f\u6301\u5355\u9009\u3002

    • \u7eb5\u5411\u8f74\u7cfb\u5217

    \u7eb5\u5411\u8f74\u652f\u6301\u591a\u9009\u3002

    • \u521b\u5efa\u65f6\u95f4

    \u521b\u5efa\u65f6\u95f4\u652f\u6301\u52a8\u6001\u65f6\u95f4\u548c\u56fa\u5b9a\u65f6\u95f4\u751f\u6210\u62a5\u8868\u3002

    • \u66f4\u591a\u9009\u9879

    \u66f4\u591a\u9009\u9879\u53ef\u6839\u636e\u521b\u5efa\u4eba\u7b49\u6761\u4ef6\u8fc7\u6ee4\u751f\u6210\u62a5\u8868\u3002

    • \u4fdd\u5b58

    \u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u53ef\u4fdd\u5b58\u62a5\u8868\u3002

    • \u53e6\u5b58\u4e3a

    \u70b9\u51fb\u3010\u53e6\u5b58\u4e3a\u3011\u53ef\u5c06\u5f53\u524d\u62a5\u8868\u53e6\u5b58\u4e3a\u5176\u4ed6\u62a5\u8868\u3002

    • \u5168\u90e8\u62a5\u8868

    \u70b9\u51fb\u3010\u5168\u90e8\u62a5\u8868\u3011\u53ef\u67e5\u770b\u6240\u6709\u62a5\u8868\u3002

    • \u6211\u7684\u62a5\u8868

    \u70b9\u51fb\u3010\u6211\u7684\u62a5\u8868\u3011\u53ef\u67e5\u770b\u81ea\u5df1\u521b\u5efa\u7684\u62a5\u8868\u3002

    • \u91cd\u547d\u540d\u62a5\u8868

    \u70b9\u51fb\u3010\u91cd\u547d\u540d\u3011\u53ef\u5c06\u81ea\u5df1\u521b\u5efa\u7684\u62a5\u8868\u91cd\u547d\u540d\u3002

    • \u5220\u9664

    \u70b9\u51fb\u3010\u5220\u9664\u3011\u53ef\u5c06\u81ea\u5df1\u521b\u5efa\u7684\u62a5\u8868\u5220\u9664\u3002

    • \u5bfc\u51fa

    \u70b9\u51fb\u3010\u5bfc\u51fa\u3011\u53ef\u5c06\u62a5\u8868\u5bfc\u51fa PDF \u6587\u4ef6\u3002

    "},{"location":"user_manual/report_statistics/report/","title":"\u9879\u76ee\u62a5\u544a","text":"

    \u7528\u6237\u521b\u5efa\u62a5\u8868\u8fdb\u884c\u4fdd\u5b58\u540e\uff0c\u53ef\u5728\u6d4b\u8bd5\u62a5\u544a\u5185\u5bb9\u4e2d\u5c06\u62a5\u8868\u6dfb\u52a0\u8fdb\u6765\u8fdb\u884c\u53d1\u9001\u3002

    "},{"location":"user_manual/report_statistics/report/#1-x-pack","title":"1 \u9879\u76ee\u62a5\u544a (X-Pack)","text":"
    • \u521b\u5efa\u62a5\u544a

    \u5207\u6362\u5230\u3010\u9879\u76ee\u62a5\u544a\u3011\u9875\u9762\uff0c\u70b9\u51fb\u3010\u521b\u5efa\u62a5\u544a\u3011\uff0c\u8fdb\u5165\u62a5\u544a\u914d\u7f6e\u9875\u9762

    \u586b\u5199\u62a5\u544a\u7684\u57fa\u7840\u4fe1\u606f\uff0c\u9f20\u6807\u60ac\u6d6e\u5230\u3010\u793a\u4f8b\u3011\u524d\u9762\u7684\u5c0f\u56fe\u6807\uff0c\u53ef\u770b\u5230\u5185\u5bb9\u4e3a\u3010\u6587\u672c\u3011\u548c\u3010\u62a5\u8868\u3011\uff0c\u6839\u636e\u9700\u8981\u8fdb\u884c\u914d\u7f6e\u3002

    \u62a5\u544a\u914d\u7f6e\u5b8c\u6210\u53ef\u70b9\u51fb\u3010\u9884\u89c8\u3011\u3001\u3010\u53d1\u9001\u3011\u3001\u3010\u4fdd\u5b58\u8349\u7a3f\u3011\u3001\u3010\u53d6\u6d88\u3011\u6309\u94ae\uff0c\u70b9\u51fb\u3010\u53d1\u9001\u3011\u3001\u3010\u4fdd\u5b58\u8349\u7a3f\u3011\u7684\u62a5\u544a\u4f1a\u51fa\u73b0\u5728\u62a5\u544a\u5217\u8868\u4e2d

    • \u9884\u89c8\u62a5\u544a

    \u70b9\u51fb\u3010\u9884\u89c8\u3011\u6309\u94ae\uff0c\u5373\u53ef\u9884\u89c8\u8be5\u62a5\u544a\u7684\u5185\u5bb9

    • \u590d\u5236\u62a5\u544a

    \u70b9\u51fb\u3010\u590d\u5236\u3011\u6309\u94ae\uff0c\u5373\u53ef\u590d\u5236\u8be5\u62a5\u544a\uff0c\u663e\u793a\u5728\u5217\u8868\u4e0a\u65b9

    • \u7f16\u8f91\u62a5\u544a

    \u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u5373\u53ef\u4fee\u6539\u8be5\u62a5\u544a\u7684\u5185\u5bb9\uff0c\u7f16\u8f91\u5b8c\u6210\u540e\u70b9\u51fb\u3010\u4fdd\u5b58\u8349\u7a3f\u3011\u6216\u3010\u53d1\u9001\u3011

    • \u5220\u9664\u62a5\u544a

    \u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u5373\u53ef\u5220\u9664\u8be5\u62a5\u544a

    • \u5b9a\u65f6\u53d1\u9001

    \u70b9\u51fb\u3010\u5b9a\u65f6\u53d1\u9001\u3011\u6309\u94ae\uff0c\u5373\u53ef\u914d\u7f6e\u5b9a\u65f6\u4efb\u52a1\u53d1\u9001\u62a5\u544a

    "},{"location":"user_manual/system_management/intro/","title":"\u6982\u8ff0","text":"

    MeterSphere \u7cfb\u7edf\u8bbe\u7f6e\u6a21\u5757\u4e3a\u4e0d\u540c\u89d2\u8272\u7684\u7528\u6237\u63d0\u4f9b\u4e86\u5bf9\u5e94\u7684\u7ba1\u7406\u8bbe\u7f6e\u529f\u80fd\uff0c\u5176\u4e2d\u5305\u62ec\uff1a

    • \u7cfb\u7edf\uff1a\u7cfb\u7edf\u7ea7\u522b\u7684\u7ba1\u7406\u914d\u7f6e\u529f\u80fd\uff0c\u4f8b\u5982\u6574\u4e2a\u7cfb\u7edf\u7684\u7528\u6237\u3001\u5de5\u4f5c\u7ba1\u7406\u3001\u7528\u6237\u7ec4\u4e0e\u6743\u9650\uff0c\u6d4b\u8bd5\u8d44\u6e90\u6c60\u7ba1\u7406\u53ca LDAP \u914d\u7f6e\u3001\u90ae\u4ef6\u914d\u7f6e\u7b49\u7cfb\u7edf\u53c2\u6570\u914d\u7f6e\u529f\u80fd\uff0c\u5305\u62ec\u6388\u6743\u7ba1\u7406\u3001\u64cd\u4f5c\u65e5\u5fd7\u3001\u63d2\u4ef6\u7ba1\u7406\u7b49\u5168\u5c40\u914d\u7f6e\u529f\u80fd\uff0c\u7528\u6237\u9700\u8981\u5177\u6709\u3010\u7cfb\u7edf\u7ba1\u7406\u5458\u3011\u89d2\u8272\u624d\u80fd\u770b\u5230\u8be5\u83dc\u5355\u3002
    • \u5de5\u4f5c\u7a7a\u95f4\u7ba1\u7406\uff1a\u5de5\u4f5c\u7a7a\u95f4\u7ea7\u522b\u7684\u7ba1\u7406\u914d\u7f6e\u529f\u80fd\uff0c\u4f8b\u5982\u5de5\u4f5c\u7a7a\u95f4\u4e0b\u7684\u6210\u5458\u7ba1\u7406\u4ee5\u53ca\u5de5\u4f5c\u7a7a\u95f4\u7ea7\u522b\u7684\u914d\u7f6e\u529f\u80fd\uff0c\u5305\u62ec\u670d\u52a1\u96c6\u6210\u914d\u7f6e\u3001\u6d88\u606f\u8bbe\u7f6e\u3001\u9879\u76ee\u7ba1\u7406\u3001\u73af\u5883\u7ba1\u7406\u3001\u5de5\u4f5c\u7a7a\u95f4\u7ea7\u522b\u64cd\u4f5c\u65e5\u5fd7\u3001\u6a21\u7248\u7ba1\u7406\u7b49\uff0c\u7528\u6237\u9700\u8981\u5728\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u6709\u3010\u5de5\u4f5c\u7a7a\u95f4\u7ba1\u7406\u5458\u3011\u89d2\u8272\u624d\u80fd\u770b\u5230\u8be5\u83dc\u5355\u3002
    "},{"location":"user_manual/system_management/system/","title":"\u7cfb\u7edf","text":"

    \u7cfb\u7edf\u4e3b\u8981\u9488\u5bf9\u7cfb\u7edf\u7ea7\u522b\u7684\u7ba1\u7406\u914d\u7f6e\u529f\u80fd\u3002\u76ee\u524d\uff0cMeterSphere \u5185\u7f6e\u4e09\u7ea7\u79df\u6237\u4f53\u7cfb\u5e76\u53ef\u8bbe\u7f6e\u53ea\u8bfb\u7528\u6237\u3002\u5e73\u53f0\u9ed8\u8ba4\u7528\u6237\u7ec4\u53ca\u7528\u6237\u7ec4\u89d2\u8272\u5212\u5206\u4e3a\uff1a -\u3010\u7cfb\u7edf\u7ea7\u7528\u6237\u7ec4\u3011\uff1a\u7cfb\u7edf\u7ba1\u7406\u5458\u3002 -\u3010\u5de5\u4f5c\u7a7a\u95f4\u7ea7\u7528\u6237\u7ec4\u3011\uff1a\u5de5\u4f5c\u7a7a\u95f4\u7ba1\u7406\u5458\u3001\u5de5\u4f5c\u7a7a\u95f4\u6210\u5458\u3002 -\u3010\u9879\u76ee\u7ea7\u7528\u6237\u7ec4\u3011\uff1a\u9879\u76ee\u7ba1\u7406\u5458\u3001\u9879\u76ee\u6210\u5458\u3001\u53ea\u8bfb\u7528\u6237\u3002 \u5e73\u53f0\u7528\u6237\u7ec4\u652f\u6301\u7528\u6237\u5728\u3010\u7528\u6237\u7ec4\u4e0e\u6743\u9650\u3011\u529f\u80fd\u9875\u9762\u4e2d\u81ea\u5b9a\u4e49\u3002

    "},{"location":"user_manual/system_management/system/#1","title":"1 \u7528\u6237","text":"

    \u70b9\u51fb\u5de6\u4fa7\u3010\u7cfb\u7edf\u3011\u4e0b\u62c9\u83dc\u5355\u4e2d\u7684\u3010\u7528\u6237\u3011\u8fdb\u5165\u7528\u6237\u754c\u9762\u3002\u53f3\u4fa7\u663e\u793a\u5f53\u524d\u7cfb\u7edf\u4e2d\u7684\u5168\u90e8\u7528\u6237\u5217\u8868\uff0c\u53ef\u4ee5\u5bf9\u7528\u6237\u8fdb\u884c\u3010\u65b0\u589e\u3011\u3001\u3010\u7f16\u8f91\u3011\u3001\u3010\u67e5\u8be2\u3011\u3001\u3010\u5220\u9664\u3011\u3001\u3010\u66f4\u6539\u72b6\u6001\u3011\u3001\u3010\u8bbe\u7f6e\u5bc6\u7801\u3011\u7b49\u64cd\u4f5c\u3002

    \u8bf4\u660e

    MeterSphere \u90e8\u7f72\u6210\u529f\u540e\u4f1a\u81ea\u52a8\u521b\u5efa\u4e00\u4e2a\u7cfb\u7edf\u7ba1\u7406\u5458\u8d26\u6237\uff0c\u7528\u6237\u540d\u4e3a admin\uff0c\u9ed8\u8ba4\u5bc6\u7801\u4e3a metersphere\u3002\u5982\u5c06\u5e73\u53f0\u7528\u4e8e\u751f\u4ea7\u73af\u5883\uff0c\u8bf7\u53ca\u65f6\u66f4\u6539\u5bc6\u7801\u3002

    • \u521b\u5efa\u7528\u6237 \u70b9\u51fb\u3010\u521b\u5efa\u7528\u6237\u3011\u6309\u94ae\u521b\u5efa\u7528\u6237\uff0c\u5728\u5f39\u51fa\u9875\u9762\u4e2d\u7f16\u8f91\u7528\u6237\u4fe1\u606f\u3002

    \u9700\u8981\u521b\u5efa\u591a\u4e2a\u7528\u6237\u65f6\uff0c\u53ef\u70b9\u51fb\u3010\u5bfc\u5165\u7528\u6237\u3011\u6309\u94ae\uff0c\u4e0b\u8f7d\u6a21\u7248\u5e76\u586b\u5199\u7528\u6237\u4fe1\u606f\uff0c\u901a\u8fc7 Excel \u6587\u4ef6\u5bfc\u5165\u7528\u6237\u3002

    • \u4e3a\u7528\u6237\u6dfb\u52a0\u7528\u6237\u7ec4 \u70b9\u51fb\u3010\u6dfb\u52a0\u7528\u6237\u7ec4\u3011\u6309\u94ae\u4e3a\u7528\u6237\u6dfb\u52a0\u7528\u6237\u7ec4\u4fe1\u606f\u3002\u65b0\u7528\u6237\u81f3\u5c11\u6240\u5c5e\u4e00\u4e2a\u7528\u6237\u7ec4\uff0c\u6bcf\u4e2a\u7528\u6237\u53ef\u4ee5\u5c5e\u4e8e\u591a\u4e2a\u7528\u6237\u7ec4\u3002

    • \u67e5\u8be2\u7528\u6237 \u7528\u6237\u5217\u8868\u53f3\u4e0a\u65b9\uff0c\u4f7f\u7528\u641c\u7d22\u6846\uff0c\u6839\u636e ID \u6216\u540d\u79f0\u67e5\u8be2\u7528\u6237\u3002

    • \u9488\u5bf9\u7528\u6237\u7684\u5176\u4ed6\u64cd\u4f5c \u5728\u7528\u6237\u5217\u8868\u53f3\u4fa7\u64cd\u4f5c\u5217\uff0c\u53ef\u4ee5\u70b9\u51fb\u3010Switch\u3011\u5f00\u5173\u5207\u6362\u9009\u5b9a\u7528\u6237\u542f\u7528\u72b6\u6001\uff0c\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\u53ef\u4fee\u6539\u7528\u6237\u4fe1\u606f\uff0c\u70b9\u51fb\u3010\u4fee\u6539\u5bc6\u7801\u3011\u53ef\u4fee\u6539\u7528\u6237\u7684\u5bc6\u7801\uff0c\u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\u5220\u9664\u8be5\u7528\u6237\u3002

    "},{"location":"user_manual/system_management/system/#2","title":"2 \u5de5\u4f5c\u7a7a\u95f4","text":"

    \u70b9\u51fb\u5de6\u4fa7\u3010\u7cfb\u7edf\u3011\u4e0b\u62c9\u83dc\u5355\u4e2d\u7684\u3010\u5de5\u4f5c\u7a7a\u95f4\u3011\u8fdb\u5165\u5de5\u4f5c\u7a7a\u95f4\u754c\u9762\u3002\u53f3\u4fa7\u663e\u793a\u5f53\u524d\u7cfb\u7edf\u4e2d\u7684\u5168\u90e8\u5de5\u4f5c\u7a7a\u95f4\u5217\u8868\uff0c\u53ef\u4ee5\u5bf9\u5de5\u4f5c\u7a7a\u95f4\u8fdb\u884c\u3010\u65b0\u589e\u3011\u3001\u3010\u7f16\u8f91\u3011\u3001\u3010\u67e5\u8be2\u3011\u3001\u3010\u5220\u9664\u3011\u7b49\u64cd\u4f5c\u3002

    • \u521b\u5efa\u5de5\u4f5c\u7a7a\u95f4 \u70b9\u51fb\u3010\u521b\u5efa\u5de5\u4f5c\u7a7a\u95f4\u3011\u6309\u94ae\u521b\u5efa\u5de5\u4f5c\u7a7a\u95f4\uff0c\u5728\u5f39\u51fa\u9875\u9762\u4e2d\u586b\u5199\u540d\u79f0\u548c\u63cf\u8ff0\u3002

    • \u7f16\u8f91\u5de5\u4f5c\u7a7a\u95f4 \u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\u7f16\u8f91\u5de5\u4f5c\u7a7a\u95f4\uff0c\u5728\u5f39\u51fa\u9875\u9762\u4e2d\u4fee\u6539\u540d\u79f0\u548c\u63cf\u8ff0\u3002

    • \u5220\u9664\u5de5\u4f5c\u7a7a\u95f4 \u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\u5220\u9664\u5de5\u4f5c\u7a7a\u95f4\u3002

    "},{"location":"user_manual/system_management/system/#3","title":"3 \u7528\u6237\u7ec4\u4e0e\u6743\u9650","text":"

    \u70b9\u51fb\u5de6\u4fa7\u3010\u7cfb\u7edf\u3011\u4e0b\u62c9\u83dc\u5355\u4e2d\u7684\u3010\u7528\u6237\u7ec4\u4e0e\u6743\u9650\u3011\u8fdb\u5165\u7528\u6237\u7ec4\u754c\u9762\u3002\u7528\u6237\u53ef\u57fa\u4e8e\u81ea\u8eab\u9700\u6c42\u521b\u5efa\u81ea\u5b9a\u4e49\u7528\u6237\u7ec4\uff0c\u5e76\u8d4b\u4e88\u7528\u6237\u7ec4\u4e0d\u540c\u7684\u6743\u9650\u8bbe\u7f6e\u3002\u5176\u4e2d\u3010\u8d85\u7ea7\u7ba1\u7406\u5458\u3011\u7528\u6237\u7ec4\u62e5\u6709\u7cfb\u7edf\u5168\u90e8\u5de5\u4f5c\u7a7a\u95f4\u4e0e\u9879\u76ee\u7684\u64cd\u4f5c\u6743\u9650\uff0c\u7528\u6237\u53ef\u4ee5\u4e3a admin \u7528\u6237\u6dfb\u52a0\u3010\u8d85\u7ea7\u7ba1\u7406\u5458\u3011\u6743\u9650\u6765\u7ba1\u7406\u7cfb\u7edf\u5168\u90e8\u6570\u636e\u3002

    • \u521b\u5efa\u7528\u6237\u7ec4 \u70b9\u51fb\u3010\u521b\u5efa\u7528\u6237\u7ec4\u3011\u6309\u94ae\u65b0\u5efa\u81ea\u5b9a\u4e49\u7528\u6237\u7ec4\u3002\u5728\u5f39\u51fa\u7684\u754c\u9762\u4e2d\u7f16\u8f91\u7528\u6237\u7ec4\u540d\u79f0\u53ca\u63cf\u8ff0\uff0c\u9009\u62e9\u7528\u6237\u7ec4\u6240\u5c5e\u7c7b\u578b\u3002\u4f7f\u7528\u3010\u5168\u5c40\u7528\u6237\u7ec4\u3011\u5f00\u5173\u5207\u6362\u7528\u6237\u7ec4\u9002\u7528\u72b6\u6001\u3002\u65b0\u5efa\u7528\u6237\u7ec4\u7c7b\u578b\u4e3a\u7cfb\u7edf\u7c7b\u578b\u65f6\u81ea\u52a8\u5207\u6362\u4e3a\u5168\u5c40\u7528\u6237\u7ec4\uff0c\u6b64\u5f00\u5173\u4e3a\u9ed8\u8ba4\u6253\u5f00\u72b6\u6001\uff1b\u65b0\u5efa\u7528\u6237\u7ec4\u7c7b\u578b\u4e3a\u5176\u4ed6\u7c7b\u578b\u65f6\uff0c\u5168\u5c40\u72b6\u6001\u53ef\u5173\u95ed\uff0c\u6b64\u65f6\u987b\u4e3a\u7528\u6237\u7ec4\u9009\u62e9\u6240\u5c5e\u5de5\u4f5c\u7a7a\u95f4\u3002

    • \u4e3a\u7528\u6237\u7ec4\u914d\u7f6e\u6743\u9650 \u56de\u5230\u7528\u6237\u7ec4\u5217\u8868\u4e2d\uff0c\u70b9\u51fb\u3010\u8bbe\u7f6e\u6743\u9650\u3011\u6309\u94ae\u8fdb\u5165\u7528\u6237\u7ec4\u6743\u9650\u8bbe\u7f6e\u9875\u9762\uff0c\u5728\u8be5\u9875\u9762\u4e2d\u57fa\u4e8e\u7528\u6237\u7ec4\u9700\u6c42\u52fe\u9009\u64cd\u4f5c\u6743\u9650\uff0c\u4e00\u4e2a\u7528\u6237\u7ec4\u5373\u4e3a\u4e00\u4e2a\u6743\u9650\u96c6\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u6309\u94ae\u5b8c\u6210\u914d\u7f6e\u3002

    • \u7f16\u8f91\u7528\u6237\u7ec4\u4fe1\u606f \u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\u7f16\u8f91\u9009\u5b9a\u7528\u6237\u7ec4\u4fe1\u606f\uff0c\u5728\u5f39\u51fa\u9875\u9762\u4e2d\u53ef\u4ee5\u66f4\u6539\u7528\u6237\u7ec4\u540d\u79f0\u53ca\u63cf\u8ff0\u3002

    • \u67e5\u8be2\u7528\u6237\u7ec4 \u7528\u6237\u7ec4\u5217\u8868\u53f3\u4e0a\u65b9\uff0c\u4f7f\u7528\u641c\u7d22\u6846\uff0c\u6839\u636e\u540d\u79f0\u67e5\u8be2\u7528\u6237\u7ec4\u3002

    • \u5220\u9664\u7528\u6237\u7ec4 \u7528\u6237\u7ec4\u5217\u8868\u4e2d\uff0c\u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\u5220\u9664\u81ea\u5b9a\u4e49\u7684\u7528\u6237\u7ec4\uff0c\u7cfb\u7edf\u7528\u6237\u7ec4\u4e0d\u652f\u6301\u5220\u9664\u3002

    "},{"location":"user_manual/system_management/system/#4","title":"4 \u6d4b\u8bd5\u8d44\u6e90\u6c60\u7ba1\u7406","text":"

    \u70b9\u51fb\u5de6\u4fa7\u3010\u7cfb\u7edf\u3011\u4e0b\u62c9\u83dc\u5355\u4e2d\u7684\u3010\u6d4b\u8bd5\u8d44\u6e90\u6c60\u3011\u8fdb\u5165\u8d44\u6e90\u6c60\u754c\u9762\u3002\u6d4b\u8bd5\u8d44\u6e90\u6c60\u4e3b\u8981\u7528\u4e8e\u63a5\u53e3\u6d4b\u8bd5\u53ca\u6027\u80fd\u7b49\u6d4b\u8bd5\u3002\u53f3\u4fa7\u8d44\u6e90\u6c60\u5217\u8868\u4e2d\uff0c\u53ef\u4ee5\u901a\u8fc7\u3010Switch\u3011\u5f00\u5173\u5207\u6362\u8d44\u6e90\u6c60\u542f\u7528\u72b6\u6001\uff0c\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\u66f4\u6539\u8d44\u6e90\u6c60\u4fe1\u606f\uff0c\u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\u5220\u9664\u9009\u5b9a\u8d44\u6e90\u6c60\u3002

    "},{"location":"user_manual/system_management/system/#41-node","title":"4.1 \u521b\u5efa Node \u8d44\u6e90\u6c60","text":"

    \u70b9\u51fb\u3010\u521b\u5efa\u8d44\u6e90\u6c60\u3011\u6309\u94ae\uff0c\u5728\u5f39\u51fa\u7684\u754c\u9762\u4e2d\u4e3a\u65b0\u5efa\u8d44\u6e90\u6c60\u7f16\u8f91\u540d\u79f0\u3001\u63cf\u8ff0\u7b49\u76f8\u5173\u4fe1\u606f\uff0c\u3010\u7c7b\u578b\u3011\u9009\u62e9\u3010Node\u3011\uff0c\u586b\u5199\u76f8\u5e94\u7684\u914d\u7f6e\u4fe1\u606f\uff0c\u5e76\u652f\u6301\u8bbe\u5b9a\u8d44\u6e90\u6c60\u6700\u5927\u5e76\u53d1\u6570\u91cf\u6216\u6700\u5927\u7ebf\u7a0b\u6570\u91cf\u3002

    "},{"location":"user_manual/system_management/system/#42-kubernetes-x-pack","title":"4.2 \u521b\u5efa Kubernetes \u8d44\u6e90\u6c60 (X-Pack)","text":"

    \u70b9\u51fb\u3010\u521b\u5efa\u8d44\u6e90\u6c60\u3011\u6309\u94ae\uff0c\u5728\u5f39\u51fa\u7684\u754c\u9762\u4e2d\u4e3a\u65b0\u5efa\u8d44\u6e90\u6c60\u7f16\u8f91\u540d\u79f0\u3001\u63cf\u8ff0\u7b49\u76f8\u5173\u4fe1\u606f\uff0c\u3010\u7c7b\u578b\u3011\u9009\u62e9\u3010Kubernetes\u3011\uff0c\u586b\u5199\u76f8\u5e94\u7684\u914d\u7f6e\u4fe1\u606f\uff0c\u5e76\u652f\u6301\u8bbe\u5b9a\u8d44\u6e90\u6c60\u6700\u5927\u5e76\u53d1\u6570\u91cf\u6216\u6700\u5927\u7ebf\u7a0b\u6570\u91cf\u3002

    \u83b7\u53d6 Master URL\uff0c\u8f93\u5165 kubectl describe svc kubernetes \u53ef\u83b7\u5f97 Endpoints \u5730\u5740 \u83b7\u53d6 Token\uff0c\u9700\u8981\u6709 k8s \u96c6\u7fa4\u73af\u5883\uff0c\u4e4b\u540e\u521b\u5efa\u597d SA \u548c token\uff0c\u547d\u4ee4\u5982\u4e0b

    # 1 \u521b\u5efa namespaces\nkubectl create namespace metersphere\n# 2 \u521b\u5efa SA\nkubectl create serviceaccount ms -n metersphere\n# 3 \u521b\u5efa namespace \u6388\u6743 SA\nkubectl create clusterrolebinding ms --clusterrole=admin --serviceaccount=metersphere:ms -n metersphere\n# 4 \u67e5\u8be2 SA token\nkubectl describe sa/ms -n metersphere\nkubectl describe secrets -n metersphere ms-token-xxxx\n

    Namespace \u53ef\u4ee5\u8fdb\u884c\u81ea\u5b9a\u4e49\uff0c\u5728 k8s \u96c6\u7fa4\u4e0a\u521b\u5efa\u81ea\u5b9a\u4e49\u7684 Namespace

    kubectl create ns ms-pool\n

    \u4e0b\u8f7d deployment.yaml \u4e0a\u4f20\u5230 k8s \u96c6\u7fa4\u670d\u52a1\u5668\u4e0a\uff0c\u8f93\u5165\u547d\u4ee4\u4f7f\u5176\u751f\u6548\u540e\uff0c\u8f93\u5165\u547d\u4ee4\u67e5\u8be2\u81ea\u5b9a\u4e49 Namespace \u4e0b\u7684 ms-node-controller \u662f\u5426\u6b63\u5e38\u8d77\u6765

    # \u4f7f deployment.yaml \u751f\u6548\nkubectl apply -f deployment.yaml -n ms-pool\n# \u67e5\u8be2 ms-node-controller \u670d\u52a1\nkubectl get all -n ms-pool\n

    Deploy Name \u4f7f\u7528\u9ed8\u8ba4\u7684 ms-node-controller \u5c31\u884c\uff0c\u4e0d\u9700\u8981\u66f4\u6539\u3002 \u914d\u7f6e\u5b8c\u6210\u540e\uff0c\u70b9\u51fb\u786e\u5b9a\u5373\u53ef\u3002\u5728\u8d44\u6e90\u6c60\u5217\u8868\u4e2d\u6709\u8be5\u8d44\u6e90\u6c60\uff0c\u5728\u6027\u80fd\u6d4b\u8bd5\u9875\u9762-\u538b\u529b\u914d\u7f6e\u5904\u4e5f\u53ef\u4ee5\u770b\u5230\u8be5\u8d44\u6e90\u6c60\u3002

    • \u67e5\u8be2\u8d44\u6e90\u6c60 \u8d44\u6e90\u6c60\u5217\u8868\u53f3\u4e0a\u65b9\uff0c\u4f7f\u7528\u641c\u7d22\u6846\uff0c\u6839\u636e\u540d\u79f0\u67e5\u8be2\u8d44\u6e90\u6c60\u3002
    • \u5220\u9664\u8d44\u6e90\u6c60 \u8d44\u6e90\u6c60\u5217\u8868\u4e2d\uff0c\u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\u5220\u9664\u9009\u5b9a\u8d44\u6e90\u6c60\u3002
    "},{"location":"user_manual/system_management/system/#5","title":"5 \u7cfb\u7edf\u53c2\u6570\u8bbe\u7f6e","text":"

    \u70b9\u51fb\u5de6\u4fa7\u3010\u7cfb\u7edf\u3011\u4e0b\u62c9\u83dc\u5355\u4e2d\u7684\u3010\u7cfb\u7edf\u53c2\u6570\u8bbe\u7f6e\u3011\u8fdb\u5165\u53c2\u6570\u8bbe\u7f6e\u754c\u9762\uff0c\u7528\u4e8e\u5e73\u53f0\u3010\u57fa\u672c\u914d\u7f6e\u3011\u3001\u3010\u90ae\u4ef6\u8bbe\u7f6e\u3011\u3001\u3010LDAP\u8bbe\u7f6e\u3011\u3001\u3010\u663e\u793a\u8bbe\u7f6e\u3011\u3001\u3010\u8ba4\u8bc1\u8bbe\u7f6e\u3011\u3001\u3010\u6a21\u5757\u7ba1\u7406\u3011\u7b49\u53c2\u6570\u7684\u8bbe\u7f6e\u3002

    "},{"location":"user_manual/system_management/system/#51","title":"5.1 \u57fa\u672c\u914d\u7f6e","text":"

    \u6027\u80fd\u6d4b\u8bd5\u6267\u884c\u8fc7\u7a0b\u4e2d node-controller \u8282\u70b9\u9700\u8981\u901a\u8fc7\u914d\u7f6e\u7684\u3010\u5f53\u524d\u7ad9\u70b9URL\u3011\u4e0b\u8f7d JMX \u7b49\u6d4b\u8bd5\u8d44\u6e90\u6587\u4ef6\u3002\u5728\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u524d\u9700\u8981\u914d\u7f6e\u5e76\u68c0\u67e5\u6d4b\u8bd5\u8d44\u6e90\u6c60\u4e2d\u7684\u8282\u70b9\u53ef\u4ee5\u6b63\u5e38\u8bbf\u95ee\u5230\u8be5 URL\uff0cURL \u503c\u4e00\u822c\u4e3a\u901a\u8fc7\u6d4f\u89c8\u5668\u8bbf\u95ee MeterSphere \u7684\u5730\u5740\u3002

    \u9009\u9879

    • \u3010\u5f53\u524d\u7ad9\u70b9URL\u3011\uff1a\u5f53\u524d MeterSphere \u7ad9\u70b9\u5730\u5740\uff0c\u7528\u4e8e\u6027\u80fd\u6d4b\u8bd5 JMeter \u4ece MeterSphere \u7ad9\u70b9\u83b7\u53d6\u538b\u6d4b\u811a\u672c\u7b49\u6570\u636e\u3002
    • \u3010\u5e76\u53d1\u6570\u3011\uff1a\u9650\u5236\u573a\u666f\u63a5\u53e3\u81ea\u52a8\u5316\u4e2d\u573a\u666f\u5e76\u884c\u6267\u884c\u65f6\u7684\u5e76\u53d1\u6570\u91cf\u3002
    • \u3010Prometheus \u5730\u5740\u3011\uff1aPrometheus \u76d1\u63a7\u670d\u52a1\u5730\u5740\u3002
    • \u3010selenium-docker \u5730\u5740\u3011\uff1aselenium \u670d\u52a1\u5730\u5740\u3002
    • \u3010\u63a5\u53e3\u9ed8\u8ba4\u672c\u5730\u6267\u884c\u3011\uff1a\u7981\u7528\u540e\u6240\u6709\u6267\u884c\u529f\u80fd\u53ea\u80fd\u901a\u8fc7\u6d4b\u8bd5\u8d44\u6e90\u6c60\u6267\u884c\uff0c\u4e3a\u4e86\u4e0d\u5f71\u54cd\u63a5\u53e3\u6b63\u5e38\u6267\u884c\uff0c\u9009\u62e9\u3010\u7981\u7528\u3011\u540e\uff0c\u8bf7\u5728\u3010 \u9879\u76ee\u8bbe\u7f6e-\u5e94\u7528\u7ba1\u7406-\u63a5\u53e3\u6d4b\u8bd5 \u3011\u4e2d\u914d\u7f6e\u63a5\u53e3\u6267\u884c\u7684\u8d44\u6e90\u6c60\u3002
    "},{"location":"user_manual/system_management/system/#52","title":"5.2 \u90ae\u4ef6\u8bbe\u7f6e","text":"

    \u5207\u6362\u81f3\u3010\u90ae\u4ef6\u8bbe\u7f6e\u3011\u6807\u7b7e\uff0c\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\u53ef\u4ee5\u5bf9 SMTP \u4fe1\u606f\u8fdb\u884c\u4fee\u6539\u3001\u4fdd\u5b58\u3002

    "},{"location":"user_manual/system_management/system/#53-ldap","title":"5.3 LDAP \u8bbe\u7f6e","text":"

    \u5207\u6362\u81f3\u3010LDAP\u8bbe\u7f6e\u3011\u6807\u7b7e\uff0c\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\u914d\u7f6e LDAP \u767b\u5f55\u76f8\u5173\u53c2\u6570\u3002

    \u9009\u9879

    • \u3010LDAP\u5730\u5740\u3011\uff1aldap://serveurl:389 \u6216 ldaps://serveurl:636
    • \u3010\u7ed1\u5b9aDN\u3011\uff1acn=administrator,cn=Users,dc=metersphere,dc=com
    • \u3010\u7528\u6237OU\u3011\uff1aou=metersphere,dc=metersphere,dc=com
    • \u3010\u7528\u6237\u8fc7\u6ee4\u5668\u3011\uff1asAMAccountName={0}
    • \u3010LDAP\u5c5e\u6027\u6620\u5c04\u3011\uff1a{\"username\":\"sAMAccountName\",\"name\":\"cn\",\"email\":\"mail\"}

    \u9009\u9879\u8bf4\u660e

    • \u3010OU\u3011\uff1a\u540c\u7ea7\u591aOU\u7528\uff5c\u5206\u5272
    • \u3010\u7528\u6237\u8fc7\u6ee4\u5668\u3011\uff1a\u6839\u636e\u89c4\u5219\u5230 \u7528\u6237OU \u91cc\u9762\u53bb\u68c0\u7d22\u7528\u6237\uff0c\u53ef\u80fd\u7684\u9009\u9879\u4e3a (uid={0}) \u6216 (sAMAccountName={0}) \u6216 (cn={0})
    • \u3010LDAP\u5c5e\u6027\u6620\u5c04\u3011\uff1a{\"username\":\"sAMAccountName\",\"name\":\"cn\",\"email\":\"mail\",\"phone\":\"phone\"}\uff0cusername,name,email \u4e09\u9879\u4e0d\u53ef\u4fee\u6539\u5220\u9664, phone \u5c5e\u6027\u53ef\u9009
    • \u3010\u542f\u7528LDAP\u8ba4\u8bc1\u3011\uff1a\u542f\u7528\u540e\u767b\u5f55\u9875\u663e\u793a LDAP \u767b\u5f55\u9009\u9879

    \u6ce8\u610f

    \u7528\u6237\u8fc7\u6ee4\u5668\u7528\u4ec0\u4e48\u7b5b\u9009, LDAP \u5c5e\u6027\u6620\u5c04\u5b57\u6bb5\u8981\u4e0e\u5176\u4e00\u81f4, \u8fc7\u6ee4\u5668\u7528 sAMAccountName, LDAP\u5c5e\u6027\u6620\u5c04\u4e5f\u8981\u7528 sAMAccountName

    \u542f\u7528 LDAP \u8ba4\u8bc1\u540e\uff0c\u767b\u5f55\u9875\u4f1a\u65b0\u589e LDAP \u767b\u5f55\u9009\u9879\u3002

    "},{"location":"user_manual/system_management/system/#54-x-pack","title":"5.4 \u663e\u793a\u8bbe\u7f6e (X-Pack)","text":"

    \u5207\u6362\u81f3\u3010\u663e\u793a\u8bbe\u7f6e\u3011\u6807\u7b7e\uff0c\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\u914d\u7f6e\u7cfb\u7edf\u7684 logo \u4ee5\u53ca\u663e\u793a\u7684\u6587\u5b57\u548c\u56fe\u7247\uff0c\u586b\u5199\u5b8c\u6210\u540e\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u5373\u53ef\u3002

    "},{"location":"user_manual/system_management/system/#55-x-pack","title":"5.5 \u8ba4\u8bc1\u8bbe\u7f6e (X-Pack)","text":"

    \u5207\u6362\u81f3\u3010\u8ba4\u8bc1\u8bbe\u7f6e\u3011\u6807\u7b7e\uff0c\u70b9\u51fb\u3010\u6dfb\u52a0\u3011\u6309\u94ae\uff0c\u586b\u5199 CAS\u3001OIDC\u3001OAuth2 \u7b49\u65b9\u5f0f\u7684\u5355\u70b9\u767b\u5f55\u534f\u8bae\u8ba4\u8bc1\u4fe1\u606f\u3002

    \u53ef\u4ee5\u70b9\u51fb\u3010\u542f\u7528/\u7981\u7528\u3011\u6309\u94ae\u6216\u8005\u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u82e5\u542f\u7528 CAS\u3001OIDC \u8ba4\u8bc1\u540e\uff0c\u767b\u5f55\u9875\u4f1a\u65b0\u589e CAS\u3001OIDC \u767b\u5f55\u9009\u9879\u3002

    "},{"location":"user_manual/system_management/system/#56-x-pack","title":"5.6 \u6a21\u5757\u7ba1\u7406 (X-Pack)","text":"

    \u5207\u6362\u81f3\u3010\u6a21\u5757\u7ba1\u7406\u3011\u6807\u7b7e\uff0c\u70b9\u51fb\u3010\u542f\u7528/\u7981\u7528\u3011\u6309\u94ae\uff0c\u7cfb\u7edf\u53ea\u663e\u793a\u3010\u542f\u7528\u3011\u7684\u6a21\u5757\uff0c\u3010\u7981\u7528\u3011\u7684\u6a21\u5757\u4e0d\u4f1a\u5728\u7cfb\u7edf\u4e2d\u51fa\u73b0\u3002

    "},{"location":"user_manual/system_management/system/#6-x-pack","title":"6 \u914d\u989d\u7ba1\u7406 (X-Pack)","text":"

    \u8fdb\u5165\u3010\u914d\u989d\u7ba1\u7406\u3011\u9875\u9762\uff0c\u53ef\u3010\u7f16\u8f91\u3011\u4e0a\u65b9\u7684\u5de5\u4f5c\u7a7a\u95f4\u9ed8\u8ba4\u914d\u989d\uff0c\u7f16\u8f91\u5b8c\u6210\u540e\uff0c\u5728\u914d\u989d\u5217\u8868\u4e2d\u4f7f\u7528\u9ed8\u8ba4\u914d\u7f6e\u7684\uff0c\u5c06\u540c\u6b65\u66f4\u65b0\u7f16\u8f91\u7684\u6570\u636e\u3002

    \u70b9\u51fb\u5de5\u4f5c\u7a7a\u95f4\u7684\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u53ef\u5bf9\u5355\u4e2a\u5de5\u4f5c\u7a7a\u95f4\u8fdb\u884c\u914d\u989d\u7ba1\u7406\u8bbe\u7f6e

    \u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u5373\u53ef\u5220\u9664\u5df2\u914d\u7f6e\u597d\u7684\u5185\u5bb9\uff0c\u6062\u590d\u5230\u6700\u521d\u72b6\u6001\uff0c\u4f7f\u7528\u9ed8\u8ba4\u914d\u989d\u7684\u72b6\u6001\u4e5f\u7531\u3010\u662f\u3011\u53d8\u6210\u3010\u5426\u3011

    "},{"location":"user_manual/system_management/system/#7","title":"7 \u6388\u6743\u7ba1\u7406","text":"

    \u70b9\u51fb\u5de6\u4fa7\u3010\u7cfb\u7edf\u3011\u4e0b\u62c9\u83dc\u5355\u4e2d\u7684\u3010\u6388\u6743\u7ba1\u7406\u3011\u8fdb\u5165\u6388\u6743\u7ba1\u7406\u754c\u9762\uff0c\u70b9\u51fb\u3010\u6388\u6743\u9a8c\u8bc1\u3011\u5bfc\u5165\u4f01\u4e1a\u7248\u8bc1\u4e66\uff0c\u5f00\u542f X-Pack \u529f\u80fd\u3002

    "},{"location":"user_manual/system_management/system/#8","title":"8 \u64cd\u4f5c\u65e5\u5fd7","text":"

    \u70b9\u51fb\u5de6\u4fa7\u3010\u7cfb\u7edf\u3011\u4e0b\u62c9\u83dc\u5355\u4e2d\u7684\u3010\u64cd\u4f5c\u65e5\u5fd7\u3011\u8fdb\u5165\u65e5\u5fd7\u754c\u9762\uff0c\u663e\u793a\u767b\u5f55\u7528\u6237\u6743\u9650\u8303\u56f4\u5185\u7684\u5168\u90e8\u6d4b\u8bd5\u8d44\u6e90\u65e5\u5fd7\u4fe1\u606f\uff0c\u5e76\u652f\u6301\u4f7f\u7528\u9ad8\u7ea7\u67e5\u8be2\u6765\u5feb\u901f\u67e5\u627e\u76f8\u5173\u65e5\u5fd7\u3002

    "},{"location":"user_manual/system_management/system/#9","title":"9 \u63d2\u4ef6\u7ba1\u7406","text":""},{"location":"user_manual/system_management/system/#91-websocket-x-pack","title":"9.1 WebSocket \u63d2\u4ef6 (X-Pack)","text":"

    \u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e\u3011-\u3010\u7cfb\u7edf\u3011-\u3010\u63d2\u4ef6\u7ba1\u7406\u3011\u754c\u9762\u4e0b\uff0c\u4e0a\u4f20 WebSocket \u63d2\u4ef6

    \u5728\u3010\u63a5\u53e3\u6d4b\u8bd5\u3011-\u3010\u63a5\u53e3\u81ea\u52a8\u5316\u3011\u754c\u9762\u4e0b\uff0c\u65b0\u5efa\u4e00\u4e2a\u573a\u666f\uff0c\u70b9\u51fb\u573a\u666f\u53f3\u4e0b\u89d2\u3010+\u3011\u53f7\uff0c\u6dfb\u52a0 WebSocket \u76f8\u5173\u8bf7\u6c42\u3002

    "},{"location":"user_manual/system_management/workspace/","title":"\u5de5\u4f5c\u7a7a\u95f4","text":""},{"location":"user_manual/system_management/workspace/#1","title":"1 \u6210\u5458","text":"

    \u70b9\u51fb\u5de6\u4fa7\u3010\u5de5\u4f5c\u7a7a\u95f4\u3011\u4e0b\u62c9\u83dc\u5355\u4e2d\u7684\u3010\u6210\u5458\u3011\u8fdb\u5165\u6210\u5458\u754c\u9762\uff0c\u67e5\u770b\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u7684\u6240\u6709\u6210\u5458\u4fe1\u606f\u3002\u53ef\u4ee5\u5bf9\u6210\u5458\u8fdb\u884c\u3010\u65b0\u589e\u3011\uff0c\u3010\u7f16\u8f91\u3011\uff0c\u3010\u67e5\u8be2\u3011\uff0c\u3010\u5220\u9664\u3011\u3002

    • \u6dfb\u52a0\u6210\u5458 \u70b9\u51fb\u3010\u6dfb\u52a0\u6210\u5458\u3011\u6309\u94ae\u6dfb\u52a0\u6210\u5458\u6237\uff0c\u5728\u5f39\u51fa\u9875\u9762\u4e2d\u9009\u62e9\u8981\u6dfb\u52a0\u7684\u7528\u6237\u3002

    \u53c2\u6570\u8bf4\u660e

    • \u53ef\u6839\u636e\u7528\u6237 ID \u548c\u7528\u6237\u90ae\u7bb1\u641c\u7d22\u9700\u8981\u6dfb\u52a0\u7684\u7528\u6237\uff0c\u7cfb\u7edf\u652f\u6301\u53ef\u4e00\u6b21\u6dfb\u52a0\u591a\u4e2a\u6210\u5458\u3002
    • \u53ef\u9009\u62e9\u7528\u6237\u7ec4\uff0c\u6b64\u4e0b\u62c9\u4fe1\u606f\u7684\u7528\u6237\u7ec4\uff0c\u5176\u3010\u6240\u5c5e\u7c7b\u578b\u3011\u5c5e\u4e8e\u3010\u7ec4\u7ec7\u7ea7\u522b\u3011\u7684\u7528\u6237\u7ec4\uff0c\u7cfb\u7edf\u652f\u6301\u4e00\u6b21\u6dfb\u52a0\u591a\u4e2a\u7528\u6237\u7ec4\u3002
    • \u70b9\u51fb\u3010\u786e\u8ba4\u3011\u5b8c\u6210\u7ec4\u7ec7\u6210\u5458\u6dfb\u52a0\u3002
    • \u7f16\u8f91\u6210\u5458 \u5728\u6210\u5458\u4fe1\u606f\u4e2d\u53ef\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u548c\u3010\u5220\u9664\u3011\u8fdb\u884c\u6210\u5458\u4fee\u6539\u548c\u5220\u9664\u64cd\u4f5c\u3002

    • \u67e5\u8be2\u7528\u6237 \u53ef\u6309\u540d\u79f0\u6765\u6a21\u7cca\u67e5\u8be2\u6210\u5458\u4fe1\u606f\uff0c\u8f93\u5165\u67e5\u8be2\u4fe1\u606f\uff0c\u70b9\u51fb\u56de\u8f66\u5373\u53ef\u5b8c\u6210\u67e5\u8be2\u3002

    "},{"location":"user_manual/system_management/workspace/#2","title":"2 \u670d\u52a1\u96c6\u6210","text":"

    \u53ef\u67e5\u770b\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u91cc\u96c6\u6210\u7684\u7f3a\u9677\u7ba1\u7406\u5e73\u53f0\uff0c\u5e76\u8bbe\u7f6e\u548c\u4fee\u6539\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u9700\u8981\u5c06\u6d4b\u8bd5\u7528\u4f8b\u7f3a\u9677\u6570\u636e\u540c\u6b65\u7684\u7f3a\u9677\u7ba1\u7406\u5e73\u53f0\u3002 \u70b9\u51fb\u3010\u5de5\u4f5c\u7a7a\u95f4\u3011\u83dc\u5355\u680f\uff0c\u70b9\u51fb\u3010\u670d\u52a1\u96c6\u6210\u3011\uff0c\u5373\u53ef\u67e5\u770b\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u5df2\u96c6\u6210\u7684\u7f3a\u9677\u7ba1\u7406\u5e73\u53f0\uff0c\u540c\u65f6\u53ef\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u96c6\u6210 TAPD\u3001JIRA \u548c\u7985\u9053\u3001Azure Devops\u7b49\u5e73\u53f0\u3002 v2.4 \u7248\u672c\u7f3a\u9677\u5bf9\u63a5\u5b9e\u73b0\u4e86\u63d2\u4ef6\u5316\uff0c\u53ef\u6839\u636e\u81ea\u8eab\u9700\u6c42\u5f00\u53d1\u5bf9\u5e94\u63d2\u4ef6\u3002\u5177\u4f53\u53c2\u8003\u63d2\u4ef6\u9879\u76ee\uff1ahttps://github.com/metersphere/metersphere-platform-plugin

    Metersphere \u5e73\u53f0\u4e0e\u7ba1\u7406\u5de5\u5177\u96c6\u6210\u8bbe\u7f6e\u53ef\u5206\u4e3a\u4e09\u6b65\u9aa4\u6765\u5b8c\u6210

    (1)\u9996\u5148\u914d\u7f6e\u548c\u9879\u76ee\u7ba1\u7406\u5de5\u5177\u96c6\u6210\u8bbe\u7f6e\u3002 (2)\u5176\u6b21\u914d\u7f6e\u9879\u76ee\u76f8\u5173\u4fe1\u606f\u3002 (3)\u7136\u540e\u4e3a\u6bcf\u4e2a\u767b\u5f55\u7528\u6237\u8bbe\u7f6e\u5404\u81ea\u7684\u4e2a\u4eba\u8d26\u53f7\uff0c\u6b64\u914d\u7f6e\u4e5f\u53ef\u4ee5\u4e0d\u8bbe\u7f6e\u3002

    "},{"location":"user_manual/system_management/workspace/#21-tapd","title":"2.1 \u4e0eTAPD\u96c6\u6210","text":"

    \u7b2c\u4e00\u6b65\uff1a\u670d\u52a1\u96c6\u6210\u914d\u7f6e\u3002

    \u53c2\u6570\u8bf4\u660e

    \u3010API \u8d26\u53f7\u548c\u53e3\u4ee4\u3011\u662f Tapd Basic Auth \u8d26\u53f7\u4fe1\u606f\u5728\u3010\u516c\u53f8\u7ba1\u7406-\u5b89\u5168\u4e0e\u96c6\u6210-\u5f00\u653e\u5e73\u53f0\u3011\u4e2d\u67e5\u8be2\u3002

    \u7b2c\u4e8c\u6b65\uff1a\u5173\u8054\u9879\u76ee\u914d\u7f6e\u3002 \u914d\u7f6e\u5b8c\u670d\u52a1\u96c6\u6210\u540e\uff0c\u8fd8\u9700\u8981\u914d\u7f6e\u9879\u76ee\u4e2d\u5f15\u7528 TAPD \u9879\u76ee\u7684\u8bbe\u7f6e\uff0c\u5373\u5173\u8054\u9879\u76ee\u3002\u70b9\u51fb\u9875\u9762\u53f3\u4e0b\u89d2\u7684\u3010\u9a6c\u4e0a\u5173\u8054\u9879\u76ee\u3011\u8fdb\u884c\u8bbe\u7f6e\u3002

    \u8df3\u8f6c\u5230\u9879\u76ee\u7ba1\u7406\u9875\u9762\uff0c\u70b9\u51fb\u9879\u76ee\u5217\u8868\u4e2d\u7684\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u7f16\u8f91\u9879\u76ee\u91cc\u3010TAPD \u9879\u76ee ID\u3011\uff0c\u4ee5\u53ca\u7f3a\u9677\u6a21\u677f\u7b49\u76f8\u5173\u4fe1\u606f\u3002

    \u540c\u65f6\uff0c\u8fd8\u9700\u8981\u914d\u7f6e\u9879\u76ee\u4e2d\u7684 TAPD \u7f3a\u9677\u6a21\u677f\u8bbe\u7f6e\uff0c\u3010\u7f3a\u9677\u6a21\u677f\u3011\u9700\u8981\u9009\u62e9\u3010TAPD-\u9ed8\u8ba4\u6a21\u677f\u3011\u3002

    \u7b2c\u4e09\u6b65\uff1a\u6dfb\u52a0\u4e2a\u4eba\u5e73\u53f0\u8d26\u53f7\u3002 \u70b9\u51fb\u670d\u52a1\u96c6\u6210\u9875\u9762\u53f3\u4e0b\u89d2\u7684\u3010\u9a6c\u4e0a\u6dfb\u52a0\u3011\u8fdb\u884c\u8bbe\u7f6e\u3002

    \u8be5\u4fe1\u606f\u4e3a\u901a\u8fc7 TAPD \u63d0\u4ea4\u7f3a\u9677\u7684\u7528\u6237\u8ba4\u8bc1\u4fe1\u606f\uff0c\u82e5\u672a\u586b\u5199\uff0c\u5219\u4f7f\u7528\u7ec4\u7ec7\u4e2d\u914d\u7f6e\u7684\u9ed8\u8ba4\u4fe1\u606f\u3002 \u9009\u62e9\u3010\u7b2c\u4e09\u65b9\u5e73\u53f0\u8d26\u53f7\u3011\u8bbe\u7f6e\u3010Tapd\u3011\u4fe1\u606f\uff0c\u5982\u679c\u4e0d\u8bbe\u7f6e\u4e2a\u4eba\u5e73\u53f0\u8d26\u53f7\uff0c\u5219\u6240\u6709\u4f7f\u7528 MeterSphere \u63d0\u4ea4\u7f3a\u9677\u7684\u7528\u6237\uff0c\u6b64\u7f3a\u9677\u63a8\u9001\u5230\u914d\u7f6e\u7684\u670d\u52a1\u5e73\u53f0\u4e0a\u8d26\u53f7\u90fd\u662f\u670d\u52a1\u914d\u7f6e\u4e2d\u8bbe\u5b9a\u7684\u8d26\u53f7\u4fe1\u606f\u3002

    \u53c2\u6570\u8bf4\u660e\uff1a\u3010TAPD \u6635\u79f0\u3011\u662f TAPD \u4e2a\u4eba\u8bbe\u7f6e\u91cc\u67e5\u770b\u3002

    \u4ee5\u4e0a\u914d\u7f6e\u5b8c\u6210\u540e\uff0c\u5728 Metersphere \u7cfb\u7edf\u4e2d\u6d4b\u8bd5\u7528\u4f8b\u91cc\uff0c\u5c31\u53ef\u4ee5\u5173\u8054 TAPD \u7684\u76f8\u5173\u9700\u6c42\u3002

    \u5728\u7f3a\u9677\u7ba1\u7406\u63d0\u4ea4\u7f3a\u9677\u540e\uff0c\u5e73\u53f0\u7c7b\u578b\u663e\u793a\u4e3a TAPD \u7684\u6570\u636e\uff0c\u70b9\u51fb\u3010\u540c\u6b65\u7f3a\u9677\u3011\u6309\u94ae\uff0c\u4f1a\u5c06\u6570\u636e\u540c\u6b65\u5230 TAPD \u7cfb\u7edf\u4e2d\u3002

    \u5728 TAPD \u7f3a\u9677\u4e2d\u53ef\u4ee5\u67e5\u8be2\u5230\u540c\u6b65\u8fc7\u6765\u7684\u7f3a\u9677\u6570\u636e\u3002

    "},{"location":"user_manual/system_management/workspace/#22-jira","title":"2.2 \u4e0eJIRA\u96c6\u6210","text":"

    \u6ce8\u610f

    v2.4 \u7248\u672c\u7f3a\u9677\u5bf9\u63a5\u5b9e\u73b0\u4e86\u63d2\u4ef6\u5316\uff0c\u53ef\u6839\u636e\u81ea\u8eab\u9700\u6c42\u5f00\u53d1\u5bf9\u5e94\u63d2\u4ef6\u3002 \u76ee\u524d\u5df2\u5b9e\u73b0 Jira \u5e73\u53f0\u7684\u63d2\u4ef6\u5316\uff0c\u539f\u5148\u4f7f\u7528 Jira \u7684\u7528\u6237\uff0c\u9700\u8981\u4e0b\u8f7d\u4e0b\u63d2\u4ef6\uff0c\u5e76\u5728\u3010\u7cfb\u7edf\u8bbe\u7f6e-\u63d2\u4ef6\u7ba1\u7406\u3011\u4e0a\u4f20\u63d2\u4ef6\u3002 \u4f7f\u7528\u65b9\u5f0f\u8ddf\u539f\u6765\u4e00\u81f4\uff0c\u5177\u4f53\u53c2\u8003\u63d2\u4ef6\u9879\u76ee\uff1ahttps://github.com/metersphere/metersphere-platform-plugin

    \u7b2c\u4e00\u6b65\uff1a\u586b\u5199\u5bf9\u63a5 JIRA \u7684\u5730\u5740\u3001\u8ba4\u8bc1\u4fe1\u606f\u548c\u95ee\u9898\u7c7b\u578b\uff0c\u5982\u4e0b\u3002

    \u6ce8\u610f

    \u95ee\u9898\u7c7b\u578b\u9700\u8981\u548c JIRA \u7684\u4e8b\u52a1\u7c7b\u578b\u4fdd\u6301\u4e00\u81f4\uff0c\u5fc5\u987b\u5728 JIRA \u4e2d\u5b58\u5728\u6b64\u7c7b\u578b\uff0c\u5982\u4e0b\uff1a

    \u5982\u679c\u53f3\u4e0a\u89d2\u5207\u6362\u7ec4\u7ec7\uff0c\u9700\u8981\u91cd\u590d\u4e0a\u8ff0\u5bf9\u63a5 JIRA \u64cd\u4f5c

    \u7b2c\u4e8c\u6b65\uff1a \u5173\u8054\u9879\u76ee\u914d\u7f6e \u914d\u7f6e\u5b8c\u670d\u52a1\u96c6\u6210\u540e\uff0c\u8fd8\u9700\u8981\u914d\u7f6e\u9879\u76ee\u4e2d\u5f15\u7528 JIRA \u9879\u76ee\u7684\u8bbe\u7f6e\uff0c\u5373\u5173\u8054\u9879\u76ee\u3002\u70b9\u51fb\u9875\u9762\u53f3\u4e0b\u89d2\u7684\u3010\u9a6c\u4e0a\u5173\u8054\u9879\u76ee\u3011\u8fdb\u884c\u8bbe\u7f6e\u3002

    \u8df3\u8f6c\u5230\u9879\u76ee\u7ba1\u7406\u9875\u9762\uff0c\u70b9\u51fb\u9879\u76ee\u5217\u8868\u4e2d\u7684\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u8bbe\u7f6e\u9879\u76ee\u91cc\u9879\u76ee\u76f8\u5173\u914d\u7f6e\u3002

    \u53c2\u6570\u8bf4\u660e

    \u3010\u96c6\u6210\u7b2c\u4e09\u65b9\u5e73\u53f0\u3011\uff1a\u9009\u62e9\u3010JIRA\u3011\u3002 \u3010\u7f3a\u9677\u6a21\u677f\u3011\uff1a\u9009\u62e9\u3010JIRA-\u9ed8\u8ba4\u6a21\u677f\u3011 \u3010\u4f7f\u7528 Jira \u7f3a\u9677\u6a21\u677f\u3011\uff1a\u9009\u4e2d\uff0c\u5219\u8868\u793a\u7cfb\u7edf\u4f1a\u81ea\u52a8\u540c\u6b65 JIRA \u7cfb\u7edf\u4e2d\u7684\u7f3a\u9677\u6a21\u677f\uff1b\u4e0d\u9009\u62e9\uff0c\u5219\u9700\u8981\u8fdb\u5165\u7b2c\u56db\u6b65\uff0c\u624b\u52a8\u914d\u7f6e MS \u7f3a\u9677\u6a21\u677f\u548c Jira \u7cfb\u7edf\u4e2d\u7684\u7f3a\u9677\u6a21\u677f\u7684\u5b57\u6bb5\u5bf9\u5e94\u5173\u7cfb\u3002 \u3010JIRA \u9879\u76ee Key\u3011\uff1a\u9879\u76ee\u7684\u5173\u952e\u5b57\u7684\u9700\u8981\u5728 JIRA \u5e73\u53f0\u4e0a\u8fdb\u884c\u67e5\u8be2\uff0c\u5982\u4e0b\u3002

    \u7b2c\u4e09\u6b65\uff1a\u6dfb\u52a0\u4e2a\u4eba\u5e73\u53f0\u8d26\u53f7\u3002 \u70b9\u51fb\u670d\u52a1\u96c6\u6210\u9875\u9762\u53f3\u4e0b\u89d2\u7684\u3010\u9a6c\u4e0a\u6dfb\u52a0\u3011\u8fdb\u884c\u8bbe\u7f6e\u3002

    \u8be5\u4fe1\u606f\u4e3a\u901a\u8fc7 Jira \u63d0\u4ea4\u7f3a\u9677\u7684\u7528\u6237\u8ba4\u8bc1\u4fe1\u606f\uff0c\u82e5\u672a\u586b\u5199\uff0c\u5219\u4f7f\u7528\u7ec4\u7ec7\u4e2d\u914d\u7f6e\u7684\u9ed8\u8ba4\u4fe1\u606f.\u70b9\u51fb\u3010\u7b2c\u4e09\u65b9\u5e73\u53f0\u8d26\u53f7\u3011\u8bbe\u7f6e\u3010Jira \u4fe1\u606f\u3011\uff0c\u5982\u679c\u4e0d\u8bbe\u7f6e\u4e2a\u4eba\u5e73\u53f0\u8d26\u53f7\uff0c\u5219\u6240\u6709\u4f7f\u7528 MeterSphere \u63d0\u4ea4\u7f3a\u9677\u7684\u7528\u6237\uff0c\u6b64\u7f3a\u9677\u63a8\u9001\u5230\u914d\u7f6e\u7684\u670d\u52a1\u5e73\u53f0\u4e0a\u8d26\u53f7\u90fd\u662f\u670d\u52a1\u914d\u7f6e\u4e2d\u8bbe\u5b9a\u7684\u8d26\u53f7\u4fe1\u606f\u3002

    \u4ee5\u4e0a\u914d\u7f6e\u5b8c\u6210\u540e\uff0c\u5728 Metersphere \u7cfb\u7edf\u4e2d\u6d4b\u8bd5\u7528\u4f8b\u91cc\uff0c\u5c31\u53ef\u4ee5\u5173\u8054JIRA \u7684\u76f8\u5173\u9700\u6c42\uff0c\u6216\u540c\u6b65\u76f8\u5173\u7f3a\u9677\u3002

    "},{"location":"user_manual/system_management/workspace/#23","title":"2.3 \u4e0e\u7985\u9053\u96c6\u6210","text":"

    \u7b2c\u4e00\u6b65\uff1a\u670d\u52a1\u96c6\u6210\u914d\u7f6e\u3002

    \u7985\u9053\u76ee\u524d\u5b58\u5728 GET \u548c PATH_INFO \u4e24\u79cd\u63a5\u53e3\u8c03\u7528\u65b9\u5f0f\uff08\u5373\u5176requestType \u53c2\u6570\uff09\u5bf9\u4e8e\u7985\u9053\u63a5\u53e3\u7684\u8c03\u7528\u4f7f\u7528\u7684\u662f PATH_INFO \u65b9\u5f0f\u548c GET \u8bf7\u6c42\u65b9\u5f0f\u7684\u652f\u6301\uff0c\u7528\u6237\u53ef\u4ee5\u6839\u636e\u81ea\u5df1\u4f7f\u7528\u7684\u7985\u9053\u7cfb\u7edf\u7684\u914d\u7f6e\u60c5\u51b5\u81ea\u4e3b\u9009\u62e9\u8bf7\u6c42\u65b9\u5f0f\u3002

    \u8bf4\u660e

    1. \u8d26\u53f7\u5bc6\u7801\u4e3a\u5177\u6709\u76f8\u5e94\u6743\u9650\u7684 Zentao \u8d26\u53f7\uff0c\u8d26\u53f7\u9700\u8981\u5177\u6709\u8d85\u7ea7 model \u8c03\u7528\u63a5\u53e3\u6743\u9650\u3002
    2. \u8bf7\u6c42\u65b9\u5f0f\uff1a\u5728\u7985\u9053\u91cc\u5177\u4f53\u67e5\u770b\uff1a\u53c2\u8003\u7985\u9053\u914d\u7f6e\u6587\u4ef6\u4e2d$config->requestType \u7684\u503c\uff1b\u914d\u7f6e\u6587\u4ef6\u53c2\u8003\u8def\u5f84\uff1a/opt/zbox/app/zentao/config/my.php \u3002
    3. \u5982\u679c\u63d0\u793a\u56e0\u4e3a\u5b89\u5168\u95ee\u9898 api \u7981\u7528\uff0c\u9700\u8981\u4fee\u6539\u7985\u9053\u670d\u52a1\u5668\u914d\u7f6e\u6587\u4ef6/opt/zbox/app/zentao/config/my.php\uff0c\u52a0\u4e0a '$config->features->apiGetModel = true;' \u8fd9\u4e2a\u914d\u7f6e\u3002

    \u7b2c\u4e8c\u6b65\uff1a \u5173\u8054\u9879\u76ee\u914d\u7f6e \u914d\u7f6e\u5b8c\u670d\u52a1\u96c6\u6210\u540e\uff0c\u8fd8\u9700\u8981\u914d\u7f6e\u9879\u76ee\u4e2d\u5f15\u7528\u7985\u9053\u9879\u76ee\u7684\u8bbe\u7f6e\uff0c\u5373\u5173\u8054\u9879\u76ee\u3002\u70b9\u51fb\u9875\u9762\u53f3\u4e0b\u89d2\u7684\u3010\u9a6c\u4e0a\u5173\u8054\u9879\u76ee\u3011\u8fdb\u884c\u8bbe\u7f6e\u3002

    \u8df3\u8f6c\u5230\u3010\u9879\u76ee\u7ba1\u7406\u3011\uff0c\u70b9\u51fb\u3010\u7f16\u8f91\u3011\uff0c\u7f16\u8f91\u9879\u76ee\u91cc\u3010\u7985\u9053\u9879\u76eeID\u3011\uff0c\u4ee5\u53ca\u7f3a\u9677\u6a21\u677f\u7b49\u76f8\u5173\u4fe1\u606f\u3002

    \u53c2\u6570\u8bf4\u660e

    \u3010Zentao\uff08\u7985\u9053\uff09\u9879\u76ee ID\u3011\uff1a\u5982\u679c \u7985\u9053 bug \u662f\u9644\u5c5e\u5728\u9879\u76ee\u4e0a\uff0c\u5219\u5173\u8054\u7684Zentao ID \u4e3a\u9879\u76ee ID\uff1b\u5982\u679c \u7985\u9053 Bug \u662f\u9644\u5c5e\u5728\u4ea7\u54c1\u4e0a\uff0c\u5219\u5173\u8054\u7684 ZentaoID \u4e3a\u4ea7\u54c1 ID\u3002

    \u7b2c\u4e09\u6b65\uff1a\u6dfb\u52a0\u4e2a\u4eba\u5e73\u53f0\u8d26\u53f7 \u70b9\u51fb\u670d\u52a1\u96c6\u6210\u9875\u9762\u53f3\u4e0b\u89d2\u7684\u3010\u9a6c\u4e0a\u6dfb\u52a0\u3011\u8fdb\u884c\u8bbe\u7f6e\u3002

    \u8be5\u4fe1\u606f\u4e3a\u901a\u8fc7\u7985\u9053\u63d0\u4ea4\u7f3a\u9677\u7684\u7528\u6237\u540d\u3001\u5bc6\u7801\uff0c\u82e5\u672a\u586b\u5199\uff0c\u5219\u4f7f\u7528\u7ec4\u7ec7\u4e2d\u914d\u7f6e\u7684\u9ed8\u8ba4\u4fe1\u606f\u3002 \u9009\u62e9\u3010\u7b2c\u4e09\u65b9\u5e73\u53f0\u8d26\u53f7\u3011\u8bbe\u7f6e\u3010\u7985\u9053\u4fe1\u606f\u3011\uff0c\u5982\u679c\u4e0d\u8bbe\u7f6e\u4e2a\u4eba\u5e73\u53f0\u8d26\u53f7\uff0c\u5219\u6240\u6709\u4f7f\u7528 MeterSphere \u63d0\u4ea4\u7f3a\u9677\u7684\u7528\u6237\uff0c\u6b64\u7f3a\u9677\u63a8\u9001\u5230\u914d\u7f6e\u7684\u670d\u52a1\u5e73\u53f0\u4e0a\u8d26\u53f7\u90fd\u662f\u670d\u52a1\u914d\u7f6e\u4e2d\u8bbe\u5b9a\u7684\u8d26\u53f7\u4fe1\u606f\u3002

    \u4ee5\u4e0a\u914d\u7f6e\u5b8c\u6210\u540e\uff0c\u5728 Metersphere \u7cfb\u7edf\u4e2d\u6d4b\u8bd5\u7528\u4f8b\u91cc\uff0c\u5c31\u53ef\u4ee5\u5173\u8054\u7985\u9053\u7684\u76f8\u5173\u9700\u6c42\u3002

    \u5728\u7f3a\u9677\u7ba1\u7406\u63d0\u4ea4\u7f3a\u9677\u540e\uff0c\u6570\u636e\u4f1a\u540c\u6b65\u5230\u7985\u9053\u7cfb\u7edf\u4e2d\u3002

    "},{"location":"user_manual/system_management/workspace/#24-azure-devops","title":"2.4 \u4e0eAzure Devops\u96c6\u6210","text":"

    \u7b2c\u4e00\u6b65\uff1a\u670d\u52a1\u96c6\u6210\u914d\u7f6e\u3002 \u586b\u5199\u3010Basic Auth \u8d26\u53f7\u4fe1\u606f\u3011\u540e\uff0c\u70b9\u51fb\u3010\u6d4b\u8bd5\u8fde\u63a5\u3011\u5373\u53ef

    \u7b2c\u4e8c\u6b65\uff1a \u5173\u8054\u9879\u76ee\u914d\u7f6e \u914d\u7f6e\u5b8c\u670d\u52a1\u96c6\u6210\u540e\uff0c\u8fd8\u9700\u8981\u914d\u7f6e\u9879\u76ee\u4e2d\u5f15\u7528\u7985\u9053\u9879\u76ee\u7684\u8bbe\u7f6e\uff0c\u5373\u5173\u8054\u9879\u76ee\u3002\u70b9\u51fb\u9875\u9762\u53f3\u4e0b\u89d2\u7684\u3010\u9a6c\u4e0a\u5173\u8054\u9879\u76ee\u3011\u8fdb\u884c\u8bbe\u7f6e\u3002

    \u8df3\u8f6c\u5230\u3010\u9879\u76ee\u7ba1\u7406\u3011\uff0c\u70b9\u51fb\u3010\u7f16\u8f91\u3011\uff0c\u7f16\u8f91\u9879\u76ee\u91cc\u3010\u96c6\u6210\u7b2c\u4e09\u65b9\u5e73\u53f0\u3011\u3001\u3010AzureDevops\u9879\u76eeID\u3011\u3001\u3010AzureDevops\u8fc7\u6ee4ID\u3011\uff0c\u4ee5\u53ca\u7f3a\u9677\u6a21\u677f\u7b49\u76f8\u5173\u4fe1\u606f\u3002

    \u7b2c\u4e09\u6b65\uff1a\u6dfb\u52a0\u4e2a\u4eba\u5e73\u53f0\u8d26\u53f7 \u70b9\u51fb\u670d\u52a1\u96c6\u6210\u9875\u9762\u53f3\u4e0b\u89d2\u7684\u3010\u9a6c\u4e0a\u6dfb\u52a0\u3011\u8fdb\u884c\u8bbe\u7f6e\u3002

    \u9009\u62e9\u3010\u7b2c\u4e09\u65b9\u5e73\u53f0\u8d26\u53f7\u3011\u8bbe\u7f6e\u3010AzureDevops \u4fe1\u606f\u3011\uff0c\u5982\u679c\u4e0d\u8bbe\u7f6e\u4e2a\u4eba\u5e73\u53f0\u8d26\u53f7\uff0c\u5219\u4f7f\u7528 MeterSphere \u63d0\u4ea4\u7f3a\u9677\u7684\u7528\u6237\uff0c\u6b64\u7f3a\u9677\u63a8\u9001\u5230\u914d\u7f6e\u7684\u670d\u52a1\u5e73\u53f0\u4e0a\u8d26\u53f7\u90fd\u662f\u670d\u52a1\u914d\u7f6e\u4e2d\u8bbe\u5b9a\u7684\u8d26\u53f7\u4fe1\u606f\u3002

    \u4ee5\u4e0a\u914d\u7f6e\u5b8c\u6210\u540e\uff0c\u5728 Metersphere \u7cfb\u7edf\u4e2d\u6d4b\u8bd5\u7528\u4f8b\u91cc\uff0c\u5c31\u53ef\u4ee5\u5173\u8054 AzureDevops \u7684\u76f8\u5173\u9700\u6c42\u3002

    \u5728\u7f3a\u9677\u7ba1\u7406\u63d0\u4ea4\u7f3a\u9677\u540e\uff0c\u70b9\u51fb\u3010\u540c\u6b65\u6309\u94ae\u3011\uff0c\u6570\u636e\u4f1a\u540c\u6b65\u5230 AzureDevops \u7cfb\u7edf\u4e2d\u3002

    "},{"location":"user_manual/system_management/workspace/#3","title":"3 \u9879\u76ee\u7ba1\u7406","text":"

    \u5de5\u4f5c\u7a7a\u95f4\u4e0b\u5bf9\u6240\u6709\u9879\u76ee\u53ca\u9879\u76ee\u4f7f\u7528\u5230\u7684 Jar \u5305\u8fdb\u884c\u7edf\u4e00\u7ba1\u7406\u3002

    • \u521b\u5efa\u9879\u76ee

    \u70b9\u51fb\u9875\u9762\u5de6\u4fa7\u3010\u9879\u76ee\u7ba1\u7406\u3011\uff0c\u70b9\u51fb\u3010\u521b\u5efa\u9879\u76ee\u3011\uff0c\u586b\u5199\u76f8\u5173\u9879\u76ee\u57fa\u672c\u4fe1\u606f

    \u6839\u636e\u9879\u76ee\u5b9e\u9645\u60c5\u51b5\uff0c\u9009\u62e9\u5bf9\u5e94\u7684\u7b2c\u4e09\u65b9\u96c6\u6210\u5e73\u53f0\u4ee5\u53ca\u7528\u4f8b\u6a21\u677f\u548c\u7f3a\u9677\u6a21\u677f\uff0c\u70b9\u51fb\u4fdd\u5b58\u5373\u53ef\u3002

    \u53c2\u6570\u8bf4\u660e

    \u3010\u7b2c\u4e09\u65b9\u96c6\u6210\u5e73\u53f0\u3011\uff1a\u76ee\u524d\u53ea\u652f\u6301\u4ee5\u4e0a\u51e0\u79cd\u96c6\u6210\u5e73\u53f0\uff0c\u53ef\u53c2\u8003\u4e0a\u9762\u3010\u5de5\u4f5c\u7a7a\u95f4-\u670d\u52a1\u96c6\u6210\u3011\u8fdb\u884c\u914d\u7f6e\u3002 \u3010\u7528\u4f8b\u6a21\u677f\u3011\uff1a\u53ef\u53c2\u8003\u3010\u9879\u76ee\u8bbe\u7f6e-\u6a21\u677f\u7ba1\u7406-\u7528\u4f8b\u6a21\u677f\u3011\u8fdb\u884c\u81ea\u5b9a\u4e49\u7528\u4f8b\u6a21\u677f\u3002 \u3010\u7f3a\u9677\u6a21\u677f\u3011\uff1a\u53ef\u53c2\u8003\u3010\u9879\u76ee\u8bbe\u7f6e-\u6a21\u677f\u7ba1\u7406-\u7f3a\u9677\u6a21\u677f\u3011\u8fdb\u884c\u81ea\u5b9a\u4e49\u7f3a\u9677\u6a21\u677f\u3002

    \u81ea\u52a8\u751f\u6210 Jira \u7f3a\u9677\u6a21\u7248 (X-Pack) \u3010\u521b\u5efa\u9879\u76ee\u3011\uff0c\u586b\u5199\u7b2c\u4e09\u65b9\u96c6\u6210\u5e73\u53f0\u4e3a Jira \u540e\uff0c\u52fe\u9009\u4e0b\u9762\u7684\u3010\u4f7f\u7528 Jira \u7f3a\u9677\u6a21\u677f\u3011\uff0c\u586b\u5199\u597d\u5176\u4ed6\u914d\u7f6e\u4fe1\u606f\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u5373\u53ef

    • \u7f16\u8f91\u9879\u76ee \u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u53ef\u7f16\u8f91\u9879\u76ee\u76f8\u5173\u4fe1\u606f\u540e\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u6309\u94ae\u5373\u53ef

    • \u5220\u9664\u9879\u76ee \u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u586b\u5199\u4e0a\u65b9\u63d0\u793a\u5185\u5bb9\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u6309\u94ae\uff0c\u8be5\u9879\u76ee\u5373\u53ef\u88ab\u5220\u9664

    • \u73af\u5883\u914d\u7f6e \u70b9\u51fb\u3010\u73af\u5883\u914d\u7f6e\u3011\u6309\u94ae\uff0c\u586b\u5199\u73af\u5883\u76f8\u5173\u4fe1\u606f\u5373\u53ef\uff0c\u5177\u4f53\u60c5\u51b5\u53ef\u53c2\u8003\u3010\u5de5\u4f5c\u7a7a\u95f4-\u73af\u5883\u7ba1\u7406\u3011

    "},{"location":"user_manual/system_management/workspace/#4-x-pack","title":"4 \u914d\u989d\u7ba1\u7406 (X-Pack)","text":"

    \u8fdb\u5165\u3010\u914d\u989d\u7ba1\u7406\u3011\u9875\u9762\uff0c\u53ef\u3010\u7f16\u8f91\u3011\u4e0a\u65b9\u7684\u9879\u76ee\u9ed8\u8ba4\u914d\u989d\uff0c\u7f16\u8f91\u5b8c\u6210\u540e\uff0c\u5728\u914d\u989d\u5217\u8868\u4e2d\u4f7f\u7528\u9ed8\u8ba4\u914d\u7f6e\u7684\uff0c\u5c06\u540c\u6b65\u66f4\u65b0\u7f16\u8f91\u7684\u6570\u636e\u3002

    \u70b9\u51fb\u9879\u76ee\u7684\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u53ef\u5bf9\u5355\u4e2a\u9879\u76ee\u8fdb\u884c\u914d\u989d\u7ba1\u7406\u8bbe\u7f6e

    \u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u5373\u53ef\u5220\u9664\u5df2\u914d\u7f6e\u597d\u7684\u5185\u5bb9\uff0c\u6062\u590d\u5230\u6700\u521d\u72b6\u6001\uff0c\u4f7f\u7528\u9ed8\u8ba4\u914d\u989d\u7684\u72b6\u6001\u4e5f\u7531\u3010\u662f\u3011\u53d8\u6210\u3010\u5426\u3011

    "},{"location":"user_manual/system_management/workspace/#5","title":"5 \u73af\u5883\u7ba1\u7406","text":"

    \u5de5\u4f5c\u7a7a\u95f4\u4e0b\u6240\u6709\u6d4b\u8bd5\u76f8\u5173\u73af\u5883\u7edf\u4e00\u7ba1\u7406\u3002\u6b64\u73af\u5883\u914d\u7f6e\u7ba1\u7406\u5373\u662f\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u7684 \u6240\u6709\u9879\u76ee\u7684 \u6240\u6709\u73af\u5883\u4fe1\u606f\uff0c\u53ef\u5bf9\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u7684\u73af\u5883\u8fdb\u884c\u6dfb\u52a0\u3001\u4fee\u6539\u53ca\u79fb\u9664\u7684\u64cd\u4f5c\u3002\u5e76\u4e14\u652f\u6301\u5404\u4e2a\u73af\u5883\u914d\u7f6e\u4fe1\u606f\u7684\u5bfc\u5165\u548c\u5bfc\u51fa\uff0c\u65b9\u4fbf\u5ba2\u6237\u5feb\u901f\u65b0\u5efa\u548c\u7ef4\u62a4\u6d4b\u8bd5\u73af\u5883\u3002 \u70b9\u51fb\u9875\u9762\u5de6\u4fa7\u3010\u5de5\u4f5c\u7a7a\u95f4\u3011\uff0c\u70b9\u51fb\u3010\u73af\u5883\u914d\u7f6e\u3011\uff0c\u5373\u53ef\u67e5\u770b\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e2d\u7684\u6240\u6709\u9879\u76ee\u7684\u6240\u6709\u73af\u5883\u5217\u8868\u3002

    "},{"location":"user_manual/system_management/workspace/#51","title":"5.1 \u73af\u5883\u5217\u8868","text":"
    • \u521b\u5efa\u73af\u5883 \u70b9\u51fb\u9875\u9762\u5217\u8868\u4fe1\u606f\u5de6\u4e0a\u89d2\u7684\u3010\u521b\u5efa\u73af\u5883\u3011\uff0c\u53ef\u65b0\u589e\u6b64\u5de5\u4f5c\u7a7a\u95f4\u4e0b\u4efb\u610f\u9879\u76ee\u7684\u6d4b\u8bd5\u73af\u5883\u3002

    \u5728\u5de5\u4f5c\u7a7a\u95f4\u4e0b\u521b\u5efa\u73af\u5883\uff0c\u9700\u8981\u6307\u5b9a\u6b64\u73af\u5883\u662f\u7528\u4e8e\u54ea\u4e2a\u9879\u76ee\uff0c\u5176\u4ed6\u73af\u5883\u8bbe\u7f6e\u4fe1\u606f\u540c\u9879\u76ee\u7ba1\u7406\u91cc\u7684\u65b0\u589e\u73af\u5883\u3002

    \u53c2\u6570\u8bf4\u660e

    \u3010\u9009\u62e9\u9879\u76ee\u3011\uff1a\u6307\u5b9a\u73af\u5883\u6240\u5c5e\u7684\u9879\u76ee\uff0c\u6b64\u9879\u76ee\u662f\u5f53\u524d\u5de5\u4f5c\u7a7a\u95f4\u4e0b\uff0c\u6709\u6743\u9650\u7684\u9879\u76ee\u5217\u8868\u3002 \u3010\u73af\u5883\u540d\u79f0\u3011\uff1a\u4e3a\u65b0\u521b\u5efa\u7684\u73af\u5883\u547d\u540d\u3002 \u3010\u901a\u7528\u914d\u7f6e\u3011\uff1a\u6b64\u5904\u8bbe\u7f6e\u7684\u53d8\u91cf\u662f\u73af\u5883\u53d8\u91cf\uff0c\u53ef\u5355\u4e2a\u6dfb\u52a0\u548c\u6279\u91cf\u6dfb\u52a0\u3002IP \u548c\u57df\u540d\u6620\u5c04\u5173\u7cfb\u8bbe\u7f6e\u4ee5\u53ca\u94fe\u63a5\u8d85\u65f6\u3001\u54cd\u5e94\u8d85\u65f6\u8bbe\u7f6e\u3002 \u3010HTTP\u914d\u7f6e\u3011\uff1a\u6b64\u5904\u53ef\u914d\u7f6e\u73af\u5883\u5730\u5740\u4ee5\u53ca\u542f\u7528\u6761\u4ef6\uff0c\u4e5f\u53ef\u8bbe\u7f6e\u8bf7\u6c42\u5934\u3002 \u3010\u6570\u636e\u5e93\u914d\u7f6e\u3011\uff1a\u914d\u7f6e\u6570\u636e\u5e93\u7684\u6570\u636e\u9a71\u52a8\u4ee5\u53ca\u8fde\u63a5\u4fe1\u606f\u7b49\uff0c\u76ee\u524d\u652f\u6301 MYSQL\u3001Oracle\u3001SQLServer\u3001Postgre\u6570\u636e\u5e93 \u3010TCP \u914d\u7f6e\u3011\uff1a\u914d\u7f6e\u8fde\u63a5 TCP \u8bf7\u6c42\u7684\u76f8\u5173\u4fe1\u606f \u3010\u8bc1\u4e66\u914d\u7f6e\u3011\uff1a\u53ef\u5728\u6b64\u914d\u7f6e\u76f8\u5173\u7684\u8bc1\u4e66\u4fe1\u606f \u3010\u5168\u5c40\u524d\u7f6e\u811a\u672c\u3011\uff1a\u5168\u5c40\u524d\u7f6e\u811a\u672c\u53ef\u5206\u4e3a\u3010\u5355\u4e2a\u8bf7\u6c42\u6b65\u9aa4\u524d\u6267\u884c\u3011\u548c\u3010\u6240\u6709\u573a\u666f\u6b65\u9aa4\u524d\u6267\u884c\u3011 \u3010\u5168\u5c40\u540e\u7f6e\u811a\u672c\u3011\uff1a\u5168\u5c40\u540e\u7f6e\u811a\u672c\u53ef\u5206\u4e3a\u3010\u5355\u4e2a\u8bf7\u6c42\u6b65\u9aa4\u540e\u6267\u884c\u3011\u548c\u3010\u6240\u6709\u573a\u666f\u6b65\u9aa4\u540e\u6267\u884c\u3011 \u3010\u5168\u5c40\u8ba4\u8bc1\u914d\u7f6e\u3011\uff1a\u53ef\u914d\u7f6e\u8ba4\u8bc1\u65b9\u5f0f\u548c\u52a0\u5bc6\u7b49\u4fe1\u606f \u3010\u5168\u5c40\u65ad\u8a00\u3011\uff1a\u53ef\u542f\u7528\u8bef\u62a5\u8bbe\u7f6e\u548c\u9009\u62e9\u591a\u79cd\u7c7b\u578b\u65b9\u5f0f\u8fdb\u884c\u65ad\u8a00

    • \u901a\u7528\u914d\u7f6e \u6b64\u5904\u8bbe\u7f6e\u7684\u53d8\u91cf\u662f\u73af\u5883\u53d8\u91cf\uff0c\u7c7b\u578b\u53ef\u4ee5\u4e3a\u591a\u79cd\u7c7b\u578b\uff0c\u53ef\u5355\u4e2a\u6dfb\u52a0\u548c\u6279\u91cf\u6dfb\u52a0

    IP \u548c\u57df\u540d\u8fdb\u884c\u6620\u5c04\u914d\u7f6e\uff0c\u53ef\u8bbe\u7f6e\u94fe\u63a5\u8d85\u65f6\u3001\u54cd\u5e94\u8d85\u65f6\u65f6\u95f4

    • HTTP\u914d\u7f6e \u8bbe\u7f6e HTTP/HTTPS \u8bf7\u6c42\u5730\u5740\uff0c\u70b9\u51fb\u3010\u6dfb\u52a0\u3011\u540e\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u6309\u94ae\u5373\u53ef

    \u53ef\u8bbe\u7f6e\u6a21\u5757\u3001\u8def\u5f84\u7b49\u6761\u4ef6\u6765\u542f\u7528\u8be5\u73af\u5883

    \u53ef\u5355\u4e2a\u8bbe\u7f6e\u6216\u8005\u6279\u91cf\u8bbe\u7f6e\u8bf7\u6c42\u5934\u4fe1\u606f

    • \u6570\u636e\u5e93\u914d\u7f6e \u914d\u7f6e\u6570\u636e\u5e93\u7684\u6570\u636e\u9a71\u52a8\u4ee5\u53ca\u8fde\u63a5\u4fe1\u606f\u7b49\uff0c\u76ee\u524d\u652f\u6301 MYSQL\u3001Oracle\u3001SQLServer\u3001Postgre\u6570\u636e\u5e93

    \u6267\u884c\u591a\u6761SQL\u8bed\u53e5\u9700\u5728\u6570\u636e\u5e93\u540e\u9762\u52a0\u4e0a\u3010?allowMultiQueries=true\u3011\uff0c\u53ef\u8bbe\u7f6e\u6700\u5927\u8fde\u63a5\u6570\u548c\u8d85\u65f6\u65f6\u95f4\uff0c\u70b9\u51fb\u3010\u6821\u9a8c\u3011\u6216\u3010\u6dfb\u52a0\u3011

    • TCP \u914d\u7f6e \u53ef\u914d\u7f6e\u8fde\u63a5 TCP \u8bf7\u6c42\u7684\u76f8\u5173\u4fe1\u606f\uff0c\u4e3b\u8981\u6709 TCPClientImpl\u3001BinaryTCPClientImpl\u3001LengthPrefixedBinaryTCPClientImpl \u4e09\u79cd\u65b9\u5f0f

    • \u8bc1\u4e66\u914d\u7f6e \u8bc1\u4e66\u6587\u4ef6\u4e0a\u4f20\u652f\u6301 p12\uff0cjks\uff0cpfx \u683c\u5f0f

    • \u5168\u5c40\u524d\u7f6e\u811a\u672c \u53ef\u5728\u5355\u4e2a\u8bf7\u6c42\u6b65\u9aa4\u524d\u6267\u884c\u548c\u5728\u6240\u6709\u573a\u666f\u6b65\u9aa4\u524d\u6267\u884c\uff0c\u70b9\u51fb\u3010i\u3011\u53ef\u67e5\u770b\u63d0\u793a\u4fe1\u606f

    \u3010\u5355\u4e2a\u8bf7\u6c42\u6b65\u9aa4\u524d\u6267\u884c\u3011\u53ef\u8bbe\u7f6e\u3010\u5168\u5c40\u524d\u7f6e\u811a\u672c\u3011\u6267\u884c\u7684\u534f\u8bae\u4ee5\u53ca\u987a\u5e8f

    \u3010\u6240\u6709\u573a\u666f\u6b65\u9aa4\u524d\u6267\u884c\u3011\u53ef\u5173\u8054\u573a\u666f\u7ed3\u679c\uff0c\u573a\u666f\u6267\u884c\u6210\u529f\u4f46\u662f\u6b64\u5904\u524d\u7f6e\u811a\u672c\u6267\u884c\u5931\u8d25\uff0c\u6267\u884c\u7ed3\u679c\u662f\u663e\u793a\u5931\u8d25

    • \u5168\u5c40\u540e\u7f6e\u811a\u672c \u53ef\u53c2\u8003\u4e0a\u9762\u3010\u5168\u5c40\u524d\u7f6e\u811a\u672c\u3011
    • \u5168\u5c40\u8ba4\u8bc1\u914d\u7f6e \u53ef\u914d\u7f6e\u8ba4\u8bc1\u65b9\u5f0f\u548c\u52a0\u5bc6\u4fe1\u606f

    • \u5168\u5c40\u65ad\u8a00 \u53ef\u542f\u7528/\u5173\u95ed\u8bef\u62a5

    \u53ef\u9009\u62e9\u591a\u79cd\u7c7b\u578b\u8fdb\u884c\u65ad\u8a00\u8bbe\u7f6e\uff0c\u53ef\u52fe\u9009\u5ffd\u7565\u72b6\u6001\u7801\uff0c\u70b9\u51fb\u3010\u6dfb\u52a0\u3011\u6309\u94ae\u5373\u53ef

    • \u5bfc\u5165\u73af\u5883 \u70b9\u51fb\u3010\u5bfc\u5165\u3011\u6309\u94ae\u5bfc\u5165\u73af\u5883\uff0c\u4ec5\u652f\u6301\u901a\u8fc7 metersphere \u5bfc\u51fa\u7684 json \u6587\u4ef6\u3002

    \u5bfc\u5165\u652f\u6301\u4e3a\u4e00\u4e2a\u9879\u76ee\u6279\u91cf\u521b\u5efa\u4e0d\u540c\u7684\u73af\u5883\u3002

    • \u5bfc\u51fa\u73af\u5883 \u70b9\u51fb\u3010\u5bfc\u51fa\u73af\u5883\u3011\u6309\u94ae\u5bfc\u51fa\u73af\u5883\uff0c\u5c06\u73af\u5883\u5bfc\u51fa\u7684 json \u6587\u4ef6\u3002

    • \u7f16\u8f91\u73af\u5883 \u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\u7f16\u8f91\u73af\u5883\uff0c\u53ef\u4fee\u6539\u73af\u5883\u914d\u7f6e\u3002

    • \u590d\u5236\u73af\u5883 \u70b9\u51fb\u3010\u590d\u5236\u3011\u6309\u94ae\u8fdb\u884c\u590d\u5236\u73af\u5883\uff0c\u53ef\u590d\u5236\u5f53\u524d\u73af\u5883\u914d\u7f6e\u3002

    • \u5220\u9664\u73af\u5883 \u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\uff0c\u5373\u53ef\u5220\u9664\u73af\u5883\u914d\u7f6e\u3002

    "},{"location":"user_manual/system_management/workspace/#52","title":"5.2 \u73af\u5883\u7ec4","text":"
    • \u521b\u5efa\u73af\u5883\u7ec4 MeterSphere \u652f\u6301\u8de8\u9879\u76ee\u8fdb\u884c\u63a5\u53e3\u3001\u63a5\u53e3\u7528\u4f8b\u3001\u573a\u666f\u7528\u4f8b\u7b49\u81ea\u52a8\u5316\u811a\u672c\u5f15\u7528\uff0c\u53ef\u4ee5\u6839\u636e\u4e0d\u540c\u9879\u76ee\u3001\u5df2\u7ecf\u4e0d\u540c\u73af\u5883\u7ec4\u5408\u6210\u4e00\u4e2a\u73af\u5883\u7ec4\uff0c\u5f53\u81ea\u52a8\u5316\u6267\u884c\u65f6\uff0c\u53ef\u4ee5\u76f4\u63a5\u9009\u62e9\u8be5\u73af\u5883\u7ec4\u3002 \u70b9\u51fb\u3010\u521b\u5efa\u73af\u5883\u7ec4\u3011\uff0c\u9009\u62e9\u4e0d\u540c\u9879\u76ee\u3001\u4e0d\u540c\u73af\u5883\u4fe1\u606f\u3002
    • \u7f16\u8f91\u73af\u5883\u7ec4 \u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\u7f16\u8f91\u73af\u5883\u7ec4\uff0c\u53ef\u4fee\u6539\u5f53\u524d\u73af\u5883\u7ec4\u3002
    • \u590d\u5236\u73af\u5883\u7ec4 \u70b9\u51fb\u3010\u590d\u5236\u3011\u6309\u94ae\uff0c\u590d\u5236\u73af\u5883\u7ec4\u3002
    • \u5220\u9664\u73af\u5883\u7ec4 \u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u6839\u636e\u63d0\u793a\u4fe1\u606f\u8f93\u5165\u540e\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u6309\u94ae\uff0c\u5220\u9664\u73af\u5883\u7ec4\u3002
    "},{"location":"user_manual/system_management/workspace/#6","title":"6 \u64cd\u4f5c\u65e5\u5fd7","text":"

    \u663e\u793a\u767b\u5f55\u7528\u6237\u6240\u5904\u3010\u5de5\u4f5c\u7a7a\u95f4\u3011\u4e0b\u7684\u6240\u6709\u6709\u6743\u9650\u3010\u9879\u76ee\u3011\u7684\u6d4b\u8bd5\u8d44\u6e90\u65e5\u5fd7\u4fe1\u606f\u3002

    "},{"location":"user_manual/test_track/home/","title":"\u9996\u9875","text":"

    \u6d4b\u8bd5\u8ddf\u8e2a\u7684\u9996\u9875\u4e3b\u8981\u7528\u4e8e\u5c55\u793a\u73b0\u6709\u9879\u76ee\u7684\u7528\u4f8b\u6570\u91cf\u3001\u5173\u8054\u7528\u4f8b\u6570\u91cf\u3001\u7528\u4f8b\u7ef4\u62a4\u4eba\u5206\u5e03\u3001\u4ee5\u53ca\u8fc7\u53bb7\u5929\u6d4b\u8bd5\u8ba1\u5212\u5931\u8d25\u7528\u4f8bTOP 10\u3001\u8fd0\u884c\u4e2d\u7684\u5b9a\u65f6\u4efb\u52a1\u7b49\u4fe1\u606f\u3002

    "},{"location":"user_manual/test_track/intro/","title":"\u6982\u8ff0","text":"

    Meterphere \u6d4b\u8bd5\u8ddf\u8e2a\u6a21\u5757\u56f4\u7ed5\u6d4b\u8bd5\u7528\u4f8b\u53ca\u6d4b\u8bd5\u8ba1\u5212\u63d0\u4f9b\u4ee5\u4e0b\u4e3b\u8981\u529f\u80fd\uff1a

    • \u9996\u9875\u4fe1\u606f\u5c55\u793a\uff1a\u9996\u9875\u96c6\u4e2d\u5c55\u793a\u4e86\u5f53\u524d\u9879\u76ee\u7684\u7528\u4f8b\u6570\u91cf\u7edf\u8ba1\u3001\u5173\u8054\u7528\u4f8b\u6570\u91cf\u7edf\u8ba1\u3001\u7528\u4f8b\u7ef4\u62a4\u4eba\u5206\u5e03\u3001\u9057\u7559\u7f3a\u9677\u7edf\u8ba1\u3001\u8fc7\u53bb7\u5929\u6d4b\u8bd5\u8ba1\u5212\u5931\u8d25\u7528\u4f8bTOP 10\u3001\u6d4b\u8bd5\u7528\u4f8b\u8bc4\u5ba1\u3001\u5b9a\u65f6\u4efb\u52a1\u7b49\u4fe1\u606f\u3002
    • \u529f\u80fd\u7528\u4f8b\uff1a\u652f\u6301\u5728\u7ebf\u8868\u5355\u3001\u8111\u56fe\u65b9\u5f0f\u521b\u5efa\u6d4b\u8bd5\u7528\u4f8b\uff0c\u521b\u5efa\u7528\u4f8b\u65f6\u5173\u8054\u5176\u4ed6\u7c7b\u578b\u6d4b\u8bd5\u7528\u4f8b\uff08\u6bd4\u5982\u63a5\u53e3\u7528\u4f8b\u3001\u573a\u666f\u7528\u4f8b\u3001\u6027\u80fd\u7528\u4f8b\uff09\uff0c\u652f\u6301\u6d4b\u8bd5\u7528\u4f8b\u5bfc\u5165\u3001\u5bfc\u51fa\uff0c\u5bfc\u5165\u5bfc\u51fa\u683c\u5f0f\u652f\u6301 Excel\u3001Xmind \u7b49\u591a\u79cd\u6587\u4ef6\u683c\u5f0f\u3002
    • \u7528\u4f8b\u8bc4\u5ba1\uff1a\u652f\u6301\u521b\u5efa\u8bc4\u5ba1\uff0c\u5173\u8054\u53ca\u53d6\u6d88\u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\uff0c\u5728\u7ebf\u8bc4\u5ba1\u5e76\u53cd\u9988\u8bc4\u5ba1\u662f\u5426\u901a\u8fc7\u53ca\u8bc4\u5ba1\u5177\u4f53\u610f\u89c1\u5efa\u8bae\u3002
    • \u6d4b\u8bd5\u8ba1\u5212\uff1a\u652f\u6301\u5217\u8868\u663e\u793a\u3001\u521b\u5efa\u3001\u7f16\u8f91\u3001\u5220\u9664\u6d4b\u8bd5\u8ba1\u5212\uff0c\u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\uff0c\u5728\u7ebf\u66f4\u65b0\u53cd\u9988\u6d4b\u8bd5\u7528\u4f8b\u7684\u6d4b\u8bd5\u7ed3\u679c\uff0c\u5305\u62ec\"\u901a\u8fc7\"\u3001\"\u5931\u8d25\"\u3001\"\u963b\u585e\"\u3001\"\u8df3\u8fc7\"\uff0c\u4ee5\u53ca\u5728\u7ebf\u81ea\u52a8\u5b9e\u65f6\u7edf\u8ba1\u663e\u793a\u6d4b\u8bd5\u8ba1\u5212\u5bf9\u5e94\u7684\u6d4b\u8bd5\u62a5\u544a\uff0c\u5bfc\u51faHTML\u683c\u5f0f\u6d4b\u8bd5\u62a5\u544a\u548c\u5206\u4eab\u62a5\u544a\u94fe\u63a5\u3002\u540c\u65f6\u6d4b\u8bd5\u62a5\u544a\u6a21\u677f\u53ef\u81ea\u5b9a\u4e49\uff0c\u80fd\u591f\u4e0e\u5e73\u53f0\u4e2d\u7684\u63a5\u53e3\u6d4b\u8bd5\u3001\u6027\u80fd\u6d4b\u8bd5\u529f\u80fd\u8054\u52a8\uff0c\u81ea\u52a8\u66f4\u65b0\u5173\u8054\u7528\u4f8b\u7684\u7ed3\u679c\uff0c\u8bb0\u5f55\u6d4b\u8bd5\u7528\u4f8b\u5173\u8054\u7684\u7f3a\u9677\uff0c\u7f3a\u9677\u8bb0\u5f55\u652f\u6301\u5173\u8054\u5230 JIRA / TAPD\u3002
    • \u7f3a\u9677\u7ba1\u7406\uff1a\u7ba1\u7406\u8be5\u9879\u76ee\u4e0b\u6240\u6709\u7684\u7f3a\u9677\u4fe1\u606f\uff0c\u5982\u679c\u9879\u76ee\u8bbe\u7f6e\u5173\u8054\u4e86\u5176\u4ed6BUG\u5e73\u53f0\uff08\u6bd4\u5982JIRA\u3001TAPD\u3001\u7985\u9053\u7b49\uff09\uff0c\u5219\u6b64Bug\u4f1a\u81ea\u52a8\u540c\u6b65\u5230\u76f8\u5e94\u7684\u5e73\u53f0\u3002
    • \u62a5\u544a\uff1a\u63d0\u4f9b\u76f4\u89c2\u3001\u7f8e\u89c2\u7684\u9875\u9762\u5bf9\u6d4b\u8bd5\u8ba1\u5212\u7ed3\u679c\u8fdb\u884c\u53ef\u89c6\u5316\u5c55\u793a\uff0c\u540c\u65f6\u63d0\u4f9b\u5bfc\u51fa\u62a5\u544a\u7b49\u529f\u80fd\u65b9\u4fbf\u5bf9\u6d4b\u8bd5\u7ed3\u679c\u8fdb\u884c\u5f52\u6863\u53ca\u5206\u4eab\uff0c\u540c\u65f6\u53ef\u81ea\u5b9a\u4e49\u914d\u7f6e\u62a5\u544a\u6a21\u7248\u3002
    "},{"location":"user_manual/test_track/test_case_review/","title":"\u7528\u4f8b\u8bc4\u5ba1","text":"

    \u7528\u4f8b\u8bc4\u5ba1\u652f\u6301\u521b\u5efa\u8bc4\u5ba1\uff0c\u5173\u8054\u53ca\u53d6\u6d88\u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\uff0c\u5728\u7ebf\u8bc4\u5ba1\u5e76\u53cd\u9988\u8bc4\u5ba1\u662f\u5426\u901a\u8fc7\u53ca\u8bc4\u5ba1\u5177\u4f53\u610f\u89c1\u5efa\u8bae\u3002 \u70b9\u51fb\u3010\u7528\u4f8b\u8bc4\u5ba1\u3011\u53ef\u67e5\u770b\u5f53\u524d\u9879\u76ee\u4e2d\u6240\u6709\u7684\u6d4b\u8bd5\u7528\u4f8b\u8bc4\u5ba1\u3002

    \u8fdb\u5165\u6d4b\u8bd5\u7528\u4f8b\u8bc4\u5ba1\u8be6\u60c5\u9875\u65f6\uff0c\u7cfb\u7edf\u63d0\u4f9b\u4e86\u4e24\u79cd\u7528\u4f8b\u663e\u793a\u6a21\u5f0f\uff1a\u5217\u8868\u548c\u8111\u56fe\u3002

    \u540c\u65f6\u53ef\u521b\u5efa\u3001\u7f16\u8f91\u3001\u5220\u9664\u3001\u5f00\u542f\u7528\u4f8b\u8bc4\u5ba1\u3001\u67e5\u8be2\u7b49\u7b49\u76f8\u5173\u64cd\u4f5c\u3002

    "},{"location":"user_manual/test_track/test_case_review/#1","title":"1 \u521b\u5efa\u7528\u4f8b\u8bc4\u5ba1\u4efb\u52a1","text":"

    \u70b9\u51fb\u3010\u521b\u5efa\u7528\u4f8b\u8bc4\u5ba1\u3011\u6309\u94ae\uff0c\u521b\u5efa\u4e00\u4e2a\u7528\u4f8b\u8bc4\u5ba1\u3002

    \u8bc4\u5ba1\u901a\u8fc7\u6807\u51c6

    • \u3010\u5168\u90e8\u901a\u8fc7\u3011\uff1a\u6240\u6709\u8bc4\u5ba1\u4eba\u90fd\u901a\u8fc7\u624d\u901a\u8fc7\u3002
    • \u3010\u5355\u4eba\u901a\u8fc7\u3011\uff1a\u4efb\u610f\u8bc4\u5ba1\u4eba\u901a\u8fc7\u5219\u901a\u8fc7\u3002

    \u5728\u8bc4\u5ba1\u4efb\u52a1\u6267\u884c\u4e3b\u9875\uff0c\u70b9\u51fb\u53f3\u4fa7\u5217\u8868\u4e0a\u65b9\u7684\u3010\u5173\u8054\u7528\u4f8b\u3011\u6309\u94ae\u4e3a\u8bc4\u5ba1\u4efb\u52a1\u5173\u8054\u7528\u4f8b\u3002

    \u5728\u5f39\u51fa\u7684\u7528\u4f8b\u9009\u62e9\u5217\u8868\u4e2d\uff0c\u9009\u62e9\u8981\u6dfb\u52a0\u5230\u6b64\u6b21\u7528\u4f8b\u8bc4\u5ba1\u4efb\u52a1\u4e2d\u7684\u6d4b\u8bd5\u7528\u4f8b\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u5b8c\u6210\u6dfb\u52a0\u3002

    "},{"location":"user_manual/test_track/test_case_review/#2","title":"2 \u7f16\u8f91\u8bc4\u5ba1","text":"

    \u5728\u6d4b\u8bd5\u7528\u4f8b\u8bc4\u5ba1\u8bb0\u5f55\u4e2d\uff0c\u9f20\u6807\u70b9\u51fb\u67d0\u6761\u8bb0\u5f55\uff0c\u6216\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u8fdb\u5165\u8be5\u8bc4\u5ba1\u8bb0\u5f55\u7684\u7ef4\u62a4\u4fe1\u606f\u9875\u9762\u3002

    "},{"location":"user_manual/test_track/test_case_review/#21","title":"2.1 \u5173\u8054\u7528\u4f8b","text":"

    \u70b9\u51fb\u3010\u5173\u8054\u7528\u4f8b\u3011\uff0c\u53ef\u5c06\u9700\u8981\u8bc4\u5ba1\u7684\u6d4b\u8bd5\u7528\u4f8b\u8fdb\u884c\u5173\u8054\uff0c\u8fd9\u662f\u5f00\u542f\u8bc4\u5ba1\u6d4b\u8bd5\u7528\u4f8b\u7684\u524d\u63d0\u3002

    \u540c\u65f6\u7cfb\u7edf\u652f\u6301\u8de8\u9879\u76ee\u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\u3002

    \u9009\u62e9\u9700\u8bc4\u5ba1\u7684\u6d4b\u8bd5\u7528\u4f8b\u540e\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u5373\u53ef\u5b8c\u6210\u6d4b\u8bd5\u7528\u4f8b\u7684\u5173\u8054\u3002

    "},{"location":"user_manual/test_track/test_case_review/#22","title":"2.2 \u53d6\u6d88\u5173\u8054","text":"

    \u70b9\u51fb\u529f\u80fd\u6d4b\u8bd5\u7528\u4f8b\u5217\u8868\u7684\u3010\u53d6\u6d88\u7528\u4f8b\u5173\u8054\u3011\u6309\u94ae\uff0c\u53ef\u4ee5\u53d6\u6d88\u8be5\u7528\u4f8b\u4e0e\u7528\u4f8b\u8bc4\u5ba1\u7684\u5173\u8054\uff0c\u53d6\u6d88\u540e\uff0c\u8be5\u7528\u4f8b\u5728\u7528\u4f8b\u5217\u8868\u4e2d\u6d88\u5931\u3002\u5f53\u6709\u591a\u6761\u7684\u7528\u4f8b\u9700\u8981\u53d6\u6d88\u5173\u8054\u65f6\uff0c\u53ef\u4ee5\u53bb\u52fe\u9009\u76f8\u5173\u7684\u7528\u4f8b\uff0c\u70b9\u51fb\u3010\u6279\u91cf\u53d6\u6d88\u5173\u8054\u3011\u6309\u94ae\uff0c\u4e00\u6b21\u6027\u5bf9\u591a\u6761\u7528\u4f8b\u53d6\u6d88\u5173\u8054\u3002

    "},{"location":"user_manual/test_track/test_case_review/#3","title":"3 \u5f00\u59cb\u8bc4\u5ba1","text":"

    \u6d4b\u8bd5\u7528\u4f8b\u8bc4\u5ba1\u5206\u4e3a\u4e24\u79cd\u6a21\u5f0f\uff0c\u4e00\u79cd\u662f\u4ee5\u5217\u8868\u6a21\u5f0f\u8fdb\u884c\u8bc4\u5ba1\uff1b\u7b2c\u4e8c\u79cd\u65b9\u5f0f\u662f\u4ee5\u8111\u56fe\u6a21\u5f0f\u8fdb\u884c\u8bc4\u5ba1\u3002

    "},{"location":"user_manual/test_track/test_case_review/#31","title":"3.1 \u5217\u8868\u6a21\u5f0f\u8bc4\u5ba1","text":"

    \u4e3a\u8bc4\u5ba1\u4efb\u52a1\u6dfb\u52a0\u5b8c\u7528\u4f8b\u540e\uff0c\u70b9\u51fb\u3010\u5f00\u59cb\u8bc4\u5ba1\u3011\u6309\u94ae\u8fdb\u5165\u7528\u4f8b\u8be6\u60c5\u9875\uff0c\u9ed8\u8ba4\u4ece\u4efb\u52a1\u5217\u8868\u7684\u7b2c\u4e00\u6761\u7528\u4f8b\u5b9e\u65bd\u8bc4\u5ba1\uff0c\u7528\u6237\u4e5f\u53ef\u4ee5\u70b9\u51fb\u4efb\u610f\u4e00\u6761\u7528\u4f8b\u7684\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u4ece\u8be5\u6761\u7528\u4f8b\u5f00\u59cb\u5b9e\u65bd\u8bc4\u5ba1\u3002

    \u8fdb\u5165\u7528\u4f8b\u8bc4\u5ba1\u8be6\u60c5\u9875\u9762\uff0c\u4f7f\u7528\u3010\u7ffb\u9875\u3011\u6309\u94ae\u5feb\u901f\u5207\u6362\u7528\u4f8b\uff0c\u4f7f\u7528\u6807\u7b7e\u5feb\u6377\u6807\u6ce8\u7528\u4f8b\u8bc4\u5ba1\u7ed3\u679c\uff0c\u6807\u6ce8\u540e\u7684\u8bc4\u5ba1\u7ed3\u679c\u5c06\u4f1a\u5728\u7528\u4f8b\u5217\u8868\u4e2d\u663e\u793a\u3002\u540c\u65f6\u652f\u6301\u7528\u6237\u4e3a\u6b64\u6b21\u8bc4\u5ba1\u53d1\u8868\u8bc4\u8bba\u3002

    • \u67e5\u770b\u7528\u4f8b\u5173\u8054\u7f3a\u9677 \u7528\u6237\u53ef\u4ee5\u67e5\u770b\u8bc4\u5ba1\u7528\u4f8b\u5173\u8054\u7684\u7f3a\u9677\u3002

    • \u6279\u91cf\u66f4\u6539\u8bc4\u5ba1\u7ed3\u679c \u5f53\u591a\u4e2a\u7528\u4f8b\u7684\u8bc4\u5ba1\u7ed3\u679c\u76f8\u540c\u6216\u53d1\u751f\u76f8\u540c\u53d8\u66f4\uff0c\u53ef\u4ee5\u9009\u4e2d\u76f8\u5e94\u7528\u4f8b\uff0c\u8fdb\u5165\u3010\u6279\u91cf\u7f16\u8f91\u3011\u5f39\u7a97\uff0c\u5bf9\u8bc4\u5ba1\u7ed3\u679c\u8fdb\u884c\u7edf\u4e00\u7f16\u8f91\u3002

    "},{"location":"user_manual/test_track/test_case_review/#32","title":"3.2 \u6307\u5b9a\u7528\u4f8b\u8bc4\u5ba1","text":"

    \u5982\u679c\u4e0d\u662f\u4ece\u5934\u5f00\u59cb\u505a\u6d4b\u8bd5\u7528\u4f8b\u8bc4\u5ba1\uff0c\u53ef\u4ee5\u7528\u9f20\u6807\u70b9\u51fb\u5177\u4f53\u7684\u67d0\u4e2a\u6d4b\u8bd5\u7528\u4f8b\uff0c\u6216\u8005\u70b9\u51fb\u3010\u7f16\u8f91\u3011\uff0c\u8fdb\u5165\u6307\u5b9a\u6d4b\u8bd5\u7528\u4f8b\u7684\u8bc4\u5ba1\u3002

    "},{"location":"user_manual/test_track/test_case_review/#33","title":"3.3 \u8111\u56fe\u6a21\u5f0f\u8bc4\u5ba1\u7528\u4f8b","text":"

    \u9664\u4e86\u901a\u8fc7\u5217\u8868\u53ca\u8868\u5355\u65b9\u5f0f\u8bc4\u5ba1\u7528\u4f8b\u5916\uff0c\u7528\u6237\u8fd8\u53ef\u4ee5\u901a\u8fc7\u8111\u56fe\u65b9\u5f0f\u5b9e\u73b0\u6b64\u529f\u80fd\u3002\u5728\u7528\u4f8b\u5217\u8868\u9875\u9762\u70b9\u51fb\u3010\u8111\u56fe\u3011\u5207\u6362\u5230\u8111\u56fe\u5c55\u793a\u6a21\u5f0f\uff0c\u9009\u4e2d\u5f85\u8bc4\u5ba1\u7528\u4f8b\uff0c\u901a\u8fc7\u6dfb\u52a0\u6807\u7b7e\u7684\u65b9\u5f0f\u6765\u6807\u8bb0\u7528\u4f8b\u8bc4\u5ba1\u7ed3\u679c\u3002

    "},{"location":"user_manual/test_track/test_case_review/#4","title":"4 \u91cd\u65b0\u63d0\u5ba1","text":"

    \u5f53\u8bc4\u5ba1\u6d3b\u52a8\u4e2d\u7684\u7528\u4f8b\u53d1\u751f\u5185\u5bb9\u53d8\u66f4\u540e\uff0c\u7528\u4f8b\u72b6\u6001\u4f1a\u81ea\u52a8\u5207\u6362\u4e3a\u3010\u91cd\u65b0\u63d0\u5ba1\u3011\u72b6\u6001\u3002

    \u8bc4\u5ba1\u4eba\u53ef\u5feb\u901f\u68c0\u7d22\u51fa\u9700\u8981\u91cd\u65b0\u8bc4\u5ba1\u7684\u7528\u4f8b\u3002\u8bc4\u5ba1\u5217\u8868\u4e2d\u8fd8\u652f\u6301\u624b\u52a8\u66f4\u65b0\u4e3a\u3010\u91cd\u65b0\u63d0\u5ba1\u3011\u72b6\u6001\u3002

    \u5f00\u542f\u91cd\u65b0\u63d0\u5ba1

    \u3010\u91cd\u65b0\u63d0\u5ba1\u3011\u6d41\u7a0b\u9700\u8981\u5728\u3010\u9879\u76ee\u7ba1\u7406\u3011-> \u3010\u66f4\u591a\u9009\u9879\u3011 ->\u3010\u5e94\u7528\u7ba1\u7406\u3011->\u3010\u6d4b\u8bd5\u8ddf\u8e2a\u3011\u9009\u9879\u5361\u4e2d\u5f00\u542f\u3010\u91cd\u65b0\u63d0\u5ba1\u3011\u5f00\u5173\u3002

    "},{"location":"user_manual/test_track/test_case_review/#5","title":"5 \u6279\u91cf\u64cd\u4f5c","text":"

    \u529f\u80fd\u8be6\u7ec6\u4ecb\u7ecd\u53ca\u4f7f\u7528\u8bf4\u660e\u53c2\u8003 \u901a\u7528\u529f\u80fd->\u8868\u5934\u529f\u80fd\u3002\u52fe\u9009\u6216\u5168\u9009\u6240\u6709\u7528\u4f8b\uff0c\u70b9\u51fb\u3010\u2026\u3011\u6309\u94ae\uff0c\u53ef\u5bf9\u5176\u505a\u6279\u91cf\u7684\u7f16\u8f91\u548c\u53d6\u6d88\u7b49\u76f8\u5173\u64cd\u4f5c\u3002

    "},{"location":"user_manual/test_track/test_case_review/#51","title":"5.1 \u6279\u91cf\u7f16\u8f91","text":"

    \u5f53\u6709\u5f88\u591a\u7528\u4f8b\u7684\u8bc4\u5ba1\u7ed3\u679c\u76f8\u540c\uff0c\u53ef\u4ee5\u53bb\u52fe\u9009\u5bf9\u5e94\u7684\u7528\u4f8b\uff0c\u8fdb\u5165\u5230\u6279\u91cf\u7f16\u8f91\u5f39\u7a97\uff0c\u70b9\u51fb\u3010\u6279\u91cf\u7f16\u8f91\u3011\uff0c\u5bf9\u8bc4\u5ba1\u7ed3\u679c\u505a\u7edf\u4e00\u7684\u7f16\u8f91\u3002

    "},{"location":"user_manual/test_track/test_case_review/#52","title":"5.2 \u6279\u91cf\u53d6\u6d88\u5173\u8054","text":"

    \u53d6\u6d88\u5173\u8054\u7684\u76ee\u7684\u5c31\u662f\u8be5\u8bc4\u5ba1\u4e2d\u4e0d\u5305\u542b\u6b64\u6d4b\u8bd5\u7528\u4f8b\uff0c\u4ec5\u4ec5\u662f\u4fee\u6539\u4e86\u8bc4\u5ba1\u7528\u4f8b\u7684\u8303\u56f4\uff0c\u5bf9\u6d4b\u8bd5\u7528\u4f8b\u6ca1\u6709\u4efb\u4f55\u4fee\u6539\u548c\u5f71\u54cd\u3002 \u9009\u62e9\u3010\u6279\u91cf\u53d6\u6d88\u5173\u8054\u3011\uff0c\u53ef\u4ee5\u4e00\u6b21\u6027\u8bbe\u7f6e\u6b64\u6b21\u8bc4\u5ba1\u4e0d\u5305\u542b\u591a\u6761\u6307\u5b9a\u7684\u6d4b\u8bd5\u7528\u4f8b\u3002

    "},{"location":"user_manual/test_track/test_defect/","title":"\u7f3a\u9677\u7ba1\u7406","text":"

    \u7f3a\u9677\u7ba1\u7406\u7528\u4e8e\u7ba1\u7406\u8be5\u9879\u76ee\u4e0b\u6240\u6709\u7684\u7f3a\u9677\u4fe1\u606f\uff0c\u5982\u679c\u9879\u76ee\u5df2\u5173\u8054\u5176\u4ed6\u7b2c\u4e09\u65b9\u7f3a\u9677\u7ba1\u7406\u5e73\u53f0\uff0c\u5219 MeterSphere \u5e73\u53f0\u4e0a\u7684 Bug \u72b6\u6001\u4f1a\u81ea\u52a8\u540c\u6b65\u5230\u5173\u8054\u5e73\u53f0\u3002 \u6b64\u7f3a\u9677\u7ba1\u7406\u662f\u7ba1\u7406\u8be5\u9879\u76ee\u4e0b\u6240\u6709\u7684\u7f3a\u9677\u4fe1\u606f\uff0c\u5982\u679c\u9879\u76ee\u8bbe\u7f6e\u4e86\u548c\u5176\u4ed6BUG\u5e73\u53f0\uff08\u6bd4\u5982 Jira\u3001TAPD\u3001\u7985\u9053\u7b49\uff09\u5173\u8054\uff0c\u5219\u6b64 Bug \u4f1a\u81ea\u52a8\u540c\u6b65\u5230\u76f8\u5e94\u7684\u5e73\u53f0\u3002

    "},{"location":"user_manual/test_track/test_defect/#1","title":"1 \u521b\u5efa\u7f3a\u9677","text":"

    \u70b9\u51fb\u5de6\u4e0a\u89d2\u7684\u3010\u521b\u5efa\u7f3a\u9677\u3011\uff0c\u53ef\u4ee5\u5728\u6b64\u521b\u5efa\u7f3a\u9677\uff0c\u4f46\u5728\u6b64\u521b\u5efa\u7684\u7f3a\u9677\u9700\u8981\u624b\u52a8\u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\u3002

    \u4e5f\u53ef\u4ee5\u5728\u6d4b\u8bd5\u7528\u4f8b\u6267\u884c\u4e2d\u521b\u5efa\u7f3a\u9677\u6216\u5173\u8054\u7f3a\u9677\u3002

    "},{"location":"user_manual/test_track/test_defect/#2-x-pack","title":"2 \u540c\u6b65\u7f3a\u9677 (X-Pack)","text":"

    \u70b9\u51fb\u5de6\u4e0a\u89d2\u7684\u3010\u540c\u6b65\u7f3a\u9677\u3011\uff0c\u5373\u53ef\u5c06\u7f3a\u9677\u540c\u6b65\u5230\u7b2c\u4e09\u65b9\u96c6\u6210\u5e73\u53f0\uff0c\u7b2c\u4e09\u65b9\u96c6\u6210\u5e73\u53f0\u7684\u7f3a\u9677\u4e5f\u4f1a\u540c\u6b65\u5230 MeterSphere \u4e2d\u3002

    "},{"location":"user_manual/test_track/test_defect/#3","title":"3 \u5bfc\u5165\u7f3a\u9677","text":"

    \u70b9\u51fb\u9875\u9762\u7684\u3010\u5bfc\u5165\u3011\u6309\u94ae\uff0c\u4e0b\u8f7d\u5bfc\u5165\u7f3a\u9677\u6a21\u677f\uff0c\u6309\u7167\u7f3a\u9677\u6a21\u677f\u7684\u89c4\u5219\u8fdb\u884c\u586b\u5199\uff0c\u9009\u62e9\u8986\u76d6\u6216\u8005\u4e0d\u8986\u76d6\u8fdb\u884c\u4e0a\u4f20\u5373\u53ef\u3002

    "},{"location":"user_manual/test_track/test_defect/#4","title":"4 \u5bfc\u51fa\u7f3a\u9677","text":"

    \u9009\u62e9\u7f3a\u9677\uff0c\u70b9\u51fb\u9875\u9762\u7684\u3010\u5bfc\u51fa\u3011\u6309\u94ae\uff0c\u52fe\u9009\u5bfc\u51fa\u5b57\u6bb5\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u6309\u94ae\u5373\u53ef\u3002

    "},{"location":"user_manual/test_track/test_report/","title":"\u62a5\u544a","text":"

    \u5bf9\u6d4b\u8bd5\u8ba1\u5212\u3001\u63a5\u53e3\u6d4b\u8bd5\u3001\u6027\u80fd\u6d4b\u8bd5\u7b49\uff0c\u7cfb\u7edf\u90fd\u652f\u6301\u63d0\u4f9b\u5b9e\u65f6\u7684\u6d4b\u8bd5\u62a5\u544a\uff0c\u652f\u6301\u5206\u4eab\u3001\u5bfc\u51fa\u6d4b\u8bd5\u62a5\u544a\uff08html\u683c\u5f0f\uff09\u7b49\u3002

    "},{"location":"user_manual/test_track/test_report/#1","title":"1 \u62a5\u544a\u8be6\u60c5\u4ecb\u7ecd","text":"

    \u5bf9\u4e8e\u6d4b\u8bd5\u8ba1\u5212\u7684\u6d4b\u8bd5\u62a5\u544a\uff0c\u5305\u542b\u5404\u7c7b\u6d4b\u8bd5\u7684\u8fdb\u5ea6\u7edf\u8ba1\u3001\u811a\u672c\u7edf\u8ba1\u3001\u7f3a\u9677\u7edf\u8ba1\u4ee5\u53ca\u8be6\u60c5\u7b49\u3002

    "},{"location":"user_manual/test_track/test_report/#11","title":"1.1 \u62a5\u544a\u603b\u7ed3","text":"

    \u5728\u3010\u6d4b\u8bd5\u8ba1\u5212\u3011\u9875\u9762\uff0c\u70b9\u51fb\u3010\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u3011\uff0c\u53ef\u7f16\u8f91\u6d4b\u8bd5\u62a5\u544a\u603b\u7ed3\u3002\u70b9\u51fb\u3010\u62a5\u544a\u3011\uff0c\u8fdb\u5165\u6d4b\u8bd5\u62a5\u544a\u9875\u9762\uff0c\u53ef\u770b\u5230\u6b64\u6b21\u62a5\u544a\u7684\u603b\u7ed3\u63cf\u8ff0\u3002

    "},{"location":"user_manual/test_track/test_report/#12","title":"1.2 \u529f\u80fd\u6d4b\u8bd5\u90e8\u5206","text":"

    \u62a5\u544a\u4e2d\u529f\u80fd\u6d4b\u8bd5\u7edf\u8ba1\u5206\u6790\u4e2d\uff0c\u63d0\u4f9b\u4e86\u76f8\u5173\u591a\u4e2a\u9875\u7b7e\u3002\u6bd4\u5982\u6d4b\u8bd5\u7ed3\u679c\u3001\u5931\u8d25\u7528\u4f8b\u3001\u7f3a\u9677\u5217\u8868\u3001\u6240\u6709\u7528\u4f8b\u7b49\u3002 \u6d4b\u8bd5\u7ed3\u679c\u7edf\u8ba1\uff0c\u9ed8\u8ba4\u6b64\u4ee5\u56fe\u5f62\u5316\u5c55\u793a\u3002

    \u540c\u65f6\u652f\u6301\u7528\u6237\u81ea\u5b9a\u4e49\u6307\u5b9a\u7edf\u8ba1\u5404\u4e2a\u6307\u6807\uff0c\u7edf\u8ba1\u56fe\u8868\u4e3a\u81ea\u52a8\u91cd\u65b0\u7edf\u8ba1\u3002

    \u62a5\u544a\u4e2d\u3010\u7f3a\u9677\u5217\u8868\u3001\u6240\u6709\u7528\u4f8b\u3001\u5931\u8d25\u7528\u4f8b\u3001\u5835\u585e\u7528\u4f8b\u3001\u8df3\u8fc7\u7528\u4f8b\u3011\u90fd\u662f\u4ee5\u5217\u8868\u7684\u5f62\u5f0f\u663e\u793a\u5176\u76f8\u5173\u660e\u7ec6\u3002

    "},{"location":"user_manual/test_track/test_report/#13","title":"1.3 \u63a5\u53e3\u6d4b\u8bd5\u90e8\u5206","text":"

    \u62a5\u544a\u4e2d\u63a5\u53e3\u6d4b\u8bd5\u7edf\u8ba1\u5206\u6790\uff0c\u63d0\u4f9b\u4e86\u76f8\u5173\u591a\u4e2a\u9875\u7b7e\u3002 \u6d4b\u8bd5\u7ed3\u679c\u7edf\u8ba1\uff0c\u9ed8\u8ba4\u6b64\u4ee5\u56fe\u5f62\u5316\u5c55\u793a\u3002\u540c\u65f6\u628a\u9f20\u6807\u60ac\u6d6e\u5728\u67f1\u72b6\u56fe\u4e0a\uff0c\u53ef\u51fa\u73b0\u6b64\u67f1\u72b6\u76f8\u5173\u7edf\u8ba1\u4fe1\u606f\u3002

    \u62a5\u544a\u4e2d\u3010\u5931\u8d25\u7528\u4f8b\u3001\u6240\u6709\u7528\u4f8b\u3011\u90fd\u662f\u4ee5\u5217\u8868\u7684\u5f62\u5f0f\u663e\u793a\u5176\u76f8\u5173\u660e\u7ec6\u3002 \u6240\u6709\u7528\u4f8b\u5305\u542b\u3010\u63a5\u53e3\u7528\u4f8b\u3011\u548c\u3010\u573a\u666f\u7528\u4f8b\u3011\u4e24\u4e2a\u9875\u7b7e\u3002

    \u9009\u62e9\u3010\u63a5\u53e3\u7528\u4f8b\u3011\uff0c\u70b9\u51fb\u5de6\u4fa7\u63a5\u53e3\u7528\u4f8b\u5217\u8868\u4e2d\u7684\u67d0\u4e2a\u63a5\u53e3\uff0c\u5176\u53f3\u4fa7\u53ef\u5448\u73b0\u8be5\u63a5\u53e3\u8fd0\u884c\u65f6\u8be6\u7ec6\u7684\u6d4b\u8bd5\u6570\u636e\u53ca\u7ed3\u679c\u3002

    \u9009\u62e9\u3010\u573a\u666f\u7528\u4f8b\u3011\uff0c\u70b9\u51fb\u5de6\u4fa7\u573a\u666f\u7528\u4f8b\u5217\u8868\u4e2d\u7684\u67d0\u4e2a\u573a\u666f\uff0c\u5176\u53f3\u4fa7\u53ef\u5448\u73b0\u8be5\u573a\u666f\u7528\u4f8b\u8fd0\u884c\u65f6\u8be6\u7ec6\u7684\u6d4b\u8bd5\u6570\u636e\u53ca\u7ed3\u679c\u3002

    "},{"location":"user_manual/test_track/test_report/#14-ui","title":"1.4 UI \u6d4b\u8bd5\u90e8\u5206","text":"

    \u6d4b\u8bd5\u7ed3\u679c\u7edf\u8ba1\uff0c\u9ed8\u8ba4\u6b64\u4ee5\u56fe\u5f62\u5316\u5c55\u793a\u3002\u540c\u65f6\u628a\u9f20\u6807\u60ac\u6d6e\u5728\u67f1\u72b6\u56fe\u4e0a\uff0c\u53ef\u51fa\u73b0\u6b64\u67f1\u72b6\u76f8\u5173\u7edf\u8ba1\u4fe1\u606f\u3002

    \u70b9\u51fb\u5de6\u4fa7 UI \u7528\u4f8b\u5217\u8868\u4e2d\u7684\u67d0\u4e2a\u7528\u4f8b\uff0c\u5176\u53f3\u4fa7\u53ef\u5448\u73b0\u8be5 UI \u8fd0\u884c\u65f6\u8be6\u7ec6\u7684\u6d4b\u8bd5\u6570\u636e\u53ca\u7ed3\u679c\u3002

    "},{"location":"user_manual/test_track/test_report/#15","title":"1.5 \u6027\u80fd\u6d4b\u8bd5\u90e8\u5206","text":"

    \u62a5\u544a\u4e2d\u6027\u80fd\u6d4b\u8bd5\u7edf\u8ba1\u5206\u6790\uff0c\u63d0\u4f9b\u4e86\u76f8\u5173\u591a\u4e2a\u9875\u7b7e\u3002 \u6d4b\u8bd5\u7ed3\u679c\u7edf\u8ba1\uff0c\u9ed8\u8ba4\u6b64\u4ee5\u56fe\u5f62\u5316\u5c55\u793a\u3002\u540c\u65f6\u628a\u9f20\u6807\u60ac\u6d6e\u5728\u7edf\u8ba1\u56fe\u4e0a\uff0c\u53ef\u51fa\u73b0\u6b64\u56fe\u76f8\u5173\u7edf\u8ba1\u4fe1\u606f\u3002

    \u62a5\u544a\u4e2d\u3010\u5931\u8d25\u7528\u4f8b\u3001\u6240\u6709\u7528\u4f8b\u3011\u90fd\u662f\u4ee5\u5217\u8868\u7684\u5f62\u5f0f\u663e\u793a\u5176\u76f8\u5173\u660e\u7ec6\u3002 \u62a5\u544a\u4e2d\u9009\u62e9\u3010\u6240\u6709\u7528\u4f8b\u3011\uff0c\u70b9\u51fb\u5de6\u4fa7\u7528\u4f8b\u5217\u8868\u4e2d\u7684\u67d0\u4e2a\u7528\u4f8b\uff0c\u5176\u53f3\u4fa7\u53ef\u5448\u73b0\u8be5\u8fd0\u884c\u65f6\u8be6\u7ec6\u7684\u6027\u80fd\u6d4b\u8bd5\u7ed3\u679c\u3002

    "},{"location":"user_manual/test_track/test_report/#2","title":"2 \u62a5\u544a\u76ee\u5f55","text":"

    \u6d4b\u8bd5\u62a5\u544a\u5305\u542b\u6240\u6709\u6307\u5b9a\u7684\u6d4b\u8bd5\u8303\u56f4\u7684\u62a5\u544a\uff0c\u5185\u5bb9\u7e41\u591a\uff0c\u7cfb\u7edf\u63d0\u4f9b\u4e86\u62a5\u544a\u76ee\u5f55\uff0c\u53ef\u5feb\u901f\u5b9a\u4f4d\u5c55\u793a\u6307\u5b9a\u8be6\u60c5\u3002 \u70b9\u51fb\u62a5\u544a\u5de6\u4fa7\u3010\u76ee\u5f55\u3011\uff0c\u53ef\u770b\u5230\u6b64\u62a5\u544a\u7684\u76ee\u5f55\uff0c\u70b9\u51fb\u5177\u4f53\u76ee\u5f55\uff0c\u53ef\u76f4\u63a5\u8f6c\u5165\u6307\u5b9a\u76ee\u5f55\u7684\u6d4b\u8bd5\u62a5\u544a\u8be6\u60c5\u3002

    "},{"location":"user_manual/test_track/test_report/#3","title":"3 \u62a5\u544a\u514d\u767b\u9646\u5206\u4eab","text":"

    \u62a5\u544a\u652f\u6301\u514d\u767b\u9646\u5206\u4eab\u3002\u70b9\u51fb\u6d4b\u8bd5\u62a5\u544a\u53f3\u4e0a\u89d2\u7684\u3010\u5206\u4eab\u3011\uff0c\u7cfb\u7edf\u4f1a\u751f\u6210\u8be5\u62a5\u544a\u7684\u5730\u5740\uff0c\u5206\u4eab\u6b64\u5730\u5740\u7ed9\u5176\u4ed6\u4eba\u5458\u3002

    \u5728\u6d4f\u89c8\u5668\u7684\u5730\u5740\u680f\u4e2d\uff0c\u8f93\u5165\u8be5\u5730\u5740\uff0c\u5c31\u53ef\u76f4\u63a5\u6253\u5f00\u6b64\u6d4b\u8bd5\u62a5\u544a\u3002

    "},{"location":"user_manual/test_track/test_report/#4","title":"4 \u62a5\u544a\u5bfc\u51fa","text":"

    \u70b9\u51fb\u6d4b\u8bd5\u62a5\u544a\u53f3\u4e0a\u89d2\u7684\u3010\u5bfc\u51fa\u3011\uff0c\u6b64\u62a5\u544a\u53ef\u5bfc\u51fa HTML \u683c\u5f0f\u7684\u62a5\u544a\uff0c\u5176\u5185\u5bb9\u548c\u5728\u7ebf\u62a5\u544a\u4e00\u81f4\u3002

    "},{"location":"user_manual/test_track/test_case/public_test_case/","title":"\u516c\u5171\u7528\u4f8b\u5e93","text":"

    \u516c\u5171\u7528\u4f8b\u5e93\u4e3a\u540c\u4e00\u5de5\u4f5c\u7a7a\u95f4\u4e0b\u7684\u4e0d\u540c\u9879\u76ee\u5747\u53ef\u5171\u4eab\u4f7f\u7528\u7684\u3010\u516c\u5171\u7528\u4f8b\u3011\uff0c\u4e0d\u540c\u9879\u76ee\u53ef\u3010\u6dfb\u52a0\u3011\u7528\u4f8b\u81f3\u516c\u5171\u7528\u4f8b\u5e93\uff0c\u548c\u3010\u590d\u5236\u3011\u516c\u5171\u7528\u4f8b\u5e93\u4e2d\u7684\u7528\u4f8b\u3002

    \u516c\u5171\u7528\u4f8b\u5e93\u5217\u8868\u5b57\u6bb5\u4e0d\u5c55\u793a\u81ea\u5b9a\u4e49\u7684\u6a21\u677f\u5b57\u6bb5

    "},{"location":"user_manual/test_track/test_case/public_test_case/#1","title":"1 \u542f\u52a8\u516c\u5171\u7528\u4f8b\u5e93","text":"

    \u9879\u76ee\u7ba1\u7406\u5458\u53ef\u5230\u3010\u9879\u76ee\u8bbe\u7f6e\u3011-\u3010\u66f4\u591a\u9009\u9879\u3011-\u3010\u5e94\u7528\u7ba1\u7406\u3011\u9875\u9762\u4e0b\uff0c\u5f00\u542f\u3010\u542f\u52a8\u516c\u5171\u7528\u4f8b\u5e93\u3011\u8bbe\u7f6e\u3002

    "},{"location":"user_manual/test_track/test_case/public_test_case/#2","title":"2 \u6dfb\u52a0\u7528\u4f8b\u81f3\u516c\u5171\u7528\u4f8b\u5e93","text":"

    \u70b9\u51fb\u7528\u4f8b\u3010ID\u3011\u6216\u8005\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u70b9\u51fb\u3010\u6dfb\u52a0\u5230\u516c\u5171\u7528\u4f8b\u5e93\u3011\u3002

    "},{"location":"user_manual/test_track/test_case/public_test_case/#3","title":"3 \u4ece\u516c\u5171\u7528\u4f8b\u5e93\u4e2d\u590d\u5236\u7528\u4f8b","text":"

    \u590d\u5236\u516c\u5171\u7528\u4f8b\u5e93\u4e2d\u7684\u7528\u4f8b\u5230\u81ea\u5df1\u7684\u9879\u76ee\u6a21\u5757\u4e2d\u3002

    "},{"location":"user_manual/test_track/test_case/switch_project/","title":"Switch project","text":"

    \u529f\u80fd\u7528\u4f8b\uff0c\u4e3b\u8981\u7528\u4e8e\u5bf9\u529f\u80fd\u7528\u4f8b\u8fdb\u884c\u7edf\u4e00\u7ba1\u7406\uff0c\u652f\u6301\u7528\u4f8b\u7684\u5feb\u6377\u521b\u5efa\u53ca\u5bfc\u5165\u5bfc\u51fa\u64cd\u4f5c\u3002 \u8fdb\u5165\u3010\u529f\u80fd\u7528\u4f8b\u3011\u754c\u9762\u3002\u5de6\u4e0a\u65b9\u663e\u793a\u5f53\u524d\u9879\u76ee\uff0c\u9879\u76ee\u4e0b\u65b9\u663e\u793a\u6b64\u9879\u76ee\u7684\u5168\u90e8\u6d4b\u8bd5\u7528\u4f8b\u6a21\u5757\u3002\u6240\u5c5e\u67d0\u4e00\u9879\u76ee\u7684\u6d4b\u8bd5\u7528\u4f8b\u4ee5\u6a21\u5757\u4e3a\u5355\u4f4d\u8fdb\u884c\u7edf\u4e00\u7ba1\u7406\uff0c\u9875\u9762\u53f3\u4fa7\u663e\u793a\u9009\u5b9a\u6a21\u5757\u4e0b\u7684\u6d4b\u8bd5\u7528\u4f8b\u5217\u8868\uff0c\u652f\u6301\u5bf9\u6d4b\u8bd5\u7528\u4f8b\u8fdb\u884c\u65b0\u5efa\u3001\u67e5\u8be2\u3001\u7f16\u8f91\u3001\u590d\u5236\u3001\u5220\u9664\u7b49\u64cd\u4f5c\u3002

    "},{"location":"user_manual/test_track/test_case/switch_project/#1","title":"1 \u5207\u6362\u5de5\u4f5c\u7a7a\u95f4","text":"

    \u5728\u53f3\u4e0a\u89d2\u7684\u5de5\u4f5c\u7a7a\u95f4\u5904\u5207\u6362\u4e0b\u62c9\u83dc\u5355\u4e2d\u8fdb\u884c\u5de5\u4f5c\u7a7a\u95f4\u5207\u6362\uff0c\u5c55\u793a\u6240\u5c5e\u8be5\u5de5\u4f5c\u7a7a\u95f4\u53ca\u5bf9\u5e94\u9879\u76ee\u4e0b\u7684\u7528\u4f8b\u5217\u8868\u3002

    "},{"location":"user_manual/test_track/test_case/switch_project/#2","title":"2 \u5207\u6362\u9879\u76ee","text":"

    \u5728\u6a21\u5757\u6811\u4e0a\u65b9\u7684\u9879\u76ee\u5207\u6362\u4e0b\u62c9\u83dc\u5355\u4e2d\u8fdb\u884c\u9879\u76ee\u5207\u6362\uff0c\u5c55\u793a\u6240\u5c5e\u8be5\u9879\u76ee\u4e0b\u7684\u7528\u4f8b\u5217\u8868\u3002

    \u8bf4\u660e

    \u4e0d\u540c\u9879\u76ee\u95f4\u6a21\u5757\u6811\u76f8\u4e92\u72ec\u7acb\uff0c\u5f53\u5207\u6362\u9879\u76ee\u540e\u9700\u8981\u91cd\u65b0\u521b\u5efa\u6a21\u5757\u6811\u3002

    "},{"location":"user_manual/test_track/test_case/test_case/","title":"\u7528\u4f8b\u7ba1\u7406","text":""},{"location":"user_manual/test_track/test_case/test_case/#1-x-pack","title":"1 \u7528\u4f8b\u7248\u672c\u7ba1\u7406 (X-Pack)","text":"

    \u5e73\u53f0\u53ef\u4e3a\u4e0d\u540c\u7248\u672c\u7cfb\u7edf\u6d4b\u8bd5\u7684\u7528\u4f8b\u8fdb\u884c\u7ba1\u7406\u3002

    "},{"location":"user_manual/test_track/test_case/test_case/#2","title":"2 \u5207\u6362\u7528\u4f8b\u89c6\u56fe","text":"

    \u76ee\u524d\uff0c\u5e73\u53f0\u63d0\u4f9b\u4e24\u79cd\u7528\u4f8b\u5448\u73b0\u65b9\u5f0f\uff0c\u8fdb\u5165\u3010\u6d4b\u8bd5\u7528\u4f8b\u3011\u9875\u9762\u540e\uff0c\u9ed8\u8ba4\u6253\u5f00\u3010\u5217\u8868\u3011\u89c6\u56fe\uff0c\u70b9\u51fb\u3010\u8111\u56fe\u3011\u6807\u7b7e\u5207\u6362\u81f3\u8111\u56fe\u89c6\u56fe\u3002

    "},{"location":"user_manual/test_track/test_case/test_case/#3","title":"3 \u57fa\u4e8e\u5217\u8868\u89c6\u56fe\u65b0\u5efa\u7528\u4f8b","text":"

    \u9009\u62e9\u65b0\u5efa\u7528\u4f8b\u6240\u5c5e\u6a21\u5757\uff0c\u70b9\u51fb\u5217\u8868\u5de6\u4e0a\u65b9\u3010\u521b\u5efa\u7528\u4f8b\u3011\uff0c\u5f39\u51fa\u4e00\u4e2a\u65b0\u7684\u7a97\u53e3\u5c55\u793a\u7528\u4f8b\u8be6\u60c5\u9875\u9762\u8fdb\u884c\u7f16\u8f91\u3002

    \u5728\u65b0\u5efa\u7528\u4f8b\u8be6\u60c5\u9875\u9762\u4e2d\uff0c\u8fdb\u4e00\u6b65\u586b\u5199\u7528\u4f8b\u540d\u79f0\u3001\u524d\u7f6e\u6761\u4ef6\u3001\u6b65\u9aa4\u4fe1\u606f\u3001\u6dfb\u52a0\u5907\u6ce8\u3001\u4e0a\u4f20\u9644\u4ef6\u7b49\uff0c\u8fd8\u53ef\u4ee5\u4e3a\u7528\u4f8b\u8bbe\u7f6e\u6a21\u5757\u3001\u7528\u4f8b\u7b49\u7ea7\u3001\u7248\u672c\u3001\u5173\u8054\u9700\u6c42\u3001\u6807\u7b7e\u7b49\uff0c\u7f16\u8f91\u5b8c\u6210\u540e\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u5c06\u6b64\u6761\u7528\u4f8b\u4fdd\u5b58\u81f3\u5217\u8868\u3002

    \u65b0\u5efa\u7528\u4f8b\u5c06\u5728\u7528\u4f8b\u5217\u8868\u4e2d\u5448\u73b0\uff0c\u70b9\u51fb\u7528\u4f8b\u3010ID\u3011\u6216\u70b9\u51fb\u6b64\u6761\u7528\u4f8b\u540e\u7684\u3010\u7f16\u8f91\u3011\u6309\u94ae\u53ef\u91cd\u65b0\u8fdb\u5165\u7528\u4f8b\u8be6\u60c5\u9875\u9762\u8fdb\u884c\u7f16\u8f91\uff0c\u53ef\u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\u3001\u5173\u8054\u7f3a\u9677\u3001\u8bbe\u7f6e\u4f9d\u8d56\u5173\u7cfb\u3001\u6dfb\u52a0\u8bc4\u8bba\u3001\u67e5\u770b\u53d8\u66f4\u3001\u521b\u5efa\u65b0\u7248\u672c\u3001\u7248\u672c\u5bf9\u6bd4\u3001\u8bbe\u7f6e\u5173\u6ce8\u3001\u6dfb\u52a0\u5230\u516c\u5171\u7528\u4f8b\u5e93\u3001\u590d\u5236\u7b49\u64cd\u4f5c\u3002

    "},{"location":"user_manual/test_track/test_case/test_case/#31","title":"3.1 \u4e3a\u7528\u4f8b\u5173\u8054\u6d4b\u8bd5","text":"

    \u65b0\u5efa\u6d4b\u8bd5\u7528\u4f8b\u53ef\u4ee5\u548c\u5e73\u53f0\u5df2\u6709\u7684\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u3001\u63a5\u53e3\u573a\u666f\u7528\u4f8b\u3001\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u8fdb\u884c\u5173\u8054\u3002\u8fdb\u5165\u6d4b\u8bd5\u7528\u4f8b\u8be6\u60c5\u9875\u9762\uff0c\u70b9\u51fb\u3010\u5173\u8054\u6d4b\u8bd5\u3011\u6807\u7b7e\uff0c\u9009\u62e9\u5e0c\u671b\u4e0e\u672c\u6761\u7528\u4f8b\u8fdb\u884c\u5173\u8054\u7684\u7528\u4f8b\u5173\u8054\u6d4b\u8bd5\u6d4b\u8bd5\u7c7b\u578b\uff0c\u8fdb\u5165\u8be5\u7c7b\u578b\u7684\u7528\u4f8b\u5217\u8868\u8fdb\u884c\u5173\u8054\u3002

    \u4ee5\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u4e3a\u4f8b\u3002\u8fdb\u5165\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u5217\u8868\uff0c\u9009\u4e2d\u76f8\u5173\u8054\u7684\u7528\u4f8b\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u5b8c\u6210\u5173\u8054\u3002

    \u5173\u8054\u540e\u7684\u6d4b\u8bd5\u7528\u4f8b\u5c06\u5728\u5173\u8054\u5217\u8868\u4e2d\u663e\u793a\uff0c\u70b9\u51fb\u3010\u53d6\u6d88\u5173\u8054\u3011\u53ef\u53d6\u6d88\u5173\u8054\u7684\u6d4b\u8bd5\u7528\u4f8b\u3002

    "},{"location":"user_manual/test_track/test_case/test_case/#32","title":"3.2 \u4e3a\u7528\u4f8b\u5173\u8054\u9700\u6c42","text":"

    \u65b0\u5efa\u6d4b\u8bd5\u7528\u4f8b\u53ef\u4ee5\u548c\u9700\u6c42\u5173\u8054\u3002\u5982\u679c\u5173\u8054\u7b2c\u4e09\u65b9\u7f3a\u9677\u5e73\u53f0\u7684\u8bdd\uff0c\u5728\u3010\u7528\u4f8b\u8be6\u60c5\u3011\u53f3\u4fa7\uff0c\u70b9\u51fb\u3010\u5173\u8054\u9700\u6c42\u3011\u9009\u9879\uff0c\u4e0b\u62c9\u9009\u6846\u4e2d\u9009\u62e9\u5e0c\u671b\u4e0e\u672c\u6761\u7528\u4f8b\u8fdb\u884c\u5173\u8054\u7684\u7b2c\u4e09\u65b9\u7f3a\u9677\u5e73\u53f0\u7684\u9700\u6c42\u3002

    "},{"location":"user_manual/test_track/test_case/test_case/#33","title":"3.3 \u4e3a\u7528\u4f8b\u5173\u8054\u7f3a\u9677","text":"

    \u65b0\u5efa\u6d4b\u8bd5\u7528\u4f8b\u53ef\u4ee5\u548c\u7f3a\u9677\u5173\u8054\u3002\u70b9\u51fb\u3010\u5173\u8054\u7f3a\u9677\u3011\u6807\u7b7e\uff0c\u5173\u8054\u5df2\u6709\u7f3a\u9677\u6216\u521b\u5efa\u65b0\u7684\u7f3a\u9677\u5e76\u8fdb\u884c\u5173\u8054\u3002

    "},{"location":"user_manual/test_track/test_case/test_case/#34","title":"3.4 \u4e3a\u7528\u4f8b\u521b\u5efa\u4f9d\u8d56\u5173\u7cfb","text":"
    • \u4f9d\u8d56\u5173\u7cfb\u8bbe\u7f6e \u7cfb\u7edf\u652f\u6301\u7528\u6237\uff0c\u4ece\u6d4b\u8bd5\u7684\u89d2\u5ea6\u6765\u8bbe\u7f6e\u8be5\u6d4b\u8bd5\u7528\u4f8b\u7684\u524d\u540e\u7f6e\u4f9d\u8d56\u6d4b\u8bd5\u7528\u4f8b\u3002 \u70b9\u51fb\u6d4b\u8bd5\u7528\u4f8b\u7684\u3010\u4f9d\u8d56\u5173\u7cfb\u3011\u9875\u7b7e\u3002
    • \u4f9d\u8d56\u5173\u7cfb\u56fe \u70b9\u51fb\u3010\u4f9d\u8d56\u5173\u7cfb\u56fe\u3011\uff0c\u53ef\u770b\u5230\u8be5\u7528\u4f8b\u7684\u524d\u7f6e/\u540e\u7f6e\u4e4b\u95f4\u7684\u76f8\u4e92\u8054\u7cfb\u3002
    "},{"location":"user_manual/test_track/test_case/test_case/#4","title":"4 \u57fa\u4e8e\u8111\u56fe\u89c6\u56fe\u65b0\u5efa\u7528\u4f8b","text":"

    \u5728\u7528\u4f8b\u5217\u8868\u9875\u9762\u70b9\u51fb\u3010\u8111\u56fe\u3011\u5207\u6362\u4ee5\u8111\u56fe\u5f62\u5f0f\u5c55\u73b0\u7528\u4f8b\u3002\u8111\u56fe\u7236\u4e3b\u9898\u4e3a\u6a21\u5757\u540d\u79f0\uff0c\u5b50\u4e3b\u9898\u4e3a\u6a21\u5757\u4e0b\u6d4b\u8bd5\u7528\u4f8b\uff0c\u5b59\u4e3b\u9898\u4e3a\u6d4b\u8bd5\u7528\u4f8b\u6b65\u9aa4\u8be6\u60c5\u6216\u5907\u6ce8\u4fe1\u606f\u3002\u5404\u7ea7\u4e3b\u9898\u4f7f\u7528\u6807\u7b7e\u65b9\u5f0f\u533a\u5206\u6587\u672c\u5185\u5bb9\uff0c\u652f\u6301\u4f7f\u7528\u6807\u7b7e\u65b9\u5f0f\u6807\u8bb0\u7528\u4f8b\u4f18\u5148\u7ea7\u3002

    \u53f3\u952e\u4e3b\u9898\u533a\u57df\u89e6\u53d1\u529f\u80fd\u952e\u3002

    \u64cd\u4f5c\u8bf4\u660e

    • \u3010\u6536\u8d77\u3011\u6309\u94ae\uff0c\u70b9\u51fb\u53ef\u4ee5\u6536\u8d77\u8be5\u4e3b\u9898\u4e0b\u5c5e\u5b50\u4e3b\u9898\u3002
    • \u3010\u4e0a\u7ea7\u3011\u6309\u94ae\uff0c\u70b9\u51fb\u521b\u5efa\u8be5\u4e3b\u9898\u7684\u4e0a\u7ea7\u4e3b\u9898\u3002
    • \u3010\u4e0b\u7ea7\u3011\u6309\u94ae\uff0c\u70b9\u51fb\u521b\u5efa\u8be5\u4e3b\u9898\u7684\u4e0b\u7ea7\u4e3b\u9898\u3002
    • \u3010\u540c\u7ea7\u3011\u6309\u94ae\uff0c\u70b9\u51fb\u521b\u5efa\u8be5\u4e3b\u9898\u7684\u540c\u7ea7\u4e3b\u9898\u3002
    • \u3010\u540e\u79fb\u3011\u6309\u94ae\uff0c\u70b9\u51fb\u5c06\u8be5\u4e3b\u9898\u79fb\u5165\u5176\u4e0b\u7ea7\u4e3b\u9898\u3002
    • \u3010\u524d\u79fb\u3011\u6309\u94ae\uff0c\u70b9\u51fb\u5c06\u8be5\u4e3b\u9898\u79fb\u5165\u5176\u4e0a\u7ea7\u4e3b\u9898\u3002
    • \u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u70b9\u51fb\u5220\u9664\u8be5\u4e3b\u9898\u3002
    • \u3010\u5bfc\u51fa\u3011\u64cd\u4f5c\uff0c\u652f\u6301\u5bfc\u51fa\u5168\u90e8\u6a21\u5757\u53ca\u89c6\u56fe\u5185\u5168\u90e8\u5df2\u5c55\u5f00\u7684\u7528\u4f8b\u3002\u652f\u6301\u5bfc\u51fa\u4e3a json\u3001png\u3001svg\u3001txt\u3001md\u3001mm \u7b49\u683c\u5f0f\u7684\u6587\u4ef6\u3002
    • \u3010\u4f18\u5148\u7ea7/\u6807\u7b7e\u3011\u64cd\u4f5c\uff0c\u652f\u6301\u4e3a\u8be5\u4e3b\u9898\u6dfb\u52a0\u4f18\u5148\u7ea7\u53ca\u6587\u672c\u6807\u7b7e\u3002
    "},{"location":"user_manual/test_track/test_case/test_case/#5","title":"5 \u6279\u91cf\u64cd\u4f5c","text":"

    \u5177\u4f53\u64cd\u4f5c\u8bf7\u53c2\u8003 \u901a\u7528\u529f\u80fd->\u6279\u91cf\u64cd\u4f5c\u3002 \u5728\u5217\u8868\u5bf9\u7528\u4f8b\u8fdb\u884c\u52fe\u9009\uff0c\u70b9\u51fb\u3010\u2026\u3011\u6309\u94ae\uff0c\u53ef\u4ee5\u5bf9\u591a\u6761\u7528\u4f8b\u8fdb\u884c\u6279\u91cf\u64cd\u4f5c\uff0c\u5305\u62ec\u6279\u91cf\u7f16\u8f91\u3001\u6279\u91cf\u79fb\u52a8\u3001\u6279\u91cf\u590d\u5236\u3001\u6279\u91cf\u5220\u9664\u3001\u6279\u91cf\u5173\u8054\u9700\u6c42\u3001\u751f\u6210\u4f9d\u8d56\u5173\u7cfb\u3001\u6279\u91cf\u6dfb\u52a0\u5230\u516c\u5171\u7528\u4f8b\u5e93\u7b49\u64cd\u4f5c\u3002

    "},{"location":"user_manual/test_track/test_case/test_case/#6","title":"6 \u5bfc\u5165\u7528\u4f8b","text":"

    \u70b9\u51fb\u5de6\u4e0a\u65b9\u3010\u5bfc\u5165\u3011\u6309\u94ae\uff0c\u5728\u4e0b\u62c9\u83dc\u5355\u4e2d\u9009\u62e9\u3010\u4eceExcel\u8868\u683c\u5bfc\u5165\u6d4b\u8bd5\u7528\u4f8b\u3011\u6216\u3010\u4ece\u601d\u7ef4\u5bfc\u56fe\u5bfc\u5165\u6d4b\u8bd5\u7528\u4f8b\u3011\u3002

    \u53ef\u5148\u4e0b\u8f7d\u6a21\u677f\uff0c\u4e0b\u8f7d\u7684\u6a21\u677f\u4e2d\u4f1a\u51fa\u73b0\u81ea\u5b9a\u4e49\u7684\u5b57\u6bb5\uff0c\u586b\u5199\u5185\u5bb9\u540e\uff0c\u8fdb\u884c\u4e0a\u4f20\u3002\u81ea\u5b9a\u4e49\u5b57\u6bb5\u4e5f\u6b63\u5e38\u5c55\u793a\u5230\u9875\u9762\u4e2d\u3002

    \u64cd\u4f5c\u8bf4\u660e

    • \u3010\u5bfc\u5165\u65b0\u5efa\u3011\uff0c\u5bfc\u5165\u7684\u7528\u4f8b\u81ea\u52a8\u4fdd\u5b58\u4e3a\u65b0\u7528\u4f8b\u3002
    • \u3010\u5bfc\u5165\u66f4\u65b0\u3011\uff0c\u5bfc\u5165\u7684\u7528\u4f8b\u81ea\u52a8\u8986\u76d6\u5df2\u6709\u7528\u4f8b\u3002
    "},{"location":"user_manual/test_track/test_case/test_case/#7","title":"7 \u5bfc\u51fa\u7528\u4f8b","text":"

    \u70b9\u51fb\u5de6\u4e0a\u65b9\u3010\u5bfc\u51fa\u3011\u6309\u94ae\uff0c\u5728\u4e0b\u62c9\u83dc\u5355\u9009\u62e9\u3010\u5bfc\u51faExcel\u8868\u683c\u3011\u6216\u3010\u5bfc\u51fa\u601d\u7ef4\u5bfc\u56fe\u3011\u6587\u4ef6\uff0c\u5bfc\u51fa Excel \u8868\u683c\u65f6\u53ef\u9009\u62e9\u57fa\u7840\u5b57\u6bb5\u3001\u81ea\u5b9a\u4e49\u5b57\u6bb5\u3001\u5176\u4ed6\u5b57\u6bb5\u7b49\uff0c\u5de6\u4e0a\u65b9\u3010\u5bfc\u51fa\u3011\u9ed8\u8ba4\u5bfc\u51fa\u5168\u90e8\u7528\u4f8b\u3002

    \u5bfc\u51fa\u90e8\u5206\u7528\u4f8b\u9700\u70b9\u51fb\u5217\u8868\u4e0b\u65b9\u66f4\u591a\u64cd\u4f5c\u3010...\u3011\u6309\u94ae\u3002

    "},{"location":"user_manual/test_track/test_case/test_case/#8","title":"8 \u56de\u6536\u7ad9","text":"

    \u6240\u6709\u88ab\u5220\u9664\u7684\u6d4b\u8bd5\u7528\u4f8b\u90fd\u4f1a\u653e\u5728\u56de\u6536\u7ad9\u91cc\u4fdd\u5b58\u3002

    \u5728\u56de\u6536\u7ad9\u91cc\u53ef\u8fdb\u884c\u3010\u6062\u590d\u3011\u548c\u3010\u5f7b\u5e95\u5220\u9664\u3011\u64cd\u4f5c\u3002

    "},{"location":"user_manual/test_track/test_case/test_case/#9","title":"9 \u67e5\u770b\u53d8\u66f4\u8bb0\u5f55","text":"

    \u5728\u6d4b\u8bd5\u7528\u4f8b\u8be6\u60c5\u9875\u9762\u6700\u53f3\u4fa7\u83dc\u5355\u3010\u53d8\u66f4\u8bb0\u5f55\u3011\u4e0b\uff0c\u53ef\u4ee5\u67e5\u770b\u6b64\u7528\u4f8b\u6240\u6709\u7684\u53d8\u66f4\u8be6\u60c5\u3002

    "},{"location":"user_manual/test_track/test_case/test_case/#10","title":"10 \u7248\u672c\u7ba1\u7406","text":"

    \u70b9\u51fb\u7528\u4f8b\u8be6\u60c5\u5de6\u4e0a\u65b9\uff0c\u3010XX\u7248\u672c\u3011\u53ef\u8fdb\u884c\u7528\u4f8b\u7248\u672c\u5207\u6362\u3001\u4e0d\u540c\u7248\u672c\u7528\u4f8b\u521b\u5efa\u3001\u5220\u9664\u7248\u672c\u7528\u4f8b\u3001\u7248\u672c\u5bf9\u6bd4\u7b49\u529f\u80fd\u3002

    "},{"location":"user_manual/test_track/test_case/test_case_module/","title":"\u6a21\u5757\u6811\u7ba1\u7406","text":"

    \u529f\u80fd\u7528\u4f8b\u63d0\u4f9b\u6a21\u5757\u529f\u80fd\uff0c\u53ef\u6839\u636e\u4e0d\u540c\u7684\u529f\u80fd\u8bbe\u7f6e\u4e0d\u540c\u7684\u6a21\u5757\uff0c\u5e76\u53ef\u6839\u636e\u5404\u529f\u80fd\u4f9d\u8d56\u5173\u7cfb\u8bbe\u7f6e\u5b50\u6a21\u5757\u3002\u70b9\u51fb\u9875\u9762\u5de6\u4fa7\u3010\u5168\u90e8\u7528\u4f8b\u3011\uff0c\u70b9\u51fb\u3010\u6dfb\u52a0\u5b50\u6a21\u5757\u3011\uff0c\u586b\u5199\u6a21\u5757\u540d\u79f0\uff0c\u5373\u53ef\u5b8c\u6210\u7528\u4f8b\u6a21\u5757\u6dfb\u52a0\u3002

    "},{"location":"user_manual/test_track/test_case/test_case_module/#1","title":"1 \u521b\u5efa\u5b50\u6a21\u5757","text":"

    \u9009\u4e2d\u6a21\u5757\u6811\u5217\u8868\u3010\u5168\u90e8\u7528\u4f8b\u3011\uff0c\u70b9\u51fb\u3010+\u3011\u53f7\u6309\u94ae\u5728\u6a21\u5757\u603b\u76ee\u5f55\u4e0b\u521b\u5efa\u5b50\u6a21\u5757\u3002\u9009\u4e2d\u4efb\u610f\u4e0a\u7ea7\u6a21\u5757\u5373\u53ef\u5728\u8be5\u6a21\u5757\u4e0b\u521b\u5efa\u6b21\u7ea7\u6a21\u5757\uff0c\u6a21\u5757\u6811\u652f\u6301\u6700\u591a 8 \u5c42\u7684\u6811\u72b6\u7ed3\u6784\u3002

    "},{"location":"user_manual/test_track/test_case/test_case_module/#2","title":"2 \u6a21\u5757\u64cd\u4f5c","text":"

    \u64cd\u4f5c\u8bf4\u660e

    • \u3010\u91cd\u547d\u540d\u3011\u6309\u94ae\uff0c\u9f20\u6807\u60ac\u505c\u5728\u8981\u64cd\u4f5c\u7684\u6a21\u5757\u65f6\u51fa\u73b0\uff0c\u70b9\u51fb\u53ef\u4ee5\u91cd\u547d\u540d\u8be5\u6a21\u5757\u3002
    • \u3010\u6dfb\u52a0\u5b50\u6a21\u5757\u3011\u6309\u94ae\uff0c\u9f20\u6807\u60ac\u505c\u5728\u8981\u64cd\u4f5c\u7684\u6a21\u5757\u65f6\u51fa\u73b0\uff0c\u70b9\u51fb\u53ef\u4ee5\u5728\u8be5\u6a21\u5757\u4e0b\u6dfb\u52a0\u5b50\u6a21\u5757\u3002
    • \u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u9f20\u6807\u60ac\u505c\u5728\u8981\u64cd\u4f5c\u7684\u6a21\u5757\u65f6\u51fa\u73b0\uff0c\u70b9\u51fb\u5c06\u5220\u9664\u8be5\u6a21\u5757\u548c\u5176\u6240\u6709\u5b50\u6a21\u5757\u3002\u5220\u9664\u67d0\u4e2a\u6a21\u5757\u4e0d\u4ec5\u4f1a\u5220\u9664\u8be5\u6a21\u5757\u53ca\u5176\u6240\u6709\u5b50\u6a21\u5757\uff0c\u88ab\u5220\u9664\u6a21\u5757\u4e2d\u7684\u63a5\u53e3\u53ca\u63a5\u53e3\u7528\u4f8b\u4e5f\u5c06\u88ab\u79fb\u5165\u56de\u6536\u7ad9\u4e2d\uff0c\u8bf7\u8c28\u614e\u4f7f\u7528\u8be5\u529f\u80fd\u3002
    • \u3010\u5c55\u5f00/\u6536\u8d77\u3011\u64cd\u4f5c\uff0c\u5f53\u6a21\u5757\u4e0b\u5b58\u5728\u5b50\u6a21\u5757\u65f6\u51fa\u73b0\uff0c\u70b9\u51fb\u3010\u5c55\u5f00/\u6536\u8d77\u3011\u8be5\u6a21\u5757\u4e0b\u7684\u6240\u6709\u5b50\u6a21\u5757\u3002

    \u6a21\u5757\u6811\u8fd8\u652f\u6301\u9f20\u6807\u62d6\u62fd\u64cd\u4f5c\uff0c\u7528\u6237\u53ef\u4ee5\u6839\u636e\u9700\u6c42\u8c03\u6574\u6a21\u5757\u987a\u5e8f\u53ca\u5176\u5c42\u7ea7\u5173\u7cfb\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_batch/","title":"\u6279\u91cf\u64cd\u4f5c","text":""},{"location":"user_manual/test_track/test_plan/test_plan_batch/#1","title":"1 \u6279\u91cf\u5f00/\u5173\u5b9a\u65f6\u4efb\u52a1","text":"

    \u52fe\u9009\u591a\u4e2a\u6d4b\u8bd5\u8ba1\u5212\u540e\uff0c\u70b9\u51fb\u6279\u91cf\u5f00/\u5173\u5b9a\u65f6\u4efb\u52a1\uff0c\u53ef\u5bf9\u8bbe\u7f6e\u597d\u7684\u5b9a\u65f6\u4efb\u52a1\u8fdb\u884c\u5f00\u542f/\u5173\u95ed\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_batch/#2","title":"2 \u6279\u91cf\u6267\u884c","text":"

    \u52fe\u9009\u591a\u4e2a\u6d4b\u8bd5\u8ba1\u5212\u540e\uff0c\u70b9\u51fb\u6279\u91cf\u6267\u884c\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_batch/#3","title":"3 \u6279\u91cf\u5220\u9664","text":"

    \u52fe\u9009\u591a\u4e2a\u6d4b\u8bd5\u8ba1\u5212\u540e\uff0c\u70b9\u51fb\u6279\u91cf\u5220\u9664\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_list/","title":"\u8ba1\u5212\u5217\u8868","text":"

    \u6d4b\u8bd5\u8ba1\u5212\u5c5e\u4e8e\u67d0\u4e2a\u9879\u76ee\uff0c\u5e76\u53ef\u5173\u8054\u8be5\u9879\u76ee\u4e0b\u7684\u6d4b\u8bd5\u7528\u4f8b\u3002\u6d4b\u8bd5\u8ba1\u5212\u7528\u4e8e\u5c06\u6d4b\u8bd5\u5404\u73af\u8282\u4e0d\u540c\u7c7b\u578b\u7684\u6d4b\u8bd5\u4efb\u52a1\u6dfb\u52a0\u5230\u4e00\u4e2a\u6d4b\u8bd5\u8ba1\u5212\u4e2d\uff0c\u5305\u62ec\u529f\u80fd\u6d4b\u8bd5\u3001\u63a5\u53e3\u6d4b\u8bd5\u548c\u6027\u80fd\u6d4b\u8bd5\u7b49\uff0c\u652f\u6301\u5b9e\u65f6\u5c55\u793a\u5404\u6d4b\u8bd5\u73af\u8282\u7684\u8fdb\u5ea6\u53ca\u6d4b\u8bd5\u60c5\u51b5\uff0c\u5e76\u5b9e\u65f6\u751f\u6210\u6d4b\u8bd5\u62a5\u544a\u3002 \u6d4b\u8bd5\u8ba1\u5212\u53ef\u5c06\u6d4b\u8bd5\u5404\u73af\u8282\u52a0\u5165\u5230\u4e00\u4e2a\u6d4b\u8bd5\u8ba1\u5212\u4e2d\uff0c\u5305\u62ec\u529f\u80fd\u6d4b\u8bd5\u3001\u63a5\u53e3\u6d4b\u8bd5\u548c\u6027\u80fd\u6d4b\u8bd5\u7b49\uff0c\u80fd\u5b9e\u65f6\u5c55\u793a\u5404\u6d4b\u8bd5\u73af\u8282\u7684\u8fdb\u5ea6\u53ca\u6d4b\u8bd5\u60c5\u51b5\uff0c\u5e76\u5b9e\u65f6\u751f\u6210\u6d4b\u8bd5\u62a5\u544a\u3002 \u70b9\u51fb\u3010\u6d4b\u8bd5\u8ddf\u8e2a\u3011\uff0c\u70b9\u51fb\u3010\u9879\u76ee\u3011\uff0c\u70b9\u51fb\u6d4b\u8bd5\u8ba1\u5212\uff0c\u53ef\u67e5\u770b\u5f53\u524d\u9879\u76ee\u4e2d\u7684\u6d4b\u8bd5\u8ba1\u5212\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_list/#1","title":"1 \u8ba1\u5212\u5217\u8868\u64cd\u4f5c","text":"

    \u5728\u6d4b\u8bd5\u8ba1\u5212\u5217\u8868\u4fe1\u606f\u9875\uff0c\u9f20\u6807\u70b9\u51fb\u67d0\u4e2a\u8ba1\u5212\uff0c\u8fdb\u5165\u8ba1\u5212\u8be6\u60c5\u9875\u9762\u3002

    \u70b9\u51fb\u3010\u6267\u884c\u3011\u6309\u94ae\uff0c\u9009\u62e9\u548c\u52fe\u9009\u8fd0\u884c\u6d4b\u8bd5\u8ba1\u5212\u7684\u76f8\u5173\u914d\u7f6e\u540e\uff0c\u70b9\u51fb\u3010\u6267\u884c\u3011\u5373\u53ef\u3002\u9ed8\u8ba4\u73af\u5883\u4e3a\u7528\u4f8b\u9996\u6b21\u5173\u8054\u8fdb\u6d4b\u8bd5\u8ba1\u5212\u6240\u9009\u62e9\u7684\u7528\u4f8b\uff0c\u9009\u62e9\u65b0\u73af\u5883\u540e\u53ef\u9009\u62e9\u6267\u884c\u548c\u4fdd\u5b58\uff0c\u4fdd\u5b58\u540e\u65b0\u9009\u62e9\u7684\u73af\u5883\u4e3a\u9ed8\u8ba4\u73af\u5883\uff0c\u70b9\u51fb\u6267\u884c\u4e0d\u4f1a\u4fee\u6539\u9ed8\u8ba4\u73af\u5883\uff0c\u9ed8\u8ba4\u73af\u5883\u591a\u7528\u4e8e\u5b9a\u65f6\u4efb\u52a1\u3001API\u8c03\u7528\u53ca\u6d41\u6c34\u7ebf\u89e6\u53d1\u6267\u884c\u3002

    \u53ef\u4ee5\u7ba1\u7406\u548c\u7ef4\u62a4\u672c\u6b21\u8ba1\u5212\u6d4b\u8bd5\u7684\u8303\u56f4\uff1a\u529f\u80fd\u6d4b\u8bd5\u7528\u4f8b\u3001\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u3001\u573a\u666f\u6d4b\u8bd5\u7528\u4f8b\u3001\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u7b49\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_list/#2","title":"2 \u6d4b\u8bd5\u62a5\u544a\u67e5\u770b","text":"

    \u8ba1\u5212\u6267\u884c\u540e\uff0c\u53ef\u4ee5\u70b9\u51fb\u3010\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u3011\u3002

    \u62a5\u544a\u8be6\u7ec6\u89e3\u8bfb\u89c1 \u6d4b\u8bd5\u8ddf\u8e2a->\u62a5\u544a\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_manage/","title":"\u7ba1\u7406\u8ba1\u5212","text":""},{"location":"user_manual/test_track/test_plan/test_plan_manage/#1","title":"1 \u521b\u5efa\u6d4b\u8bd5\u8ba1\u5212","text":"

    \u70b9\u51fb\u3010\u521b\u5efa\u6d4b\u8bd5\u8ba1\u5212\u3011\uff0c\u5373\u53ef\u8fdb\u5165\u521b\u5efa\u6d4b\u8bd5\u8ba1\u5212\u9875\u9762\uff0c\u9875\u9762\u5185\u5bb9\u5305\u62ec\uff1a

    • \u8ba1\u5212\u540d\u79f0\u3001\u8d1f\u8d23\u4eba\u3001\u6d4b\u8bd5\u9636\u6bb5\u7b49\u7b49\u5fc5\u586b\u4fe1\u606f
    • \u6807\u7b7e\u3001\u8ba1\u5212\u5f00\u59cb/\u7ed3\u675f\u65f6\u95f4\u3001\u5907\u6ce8\u7b49\u7b49\u4fe1\u606f
    • \u81ea\u52a8\u66f4\u65b0\u72b6\u6001\u5f00\u5173 \u7b49\u9009\u62e9\u4fe1\u606f

    \u70b9\u51fb\u3010\u786e\u5b9a\u3011\u5b8c\u6210\u521b\u5efa\u6d4b\u8bd5\u8ba1\u5212\uff0c\u5e76\u4e14\u9875\u9762\u8df3\u8f6c\u5230\u6d4b\u8bd5\u8ba1\u5212\u5217\u8868\u4fe1\u606f\u9875\u9762\uff0c\u53ef\u5728\u6d4b\u8bd5\u8ba1\u5212\u5217\u8868\u4e2d\u67e5\u770b\u5230\u521b\u5efa\u7684\u6d4b\u8bd5\u8ba1\u5212\u3002 \u70b9\u51fb\u3010\u89c4\u5212&\u6267\u884c\u3011\u5b8c\u6210\u521b\u5efa\u6d4b\u8bd5\u8ba1\u5212\uff0c\u5e76\u4e14\u9875\u9762\u8df3\u8f6c\u5230\u6d4b\u8bd5\u8ba1\u5212\u5185\u5bb9\u7ef4\u62a4\u754c\u9762\uff0c\u53ef\u76f4\u63a5\u6dfb\u52a0\u672c\u6b21\u8ba1\u5212\u7684\u6d4b\u8bd5\u8303\u56f4\u548c\u6d4b\u8bd5\u5185\u5bb9\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_manage/#2","title":"2 \u6267\u884c\u6d4b\u8bd5\u8ba1\u5212","text":"

    \u70b9\u51fb\u7528\u4f8b\u5217\u8868\u3010\u6267\u884c\u3011\u8bbe\u7f6e\u8fd0\u884c\u73af\u5883\u3001\u6267\u884c\u6a21\u5f0f\u3001\u8d44\u6e90\u6c60\u3001\u5931\u8d25\u91cd\u8bd5\u3001\u5931\u8d25\u505c\u6b62\u7b49\u529f\u80fd\uff0c\u53ef\u4ee5\u8fdb\u884c\u3010\u4fdd\u5b58\u3011\u3001\u3010\u4fdd\u5b58\u5e76\u6267\u884c\u3011\u3001\u3010\u6267\u884c\u3011\u64cd\u4f5c\u3002

    • \u4fdd\u5b58\uff1a\u53ea\u4fdd\u5b58\u5f53\u524d\u8bbe\u7f6e\u7684\u9ed8\u8ba4\u73af\u5883\u53ca\u8fd0\u884c\u914d\u7f6e\uff0c\u4e0d\u89e6\u53d1\u6267\u884c\u3002
    • \u4fdd\u5b58\u5e76\u6267\u884c\uff1a\u4fdd\u5b58\u5f53\u524d\u8bbe\u7f6e\u7684\u9ed8\u8ba4\u73af\u5883\u53ca\u8fd0\u884c\u914d\u7f6e\u5e76\u89e6\u53d1\u6267\u884c\u3002
    • \u6267\u884c\uff1a\u4e0d\u4fee\u6539\u5f53\u524d\u9ed8\u8ba4\u73af\u5883\u53ca\u8fd0\u884c\u914d\u7f6e\uff0c\u76f4\u63a5\u89e6\u53d1\u6267\u884c\u3002 \u6539\u914d\u7f6e\u64cd\u4f5c\u4f1a\u5f71\u54cd\u3010\u5b9a\u65f6\u4efb\u52a1\u3011\u3001\u3010\u6d41\u6c34\u7ebf\u8c03\u7528\u3011\u3001\u3010API\u8c03\u7528\u3011\uff0c\u8bf7\u614e\u91cd\u4fee\u6539\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_manage/#3","title":"3 \u5931\u8d25\u91cd\u8bd5","text":"

    \u6d4b\u8bd5\u8ba1\u5212\u4e2d\u7684\u7528\u4f8b\u6267\u884c\u5931\u8d25\u540e\uff0c\u652f\u6301\u6839\u636e\u8bbe\u5b9a\u7684\u91cd\u8bd5\u6b21\u6570\u518d\u6b21\u53d1\u8d77\u6267\u884c\uff0c\u6d4b\u8bd5\u62a5\u544a\u4f1a\u5b8c\u6574\u8bb0\u5f55\u63a5\u53e3\u9996\u6b21\u8fd0\u884c\u4ee5\u53ca\u6700\u540e10\u6b21\u8fd0\u884c\u7684\u54cd\u5e94\u7ed3\u679c\uff0c\u4f9b\u7528\u6237\u8fdb\u884c\u5bf9\u6bd4\u5206\u6790\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_manage/#4","title":"4 \u7ef4\u62a4\u6d4b\u8bd5\u8ba1\u5212","text":"

    \u5728\u6d4b\u8bd5\u8ba1\u5212\u5217\u8868\u4fe1\u606f\u5217\u8868\uff0c\u70b9\u51fb\u67d0\u6761\u8ba1\u5212\uff0c\u53ef\u4ee5\u5bf9\u6d4b\u8bd5\u8ba1\u5212\u8be6\u60c5\u8fdb\u884c\u7ef4\u62a4\u3002

    \u6dfb\u52a0\u672c\u6b21\u8ba1\u5212\u6d4b\u8bd5\u7684\u8303\u56f4\uff1a\u529f\u80fd\u6d4b\u8bd5\u7528\u4f8b\u3001\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u3001\u573a\u666f\u6d4b\u8bd5\u7528\u4f8b\u3001\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u7b49\u3002

    • \u70b9\u51fb\u3010\u62a5\u544a\u3011\u6309\u94ae\uff0c\u53ef\u4ee5\u67e5\u770b\u6d4b\u8bd5\u8ba1\u5212\u7684\u62a5\u544a\uff1b
    • \u70b9\u51fb\u3010\u6267\u884c\u3011\u6309\u94ae\uff0c\u53ef\u4ee5\u6267\u884c\u6d4b\u8bd5\u8ba1\u5212\uff1b
    • \u70b9\u51fb\u3010...\u3011\u6309\u94ae\uff0c\u5728\u4e0b\u62c9\u64cd\u4f5c\u83dc\u5355\u4e2d\uff0c\u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u53ef\u4ee5\u5bf9\u6d4b\u8bd5\u8ba1\u5212\u8fdb\u884c\u5220\u9664\uff1b\u70b9\u51fb\u3010\u5b9a\u65f6\u4efb\u52a1\u3011\u6309\u94ae\uff0c\u53ef\u4ee5\u8bbe\u7f6e\u4e00\u4e2a\u6307\u5b9a\u7684\u6267\u884c\u65f6\u95f4\uff1b
    • \u70b9\u51fb\u3010\u590d\u5236\u3011\u6309\u94ae\uff0c\u53ef\u514b\u9686\u539f\u8ba1\u5212\u751f\u6210\u65b0\u7684\u8ba1\u5212\uff0c\u540c\u65f6\u53ef\u5bf9\u6b64\u65b0\u8ba1\u5212\u8fdb\u884c\u6b63\u5e38\u7684\u7ef4\u62a4\u548c\u64cd\u4f5c\u3002

    \u70b9\u51fb\u3010\u7f16\u8f91\u3011\uff0c\u4fee\u6539\u6d4b\u8bd5\u8ba1\u5212\u7684\u76f8\u5173\u4fe1\u606f\u548c\u5f53\u524d\u72b6\u6001\u3002

    \u5f53\u524d\u72b6\u6001\u8bf4\u660e\uff1a

    • \u5df2\u5b8c\u6210\uff1a\u8868\u793a\u8ba1\u5212\u4e2d\u6240\u6709\u7684\u6d4b\u8bd5\u7528\u4f8b\u90fd\u901a\u8fc7\u4e86\u3002
    • \u5df2\u7ed3\u675f\uff1a\u8868\u793a\u8ba1\u5212\u4e2d\u6267\u884c\u7ed3\u679c\u6709\u5931\u8d25\u7684\uff0c\u4f46\u662f\u90fd\u6267\u884c\u5b8c\u4e86\u3002

    \u5907\u6ce8\uff1a

    \u6b64\u72b6\u6001\u53ef\u7531\u7cfb\u7edf\u81ea\u52a8\u66f4\u65b0\uff0c\u4e5f\u53ef\u4ee5\u624b\u52a8\u7ef4\u62a4\uff0c\u624b\u52a8\u6539\u72b6\u6001\u53ea\u662f\u6539\u6d4b\u8bd5\u8ba1\u5212\u7684\u72b6\u6001\uff0c\u91cc\u9762\u7684\u7528\u4f8b\u72b6\u6001\u4e0d\u4f1a\u5224\u65ad\uff0c\u4e5f\u4e0d\u4f1a\u4fee\u6539\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_manage/#5","title":"5 \u5173\u8054\u6d4b\u8bd5\u7528\u4f8b","text":"

    \u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\u652f\u6301\u8bb0\u4f4f\u8de8\u9875\u9009\u62e9\u7684\u8bb0\u5f55\uff0c\u518d\u4e00\u5e76\u5bfc\u5165\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_manage/#51","title":"5.1 \u5173\u8054\u529f\u80fd\u6d4b\u8bd5\u7528\u4f8b","text":"

    \u8fdb\u5165\u6d4b\u8bd5\u8ba1\u5212\u6267\u884c\u4e3b\u9875\uff0c\u9ed8\u8ba4\u6253\u5f00\u529f\u80fd\u6d4b\u8bd5\u7528\u4f8b\u6807\u7b7e\u3002\u70b9\u51fb\u3010\u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\u3011\u652f\u6301\u4e3a\u6d4b\u8bd5\u8ba1\u5212\u5173\u8054\u529f\u80fd\u7528\u4f8b\uff0c\u540c\u65f6\u652f\u6301\u7528\u6237\u5feb\u901f\u5207\u6362\u3010\u6211\u7684\u7528\u4f8b\u3011\u6216\u3010\u5168\u90e8\u7528\u4f8b\u3011\u5217\u8868\u3002

    • \u57fa\u4e8e\u5217\u8868\u89c6\u56fe\u8bb0\u5f55\u8ba1\u5212\u6267\u884c\u7ed3\u679c \u529f\u80fd\u6d4b\u8bd5\u7528\u5173\u8054\u5b8c\u6210\u540e\uff0c\u70b9\u51fb\u4efb\u610f\u529f\u80fd\u6d4b\u8bd5\u7528\u4f8b\u7684\u3010\u7f16\u8f91\u3011\u6309\u94ae\uff0c\u8fdb\u5165\u7528\u4f8b\u8be6\u60c5\u9875\u9762\u3002\u5728\u6267\u884c\u6b65\u9aa4\u4e2d\uff0c\u586b\u5199\u6bcf\u4e00\u6b65\u7684\u5b9e\u9645\u7ed3\u679c\u53ca\u8be5\u6b65\u7684\u6267\u884c\u7ed3\u679c\uff0c\u57fa\u4e8e\u5404\u6b65\u9aa4\u6267\u884c\u60c5\u51b5\u53ca\u8bc4\u5b9a\u6807\u51c6\uff0c\u70b9\u51fb\u4e0a\u65b9\u7684\u72b6\u6001\u6309\u94ae\u4e3a\u6b64\u6761\u7528\u4f8b\u6807\u8bb0\u6267\u884c\u72b6\u6001\u3002

    • \u57fa\u4e8e\u8111\u56fe\u89c6\u56fe\u8bb0\u5f55\u8ba1\u5212\u6267\u884c\u7ed3\u679c \u4e0e\u7528\u4f8b\u7684\u521b\u5efa\u548c\u8bc4\u5ba1\u7c7b\u4f3c\uff0c\u7528\u4f8b\u6267\u884c\u7ed3\u679c\u540c\u6837\u53ef\u4ee5\u901a\u8fc7\u8111\u56fe\u65b9\u5f0f\u8bb0\u5f55\u3002\u5728\u7528\u4f8b\u5217\u8868\u9875\u9762\u70b9\u51fb\u3010\u8111\u56fe\u3011\u5207\u6362\u5230\u8111\u56fe\u5c55\u793a\u6a21\u5f0f\uff0c\u9009\u4e2d\u5f85\u6267\u884c\u7528\u4f8b\uff0c\u901a\u8fc7\u6dfb\u52a0\u6807\u7b7e\u7684\u65b9\u5f0f\u6765\u6807\u8bb0\u7528\u4f8b\u6267\u884c\u7ed3\u679c\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_manage/#52","title":"5.2 \u5173\u8054\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b","text":"

    \u70b9\u51fb\u3010\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u3011\uff0c\u70b9\u51fb\u3010\u63a5\u53e3\u7528\u4f8b\u3011\u548c\u3010\u573a\u666f\u7528\u4f8b\u3011\uff0c\u53ef\u8fdb\u5165\u4e0d\u540c\u7c7b\u578b\u63a5\u53e3\u7528\u4f8b\u7684\u5173\u8054\u5217\u8868\u3002

    \u70b9\u51fb\u3010\u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\u3011\uff0c\u8fdb\u5165\u5173\u8054\u63a5\u53e3\u7528\u4f8b\u9875\u9762\uff0c\u540c\u65f6\u6b64\u4e5f\u652f\u6301\u8de8\u9879\u76ee\u7684\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u548c\u573a\u666f\u7528\u4f8b\u7684\u5f15\u7528\u3002 \u52fe\u9009\u9700\u8981\u5173\u8054\u7684\u6d4b\u8bd5\u7528\u4f8b\u540e\uff0c\u540c\u65f6\u9700\u8981\u9009\u62e9\u8fd0\u884c\u73af\u5883\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u5373\u53ef\u5b8c\u6210\u63a5\u53e3\u7528\u4f8b\u7684\u5173\u8054\u64cd\u4f5c\u3002

    \u5173\u8054\u63a5\u53e3\u6d4b\u8bd5\u7528\u4f8b\u540e\uff0c\u5728\u6d4b\u8bd5\u7528\u4f8b\u5217\u8868\u4e2d\u53ef\u70b9\u51fb\u3010\u6267\u884c\u3011\uff0c\u6267\u884c\u63a5\u53e3\u6d4b\u8bd5\uff0c\u6267\u884c\u5b8c\u6210\u540e\u53ef\u70b9\u51fb\u3010\u67e5\u770b\u6d4b\u8bd5\u62a5\u544a\u3011\u67e5\u770b\u6d4b\u8bd5\u7ed3\u679c\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_manage/#53-ui-x-pack","title":"5.3 \u5173\u8054 UI \u6d4b\u8bd5\u7528\u4f8b (X-Pack)","text":"

    \u5207\u6362\u81f3\u3010UI\u6d4b\u8bd5\u7528\u4f8b\u3011\u6807\u7b7e\u89c6\u56fe\uff0c\u8fdb\u5165 UI \u6d4b\u8bd5\u7528\u4f8b\u5173\u8054\u9875\u9762\uff0c\u70b9\u51fb\u3010\u5173\u8054\u6d4b\u8bd5\u7528\u4f8b\u3011\u6309\u94ae\u3002

    \u52fe\u9009\u8981\u5173\u8054\u7684 UI \u6d4b\u8bd5\u7528\u4f8b\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u6309\u94ae\u5373\u53ef\u3002

    \u53ef\u770b\u5230 UI \u6d4b\u8bd5\u7528\u4f8b\u9875\u9762\uff0c\u5217\u8868\u5c55\u793a\u5df2\u7ecf\u5173\u8054\u7684\u7528\u4f8b

    "},{"location":"user_manual/test_track/test_plan/test_plan_manage/#54","title":"5.4 \u5173\u8054\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b","text":"

    \u5207\u6362\u81f3\u3010\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u3011\u6807\u7b7e\u89c6\u56fe\uff0c\u652f\u6301\u7528\u6237\u4e3a\u6d4b\u8bd5\u8ba1\u5212\u5173\u8054\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u3002\u7528\u6237\u53ef\u4ee5\u5728\u8be5\u9875\u9762\u53d1\u8d77\u5355\u7528\u4f8b\u7684\u5feb\u901f\u6267\u884c\u3001\u67e5\u770b\u5355\u7528\u4f8b\u6267\u884c\u7ed3\u679c\uff0c\u540c\u65f6\u652f\u6301\u6279\u91cf\u53d6\u6d88\u5173\u8054\u3001\u6279\u91cf\u6267\u884c\u7b49\u64cd\u4f5c\u3002\u76ee\u524d\uff0c\u5e73\u53f0\u652f\u6301\u4ee5\u5e76\u884c\u6216\u4e32\u884c\u65b9\u5f0f\u6279\u91cf\u6267\u884c\u6027\u80fd\u6d4b\u8bd5\u7528\u4f8b\u3002

    "},{"location":"user_manual/test_track/test_plan/test_plan_manage/#55","title":"5.5 \u62a5\u544a\u7edf\u8ba1","text":"

    \u5207\u6362\u81f3\u3010\u62a5\u544a\u7edf\u8ba1\u3011\u6807\u7b7e\u89c6\u56fe\uff0c\u53ef\u770b\u5230\u8be5\u6d4b\u8bd5\u8ba1\u5212\u7684\u5177\u4f53\u62a5\u544a\u5185\u5bb9\uff0c\u4e5f\u53ef\u4ee5\u81ea\u5b9a\u4e49\u7f16\u5199\u6d4b\u8bd5\u62a5\u544a\u603b\u7ed3\u5185\u5bb9\u3002

    \u70b9\u51fb\u3010\u5206\u4eab\u3011\u6309\u94ae\uff0c\u53ef\u590d\u5236\u8be5\u6d4b\u8bd5\u62a5\u544a\u94fe\u63a5\u8fdb\u884c\u5206\u4eab\u3002

    \u70b9\u51fb\u3010\u914d\u7f6e\u3011\u6309\u94ae\uff0c\u53ef\u81ea\u5b9a\u4e49\u914d\u7f6e\u62a5\u544a\u5185\u5bb9\u3002

    \u53ef\u4fdd\u5b58\u5f53\u524d\u6d4b\u8bd5\u62a5\u544a\uff0c\u4e5f\u53ef\u5bfc\u51fa\u5f53\u524d\u6d4b\u8bd5\u62a5\u544a\uff0c\u5bfc\u51fa\u7684\u683c\u5f0f\u4e3a HTML \u683c\u5f0f\u3002

    \u53ef\u5207\u6362\u4e0d\u540c\u6d4b\u8bd5\u8ba1\u5212\u67e5\u770b\u62a5\u544a\u7edf\u8ba1\uff0c\u70b9\u51fb\u5de6\u4fa7\u76ee\u5f55\uff0c\u53ef\u67e5\u770b\u62a5\u544a\u7edf\u8ba1\u76ee\u5f55\u3002

    "},{"location":"user_manual/ui_test/info/","title":"Info","text":"
    • \u4fee\u6539 /opt/metersphere/.env \u6587\u4ef6\u4e2d MS_SELENIARM_ENABLED \u503c\uff0cMS_SELENIARM_ENABLED=true\uff0c \u4fee\u6539\u914d\u7f6e\u540e\u52a0\u8f7d\u914d\u7f6e\u6587\u4ef6\u6267\u884c msctl reload\u3002
    • docker ps \u68c0\u67e5 local-selenium-grid \u5bb9\u5668\u662f\u5426\u6210\u529f\u542f\u52a8\u3002
    • \u5728 MeterSphere \u7cfb\u7edf\u53c2\u6570\u8bbe\u7f6e\u4e2d\u4fee\u6539 selenium-docker \u5730\u5740\u4e3ahttp://local-selenium-grid:4444\u3002
    • UI \u6d4b\u8bd5\u7528\u4f8b\uff0c\u9ed8\u8ba4 \"\u6027\u80fd\u6a21\u5f0f\" \u6ca1\u6709\u622a\u56fe\u5c55\u793a\uff0c\u5173\u6389 \"\u6027\u80fd\u6d4b\u8bd5\" \u53ef\u4ee5\u67e5\u770b\u6bcf\u4e2a\u6b65\u9aa4\u7684\u622a\u56fe\u3002
    • \u5982\u679c\u5bfc\u5165 License \u6210\u529f\u540e\uff0c\u4f9d\u7136\u663e\u793a\u6ca1\u6709 UI \u6d4b\u8bd5\u6a21\u5757\uff0c\u8bf7\u5230\u3010\u7528\u6237\u7ec4\u4e0e\u6743\u9650\u3011\u4e2d\u786e\u8ba4\u662f\u5426\u6709 UI \u6a21\u5757\u7684\u6743\u9650\u3002
    "},{"location":"user_manual/ui_test/intro/","title":"\u6982\u8ff0","text":"

    MeterSphere UI \u6d4b\u8bd5\u6a21\u5757\u56f4\u7ed5\u5e94\u7528\u7cfb\u7edf\u7684 \u7528\u6237\u754c\u9762 \u63d0\u4f9b\u4ee5\u4e0b\u4e3b\u8981\u529f\u80fd\uff1a

    • \u5143\u7d20\u5e93\uff1a\u5e73\u53f0\u63d0\u4f9b\u5143\u7d20\u5e93\u7684\u529f\u80fd\uff0c\u901a\u8fc7\u521b\u5efa\u5143\u7d20\u5e93\uff0c\u53ef\u4ee5\u628a UI \u81ea\u52a8\u5316\u573a\u666f\u4e2d\u7684\u5355\u4e2a\u6b65\u9aa4\uff0c\u8fdb\u884c\u7edf\u4e00\u7ba1\u7406\uff0c\u8fbe\u5230\u9875\u9762\u5143\u7d20\u5728\u4e0d\u540c UI \u573a\u666f\u4e2d\u590d\u7528\u7684\u6548\u679c\u3002
    • UI \u81ea\u52a8\u5316\uff1a\u652f\u6301\u624b\u52a8\u521b\u5efa UI \u81ea\u52a8\u5316\u573a\u666f\u548c\u5bfc\u5165 SeleniumIDE \u5de5\u5177\u5f55\u5236\u597d\u7684 side \u811a\u672c\u6587\u4ef6\uff0c\u652f\u6301\u6dfb\u52a0\u6d4f\u89c8\u5668\u64cd\u4f5c\u3001 \u5f39\u7a97\u64cd\u4f5c\u3001\u5143\u7d20\u64cd\u4f5c\u3001\u9f20\u6807\u64cd\u4f5c\u3001\u8f93\u5165\u64cd\u4f5c\u3001\u6d41\u7a0b\u63a7\u5236\u7b49\u6b65\u9aa4\uff0c\u5e76\u63d0\u4f9b\u67e5\u770b\u5143\u7d20\u5e93\u3001\u524d\u7f6e\u64cd\u4f5c\u3001\u540e\u7f6e\u64cd\u4f5c\u3001\u9519\u8bef\u5904\u7406\u9ad8\u7ea7\u529f\u80fd\u3002
    • \u6d4b\u8bd5\u62a5\u544a\uff1a\u63d0\u4f9b\u76f4\u89c2\u3001\u7f8e\u89c2\u7684\u9875\u9762\u5bf9UI\u6d4b\u8bd5\u7684\u7ed3\u679c\u8fdb\u884c\u53ef\u89c6\u5316\u5c55\u793a\uff0c\u53ef\u67e5\u770b\u573a\u666f\u5168\u90e8\u6b65\u9aa4\u548c\u5931\u8d25\u6b65\u9aa4\uff0c\u4ee5\u53ca\u63a7\u5236\u53f0\u8be6\u60c5\uff0c\u5e76\u4e14\u652f\u6301\u5bf9\u6b65\u9aa4\u6267\u884c\u65f6\u7684UI\u622a\u56fe\u9884\u89c8\u3002

    \u5907\u6ce8: UI \u6d4b\u8bd5\u6a21\u5757\u662f\u4f01\u4e1a\u7248 X-Pack \u529f\u80fd\u589e\u5f3a\u5305\u529f\u80fd\u3002\u5982\u9700\u4f7f\u7528\u4f01\u4e1a\u7248\uff0c\u8bf7\u70b9\u51fb\uff1a\u7533\u8bf7\u4f01\u4e1a\u7248\u8bd5\u7528\u3002

    \u6ce8\u610f\u4e8b\u9879

    • \u4fee\u6539 /opt/metersphere/.env \u6587\u4ef6\u4e2d MS_UI_ENABLED \u503c\uff0cMS_UI_ENABLED=true\uff0c \u4fee\u6539\u914d\u7f6e\u540e\u52a0\u8f7d\u914d\u7f6e\u6587\u4ef6\u6267\u884c msctl reload\u3002
    • docker ps \u68c0\u67e5 selenium-hub \u5bb9\u5668\u662f\u5426\u6210\u529f\u542f\u52a8\u3002
    • \u5728 MeterSphere \u7cfb\u7edf\u53c2\u6570\u8bbe\u7f6e\u4e2d\u4fee\u6539 selenium-docker \u5730\u5740\u4e3ahttp://selenium-hub:4444\u3002
    • UI \u6d4b\u8bd5\u7528\u4f8b\uff0c\u9ed8\u8ba4 \"\u6027\u80fd\u6a21\u5f0f\" \u6ca1\u6709\u622a\u56fe\u5c55\u793a\uff0c\u5173\u6389 \"\u6027\u80fd\u6d4b\u8bd5\" \u53ef\u4ee5\u67e5\u770b\u6bcf\u4e2a\u6b65\u9aa4\u7684\u622a\u56fe\u3002
    • \u5982\u679c\u5bfc\u5165 License \u6210\u529f\u540e\uff0c\u4f9d\u7136\u663e\u793a\u6ca1\u6709 UI \u6d4b\u8bd5\u6a21\u5757\uff0c\u8bf7\u5230\u3010\u7528\u6237\u7ec4\u4e0e\u6743\u9650\u3011\u4e2d\u786e\u8ba4\u662f\u5426\u6709 UI \u6a21\u5757\u7684\u6743\u9650\u3002

    "},{"location":"user_manual/ui_test/ui_automation/","title":"UI \u81ea\u52a8\u5316","text":""},{"location":"user_manual/ui_test/ui_automation/#1","title":"1 \u521b\u5efa\u573a\u666f","text":""},{"location":"user_manual/ui_test/ui_automation/#11","title":"1.1 \u57fa\u7840\u4fe1\u606f","text":"

    \u70b9\u51fb\u3010+\u3011\u6309\u94ae\uff0c\u9009\u62e9\u3010\u521b\u5efa\u573a\u666f\u3011\uff0c\u8fdb\u5165\u573a\u666f\u521b\u5efa\u9875\u9762\u3002

    \u5728\u3010\u57fa\u7840\u4fe1\u606f\u3011\u680f\uff0c\u6dfb\u52a0\u6a21\u5757\u3001\u72b6\u6001\u3001\u540d\u79f0\u7b49\u4fe1\u606f\u540e\u5373\u53ef\u4fdd\u5b58\u573a\u666f\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#12","title":"1.2 \u573a\u666f\u53c2\u6570","text":"
    • \u573a\u666f\u53d8\u91cf\uff1a\u70b9\u51fb\u3010\u573a\u666f\u53d8\u91cf\u3011\uff0c\u8fdb\u5165\u53d8\u91cf\u6dfb\u52a0\u9875\u9762\u3002

    \u76ee\u524d\u652f\u6301\u6dfb\u52a0\u3010\u5b57\u7b26\u4e32\u3001\u6570\u7ec4\u3001json\u3001\u6570\u503c\u3011\uff0c\u53ef\u4ee5\u5355\u884c\u6dfb\u52a0\u548c\u6279\u91cf\u6dfb\u52a0\uff0c\u6279\u91cf\u6dfb\u52a0\u4ee5 \u201c\u53d8\u91cf\u540d:\u53d8\u91cf\u503c\u201d \u683c\u5f0f\u6dfb\u52a0\u3002

    • \u6027\u80fd\u6a21\u5f0f\uff1a\u3010\u6027\u80fd\u6a21\u5f0f\u3011\u9ed8\u8ba4\u5f00\u542f\uff0c\u5f00\u542f\u540e\u4e0d\u4f1a\u5bf9\u6bcf\u4e2a\u6b65\u9aa4\u90fd\u622a\u56fe\uff0c\u66f4\u8282\u7701\u8d44\u6e90\u3002

    • \u6d4f\u89c8\u5668\u9a71\u52a8\uff1a\u6d4f\u89c8\u5668\u9a71\u52a8\u5373\u4ee5\u4ec0\u4e48\u6d4f\u89c8\u5668\u6267\u884c\u8be5\u573a\u666f\uff0c\u5f53\u524d\u652f\u6301 chrome \u6d4f\u89c8\u5668\u548c firefox \u6d4f\u89c8\u5668\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#13","title":"1.3 \u6dfb\u52a0\u6b65\u9aa4","text":"
    • \u6dfb\u52a0\u6b65\u9aa4 \uff1a\u70b9\u51fb\u573a\u666f\u53f3\u4e0b\u89d2\u3010+\u3011\u6309\u94ae\u3002
    • \u6d4f\u89c8\u5668\u64cd\u4f5c\uff1a\u70b9\u51fb\u3010\u6d4f\u89c8\u5668\u64cd\u4f5c\u3011\uff0c\u8f93\u5165\u3010URL\u3011\u5730\u5740\uff0c\u53ef\u6dfb\u52a0\u6d4f\u89c8\u5668\u76f8\u5173\u64cd\u4f5c\u6b65\u9aa4\u3002

    \u76ee\u524d\u652f\u6301\u6d4f\u89c8\u5668\u6253\u5f00\u7f51\u9875\u3001\u5173\u95ed\u7f51\u9875\u3001\u5207\u6362\u7a97\u53e3\u3001\u8bbe\u7f6e\u7a97\u53e3\u5927\u5c0f\u3001\u9009\u62e9\u5185\u5185\u5d4c\u7f51\u9875\u7684\u64cd\u4f5c\u3002

    • \u5f39\u7a97\u64cd\u4f5c\uff1a\u652f\u6301\u5bf9\u5f39\u7a97\u8f93\u5165\u6846\u8f93\u5165\u5185\u5bb9\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u548c\u3010\u53d6\u6d88\u3011\u7684\u64cd\u4f5c\u3002

    • \u5143\u7d20\u64cd\u4f5c\uff1a \u652f\u6301\u3010\u63d0\u4ea4\u8868\u5355\u3011\u3001\u3010\u4e0b\u62c9\u6846\u64cd\u4f5c\u3011\u3001\u3010\u8bbe\u7f6e\u9009\u9879\u3011\u3001\u3010\u7b49\u5f85\u5143\u7d20\u3011\u56db\u79cd\u65b9\u5f0f\u3002
    • \u3010\u63d0\u4ea4\u8868\u5355\u3011\uff1a\u9488\u5bf9\u5c5e\u6027type=\"submit\u201d\u7684\u5143\u7d20\uff0c\u7528\u4e8e\u63d0\u4ea4\u8868\u5355\u6570\u636e\u3002
    • \u3010\u4e0b\u62c9\u6846\u64cd\u4f5c\u3011\uff1a\u5bf9\u4e0b\u62c9\u9009\u9879\u8fdb\u884c\u64cd\u4f5c\uff0c\u53ef\u5b9e\u73b0\u5355\u9009\uff0c\u591a\u9009\uff0c\u4ee5\u53ca\u53d6\u6d88\u9009\u62e9\u7684\u64cd\u4f5c\u3002
    • \u3010\u8bbe\u7f6e\u9009\u9879\u3011\uff1a\u7528\u4e8e\u8bbe\u7f6e checkbox/radio \u7684\u72b6\u6001\u3002
    • \u3010\u7b49\u5f85\u5143\u7d20\u3011\uff1a\u5bf9\u9875\u9762\u5bf9\u8c61\u6267\u884c\u6307\u5b9a\u7684\u7b49\u5f85\u64cd\u4f5c\uff0c\u9ed8\u8ba4\u7b49\u5f85\u8d85\u65f63000ms\u3002

    • \u9f20\u6807\u64cd\u4f5c\uff1a\u652f\u6301\u3010\u9f20\u6807\u70b9\u51fb\u3011\u3001\u3010\u9f20\u6807\u79fb\u52a8\u3011\u548c\u3010\u9f20\u6807\u62d6\u62fd\u3011\u7684\u64cd\u4f5c\uff0c\u901a\u8fc7\u5b9a\u4f4d\u627e\u5230\u5143\u7d20\u540e\uff0c\u8fd8\u652f\u6301\u8bbe\u7f6e\u9f20\u6807\u5728\u5143\u7d20\u4e0a\u7684\u70b9\u51fb\u4f4d\u7f6e\u3002
    • \u3010\u9f20\u6807\u70b9\u51fb\u3011\uff1a\u6a21\u62df\u9f20\u6807\u70b9\u51fb\u7684\u64cd\u4f5c\uff0c\u652f\u6301\u5355\u51fb/\u53cc\u51fb/\u6309\u4e0b/\u5f39\u8d77\u3002
    • \u3010\u9f20\u6807\u79fb\u52a8\u3011\uff1a\u5c06\u9f20\u6807\u60ac\u505c\u5728\u7f51\u9875\u5143\u7d20\u7684\u4e0a\u65b9\u3002
    • \u3010\u9f20\u6807\u62d6\u62fd\u3011\uff1a\u6a21\u62df\u9f20\u6807\u5c06\u5143\u7d20\u4ece\u67d0\u4e2a\u4f4d\u7f6e\u62d6\u5230\u53e6\u4e00\u4e2a\u4f4d\u7f6e\u3002

    \u3010\u9f20\u6807\u64cd\u4f5c\u3011\u9009\u62e9\u3010\u9f20\u6807\u70b9\u51fb\u3011\uff0c\u9009\u62e9\u70b9\u51fb\u65b9\u5f0f\uff0c\u586b\u5199\u5143\u7d20\u4f4d\u7f6e\u4ee5\u53ca\u9f20\u6807\u70b9\u51fb\u4f4d\u7f6e\u5373\u53ef

    \u5f53\u5b9a\u4f4d\u5143\u7d20\u88ab\u906e\u6321\u65f6\uff0c\u53ef\u8fdb\u884c\u5f3a\u5236\u70b9\u51fb

    \u3010\u9f20\u6807\u64cd\u4f5c\u3011\u9009\u62e9\u3010\u9f20\u6807\u79fb\u52a8\u3011\uff0c\u9009\u62e9\u79fb\u52a8\u65b9\u5f0f\uff0c\u586b\u5199\u9f20\u6807\u4f4d\u7f6e\u5373\u53ef

    \u3010\u9f20\u6807\u64cd\u4f5c\u3011\u9009\u62e9\u3010\u9f20\u6807\u62d6\u62fd\u3011\uff0c\u9009\u62e9\u62d6\u62fd\u65b9\u5f0f\uff0c\u586b\u5199\u64cd\u4f5c\u5143\u7d20\u4ee5\u53ca\u5750\u6807\u70b9\u5373\u53ef\u3002

    • \u8f93\u5165\u64cd\u4f5c\uff1a\u652f\u6301\u8f93\u5165\u6846\u548c\u53ef\u7f16\u8f91\u6bb5\u843d\u8f93\u5165\uff0c\u540c\u65f6\u652f\u6301\u8ffd\u52a0\u8f93\u5165\u548c\u8986\u76d6\u8f93\u5165\u6a21\u5f0f\u3002

    • \u6d41\u7a0b\u63a7\u5236\uff1a\u652f\u6301\u3010\u6b21\u6570\u5faa\u73af\u3011\u3001\u3010ForEach\u5faa\u73af\u3011\u3001\u3010While\u3011\u3001\u3010If\u3011\u3001\u3010ElseIf\u3011\u3001\u3010Else\u3011\u7b49\u65b9\u5f0f\u3002

    • \u3010\u6b21\u6570\u5faa\u73af\u3011\uff1a\u8bbe\u7f6e\u6b65\u9aa4\u6267\u884c\u6b21\u6570\u3002

    • \u3010ForEach \u5faa\u73af\u3011\uff1a\u904d\u5386\u7ed9\u5b9a\u7684\u96c6\u5408\u3002
    • \u3010While \u5faa\u73af\u3011\uff1a\u6ee1\u8db3\u8868\u8fbe\u5f0f\u7684\u6761\u4ef6\u5219\u5faa\u73af\u6267\u884c\u91cc\u9762\u7684\u6b65\u9aa4\u3002
    • \u3010If\u3011\uff1a\u6ee1\u8db3 If \u6761\u4ef6\u5219\u6267\u884c\u91cc\u9762\u7684\u6b65\u9aa4\u3002
    • \u3010ElseIf\u3011\uff1a\u4e0d\u6ee1\u8db3 If \u6761\u4ef6\u4e14\u6ee1\u8db3 ElseIf \u6761\u4ef6\u5219\u6267\u884c\u3002
    • \u3010Else\u3011\uff1a\u4e0d\u6ee1\u8db3 If \u6761\u4ef6\u5219\u6267\u884c\u3002

    \u5c06\u9700\u8981\u8fdb\u884c\u6d41\u7a0b\u63a7\u5236\u7684\u6b65\u9aa4\u62d6\u5165\u6d41\u7a0b\u63a7\u5236\u5668\u4e0b\u5373\u53ef\u5b9e\u73b0\u6b65\u9aa4\u5faa\u73af\u6216\u8005\u6761\u4ef6\u63a7\u5236\u3002

    • \u573a\u666f\u5bfc\u5165\uff1a\u70b9\u51fb\u3010\u573a\u666f\u5bfc\u5165\u3011\uff0c\u53ef\u4ee5\u9009\u62e9\u9879\u76ee\u4e0b\u7684\u591a\u4e2a\u573a\u666f/\u6307\u4ee4\u5bfc\u5165\u5230\u8be5\u573a\u666f\u505a\u4e3a\u4e00\u4e2a\u6b65\u9aa4\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#14","title":"1.4 \u9ad8\u7ea7\u8bbe\u7f6e","text":"
    • \u5143\u7d20\u5e93\uff1a\u5982\u679c\u5f53\u524d\u6b65\u9aa4\u4f7f\u7528\u4e86\u5143\u7d20\u5e93\u7684\u5143\u7d20\uff0c\u5728\u3010\u9ad8\u7ea7\u8bbe\u7f6e\u3011\u7684\u5143\u7d20\u5e93\u4e0b\u4f1a\u5c55\u793a\u5f53\u524d\u6b65\u9aa4\u6240\u9009\u7684\u5143\u7d20\u5bf9\u8c61\u3002
    • \u524d\u7f6e\u64cd\u4f5c\uff1a\u6709\u56db\u79cd\u7c7b\u578b\uff0c\u5305\u62ec\u3010\u524d\u7f6e\u811a\u672c\u3011\u3001\u3010\u7b49\u5f85\u65f6\u95f4\u3011\u3001\u3010\u6570\u636e\u63d0\u53d6\u3011\u548c\u3010\u622a\u56fe\u3011\u3002

    \uff081\uff09\u524d\u7f6e\u811a\u672c\uff1a\u76ee\u524d\u652f\u6301\u3010js\u811a\u672c\u3011\uff0c\u8bbe\u7f6e js \u811a\u672c\u540e\uff0c\u4f1a\u5148\u4e8e\u5f53\u524d\u6b65\u9aa4\u5728\u6d4f\u89c8\u5668\u4e2d\u6267\u884c\u8be5\u811a\u672c\u3002

    \u811a\u672c\u7c7b\u578b\u53ef\u9009\u62e9\u540c\u6b65\u6216\u5f02\u6b65\uff0c\u5982\u679c\u811a\u672c\u6267\u884c\u540e\u6709\u8fd4\u56de\uff0c\u53ef\u4ee5\u4ee5\u53d8\u91cf\u5f62\u5f0f\u5b58\u50a8\u8fd4\u56de\u503c\u3002

    \uff082\uff09\u7b49\u5f85\u65f6\u95f4\uff1a\u3010\u524d\u7f6e\u64cd\u4f5c\u3011\u53ef\u4ee5\u8bbe\u7f6e\u7b49\u5f85\u65f6\u95f4\uff0c\u5982\u4e0b\u56fe\u6240\u793a\uff0c\u5c06\u4f1a\u7b49\u5f85 3 \u79d2\u518d\u6267\u884c\u5f53\u524d\u6b65\u9aa4\u3002

    \uff083\uff09\u6570\u636e\u63d0\u53d6\uff1a\u3010\u524d\u7f6e\u64cd\u4f5c\u3011\u53ef\u4ee5\u4f7f\u7528\u6570\u636e\u63d0\u53d6\uff0c\u53ef\u4ee5\u63d0\u53d6\u7a97\u53e3\u4fe1\u606f\u548c\u5143\u7d20\u4fe1\u606f\uff0c\u5e76\u4ee5\u53d8\u91cf\u5f62\u5f0f\u8fdb\u884c\u5b58\u50a8\u3002

    \u7a97\u53e3\u4fe1\u606f\u5305\u62ec\u7a97\u53e3 Handle \u4fe1\u606f\u548c\u7f51\u9875\u6807\u9898\u3002

    \u5143\u7d20\u4fe1\u606f\u53ef\u4ee5\u63d0\u53d6\u666e\u901a\u5bf9\u8c61\u3001\u6587\u672c\u5bf9\u8c61\u3001\u5143\u7d20\u503c\u3001\u5143\u7d20\u5c5e\u6027\u548c\u5339\u914d xpath \u7684\u5143\u7d20\u6570\u91cf\u3002

    \u7cfb\u7edf\u4f1a\u6839\u636e\u6240\u9009\u7684\u5b9a\u4f4d\u65b9\u5f0f\u3001\u5b9a\u4f4d\u8868\u8fbe\u5f0f\u548c\u5143\u7d20\u5c5e\u6027\u63d0\u53d6\u6570\u636e\u4ee5\u53ca\u5b58\u50a8\u53d8\u91cf\u3002

    \uff084\uff09\u540e\u7f6e\u64cd\u4f5c\uff1a\u540e\u7f6e\u64cd\u4f5c\u4f1a\u5728\u5f53\u524d\u6b65\u9aa4\u6267\u884c\u7ed3\u675f\u540e\u518d\u6267\u884c\uff0c\u540e\u7f6e\u64cd\u4f5c\u4e0e\u524d\u7f6e\u64cd\u4f5c\u7684\u65b9\u5f0f\u57fa\u672c\u4e00\u81f4\uff0c\u53ea\u662f\u591a\u4e86\u65ad\u8a00\u7c7b\u578b\u3002

    \u76ee\u524d\u65ad\u8a00\u5bf9\u8c61\u652f\u6301\u65ad\u8a00\u503c\u3001\u5f39\u7a97\u6587\u672c\u3001\u5143\u7d20\u65ad\u8a00\u3001\u4e0b\u62c9\u6846\u548c\u7f51\u9875\u6807\u9898\u3002

    • \u9519\u8bef\u5904\u7406\uff1a\u76ee\u524d\u6709\u4e24\u79cd\u9519\u8bef\u5904\u7406\u65b9\u5f0f\uff1a
    • \u3010\u7ec8\u6b62\u6d41\u7a0b\u3011\uff1a\u5f53\u524d\u6b65\u9aa4\u5931\u8d25\u540e\uff0c\u505c\u6b62\u6d4b\u8bd5\uff0c\u540e\u7eed\u7684\u6b65\u9aa4\u4e0d\u4f1a\u518d\u6267\u884c\u3002
    • \u3010\u5ffd\u7565\u5f02\u5e38\u5e76\u7ee7\u7eed\u6267\u884c\u3011\uff1a\u5ffd\u7565\u8be5\u9519\u8bef\uff0c\u7ee7\u7eed\u5f80\u4e0b\u6267\u884c\u6d4b\u8bd5\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#15","title":"1.5 \u6b65\u9aa4\u5217\u8868","text":"
    • \u67e5\u770b\u8be6\u60c5\uff1a\u70b9\u51fb\u67d0\u4e2a\u6b65\u9aa4\uff0c\u53f3\u4fa7\u4f1a\u5c55\u793a\u8be5\u6b65\u9aa4\u7684\u8be6\u7ec6\u5185\u5bb9\u3002
    • \u57fa\u7840\u64cd\u4f5c\uff1a\u9f20\u6807\u60ac\u6d6e\u5728\u67d0\u4e2a\u6b65\u9aa4\u4e4b\u4e0a\uff0c\u4f1a\u5c55\u793a\u3010\u7f16\u8f91\u3011\u952e\uff0c\u70b9\u51fb\u540e\u53ef\u91cd\u547d\u540d\u8be5\u6b65\u9aa4\u3002

    \u9f20\u6807\u60ac\u6d6e\u5728\u67d0\u4e2a\u6b65\u9aa4\u4e4b\u4e0a\uff0c\u70b9\u51fb\u6b65\u9aa4\u53f3\u4fa7\u3010\u2026\u3011\uff0c\u53ef\u5bf9\u6b65\u9aa4\u8fdb\u884c\u590d\u5236\u3001\u7981\u7528\u3001\u5220\u9664\u6b65\u9aa4\u548c\u91cd\u547d\u540d\u3002

    • \u6279\u91cf\u64cd\u4f5c\uff1a\u70b9\u51fb\u5de6\u4fa7\u5c0f\u56fe\u8868\uff0c\u53ef\u4ee5\u5217\u8868\u8fdb\u884c\u6279\u91cf\u64cd\u4f5c\u3002

    \u5305\u62ec\u6279\u91cf\u542f\u7528\u3001\u6279\u91cf\u7981\u7528\u3001\u6279\u91cf\u5c55\u5f00\u3001\u6279\u91cf\u6298\u53e0\u548c\u6279\u91cf\u5220\u9664\u6b65\u9aa4\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#2","title":"2 \u5bfc\u5165\u5bfc\u51fa","text":""},{"location":"user_manual/ui_test/ui_automation/#21","title":"2.1 \u5bfc\u51fa\u573a\u666f","text":"

    \u52fe\u9009\u573a\u666f\uff0c\u70b9\u51fb\u5de6\u4fa7\u3010\u66f4\u591a\u64cd\u4f5c\u3011\uff0c\u9009\u62e9\u3010\u5bfc\u51fa\u3011\uff0c\u573a\u666f\u4f1a\u5bfc\u51fa\u4e3a side \u683c\u5f0f\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#22","title":"2.2 \u5bfc\u5165\u573a\u666f","text":"

    \u70b9\u51fb\u5de6\u4fa7\u3010\u66f4\u591a\u64cd\u4f5c\u3011\uff0c\u9009\u62e9\u3010\u5bfc\u5165\u3011\u3002

    \u5728\u5bfc\u5165\u9875\u9762\u9009\u62e9\u3010\u5bfc\u5165\u6a21\u5757\u3011\u548c\u3010\u5bfc\u5165\u6a21\u5f0f\u3011\uff0c\u5e76\u4e0a\u4f20 side \u683c\u5f0f\u7684\u6587\u4ef6\uff0c\u70b9\u51fb\u3010\u4fdd\u5b58\u3011\u5373\u53ef\u628a UI \u81ea\u52a8\u5316\u573a\u666f\u5bfc\u5165\u5230\u76f8\u5e94\u7684\u6a21\u5757\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#3","title":"3 \u57fa\u7840\u64cd\u4f5c","text":""},{"location":"user_manual/ui_test/ui_automation/#31","title":"3.1 \u573a\u666f\u5217\u8868","text":"

    \u5728\u573a\u666f\u5217\u8868\uff0c\u53ef\u4ee5\u9009\u62e9\u5de6\u4fa7\u7684\u7528\u4f8b\u76ee\u5f55\uff0c\u53f3\u8fb9\u4f1a\u6839\u636e\u6240\u9009\u76ee\u5f55\u5c55\u793a\u5bf9\u5e94\u7684\u573a\u666f\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#32","title":"3.2 \u6267\u884c\u573a\u666f","text":"

    \u70b9\u51fb\u53f3\u4fa7\u3010\u6267\u884c\u3011\u6309\u94ae\uff0c\u4f1a\u5728\u5f53\u524d\u9875\u9762\u6267\u884c\u8be5\u573a\u666f\u3002

    \u573a\u666f\u6267\u884c\u5b8c\u6210\u4f1a\uff0c\u4f1a\u5728\u5f53\u524d\u4e5f\u4f1a\u5c55\u793a\u6d4b\u8bd5\u62a5\u544a\u8be6\u60c5\uff0c\u4e5f\u53ef\u4ee5\u5230\u3010UI\u6d4b\u8bd5-\u6d4b\u8bd5\u62a5\u544a\u3011\u8def\u5f84\u4e0b\u67e5\u770b\u62a5\u544a\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#33","title":"3.3 \u7f16\u8f91\u573a\u666f","text":""},{"location":"user_manual/ui_test/ui_automation/#34","title":"3.4 \u590d\u5236\u573a\u666f","text":""},{"location":"user_manual/ui_test/ui_automation/#35","title":"3.5 \u5220\u9664\u573a\u666f","text":"

    \u70b9\u51fb\u3010\u5220\u9664\u3011\u6309\u94ae\uff0c\u4f1a\u5f39\u51fa\u63d0\u793a\u6846\uff0c\u786e\u8ba4\u5220\u9664\u540e\uff0c\u573a\u666f\u4f1a\u88ab\u5220\u9664\u5230\u56de\u6536\u7ad9\u3002

    \u56de\u6536\u7ad9\u5185\u7684\u573a\u666f\u53ef\u4ee5\u6062\u590d\u6216\u5f7b\u5e95\u5220\u9664\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#4","title":"4 \u6279\u91cf\u64cd\u4f5c","text":""},{"location":"user_manual/ui_test/ui_automation/#41","title":"4.1 \u6279\u91cf\u7f16\u8f91","text":"

    \u52fe\u9009\u591a\u4e2a\u573a\u666f\uff0c\u70b9\u51fb\u5217\u8868\u5de6\u4fa7\u7684\u4e09\u4e2a\u70b9\uff0c\u70b9\u51fb\u3010\u6279\u91cf\u7f16\u8f91\u3011\u3002

    \u5f39\u51fa\u6279\u91cf\u7f16\u8f91\u9875\u9762\uff0c\u9009\u62e9\u9700\u8981\u4fee\u6539\u7684\u5c5e\u6027\u548c\u5c5e\u6027\u503c\uff0c\u70b9\u51fb\u3010\u786e\u5b9a\u3011\u5373\u53ef\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#42","title":"4.2 \u6279\u91cf\u79fb\u52a8","text":"

    \u52fe\u9009\u591a\u4e2a\u573a\u666f\uff0c\u70b9\u51fb\u3010\u6279\u91cf\u79fb\u52a8\u3011\uff0c\u5f39\u51fa\u6279\u91cf\u79fb\u52a8\u7f16\u8f91\u9875\u9762\u3002

    \u9009\u62e9\u7528\u4f8b\u76ee\u5f55\u70b9\u51fb\u3010\u786e\u5b9a\u3011\uff0c\u52fe\u9009\u7684\u573a\u666f\u4f1a\u79fb\u52a8\u5230\u8be5\u76ee\u5f55\u4e0b\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#43","title":"4.3 \u6279\u91cf\u590d\u5236","text":"

    \u52fe\u9009\u591a\u4e2a\u573a\u666f\uff0c\u70b9\u51fb\u3010\u6279\u91cf\u590d\u5236\u3011\uff0c\u4f1a\u5f39\u51fa\u6279\u91cf\u590d\u5236\u7f16\u8f91\u9875\u9762\u3002

    \u9009\u62e9\u7528\u4f8b\u76ee\u5f55\u5e76\u70b9\u51fb\u3010\u786e\u5b9a\u3011\uff0c\u52fe\u9009\u7684\u7528\u4f8b\u4f1a\u590d\u5236\u5230\u8be5\u76ee\u5f55\u4e0b\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#44","title":"4.4 \u6279\u91cf\u5220\u9664","text":"

    \u52fe\u9009\u591a\u4e2a\u573a\u666f\uff0c\u70b9\u51fb\u3010\u6279\u91cf\u5220\u9664\u3011\uff0c\u5f39\u51fa\u786e\u8ba4\u9875\u9762\u3002

    \u70b9\u51fb\u3010\u786e\u5b9a\u3011\uff0c\u52fe\u9009\u7684\u5220\u9664\u4f1a\u88ab\u5220\u9664\u5230\u56de\u6536\u7ad9\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#5","title":"5 \u521b\u5efa\u6307\u4ee4","text":""},{"location":"user_manual/ui_test/ui_automation/#51","title":"5.1 \u57fa\u672c\u4fe1\u606f","text":"

    \u70b9\u51fb\u3010+\u3011\u6309\u94ae\uff0c\u9009\u62e9\u3010\u521b\u5efa\u6307\u4ee4\u3011\uff0c\u8fdb\u5165\u6307\u4ee4\u521b\u5efa\u9875\u9762\u3002

    \u5728\u3010\u57fa\u7840\u4fe1\u606f\u3011\u680f\uff0c\u6dfb\u52a0\u6a21\u5757\u3001\u72b6\u6001\u3001\u540d\u79f0\u7b49\u4fe1\u606f\u540e\u5373\u53ef\u4fdd\u5b58\u573a\u666f\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#52","title":"5.2 \u6307\u4ee4\u6b65\u9aa4","text":"

    \u5728\u53f3\u4e0b\u89d2\u9009\u62e9\u6b65\u9aa4\u8fdb\u884c\u6dfb\u52a0\uff0c\u53ef\u5728\u3010\u6307\u4ee4\u6b65\u9aa4\u3011\u9875\u9762\u770b\u5230\u5404\u4e2a\u6b65\u9aa4\uff0c\u9ed8\u8ba4\u6709\u524d\u7f6e\u6b65\u9aa4\u3001\u81ea\u5b9a\u4e49\u6b65\u9aa4\u3001\u540e\u7f6e\u6b65\u9aa4\u3002

    \u6dfb\u52a0 UI \u81ea\u52a8\u5316\u63a7\u4ef6\u5230\u76f8\u5e94\u6b65\u9aa4\u4e0b\uff0c\u5176\u4e2d\u81ea\u5b9a\u4e49\u6b65\u9aa4\u5904\u652f\u6301\u53c2\u6570\u5316\u914d\u7f6e\u3002

    \u53ef\u5728\u3010\u573a\u666f\u6b65\u9aa4\u3011\u6216\u3010\u6307\u4ee4\u6b65\u9aa4\u3011\u7684\u6279\u91cf\u9009\u62e9\u4e2d\uff0c\u70b9\u51fb\u521b\u5efa\u81ea\u5b9a\u4e49\u6307\u4ee4\u9009\u9879\u3002

    "},{"location":"user_manual/ui_test/ui_automation/#53","title":"5.3 \u6307\u4ee4\u5217\u8868","text":"

    \u5728\u3010\u81ea\u52a8\u5316\u5217\u8868\u3011\u9875\u9762\uff0c\u5207\u6362\u5230\u3010\u6307\u4ee4\u3011\u9875\u9762\uff0c\u53ef\u770b\u5230\u6240\u6709\u7684\u6307\u4ee4\u5217\u8868\u3002

    \u53ef\u5bf9\u5217\u8868\u4e2d\u7684\u6307\u4ee4\u8fdb\u884c\u3010\u7f16\u8f91\u3011\u3001\u3010\u590d\u5236\u3011\u3001\u3010\u5220\u9664\u3011\u3001\u3010\u67e5\u770b\u5f15\u7528\u3011\u7b49\u64cd\u4f5c\u3002

    "},{"location":"user_manual/ui_test/ui_element_store/","title":"\u5143\u7d20\u5e93","text":""},{"location":"user_manual/ui_test/ui_element_store/#1","title":"1 \u521b\u5efa\u5143\u7d20","text":"

    \u5207\u6362\u5230\u3010UI\u6d4b\u8bd5\u3011\u6a21\u5757\u4e0b\u7684\u3010\u5143\u7d20\u5e93\u3011\u9875\u9762\uff0c\u70b9\u51fb\u3010\u521b\u5efa\u5143\u7d20\u3011\uff0c\u8f93\u5165\u5143\u7d20\u5b57\u6bb5\u540d\uff0c\u9009\u62e9\u6240\u5c5e\u6a21\u5757\u548c\u5b9a\u4f4d\u7c7b\u578b\uff0c\u7136\u540e\u8f93\u5165\u5143\u7d20\u5b9a\u4f4d\u7684\u8868\u8fbe\u5f0f\u548c\u5907\u6ce8\u3002

    "},{"location":"user_manual/ui_test/ui_element_store/#2","title":"2 \u5143\u7d20\u5b9a\u4f4d","text":"

    \u5143\u7d20\u5b9a\u4f4d\u652f\u6301\u591a\u79cd\u65b9\u5f0f\uff0c\u5305\u62ec id\u3001name\u3001class\u3001tag\u3001link\u3001plink\u3001css\u3001xpath\u3001lable\u3001value\u3001index\uff0c\u8fd9\u91cc\u4ee5 xpath \u4e3a\u4f8b\u3002\u8f93\u5165\u5fc5\u586b\u4fe1\u606f\u540e\uff0c\u70b9\u51fb\u786e\u8ba4\u5373\u53ef\u4fdd\u5b58\u5143\u7d20\u3002

    \u5728\u9875\u9762\u4e0a\u70b9\u51fb\u4f60\u8981\u5b9a\u4f4d\u7684\u5143\u7d20\uff0c\u7136\u540e\u53f3\u952e\u9009\u62e9\u3010\u68c0\u67e5\u3011\u3002

    \u53f3\u952e\u9009\u62e9 Copy-Copy XPath \u5373\u53ef\u83b7\u5f97\u8be5\u5143\u7d20\u7684 xpath \u8def\u5f84\u3002

    "},{"location":"user_manual/ui_test/ui_element_store/#3","title":"3 \u7f16\u8f91\u5143\u7d20","text":"

    \u5728\u5143\u7d20\u5e93\u5217\u8868\uff0c\u70b9\u51fb\u3010\u7f16\u8f91\u3011\u952e\uff0c\u53ef\u4ee5\u4fee\u6539\u5143\u7d20\u5c5e\u6027\uff0c\u4fee\u6539\u4e4b\u540e\u70b9\u51fb\u786e\u8ba4\u5373\u53ef\u4fdd\u5b58\u3002

    "},{"location":"user_manual/ui_test/ui_element_store/#4","title":"4 \u590d\u5236\u5143\u7d20","text":""},{"location":"user_manual/ui_test/ui_element_store/#5","title":"5 \u5220\u9664\u5143\u7d20","text":""},{"location":"user_manual/ui_test/ui_test_report/","title":"\u6d4b\u8bd5\u62a5\u544a","text":""},{"location":"user_manual/ui_test/ui_test_report/#1","title":"1 \u62a5\u544a\u5217\u8868","text":"

    \u6d4b\u8bd5\u62a5\u544a\u5217\u8868\u8868\u5934\u5c55\u793a\u4e86\u62a5\u544a\u7684\u540d\u79f0\u3001\u521b\u5efa\u4eba\u3001\u521b\u5efa\u65f6\u95f4\u3001\u7ed3\u675f\u65f6\u95f4\u3001\u89e6\u53d1\u65b9\u5f0f\u3001\u72b6\u6001\u548c\u64cd\u4f5c\u3002\u6d4b\u8bd5\u62a5\u544a\u652f\u6301\u6309\u540d\u79f0\u641c\u7d22\u548c\u9ad8\u7ea7\u641c\u7d22\u3002

    \u9ad8\u7ea7\u641c\u7d22\u652f\u6301\u4ee5\u540d\u79f0\u3001\u72b6\u6001\u3001\u521b\u5efa\u4eba\u7b49\u7ef4\u5ea6\u8fdb\u884c\u7ec4\u5408\u67e5\u8be2\u3002

    "},{"location":"user_manual/ui_test/ui_test_report/#2","title":"2 \u91cd\u547d\u540d\u62a5\u544a","text":"

    \u5728\u6d4b\u8bd5\u62a5\u544a\u5217\u8868\u7684\u540d\u79f0\u680f\uff0c\u53ef\u4ee5\u91cd\u547d\u540d\u62a5\u544a\u540d\u79f0\u3002

    "},{"location":"user_manual/ui_test/ui_test_report/#3","title":"3 \u62a5\u544a\u8be6\u60c5","text":"

    \u70b9\u51fb\u3010\u62a5\u544a\u8be6\u60c5\u3011\uff0c\u53ef\u8fdb\u5165\u62a5\u544a\u8be6\u60c5\u9875\u9762\u3002

    \u8be6\u60c5\u9875\u9762\u9762\u677f\u5c55\u793a\u4e86\u672c\u6b21\u6267\u884c\u573a\u666f\u7684\u8017\u65f6\u3001\u6210\u529f\u548c\u5931\u8d25\u4ee5\u53ca\u672a\u6267\u884c\u7684\u6b65\u9aa4\u6570\uff0c\u8fd8\u6709\u65ad\u8a00\u6210\u529f\u548c\u5931\u8d25\u7684\u6570\u91cf\u3002

    \u5728\u603b\u89c8\u9762\u677f\u4e0b\u9762\uff0c\u53ef\u4ee5\u67e5\u770b\u573a\u666f\u5168\u90e8\u6b65\u9aa4\u548c\u5931\u8d25\u6b65\u9aa4\uff0c\u4ee5\u53ca\u63a7\u5236\u53f0\u8be6\u60c5\u3002

    \u5c55\u5f00\u6b65\u9aa4\u8be6\u60c5\u53ef\u4ee5\u67e5\u770b\u5f53\u524d\u6b65\u9aa4\u7684\u6267\u884c\u7ed3\u679c\u65e5\u5fd7\u3001\u65ad\u8a00\u7ed3\u679c\u548c\u63d0\u53d6\u7ed3\u679c\u3002

    \u9f20\u6807\u60ac\u6d6e\u5728\u53f3\u4fa7\u7684\u3010\u622a\u56fe\u3011\u4e0a\uff0c\u4f1a\u5c55\u793a\u8be5\u6b65\u9aa4\u6267\u884c\u65f6\u7684 UI \u622a\u56fe\u9884\u89c8\u3002

    \u70b9\u51fb\u8be5\u9884\u89c8\u56fe\uff0c\u4f1a\u4ee5\u7f51\u9875\u5927\u56fe\u5f62\u5f0f\u5c55\u793a UI \u622a\u56fe\u3002

    "},{"location":"user_manual/ui_test/ui_test_report/#4","title":"4 \u5220\u9664\u62a5\u544a","text":"

    \u5728\u6d4b\u8bd5\u62a5\u544a\u5217\u8868\u9875\u9762\uff0c\u70b9\u51fb\u3010\u5220\u9664\u3011\u952e\uff0c\u4f1a\u5f39\u51fa\u786e\u8ba4\u5220\u9664\u7684\u63d0\u793a\u3002

    "}]} \ No newline at end of file diff --git a/v2.x/sitemap.xml b/v2.x/sitemap.xml index 3563688e7..853ed503b 100644 --- a/v2.x/sitemap.xml +++ b/v2.x/sitemap.xml @@ -2,507 +2,507 @@ https://metersphere.io/docs/v2.x/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/automation_plugin_dev/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/awesome-jmeter/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/dev_manual/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/enterprise/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/system_arch/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/about/changelog/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/about/contact/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/about/security_bulletins/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/case_studies/user_cases/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/faq/api_test/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/faq/enterprise/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/faq/installation/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/faq/load_test/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/faq/report_statistics/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/faq/service_integration/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/faq/system_management/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/faq/test_track/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/faq/ui_test/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/installation/backup_data/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/installation/build_data_streaming/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/installation/build_kafka/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/installation/build_node_controller/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/installation/cli/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/installation/kubernetes_installation/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/installation/network_port/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/installation/offline_installation/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/installation/offline_installation_mac/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/installation/offline_installation_windows/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/installation/offline_upgrade/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/installation/online_installation/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/installation/online_upgrade/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/installation/pre_work/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/quick_start/api_test/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/quick_start/create_project/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/quick_start/load_test/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/quick_start/quick_start/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/quick_start/test_track/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/quick_start/ui_test/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/teach_video/video_index/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/tutorial/use_tutorial/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/access_matrix/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/api_test/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/general/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/api_test/api_automation/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/api_test/api_definition/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/api_test/api_scenario/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/api_test/api_step/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/api_test/functions/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/api_test/home/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/api_test/intro/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/api_test/test_report/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/load_test/home/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/load_test/intro/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/load_test/load_test/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/load_test/test_report/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/my_desk/attention/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/my_desk/created/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/my_desk/dashboard/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/my_desk/todo/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/plugin_use/api_test_plugin/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/plugin_use/chrome_plugin/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/plugin_use/idea_plugin/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/plugin_use/jenkins_plugin/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/plugin_use/selenium_ide_plugin/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/plugin_use/service_integration_plugin/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/project_management/application_management/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/project_management/customcode_snippets/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/project_management/false_library/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/project_management/file_management/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/project_management/notice_management/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/project_management/operation_log/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/project_management/project_environment/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/project_management/project_info/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/project_management/project_user/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/project_management/template_management/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/project_management/usergroup_permission/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/project_management/version%20management/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/report_statistics/project_statistics/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/report_statistics/report/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/system_management/intro/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/system_management/system/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/system_management/workspace/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/test_track/home/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/test_track/intro/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/test_track/test_case_review/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/test_track/test_defect/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/test_track/test_plan/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/test_track/test_report/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/test_track/test_case/public_test_case/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/test_track/test_case/switch_project/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/test_track/test_case/test_case/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/test_track/test_case/test_case_module/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/test_track/test_plan/test_plan_batch/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/test_track/test_plan/test_plan_list/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/test_track/test_plan/test_plan_manage/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/ui_test/info/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/ui_test/intro/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/ui_test/ui_automation/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/ui_test/ui_element_store/ - 2023-10-11 + 2023-10-30 daily https://metersphere.io/docs/v2.x/user_manual/ui_test/ui_test_report/ - 2023-10-11 + 2023-10-30 daily \ No newline at end of file diff --git a/v2.x/sitemap.xml.gz b/v2.x/sitemap.xml.gz index 214326cda82f8fceded3f8a9a2a6a5f187ef8a2c..5eba46e97d8e3ab2c272d5931603513a0a34417d 100644 GIT binary patch delta 1032 zcmV+j1o!)x2$=|fABzYGycIuX0{?SqbY*Q}a4vXlYyjPy&2l3t41n+R6e(BjF>X)h zvb*JYZuFgL~LRA`Jd{ z_I19PJ%BgCqTfEx{`vc_$KPk)S6`MnIRbttgFQXZdgl0lXV)DLhdCj`pd-yg+ID36 zazWj>vs=vnn617%lvlmMsWrZqE|^ul3zgdpz~%499umwkbT%03_D}P-ZrRmg(@$yQ zA=uT^;_2Jt*Tv(vMHzDLn+!9(_FLE_cwJeI?zrqGJtv&*%JWNPI&&B_mpN0>16tr6>}XjpYQ6zwv#6T zB7gBlzjivJVjylDQ-raqphZVnJ2!gO#!+3+R>HGS5JTd!w92FsqiKCfm8HK&0}6}I zZj%H}ID6T$Wzkz0%35ojw<@jTq|L5z(A>On{lQ+X%Z%oztY$3+Iis^9aWN1H^iV=R zS?oK#*$JC&A1tW4iA`48xAIFK|Max9xZ3u3UnT&?#KCp;!l)i^fH`VJCC zF7KE`KA$6LV}Ph!al$t#%}Y6nr=qFHgHp zGlLi8=`Y-;w1O2zZ8i1lpp!Ii4u4jPIXM?jmaeP+ITusP6TtMTcptI&XhDmGe*wQk zPh$BA9C*xwDo;VM5br8?gvoMBdrvEQbc_zo2wq<20FM4EU-T3!kh)xD^A$KjS)==j6(u>`2XuRY5YaNtA7EFYbu1INdN$0 Cl=qzg delta 1031 zcmV+i1o-=z2$%?eABzYGxlJZz0{?SqbY*Q}a4vXlYyjPyPjf3L48ZU2Q)E2TW4um! zX*-VJt)HMhGZ?hCVipJzcKq!N>wo(unU`q~9b_L87URuNtdNk9v;6)(xQ9I?!r)(K zPxHm>0lWzo{pMx%_g{ZL{xkU@~SsDwZ_-d1+%Jmp>mr6xcvRNg#>d9oehS%{qy|2TXuEW^i!I6 z2zK?nc>eYAY4P~)K zuy2|702Br(czhj4Gz?m%Q4QK>?HYyzU*3ob2^xl^Bb7y{bTZqP6>}XjpYQ6zrjsWD zB7bqO-#Q&pF%UP7DZ*G)(4wQPog2Msvgi#AWvw;NTa{LE(q`8QLWJmD>W+6X>v{Th_OJNRu@6dzD z`TmT(xN{?#|A5|x14)x1$Fk|OAO_pZ)p{>+!eatejbp>SZyC+523*B@3rG-5aZT9+ zGN_osD;O!z5+d;_@3bw0SVY7)1#UlbWYA`-_Glq=LAm5TqnGXh~Xfqm~eLeNHY - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/teach_video/video_index/index.html b/v2.x/teach_video/video_index/index.html index f588cdf28..49a20a2ee 100644 --- a/v2.x/teach_video/video_index/index.html +++ b/v2.x/teach_video/video_index/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/tutorial/use_tutorial/index.html b/v2.x/tutorial/use_tutorial/index.html index 692e3dfee..70dde90a9 100644 --- a/v2.x/tutorial/use_tutorial/index.html +++ b/v2.x/tutorial/use_tutorial/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/access_matrix/index.html b/v2.x/user_manual/access_matrix/index.html index bd1f21690..b9ccd551d 100644 --- a/v2.x/user_manual/access_matrix/index.html +++ b/v2.x/user_manual/access_matrix/index.html @@ -18,7 +18,7 @@ - + @@ -31,7 +31,7 @@ - + diff --git a/v2.x/user_manual/api_test/api_automation/index.html b/v2.x/user_manual/api_test/api_automation/index.html index c0d6d0b6f..435d3e8aa 100644 --- a/v2.x/user_manual/api_test/api_automation/index.html +++ b/v2.x/user_manual/api_test/api_automation/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/api_test/api_definition/index.html b/v2.x/user_manual/api_test/api_definition/index.html index 18b345708..535201c9a 100644 --- a/v2.x/user_manual/api_test/api_definition/index.html +++ b/v2.x/user_manual/api_test/api_definition/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/api_test/api_scenario/index.html b/v2.x/user_manual/api_test/api_scenario/index.html index c430fe477..e430bb303 100644 --- a/v2.x/user_manual/api_test/api_scenario/index.html +++ b/v2.x/user_manual/api_test/api_scenario/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/api_test/api_step/index.html b/v2.x/user_manual/api_test/api_step/index.html index 1a518c340..ee519ef80 100644 --- a/v2.x/user_manual/api_test/api_step/index.html +++ b/v2.x/user_manual/api_test/api_step/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/api_test/functions/index.html b/v2.x/user_manual/api_test/functions/index.html index a9b3cb507..dea7b029c 100644 --- a/v2.x/user_manual/api_test/functions/index.html +++ b/v2.x/user_manual/api_test/functions/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/api_test/home/index.html b/v2.x/user_manual/api_test/home/index.html index a72e7bc62..7e478bac6 100644 --- a/v2.x/user_manual/api_test/home/index.html +++ b/v2.x/user_manual/api_test/home/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/api_test/index.html b/v2.x/user_manual/api_test/index.html index 4a23ad70a..a42765f33 100644 --- a/v2.x/user_manual/api_test/index.html +++ b/v2.x/user_manual/api_test/index.html @@ -18,7 +18,7 @@ - + @@ -31,7 +31,7 @@ - + diff --git a/v2.x/user_manual/api_test/intro/index.html b/v2.x/user_manual/api_test/intro/index.html index 05a8b5932..dc2eca473 100644 --- a/v2.x/user_manual/api_test/intro/index.html +++ b/v2.x/user_manual/api_test/intro/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/api_test/test_report/index.html b/v2.x/user_manual/api_test/test_report/index.html index 75117ee51..2b7733a26 100644 --- a/v2.x/user_manual/api_test/test_report/index.html +++ b/v2.x/user_manual/api_test/test_report/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/general/index.html b/v2.x/user_manual/general/index.html index 710b557e6..9eb1cd5f8 100644 --- a/v2.x/user_manual/general/index.html +++ b/v2.x/user_manual/general/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/load_test/home/index.html b/v2.x/user_manual/load_test/home/index.html index b96089197..4c47c12e1 100644 --- a/v2.x/user_manual/load_test/home/index.html +++ b/v2.x/user_manual/load_test/home/index.html @@ -18,7 +18,7 @@ - + @@ -31,7 +31,7 @@ - + diff --git a/v2.x/user_manual/load_test/intro/index.html b/v2.x/user_manual/load_test/intro/index.html index 3edc599cd..6f8160ac7 100644 --- a/v2.x/user_manual/load_test/intro/index.html +++ b/v2.x/user_manual/load_test/intro/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/load_test/load_test/index.html b/v2.x/user_manual/load_test/load_test/index.html index ac4079cfb..e70db5a16 100644 --- a/v2.x/user_manual/load_test/load_test/index.html +++ b/v2.x/user_manual/load_test/load_test/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/load_test/test_report/index.html b/v2.x/user_manual/load_test/test_report/index.html index fd0728d56..4b955dc03 100644 --- a/v2.x/user_manual/load_test/test_report/index.html +++ b/v2.x/user_manual/load_test/test_report/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/my_desk/attention/index.html b/v2.x/user_manual/my_desk/attention/index.html index 5770843d6..a51b164b5 100644 --- a/v2.x/user_manual/my_desk/attention/index.html +++ b/v2.x/user_manual/my_desk/attention/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/my_desk/created/index.html b/v2.x/user_manual/my_desk/created/index.html index 704d481d4..c0f6bcc92 100644 --- a/v2.x/user_manual/my_desk/created/index.html +++ b/v2.x/user_manual/my_desk/created/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/my_desk/dashboard/index.html b/v2.x/user_manual/my_desk/dashboard/index.html index 7f4cf5f43..2539a5a1a 100644 --- a/v2.x/user_manual/my_desk/dashboard/index.html +++ b/v2.x/user_manual/my_desk/dashboard/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/my_desk/todo/index.html b/v2.x/user_manual/my_desk/todo/index.html index 9e0506380..6f8892eb3 100644 --- a/v2.x/user_manual/my_desk/todo/index.html +++ b/v2.x/user_manual/my_desk/todo/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/plugin_use/api_test_plugin/index.html b/v2.x/user_manual/plugin_use/api_test_plugin/index.html index a1a508a96..65f93dd18 100644 --- a/v2.x/user_manual/plugin_use/api_test_plugin/index.html +++ b/v2.x/user_manual/plugin_use/api_test_plugin/index.html @@ -18,7 +18,7 @@ - + @@ -31,7 +31,7 @@ - + diff --git a/v2.x/user_manual/plugin_use/chrome_plugin/index.html b/v2.x/user_manual/plugin_use/chrome_plugin/index.html index 58ab60474..8dc1df73b 100644 --- a/v2.x/user_manual/plugin_use/chrome_plugin/index.html +++ b/v2.x/user_manual/plugin_use/chrome_plugin/index.html @@ -18,7 +18,7 @@ - + @@ -31,7 +31,7 @@ - + diff --git a/v2.x/user_manual/plugin_use/idea_plugin/index.html b/v2.x/user_manual/plugin_use/idea_plugin/index.html index 2d6fa547b..877c4611d 100644 --- a/v2.x/user_manual/plugin_use/idea_plugin/index.html +++ b/v2.x/user_manual/plugin_use/idea_plugin/index.html @@ -18,7 +18,7 @@ - + @@ -31,7 +31,7 @@ - + diff --git a/v2.x/user_manual/plugin_use/jenkins_plugin/index.html b/v2.x/user_manual/plugin_use/jenkins_plugin/index.html index de423d392..ba0287524 100644 --- a/v2.x/user_manual/plugin_use/jenkins_plugin/index.html +++ b/v2.x/user_manual/plugin_use/jenkins_plugin/index.html @@ -18,7 +18,7 @@ - + @@ -31,7 +31,7 @@ - + diff --git a/v2.x/user_manual/plugin_use/selenium_ide_plugin/index.html b/v2.x/user_manual/plugin_use/selenium_ide_plugin/index.html index 15a58920b..15cced60f 100644 --- a/v2.x/user_manual/plugin_use/selenium_ide_plugin/index.html +++ b/v2.x/user_manual/plugin_use/selenium_ide_plugin/index.html @@ -18,7 +18,7 @@ - + @@ -31,7 +31,7 @@ - + diff --git a/v2.x/user_manual/plugin_use/service_integration_plugin/index.html b/v2.x/user_manual/plugin_use/service_integration_plugin/index.html index c9eadd4db..c849021dc 100644 --- a/v2.x/user_manual/plugin_use/service_integration_plugin/index.html +++ b/v2.x/user_manual/plugin_use/service_integration_plugin/index.html @@ -18,7 +18,7 @@ - + @@ -31,7 +31,7 @@ - + diff --git a/v2.x/user_manual/project_management/application_management/index.html b/v2.x/user_manual/project_management/application_management/index.html index f3d9113c7..f893af2fa 100644 --- a/v2.x/user_manual/project_management/application_management/index.html +++ b/v2.x/user_manual/project_management/application_management/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/project_management/customcode_snippets/index.html b/v2.x/user_manual/project_management/customcode_snippets/index.html index fdafdc3c7..15d0d326b 100644 --- a/v2.x/user_manual/project_management/customcode_snippets/index.html +++ b/v2.x/user_manual/project_management/customcode_snippets/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/project_management/false_library/index.html b/v2.x/user_manual/project_management/false_library/index.html index e3e51ce77..2418401b8 100644 --- a/v2.x/user_manual/project_management/false_library/index.html +++ b/v2.x/user_manual/project_management/false_library/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/project_management/file_management/index.html b/v2.x/user_manual/project_management/file_management/index.html index 2fe4f9992..40581ac88 100644 --- a/v2.x/user_manual/project_management/file_management/index.html +++ b/v2.x/user_manual/project_management/file_management/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/project_management/notice_management/index.html b/v2.x/user_manual/project_management/notice_management/index.html index fc929dced..d09d17a49 100644 --- a/v2.x/user_manual/project_management/notice_management/index.html +++ b/v2.x/user_manual/project_management/notice_management/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/project_management/operation_log/index.html b/v2.x/user_manual/project_management/operation_log/index.html index 02a0ab51d..c197c647a 100644 --- a/v2.x/user_manual/project_management/operation_log/index.html +++ b/v2.x/user_manual/project_management/operation_log/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/project_management/project_environment/index.html b/v2.x/user_manual/project_management/project_environment/index.html index 68e78e785..e1f0fb280 100644 --- a/v2.x/user_manual/project_management/project_environment/index.html +++ b/v2.x/user_manual/project_management/project_environment/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/project_management/project_info/index.html b/v2.x/user_manual/project_management/project_info/index.html index c5ab6c673..ac825422d 100644 --- a/v2.x/user_manual/project_management/project_info/index.html +++ b/v2.x/user_manual/project_management/project_info/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/project_management/project_user/index.html b/v2.x/user_manual/project_management/project_user/index.html index b809089c0..a19c381bc 100644 --- a/v2.x/user_manual/project_management/project_user/index.html +++ b/v2.x/user_manual/project_management/project_user/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/project_management/template_management/index.html b/v2.x/user_manual/project_management/template_management/index.html index 6f3eedc33..1f7760f10 100644 --- a/v2.x/user_manual/project_management/template_management/index.html +++ b/v2.x/user_manual/project_management/template_management/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/project_management/usergroup_permission/index.html b/v2.x/user_manual/project_management/usergroup_permission/index.html index 18fbd0e3c..6d600d974 100644 --- a/v2.x/user_manual/project_management/usergroup_permission/index.html +++ b/v2.x/user_manual/project_management/usergroup_permission/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/project_management/version management/index.html b/v2.x/user_manual/project_management/version management/index.html index e1644817a..a1509b0cb 100644 --- a/v2.x/user_manual/project_management/version management/index.html +++ b/v2.x/user_manual/project_management/version management/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/report_statistics/project_statistics/index.html b/v2.x/user_manual/report_statistics/project_statistics/index.html index 11cbf9658..6489a723b 100644 --- a/v2.x/user_manual/report_statistics/project_statistics/index.html +++ b/v2.x/user_manual/report_statistics/project_statistics/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/report_statistics/report/index.html b/v2.x/user_manual/report_statistics/report/index.html index cec72f121..d6935c3a4 100644 --- a/v2.x/user_manual/report_statistics/report/index.html +++ b/v2.x/user_manual/report_statistics/report/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/system_management/intro/index.html b/v2.x/user_manual/system_management/intro/index.html index 098c37c56..33f220954 100644 --- a/v2.x/user_manual/system_management/intro/index.html +++ b/v2.x/user_manual/system_management/intro/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/system_management/system/index.html b/v2.x/user_manual/system_management/system/index.html index 1ea23ca81..e1e611d30 100644 --- a/v2.x/user_manual/system_management/system/index.html +++ b/v2.x/user_manual/system_management/system/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/system_management/workspace/index.html b/v2.x/user_manual/system_management/workspace/index.html index 0335055a3..6175f5446 100644 --- a/v2.x/user_manual/system_management/workspace/index.html +++ b/v2.x/user_manual/system_management/workspace/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/test_track/home/index.html b/v2.x/user_manual/test_track/home/index.html index 62c2c8314..698a5b9a7 100644 --- a/v2.x/user_manual/test_track/home/index.html +++ b/v2.x/user_manual/test_track/home/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/test_track/intro/index.html b/v2.x/user_manual/test_track/intro/index.html index f7264dc52..69c4fea82 100644 --- a/v2.x/user_manual/test_track/intro/index.html +++ b/v2.x/user_manual/test_track/intro/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/test_track/test_case/public_test_case/index.html b/v2.x/user_manual/test_track/test_case/public_test_case/index.html index c98a05d39..c6e46f63a 100644 --- a/v2.x/user_manual/test_track/test_case/public_test_case/index.html +++ b/v2.x/user_manual/test_track/test_case/public_test_case/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/test_track/test_case/switch_project/index.html b/v2.x/user_manual/test_track/test_case/switch_project/index.html index acd428d28..24bcb2c9e 100644 --- a/v2.x/user_manual/test_track/test_case/switch_project/index.html +++ b/v2.x/user_manual/test_track/test_case/switch_project/index.html @@ -18,7 +18,7 @@ - + @@ -31,7 +31,7 @@ - + diff --git a/v2.x/user_manual/test_track/test_case/test_case/index.html b/v2.x/user_manual/test_track/test_case/test_case/index.html index dc532a4e1..d973e6eb0 100644 --- a/v2.x/user_manual/test_track/test_case/test_case/index.html +++ b/v2.x/user_manual/test_track/test_case/test_case/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/test_track/test_case/test_case_module/index.html b/v2.x/user_manual/test_track/test_case/test_case_module/index.html index fc8f3a31c..27d4d40af 100644 --- a/v2.x/user_manual/test_track/test_case/test_case_module/index.html +++ b/v2.x/user_manual/test_track/test_case/test_case_module/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/test_track/test_case_review/index.html b/v2.x/user_manual/test_track/test_case_review/index.html index ecd114ef0..530238303 100644 --- a/v2.x/user_manual/test_track/test_case_review/index.html +++ b/v2.x/user_manual/test_track/test_case_review/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/test_track/test_defect/index.html b/v2.x/user_manual/test_track/test_defect/index.html index c6b103d15..0289a204f 100644 --- a/v2.x/user_manual/test_track/test_defect/index.html +++ b/v2.x/user_manual/test_track/test_defect/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/test_track/test_plan/index.html b/v2.x/user_manual/test_track/test_plan/index.html index 5ba6e1a16..5963626a8 100644 --- a/v2.x/user_manual/test_track/test_plan/index.html +++ b/v2.x/user_manual/test_track/test_plan/index.html @@ -18,7 +18,7 @@ - + @@ -31,7 +31,7 @@ - + diff --git a/v2.x/user_manual/test_track/test_plan/test_plan_batch/index.html b/v2.x/user_manual/test_track/test_plan/test_plan_batch/index.html index 8a7414803..c92c209f0 100644 --- a/v2.x/user_manual/test_track/test_plan/test_plan_batch/index.html +++ b/v2.x/user_manual/test_track/test_plan/test_plan_batch/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/test_track/test_plan/test_plan_list/index.html b/v2.x/user_manual/test_track/test_plan/test_plan_list/index.html index d27e6f2e6..5fcc14b59 100644 --- a/v2.x/user_manual/test_track/test_plan/test_plan_list/index.html +++ b/v2.x/user_manual/test_track/test_plan/test_plan_list/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/test_track/test_plan/test_plan_manage/index.html b/v2.x/user_manual/test_track/test_plan/test_plan_manage/index.html index 30fdb2ae8..8706055fb 100644 --- a/v2.x/user_manual/test_track/test_plan/test_plan_manage/index.html +++ b/v2.x/user_manual/test_track/test_plan/test_plan_manage/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/test_track/test_report/index.html b/v2.x/user_manual/test_track/test_report/index.html index c20f98430..4b0cd0b31 100644 --- a/v2.x/user_manual/test_track/test_report/index.html +++ b/v2.x/user_manual/test_track/test_report/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/ui_test/info/index.html b/v2.x/user_manual/ui_test/info/index.html index 798de1998..ce558dbbb 100644 --- a/v2.x/user_manual/ui_test/info/index.html +++ b/v2.x/user_manual/ui_test/info/index.html @@ -18,7 +18,7 @@ - + @@ -31,7 +31,7 @@ - + diff --git a/v2.x/user_manual/ui_test/intro/index.html b/v2.x/user_manual/ui_test/intro/index.html index 425a8eb09..404c06d63 100644 --- a/v2.x/user_manual/ui_test/intro/index.html +++ b/v2.x/user_manual/ui_test/intro/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/ui_test/ui_automation/index.html b/v2.x/user_manual/ui_test/ui_automation/index.html index 14d63e7bd..b1d1d2e69 100644 --- a/v2.x/user_manual/ui_test/ui_automation/index.html +++ b/v2.x/user_manual/ui_test/ui_automation/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/ui_test/ui_element_store/index.html b/v2.x/user_manual/ui_test/ui_element_store/index.html index d8b17e806..a3ae6ed49 100644 --- a/v2.x/user_manual/ui_test/ui_element_store/index.html +++ b/v2.x/user_manual/ui_test/ui_element_store/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/v2.x/user_manual/ui_test/ui_test_report/index.html b/v2.x/user_manual/ui_test/ui_test_report/index.html index f6c820ec5..053c93983 100644 --- a/v2.x/user_manual/ui_test/ui_test_report/index.html +++ b/v2.x/user_manual/ui_test/ui_test_report/index.html @@ -22,7 +22,7 @@ - + @@ -35,7 +35,7 @@ - + diff --git a/versions.json b/versions.json index bcc1350d2..a1c1845ab 100644 --- a/versions.json +++ b/versions.json @@ -1 +1 @@ -[{"version": "v2.x", "title": "v2.x", "aliases": ["LATEST", "latest"]}, {"version": "v1.20.x-lts", "title": "v1.20.x-lts", "aliases": ["LTS"]}] \ No newline at end of file +[{"version": "v2.x", "title": "v2.x", "aliases": ["latest", "LATEST"]}, {"version": "v1.20.x-lts", "title": "v1.20.x-lts", "aliases": ["LTS"]}] \ No newline at end of file