Software Testing & QA: Not-boring Explanation (for Dummies)

by Kate Libbie | June 30, 2020 9:48 am

Everybody knows the way to success is paved by the quality company renders to customers. Quality, in its turn, isn’t possible without proper QA and testing. But how does testing happen? If your picture of QA is composed of total misunderstanding, you will probably need hours to google everything. But time is precious, and so quality is. That’s why today, we are ready to spill the beans and lead you to the world of testing with these simple not-boring explanations.

What is Quality Assurance, Quality Control, Software testing?

So many terms, so much confusion. The first step of our learning journey is to understand the difference between them. To be well-oriented in QA, you have to differentiate the following concepts:

Quality Assurance (QA) [1]– the broadest of all concepts, an umbrella holding all the testing procedures done throughout such stages as software development, release and production. It is a process testing specialist follows to perform testing to make sure that something works as intended. For example, it can be writing test plan, applying test cases, documenting test strategy, and more.

Quality Control (QC) – while QA is an overall process, QC implies more specific procedures that build up this process. It is a small parts of QA performed on the product during development to obtain information whether it meets the quality requirements in each specific period of time. So, for example, when QA engineers are testing online-store executing the test cases and logging bugs to ensure that product meets the specifications and requirements of the customer, they are doing QC.

Software Testing – the part of QC, which includes activities to plan test actions, test design, execution of these tests and analysis of the obtained data. In software testing you run a set of test cases (that were created out of requirement) to verify that the product is made as per requirement. QA deals with all the activities required to get a successful product in the market.

Testers VS Developers: Can Developer do Software Testing?

Testers Vs Developers

Both testers and developers are interested in making good product. But, as reality shows, they have different mindsets, that’s why for developer it is complex and sometimes impossible to conduct proper software testing. Here are some of the reasons:

Finally, developers can test, but they are not familiar with all types of testing and related techniques. On the other hand, testers do not have specific skills which would allow them to fix any bugs by themselves.

Manual Testing vs Automation testing

Manual Testing Vs Automation Testing

If delving more in technical side, you may notice testing can be of both types: manual and automated. What does it mean? Let’s take a closer look at each of this group.

Manual testing – Done by humans.

Manual testing is carried out directly by a person who clicks on buttons in the application or interacts with software or API with the necessary tools. Manual testing requires fewer expenses due to its flexibility: since everything is done manually, it is easy to stop/change the course of the test run, reuse and update test cases.

Some of the most important types of manual testing:

Automated Testing – Done by robots.

Automated tests, on the other hand, are performed by a machine that runs a test script that was written in advance. Since test automation requires less human resources, this approach saves time and provides a comprehensive qualitative checking. Some of the cases:

As a matter of fact, all types of manual testing can be automated implying the opportunity to write test cases.

Bottom line: What is the value of Software Testing?

Quality assurance is more than just the process of finding bugs. It is a work for those who are passionate about quality and strive to make the world better. Our modern realities are filled with various devices and constant interactions with technology. Finding small bugs one after another and examining each function of the program, QA engineer identifies in advance all possible problems that the user may encounter during this interaction. Improvement of technology, after all, significantly affects the quality of our lives, which is perhaps the most substantial.

……………………………

If your products are requiring testing, we are ready to hedge your team and ensure the high quality. We are participating in the life of the product, and do our work with a passion for your success. Let’s make great products together.

Visit our blog[5] to read more about QA & testing. Feel free to contact us[6] for collaboration.

Learn more from QATestLab

Related Posts:

Endnotes:
  1. Quality Assurance (QA) : https://blog.qatestlab.com/2011/04/07/what-is-the-difference-between-qa-and-testing/
  2. Functional Testing: https://blog.qatestlab.com/2015/07/22/goals-functional-testing/
  3. functional requirements: https://blog.qatestlab.com/2015/12/31/srs-frs-brs/
  4. Configuration Testing: https://blog.qatestlab.com/2015/08/05/why-configuration-testing/
  5. blog: https://blog.qatestlab.com/
  6. contact us: https://qatestlab.com/company/contacts/
  7. How to Distinguish Between QC, QA and Testing?: https://blog.qatestlab.com/2016/02/08/qc-qa-testing/
  8. From Troubled Launch to Excellence: A Startup’s Real-Life Success Story: https://blog.qatestlab.com/2024/03/05/startup-story/
  9. Why Is a Healthy Testing Process Crucial? A Full Checklist: https://blog.qatestlab.com/2024/02/15/why-is-a-healthy-testing-process-crucial-a-full-checklist/

Source URL: https://blog.qatestlab.com/2020/06/30/software-testing-explanation/