Types of Testing Flashcards

1
Q

What is functional testing?

A

making sure the software does what it’s supposed to do as described by the requirements

(manual and automated)

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

What is non-functional testing?

A

how well (or poorly) the software does what it’s supposed to do

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

Give four examples of non-functional testing.

A
  • performance
    how fast does the software load and respond to user actions?
  • usability
    is the software easy to learn and intuitive?
  • reliability
    does it work consistently without crashing or freezing?
  • security
    does it block unauthorized access or data breaches?
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What’s a real world example of performance testing?

A

simulating a large number of users trying to access a website simultaneously

  • how long does it take for the product pages to load?
  • how responsive are the elements?
  • can the website handle increased traffic without crashing?
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What’s a real world example of usability testing?

A

observing real users navigating the app’s features

  • can users find how to do certain actions easily?
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What’s a real world example of reliability testing?

A

think of an ATM machine

The test might involve simulating various scenarios like repeated cash withdrawals, power outages, or network disruptions. The test would assess if the ATM continues to function properly despite these challenges, ensuring users can reliably access their money.

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

What’s a real world example of security testing?

A
  • scanning the app’s code for known vulnerabilities using automated tools
  • actively exploiting the vulnerabilities of the app’s functionality thru fuzz testing, where the app is bombarded with invalid data to see how it reacts
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is smoke testing?

A

a preliminary test performed on a new software build to identify major bugs or critical issues early on

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

What is (a) goal of smoke testing?

A

to see if the software is stable enough to warrant further, more in-depth testing

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

What is smoke testing actually testing?

A

if the core functionalities pass or fail. do they work and the software is stable enough to proceed?

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

What is component testing? Give an example.

A

testing individual software components before they are integrated into the whole application

ex: testing a product search functionality on a website

with component testing, you’re able to identify issues early on that are specifically related to that component

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

What is integration testing? Give an example.

A

testing how different software components work together after they’ve been individually tested

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

What does integration testing focus on?

A

on the interfaces (connection points) between components and how they exchange data or interact with each other

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

What are the three levels of integration testing?

A
  • unit-to-unit
  • component-to-component
  • system integration
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Give an example of unit-to-unit integration testing.

A

Imagine you’re working on a fitness tracker app. At this level, you’d be testing how individual units of code interact. An example:

Unit: A function that calculates the distance walked based on the number of steps taken.
Test: You design a test case that feeds the step count value (one unit) to the distance function and verifies it returns the correct distance value based on the app’s stride length calculation (another unit). This ensures these two small code segments communicate and work together as expected.

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

Give an example of component-to-component integration testing.

A

This level focuses on how larger components interact

Component 1: The step counter functionality (including the function from the unit test example) that tracks steps throughout the day.

Component 2: The data storage component that saves the user’s step count data to the app’s internal storage or cloud database.

Test: You create a test scenario where the step counter component tracks 1000 steps. The test verifies if the data storage component correctly receives and stores this step count data for later retrieval and analysis. This ensures these two larger app components can exchange data and work together seamlessly.

17
Q

Give an example of system integration testing.

A

This level tests how all the major subsystems of the application integrate into a single system. Here’s an example:

Subsystems: The login system, activity tracking (including the step counter component), data storage, and user interface (UI) that displays the tracked data.

Test: You design a test where a user logs in to the app, walks for a specific time, and then checks the UI. The test verifies if the login system authenticates the user, the activity tracking component captures the steps, the data storage component saves it, and the UI accurately displays the total steps walked. This ensures all the app’s functionalities work together to deliver a cohesive user experience.

18
Q

What type of testing focuses on how well individual software components work together after they’ve been integrated?

A

system integration testing

19
Q

What type of testing tests the entire software application as a single unit?

A

system testing

20
Q

Describe system testing.

A

It verifies if the system meets the overall functional and non-functional requirements defined for the project. Imagine testing a fully assembled car to see if it drives according to specifications.

21
Q

What is the difference between scripted testing and exploratory testing?

A

scripted testing - planning tests beforehand according to documentation

exploratory - product analyzed & checked at the same time, test docs written during testing itself

22
Q

When would you use scripted testing?

A
  • you have detailed product requirements
  • there’s enough time to prepare test docs beforehand
23
Q

When would you use exploratory testing?

A
  • product requirements have a lot of gray areas
  • there’s not enough time for test docs
24
Q

Explain how black-box testing works.

A

Testing the functionality of an app without looking at the code and maybe without even knowing its internal workings

you focus on what goes in (input) and what comes out (output)

25
Q

What three techniques does black-box testing utilize?

A
  • equivalence partitioning
    dividing the possible inputs into groups (partitions) where the software is expected to behave similarly
  • boundary value analysis
    focusing on the edges (boundaries) of valid and invalid inputs
26
Q

Explain how white-box testing works.

A

designing test cases that target specific parts of the code with an aim to thoroughly examine different code paths, logic branches, and edge cases

27
Q

Explain how gray-box testing works.

A

the tester designs test cases that target both the application’s functionality and its internal components

some knowledge of the software’s internal design or architecture is present, which might come from access to documentation, design specs, or high-level code overviews

28
Q

What is tour testing?

A

a structured approached to exploratory testing that organizes product exploration around a specific theme

(scenario tours, structure tours, feature tours, etc.)

29
Q
A