Skip to content

v0.3.0

Latest

Choose a tag to compare

@manykarim manykarim released this 24 Feb 16:54
· 2 commits to main since this release

Release Notes — v0.3.0

pytest support + DPP fix + coverage retention analysis

New Features

  • pytest plugin — Activate with pytest --diverse-k=20. Supports all 5 selection strategies, marker filtering (--diverse-include-markers), parametrized test grouping (--diverse-group-parametrize), and embedding caching.
  • pytest CLI integrationtestcase-select run --framework pytest for the full vectorize/select/execute pipeline.
  • AST-based text representation — Extracts function calls, assertion types, fixtures, and markers from Python test files for high-quality embeddings.

Fixes

  • DPP kernel stability — Switched from cosine to RBF kernel with eigenvalue clamping. Falls back to FPS when exact k-DPP sampling is unstable (k > N/3).

Coverage Retention Analysis

Benchmarked all 6 strategies (fps, fps_multi, kmedoids, dpp, facility, random) at 50%, 20%, 10% selection levels on robotframework-doctestlibrary (594 pytest tests, 126 Robot tests).

Selection Best Strategy Coverage Retention Speedup
50% fps 93.9% 3.4x
20% facility 83.6% 7.5x
10% fps_multi 67.9% 18.5x

Install

pip install robotframework-testselection[all]