How many tests should have the project?

TL;DR

As few as possible while still give the ream a confidence in correctness of software.


 

The goal

Tests are not  part of the product, they don't bring money or users. The goal of the tests is to ensure that product is doing what it suppose to.

Manual approach

When product is being developed, often developers "test it" manually. e.g. they tart application, provide some input, verify the output. Such approach can not give confidence, since includes human factor, the process can vary from person to person. And automated tests help to ensure that every revision every test execution conducts the same test set.

Extreme testing

Another approach would be to cover as much as possible code and scenarios with tests. In such case a lot of efforts is spent for tests implementation. Lot of resources are spent to execute them over and over again (in CI, on the workstations). Lot of time is spent to adapt test cases when the product is modified. And the development is delayed.

Conclusion

Let's write tests, which will do the work, which we would do manually before release.

Comments

Popular posts from this blog

Compilation from macOS(Intel) to linux x86_64 finaly works. Cross compilation of the rust code with bazel. Part 2.

Fetching toolchains at build time. Cross compilation of the rust code with bazel. Part 4

Cross compilation for ARM v7. Cross compilation of the rust code with bazel. Part 3.