integration-testing 是一个面向 elastic-package 测试流程的技能,旨在帮助用户创建、运行和调试与集成相关的测试。它按测试类型组织参考文件,用户可根据当前任务加载对应文档。
适用场景 当任务涉及以下内容时,应加载本技能:
- 编写或调试管道测试夹具,包括 .log/.json 输入、*-expected.json 输出和配置文件;
- 搭建或调试系统测试,包括 _dev/test/system/、_dev/deploy/、模拟 API 以及 0-hits 失败;
- 为失败路径、API 错误处理或包升级编写脚本测试。
不适用场景 本技能不应作为以下任务的主要指南:
- 摄取管道处理器设计与架构(ingest-pipelines);
- CEL 程序开发(cel-programs);
- 宽泛的 elastic-package 命令选择与堆栈生命周期(elastic-package-cli)。
参考文件 根据测试类型加载对应参考文件:
- 管道测试:在编写夹具、配置文件、预期输出或调试管道测试失败时,加载 references/pipeline-testing.md;
- 系统测试(通用):任何系统测试工作都应始终加载,涵盖配置字段、命令、清理、调试,对应 references/system-testing.md;
- 脚本测试:txtar 失败/错误测试、升级测试、内嵌于 txtar 的模拟服务,对应 references/script-testing.md。
系统测试输入类型专用参考 除通用 system-testing.md 外,还需加载与数据流输入类型匹配的参考文件:
- cel:references/system-testing-cel.md;
- tcp、udp:references/system-testing-tcp-udp.md;
- http_endpoint:references/system-testing-http-endpoint.md;
- logfile、filestream:references/system-testing-logfile.md;
- kafka、gcp-pubsub:references/system-testing-kafka-pubsub.md;
- aws-s3、gcs、azure-blob-storage、azure-eventhub:references/system-testing-cloud-skip.md。 当集成支持多种输入类型时,加载通用参考以及每个适用的输入类型参考。当在一个任务中跨多种测试类型工作时(例如端到端创建新数据流),加载所有适用的参考文件。
参考文件内容说明
- references/pipeline-testing.md:目录布局、命名约定、夹具格式、配置选项、预期输出格式与审查、核心工作流、夹具场景覆盖、数据匿名化、故障排除;
- references/system-testing.md:通用系统测试参考,包含所需布局、配置字段、核心命令、清理失败、sample_event.json 校验、通用调试;
- references/system-testing-cel.md:CEL 模拟 API 连接、CEL 的 0-hits 调试、变量捕获模式;
- references/system-testing-tcp-udp.md:使用 elastic/stream 的 TCP/UDP 日志发送模式、信号协调、端口对齐;
- references/system-testing-http-endpoint.md:使用 STREAM_PROTOCOL=webhook 的 webhook/HTTP 端点测试、认证头;
- references/system-testing-logfile.md:用于 logfile/filestream 输入的 Alpine 容器 + SERVICE_LOGS_DIR 模式;
- references/system-testing-kafka-pubsub.md:Kafka broker + 流生产者、Pub/Sub 模拟器模式;
- references/system-testing-cloud-skip.md:何时以及为何跳过云存储输入(aws-s3、gcs、azure-blob-storage、azure-eventhub)的系统测试;
- references/script-testing.md:txtar 格式、环境冒烟测试、系统级骨架、模拟服务 docker-compose 与 config.yml、升级测试模式、陷阱、完整 o365 示例;
- references/builder-setup-subagent-guidance.md:面向非 CEL 数据流的子代理操作手册,用于接入数据采集(docker-compose、示例日志、agent 流模板、系统测试配置、manifest 变量清理)。编排器通过任务提示中传递该文件路径来派发子代理;子代理在自己的新上下文中自行读取该文件。不要将其内容嵌入或粘贴到任务提示中;
- references/builder-system-test-subagent-guidance.md:子代理操作手册,用于在管道工作完成后运行 elastic-package test system --generate(任何可测试输入)。分发规则同上:编排器传递路径,子代理自行读取文件。
以上介绍未提及收费、价格、平台限制等信息,如有需要请以官方资料为准。