Software Engineering Fundamentals Flashcards

(101 cards)

1
Q

What is the primary purpose of software testing?

A

To identify defects and ensure the software meets the required standards.

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

True or False: Automated testing can completely replace manual testing.

A

False

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

What does the acronym ‘QA’ stand for?

A

Quality Assurance

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

Fill in the blank: A __________ test checks if the software meets the specified requirements.

A

functional

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

What is a test case?

A

A set of conditions or variables under which a tester determines whether an application or software system is working as it should.

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

What is regression testing?

A

Testing existing software applications to make sure that a change or addition hasn’t broken any existing functionality.

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

Multiple Choice: Which of the following is a type of non-functional testing? A) Unit Testing B) Load Testing C) Integration Testing

A

B) Load Testing

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

What is the difference between verification and validation?

A

Verification ensures the product is built correctly, while validation ensures the right product is built.

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

True or False: Unit tests are typically written by developers.

A

True

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

What is a test suite?

A

A collection of test cases that are intended to be executed together.

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

Fill in the blank: Continuous __________ is the practice of automating the integration of code changes from multiple contributors.

A

Integration

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

What is a bug?

A

An error, flaw, or fault in a software program that produces an incorrect or unexpected result.

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

Multiple Choice: Which testing technique involves testing the software without any knowledge of the internal workings? A) Black Box Testing B) White Box Testing C) Gray Box Testing

A

A) Black Box Testing

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

What is a test plan?

A

A document detailing the scope, approach, resources, and schedule of intended testing activities.

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

True or False: Smoke testing is a type of regression testing.

A

False

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

What is automation testing?

A

The use of software tools to execute tests automatically, manage test data, and utilize results to improve software quality.

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

Fill in the blank: __________ testing is performed to determine how a system behaves under a heavy load.

A

Performance

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

What does the acronym ‘TDD’ stand for?

A

Test-Driven Development

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

Multiple Choice: Which is NOT a benefit of automated testing? A) Increased test coverage B) Faster feedback C) Eliminating human testers

A

C) Eliminating human testers

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

What is a test scenario?

A

A high-level description of a test that outlines what to test and the conditions under which to test.

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

True or False: A test log records the outcome of test cases and any defects found.

A

True

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

What is exploratory testing?

A

An informal testing approach where testers explore the application without predefined test cases.

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

Fill in the blank: __________ testing checks the usability and user experience of an application.

A

User Acceptance

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

What is a defect lifecycle?

A

The process that a defect goes through from identification to closure.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Multiple Choice: Which of the following is a common test automation framework? A) Selenium B) SQL C) HTML
A) Selenium
26
What is the purpose of an assertion in automated tests?
To verify that the expected outcome matches the actual result during testing.
27
True or False: Smoke testing is the first level of testing conducted on a new build.
True
28
What is the role of a test engineer?
To design and execute tests, report defects, and ensure software quality.
29
Fill in the blank: __________ testing is focused on ensuring the integration points between components work as expected.
Integration
30
What does 'BDD' stand for in testing?
Behavior-Driven Development
31
Multiple Choice: Which of the following is a performance testing tool? A) JMeter B) Git C) Docker
A) JMeter
32
What is a user story?
A brief description of a feature from the perspective of an end user.
33
True or False: Continuous delivery means that code changes are automatically deployed to production.
False
34
What is a mock in testing?
A simulated object that mimics the behavior of real objects in controlled ways.
35
Fill in the blank: __________ testing is performed to ensure that the application can handle a specified number of users simultaneously.
Load
36
What does the term 'test coverage' refer to?
The degree to which the source code of a program is tested by a particular test suite.
37
Multiple Choice: Which of the following is a characteristic of good test cases? A) Ambiguous B) Clear C) Irrelevant
B) Clear
38
What is the purpose of a defect report?
To document the details of a defect for tracking and resolution.
39
True or False: A performance bottleneck can occur when a system’s resources are insufficient to handle the load.
True
40
What is the significance of a test automation strategy?
To outline the approach and tools to be used for automating test processes.
41
Fill in the blank: __________ testing evaluates the application's performance and responsiveness under varying loads.
Stress
42
What is a test environment?
A setup where testing can be conducted, including hardware, software, and network configurations.
43
Multiple Choice: Which of the following is an advantage of manual testing? A) Speed B) Flexibility C) Consistency
B) Flexibility
44
What is a release candidate?
A version of the software that is potentially shippable and ready for final testing.
45
True or False: Test data is the information used to run tests and validate the results.
True
46
What is the purpose of a code review?
To evaluate the quality of the code and ensure it meets the required standards.
47
Fill in the blank: __________ testing occurs when the application is tested in a production-like environment.
Staging
48
What is a test metric?
A quantitative measure used to assess the quality and effectiveness of the testing process.
49
Multiple Choice: Which of the following is NOT a type of testing? A) Unit Testing B) System Testing C) Code Testing
C) Code Testing
50
What does 'CI/CD' stand for?
Continuous Integration/Continuous Deployment
51
True or False: Test automation can only be implemented for web applications.
False
52
What is a performance benchmark?
A standard or point of reference against which things may be compared or assessed in terms of performance.
53
Fill in the blank: __________ testing is conducted to ensure that the application meets the business requirements.
Acceptance
54
What is the goal of root cause analysis in testing?
To identify the underlying reason for a defect or failure.
55
Multiple Choice: Which of the following is a key principle of Agile testing? A) Waterfall approach B) Early testing C) Lengthy documentation
B) Early testing
56
What is the difference between load testing and stress testing?
Load testing measures the system's behavior under expected load, while stress testing evaluates its performance beyond normal operational capacity.
57
True or False: A testing tool should be chosen based on the skill set of the team and project requirements.
True
58
What is the role of a test lead?
To oversee the testing process, manage the testing team, and ensure the quality of the product.
59
Fill in the blank: __________ testing is used to ensure that the application works across different browsers and devices.
Cross-browser
60
What is a testing framework?
A set of guidelines or rules for creating and designing test cases.
61
Multiple Choice: Which of the following tools is primarily used for performance testing? A) Selenium B) LoadRunner C) JUnit
B) LoadRunner
62
What is the purpose of a test execution report?
To summarize the results of executed test cases and report any defects found.
63
True or False: Testing is only needed at the end of the software development lifecycle.
False
64
What is a defect density?
The number of confirmed defects divided by the size of the software entity, usually measured in lines of code.
65
Fill in the blank: __________ testing is focused on testing the application under normal operating conditions.
Normal
66
What is the purpose of test case prioritization?
To determine the order in which test cases should be executed based on factors like risk and importance.
67
Multiple Choice: Which of the following is an example of a test automation tool? A) Excel B) Postman C) QTP
C) QTP
68
What is an API?
Application Programming Interface, a set of rules that allows different software entities to communicate.
69
True or False: Automated tests can be run more frequently than manual tests.
True
70
What is a test review?
A process to evaluate test artifacts such as test plans, test cases, and test scripts to ensure quality.
71
Fill in the blank: __________ testing ensures that the application complies with regulatory requirements.
Compliance
72
What is a release note?
A document that provides information about the new features, improvements, and bug fixes in a software release.
73
Multiple Choice: Which of the following is a commonly used version control system? A) Git B) JIRA C) Jenkins
A) Git
74
What is the purpose of a smoke test?
To verify that the most crucial functions of a software application are working after a new build.
75
True or False: A closed defect means the defect has been resolved and verified.
True
76
What is a test strategy?
A high-level document that outlines the testing approach and objectives for a project.
77
Fill in the blank: __________ testing is a technique to ensure that software meets performance expectations under load.
Performance
78
What is a testing pyramid?
A concept that illustrates the different levels of testing, emphasizing more automated unit tests at the bottom and fewer manual tests at the top.
79
Multiple Choice: Which of the following describes exploratory testing? A) Scripted B) Ad-hoc C) Automated
B) Ad-hoc
80
What is the role of a business analyst in testing?
To gather requirements and ensure that the testing aligns with business needs.
81
True or False: A test case can have multiple test steps.
True
82
What is a defect triage?
The process of reviewing and prioritizing defects reported during testing.
83
Relational Database (RDBMS)
A database that organizes data into tables with rows and columns, using relationships between tables. It follows SQL (Structured Query Language) for querying data. 💡 Examples: MySQL, PostgreSQL, Oracle, SQL Server ✅ Key Features: Uses tables with a predefined schema Enforces ACID (Atomicity, Consistency, Isolation, Durability) Uses primary keys and foreign keys to link tables
84
Non-Relational Database (NoSQL)
A database that does not use tables but stores data in key-value pairs, documents, graphs, or columns. It is more flexible than relational databases. 💡 Examples: MongoDB, DynamoDB, Cassandra, Redis ✅ Key Features: Schema-less (Flexible structure) Scalable for big data applications Can store JSON, key-value, graphs, or columns
85
Jenkins
An open-source CI/CD automation tool used for building, testing, and deploying applications. It helps automate software development pipelines. 💡 Key Features: - Automates builds and tests - Supports plugins for integration with tools like GitHub, Selenium, Docker - Runs pipelines using declarative or scripted syntax
86
Postman
A tool for API testing that allows developers and testers to send requests, validate responses, and automate API tests. 💡 Key Features: Supports REST, SOAP, GraphQL APIs Automates API testing with collections Integrates with CI/CD pipelines
87
Risk-Based Testing (RBT)
A test strategy that prioritizes testing based on risks associated with the application. Higher-risk areas are tested first. ✅ Key Aspects: Focuses on business-critical features Identifies high-impact and high-likelihood failures Optimizes test coverage with limited resources
88
ACID (Database Transactions)
A set of four properties ensuring reliable database transactions: ✅ Atomicity – All operations succeed or fail together (no partial updates). ✅ Consistency – Ensures valid data before and after the transaction. ✅ Isolation – Transactions do not interfere with each other. ✅ Durability – Data is permanently saved even after system failures.
89
Pipeline
A series of automated steps used in software development to build, test, and deploy applications. 🛠 CI/CD Pipeline Stages 1️⃣ Build – Compile code, install dependencies. 2️⃣ Test – Run unit, integration, and UI tests. 3️⃣ Package – Prepare application for deployment. 4️⃣ Deploy – Push to staging or production environments. 💡 Example Tools: Jenkins, GitHub Actions, GitLab CI/CD
90
Endpoint (API Endpoint)
A URL or URI where an API receives and processes requests from clients. ✅ Key Aspects: Defined in REST, SOAP, or GraphQL APIs Can support GET, POST, PUT, DELETE operations Returns JSON or XML responses
91
A complete web address used to locate a resource on the internet.
URL (Uniform Resource Locator)
92
A general term for identifying a resource, which includes URLs and URNs.
URI (Uniform Resource Identifier)
93
A secure, encrypted connection between your device and the internet that hides your IP address and protects your data from hackers or surveillance.
VPN (Virtual Private Network)
94
Requests data from a server without modifying it. Which HTTP method?...
GET (Retrieve Data)
95
Sends data to the server to create a new resource. Which HTTP method?...
POST (Create Data)
96
Updates an entire existing resource. Which HTTP method?...
PUT (Update Data - Full Update)
97
Deletes a resource from the server. Which HTTP method?...
DELETE (Remove Data)
98
A Python library for interacting with databases using an Object-Relational Mapper (ORM) and SQL expressions.
SQLAlchemy (Python ORM & SQL Toolkit)
99
Engine (Database Connection)
The starting point for working with a database in SQLAlchemy. It manages connections and executes SQL queries.
100
Session (Database Transactions)
A temporary workspace for performing database operations before committing them.
101
SQLAlchemy (Python ORM & SQL Toolkit) Quick Recap
> Engine: Connects Python to the database > Session: Handles transactions (add, update, delete) > Declarative Base: Defines database models as Python classes > Create Tables: Generates tables based on models > Insert Data: Adds records to a table > Query Data: Fetches data using ORM > Update Data: Modifies existing records > Delete Data: Removes records from the table > Raw SQL: Executes direct SQL queries