Technical Questions 1 Flashcards

Technical Questions around being a Senior SDET

1
Q

Explain the concept of Continuous Integration/Continuous Deployment (CI/CD)

A

CI/CD refers to the practice of continuously integrating code changes into a shared repository (CI) and automatically deploying them to production or staging environments (CD), ensuring fast, reliable delivery of software.

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

What is Test-Driven Development (TDD)?

A

TDD is a development process where you write tests before writing the actual code. It follows the “Red-Green-Refactor” cycle: write a failing test, write the code to pass the test, and then refactor.

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

Explain the difference between black-box and white-box testing.

A

Black-box testing focuses on testing the functionality of the application without knowing its internal structure. White-box testing, on the other hand, tests the internal logic and structure of the code.

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

What is Selenium?

A

Selenium is a popular open-source framework for automating web browsers. It supports multiple programming languages such as Java, Python, and C#, and works with multiple browsers.

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

What is Page Object Model (POM) in Selenium?

A

POM is a design pattern in Selenium that helps in creating object-oriented classes for web UI elements. It improves the maintainability and reusability of test code.

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

What are the different types of testing levels? (6)

A

Unit Testing, Integration Testing, System Testing, Acceptance Testing, Regression Testing, and End-to-End Testing.

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

Explain the concept of data-driven testing.

A

Data-driven testing is a methodology where test scripts are executed using multiple sets of input data, often stored in external files like CSV, Excel, or databases.

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

What is API testing?

A

API testing is a type of testing where the API is tested for functionality, reliability, performance, and security.

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

What is Load Testing?

A

Load testing involves simulating a high number of users or system load to test how the system behaves under heavy traffic conditions.

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

What is the difference between stress testing and load testing?

A

Load testing measures how the system performs under expected load, while stress testing tests how the system behaves under extreme conditions or beyond its capacity.

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

What is a Mock in Unit Testing?

A

A mock is an object that simulates the behaviour of real objects in a controlled way, used to isolate a unit of code and test it independently.

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

Explain the difference between SOAP and REST APIs.

A

SOAP is a protocol with strict standards, while REST is an architectural style that uses HTTP requests. REST APIs are more flexible and lightweight compared to SOAP.

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

What are the main types of HTTP methods?

A

GET, POST, PUT, DELETE, PATCH, OPTIONS, and HEAD.

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

What is XPath and how is it used in Selenium?

A

XPath is a query language for selecting nodes in an XML document. In Selenium, it is used to locate web elements based on their attributes.

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

How do you handle synchronization issues in Selenium?

A

By using explicit waits (WebDriverWait), implicit waits, or fluent waits to ensure that elements are present or visible before interacting with them.

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

What is the purpose of the PageFactory in Selenium?

A

PageFactory is used to initialize the elements in the page object model. It helps in reducing boilerplate code and improves test maintainability.

17
Q

What is the difference between @Before and @BeforeClass in TestNG?

A

@Before is executed before each test method, while @BeforeClass is executed only once before the first test method in the class.

18
Q

What is the difference between a Stub and a Mock in Unit Testing?

A

A stub is a method or object that provides predefined responses to calls, while a mock is used to verify interactions (such as checking if a method was called).

18
Q

What is Continuous Testing?

A

Continuous Testing refers to the process of automating tests to run continuously during the development lifecycle, providing quick feedback on code quality.

19
Q

Explain the difference between a Test Case and a Test Plan.

A

A test case is a set of conditions to test a specific feature, while a test plan is a document that outlines the scope, approach, resources, and schedule for testing activities.

20
Q

How do you handle version control in test automation?

A

By using version control systems like Git, you can keep track of changes in automation scripts, collaborate with team members, and ensure consistency in the testing process.

21
Q

What are the different types of test automation frameworks?

A

Linear Scripting, Modular Testing Framework, Data-Driven Framework, Keyword-Driven Framework, Hybrid Framework, and Behavior-Driven Development (BDD).

22
Q

Explain the concept of Test Coverage.

A

Test coverage measures the percentage of code, features, or functionality tested by automated or manual tests.

23
Q

What is the role of a senior SDET in an agile environment?

A

The senior SDET collaborates with the development team to ensure testing is integrated into the CI/CD pipeline, writes and maintains automated tests, and provides feedback on code quality.

24
Q

What is Behavior-Driven Development (BDD)?

A

BDD is a methodology where tests are written in a natural language format (Gherkin), focusing on the behavior of the application from the user’s perspective.