Cypress is an end-to-end testing framework that focuses on doing testing well through features like time travel debugging, real-time reloads, and automatic waiting. It works on any frontend framework and tests are written in JavaScript alone. Cypress provides an all-in-one solution for developers and QA engineers to set up testing, write Cucumber tests, run and debug tests from a dashboard or command line, and generate reports including screenshots, videos, and JUnit files.
dotnetsheff: Continuous delivery with Team City and Octopus DeployKevin Kuszyk
This document discusses continuous delivery and deployment using Team City and Octopus Deploy. It defines continuous delivery as allowing deployment to production with a single button press through automation. Continuous deployment completely automates putting code changes into production without human intervention. It presents the continuous delivery pipeline of code, build, test, pack, and deploy and shows how Team City and Octopus Deploy can be used together in this process.
Why you should switch to Cypress for modern web testing?Shivam Bharadwaj
Cypress is a modern web testing framework built on top of mocha and uses chai as an assertion library. The E2E tests are written entirely in javascript. These slides will give you a kick ass on getting started with Cypress.
Do read my blog @ - https://dzone.com/articles/why-should-you-switch-to-cypress-for-modern-web-te
Make It Cooler: Using Decentralized Version Controlindiver
A commonly used version control system in the ColdFusion community is Subversion -- a centralized system that relies on being connected to a central server. The next generation version control systems are “decentralized”, in that version control tasks do not rely on a central server.
Decentralized version control systems are more efficient and offer a more practical way of software development.
In this session, Indy takes you through the considerations in moving from Subversion to Git, a decentralized version control system. You also get to understand the pros and cons of each and hear of the practical experience of migrating projects to decentralized version control.
Version control is often used in conjunction with a testing framework and continuous integration. To complete the picture, Indy walks you through how to integrate Git with a testing framework, MXUnit, and a continuous integration server, Hudson.
This document discusses Octopus Deploy, a deployment automation tool. It describes Octopus Deploy's architecture and 7 step deployment process. The process includes declaring environments, creating application packages, defining projects, creating deployment processes with steps and variables, releasing packages, and deploying releases to environments. Octopus Deploy supports features like automated deployments, rollbacks, configuration transformations, and integration with build pipelines. It provides visibility through audit logs and manages deployments across development, test, and production environments.
Practical continuous quality gates for development processAndrii Soldatenko
There are a lot of books and publications about the continuous integration in the world. But in my experience it’s difficult to find information about how to open quality gates between automated tests and to continuous integration practice to in your current project. After reading several articles and even a couple of books you will understand how to work with it. But what next? I will share with you practical tips and tricks on how to lift iron curtain to your automated tests before a continuous quality practice today. It is for this reason why I am pleased to share with you my acquired experience in my presentation.
We live in changeable world, and our applications are also very inconstant. As a result we have to know how to improve project quality. The subject of my presentation is related to the modern approaches of designing and implementing automated functional tests, by using, for instance, design patterns, improving test execution time based parallel execution, scaling by distributing tests on several machines, creating strategy for generation of big sets of test data and setup skeleton for organizing tests for typical Django project. I am pleased to share with you my acquired experience in this field.
Cypress is an e2e testing tool that allows for testing web applications directly in the browser. It provides native access to the browser without using Selenium, making tasks like taking screenshots and recording videos possible. Some limitations are that it only supports single-page applications and one browser tab at a time. Cypress prioritizes developer experience through features like fast testing, intuitive debugging, and integration with continuous integration systems and dashboards. Many large companies have adopted Cypress for their e2e testing needs.
[English][Test Girls] Zero to Hero: Start Test automation with CypressTest Girls
DevOpsDays Philadelphia 2019 presentation.
Zero to Hero: Start Test automation with Cypress
In DevOps world, test automation is a must have. But start coding could be challenging for people novice in tech and also for the ones working in manual testing (because someone said that testers don’t need technical skills)! In this “right to the point” workshop you’ll start your automation test project - easy and painlessly. It’ll give you knowledge to continue learning and practicing after.
It is a presentation to help software developers get started with a testing platform Cypress. I have created it personally and given the most basics of explanation regarding the new concepts.
This document discusses continuous deployments using Octopus Deploy. It begins with background on the speaker and an outline of topics to be covered. The speaker then discusses the importance of automation and challenges organizations face achieving it. Key benefits of Octopus Deploy highlighted include its flexibility, ability to improve development processes and visibility, support for .NET and other technologies, excellent customer support, and feature-rich capabilities. The presentation concludes with a demo of setting up continuous deployment of a sample application with Octopus Deploy.
The document discusses continuous delivery practices for front-end engineers. It outlines seven stages of a continuous delivery process: 1) efficiently reusing code through tools like NPM, Bower, and Yeoman, 2) test-driven development using Karma, Jasmine, Mocha and Protractor, 3) integrating continuously, 4) deploying often through automation to reduce risks, 5) monitoring performance and errors, 6) using feature toggles to deploy unfinished features, and 7) conducting A/B tests to gradually release new features. Moving from traditional waterfall to continuous delivery processes allows deploying from 4 times a year to 50 times a day and building a culture of continuous delivery.
Ceylon is a new modern, elegant programming language for the JVM and JavaScript VM, designed for team work. But it's more than that, it is a full platform with modularity, an SDK, tools and IDEs.
We will present Ceylon the language, the platform, and its ecosystem. You will see everything from starting a new project in the IDE to publishing it on Herd, our module repository, including using the SDK. We will also discuss the ongoing Ceylon projects such as the build system, Vert.x integration or Cayla, the new web framework.
Finally we will discuss the plans for Ceylon 1.2 and further.
This document discusses high performance functional testing based on Selenium. It begins with an introduction of the speaker and outlines a testing pyramid with unit, integration and functional/UI tests. It then demonstrates how to automate functional tests for web applications using Selenium and discusses techniques for decreasing test execution time, including using Selenium Grid, PhantomJS, HTTP requests instead of Selenium, and parallel test execution. The document emphasizes that faster tests allow for faster development and provides approaches and tools to reduce test bottlenecks and optimize test execution time.
Demo of how to dockerise and deploy your microservices application to the test environment, how to run selenium tests inside docker and how to put this all together to integrate your tests in your CI/CD pipeline using Jenkins.
Presented at ATA GTR 2016 in Pune.
How do you automate the non-existing deployment routines of an organization with over 100 different customers, each having their own environments? How do you convince the leaders, developers and customers to give you the resources needed in order to automate everything? Is it really possible to introduce a deployment routine that works for everyone?
In less than six months, Karoline transformed the deployment routines at Epinova by introducing Octopus Deploy to the organization. She will take you through the steps needed to get started, the pitfalls along the way, and success that Octopus Deploy has become.
In this workshop we will start out by installing an Octopus Deploy server and tentacle on your laptop, before looking at the basic concepts of Environments, Machines, Roles and Projects. You will create a project of your own and deploy this using Octopus Deploy before we round off by looking at the advanced topics of Script modules, Step templates, Variable sets and Retention Policies.
At the end of this workshop, you'll have all the knowledge you need in order to create a more efficient and failproof deployment process for your project. Keep calm and deploy to production!
Continuous Delivery - Voxxed Days Cluj-Napoca 2017Rafał Leszko
This document discusses continuous delivery using Jenkins, Docker, and Spring Boot. It defines continuous delivery as getting changes safely and quickly into production. It describes how Yahoo automated deployments to deploy over 10,000 changes per hour. It then contrasts traditional software delivery approaches to continuous integration and continuous delivery approaches using automated testing, configuration management, and continuous delivery pipelines. It also provides overviews of Spring Boot, Docker, and how they can help achieve continuous delivery goals.
Dev ops for mobile apps at microsoft teamsMahesh Arali
I am leading a team at Microsoft for building a world-class infrastructure for shipping high-quality mobile apps in DevOps model. We are on this long journey to keep our "develop" branch in a ship ready state always.
I gave a talk recently at Open Source India conference #OSI2019 to share our journey so far with the community.
The document discusses implementing a pragmatic continuous delivery pipeline for Java applications using open source tools like Jenkins, Nexus, and LiveRebel. The pipeline includes phases for building, testing, QA, and production. Artifacts like WAR files and log files move through the pipeline. While changing processes can be difficult, the presenter suggests automating current workflows and capturing them in a pipeline as a way to introduce continuous delivery practices.
This document proposes an automated test architecture for the UI Builder application using REST API testing, UI testing, and integration testing. It recommends the Rest Assured library for API testing due to its ability to integrate with Jenkins and remove the need for manual HTTP calls. Protractor is proposed for UI testing as it allows testing Angular applications in JavaScript and integrates well with Selenium. Both test frameworks would be set up with their own Git repositories linked to Jenkins jobs. Integration testing would link the API and UI test repos. The test automation aims to provide faster feedback and reduce regressions as the application grows.
I recently presented this 2 hours session about the automation model developed in Videobet, the tools used in the R&D, QA and operations:
Issue mgmt.: JIRA/Greenhopper
Build system and repository: Maven & Nexus
Build server: QuickBuild
Code quality: Sonar
Continuous Integration: Selenium Grid
Crash dump analysis: Socorro
Database versioning: Flyway DB
Docker–Grid (A On demand and Scalable dockerized selenium grid architecture)STePINForum
by Yogit Thakral, Senior Test Engineer & Kandeel Chauhan, Testing Lead, Naukri.com at STeP-IN SUMMIT 2018 15th International Conference on Software Testing on August 31, 2018 at Taj, MG Road, Bengaluru
A DevOps Journey - An experience report after 6 years of implementing DevOps and Continuous Delivery in Frende Forsikring, a small insurance company in Norway.
The document discusses the importance of performance testing software systems. It notes that performance testing is a time-consuming process that requires planning infrastructure, building test data scenarios, running performance tests, analyzing results, and evaluating code and architecture. Specific and quantifiable performance metrics are needed to determine if a system passes or fails. The document recommends starting performance testing early in the development process and dedicating adequate time and isolated testing environments for it.
This document summarizes a test automation stack that uses Selenium, Cucumber, and Jenkins for end-to-end testing. It utilizes Cucumber for test design with a Gherkin syntax to make tests human-readable. Selenide is used for test development to enable simple code with clear structure and stable Selenium framework methods. Tests are executed in Jenkins with parameterization to run on different environments and browsers. Test results are evaluated using Report Portal for automated analysis, dashboards, and error correlation. A live demo of the stack is available on GitHub.
This document summarizes a test automation stack that uses Cucumber, Selenium, and Jenkins for end-to-end testing. Cucumber is used for test design with a Gherkin syntax to make tests human-readable. Selenium and the Selenide framework provide test development with reusable, stable tests implemented as page objects. Tests are executed via Jenkins pipelines for continuous integration and parameterization. Test results are evaluated using Report Portal for correlation, visualization of errors, and automated analysis.
Journey Through Four Stages of Kubernetes Deployment MaturityAltoros
In this webinar we will discuss a crawl, walk, run approach to continuous delivery (CD) for applications, point by point:
Where to start, how to advance, and how to reach the level of maximum automation.
How to orchestrate CI/CD processes along with routing and business continuity.
When the automation level is sufficient.
GitOps principles and their benefits.
What tools should be used to automate CI, CD, GitOps, Container Registry, Secrets management, etc
Kubernetes at NU.nl (Kubernetes meetup 2019-09-05)Tibo Beijen
Slides of the presentation about Kubernetes practices and learnings at NU.nl.
This presentation was the first of two at the Dutch Kubernetes meetup at the Sanoma Netherlands offices, that took place on Sept. 5th 2019
En tant que développeur, qu'il est bon d'être capable de débugguer sur sa machine un problème survenant en production, dans une configuration spécifique ! C'est ce que permet le framework TestContainers. Il permet de piloter Docker directement depuis ses tests JUnit et donc d'avoir un mécanisme extrêmement efficace pour déployer ses tests fonctionnels dans un environnement donné.
Cette session présentera TestContainers, appliqué à un cas réel avec une démonstration de comment l'utiliser pour effectuer des tests impliquant une base de données, un moteur de Servlet et plus. Au programme: Intégration JUnit5, création d'images Docker custom, enregistrement automatique de vidéos des tests, intégration avec un job Jenkins pipeline pour itérer sur les différentes configurations à tester.
MyHeritage - QA Automations in a Continuous Deployment environmentMatanGoren
In this presentation we explain the CD mindset of the MyHeritage QA and how we use Watir, Appium, Ruby, Cumcumber and other supporting technologies to allow end to end testing.
These are the link mentioned in the presentation:
Continuous Deployment Applied at MyHeritage - http://www.slideshare.net/RanLevy/continuous-deployment-applied-at-myheritage
Appium - http://appium.io/
Ruby - https://www.ruby-lang.org/en/
Watir - http://watirwebdriver.com/
page-object - https://github.com/cheezy/page-object
Selenium Grid - https://github.com/SeleniumHQ/selenium/wiki/Grid2
Selenium-Grid-Extras - https://github.com/groupon/Selenium-Grid-Extras
Jenkins - https://jenkins-ci.org/
The document discusses continuous integration and continuous testing for SAP applications. It defines continuous integration as automatically building and testing code changes when developers commit changes to version control. Continuous testing involves running end-to-end tests on a separate schedule from the first build. The document recommends Worksoft's Certify and Execution Manager tools to help enterprises scale testing across their continuous integration and delivery processes by automating end-to-end test execution from CI servers and across environments.
This document discusses DevOps services for automating infrastructure for a company. It describes implementing continuous integration using Jenkins to run automated tests on a schedule. The document then discusses a case study where DevOps services were used to improve the infrastructure for SavvyMoney, a financial management company. It describes how the infrastructure was improved through automatic fault tolerance, scaling, configuration, and deployments. Monitoring and notifications were also implemented for continuous oversight of the infrastructure. The improvements reduced costs, improved reliability and security, and enabled horizontal scaling of the applications.
DevOps Automation and Maturity using FlexDeploy, webMethods demo: Kellton Web...Kellton Tech Solutions Ltd
This document discusses DevOps maturity and automation using the FlexDeploy platform. It provides an overview of FlexDeploy's build automation, deployment automation, and release pipeline orchestration capabilities. FlexDeploy allows comprehensive automation of the software development lifecycle from build through deployment. It offers out-of-the-box integrations with common tools and the ability to eliminate scripting. The document also highlights challenges with traditional approaches to deploying webMethods assets and how the FlexDeploy webMethods plugin streamlines continuous integration and deployment for webMethods environments.
In this presentation we explain how we use Watir, Ruby, Cumcumber and other supporting technologies to allow end to end testing in MyHeritage.
These are the links to resource mentioned in the presentation:
Ruby - https://www.ruby-lang.org/en/
Watir - http://watirwebdriver.com/
page-object - https://github.com/cheezy/page-object
Selenium Grid - https://github.com/SeleniumHQ/selenium/wiki/Grid2
Selenium-Grid-Extras - https://github.com/groupon/Selenium-Grid-Extras
Jenkins - https://jenkins-ci.org/
We also explain how QA automation engineers are an integral part of the Continuous Deployment process at MyHeritage
Continuous Load Testing with CloudTest and JenkinsSOASTA
Two key challenges to continuous load testing are provisioning a test system to handle the load and accessing load generators to drive the traffic.
In this webinar from SOASTA & CloudBees, you will learn how to:
Build realistic automated web performance tests and run them in Jenkins
Architect and launch a test environment that auto-provisions in the cloud
Manage a load generation grid to drive load tests in a lights-out mode
Establish a performance baseline in your daily Jenkins reports
Orchestrating Automated Tests in Different Systems - Please Download to watch...Kelvin Silva
This talk was presented in DevOpsDays Sao Paulo (June/2018) and in Daitan DevWeek (July/2018).
What should you do if your product must be tested on multiple operating systems before delivering? And what if it must be tested on different browsers? Now it is a lot of combinations. And how to do this in an agile way?
Here is a talk about how we can orchestrate automated tests on different systems, on different browsers. Assuring the coverage on all operating systems and browsers supported by a product is one of the toughest tasks commonly faced when transitioning to a DevOps setup.
Due to the high quantity of environment combinations, the complexity of organizing and executing tests increases and can lead to an ineffective pipeline. In this talk, we will evaluate an automated orchestration of complex test suites that delivers the effectiveness needed for proper DevOps.
IN Dubai [WHATSAPP:Only (+971588192166**)] Abortion Pills For Sale In Dubai** UAE** Mifepristone and Misoprostol Tablets Available In Dubai** UAE
CONTACT DR. SINDY Whatsapp +971588192166* We Have Abortion Pills / Cytotec Tablets /Mifegest Kit Available in Dubai** Sharjah** Abudhabi** Ajman** Alain** Fujairah** Ras Al Khaimah** Umm Al Quwain** UAE** Buy cytotec in Dubai +971588192166* '''Abortion Pills near me DUBAI | ABU DHABI|UAE. Price of Misoprostol** Cytotec” +971588192166* ' Dr.SINDY ''BUY ABORTION PILLS MIFEGEST KIT** MISOPROSTOL** CYTOTEC PILLS IN DUBAI** ABU DHABI**UAE'' Contact me now via What's App… abortion pills in dubai Mtp-Kit Prices
abortion pills available in dubai/abortion pills for sale in dubai/abortion pills in uae/cytotec dubai/abortion pills in abu dhabi/abortion pills available in abu dhabi/abortion tablets in uae
… abortion Pills Cytotec also available Oman Qatar Doha Saudi Arabia Bahrain Above all** Cytotec Abortion Pills are Available In Dubai / UAE** you will be very happy to do abortion in Dubai we are providing cytotec 200mg abortion pills in Dubai** UAE. Medication abortion offers an alternative to Surgical Abortion for women in the early weeks of pregnancy. We only offer abortion pills from 1 week-6 Months. We then advise you to use surgery if it's beyond 6 months. Our Abu Dhabi** Ajman** Al Ain** Dubai** Fujairah** Ras Al Khaimah (RAK)** Sharjah** Umm Al Quwain (UAQ) United Arab Emirates Abortion Clinic provides the safest and most advanced techniques for providing non-surgical** medical and surgical abortion methods for early through late second trimester** including the Abortion By Pill Procedure (RU 486** Mifeprex** Mifepristone** early options French Abortion Pill)** Tamoxifen** Methotrexate and Cytotec (Misoprostol). The Abu Dhabi** United Arab Emirates Abortion Clinic performs Same Day Abortion Procedure using medications that are taken on the first day of the office visit and will cause the abortion to occur generally within 4 to 6 hours (as early as 30 minutes) for patients who are 3 to 12 weeks pregnant. When Mifepristone and Misoprostol are used** 50% of patients complete in 4 to 6 hours; 75% to 80% in 12 hours; and 90% in 24 hours. We use a regimen that allows for completion without the need for surgery 99% of the time. All advanced second trimester and late term pregnancies at our Tampa clinic (17 to 24 weeks or greater) can be completed within 24 hours or less 99% of the time without the need for surgery. The procedure is completed with minimal to no complications. Our Women's Health Center located in Abu Dhabi** United Arab Emirates** uses the latest medications for medical abortions (RU-486** Mifeprex** Mifegyne** Mifepristone** early options French abortion pill)** Methotrexate and Cytotec (Misoprostol). The safety standards of our Abu Dhabi** United Arab Emirates Abortion Doctors remain unparalleled. They consistently maintain the lowest complication rates throughout the nation. Our
Attendance Tracking From Paper To DigitalTask Tracker
If you are having trouble deciding which time tracker tool is best for you, try "Task Tracker" app. It has numerous features, including the ability to check daily attendance sheet, and other that make team management easier.
A Comparative Analysis of Functional and Non-Functional Testing.pdfkalichargn70th171
A robust software testing strategy encompassing functional and non-functional testing is fundamental for development teams. These twin pillars are essential for ensuring the success of your applications. But why are they so critical?
Functional testing rigorously examines the application's processes against predefined requirements, ensuring they align seamlessly. Conversely, non-functional testing evaluates performance and reliability under load, enhancing the end-user experience.
NBFC Software: Optimize Your Non-Banking Financial CompanyNBFC Softwares
NBFC Software: Optimize Your Non-Banking Financial Company
Enhance Your Financial Services with Comprehensive NBFC Software
NBFC software provides a complete solution for non-banking financial companies, streamlining banking and accounting functions to reduce operational costs. Our software is designed to meet the diverse needs of NBFCs, including investment banks, insurance companies, and hedge funds.
Key Features of NBFC Software:
Centralized Database: Facilitates inter-branch collaboration and smooth operations with a unified platform.
Automation: Simplifies loan lifecycle management and account maintenance, ensuring efficient delivery of financial services.
Customization: Highly customizable to fit specific business needs, offering flexibility in managing various loan types such as home loans, mortgage loans, personal loans, and more.
Security: Ensures safe and secure handling of financial transactions and sensitive data.
User-Friendly Interface: Designed to be intuitive and easy to use, reducing the learning curve for employees.
Cost-Effective: Reduces the need for additional manpower by automating tasks, making it a budget-friendly solution. Benefits of NBFC Software:
Go Paperless: Transition to a fully digital operation, eliminating offline work.
Transparency: Enables managers and executives to monitor various points of the banking process easily.
Defaulter Tracking: Helps track loan defaulters, maintaining a healthy loan management system.
Increased Accessibility: Cutting-edge technology increases the accessibility and usability of NBFC operations. Request a Demo Now!
In this talk, we will explore strategies to optimize the success rate of storing and retaining new information. We will discuss scientifically proven ideal learning intervals and content structures. Additionally, we will examine how to create an environment that improves our focus while you remain in the “flow”. Lastly we will also address the influence of AI on learning capabilities.
In the dynamic field of software development, this knowledge will empower you to accelerate your learning curve and support others in their learning journeys.
React and Next.js are complementary tools in web development. React, a JavaScript library, specializes in building user interfaces with its component-based architecture and efficient state management. Next.js extends React by providing server-side rendering, routing, and other utilities, making it ideal for building SEO-friendly, high-performance web applications.
Software development... for all? (keynote at ICSOFT'2024)miso_uam
Our world runs on software. It governs all major aspects of our life. It is an enabler for research and innovation, and is critical for business competitivity. Traditional software engineering techniques have achieved high effectiveness, but still may fall short on delivering software at the accelerated pace and with the increasing quality that future scenarios will require.
To attack this issue, some software paradigms raise the automation of software development via higher levels of abstraction through domain-specific languages (e.g., in model-driven engineering) and empowering non-professional developers with the possibility to build their own software (e.g., in low-code development approaches). In a software-demanding world, this is an attractive possibility, and perhaps -- paraphrasing Andy Warhol -- "in the future, everyone will be a developer for 15 minutes". However, to make this possible, methods are required to tweak languages to their context of use (crucial given the diversity of backgrounds and purposes), and the assistance to developers throughout the development process (especially critical for non-professionals).
In this keynote talk at ICSOFT'2024 I presented enabling techniques for this vision, supporting the creation of families of domain-specific languages, their adaptation to the usage context; and the augmentation of low-code environments with assistants and recommender systems to guide developers (professional or not) in the development process.
An MVP (Minimum Viable Product) mobile application is a streamlined version of a mobile app that includes only the core features necessary to address the primary needs of its users. The purpose of an MVP is to validate the app concept with minimal resources, gather user feedback, and identify any areas for improvement before investing in a full-scale development. This approach allows businesses to quickly launch their app, test its market viability, and make data-driven decisions for future enhancements, ensuring a higher likelihood of success and user satisfaction.
Discover the Power of ONEMONITAR: The Ultimate Mobile Spy App for Android Dev...onemonitarsoftware
Unlock the full potential of mobile monitoring with ONEMONITAR. Our advanced and discreet app offers a comprehensive suite of features, including hidden call recording, real-time GPS tracking, message monitoring, and much more.
Perfect for parents, employers, and anyone needing a reliable solution, ONEMONITAR ensures you stay informed and in control. Explore the key features of ONEMONITAR and see why it’s the trusted choice for Android device monitoring.
Share this infographic to spread the word about the ultimate mobile spy app!
Cultural Shifts: Embracing DevOps for Organizational TransformationMindfire Solution
Mindfire Solutions specializes in DevOps services, facilitating digital transformation through streamlined software development and operational efficiency. Their expertise enhances collaboration, accelerates delivery cycles, and ensures scalability using cloud-native technologies. Mindfire Solutions empowers businesses to innovate rapidly and maintain competitive advantage in dynamic market landscapes.
Ansys Mechanical enables you to solve complex structural engineering problems and make better, faster design decisions. With the finite element analysis (FEA) solvers available in the suite, you can customize and automate solutions for your structural mechanics problems and parameterize them to analyze multiple design scenarios. Ansys Mechanical is a dynamic tool that has a complete range of analysis tools.
4. 4
• 10 Jenkins jobs (per each
banner)
• 10 Windows VM’s, each
runner has:
• Git
• Maven
• Browsers
What we had
Infrastructure overview
5. • Full setup for each new host
(Java, Maven, Chrome, FF,
Opera, etc.)
• Maintenance of existing host
• Debug of tests
5
What we had
Dedicated infrastructure
6. • To many jobs on
CI/CD tool
• Jobs are tied to
workers
• Complex config
• Artifacts
aggregation
6
What we had
Complicated CI/CD flow
7. What we had
Performance issues
• Degradation of tests on
long run
• Resources are not
released on some hosts
• JVM/Maven crash
• Browser freeze
7
8. What we had
Time of regression
• As we can’t extend parallels
test runs we a locked with
time of regression
8
10. Steps taken to improve
Implementing Selenoid
Advantages
• Ready containers with browsers
• Support of Chrome, FF, Opera
• Configurable resource consuming
• Video recording, VNC, logs (selenoid-ui)
• Quick start on any new project
• Load balancing via GGR
10
10
11. 11
Steps taken to improve
Kubernetes + Jenkins
Kubernetes
Master
POD1
POD2
POD3
13. Steps taken to improve
Moving Selenoid to Kubernetes
• Kubernetes support
• Easy to deploy
• Resources for each browsers configured
separately
• No need to install Ggr, Ggr-UI
• Free alternative to project Moon
13
16. 16
What We Get
• Time of regression reduced from 8
hours to 3
• Flaky test count decreased from 25%
to 5%
• Test infrastructure improved with same
amount of money
• Stateless runners
• Easy maintenance
• Easy scalability
• Simplification of CI/CD flow
• Resources consumption configuration
• Selenoid in Kubernetes
17. Existing cons
Tight snap to the pipeline which is
complicated
The difficulty of adaptation for different
projects
Tie on Jenkins that holds state of tests
Inefficiency of using spot instances
17
18. What do we
want to get
18
We want not to care about test infrastructure
We want not to care about what cloud to use
We want not to care about what CI tool to use
We want fast tests
We want fail tolerance tests
We want cost effective infrastructure
20. Report portal
• Real-time analytics
• Asynchronous real-time
reporting
• Visualization of auto test
results
• Machine Learning
• REST API
• Major test frameworks
support
20