- 필수 기능
- 시작하기
- Glossary
- 표준 속성
- Guides
- Agent
- 통합
- 개방형텔레메트리
- 개발자
- Administrator's Guide
- API
- Datadog Mobile App
- CoScreen
- Cloudcraft
- 앱 내
- 서비스 관리
- 인프라스트럭처
- 애플리케이션 성능
- APM
- Continuous Profiler
- 스팬 시각화
- 데이터 스트림 모니터링
- 데이터 작업 모니터링
- 디지털 경험
- 소프트웨어 제공
- 보안
- AI Observability
- 로그 관리
- 관리
Early Flake Detection is in Preview.
Early Flake Detection is Datadog’s test flakiness solution that enhances code quality by identifying flaky tests early in the development cycle. For more information about flaky tests, see Flaky Test Management.
By running newly added tests multiple times, Datadog can detect flakiness before these tests are merged into the default branch. A study shows that up to 75% of flaky tests can be identified with this approach.
Running a test multiple times increases the likelihood of exposing random conditions that cause flakiness. Early Flake Detection helps ensure that only stable, reliable tests are integrated into the default branch:
You can choose to block the merge of the feature branch with a Quality Gate. For more information, see the Quality Gates documentation.
Before implementing Early Flake Detection, you must configure Test Optimization for your development environment. If you are reporting data through the Datadog Agent, use v6.40 or 7.40 and later.
After you have set up your Datadog library for Test Optimization, you can configure Early Flake Detection from the Test Optimization Settings page.
The required test framework and dd-trace versions are:
dd-trace-js
:
>=5.23.0
for the 5.x release.>=4.47.0
for the 4.x release.The test framework compatibility is the same as Test Optimization Compatibility, with the exception of playwright
, which is only supported from >=1.38.0
.
dd-trace-java>=1.34.0
dd-trace-dotnet>=2.51.0
DD_PYTEST_USE_NEW_PLUGIN_BETA
environment variable to true
to enable it.dd-trace-py>=2.18.0
(pytest>=7.2.0
)
datadog-ci-rb>=1.5.0
orchestrion >= 0.9.4 + dd-trace-go >= 1.69.1
dd-sdk-swift-testing>=2.5.2
Excluded Branches do not have any tests retried by Early Flake Detection. Tests run in these branches are not considered new for the purposes of Early Flake Detection. You can manage the list of excluded branches on the Test Optimization Settings page, ensuring that the feature is tailored to your specific workflow and branch structure.
You can use the following facets to query sessions that run Early Flake Detection and new tests in the Test Optimization Explorer.
@test.early_flake.enabled
tag set to true
.@test.is_new
tag set to true
, and retries for this test have the @test.is_retry
tag set to true
.If you suspect there are issues with Early Flake Detection, navigate to the Test Optimization Settings page, look for your repository, and click Configure. Disable Early Flake Detection by clicking on the toggle.
This could be caused by a couple of reasons:
If the Datadog library can’t fetch the full list of known tests, the Datadog library may retry tests that are not new. There is a mechanism to prevent this error from slowing down the CI pipeline, but if it happens, contact Datadog Support.