TGViewer
Rust Rust @rust_code · 8.92K subscribers
Post #156 819
👣 Покрытие кода в Rust

Сначала поговорим об истории покрытия кода в Rust. Эта информация может пригодиться, если вы будете искать актуальные решения в Google.

История покрытия кода в Rust
Tarpaulin
Tarpaulin  —  это простой инструмент для реализации покрытия кода в Rust, но у него есть ограничения. Вот интуитивное описание работы Tarpaulin: он будет инструментировать код, а затем использовать ptrace для прослушивания происходящего, чтобы подсчитать строки для анализа покрытия.

Именно поэтому Tarpaulin поддерживает только Linux, а также только процессоры x86_64.

Tarpaulin обеспечивает покрытие строк и является достаточно надежным инструментом, но все же выдает некоторые неточности в результатах.

gcov
До появления покрытия на основе исходного кода Rust использовал технику gcov, которая полагалась на отладочную информацию, чтобы сопоставить LLVM IR (находится внизу, сгенерировано и скрыто от вас) со строками исходного кода (находятся наверху  —  это то, что вы привыкли видеть). Такая технология должна натолкнуть вас на мысль об именах в строках кода и о ведении подсчета того, какая строка выполняется и сколько раз.

Поскольку при переходе от исходного кода к скомпилированной двоичной форме разрешение данных теряется от слоя к слою, технология, основанная на gcov, не является самой точной.

➡️ Читать дальше

@rust_code
  • ❤ 4
  • 👍 2
  • 🔥 2
More from @rust_code
  1. Oct 8, 2026⚡️ Как запретить ошибку в работе с путями ещё до запуска программы? В Rust путь состоит из…
  2. Oct 8, 2026🦀 Burn 0.22: меньше дженериков, быстрее сборка и почти вдвое меньше VRAM в тесте CNN. Фре…
  3. Oct 7, 2026🦀 mold переписали с C++ на Rust Вышел mold 3.0, первая Rust-версия быстрого линкера для U…
  4. Oct 6, 2026🦀 Rust дайджест за неделю: новый релиз, быстрее компилятор и собственные зелёные потоки ⚡…
  5. Oct 6, 2026Одна задача, три языка: Rust, C# или C++? В курсе Google *Comprehensive Rust* есть упражне…
  6. Oct 4, 2026Это не строка
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →