CI CD Interview Questions and Answers
Question - 51 : - Name a few types of tests used in software development
Answer - 51 : -
There are more types of tests than we can count with both hands, but the most common ones are:
- Unit tests: validate that functions or classes behave as expected.
- Integration tests: are used to verify that the different components of an application work well together.
- End-to-end tests: check an application by simulating user interaction.
- Static tests: finds defects in code without actually executing it.
- Security tests: scans the application’s dependencies for known security issues.
- Smoke tests: fast tests that check if the application can start and that the infrastructure is ready to accept deployments.
Question - 52 : - What is a flaky test?
Answer - 52 : -
A test that intermittently fails for no apparent reason is called a flaky test. Flaky tests usually work correctly on the developer’s machine but fail on the CI server. Flaky tests are difficult to debug and are a major source of frustration.
Common sources of flakiness are:
- Improperly handled concurrency.
- Dependency on test order within the test suite.
- Side effects in tests.
- Use of non-deterministic code.
- Non-identical test environments.
Question - 53 : - What is TDD?
Answer - 53 : -
Test-Driven Development (TDD) is a software design practice in which a developer writes tests before code. By inverting the usual order in which software is written, a developer can think of a problem in terms of inputs and outputs and write more testable (and thus more modular) code.
The TDD cycle consists of three steps:
- Red: write a test that fails.
- Green: write the minimal code that passes the test.
- Refactor: improve the code, and make it more abstract, readable, and optimized.
Question - 54 : - What is test coverage?
Answer - 54 : -
Test coverage is a metric that measures how much of the codebase is covered by tests. A 100% coverage means that every line of the code is tested at least by one test case.
Question - 55 : - Does test coverage need to be 100%?
Answer - 55 : -
No. There’s a myth that 100% coverage means that the code is bug-free. This is false; no amount of testing can guarantee that. Attempting to reach full test coverage is considered bad practice because it leads to a false sense of security and extra work when code needs to be refactored.
Question - 56 : - What is difference between Continuous Deployment and Continuous Delivery?
Answer - 56 : -
Continuous Deployment and Continuous Delivery are two different processes.
- Continuous Deployment - refers a system that allows deployment of every new changes that comes in source code from a developer.
- Continuous Delivery - refers the automation of entire software release process.
Question - 57 : - How much will you rate yourself in CI/CD Pipeline?
Answer - 57 : -
When you attend an interview, Interviewer may ask you to rate yourself in a specific Technology like CI/CD Pipeline, So It's depend on your knowledge and work experience in CI/CD Pipeline.
Question - 58 : - What challenges did you face while working on CI/CD Pipeline?
Answer - 58 : -
This question may be specific to your technology and completely depends on your past work experience. So you need to just explain the challenges you faced related to CI/CD Pipeline in your Project.
Question - 59 : - What was your role in the last Project related to CI/CD Pipeline?
Answer - 59 : -
It's based on your role and responsibilities assigned to you and what functionality you implemented using CI/CD Pipeline in your project. This question is generally asked in every interview.
Question - 60 : - How does GitLab CI work?
Answer - 60 : -
Continuous integration (CI) begins with your GitLab instance. You can share new code via merge requests, and you can initiate a pipeline of automated processes. The build, test, and deploy pipelines will run after code is committed to the repository. Continuous delivery (CD) allows you to take your project from concept to completion. It does this by putting your features into production after automated pipelines have been validated through CI.