Sto cercando di creare alcuni casi di test e ho letto che dovresti provare a limitare il numero di asserzioni per ogni caso di test.
Quindi la mia domanda è, qual è il modo migliore per testare una funzione con più input. Ad esempio, ho una funzione che analizza una stringa dall'utente e restituisce il numero di minuti. La stringa può essere nella forma "5w6h2d1m"
, dove w, h, d, m
corrisponde al numero di settimane, ore, giorni e minuti.
Se volessi seguire la regola "1 asserzione per test", dovrei effettuare più test per ogni variazione di input? Sembra sciocco quindi ho solo qualcosa tipo:
self.assertEqual(parse_date('5m'), 5)
self.assertEqual(parse_date('5h'), 300)
self.assertEqual(parse_date('5d') ,7200)
self.assertEqual(parse_date('1d4h20m'), 1700)
Nell'un caso di test. C'è un modo migliore?