Tengo un script que actúa como un contenedor para algunas pruebas de unidad escritas utilizando el módulo Python unittest
. Además de la limpieza de algunos archivos, creando un flujo de salida y la generación de un código, se carga casos de prueba en una suite usandoPython, prueba de unidad: Pase los argumentos de línea de comando a setUp de unittest.TestCase
unittest.TestLoader().loadTestsFromTestCase()
ya estoy usando optparse
de sacar varios argumentos de línea de comandos utilizados para determinar la salida ubicación, ya sea para regenerar el código y si se debe hacer una limpieza. También deseo pasar una variable de configuración, a saber, un URI de punto final, para usar en los casos de prueba.
Me doy cuenta de que puedo agregar un OptionParser
al método setUp de TestCase, pero quiero pasar la opción a setUp
en su lugar. ¿Es esto posible usando loadTestsFromTestCase()
? Puedo repetir el TestSuite
devuelto TestCases
, pero ¿puedo llamar manualmente a setUp en el TestCases
?
** ** EDITAR quería señalar que yo soy capaz de pasar los argumentos a setUp
si iterar sobre las pruebas y llamar a setUp
manualmente como:
(options, args) = op.parse_args()
suite = unittest.TestLoader().loadTestsFromTestCase(MyTests.TestSOAPFunctions)
for test in suite:
test.setUp(options.soap_uri)
Sin embargo, estoy usando xmlrunner
para esto y su método de ejecución toma un TestSuite
como argumento. Supongo que ejecutará el método setUp en sí, así que necesitaría los parámetros disponibles dentro del XMLTestRunner
.
Espero que esto tenga sentido.
¿Qué es helppot aquí? – SIslam
HelpSpot es una aplicación de servicio al cliente de UserScape. Escribí una interfaz de Python para su API - https://github.com/JohnSpeno/python-helpspot – jps
Para que esto funcione de forma similar a 'unittest.main()' debe agregar 'sys.exit (no result.wasSuccessful()) 'hasta el final. – abergmeier