When writing software, it's crucial to be able to test the functionality of the system being written. In software development, there is a popular and effective way of writing code in a more agile fashion, namely test-driven development. This method is driven by tests, and the tests written before the main logic are implemented. In other words, when you are about to write a test case for a system, you will certainly have a couple of requirements already at hand, or an idea about the software. In test-driven development, the tests will reflect the requirements. This is a way of writing the requirements in code that will test the piece of software for a given set of functionality. The tests are implemented as test cases, and test cases are collected into test suites. The tests will preferably be automated with a tool. Having automated tests will enable the developers to rerun the tests every time a change is made to the code.
We'll focus...