Testing is often undervalued because of the lack of understanding of its purpose and the benefits that it can bring to a business. Testing modules are as important as testing any other part of the Ansible playbook, because a small change in a module can break your entire playbook. We will take the example of the Python module that we wrote in the Using Python to write modules section of this chapter and write an integration test using Python's nose test framework. Unit tests are also encouraged, but for our scenario, where we check whether a user exists remotely, an integration test makes more sense.
nose is a Python test framework; you can find out more information about this test framework at https://nose.readthedocs.org/en/latest/.
To test the module, we convert our previous module into a Python class so that we can directly import the class into our test...