Waseem Hanif SQE Project.pptx software Quality

WaseemHanif8 6 views 17 slides Mar 07, 2025
Slide 1
Slide 1 of 17
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17

About This Presentation

here there are different tolls are used to discribe complete ci CD pipepline


Slide Content

Testing and Test Automation in CI / CD Pipeline Waseem hainf Muhammad Asjid 1 Presented By: Software Quality Engineering - SE3002

What Will Learn Today? Overview of DevOps Overview of TestOps CI/CD Pipeline? Coverage of TestOps in Framework Demo of Framework Manual Testing Issues/Solutions Final Results/Benifits Software Quality Engineering - SE3002

Overview of DevOps What is DevOps? DevOps is a practice combining development and operations for faster, efficient software delivery Software Quality Engineering - SE3002

Overview of TestOps What is TestOPs ? An extension of DevOps focused on integrating testing processes into the DevOps lifecycle, enhancing collaboration between development, testing, and operations teams. Wh y TestOps ? To automate testing processes and detect issues early. Reduces manual effort Reduce cost of defect resolution Software Quality Engineering - SE3002

Software Quality Engineering - SE3002 Continue.. TestOps W orkflow: 1. Continuous testing within CI/CD pipelines. 2. Automated test execution triggered on code commits. 3. Centralized reporting of test results.

CI/CD Pipeline what is CI/CD? A key component of both DevOps and TestOps that automates the processes of continuous integration and continuous delivery, enabling rapid and reliable deployment of code changes. Features? Automates build, test, and deployment processes. Triggers automated tests on code changes. Ensures consistent environments with Docker. Software Quality Engineering - SE3002

Coverage of TestOps in Framework Testing Techniques: UI Testing: Java, Selenium, Cucumber (BDD) Unit Testing: JUnit, TestNG Parallel Execution: TestNG API Testing: RestAssured Performance Testing : k6 CI/CD Tools CI/CD Pipeline: GitHub, GitHub Actions, Docker, DockerHub Software Quality Engineering - SE3002

CI/CD Pipeline WorkFlow Software Quality Engineering - SE3002

Continue.. Software Quality Engineering - SE3002 Define Base Image Start by selecting an appropriate base image that meets the requirements of your testing environment, ensuring compatibility with the tools and frameworks " 02 I nstall Dependencies List and install all necessary dependencies and libraries within the Dockerfile. This step is crucial for replicating the environment reliably across different machines 03 Copy Application Files Use the COPY command to transfer your application files into the image. This allows you to have the exact version of your application available in the container. 04 Set Environment Variables Define any necessary environment variables to confgurethe application correctly in the containerized environment, ensuring it behaves as expected during tests. 05 S pecify Command to Ru n in clude the Dockerfile by specifying the command that should be executed when the container starts. This often includes running tests or launching the application . 1 Dockerfile Creation steps:

Screenshots of Framework Github Software Quality Engineering - SE3002

Continue.. Github Actions: Software Quality Engineering - SE3002

Continue.. Build Docker Image: Software Quality Engineering - SE3002

Continue.. Dockerhub: Software Quality Engineering - SE3002

Manual Testing Issues Software Quality Engineering - SE3002 Human Error Risks The pressure on human testers introduces a risk of errors. which can lead to missed bups and defects in the software. Automation provides consistent test execution that minimizes the risk of human oversight. Need of Intigration To enhance the effectiveness ol testing. it is crucial to integrate testing efforts with other development processes. This inte grat ion can Facilitate the continuous testing and f eedbac k. imp roving overall q uality . B e n e f I ts of Automation Implement ing automation not only s a v e s   us the testing time process but also allows for more comprehensive test coverage. Auto mated tests can be run frequently . ensuring that new code does not break f unctionality Streamlining the Testing Process B y adopting automation tools and f rameworks . organizations can streamline their testing processes. allowing teams to focus on more com plex test scenarios that require critical thinking and creativity. Inefficiencies Manual testing can be time— consuming and labor— intensive. leading to prolonged testing cycles that delay product releases. Auto mating repetitive tasks can significantly reduce the time spent on these tests.

Solutions Overview O1 O2 Docker Containers Isolated environments f or running applications , ensuring consistency across testing staging. and production . GitHub Actions Automated workfows tha trigger testing process   upon code changes, streamlining the development lifecyc Ie . O3 04 05 CI/CD Pipeline A c ontinuous integration and delivery pipeline that integrates code changes raD›dIy and reliably. Efficiency Gains Reduced time for testing and deployment through automated processes and containerization strategies. Integration Points Connections between Docker and Git Hub Actions that facilitate seamless transition   between development stages . Enhancing Testing Efficiency with Docker and Git Hub Actions Software Quality Engineering - SE3002

Results & Benefits Benefits Achived by Automation: Software Quality Engineering - SE3002 Improved Efficiency Automation and testing sped up the process, allowing more tests to be done in less time, so teams can deliver updates and improvements faster Reduced Manual Errors Replacing manual tests with automated scripts reduces human error, ensures consistency and accuracy in test execution, and boosts confidence in the software's performance. Scalable Test Execution Automation makes it easy to scale testing as products grow, adding tests without needing much extra time orresources, supporting continuous integration and deployme

Any Questions Software Quality Engineering - SE3002