Avatar ·

Como definir dependências apenas para testes em Rust/Cargo?

Olá, colegas! Comecei a estudar Rust e me deparei com um problema ao escrever testes. Preciso usar o crate `rand` para gerar dados aleatórios nos testes, mas não quero que ele seja uma dependência na build final. Adicionei `rand` na seção `[dependencies]` no `Cargo.toml`, mas isso aumenta o tamanho do binário e o tempo de compilação. Como posso definir dependências apenas para testes corretamente? Tentei escrever assim: ```toml [dev-dependencies] rand = "0.8" ``` Mas depois, nos testes, não consigo importar: `use rand::Rng;` — o compilador reclama que o crate não foi encontrado. Também tentei usar `#[cfg(test)]` para compilação condicional, mas não entendo como aplicar isso corretamente às dependências. Por favor, me digam como organizar dependências de teste (test-only dependencies) em Rust/Cargo? Preciso que: 1. Crates como `rand`, `tempfile`, `mockall` sejam incluídos apenas ao executar `cargo test`. 2. Na build de produção, esses crates não afetem o tamanho nem o tempo de compilação. 3. Os testes