Chapter I Overview of Software Testing and Quality Assurance

development path

  • Forward Thinking: verification software is working, and then evaluate the characteristics or the ability of a system can achieve the desired effect. All functions of the software to run at a set of environment, until it passes.
  • Reverse thinking: Suppose there are software errors, errors were found in order for the process to execute a program or system testing, looking for weak links local and fallible system, trying to undermine the system until it can not find the problem.

basic concepts

1. Several concepts related to the test

  • Error (error) - that is at fault (mistake), it appears the fault in the preparation of the code, this fault is also called bug.
  • Defect (fault) - flaw is the wrong result, fault defects into defects and omissions
  • Failure (failure) - Failure occurs when the defect execution.
  • Accident (incident) - When a failure occurs, it may or may not be presented to the user.
  • Test (test)
  • Test cases (test case)
  • Program correctly: no grammatical errors in the operation found no significant errors, the program without undue statement, valid input to get the right output, invalid input is handled properly, correct any possible input output.

2. Definition of software defects

  • A very broad concept, the performance does not meet user expectations or desired behavior
  • Exist in the software, the software features affect the realization of the right questions
  • Software general term for a variety of issues
  • Shortcomings (slow speed), illnesses (quits unexpectedly), failure (Chinese appear as squares), errors or mistakes (other than compilation error), functional failure (failure to copy graphics)
  • Program crashes or hangs (freezes), inconsistency (Ctrl + S can not save all processes), interface design flaws (five words should be displayed on the button three) and so on.
  • The reason: The deviation user needs, changing demand report, to achieve additional functionality, features missing

3. Testing and Debugging

  • Test conditions known procedures can be defined, results can be unpredictable.
  • Testing can plan, process controllable; debugging uncontrollable.
  • Testing is testing; debugging is the process of reasoning.
  • In addition to tests indicate the correct procedures but also how to deal with the verification process fails, debug indicate correct.
  • Testing can not understand the details of the design, commissioning must understand the design details.
  • Testing can be automated, debugging can not be automated.

4. Definition of Software Testing

  • Software testing is a "verification (Verification)" and "validity confirmation (Validation)" activities constitute a whole.
    • "Verify" is the test whether the software has been properly realized the system functions and characteristics of the product as defined by the planning book.
    • "Validity confirmation" is to confirm the developed software meets the real needs of active users.

Software testing reference site

Guess you like

Origin www.cnblogs.com/cyh-blackhouse/p/12400517.html