Chapter 1 Fundamentals of testing 1. Why is testing necessary? 2. What is testing? 3. Test principles 4. Fundamental test process 5. The psychology of testing
1. Why is testing necessary • 1.1 Software system context • 1.2 Causes of software defects • 1.3 Role of testing in sw.systems • 1.4 Testing and quality • 1.5 How much testing is enough? 2. What is testing • 2.1 Definition of testing 3. Test principles 4. Fundamental test processes • 4.1 Plan and control • 4.2 Analysis and design • 4.3 Implementation and execution Why is testing necessary? necessary • 4.4 Evaluate exit criteria and report • 4.5 Test closure activities 5. Psychology of testing • 5.1 Independence test levels • 5.2 Tips and tricks
Software systems context xt 1. Why is testing necessary • 1.1 Software system context • 1.2 Causes of software defects • 1.3 Role of testing in sw.systems • 1.4 Testing and quality • 1.5 How much testing is enough? • Software systems are an 2. What is testing • 2.1 Definition of testing important part of life: 3. Test principles 4. Fundamental test processes • 4.1 Plan and control • 4.2 Analysis and design • Most people had experience with Web browsers • 4.3 Implementation and execution • 4.4 Evaluate exit criteria and report software not working as expected. • 4.5 Test closure activities 5. Psychology of testing Content Air traffic • 5.1 Independence test levels management control SS • If the SW system doesn’t wok • 5.2 Tips and tricks systems correctly, it can lead to problems like: • Loss of money • Loss of business reputation Telecom Word • Injury or death processors networks
Causes of software defects 1. Why is testing necessary • 1.1 Software system context • 1.2 Causes of software defects • 1.3 Role of testing in sw.systems • 1.4 Testing and quality Human errors • 1.5 How much testing is enough? 2. What is testing • 2.1 Definition of testing Internal Lack of Lack of Lack of 3. Test principles Fatigue training understanding interest 4. Fundamental test processes • 4.1 Plan and control • 4.2 Analysis and design • 4.3 Implementation and execution • 4.4 Evaluate exit criteria and report Many system Changed External Time pressure Complex code • 4.5 Test closure activities interactions technologies 5. Psychology of testing • 5.1 Independence test levels • 5.2 Tips and tricks Non-controllable events (i.e. environmental conditions) Environmental conditions • Radiation • Magnetism • Pollution
Causes of software defects 1. Why is testing necessary • 1.1 Software system context • 1.2 Causes of software defects • 1.3 Role of testing in sw.systems • 1.4 Testing and quality Both causes of errors produce defects ( = faults, bugs) in the • 1.5 How much testing is enough? code. 2. What is testing • 2.1 Definition of testing 3. Test principles 4. Fundamental test processes • Defects, if executed, may result in failures of the SW system (the • 4.1 Plan and control • 4.2 Analysis and design • 4.3 Implementation and execution system will fail to do what it should). • 4.4 Evaluate exit criteria and report • 4.5 Test closure activities 5. Psychology of testing • 5.1 Independence test levels • 5.2 Tips and tricks • Failures can affect seriously the users of the SW system, i.e.: • Break pedal not working • Miscalculations in financial SW systems
Four typical scenarios 1. Why is testing necessary 1.1 Software system context 1.2 Causes of software defects 1.3 Role of testing in sw.systems 1.4 Testing and quality 1.5 How much testing is enough? 2. What is testing 2.1 Definition of testing 3. Test principles 4. Fundamental test processes 4.1 Plan and control 4.2 Analysis and design 4.3 Implementation and execution 4.4 Evaluate exit criteria and report 4.5 Test closure activities 5. Psychology of testing 5.1 Independence test levels 5.2 Tips and tricks
Cost to repair 1. Why is testing necessary • 1.1 Software system context • 1.2 Causes of software defects • 1.3 Role of testing in sw.systems • 1.4 Testing and quality • 1.5 How much testing is enough? 2. What is testing • 2.1 Definition of testing 3. Test principles 4. Fundamental test processes • 4.1 Plan and control • 4.2 Analysis and design • 4.3 Implementation and execution • 4.4 Evaluate exit criteria and report • 4.5 Test closure activities 5. Psychology of testing • 5.1 Independence test levels • 5.2 Tips and tricks
Role of testing 1. Why is testing necessary • 1.1 Software system context • 1.2 Causes of software defects • 1.3 Role of testing in sw.systems • 1.4 Testing and quality • Testing has an important role in all stages of a SW • 1.5 How much testing is enough? 2. What is testing product’s life cycle: • 2.1 Definition of testing 3. Test principles 4. Fundamental test processes • 4.1 Plan and control • 4.2 Analysis and design • Planning • 4.3 Implementation and execution • 4.4 Evaluate exit criteria and report • 4.5 Test closure activities • Development 5. Psychology of testing • 5.1 Independence test levels • 5.2 Tips and tricks • Maintenance • Operations
Role of testing 1. Why is testing necessary • 1.1 Software system context • 1.2 Causes of software defects • 1.3 Role of testing in sw.systems • 1.4 Testing and quality • 1.5 How much testing is enough? 2. What is testing • 2.1 Definition of testing • To reduce the risk of problems occurring during 3. Test principles operation 4. Fundamental test processes • 4.1 Plan and control • 4.2 Analysis and design • 4.3 Implementation and execution • 4.4 Evaluate exit criteria and report • 4.5 Test closure activities • To check if the SW system meets: 5. Psychology of testing • 5.1 Independence test levels • 5.2 Tips and tricks • legal requirements • Industry specific standards To learn more about the SW system
Testing … 1. Why is testing necessary • 1.1 Software system context • 1.2 Causes of software defects • 1.3 Role of testing in sw.systems • 1.4 Testing and quality • 1.5 How much testing is enough? …measures the 2. What is testing • Functional aspects • 2.1 Definition of testing quali lity th the SW in in • Non-functional aspects (Reliability, 3. Test principles terms of of defects Usability, Portability) 4. Fundamental test processes fou ound • 4.1 Plan and control • 4.2 Analysis and design • 4.3 Implementation and execution • 4.4 Evaluate exit criteria and report • 4.5 Test closure activities 5. Psychology of testing …creates • 5.1 Independence test levels • If it’s properly tested and a minimum • 5.2 Tips and tricks con onfidence in in th the of defects are found quali lity of of th the SW • By understanding the root causes of ... ...teaches us s defects, processes can be improved. le less ssons to o ap apply in in This can prevent defects from fu future projects reoccurring.
How much testing is is enough? 1. Why is testing necessary • 1.1 Software system context • 1.2 Causes of software defects • 1.3 Role of testing in sw.systems • 1.4 Testing and quality • 1.5 How much testing is enough? Level of risk : 2. What is testing • 2.1 Definition of testing • Technical risks 3. Test principles It depends • Business risks on: 4. Fundamental test processes • 4.1 Plan and control • 4.2 Analysis and design • 4.3 Implementation and execution Project constraints: • 4.4 Evaluate exit criteria and report • 4.5 Test closure activities • Time 5. Psychology of testing • 5.1 Independence test levels • Budget • 5.2 Tips and tricks • It’s impossible to test everything! • Testing should provide sufficient information for the stakeholders to make informed decisions about: • Release of the software • Next development steps, etc.
1. Why is testing necessary • 1.1 Software system context • 1.2 Causes of software defects • 1.3 Role of testing in sw.systems • 1.4 Testing and quality • 1.5 How much testing is enough? 2. What is testing • 2.1 Definition of testing 3. Test principles • 2 is What is testing? 4. Fundamental test processes • 4.1 Plan and control • 4.2 Analysis and design • 4.3 Implementation and execution What is testing?2. What • 4.4 Evaluate exit criteria and report • 4.5 Test closure activities 5. Psychology of testing is testing?hat is testing? • 5.1 Independence test levels • 5.2 Tips and tricks 2. What is testing?2. What is testing?
Test activities 1. Why is testing necessary • 1.1 Software system context • 1.2 Causes of software defects • 1.3 Role of testing in sw.systems • 1.4 Testing and quality • 1.5 How much testing is enough? • Test planning 2. What is testing • 2.1 Definition of testing • Test control 3. Test principles 4. Fundamental test processes • Test analysis • 4.1 Plan and control • 4.2 Analysis and design • 4.3 Implementation and execution • Test design • 4.4 Evaluate exit criteria and report • 4.5 Test closure activities • Test implementation 5. Psychology of testing • 5.1 Independence test levels • 5.2 Tips and tricks • Test executing • Checking results • Evaluating exit criteria • Test result reporting • Test closure
Recommend
More recommend