Define Continuous Integration…
What is the end product of the integration?
What are the 4 release types in traditional Product Delivery?
Alpha release → Developers testing software
Beta release→ Select test-users or a QA team conduct beta testing on the software
Release candidate → Unstable version released to the public. Release with many potential caveats.
Release → Fully released solution.
What is another name for Modern Feature Delivery?
CI/CD Pipeline
What are the 3 environment in Modern Feature Delivery (CI/CD Pipeline) ?
What is the Development environment in the CI/CD pipeline?
What is the Staging environment in the CI/CD pipeline?
What is the Production environment in the CI/CD pipeline?
What is meant by automated build management?
If we check-in changes, the VC system should automatically run tests and progress the software through the delivery stages.
Explain Git Push and Git Pull Requests…
Push → Uploads changes from local to remote repository
Pull → Proposes a set of changes be made from a local to remote repository
What are the components of the Testing Pyramid? Define each…
Unit tests:
- Testing each unit of a code segment to ensure that all tests pass individually
- Usually implement a large number of them
Service tests:
- Performed before code is deployed to a service
- Less numerous that unit tests
- Slower than unit tests due to usually using network requests
End to end tests:
- Performed before system is accepted into the production environment
- Tests a specific journey within the software. E.g. testing the deleting of a user account
In testing, what is Stubbing?
Testing code using a Stub, a stand-in for a service, that responds to requests with artificial responses.
In testing, what is Mocking?
What are Brittle Tests?
A test that fails due to the failure of another service
What are Flaky Tests?
What are the worst type of test failures and why?