Флаг --show-output
Флаг --show-output используется при запуске тестов
через команду cargo test. По умолчанию
Rust скрывает весь вывод println! для тестов,
которые завершились успешно, и показывает его только
для проваленных тестов. Флаг --show-output
заставляет выводить содержимое stdout для всех
тестов, включая успешные. Параметров флаг не принимает.
Синтаксис
cargo test --show-output
Пример
Давайте создадим простой тест, который выводит строку
через println! и всегда проходит:
#[cfg(test)]
mod tests
{
#[test]
fn test_output()
{
println!("Hello from test");
assert_eq!(1 + 1, 2);
}
}
Запустим тесты без флага --show-output:
cargo test
Результат выполнения команды:
running 1 test
.
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
Как видите, строка "Hello from test" не была показана,
потому что тест прошёл успешно.
Пример
Теперь запустим тот же тест с флагом --show-output:
cargo test --show-output
Результат выполнения команды:
running 1 test
.
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
successes:
---- tests::test_output stdout ----
Hello from test
Теперь в секции successes отображается вывод
функции println! для успешно пройденного теста.
Смотрите также
-
флаг
cargo test,
который запускает все тесты в проекте -
флаг
filter,
который позволяет запускать только определённые тесты -
флаг
parallel,
который управляет параллельным запуском тестов -
атрибут
test,
который помечает функцию как тестовую