ISTQB review P1 Flashcards
Test Cases
-test cases describe how the software should work under normal, abnormal, and error operating conditions and are written as a set of instructions for testers
-process flows/descriptions detailing the typical use of the system
Equivalence partitions
are a black box technique that allows testers to group input data into sets or classes so there are less test cases and you still get comprehensive coverage
Experience based test design
a. based off a user’s experience and is best used when you don’t have time for a more structured approach and the requirements aren’t good enough or you don’t have any, and there is limited knowledge on the product
b. 1/3 types - error guessing where the tester focuses on the places prone to error
c. 2/3- checklist based where the person goes through a list of main functions that should be expected
d. 3/3 exploratory testing- where you just play around with the app and use basic life experience to see if you can comfortably use it
Test planning vs test execution
test planning ensures testing is efficient and effective and test execution ensures the testing is thorough and that the product can be released
User acceptance testing
a. is also called
i. beta testing where the
b. product is tested in real life by its intended audience or business reps
Reliability of a product vs the quality
quality testing is if the product works at all, and how well it works, reliability and durability testing is how well the product will hold up, like how long, in what conditions
Integration testing test level
is the 2nd level of testing after unit testing and is when you check how components or units of the software work together the way they should. Unit testing checks small pieces of code
Test basis
the source of information or the document needed to write test cases and for test analysis
Test leader vs tester
Test leader would:
create the test strategy and write the test summary report.
The tester would create the test specification and raise an incident report.
Test strategy vs - test specification
the test strategy comes from the Business Requirement document (BRS) vs the software requirement specification (SRS) for the test plan. It’s a live document that gets updated as more information becomes available. The test strategy document is also called a Static document. It’s more vague than the SRS and is for the stakeholders. Test specification
focuses on scenarios and is a detailed summary of what scenarios will be tested, how they will be tested, how often they will be test etc for each feature.
Decision table testing
design test cases based on the combos of inputs and outputs for a system or component. Black box technique
Statement testing
ensures each line of code for that function Is executed at least once, covering each path from the source code. White box technique
State transition testing
analyzes how the application behaves based on different input conditions.
It’s good when there are not that many input value options
the system depends on previous values.
Black box technique
Equivalence testing
Using equivalence partitions
Component testing
tests individual components separately from other components. It can be done white box or black box
Fault attacks
causing an error on purpose to see what happens
Black box techniques and why it’s useful
black box techniques check beyond functionality and gives more insight on how a function is completed, and if it’s usable, and easy to understand
Project life cycle models
Sequential, iterative-incremental approach, waterfall, agile
Sequential project life cycle model
means the following phase starts only when the previous phase is complete
The sequential methodology first discovers all steps in the analysis plane, followed by all steps in the design plane, followed by all steps in the implementation plane, and then followed by all steps in the testing plane. This can be accomplished because the environment is static and finite.
Iterative-incremental approach
iterative approach is when the project is broken into fully working parts, incremental is when they work on everything enough to release it, but not till it’s perfect so you end up not building the whole thing at once
These parts, or iterations, are fully developed and tested in cycles, allowing for modifications after each completion
Waterfall
is the most structured with time tables. It’s the most traditional and linear.
Follows a sequential and linear process. It consists of distinct phases: planning, requirements gathering, system design, implementation, testing, and deployment.
Agile
i. is also known as the
1) adaptive life cycle
ii. and combines iterative and incremental
I think the agile part is the part where things are repeated till they are fixed, the iterative part
Master test plan
document that describes how the testing will be handled and gives a birds eye view of how the testing will be handled across different levels
Test objects
the product, system, module, functionality, or even line of code that is being specifically tested.
Decision table testing
software testing method where you test the system based on input combos
Configuration management
when you identify the parts that make up the software or system and then making sure each part is managed well during the product life cycle
How changes are handled systematically so a system keeps its integrity relating to performance, function, physical attributes, and requirements
Traceability
the ability to trace tests forward and backward in the development life cycle. You are able to link a test to a set of requirements in the test case confirming that it works
Test artifacts
Test artifacts(test deliverables) are documents and scripts created during software testing to ensure that the tested application meets the desired quality standards. These artifacts provide evidence of the testing process and valuable insights into the overall testing efforts
Test analysis
Test analysis inspects and analyzes the test artifacts to create test conditions or cases. Test analysis aims to collect requirements and create test objectives to establish test conditions. As a result, it’s also known as Test Basis
See example of test basis
System Requirement Document (SRS)
Functional Design Specification.
Technical Design Specification.
User Manual.
Use Cases.
Source Code.
Business Requirement Document (BRD)
If user acceptance testing is beta testing, is there something called alpha testing?
Alpha testing is done by internal developer and QA teams, with its main goal being to ensure that the software is functional, reliable, and free of any defects or errors. Alpha testing generally attempts to simulate real user behavior by using black and white box testing techniques
Types of white box testing
- Statement testing
2. Branch coverage
i. This checks every possible path
3. Decision
4. Condition coverage
5. Multiple condition coverage
6. Finite state machine coverage
7. Path coverage
8. Control flow testing
9. Data flow testing
10. Penetration testing
i. Used to expose security threats
11. Mutation testing
Used to find the best coding techniques for a software solution
Positive and Negative input test values
Positive testing determines that your application works as expected. If an error is encountered during positive testing, the test fails. Negative testing ensures that your application can gracefully handle invalid input or unexpected user behavior
What is test control
Test Control occurs based on the results of Test Monitoring. It refers to taking corrective action based on test monitoring reports to improve quality and efficiency. Some examples of test control activities would be: Prioritize testing efforts in a different way. Reorganize test schedules and deadlines
Decision table testing: unit component or integration level
Component
Statement testing: unit component or integration level
Component
State transition coverage: unit component or integration level
Component
Equivalence partitioning: unit component or integrative
Component