Why do I need to learn about software testing?
Just image that a user installs your application, opens it and “BOOM!”, it crashes. Is it good? In the worst case scenario, your software operating an airplane suddenly hangs up while the airplane is still flying in the sky. Can you image what may happen? How do you ensure that your application solves your customer’s problems? How do you know if your software meets its users’ requirements? How do you give your users’ confidence about the correctness, reliability and security of your software? In order to answer these questions adequately you need to learn about software testing.
What can I do after finishing learning software testing?
You will know how to design and write a test case, how to prepare test data, how to test software structurally and correctly, how to automate testing tasks, how to report bugs.
I am a programmer. I am not a tester. Do I really need to know how to test software?
Many application capabilities must be tested by a programmer. Many software testing tasks can only be done by a programmer. Therefore you have to master software testing knowledge.
Alright! What should I do now?
Please read
– this Cem Kaner et al. (1999). Testing Computer Software. 2nd Edition. Wiley book and
– this Lee Copeland (2004). A Practitioner’s Guide to Software Test Design. Artech House book, and
– this Chaminda Chandrasekara and Pushpa Herath (2019). Hands-On Functional Test Automation: With Visual Studio 2017 and Selenium. Apress book, and
– this Arnon Axelrod (2018). Complete Guide to Test Automation: Techniques, Practices, and Patterns for Building and Maintaining Effective Software Projects. Apress book.
Terminology Review:
- Test Cases.
- Test Coverage.
- Test Reports.
- Bug Tracking Systems.
- Black Box Testing.
- White Box Testing.
- Performance Testing.
- Acceptance Testing.
- Inspection.
- Automated Testing.
- Test Automation.
After finishing learning about software testing please click Topic 13 – Introduction to Software Design to continue.