Testing Through The SDLC Flashcards

1
Q

What is the purpose f an SDLC model? List three examples SDLC models types.

A

An SDLC model describes the types of activities performed at each stage in the software development project

① Sequential Development Models describes the SD process as a linear, sequential flow of activities ex: Waterfall model; V model

② Incremental development models ex: testing a system in pieces, allowing the software features to grow incrementally

③ Iterative development models where groups of features are created and tested together ex: Rational Unified Process, Scrum, Kanban, Spiral

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What are test levels and what are some attributes that can characterize them?

A

A Test level is a group of test activities that is organized and managed together. Each test level is an instance of the test process. Test levels can be categorized by the following attributes:
① Specific Objectives
② Test Basis
③ Reference to derive test cases
④ Test objects-what is being tested
⑤ Typical defects & failures
⑥ specific approaches & Responsibilities

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

The 4 ISTQB recognized test levels are:

A

① Component Testing Level- Focuses on components that are separately testable

② Integration Testing Level- Focuses on interactions between components or systems.

③ System Testing Level- focuses on the behavior and capabilities of a whole system or product, often considering the end-to-end functionality of the software.

④ Acceptance Testing Level- Like system testing, this focuses on the behavior and capabilities of a whole system or product. This happens after system testing and it can be used to test whether the software meets user requirements.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is the component testing level and what are its objectives?

A

Component Testing- Focuses on components that are separately testable. Objectives of component testing include:
• Reducing risk
• Verifying component behavior
• Building Confidence
• Finding defects
• Preventing defect escape

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is the integration testing level? What are its objectives? And what are the two sub-levels of integration testing?

A

Integration Testing- Focuses on interactions between components or systems.
Objectives include:
• Reducing risk
• Verifying interface behavior
• Building confidence in the quality of the interfaces
• Finding defects & preventing them from escaping to higher levels
• Component testing and integration testing may include automated regression tests that provide confidence that changes have not broken existing interfaces, components or systems.
• ISTQB describes two levels of integration testing:
1. Component Integration testing which focuses on the interactions & interfaces between integrated components
2. Systems Integration testing which focuses on interactions and interface between systems, packages & microservices

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is the system testing level? And what are its objectives?

A

System Testing-focuses on the behavior and capabilities of a whole system or product, often considering the end-to-end functionality of the software.
Objectives include:
- Reducing risk
- Verifying whether the functional and non-functional behaviors of the whole system are designed as specified
- Building confidence in the quality of the whole system
- Finding defects and preventing them from escaping to production
- Helps stakeholders make release decisions
- May satisfy legal or regulatory requirements
- Performed by developers and testers
- consists of both positive and negative test cases
- consists of both functional and non-functional testing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is the acceptance testing level and what are its components?

A

Acceptance Testing- Like system testing, this focuses on the behavior and capabilities of a whole system or product. This happens after system testing and it can be used to test whether the software meets user requirements. It’s objectives are:

  • To establish confidence in the quality of the system
  • Validating the system is complete
  • A common form of this is user acceptance testing
  • Assesses the system’s readiness for use
  • Performed by testers, stakeholders and clients
  • consists of only positive test cases
  • consists of only functional testing
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is a test type?

A

A test type is a group of test activities aimed at testing specific characteristics of a software system based on specific objectives. These may include:
① Evaluating functional quality characteristics such as completion
② Evaluating non-functional characteristics such as performance
③ Evaluating structural/Architectural correctness
④ Evaluating changes (intended orotherwise)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

The 4 ISTQB test types are:

A

① Functional Testing-tests that evaluate the functions a system should perform

② Non-Functional Testing-tests that evaluate the non-functional characteristics of the software ie. usability, performance and security.

③ White Box Testing - derives tests based on the system’s internal structure or implementation.

④ Change Related Testing - Performed when changes are made to the system- either to correct a defect or because of a changing functionality

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is the functional test type and what are its objectives?

A

Functional Testing-tests that evaluate the functions a system should perform
• Considers the behavior of the software so that black box techniques may be used
• Tests the functionality of the component or system
• May involve special skills or knowledge of a particular business problem that the software solves

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What s the non-functional test type and what are its objectives?

A

Non-Functional Testing-tests that evaluate the non-functional characteristics of the software ie. usability, performance and security.
• Tests how well the system behaves
• Should be preformed as early as possible and at all test levels
• Late discovery of non-functional issues can be extremely dangerous

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is the white box testing type and what are its objectives?

A

White Box Testing - derives tests based on the system’s internal structure or implementation.
• Internal structure may include code, architecture, work-flows and data flows within the system
• May require special skills or knowledge such as the way the code is built and how data is stored

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is the change-related testing type and its subtypes?

A

Change Related Testing - Performed when changes are made to the system- either to correct a defect or because of a changing functionality
• Tests should confirm that the changes have corrected the defect or implement the new function correctly
• Confirmation testing is testing all previously failed test cases after a defect is fixed
• Regression Testing is testing other areas of the system to ensure stability and test that a change made to one part of the code didn’t unintentionally affect the behavior of other parts
• Confirmation & Regression testing are performed at all test levels

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is maintenance testing and when is it used?

A

When any maintenance charges are made, maintenance testing should be performed to check the success of the changes and to check for possible side effects
- A maintenance release may require maintenance testing at multiple levels, using various test types based on its scope
- The scope of maintenance testing depends on the degree of risk of the change

After they’re deployed to production environments, software and systems need to be maintained including:
① Fixing defects found in software
② Add new functionality
③ Remove existing functionality
④ To preserve or improve non-functional quality characteristics of a system over its lifetime. Ex: performance, security, portability

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What are some reasons for maintenance testing?

A

There are several reasons (both planned and unplanned) why software maintenance & maintenance testing takes place.
We can classify these triggers as:
① Modification-planned enhancements, corrective or emergency changes
② Migrations - moving code from one platform to another
③ Retirement- When an application reaches the end of its life

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is impact analysis and when is it used?

A

Impact analysis can help identify the impact of a change on existing tests
- May be done before a change is made to help decide if it should be made based on potential consequences in other areas of the system
- Several factors make this difficult
• Specs are missing or out of date
• Test cases were not documented or are out of date
• Tool support is weak or non- existent
• Insufficient attention paid to maintenability during development