Rust

Testing

Test unitari, test di integrazione, doc test, assertion, should_panic, benchmark, organizzazione dei test

18 domande da colloquio·
Mid-Level
1

Quale attributo contrassegna una funzione come test unitario in Rust?

Risposta

L'attributo #[test] indica al compilatore Rust che la funzione annotata è un test unitario. Quando si esegue cargo test, tutte le funzioni contrassegnate con questo attributo vengono automaticamente individuate ed eseguite. I test vengono compilati solo con il profilo test e non sono inclusi nel binario di produzione.

2

Quale comando Cargo esegue tutti i test in un progetto Rust?

Risposta

Il comando cargo test compila il progetto con i test abilitati ed esegue tutti i test unitari, di integrazione e di documentazione. Individua automaticamente le funzioni contrassegnate con #[test], i test nella directory tests/ e gli esempi di codice nella documentazione. Le opzioni permettono di filtrare i test per nome o modulo.

3

Quale macro si dovrebbe usare per verificare che due valori siano uguali in un test?

Risposta

La macro assert_eq! confronta due valori e fa fallire il test se non sono uguali. Grazie al trait Debug, mostra automaticamente i valori confrontati in caso di fallimento, facilitando il debugging. A differenza di assert!, fornisce un messaggio di errore più informativo che mostra il valore atteso e il valore ottenuto.

4

Dove dovrebbero essere collocati i test di integrazione in un progetto Rust?

5

Quale attributo si dovrebbe usare per testare che una funzione provochi un panic?

+15 domande da colloquio

Padroneggia Rust per il tuo prossimo colloquio

Accedi a tutte le domande, flashcards, test tecnici, esercizi di code review e simulatori di colloquio.

Inizia gratis