Asserzioni ti consente di testare le tue ipotesi sul tuo programma. Ad esempio, se scrivi un metodo che calcola la velocità di una particella, potresti affermare che la velocità calcolata è inferiore alla velocità della luce.
Sia le affermazioni che i test unitari servono come documentazione per una base di codice e un mezzo per scoprire i bug. Le differenze principali sono che le asserzioni funzionano come controlli di integrità e vedono input reali, mentre i test unitari vengono eseguiti su input simulati specifici e sono …
Spesso quando scrivo una funzione voglio assicurarmi che gli input siano validi al fine di rilevare tali errori il più presto possibile (credo che questi siano chiamati precondizioni). Quando una condizione preliminare fallisce, ho sempre lanciato un'eccezione. Ma sto iniziando a dubitare che questa sia la migliore pratica e, in …
Sono un grande fan della scrittura di assertassegni nel codice C ++ come un modo per rilevare casi durante lo sviluppo che non possono accadere ma accadono a causa di errori logici nel mio programma. Questa è una buona pratica in generale. Tuttavia, ho notato che alcune funzioni che scrivo …
Di recente mi sono imbattuto in alcuni nuovi codici scritti intervallati da molti Debug.Assert (C #). Dovremmo comunque utilizzarlo ampiamente nonostante l'uso di TDD, BDD e Unit Test in generale?
Il comportamento predefinito di assertin C ++ è di non fare nulla nelle build di rilascio. Presumo che ciò avvenga per motivi di prestazioni e forse per impedire agli utenti di visualizzare messaggi di errore negativi. Tuttavia, direi che quelle situazioni in cui un assertavrebbe sparato ma era disabilitato sono …
Mi sono davvero innamorato del test unitario e del TDD: sono infetto da test. Tuttavia, il test unitario viene normalmente utilizzato per metodi pubblici. A volte, però, devo testare alcune assunzioni-asserzioni anche con metodi privati, perché alcune sono "pericolose" e il refactoring non può aiutare ulteriormente. (So che i framework …
Va bene aggiungere affermazioni differite come questa var actualKittens = actualKittens.Select(kitten => { Assert.IsСute(kitten); return kitten }); Perché? Quindi posso iterare solo una volta anche con le dichiarazioni che prevedono la raccolta materializzata, ad esempio: CollectionAssert.AreEquivalent(expectedKittens, actualKittens.ToList()); Inoltre, potrebbe non essere solo Seleziona, ma un metodo con iteratore definito e …
Ultimamente ho avuto difficoltà a capire quale sia la giusta quantità di controllo e quali siano i metodi corretti. Ho alcune domande al riguardo: Qual è il modo corretto di verificare la presenza di errori (input errato, stati errati, ecc.)? È meglio verificare esplicitamente la presenza di errori o utilizzare …
Sto scrivendo una sceneggiatura che fa qualcosa in un file di testo (ciò che fa è irrilevante per la mia domanda). Quindi, prima di fare qualcosa per il file, voglio verificare se il file esiste. Posso farlo, nessun problema, ma il problema è più quello dell'estetica. Ecco il mio codice, …
Informazioni sulla digitazione dell'anatra : La tipizzazione delle anatre è aiutata dal non testare abitualmente il tipo di argomenti negli organismi metodo e funzione, basandosi sulla documentazione, sul codice chiaro e sui test per garantire un uso corretto. Informazioni sulla convalida dell'argomento (EAFP: è più facile chiedere perdono che autorizzazione). …
Sono un grande fan della scrittura di asserzioni, contratti o qualsiasi tipo di controllo disponibile nella lingua che sto usando. Una cosa che mi preoccupa un po 'è che non sono sicuro di quale sia la pratica comune per gestire i controlli doppi. Esempio di situazione: scrivo innanzitutto la seguente …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.