In this blog post, we are covering why Testers and QA should learn Docker & Kubernetes and what they should learn in Docker & Kubernetes.
In this blog, We are going to Cover:
- What Is Container (Docker)?
- What Is Kubernetes?
- Why Tester & QA learn Kubernetes?
- Type Of Testing
- Manual Testing
- Smoke Testing
- Automated Testing
- Test-Infra Kubernetes
- E2E test and Conformance Tests
- Terratest
What Is Container (Docker)?
Containers are a software package into an invisible box with everything that the application needs to run. That includes the operating system, application code, runtime, system tools, system libraries, and etc. Docker containers are built off Docker images. Since images are read-only, Docker adds a read-write file system over the read-only file system of the image to create a container.
Read More about Docker Architecture & Docker Images
What Is Kubernetes?
In organizations, multiple numbers of containers running and in a container and on multiple hosts and on containers multiple applications running at a time so it is very hard to manage all the containers and applications together so we use Kubernetes.
Kubernetes is an open-source platform for managing containerized workloads and services. Kubernetes takes care of scaling and failover for your application running on the container.
Read More about Kubernetes Architecture & scaling and High Availability In Kubernetes
Why Tester & QA learn Kubernetes?
After the architect design an application then the developer deploys that application on the containers after that the tester should test it to check if that application is working properly and are there any changes required in that application. Once that done tester checks that application end to end if any upgrade or changes required in any component in a cluster.
Type Of Testing
There are two ways to validate/test the cluster:
1) Manual Testing
2) Automated Testing
Manual Testing
Manual testing is validating each component of the cluster manually this includes checking nodes are up or not, check the status of pods deployed on the cluster, expose the application to test services, check secrets, encryption, security, storage, networking, etc.
Smoke Testing
Smoke testing is a type of testing that determines whether the deployed build is stable or not. In this testing, important functions are tested to ensure that they work properly. Smoke tests confirm whether the QA team can proceed with further testing. Smoke tests are a minimal set of tests run on each build.
Note: Related Github link for Smoke Test
Automated Testing
To test a Kubernetes cluster we can also perform automated testing. We can run a single script by this we can perform end to end testing for our cluster. There are different automated testing Kubernetes tools and 3rd party tools like Test-Infra, E2E test and Conformance Tests, Terratest available by using that we can perform end to end testing.
Test-Infra Kubernetes
Test-Infra is used to build Kubernetes binaries, deploy a Kubernetes cluster using those binaries, and then running the test suite on that cluster. If you are building your own Kubernetes based solution, then this test-Infra is used to build configuration files for the testing and automation test Kubernetes solution.
Note: Related Github link for Test-infra
E2E Test And Conformance Tests
To become a Certified Kubernetes solution provider. In Kubernetes, there are about 1000 or so end to end tests and these are tests that test every functionality in a cluster, and these teets different for different providers. but out of 1000 tests, any solution that claims itself to be a Kubernetes based solution must pass a minimum of approximately 160 tests categorized as conformance tests.
Note: Related Github link for E2E Testing K8s
Note: Related Github link for Conformance
Terratest
Terratest is a 3rd party automated Testing tool that uses Go library that makes it easier to write automated tests for your code. It provides different types of functions and patterns for common infrastructure testing tasks, including Testing Docker images, Helm Charts, Working with Kubernetes APIs.
Note: Related Github link for Terratest
Job Opportunities QA And Test Team
These are the Screen-shots of jobs and Kubernetes test tasks Organizations looking for Testing and QA team.
Note: Subscribe to Our Weekly mail and we will share Jobs and Important New via Mail Subscribe
Join FREE Class
To know about What Is Kubernetes, Why Learn Docker And Kubernetes and Who Should Learn this, VM vs Container (Docker) and Monolithic vs Microservices, 7 Things You Must Learn, Job opportunities for Kubernetes Application Developer in the market, and what to study Including Hands-On Labs You Must Perform To Clear Certified Kubernetes Application Developer (CKAD) certification exam by registering for our FREE Masterclass.
The post Kubernetes For Testers And QA appeared first on Cloud Training Program.