Provide tests using the selenium tool simulate user behaviour
Imagine that you are working as a software tester with a small project team in an organization that is producing an integrated operating environment for a client, where one of the requirements of the environment is a basic to do list, written in Python. The project has acquired some software assets that fulfil this role, but as yet do not have any quality assurance associated with this asset.
Your project manager has stated that the main drivers for this quality assurance process are ensuring software reliability, reducing cost, and minimising development time (in that order).
The computer program you will be testing on is the CITS5501 To Do application. It is written in Python using the Django framework and the source code is available.
Part 1) (50%) A test suite, including:
Unit tests. Provide at least 3 (non-trivial) unit tests. These should test the specific functionality of the program, rather than the framework it is written in — e.g. it is not necessary to simply write a test confirming that data is really written to the database, but it is useful to write a test ensuring that methods work as expected and that invariants are preserved.
These resources may be helpful:
Introduction to testing in Django - https://docs.djangoproject.com/en/1.9/topics/testing/ UI testing with Selenium - https://django-selenium.readthedocs.org/en/latest/
A description of any bugs or errors found during your testing, and a description of how these bugs should be reported and tracked if this were an ongoing project.
This report is to be submitted as either a plain text document, a Microsoft Word file, or a PDF.
Correctness: whether your tests successfully test the things you are aiming to test, and how well both the tests and your report reflect a correct understanding of the practice of testing as it applies to this project;
Clarity: how well the code and the report articulate your intentions and understanding.