Testing, CI/CD
CI/CD is a method to frequently deliver apps to customers by introducing automation βΎοΈ into the stages of app development. The main concepts attributed to CI/CD are continuous integration, continuous delivery, and continuous deployment. CI/CD is a solution to the problems integrating new code can cause for development and operations teams (AKA “integration hell”).
Specifically, CI/CD introduces ongoing automation and continuous monitoring throughout the lifecycle of apps, from integration π§° and testing phases to delivery and deployment. Taken together, these connected practices are often referred to as a “CI/CD pipeline” and are supported by development and operations teams working together in an agile way with either a DevOps or Site reliability engineering (SRE) approach.
Prerequisites π
CI/CD has no prerequisites, but successful implementation often requires a good deal of consideration. Deciding exactly how to use the tools and what changes you might need in your environments or processes can be challenging without extensive trial and error.
However, while all implementations will be different, adhering to best practices can help you avoid common problems and attain improvements faster.
Topics to learn β¨
- Identify and Categorize Tests
- Automate as Many Tests Possible
- Run Multiple Tests in Parallel
- Start with Simple Tests
- Prefer Clean Testing Environment
- Version Control π‘
- Single-click Code Migration
- CI/CD Pipeline is Key
- Isolate and Secure CI/CD Environment
- Central Code Repository
- Continuous Learning
- One-way Mechanism
- Continuous Feedback
- Transparency
- Right Tooling
RESOURCES TO LEARN π
Documentation π
YouTube Tutorials
- Learn how to configure CI/CD.
- School Of Basics | What is CI CD | What is CI CD Pipeline
- Continuous Integration (CI), Continuous Delivery (CD), Continuous Deployment
- AWS
- Agile
Online Courses β³
- DevOps , CI/CD(Continuous Integration/Delivery for Beginners
- GitLab CI: Pipelines, CI/CD and DevOps for Intermediate
- Master Continuous Integration and Deployment with Ease for Experts
Blogs π
- Building Test Data in a CI/CD Pipeline
- Testing and creating CI/CD pipelines for AWS
- Things to consider when running visual tests in CI/CD
- CI/CD Benefits, Challenges and Best Practices
- Accelerate CI/CD Pipeline Blog Series
- CI/CD/CT in Agile | Why Continuous Testing in Agile
Tutorials
- Bitbucket CI/CD tutorials
- GitLab - CI/CD - Tutorialspoint
- An Introduction to CI/CD Best Practices | DigitalOcean
- GitLab CI/CD Tutorial
- Get started with GitLab CI/CD
Apps βοΈ