Test Planning & Regression Testing Flashcards

1
Q

What is Abstraction?

A

ABSTRACTION is the act of representing essential features without including background details or explanations. In software engineering, the abstraction principle is used to reduce complexity, and allow efficient design and implementation of complex software system.
Some areas of software engineering and implementation where the abstraction principle is applied include programming languages (mainly in object-oriented programming languages), specification languages, control abstraction, data abstraction and the architecture of software systems.

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

What Is Decomposition?

A

DECOMPOSITION is breaking a complex problem or system into parts that are easier to conceive, understand, program, and maintain.
Decomposition is mostly used during the project analysis phase in order to produce decomposition diagrams as part of the functional requirements document.
Decompose the first level components with their functions and continue to decompose to lower levels until a sufficient level of detail is achieved.

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

What is Mind Map in Software Testing?

A

Mind-mapping is a method of data structuring with the help of visualization: graphics chart. It usually has tree-like connections with the key element in its center. This method of information management does not require special skills or devices — all you need is a piece of paper and a pencil. The popularity of mind maps in different spheres of our life can be explained by the fact that a large majority of people perceive visual information better than any other form.
In software testing, mind maps are usually used to plan testing activities. In other words, all the elements of the testing stages can be successfully illustrated.

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

Reasons to use Mind-Mapping:

A
  • it is a creative way of structuring the data;
  • attracts and holds the attention of the audience;
  • simple and convenient;
  • collects all the information in one place;
  • easy to change and highlight the necessary details.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

When to Use Mind-Maps

A

In software testing, like in any other sphere of activities, conceptual maps are used to manage different kinds of data and activities:
- to manage test cases (clear traceability is a must);
- to organize activities;
- to trace test coverage;
- to manage reports;
- to assign tasks and control their development.

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

What is Test Plan?

A

The Test Plan document is usually prepared by the Test Lead or Test Manager and the focus of the document is to describe what to test, how to test, when to test, and who will do what test.
- Document that describes software testing scope and activities
- Basis for formally testing any software/product in a project
- It allows you to structure your efforts and see a bigger picture
- Never build a house without a plan

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

Test Scenario

A

A TEST SCENARIO is defined as any functionality that can be tested. It is also called Test Condition or Test Possibility. As a tester, you may put yourself in the end user’s shoes and figure out the real-world scenarios and use cases of the Application Under Test.

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

How to Write Test Scenarios?

A
  • Step 1: Read the requirements document. You could also refer to use cases, books, manuals, etc. of the application to be tested.
  • Step 2: For each requirement, figure out the possible user’s actions and objectives. Determine the technical aspects of the requirement. Ascertain possible scenarios of system abuse and evaluate users with a hacker’s mindset.
  • Step 3: After reading the requirements document and doing your due analysis, list different test scenarios that verify each feature of the software.
  • Step 4: Once you have listed all possible test scenarios, a traceability matrix is created to verify that each & every requirement has a corresponding test scenario.
  • Step 5: The scenarios created are reviewed by your supervisor. Later, they are also reviewed by other stakeholders in the project.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is Regression Testing?

A

Regression testing is defined as a type of software testing to confirm that a recent program or code change has not adversely affected existing features.
Regression testing is nothing but a full or partial selection of already executed test cases which are re-executed to ensure existing functionalities work fine. This testing is done to make sure that new code changes should not have side effects on the existing functionalities. It ensures that the old code still works once the new code changes are done.

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

Need of Regression Testing

A

Regression Testing is required when there is a
- There is a change in requirements and code is modified accordingly.
- New features are added to the software.
- Multiple defects are fixed.
- Performance issue are fixed.
- Release preparation occurs.

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

3 Types of Regression Testing

A
  • Retest All
  • Regression Test Selection
  • Prioritization of the test cases
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Selecting Test Cases for the Regression Testing

A
  • Frequent defects
  • Visible to the users
  • Core features of the product
  • Recently changed
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is Boundary Value Analysis?

A

Testing technique in which the test cases are designed to include values at the boundary.
Positive testing: input data within the boundary limits.
Negative testing: input data is outside the boundary value limit.

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

What is Equivalence Partitioning testing?

A

Testing technique which divides the input data into many partitions.
Values from each partition mist be tested at least once.
Partitions with valid values are used for Positive Testing.
Partitions with invalid values are used for Negative Testing.

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