Showing posts with label Testing. Show all posts
Showing posts with label Testing. Show all posts

12 January 2026

#JUnit

#JUnit

Key Concepts


S.No Topic Sub-Topics
1 Introduction to JUnit What is JUnit?, Importance of Unit Testing, History of JUnit, Versions overview, Use cases
2 JUnit Architecture Core classes, Test runners, Test lifecycle, Annotations overview, Test suites
3 JUnit 4 vs JUnit 5 Key differences, Annotations, Assertions, Extension model, Migration strategies
4 JUnit Annotations @Test, @Before, @After, @BeforeClass, @AfterClass
5 JUnit 5 Annotations @Test, @BeforeEach, @AfterEach, @BeforeAll, @AfterAll
6 Assertions in JUnit assertEquals, assertTrue, assertFalse, assertNotNull, assertThrows
7 Parameterized Tests Introduction, @ParameterizedTest, @ValueSource, @CsvSource, Custom parameter providers
8 JUnit Test Suites Purpose, Creating test suites, Including multiple classes, @Suite annotation, Running suites
9 Exception Testing assertThrows, Expected exceptions, Handling exceptions in tests, Try-catch in tests, Best practices
10 Timeouts in Tests Using @Test(timeout), assertTimeout, assertTimeoutPreemptively, Long-running tests, Best practices
11 Assumptions in JUnit assumeTrue, assumeFalse, Conditional test execution, Environment-specific tests, Integration with CI
12 Test Lifecycle Methods Setup and teardown, @BeforeEach/@AfterEach, @BeforeAll/@AfterAll, Resource management, Best practices
13 Nested Tests Introduction, @Nested annotation, Structuring tests, Inner classes, Scope and lifecycle
14 Tagging Tests @Tag annotation, Grouping tests, Running specific tags, Excluding tags, Integration with CI/CD
15 JUnit Extensions Introduction, @ExtendWith annotation, Custom extensions, Parameter resolvers, Test lifecycle hooks
16 Mocking with Mockito Mockito basics, @Mock, @InjectMocks, when-thenReturn, Verifying interactions
17 JUnit with Spring Boot @SpringBootTest, @WebMvcTest, @MockBean, Context loading, Integration tests
18 Behavior Driven Testing Introduction to BDD, JUnit + Cucumber, Feature files, Step definitions, Integration examples
19 Testing Exceptions and Edge Cases Edge case identification, Boundary testing, assertThrows, Negative testing, Best practices
20 JUnit Test Reports Generating reports, Maven Surefire plugin, Gradle reports, HTML reports, CI integration
21 Mocking Static Methods Mockito inline, PowerMockito, Limitations, Use cases, Best practices
22 Parameterized and CSV Tests @CsvSource, @CsvFileSource, @MethodSource, Dynamic tests, Practical examples
23 Dynamic Tests @TestFactory, DynamicTest.stream, Custom dynamic tests, Use cases, Best practices
24 Integration Testing with JUnit Introduction, Database tests, REST API testing, Spring integration, Environment setup
25 Code Coverage Jacoco integration, Measuring coverage, Analyzing reports, Coverage thresholds, Best practices
26 Continuous Integration JUnit in CI/CD, Jenkins integration, GitHub Actions, Pipeline setup, Reporting
27 Best Practices in JUnit Writing clean tests, DRY principle, Readable assertions, Test naming conventions, Test isolation
28 Debugging Unit Tests Using IDE debugger, Common failures, Stack traces, Logging in tests, Fixing flaky tests
29 Advanced Assertions assertAll, assertIterableEquals, assertLinesMatch, assertTimeout, Custom assertions
30 JUnit Projects & Labs Hands-on projects, Full coverage examples, Spring Boot testing, CI/CD integration, Practice exercises

Interview question

1. JUnit Basics

  1. What is JUnit and why is it used?
  2. Explain the differences between JUnit 4 and JUnit 5.
  3. What are the advantages of using JUnit in Java projects?
  4. How do you write your first JUnit test case?
  5. What is the naming convention for test methods?
  6. Explain the role of the @Test annotation.
  7. What is the default test runner in JUnit?
  8. How do you disable a test in JUnit?
  9. What are assumptions in JUnit?
  10. Explain JUnit?s role in TDD (Test-Driven Development).
  11. What is the difference between unit tests and integration tests?
  12. How do you set up a JUnit environment in a Maven project?
  13. Can JUnit be used for testing private methods?
  14. What is the default order of test execution in JUnit?
  15. How do you test void methods in JUnit?
  16. How do you skip tests conditionally?
  17. What is the difference between JUnit and TestNG?
  18. Explain the concept of test lifecycle in JUnit.
  19. What is the purpose of @DisplayName in JUnit 5?
  20. How do you tag and filter tests in JUnit?

2. Annotations

  1. Explain the usage of @BeforeEach and @AfterEach.
  2. What is the purpose of @BeforeAll and @AfterAll?
  3. How do you create a setup method in JUnit?
  4. Difference between @BeforeClass (JUnit 4) and @BeforeAll (JUnit 5).
  5. What happens if @BeforeAll is not static?
  6. Can you use multiple annotations on the same method?
  7. How do you use @Disabled in JUnit 5?
  8. What is @RepeatedTest in JUnit 5?
  9. Explain @Nested test classes.
  10. How is @TestFactory used in dynamic tests?
  11. Explain @Tag annotation with examples.
  12. What is the difference between @Test and @ParameterizedTest?
  13. What is @ExtendWith used for?
  14. How do you use @TempDir in JUnit?
  15. What does @Timeout do in JUnit 5?
  16. Can you annotate constructors in JUnit with @BeforeEach?
  17. Explain @EnabledOnOs and @EnabledOnJre annotations.
  18. How do you handle conditional test execution using annotations?
  19. What is @Order used for in JUnit tests?
  20. Can annotations be customized in JUnit?

3. Assertions

  1. What is an assertion in JUnit?
  2. Difference between assertEquals and assertSame.
  3. How do you test for exceptions using assertions?
  4. Explain the usage of assertTrue and assertFalse.
  5. What is assertNull and assertNotNull?
  6. How do you compare arrays in JUnit?
  7. Explain assertAll with example.
  8. What is the difference between fail() and assertThrows()?
  9. How do you write custom assertions?
  10. What is the purpose of Hamcrest in JUnit assertions?
  11. Explain the difference between Hamcrest and AssertJ.
  12. How do you use assertLinesMatch in JUnit?
  13. What is assertIterableEquals used for?
  14. How do you write assertions for collections?
  15. Explain assertTimeout and assertTimeoutPreemptively.
  16. What is the difference between soft and hard assertions?
  17. Can you write assertions for floating-point numbers?
  18. How do you compare objects in JUnit tests?
  19. Explain the usage of assertDoesNotThrow.
  20. What happens when an assertion fails?

4. Parameterized Tests

  1. What is a parameterized test in JUnit?
  2. How do you write a parameterized test using @ValueSource?
  3. Difference between @CsvSource and @CsvFileSource.
  4. How do you test with enum values in JUnit?
  5. How do you write parameterized tests with @MethodSource?
  6. Explain how arguments are resolved in parameterized tests.
  7. How do you test with multiple parameters?
  8. What are custom argument providers?
  9. How do you reuse test data across parameterized tests?
  10. What is the advantage of parameterized tests?
  11. How do you use ArgumentsAccessor?
  12. What is @ArgumentsSource annotation?
  13. How do you test edge cases with parameterized tests?
  14. Explain the difference between parameterized tests in JUnit 4 vs JUnit 5.
  15. Can parameterized tests be combined with @BeforeEach?
  16. What happens when parameterized test data is invalid?
  17. How do you test null inputs in parameterized tests?
  18. What are some best practices for parameterized testing?
  19. How do you test with complex objects?
  20. Can you combine parameterized and dynamic tests?

5. Test Suites

  1. What is a test suite in JUnit?
  2. How do you run multiple test classes together?
  3. Explain @SelectPackages annotation.
  4. Explain @SelectClasses annotation.
  5. How do you include/exclude tests in a suite?
  6. Can test suites be nested?
  7. Difference between JUnit 4 @Suite and JUnit 5 suite engine.
  8. How do you run test suites from Maven?
  9. How do you integrate test suites with Gradle?
  10. What is the benefit of test suites?
  11. Can you use filters with test suites?
  12. How do you configure test discovery?
  13. How do you execute only tagged tests in a suite?
  14. What happens if a suite includes disabled tests?
  15. How do you execute JUnit 4 suites inside JUnit 5?
  16. What is @IncludeClassNamePatterns?
  17. What is @ExcludeTags used for?
  18. Explain discovery selectors in JUnit.
  19. What are suite-level lifecycle methods?
  20. How do you create custom suite runners?

6. Mockito & JUnit

  1. What is Mockito?
  2. How do you create a mock in JUnit?
  3. What is the purpose of @Mock annotation?
  4. How do you use @InjectMocks in tests?
  5. Explain stubbing in Mockito.
  6. What is verify() used for?
  7. How do you reset a mock?
  8. How do you use ArgumentCaptor?
  9. What is the difference between spy() and mock()?
  10. How do you mock exceptions in JUnit tests?
  11. Can you mock static methods with Mockito?
  12. How do you mock final classes?
  13. What is the difference between real and mock objects?
  14. How do you mock collections?
  15. How do you handle void methods in Mockito?
  16. What is the difference between @MockBean and @Mock?
  17. How do you mock private methods?
  18. Explain deep stubs in Mockito.
  19. How do you verify the number of interactions?
  20. What are common pitfalls in using mocks?

7. Spring & JUnit Integration

  1. How do you write a test with @SpringBootTest?
  2. What is @MockBean used for?
  3. Explain the difference between @Mock and @MockBean.
  4. How do you load application context in JUnit?
  5. How do you test Spring MVC controllers?
  6. What is @DataJpaTest used for?
  7. How do you test REST APIs using MockMvc?
  8. Explain @WebMvcTest annotation.
  9. How do you test Spring Boot configuration classes?
  10. How do you handle transactions in Spring tests?
  11. How do you use @TestConfiguration?
  12. What is @AutoConfigureMockMvc?
  13. How do you test caching in Spring?
  14. Explain the use of @Sql annotation in testing.
  15. How do you test services with external dependencies?
  16. What is TestEntityManager used for?
  17. How do you test asynchronous methods in Spring?
  18. Explain how to use TestRestTemplate.
  19. How do you test application events in Spring?
  20. What is the role of @ActiveProfiles in testing?

8. Exception Testing

  1. How do you test exceptions in JUnit 4?
  2. How do you test exceptions in JUnit 5?
  3. Explain the usage of assertThrows.
  4. What is ExpectedException in JUnit 4?
  5. How do you test custom exceptions?
  6. How do you verify exception messages?
  7. How do you test multiple exceptions in a single method?
  8. Can you test checked and unchecked exceptions differently?
  9. How do you test exceptions in parameterized tests?
  10. What is the difference between fail() and assertThrows()?
  11. How do you test runtime exceptions?
  12. How do you test for null pointer exceptions?
  13. How do you combine assertions with exception testing?
  14. How do you log exceptions during tests?
  15. How do you suppress exceptions in JUnit?
  16. How do you create reusable exception assertions?
  17. What happens when no exception is thrown in assertThrows?
  18. Can you test exceptions in dynamic tests?
  19. How do you handle exception hierarchies?
  20. Explain common pitfalls in exception testing.

9. Test Execution & Reports

  1. How do you run JUnit tests from Eclipse/IntelliJ?
  2. How do you run tests using Maven?
  3. How do you run tests using Gradle?
  4. How do you execute tests from the command line?
  5. How do you run a single test class?
  6. How do you run a single test method?
  7. How do you generate XML test reports?
  8. How do you generate HTML test reports?
  9. What is the Surefire plugin in Maven?
  10. How do you configure test execution in Gradle?
  11. How do you run tests in parallel?
  12. How do you configure timeout for all tests?
  13. How do you rerun failed tests?
  14. How do you ignore flaky tests?
  15. How do you integrate JUnit tests with Jenkins?
  16. How do you configure reporting plugins?
  17. How do you publish test reports in CI/CD?
  18. How do you measure code coverage with JUnit?
  19. How do you generate Jacoco reports?
  20. What are best practices in test reporting?

10. JUnit Extensions & Best Practices

  1. What is the extension model in JUnit 5?
  2. How do you write a simple JUnit extension?
  3. What is @ExtendWith used for?
  4. What built-in extensions are available in JUnit 5?
  5. How do you use the TempDir extension?
  6. How do you use the Timeout extension?
  7. What is ExtensionContext in JUnit?
  8. How do you chain multiple extensions?
  9. How do you share state across extensions?
  10. How do you implement a logging extension?
  11. What are some best practices in writing unit tests?
  12. How do you name your test methods effectively?
  13. What is the Arrange-Act-Assert pattern?
  14. How do you avoid flaky tests?
  15. How do you organize test packages?
  16. How do you reuse common test data?
  17. How do you make tests maintainable?
  18. What are some anti-patterns in testing?
  19. How do you improve performance of test suites?
  20. What are enterprise-level strategies for JUnit testing?

Related Topics


13 September 2025

#Mockito

#Mockito

Key Concepts


S.No Topic Sub-Topics
1 Introduction to Mockito What is Mockito?, Features, Benefits, Use cases, Unit testing overview
2 Mockito Architecture Mocking framework, Core concepts, Stubbing, Verification, Interaction testing
3 Setting up Mockito Maven dependency, Gradle dependency, IDE setup, JUnit integration, Project configuration
4 Annotations in Mockito @Mock, @InjectMocks, @Spy, @Captor, @RunWith(MockitoJUnitRunner.class)
5 Creating Mocks mock() method, @Mock annotation, Spy, Difference between mock and spy, Mocking interfaces
6 Stubbing Methods when-thenReturn, thenThrow, thenAnswer, doReturn, doThrow
7 Verifying Interactions verify(), times(), never(), atLeastOnce(), atMost()
8 Argument Matchers any(), eq(), anyString(), anyInt(), custom matchers
9 Spy vs Mock Partial mocking, Real method call, Difference, Use cases, Limitations
10 Capturing Arguments ArgumentCaptor, capture(), verify, getValue(), getAllValues()
11 BDD Style Testing given(), when(), then(), BDDMockito, Benefits, Examples
12 Mocking Void Methods doNothing(), doThrow(), doAnswer(), verify, Handling exceptions
13 Mocking Static Methods Mockito.mockStatic(), try-with-resources, when-then, Use cases, Best practices
14 Mocking Final Classes & Methods Mockito-inline, Limitations, Stubbing final methods, Use cases, Configuration
15 Mocking Private Methods Partial mocking, Spy, Reflection, PowerMockito, Use cases
16 Consecutive Calls Stubbing thenReturn multiple values, thenThrow multiple exceptions, doAnswer, Chaining calls, Examples
17 Timeouts & Verification verify with timeout, async testing, atLeast(), atMost(), Examples
18 Resetting Mocks reset(), Clear invocations, When to reset, Best practices, Examples
19 Mocking Collections List, Map, Set, Iteration, Stubbing methods
20 Mocking Exceptions thenThrow, doThrow, Handling checked exceptions, Handling runtime exceptions, Use cases
21 Verifying Order of Invocations InOrder, verify sequence, Multiple mocks, Examples, Best practices
22 Timeout Verification verify with timeout, Asynchronous calls, Testing delays, Examples, Best practices
23 Integration with JUnit JUnit 4, JUnit 5, Annotations, Running tests, Reporting
24 Integration with TestNG TestNG setup, Annotations, Assertions, Running tests, Reporting
25 Best Practices in Mockito Reusable mocks, Clear naming, Avoid over-mocking, Use annotations, Maintain readability
26 Mockito & Spring Boot @MockBean, @SpyBean, Application context, Integration tests, Unit tests
27 Behavior-Driven Testing given-when-then, BDDMockito, Readable tests, Real-life scenarios, Best practices
28 Advanced Stubbing Techniques doAnswer, doReturn, doThrow, Chained stubbing, Conditional stubbing
29 Hands-on Projects Mocking service layer, Repository mocking, API testing, Integration with JUnit, Reporting
30 Certification & Career Path Mockito certification, Learning resources, Portfolio projects, Advanced testing skills, Career opportunities

Interview question

Basic

  1. What is Mockito?
  2. What are the main features of Mockito?
  3. Explain the difference between mock and spy.
  4. What is the purpose of mocking in unit testing?
  5. What is a stub in Mockito?
  6. How do you create a mock in Mockito?
  7. How do you create a spy in Mockito?
  8. What is the difference between @Mock and @Spy annotations?
  9. What is @InjectMocks used for?
  10. How do you reset a mock?
  11. What is the difference between mock() and Mockito.mock()?
  12. How do you verify interactions with a mock object?
  13. What is the difference between verify() and when()?
  14. Explain the difference between JUnit and Mockito.
  15. How do you handle void methods in Mockito?
  16. What is doNothing()?
  17. What is doThrow()?
  18. How do you use doAnswer()?
  19. How do you capture method arguments?
  20. What is ArgumentCaptor?
  21. How do you mock an interface?
  22. How do you mock a class?
  23. Can Mockito mock final classes or methods?
  24. Can Mockito mock static methods?
  25. How do you handle checked exceptions in Mockito?

Intermediate

  1. What is BDDMockito?
  2. Explain given-when-then syntax.
  3. How do you perform consecutive stubbing?
  4. How do you stub multiple method calls?
  5. How do you use any() and eq() argument matchers?
  6. What is the difference between any() and anyInt()?
  7. How do you verify method call order?
  8. What is InOrder?
  9. How do you verify method calls happened at least or at most?
  10. How do you verify that a method was never called?
  11. How do you handle asynchronous method calls?
  12. How do you set timeout for verification?
  13. How do you stub a method to throw multiple exceptions?
  14. What is doReturn()?
  15. When would you use doReturn instead of when()?
  16. How do you mock private methods?
  17. How do you mock constructors?
  18. How do you integrate Mockito with JUnit 4?
  19. How do you integrate Mockito with JUnit 5?
  20. How do you integrate Mockito with TestNG?
  21. What are the limitations of Mockito?
  22. How do you mock collections?
  23. How do you mock lists and maps?
  24. How do you mock chained method calls?
  25. How do you mock dynamic return values?

Advanced

  1. How do you use doAnswer for advanced stubbing?
  2. How do you handle argument validation in stubbing?
  3. How do you mock final classes using Mockito-inline?
  4. How do you mock static methods using Mockito 4+?
  5. How do you verify static method invocations?
  6. How do you mock private static methods?
  7. How do you handle deep stubbing?
  8. What is the difference between mockito-core and mockito-inline?
  9. How do you integrate Mockito with Spring Boot?
  10. What is @MockBean?
  11. What is @SpyBean?
  12. How do you write unit tests for service layers?
  13. How do you write unit tests for repository layers?
  14. How do you handle database integration in Mockito?
  15. How do you mock REST APIs in unit tests?
  16. How do you mock SOAP services?
  17. How do you mock WebClient or RestTemplate?
  18. How do you handle exceptions in unit tests using Mockito?
  19. How do you verify that a method throws an exception?
  20. How do you handle optional return types in mocks?
  21. How do you mock void methods that throw exceptions?
  22. How do you perform parameterized tests with Mockito?
  23. How do you use Mockito for data-driven testing?
  24. How do you mock multi-threaded operations?
  25. How do you handle concurrency in unit tests using Mockito?

Expert

  1. How do you implement behavior-driven development (BDD) with Mockito?
  2. How do you create reusable mocks?
  3. How do you structure large-scale unit tests using Mockito?
  4. How do you manage dependencies in complex tests?
  5. How do you mock third-party libraries?
  6. How do you handle API versioning in mocked services?
  7. How do you mock time-dependent methods?
  8. How do you mock random number generation?
  9. How do you handle environment-specific configurations in mocks?
  10. How do you integrate Mockito with CI/CD pipelines?
  11. How do you mock security context in Spring Boot?
  12. How do you mock JWT tokens?
  13. How do you mock OAuth2 authentication?
  14. How do you handle logging in unit tests?
  15. How do you create custom argument matchers?
  16. How do you mock chained builder patterns?
  17. How do you mock complex nested objects?
  18. How do you mock generic types?
  19. How do you handle legacy code testing with Mockito?
  20. How do you mock external systems in unit tests?
  21. How do you enforce best practices in mocking?
  22. How do you maintain test readability in large projects?
  23. How do you measure test coverage for mocked tests?
  24. How do you implement automated test reporting?
  25. How do you prepare for Mockito-based interviews?

Related Topics


#RestAssured

#RestAssured

Key Concepts


S.No Topic Sub-Topics
1 Introduction to RestAssured What is RestAssured?, Features, Benefits, Use cases, API testing overview
2 Setting Up RestAssured Maven project setup, Gradle setup, Dependency inclusion, IDE setup, Environment configuration
3 HTTP Methods GET, POST, PUT, DELETE, PATCH
4 Basic Request Structure Given, When, Then, Headers, Query parameters
5 Request Headers & Params Content-Type, Authorization, Query parameters, Path parameters, Form parameters
6 Request Body JSON payload, XML payload, POJO mapping, Multi-part requests, Dynamic data
7 Response Validation Status code validation, Response body validation, Headers validation, JSON schema validation, Extracting values
8 Matchers in RestAssured Hamcrest matchers, EqualTo, ContainsString, GreaterThan, Collection matchers
9 Path & JSON Parsing JsonPath, XMLPath, Extract response data, Nested objects, Arrays handling
10 Authentication Basic auth, Digest auth, OAuth 1.0, OAuth 2.0, API key
11 Logging Requests & Responses Log all, Log headers, Log body, Conditional logging, Debugging
12 Query & Path Parameters Simple parameters, Multiple parameters, Dynamic parameters, Encoding, Validation
13 Form & Multi-part Data Form parameters, File upload, Multi-part requests, Content type, Validation
14 Response Extraction Extract as String, Extract as JSON, Extract as XML, Headers, Cookies
15 BDD Style Testing Given-When-Then, Request specification, Response specification, Assertions, Examples
16 Request & Response Specification Reusable request spec, Reusable response spec, Base URI setup, Base path, Logging
17 Serialization & Deserialization POJO mapping, JSON to POJO, XML to POJO, Using Gson, Using Jackson
18 Headers & Cookies Handling Setting headers, Extracting headers, Cookies management, Validation, Security headers
19 Chaining Requests Multiple requests, Response to next request, Reusable specs, Dependency handling, Session management
20 Dynamic Data & Parameterization Data-driven testing, External files, JSON files, Excel files, Random data
21 Integration with TestNG Annotations, Before/After methods, DataProvider, Assertions, Reporting
22 Integration with JUnit Setup, Annotations, Assertions, Running tests, Reporting
23 Exception Handling Handling failures, Try-catch blocks, Logging errors, Validation failures, Debugging
24 Logging & Reporting Request logs, Response logs, TestNG reports, Extent reports, Custom logging
25 Mocking & Stubbing WireMock, Mock server, Stub response, Simulate API, Testing edge cases
26 API Versioning & Environment Base URI, Base path, Environment variables, Multiple environments, Switching environments
27 Advanced JSON Handling Nested JSON, Arrays, JSONPath expressions, Validation, Dynamic parsing
28 Advanced XML Handling XPath, Namespaces, Attributes, Node validation, Extracting values
29 Hands-on Projects CRUD API automation, E-commerce API testing, Authentication API testing, Data-driven API tests, Logging & reporting
30 Best Practices & Career Path Code organization, Reusable specs, Parameterization, CI/CD integration, Career opportunities

Interview question

Basic Level

  1. What is RestAssured?
  2. Why do we use RestAssured for API automation?
  3. How do you add RestAssured dependency in Maven?
  4. What is the baseURI in RestAssured?
  5. What is the difference between baseURI and basePath?
  6. How do you send a GET request using RestAssured?
  7. How do you validate a status code in RestAssured?
  8. What is the use of .then() in RestAssured?
  9. What is the syntax to log request response?
  10. How do you add query parameters?
  11. How do you add path parameters?
  12. How do you add headers in RestAssured?
  13. How do you validate response body fields?
  14. What is JSONPath?
  15. How do you parse JSON response in RestAssured?
  16. How do you perform POST API testing?
  17. What is the purpose of given(), when(), then() ?
  18. What is Response object in RestAssured?
  19. How do you extract value from Response?
  20. What is contentType() used for?
  21. How do you send a DELETE request?
  22. How do you check if a response body contains a string?
  23. How do you get response time?
  24. What is Hamcrest matcher?
  25. What are the main HTTP methods supported in RestAssured?

Intermediate Level

  1. Difference between request parameters and query parameters.
  2. How to send form parameters in RestAssured?
  3. How do you reuse request specifications across tests?
  4. What is RequestSpecBuilder?
  5. What is ResponseSpecBuilder?
  6. How do you validate multiple fields in response?
  7. How do you assert JSON arrays?
  8. How do you extract nested JSON values?
  9. How do you work with XML response in RestAssured?
  10. How to validate XPath in RestAssured?
  11. How do you upload a file using RestAssured?
  12. How do you download a file using RestAssured?
  13. How do you pass cookies in a request?
  14. What are filters in RestAssured?
  15. How do you log only if validation fails?
  16. How to generate reports for RestAssured tests?
  17. How do you integrate RestAssured with TestNG?
  18. How do you integrate RestAssured with JUnit?
  19. How do you handle SSL certificates?
  20. How do you validate error responses in RestAssured?
  21. How do you send XML payload in POST?
  22. How do you extract a list of values using JSONPath?
  23. How to parameterize API tests using TestNG?
  24. What is the use of relaxedHTTPSValidation()?
  25. What is authentication in APIs?
  26. How do you implement basic authentication?
  27. How do you pass bearer tokens?
  28. How do you test pagination APIs?
  29. How do you validate response headers?
  30. How do you send multipart data?
  31. How do you handle redirects in RestAssured?
  32. What is extract().path()?
  33. What is extract().jsonPath()?
  34. How do you perform PATCH request?
  35. How do you chain API requests?

Advanced Level

  1. What is OAuth2 in RestAssured?
  2. How do you implement OAuth2 token generation?
  3. How to create a custom filter in RestAssured?
  4. How do you implement request/response logging filters?
  5. How do you build a framework using RestAssured?
  6. How do you use POJO classes in serialization?
  7. What is deserialization? How is it used?
  8. How do you use ObjectMapper with RestAssured?
  9. How to validate JSON Schema?
  10. How to validate XML schema?
  11. How do you compare two JSON responses?
  12. How do you mock an API for testing?
  13. How do you handle dynamic JSON response?
  14. How do you handle dynamic tokens/session IDs?
  15. How do you generate random payloads?
  16. How to build reusable utility classes in RestAssured?
  17. How do you retry failed API calls?
  18. How do you set global configuration for RestAssured?
  19. What is a custom exception class in API testing?
  20. How do you validate collections using Hamcrest?
  21. How do you implement data-driven API tests using Excel/CSV?
  22. How do you perform parallel execution of API tests?
  23. What is the difference between BDD and non-BDD approach?
  24. How do you extract raw response?
  25. How do you integrate RestAssured with Jenkins?

Expert Level

  1. How do you design a scalable REST API automation framework?
  2. How do you integrate RestAssured with Cucumber BDD?
  3. How do you build a full API automation CI/CD pipeline?
  4. How do you build custom matchers in RestAssured?
  5. How do you mock high-volume APIs with WireMock?
  6. How do you performance test APIs with RestAssured + JMeter/Gatling?
  7. How do you secure automation frameworks with secrets management?
  8. How do you set up API testing for microservices architecture?
  9. How do you implement contract testing?
  10. How do you test GraphQL APIs using RestAssured?
  11. How to automate SOAP services using RestAssured?
  12. How do you perform schema versioning in large API systems?
  13. How do you validate logs and audit trails through RestAssured?
  14. How do you integrate RestAssured with Docker-based pipelines?
  15. Explain your end-to-end approach to enterprise-level API automation.

Related Topics