What is the difference between QA (Quality Assurance) and Software Testing?
Software testing is a subset of QA. As a tester you run through test cases and you test against the requirements of a feature. You need to meet the requirements by clicking on buttons, making sure certain metrics are met and the actual completeness of a feature.
QA or Quality Assurance is doing a lot more than just what was mentioned for Software testing. In QA, you document findings, and software. You push the boundaries of the test, you look to see if things look professional aka color schemes, performance testing and will the customer actually be happy with these changes?
I have worked in a technical support role before and with that you hear complaints. The complaints will differ software to software and company to company but customers typically want functionality per their needs. Sometimes a good QA team member is simply asking the customer if a feature might be a good idea for their company needs. Sometimes it’s running beta tests in their environments because you don’t have a lab big enough. There is a lot to consider when it comes to Quality.
Quality is a simple concept. Does the software work and will customers want to use it? Sometimes getting to the answers of “does the software work and will the customers want to use it†can be a very daunting task. Quality Assurance is also mitigating risks. But what about bugs that cannot be reproduced. Sometimes this happens, actually, it happens a lot. Sometimes you as a company need to assess the risk and take it.
Software testing requirements could be something like:
1) When entering a value, and hitting enter. The box turns green.
But what if the box turned red? Or nothing at all? This would be considered a software bug.
What if the green box just looks terrible in the UI? This could technically still be a bug, or submitted as a feature request against the story. A story is something where a set of work is to be done by a developer or a tester (or both). This work can have sub-tasks for additional features. For example:
Story: Website edits to make things pretty
Sub-task: Turn the font in the first paragraph to Times New Roman
Sub-task: Turn the font in the second paragraph Red
The developer does both sub-tasks of the above example, and the story “website edits to make things pretty.†Of course there normally is a description of work, test plans that will need to be worked out but that can be discussed at a later time. How would you test this? Well, luckily this is just some UI changes which in this case are extremely easy. You can make sure the HTML/HTML5 or CSS Stylesheet or whatever is used for the coding is correct by doing a code review. It is important that every person testing knows the code as well as the developer to properly test. You can go and verify the changes on the website. If you disagree with the color scheme or the look of the story, maybe even the purpose of it. You can. That is the beauty of being in QA. Now, some companies don’t really see a difference between QA and Software testing. Some companies group the two jobs together, which is okay! If you have any additional QA questions or topics you would like me to cover in the next write-up. Let me know
IT Professional at cc
6 å¹´Thanks for the informative article on QA and Testing. https://colaninfotech.com/qa/
Software Tester
7 å¹´It might be easier to discuss if we agreed upon a definition of what is Quality Assurance and in which context. For example, when I say QA, it means writing automated tests in order to test hardware components to ensure that they are created exactly the same as all the other hardware components of the same sort. (In other words, check PCB's for manufacturing faults). When you say QA, you mean something else which you have not clearly defined. I see a brief definition of Quality, which I don't entirely agree with either, but you do not explain how that quality is Assured by testing activities or even non-testing activities. Since testing is a subset (per your definition) of QA, then there should really be some reasoning of what other activities are in your definition of QA... perhaps even a model?
Product Owner in Test | Agilist | Speaker
7 å¹´Hi Thomas, I agree with both your understandings about QA and Software testing. But I will tell you that you are still thinking inside the box and it is not your fault. We "testers", "SDETs" are more valuable and useful. But the environment we are put in and the expectations that are thrusted upon us are silly and silly has been my bread and butter for a long time. Let me know if you are interested in discussing, there is a reason you wrote this article.
Retired and still not completely adjusted to it
7 å¹´I can not agree with this at all. QA is a proactive, strategic process which develops policy, standards and the supporting processes and documents for use across multiple projects, applications, and platforms (preferably shop-wide). QA is a Risk Avoidance activity. QC is a reactive, tactical exercise which is undertaken to confirm that a deliverable conforms to specifications / requirements, standards, etc. QC is a Risk Mitigation activity. Another way of looking at it: You Assure your client that the work will be done well; you Control the quality of what you have built. See also: https://www.dhirubhai.net/pulse/your-shop-does-qa-testing-start-worrying-doug-stephens