Let me give you an example.
If A and B then Action1
If C or D then Action2
The statement overrides the weakest, just let the statement in the program be executed once. In the example above, just design the test case to make A=true b=true c=true.
The branch coverage is also called the decision coverage: make each judgment in the program to take the true branch and take the false branch at least once, that is, the true and false judgment has been satisfied. The above example needs to design a test case so that it meets the following criteria (1) a=true,b=true,c=true,d=false (2) a=true,b=false,c=false,d=false.
Conditional override: To make the possible value of each condition in each judgment meet at least once. The first judgment in the example above should take into account the a=true,a=false,b=true,b=false second judgment should take into account the C=true,c=false,d=true,d=false, so the above example can be designed to meet the following conditions (1) a=true,b =true,c=true,d=true (2) a=false,b=false,c=false,d=false.
Path overwrite: Requires overwriting all possible paths in the program. So you can design test cases that meet the following conditions (1) a=true,b=true,c=true,d=true (2) A=false,b=false,c=false,d=false (3) a=true,b=true,c=false,d= False (4) a=false,b=false,c=true,d=true.
Regardless of the coverage method, there is no guarantee of the correctness of the program. Http://www.cnblogs.com/ganmk/archive/2008/11/07/1328585.html
The difference between conditional overrides, Path overrides, statement overrides, and branch overrides in software testing