问题描述
我正在尝试将使用 opentracing 编写的 java 项目迁移到 opentelemetry。虽然为主要功能提供了等效的类,但 opentelemetry 没有提供模拟类。我们如何使用 opentelemetry 编写测试?我们是否必须编写自己的 MockTracer
、MockSpan
等?
解决方法
您可以只使用真正的跟踪器和跨度类,但将数据导出到 inMemorySpanExporter。然后,您可以检查导出器是否包含您期望的跟踪器/跨度数据,这是针对 javascript 的,但必须有一个 java 等效项: https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-tracing/test/export/InMemorySpanExporter.test.ts