The first chapter introduces the software test
1. The concept and history will not be said.
2. Why software testing, because testing is a step in the software development process, through testing to better design and coding, can improve the reliability of the program.
3. The definition of error defects and failures, error--defect--failure.
4. The process of software development
1) Software requirements users understand the correctness of the correct expression
2) Requirements Specification Analyst Understanding Design Expression Correctness
3) Design Manual The designer understands the correctness of the coding
4) source program programmer input Running correctness
5) Get running results
5. Causes of defects
1) Misunderstanding demand
2) Requirements Design error
3) Misunderstanding design content coding error
4) Program execution failure does not meet demand
6. V-Type development model
Requirements Specification, acceptance test
System design, System testing
Structural design, integration testing
module design, Unit testing
7. Test method
Black box: can only test the function described by the specification description
White box: can only test the functions implemented by the program
Chapter II black Box test
1. Only care about input and output, from the user's point of view, to find external behavior error
2. Advantages: Independent of the implementation, the specific implementation of the change case can not change, test cases and software implementation at the same time
3. Methods: Equivalence class division, boundary value analysis, causality diagram method, decision table method
4. Equivalence class Partitioning
1) Principle: According to the interval, by the numerical value, by the value set, by the restriction condition or the rule, subdivides the equivalence class
2) Method: First Find all the effective equivalence class, corresponding to the valid equivalence class write invalid equivalence class. Design effective use cases to cover as many valid equivalence classes as possible, with invalid use cases each overriding an invalid equivalence class
5. Boundary Value Analysis method
Method One: Take min,min+,nom,max-,max,n variables for each variable to generate 4n+1 test cases
Method Two: Take min-,min,nom,max,max+,4n+1 for each variable
Robust boundary value test (method one + method two): Min-,min,min+,nom,max-,max,max+,6n+1
Worst case test: a case where multiple variables take a boundary value at the same time.
6. Causality Diagram method
Pros: The first two methods are difficult to describe the relationship between inputs, causality mapping is suitable for describing a combination of conditions, focusing on the test specification of input and output dependencies.
Representation symbol:
1) cause-result "with, or"
2) The constraint between the reasons "Exclusive,inclusive,require,only one"
3) constraint between results "masking"
7. Decision Table Method
Four components: Condition piles, condition items, action piles, action items
Five Construction steps
Simplification: Merging the same actions, the combination of different conditional items painting "-"
Chapter Three white box test
1. Control flow Coverage criteria
1) Statement overlay: Every statement in the program gets run
2) Branch coverage guidelines: Every branch has a real one-time fake
3) Atomic predicate override: Each atom predicate in each branch has a real one-time false
4) Branching predicate overrides: Branching overrides and the set of atomic predicate overrides
5) Compound predicate overlay: All true and false combinations of atomic predicates in a branch
6) Path Overlay: Overwrite all full paths
2. Data Flow Testing
1) definition overrides: Each definition occurrence of each variable can be passed to a certain referential occurrence of the variable in a feasible way.
2) Reference overrides: Every defining occurrence of each variable can be passed on to each of the cited occurrences
3) define reference overrides
Review of Software Testing (i.)