Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I was trying to find a relevant source of information for the above, but I failed. What is the output of software testing? Some say its "list of bugs", others say "answer whether or not the software conforms to what customer wanted". I know testing is a part of QA but not sure what is its aim and output in this context.

share|improve this question

You miss the main point in the other answers:

  • Output of the QA is quality processes.
  • Output of the testing is an information about product quality.
share|improve this answer
The closest answer so far - the output of testing is just one of the inputs into information about product quality - and it should be a minor input. – mattnz Nov 23 '12 at 0:46

the purpose of testing is to validate that the product meets the quality requirements.
That includes both functional (meeting customer requirements for features, usability, performance) and technical (crashes, data corruption, etc.) requirements.
It's an integral part of the QA process, no more and no less. Ergo, there is no other context, unless you're testing stuff for the sake of testing it in which case only you can say what you want the aim and output to be, and most likely both will be irrelevant as you're testing without aim and therefore won't care about the output.

share|improve this answer
validate,well, the testing is mostly verification (if testing functional requirements) or validation, if checking the product as a whole. – user970696 Oct 3 '12 at 10:16

Quality Assurance is a phase that each feature/product must go through before it is ready for end-users. The goal of QA is to ensure that when your product reaches its users, they will be able to use it and not be frustrated by things that don't meet customer expectations or those that are simply broken.

Testing is the primary activity done during QA phase. Although QA certainly is responsible for generating "a list of bugs", I would not consider that to be the output. If it was, then QA engineers would be evaluated based on how many bugs they write per day and that doesn't make much sense.

Instead, consider bug tracking to be simply a communications mechanism to be used internally for effective interaction between QA and development teams. The real output of QA is working software and in order to verify that it is working, that software must pass set of acceptance tests. So you could say that QA's output is a checklist which shows the state of all acceptance tests and identifies which ones have passed and failed. Ideally, by the time QA is done working with development engineers, all acceptance tests should be passing, but in some circumstances if a feature is isolated and not in high demand, product management might make a decision to ship the product without the support for that feature.

share|improve this answer
QA is not just a phase, its a practice applied to whole development process (requirements, code, documents...) to assure its of the highest quality. – user970696 Oct 3 '12 at 10:18
-1: QA Describes the processes that assure product quality and goes well beyond "parking an ambulance at the bottom of the cliff" mentality Testing == QA. QC is activity/phase that a product goes though - so testing is best considered a QC activity. – mattnz Nov 23 '12 at 0:43

Short Answer: Testing and QA are seem similar but do have different meanings and implications.

Testing - stands to any type of testing, just to break the system by user inputs with age case entries (like to see a rough behavior of UI on user entries, like validation and how exception cases are handled.)

QA(Quality Assurance) - has a goal to verify the requirements by testing the products. In another words, its core purpose is monitoring the software engineering processes and methods used to ensure quality. The purpose is to assure that the all functionality is in place and implemented as expected before user acceptance.

Overall, there are several sequential levels (unit testing, integration testing, etc.) in software testing process that you may get detailed information from - Wikipedia Software testing.

share|improve this answer
You have mixed up QA and QC - quite different. QA actually has little to with "Does this software pass it's test" – mattnz Nov 23 '12 at 0:44

Testing is merely a quality control activity that is used as a measure of the suitability of the software for its purpose. As others have eluded to, testing, on its own, is not very useful. You need to have a process that describes what to do with the outputs of testing, and along with other inputs, is used to improve the product. This process of software testing / verification / validation is, although important, a small part of the Quality Assurance process. Therefore, the output software testing is an input into the QA process.

The Quality Assurance process encompasses the entire business, and is used to drive the activities (and measure the results) that occur in the production of the product. Software is more than just a program written by programmers, and QA cannot achieved in isolation of business goals and non- software development activities. QA also defines such activities as code inspection, requirements management etc, that are not a part of testing, but are shown to improve product quality.

Note: Within the software community these ideas and terms are not well understood, and as a rule, we programmers naively equate QA===QC===Test. You are likely to get better and more accurate answers referring material and web sites focused on Quality Management rather than Software. Stay away from sites that use QA and Testing in the same sentence.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.