Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What numbers can you pass as verbosity in running Python Unit Test Suites?

The Python unittest framework has a concept of verbosity that I can't seem to find defined anywhere. For instance, I'm running test cases like this (like in the documentation):

suite = unittest.TestLoader().loadTestsFromTestCase(MyAwesomeTest) unittest.TextTestRunner(verbosity=2).run(suite) 

The only number I've ever seen passed as verbosity is 2. What is this magic number, what does it mean, what what else can I pass?

like image 637
Rudd Zwolinski Avatar asked Aug 24 '09 13:08

Rudd Zwolinski


People also ask

What is verbosity in Python?

VERBOSE : This flag allows you to write regular expressions that look nicer and are more readable by allowing you to visually separate logical sections of the pattern and add comments.

Which function in unit test will run all of your tests in Python?

TestCase is used to create test cases by subclassing it. The last block of the code at the bottom allows us to run all the tests just by running the file.

How do unit tests work in Python?

A unit test is a test that checks a single component of code, usually modularized as a function, and ensures that it performs as expected. Unit tests are an important part of regression testing to ensure that the code still functions as expected after making changes to the code and helps ensure code stability.


1 Answers

You only have 3 different levels:

  • 0 (quiet): you just get the total numbers of tests executed and the global result
  • 1 (default): you get the same plus a dot for every successful test or a F for every failure
  • 2 (verbose): you get the help string of every test and the result

You can use command line args rather than the verbosity argument: --quiet and --verbose which would do something similar to passing 0 or 2 to the runner.

like image 187
luc Avatar answered Sep 21 '22 10:09

luc