Ho uno script che funge da wrapper per alcuni test unitari scritti usando il modulo Python unittest
. Oltre a ripulire alcuni file, la creazione di un flusso di output e la generazione del codice, carica casi di test in una suite conPython, unit test - Passa gli argomenti della riga di comando a setUp di unittest.TestCase
unittest.TestLoader().loadTestsFromTestCase()
Sono già usando optparse
a tirare fuori diverse argomenti della riga di comando utilizzate per determinare l'uscita posizione, se rigenerare il codice e se fare un po 'di pulizia. Voglio anche passare una variabile di configurazione, vale a dire un URI dell'endpoint, da utilizzare nei casi di test.
Mi rendo conto che posso aggiungere un OptionParser
al metodo setUp del TestCase, ma voglio invece passare l'opzione a setUp
. È possibile utilizzare loadTestsFromTestCase()
? Posso scorrere il numero TestSuite
restituito, TestCases
, ma posso chiamare manualmente setUp su TestCases
?
** EDIT ** ho voluto sottolineare che sono in grado di passare gli argomenti per setUp
se iterare i test e chiamare setUp
manualmente come:
(options, args) = op.parse_args()
suite = unittest.TestLoader().loadTestsFromTestCase(MyTests.TestSOAPFunctions)
for test in suite:
test.setUp(options.soap_uri)
Tuttavia, io sto usando xmlrunner
per questo e il suo metodo di esecuzione prende uno TestSuite
come argomento. Presumo che eseguirà il metodo setUp stesso, quindi avrei bisogno dei parametri disponibili all'interno dello XMLTestRunner
.
Spero che abbia senso.
Cos'è l'Helppot qui? – SIslam
HelpSpot è un'applicazione del servizio clienti di UserScape. Ho scritto un'interfaccia Python per la sua API - https://github.com/JohnSpeno/python-helpspot – jps
Per far sì che funzioni come unittest.main() 'dovresti aggiungere' sys.exit (non result.wasSuccessful()) 'alla fine. – abergmeier