Chapter 2 Flashcards
Examples of SLDC models
Sequential (waterfall/ v model)
Iterative
Incremental
Impact the choice SLDC has on testing?
Testing must be adapted to the SLDC to succeed
-scope + timing of test activities
-level of detail in test doc
-choice of test techniques and test approach
-extent of test automation
- role and responsibilities of a tester
Where is testing performed in sequential models?
Executable code is usually created in the later phases - so dynamic testing can’t be performed early in the SLDC
Where is testing performed in iterative and incremental models?
-each iteration delivers a product
-so in each iteration both static and dynamic can be performed at all levels
-frequent delivery of increments requires fast feedback + regression testing
Agile software dev assumes that change may occur throughout the project, therefore…
- light work product documentation + extensive test automation is favoured
-this is to make regression testing Easier
What are the 4 good testing principles ?
- For every software dev Activity, there is a corresponding test activity- QC
- Diff test levels have different test objectives. Allows testing to be efficient and covers all aspects
- Analysing and design for tests start early on so issues can be identified early.
4.testers are involved with reviewing work products as soon as drafts of this doc are available - supports shift left strategy
Similarity between TDD, ATDD and BDD?
Similar development approaches
All implement early testing and follow shift left approach
Tests are defined before code is written
Support iterative dev model
TDD?
Test driven development
-emphasis on writing tests before code
-once tests are in place, developers wrote minimum amount of code to make tests pass
- improve code to maintain and make readable
ATDD?
Acceptance test driven Development
Derives tests from acceptance criteria
Tests written before the part of the application is developed to satisfy the tests
BDD?
Behaviour driven development
Test cases written in form of natural language - given, when, then format
Test cases automatically translated into executable tests
What is devops?
- creates synergy between developments and operations
- promotes autonomy
- fast feedback
-continuous integration
-promotes shift left
-reducers need for manual testing
So what is shift left approach ?
Testing done earlier in SLDC- not waiting for code or components to be integrated.
You can do this by: writing test cases before code is written
Completing static analysis of source code prior to dynamic testing
Performing non functional testing at the component level
Cons of shift left?
Extra training
Money and effort earlier in process
Stakeholders should be convinced and bought into this concept
What is retrospectives and why is it important?
Held at the end of project.
Www
What was not successful and could be improved
How to incorporate improvements
This increases quality of testware, team bonding, test basis, more cooperation between dev team and testing
Test levels?
Groups of test activities
- Component testing
- Component integration testing
- System testing
System Integration testing - Acceptance testing