Я думал, что поделюсь своим решением для добавления ключа --debug в тест для управления регистратором:
if __name__=='__main__':
parser = argparse.ArgumentParser(description="Build a compilation script")
parser.add_argument('--debug', help='Turn on debug messages', action='store_true', default=False)
args = parser.parse_args()
if args.debug:
log_level = logging.DEBUG
else:
log_level = logging.INFO
logging.basicConfig(level=log_level)
sys.argv.pop()
unittest.main()
Затем я расширил unittest.TestCase
, чтобы добавить запись:
class mcs_TestCase(unittest.TestCase, object):
def __init__(self, *args, **kwargs):
super(mcs_TestCase,self).__init__(*args,**kwargs)
logging.basicConfig()
self.logger = logging.getLogger(__name__)
...
Теперь я могу включать и выключать сообщения в моем тесте, используя --debug, но в обычных регрессиях это игнорируется.