代码拉取完成,页面将自动刷新
import asyncio
import argparse
def parse_args():
parser = argparse.ArgumentParser(
description="MCP Testkit initialization args",
formatter_class=argparse.ArgumentDefaultsHelpFormatter
)
subparsers = parser.add_subparsers(dest='command', required=True)
# gen-cases 子命令
gen_parser = subparsers.add_parser('gen-cases', help='Generate test cases')
gen_parser.add_argument(
"--config",
type=str,
default="./mcp-servers-perf.json",
help="Path to MCP Server config file"
)
gen_parser.add_argument(
"--logdir",
type=str,
default=".logs",
help="Folderpath to log file"
)
#val-cases子命令
val_parser = subparsers.add_parser('val-cases', help='Validate test cases')
val_parser.add_argument(
"--config",
type=str,
default="./mcp-servers-perf.json",
help="Path to MCP Server config file"
)
val_parser.add_argument(
"--testpath",
type=str,
default=".logs/perf_mcp_2025-09-12T06-43-29-026631/testcases.json",
help="Path to get testcases"
)
# reporter 子命令
rep_parser = subparsers.add_parser('rep-cases', help='report testing results')
rep_parser.add_argument(
"--valpath",
type=str,
default=".logs/perf_mcp_2025-09-11T07-31-04-418670/validation_results.json",
help="Path to MCP Server config file"
)
rep_parser.add_argument(
"--config",
type=str,
default=None,
help="Path to MCP Server config file"
)
rep_parser.add_argument(
"--detailed",
action="store_true",
help="Output detailed report"
)
return parser.parse_args()
async def gen_cases(config_path, logdir):
from src.test_generator.TestGenerator import TestGenerator
generator = TestGenerator(config_path=config_path, log_name=logdir)
return await generator.run()
async def val_cases(config_path, testcase_path):
from src.validator.Response_validator_withenv import ResponseValidator_withenv
validator = ResponseValidator_withenv(config_path=config_path, testcase_path=testcase_path)
return await validator.run()
async def rep_cases(valpath, config_path, detailed):
from src.reporter.Reporter import Reporter
Reporter = Reporter(valpath, config_path, detailed)
return await Reporter.run()
async def main():
args = parse_args()
if args.command == 'gen-cases':
await gen_cases(args.config, args.logdir)
if args.command == 'val-cases':
await val_cases(args.config, args.testpath)
if args.command == 'rep-cases':
await rep_cases(args.valpath, args.config, args.detailed)
if __name__ == "__main__":
asyncio.run(main())
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。