Come posso fare automazione del test usando uno script python per testare un programma c?

1

Mi chiedevo se posso usare uno script Python per testare automaticamente un programma C.

Supponiamo di avere un programma C molto semplice che legge i dati (numeri come casi di test) dalla console, li calcola, quindi li invia alla console. Ora voglio leggere i dati da un file e poi emettere qualsiasi cosa il programma emetta in un file.

Supponiamo che nel programma originale C io utilizzi while loop e scanf per leggere due numeri in due variabili a e b per diverse volte e fai diversi calcoli in base ai valori di a e b , come questo:

if(a>4 && a<10){...}
else if(a>=10){...}

Ora posso usare uno script Python per testare automaticamente il programma? E ho bisogno di modificare il mio programma C? Come?

EDIT: Se è consentito qualsiasi metodo, qual è il modo migliore per testare automaticamente il programma C senza utilizzare i framework?

    
posta Gnijuohz 25.04.2012 - 10:07
fonte

2 risposte

1

potrebbe essere un po 'fuori tema ma potresti provare a cercare la libreria dei ctypes in python, è un mezzo di Python che interagisce con i programmi c / c ++ per chiamare le routine in header, dll ecc.

Lo uso principalmente per la programmazione di applicazioni Windows in python usando Windows API, spero che aiuti !!

Ecco il link:

documentazione di Python

    
risposta data 27.04.2012 - 04:02
fonte
0

Hmmm ... Se avrò lo stesso compito, lo risolverò semplicemente chiamando il programma C con parametri diversi in python. In questo modo:

import commands
params_results = [(1,2), (2,3), (3,4)]
for param in pamams_results:
    out = commands.getoutput('mycompiledprogram %s' % param[0])
    assert out == param[1]
    
risposta data 25.04.2012 - 13:16
fonte

Leggi altre domande sui tag