Je suis un peu confus au sujet des tests unitaires. Je vois la valeur dans des choses comme les tests automatisés. Je pense que peut-être un bon exemple serait la meilleure façon de m'aider à comprendre. Disons que j'ai une fonction de recherche binaire que je veux tester. Maintenant, dans les tests, je voudrais savoir des choses comme: Est-ce que la recherche trouve le premier élément, le dernier élément et d'autres éléments? Est-ce que la recherche compare correctement les caractères Unicode. Est-ce que la recherche gère les symboles et autres caractères "douloureux". Est-ce que les tests unitaires couvriraient cela, ou est-ce que je l'ai manqué? Comment écririez-vous des tests unitaires pour ma recherche binaire?Expliquer les tests unitaires s'il vous plaît
function search(collection, value){
var start = 0, end = collection.length - 1, mid;
while (start <= end) {
mid = start + ((end - start)/2);
if (value == collection[mid])
return mid;
if (collection[mid] < value)
end = mid - 1;
else
start = mid + 1;
}
return mid;
}
Le code de pseudo pour les tests unitaires serait adorable.
Ainsi, nous pourrions avoir:
function testFirst(){
var collection = ['a','b','c','x','y','z'],first = 'a', findex = 0;
assert(seach(collection,first),findex);
}
function testLast(){
var collection = ['a','b','c','x','y','z'], last = 'z', lindex = 5;
assert(seach(collection,last),lindex);
}