Implementazione di xunit in un nuovo linguaggio di programmazione
-
03-07-2019 - |
Domanda
Alcuni di noi sono ancora " live " in un ambiente di programmazione in cui i test unitari non sono ancora stati accettati. Per iniziare, l'ovvio primo passo sarebbe provare a implementare un framework decente per i test unitari, e immagino che xUnit sia lo "standard".
Quindi qual è un buon punto di partenza per implementare xUnit in un nuovo linguaggio di programmazione?
A proposito, dal momento che le persone chiedono: il mio ambiente di destinazione è Visual Dataflex.
Soluzione 5
Ho trovato Test pragmatico dell'unità in C # con NUnit molto utile!
Altri suggerimenti
Per quale lingua è: ce ne sono molti nel posto già .
Se questo ti impedisce di iniziare a scrivere unit test, potresti iniziare senza un framework di test.
Esempio in linguaggio C:
void Main()
{
var algorithmToTest = MyUniversalQuestionSolver();
var question = Answer to { Life, Universe && Everything };
var actual = algorithmToTest(question);
var expected = 42;
if (actual != expected) Error();
// ... add a bunch of tests
}
Esempio in linguaggio Cobol:
MAIN.
COMPUTE EXPECTED_ANSWER = 42
SOLVE ANSWER_TO_EVERYTHING GIVING ACTUAL_ANSWER
SUBTRACT ACTUAL_ANSWER FROM EXPECTED_ANSWER GIVING DIFFERENCE
IF DIFFERENCE NOT.EQ 0 THEN
DISPLAY "ERROR!"
END-IF
* ... add a bunch of tests
STOP RUN
Esegui Main dopo aver finito con una modifica (e possibilmente compilare) sul tuo codice. Esegui main sul server ogni volta che qualcuno invia il codice al tuo repository.
Quando vieni agganciato, cerca di più per un framework o vedi se è possibile fattorizzare alcuni dei bit da Main al tuo framework.
Suggerirei che un buon punto di partenza sarebbe usare xunit in un paio di altre lingue per avere un'idea di come funziona questo stile di framework di unit test. Quindi dovrai approfondire il comportamento e iniziare a capire come ricreare quel comportamento in un modo adatto alla tua nuova lingua.
Ho creato un framework di unit test decente in VFP basandolo sul codice in Test Sviluppo guidato: una guida pratica , di David Astels. Farai molta strada leggendo gli esempi, comprendendo le tecniche e traducendo il codice Java nella tua lingua.