
Testing
Testes unitários, testes de integração, doc tests, asserções, should_panic, benchmarks, organização de testes
1Qual atributo marca uma função como teste unitário em Rust?
Qual atributo marca uma função como teste unitário em Rust?
Resposta
O atributo #[test] informa ao compilador Rust que a função anotada é um teste unitário. Ao executar cargo test, todas as funções marcadas com esse atributo são descobertas e executadas automaticamente. Os testes são compilados apenas com o perfil de teste e não são incluídos no binário de produção.
2Qual comando do Cargo executa todos os testes de um projeto Rust?
Qual comando do Cargo executa todos os testes de um projeto Rust?
Resposta
O comando cargo test compila o projeto com os testes ativados e executa todos os testes unitários, de integração e de documentação. Ele descobre automaticamente as funções marcadas com #[test], os testes no diretório tests/ e os exemplos de código na documentação. Opções permitem filtrar os testes por nome ou módulo.
3Qual macro deve ser usada para verificar que dois valores são iguais em um teste?
Qual macro deve ser usada para verificar que dois valores são iguais em um teste?
Resposta
A macro assert_eq! compara dois valores e faz o teste falhar se eles não forem iguais. Ela exibe automaticamente os valores comparados em caso de falha graças ao trait Debug, facilitando a depuração. Ao contrário de assert!, ela fornece uma mensagem de erro mais informativa mostrando o valor esperado e o valor obtido.
Onde os testes de integração devem ser colocados em um projeto Rust?
Qual atributo deve ser usado para testar que uma função causa um panic?
+15 perguntas de entrevista
Outros temas de entrevista Rust
Fundamentos de Rust
Ownership & Borrowing
Structs & Enums
Tratamento de erros
Coleções
Módulos e Pacotes
Traits
Generics
Lifetimes
Iterators & Closures
Smart Pointers
Concurrency Basics
async/await
Cargo & Ecosystem
Pattern Matching
Macros
Serde e serialização
Unsafe Rust
Traits avançados
Lifetimes Avançados
Type System
Tokio & Async I/O
Otimização de Desempenho
Memory Management
Web Frameworks
Database Integration
Padrões de design em Rust
Domine Rust para sua proxima entrevista
Acesse todas as perguntas, flashcards, testes tecnicos, exercicios de code review e simuladores de entrevista.
Comece gratis