Tengo algunas pruebas que se utilizan info!
en la caja de troncos de Rust. Lo intenté:
RUST_LOG=all cargo test -- --nocapture my_tests
pero los registros simplemente no salen.
Sin embargo, no inicié el registrador, porque puttin env_logger::init();
no funcionará:
failed to resolve: use of undeclared crate or module `env_logger`
Puede intentar utilizar una de varias soluciones alternativas.
Lo primero es usarlo println
cuando crate está compilado para una prueba como esta.
#[cfg(not(test))]
use log::{info, warn}; // Use log crate when building application
#[cfg(test)]
use std::{println as info, println as warn}; // Workaround to use prinltn! for logs.
Para evitar cargo
silenciar las pruebas estándar, ejecute pruebas como esta
$ cargo test -- --nocapture
Otra solución elegante es utilizar test-env-log crate
#[test_env_log::test] // Automatically wraps test to initialize logging
fn hello_log_tests() {
// ...
}
Para usar la dependencia (como se env_logger
menciona en el mensaje de error) para las pruebas, inclúyala en la dev-dependencies
sección
[dev-dependencies]
env_logger = "*"
Este artículo se recopila de Internet, indique la fuente cuando se vuelva a imprimir.
En caso de infracción, por favor [email protected] Eliminar
Déjame decir algunas palabras