mirror of
https://github.com/appinfosapienza/so-un-bot.git
synced 2025-03-13 12:45:22 +01:00
45 lines
No EOL
1.1 KiB
Text
45 lines
No EOL
1.1 KiB
Text
Il partition coverage di un insieme di test cases è la percentuale di elementi della partition inclusi nei test cases. La partition è una partizione finita dell'insieme di input della funzione che si sta testando.
|
|
|
|
Si consideri il seguente programma C:
|
|
|
|
-----------
|
|
|
|
#include <stdio.h>
|
|
|
|
#include <stdlib.h>
|
|
|
|
#include <assert.h>
|
|
|
|
#define N 5 /* number of test cases */
|
|
|
|
int f1(int x) { return (2*x); }
|
|
|
|
int main() { int i, y; int x[N];
|
|
|
|
// define test cases
|
|
|
|
x[0] = 0; x[1] = 1; x[2] = -1; x[3] = 10; x[4] = -10;
|
|
|
|
// testing
|
|
|
|
for (i = 0; i < N; i++) {
|
|
|
|
y = f1(x[i]); // function under testing
|
|
|
|
assert(y == 2*x[i]); // oracle
|
|
|
|
}
|
|
|
|
printf("All %d test cases passed\n", N);
|
|
|
|
return (0);
|
|
|
|
}
|
|
|
|
Si vuole testare la funzione f1(). A tal fine l'insieme degli interi viene partizionato come segue:
|
|
|
|
{0, {-1}, {1}, {tutti glli interi negativi diversi da -1}, {tutti glli interi positivi diversi da 1}}
|
|
|
|
Il programma main() sopra realizza il nostro testing per la funzione f1(). I test cases sono i valori in x[i].
|
|
|
|
Quale delle seguenti è la partition coverage conseguita? |