How to test?

Tony Flury tony.flury at btinternet.com
Wed Jun 17 12:34:55 EDT 2020


On 24/04/2020 19:40, Manfred Lotz wrote:
> I have a command like application which checks a directory tree for
> certain things. If there are errors then messages will be written to
> stdout.
>
> How to test this in the best way?
>
> One idea was for the error situations to write messages to files and
> then later when running the tests to compare the error messages output
> to the previously saved output.
>
> Is there anything better?
>

In a recent application that I wrote (where output to the console was 
important), I tested it using the 'unittest' framework, and by patching 
sys.stderr to be a StringIO - that way my test case could inspect what 
was being output.

    with patch('sys.stderr', StringIO()) as
    stderr:application.do_stuff()self.assertTrue(stderr.getvalue(),
    'Woops - that didn\'t work')

I am not sure of the structure of your application, and whether you have a callable API that you can invoke.



More information about the Python-list mailing list