- Introduction to DevOps.
- Glossary.
- Continuous testing.
- The DevOps lifecycle.
- Where does QA fit in DevOps.
- Test-Driven Development (TDD).
- References.
Automate Salesforce Releases with DevOps: Crawl, Walk, Run!Susmitha Vakkalanka
#DevOps for #Salesforce is increasingly getting imperative as it delivers on the promise of faster, safer releases
In this episode of #DevopsHuddle, we covered :
- Achieving DevOps optimization and CI/CD best practices for salesforce releases
- Why backup and recovery play a key role in Salesforce DevOps
- How to package metadata and object types into Dev, Test, and Production
- How to get better code security along with faster deployments
- And how to get governance and visibility for all your Salesforce pipelines
Who’ll primarily benefitted from this? DevOps Evangelists, Salesforce Developers, Automation Architects, Release Managers & Security Engineers!
***** DevOps Masters Program : https://www.edureka.co/masters-progra... *****
This tutorial on DevOps testing will help you understand how Continuous Testing takes place in the DevOps lifecycle and which tools are used for the same. The following topics have been covered in this video:
1. What Is Continuous Testing?
2. Various Testing Types
3. Tools Used For Continuous Testing
4. Demo: Maven, Selenium, TestNG & Jenkins Integration
Agile-plus-DevOps Testing for Packaged ApplicationsWorksoft
Guest presenter Forrester VP and Principal Analyst Diego Lo Giudice joined Worksoft Agile expert Chris Kraus for an exploration of the state of adoption of Agile, DevOps and test automation in the enterprise packaged application space. Learn why it is important to include testing of packaged apps and mainframe as part of an Agile-plus-DevOps strategy and how the adoption of Agile and DevOps varies for packaged vs. custom-built applications. View the recorded event at: https://www.worksoft.com/downloads/worksoft-forrester-webinar-agile-plus-devops-testing-for-packaged-applications.
Accelerate Agile Development with Service Virtualization - Czech TestParasoft
Process deadlocks are endemic to parallel and Agile development environments, where different teams are simultaneously working on interconnected system components—and each team needs to access the others' components in order to complete its own tasks. But when a team ends up waiting for access to dependencies, agility is stifled. One way to break free of these constraints is to use service virtualization to simulate interactions between the application under test and the dependencies that are unavailable or difficult-to-access for dev/test purposes. This presentation explains how service virtualization can help you eliminate the delays created by unavailable and evolving dependencies so you can save time, money, and effort. It will also share case studies that show specific cases where service virtualization helped organizations compress their testing cycles to keep pace with the demands of Agile development.
Building Quality into Your DevSecOps PipelinesInflectra
This is a presentation on how to build quality into your DevOps/DevSecOps pipelines. The presentation covers:
- Software Quality through End-to-end Traceability: How SpiraPlan Enables Progress Tracking and Visualization through Dashboards - Adam Sandman, Inflectra
- Quality Gates: Forcing Functions to Bake Quality In - Jeffery Payne, Coveros
- Delivering Quality Through Your DevSecOps Pipeline Using SpiraPlan - Hugo Sanchez, Coveros.
The presentation was created on Feb 4, 2021.
Microservices have recently attracted a lot of attention for being the architecture of choice for companies like Uber, Netflix, Spotify, and Amazon. Undoubtedly, this architectural approach has distinct impacts across the SDLC. Many of the core benefits associated with the adoption of microservices actually introduce significant quality challenges. For example:
An increased number of dependencies
Parallel development roadblocks
Impacts to the traditional methods of testing
More potential points of failure
Automate Salesforce Releases with DevOps: Crawl, Walk, Run!Susmitha Vakkalanka
#DevOps for #Salesforce is increasingly getting imperative as it delivers on the promise of faster, safer releases
In this episode of #DevopsHuddle, we covered :
- Achieving DevOps optimization and CI/CD best practices for salesforce releases
- Why backup and recovery play a key role in Salesforce DevOps
- How to package metadata and object types into Dev, Test, and Production
- How to get better code security along with faster deployments
- And how to get governance and visibility for all your Salesforce pipelines
Who’ll primarily benefitted from this? DevOps Evangelists, Salesforce Developers, Automation Architects, Release Managers & Security Engineers!
***** DevOps Masters Program : https://www.edureka.co/masters-progra... *****
This tutorial on DevOps testing will help you understand how Continuous Testing takes place in the DevOps lifecycle and which tools are used for the same. The following topics have been covered in this video:
1. What Is Continuous Testing?
2. Various Testing Types
3. Tools Used For Continuous Testing
4. Demo: Maven, Selenium, TestNG & Jenkins Integration
Agile-plus-DevOps Testing for Packaged ApplicationsWorksoft
Guest presenter Forrester VP and Principal Analyst Diego Lo Giudice joined Worksoft Agile expert Chris Kraus for an exploration of the state of adoption of Agile, DevOps and test automation in the enterprise packaged application space. Learn why it is important to include testing of packaged apps and mainframe as part of an Agile-plus-DevOps strategy and how the adoption of Agile and DevOps varies for packaged vs. custom-built applications. View the recorded event at: https://www.worksoft.com/downloads/worksoft-forrester-webinar-agile-plus-devops-testing-for-packaged-applications.
Accelerate Agile Development with Service Virtualization - Czech TestParasoft
Process deadlocks are endemic to parallel and Agile development environments, where different teams are simultaneously working on interconnected system components—and each team needs to access the others' components in order to complete its own tasks. But when a team ends up waiting for access to dependencies, agility is stifled. One way to break free of these constraints is to use service virtualization to simulate interactions between the application under test and the dependencies that are unavailable or difficult-to-access for dev/test purposes. This presentation explains how service virtualization can help you eliminate the delays created by unavailable and evolving dependencies so you can save time, money, and effort. It will also share case studies that show specific cases where service virtualization helped organizations compress their testing cycles to keep pace with the demands of Agile development.
Building Quality into Your DevSecOps PipelinesInflectra
This is a presentation on how to build quality into your DevOps/DevSecOps pipelines. The presentation covers:
- Software Quality through End-to-end Traceability: How SpiraPlan Enables Progress Tracking and Visualization through Dashboards - Adam Sandman, Inflectra
- Quality Gates: Forcing Functions to Bake Quality In - Jeffery Payne, Coveros
- Delivering Quality Through Your DevSecOps Pipeline Using SpiraPlan - Hugo Sanchez, Coveros.
The presentation was created on Feb 4, 2021.
Microservices have recently attracted a lot of attention for being the architecture of choice for companies like Uber, Netflix, Spotify, and Amazon. Undoubtedly, this architectural approach has distinct impacts across the SDLC. Many of the core benefits associated with the adoption of microservices actually introduce significant quality challenges. For example:
An increased number of dependencies
Parallel development roadblocks
Impacts to the traditional methods of testing
More potential points of failure
Continuous Testing- A Key Ingredient for Success in Agile & DevOpsSmartBear
Cigniti discusses how continuous testing can help your organization be successful in Agile and DevOps. Their original presentation was given as a part of our first annual user conference, SmartBear Connect
Drive Faster Quality Insights through Customized Test AutomationPerfecto by Perforce
When making the transformation to DevOps and agile, many organizations find it hard to meet tough product release schedules and to cope with large data sets. Triaging failures across multiple platforms has become tedious and time-consuming.
Reporting test-driven development (RTDD) is an innovative approach to agile testing that helps you write and implement tests with the end in mind (i.e., the test reports). RTDD puts structure, governance, and advanced capabilities into your test automation strategy.
RTDD enables the entire product team to collaborate and make data-driven decisions in real time, resulting in test scenarios and test suites that are structured and easy to manage.
In the world of digital transformation and Agile methodologies, change is the only constant. And with change comes risk. That's why adopting a test automation strategy is key to accelerating critical app projects - dramatically reducing risk. During this webinar we discussed how you can get started.
Arthur Hicken Chief Evangelist of Parasoft @ PSQT 2016 discusses:
• What the shift from automated to
continuous means
• How disruption requires changes to how
we test software
• Addressing gaps between Dev and Ops
• Technologies that enable Continuous
Many companies are investing heavily in automation. Good high quality automation is key as companies move towards a successful DevOps model. The problem is that automation scripts can be very brittle and tend to not cover or test the entire application. They are also very difficult and time consuming to keep up to date.
This presentation will include a demonstration of how to design, create and update automation scripts as well as their associated test data and end points.
On this webcast learn how to make automated testing a reality.
Manual Monitoring Slows Deployment and Introduces Risk
How often do you update your applications?
“We deploy multiple times per day” seems to be the new badge of honor for DevOps.
But what you don’t often hear about are the problems caused by process acceleration as a result of continuous integration and continuous deployment (CI/CD).
Rapid introduction of performance problems and errors
Rapid introduction of new endpoints causing monitoring issues
Lengthy root cause analysis as number of services expand
When implementing CI/CD, ANY manual intervention slows down the entire pipeline. You can’t achieve complete CI/CD without automating your monitoring processes (just like you did for integration, testing, and deployment).
Chef Automating Everything-AWS-PubSec-SAO-WashDC_2018Larry Eichenbaum
Learn about how the Chef Automate platform helps enable security, audit, and compliance staff to become engaged in DevOps activities early on by performing infrastructure compliance validation as part of the initial development cycles.
Presentation on Gene Kims - DevOps Enterprise Summit 2021. Anders presents a journey from journey from Monolithic applications to Microservices, On-Premise hosting to Public Cloud and from 3 production deployments per year to 30+ per
day.
Continuous Integration is a more modern approach to development. It delivers clear value around managing code changes and has been quickly and widely adopted by teams building custom applications. Learn the core principles of Continuous Integration and how they apply to running end-to-end regression tests for SAP.
Augusta’s DevOps solutions adopt end to end approach that enforces communication, collaboration, integration and automation that removes bottlenecks in software development and ensuring agile delivery for software-driven innovation.
Augusta’s DevOps Framework fills the gaps that exists between software development, quality assurance, and IT operations thereby enabling you to quickly produce software products and services, while improving operational performance significantly
Augusta helps you optimize your development and delivery pipelines. Get enterprise cloud architecture expertise and DevOps strategy to bring your innovations to market faster.
Automated release management for salesforceAutoRABIT
AutoRABIT delivers the fastest CI/CD solution custom-built for Salesforce. AutoRABIT can scale with
growing teams and handle the complexity of coordinating across multiple Salesforce orgs. AutoRABIT is built for Salesforce with guaranteed success for deployment and built in support for security, risk and compliance management.
5 Principles to Managing Your Application Lifecycle with SpiraTeamAdam Sandman
On January 24, 2019, Inflectra and #SriramRajagopalan offered to a group of aspiring agilists a webinar on Five Principles to Managing Your Application Lifecycle with SpiraTeam®. The webinar is part of Inflectra's certificate course called: Journey Into Agile With Inflectra - A Free Webinar Course.
What is DevOps?
Why DevOps?
How DevOps works?
DevOps impacts in testing.
Continuous Delivery.
Continuous Integration.
Continuous Testing and Automated Deployment.
Continuous Testing- A Key Ingredient for Success in Agile & DevOpsSmartBear
Cigniti discusses how continuous testing can help your organization be successful in Agile and DevOps. Their original presentation was given as a part of our first annual user conference, SmartBear Connect
Drive Faster Quality Insights through Customized Test AutomationPerfecto by Perforce
When making the transformation to DevOps and agile, many organizations find it hard to meet tough product release schedules and to cope with large data sets. Triaging failures across multiple platforms has become tedious and time-consuming.
Reporting test-driven development (RTDD) is an innovative approach to agile testing that helps you write and implement tests with the end in mind (i.e., the test reports). RTDD puts structure, governance, and advanced capabilities into your test automation strategy.
RTDD enables the entire product team to collaborate and make data-driven decisions in real time, resulting in test scenarios and test suites that are structured and easy to manage.
In the world of digital transformation and Agile methodologies, change is the only constant. And with change comes risk. That's why adopting a test automation strategy is key to accelerating critical app projects - dramatically reducing risk. During this webinar we discussed how you can get started.
Arthur Hicken Chief Evangelist of Parasoft @ PSQT 2016 discusses:
• What the shift from automated to
continuous means
• How disruption requires changes to how
we test software
• Addressing gaps between Dev and Ops
• Technologies that enable Continuous
Many companies are investing heavily in automation. Good high quality automation is key as companies move towards a successful DevOps model. The problem is that automation scripts can be very brittle and tend to not cover or test the entire application. They are also very difficult and time consuming to keep up to date.
This presentation will include a demonstration of how to design, create and update automation scripts as well as their associated test data and end points.
On this webcast learn how to make automated testing a reality.
Manual Monitoring Slows Deployment and Introduces Risk
How often do you update your applications?
“We deploy multiple times per day” seems to be the new badge of honor for DevOps.
But what you don’t often hear about are the problems caused by process acceleration as a result of continuous integration and continuous deployment (CI/CD).
Rapid introduction of performance problems and errors
Rapid introduction of new endpoints causing monitoring issues
Lengthy root cause analysis as number of services expand
When implementing CI/CD, ANY manual intervention slows down the entire pipeline. You can’t achieve complete CI/CD without automating your monitoring processes (just like you did for integration, testing, and deployment).
Chef Automating Everything-AWS-PubSec-SAO-WashDC_2018Larry Eichenbaum
Learn about how the Chef Automate platform helps enable security, audit, and compliance staff to become engaged in DevOps activities early on by performing infrastructure compliance validation as part of the initial development cycles.
Presentation on Gene Kims - DevOps Enterprise Summit 2021. Anders presents a journey from journey from Monolithic applications to Microservices, On-Premise hosting to Public Cloud and from 3 production deployments per year to 30+ per
day.
Continuous Integration is a more modern approach to development. It delivers clear value around managing code changes and has been quickly and widely adopted by teams building custom applications. Learn the core principles of Continuous Integration and how they apply to running end-to-end regression tests for SAP.
Augusta’s DevOps solutions adopt end to end approach that enforces communication, collaboration, integration and automation that removes bottlenecks in software development and ensuring agile delivery for software-driven innovation.
Augusta’s DevOps Framework fills the gaps that exists between software development, quality assurance, and IT operations thereby enabling you to quickly produce software products and services, while improving operational performance significantly
Augusta helps you optimize your development and delivery pipelines. Get enterprise cloud architecture expertise and DevOps strategy to bring your innovations to market faster.
Automated release management for salesforceAutoRABIT
AutoRABIT delivers the fastest CI/CD solution custom-built for Salesforce. AutoRABIT can scale with
growing teams and handle the complexity of coordinating across multiple Salesforce orgs. AutoRABIT is built for Salesforce with guaranteed success for deployment and built in support for security, risk and compliance management.
5 Principles to Managing Your Application Lifecycle with SpiraTeamAdam Sandman
On January 24, 2019, Inflectra and #SriramRajagopalan offered to a group of aspiring agilists a webinar on Five Principles to Managing Your Application Lifecycle with SpiraTeam®. The webinar is part of Inflectra's certificate course called: Journey Into Agile With Inflectra - A Free Webinar Course.
What is DevOps?
Why DevOps?
How DevOps works?
DevOps impacts in testing.
Continuous Delivery.
Continuous Integration.
Continuous Testing and Automated Deployment.
How to go from waterfall app dev to secure agile development in 2 weeks Ulf Mattsson
Waterfall is based on the concept of sequential software development—from conception to ongoing maintenance—where each of the many steps flowed logically into the next.
Join this webinar presentation to learn:
- Why DevOps cannot effectively work in waterfall
- How to use DevOps tools to optimize processes in either development or operations through automation
We will also discuss what is needed to support full DevOps
Building an In-House DevOps Service Platform for Mobility Solutions | Mindtree AnikeyRoy
Mindtree's DevOps service helps clients build an in-house DevOps model platforms within an organisation using open-source DevOps tools. Click here to know more.
ROLE OF iSAFE/iMobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENTIndium Software
IP-led test automation framework supported by blueprint
for product development in Devops environment can
ensure automation in the true sense.
DevOps is fast becoming adopted as the environment for product
development. It facilitates closer integration of development and operations
teams, reducing the time needed to develop and deploy a product. However,
it is still in its early stages and the teams continue to work in silos due to the
different kinds of tools they need suited to their needs.
An IP-driven testing framework like iSAFE can be the bulwark on which the development, testing and operations teams can integrate more seamlessly,
as it provides one key feature needed when handling such a comprehensive
environment – traceability. The other advantages, of course, are reusability,
automated alerts and shorter testing periods, thus aiding in the quick time-to-market
needs of the organizations.
If you want to get training in Devops V CUBE Provide Best Software Training in Hyderabad with Job Oriented Training , Placement Assistance ,Career Guidance Programs and many more for more informations visit www.vcubesoftsolutions.com
DevOps is an approach where one size does not fit all organizations. It involves the constant adaption of new technologies and tools for a seamless experience. The significant advancements in the tools used for DevOps implementation are a sign that DevOps will continue to evolve in the future. For example, Kubernetes is now used along with Docker to improve automated deployment and management. DevOps has further branched out to services like DevSecOps, QAOps, SecDevOps, MLOps , and much more.
How to increase your writing skills.
Review of the Wiki-how article with the same title.
You can find the full article here:
http://www.wikihow.com/Improve-Your-Writing-Skills
Machine learning limits (What can Machine Learning do and what it can't)Moataz Mahmoud
Doubtless, Machine Learning is one of the hottest research topics in computer science world nowadays. But why it's so important. And what can it do and what not?
Inside this presentation you can find your answer ...
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overview
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Testing in the new age of DevOps
1. TESTING IN THE NEW AGE OF
DEVOPS
Moataz Mahmoud Ahmed
Junior QC developer at xWare
2. AGENDA
• Introduction to DevOps.
• Glossary.
• Continuous testing.
• The DevOps lifecycle.
• Where does QA fit in DevOps.
• Test-Driven Development (TDD).
• References.
4. INTRODUCTION TO DEVOPS.
• DevOps is a clipped compound of
"software DEVelopment" and "information
technology OPerationS“.
• DevOps is a term used to refer to a set of
practices that emphasize the collaboration and
communication of both software
developers and information technology (IT)
professionals while automating the process
of software delivery (deployment) and
infrastructure changes.
5. INTRODUCTION TO DEVOPS CONTD.
• Because DevOps is a cultural shift and collaboration between development, operations
and testing, there is no single "DevOps tool": it is rather a set which is called "DevOps
toolchain", consisting of multiple tools.
• Generally, DevOps tools fit into one or more of these categories, which is reflective of
key aspects of the software development and delivery process:
1. Code — Code development and review, version control tools, code merging.
2. Build — Continuous integration tools, build status.
3. Test — Continuous testing tools that provide feedback on business risks.
4. Package — Artifact repository, application pre-deployment staging.
5. Release — Change management, release approvals, release automation.
6. Configure — Infrastructure configuration and management, Infrastructure as Code tools.
7. Monitor — Applications performance monitoring, end–user experience.
6. INTRODUCTION TO DEVOPS CONTD.
• There are many problems DevOps is trying to solve which are:
1. Shift Operations or IT tasks earlier in the process.
2. To leverage a bunch of newer tools and technologies to automate operations
tasks, like provisioning and migrating code, leveraging these tools.
3. Have everyone on the product team communicate and collaborate much more
and earlier.
4. To have the product be ready to be deployed—in a consistent state of readiness
so that the business can decide when new functionality goes to customers. And
ultimately, not be held back by Dev. or Ops being unstable and not prepared to
go with whatever is read.
7. • The specific goals of DevOps span the entire delivery pipeline. They include
improved deployment frequency, which can lead to:
1. Faster time to market.
• It means faster time to recovery (in the event of a new release crashing or otherwise
disabling the current system).
• It saves your time to work on other project though you can gain more profit.
2. Lower failure rate of new releases.
3. Shortened lead time between fixes.
4. Better quality of the final products.
5. As a result, gain customer satisfaction.
INTRODUCTION TO DEVOPS CONTD.
9. INFRASTRUCTURE AS CODE (IAC)
• It is the process of managing and provisioning computing infrastructure
(processes, bare-metal servers, virtual servers, etc.) and their configuration
through machine processable definition files, rather than physical
hardware configuration or the use of interactive configuration tools.
• The definition files may be in a version control system. This has been
achieved previously through either scripts or declarative definitions, rather
than manual processes, but developments as specifically titled “IaC” are
now focused on the declarative approaches. Infrastructure as Code
approaches have become increasingly widespread with the adoption of
cloud computing and Infrastructure as a Service (IaaS). IaC supports IaaS,
but should not be confused with it.
10. INFRASTRUCTURE AS A SERVICE
(IAAS)
• It is a standardized, highly automated offering, where
compute resources, complemented by storage and
networking capabilities are owned and hosted by a service
provider and offered to customers on-demand. Customers
are able to self-provision this infrastructure, using a Web-
based graphical user interface that serves as an IT operations
management console for the overall environment. API
access to the infrastructure may also be offered as an
option.
11. ENVIRONMENT AS A SERVICE
(EAAS)
• Environment-as-a-Service, often referred to as IaaS Plus,
extends the traditional IaaS ecosystem into the application
development space. Here advanced automation is layered
on top of the existing IaaS instance to not only configure
servers for a particular application, but also to deploy and
test all the other components needed to run a given
application.
12. CONTINUOUS DEVELOPMENT
• It’s a software development practice in which every code change
goes through the entire pipeline and is put into production,
automatically, resulting in many production deployments every
day.
• With Continuous Delivery your software is always release-ready,
yet the timing of when to push it into production is a business
decision, and so the final deployment is a manual step.
• Continuous Deployment mandates Continuous Delivery, but the
opposite is not required.
13. CONTINUOUS INTEGRATION
• It’s a software engineering practice in which the changes made by
developers to working copies of code are added to the mainline code base
on a frequent basis, and immediately tested.
• The goal is to provide rapid feedback so that, if a defect is introduced into
the mainline, it can be identified quickly and corrected as soon as possible.
• In the end, well implemented CI reduces the cost of software development
and helps speed time to market.
• What’s this step is doing is it integrates every single changed component at
this build in the whole system.
14. CONTINUOUS DELIVERY
• Is a software engineering approach in which teams produce software in short
cycles, ensuring that the software can be reliably released at any time.
• It aims at building, testing, and releasing software faster and more frequently.
• What’s this step is doing is confirming that the integrated components in the
previous stage are ready to be tested now. This is done by running unit tests,
collecting the release notes and other documents, versioning the new build,
and some other activities.
• There are many well known tools like Docker, Jenkins, Puppet, and Vagrant
are often used and frequently referenced in DevOps tooling.
15. CONTINUOUS TESTING
• It is the process of executing automated tests as part of the software
delivery pipeline to obtain immediate feedback on the business risks
associated with a software release candidate.
• Because CI detects deficiencies early on in development, defects are
typically smaller, less complex, and easier to resolve.
• Once the integration is done, they would do unit tests on the integrated
code. They may run other tests such as white box security tests, code
performance tests, etc. All needed tests are running here.
• In the next section of this presentation, there are much more details
about continuous testing.
16. CONTINUOUS MONITORING
• In Production, the Ops team manages and ensures that the application is
performing as desired and the environment is stable via Continuous Monitoring.
While the Ops teams have their own tools to monitor their environments and
systems, they need to ensure that the applications are performing at optimal
levels – down to levels lower than system monitoring tools would allow.
• This requires that Ops teams use tools that can monitor application performance
and issues.
• It may also require that they work with Dev. to build self monitoring or analytics
gathering capabilities right into the applications being built. This would allow for
true end-to-end monitoring – continuously.
19. CONTINUOUS TESTING CONTD.
• When I think of Continuous Testing I
think of the Lean principle, quality
at every step. When developers
commit new code, test it! When the
product gets integrated, test it!
When the product gets moved to
any new environment, like the test
environment, staging environment
or production, test it!
20. CONTINUOUS TESTING CONTD.
• There are three important parts here:
1. The build delivered by Development.
2. The deployment on infrastructure handled by OPS/IT.
3. The customers who use the apps/system.
• Test teams must:
- Have strong knowledge of these three parts.
- Know the goals of testing at each part.
- Be able to design great tests for each part.
- Have the ability to automate these tests.
21. CONTINUOUS TESTING CONTD.
• Tests can be designed and built for successful continuous integration first, and expand that
to continuous testing by knowing the right things to do, staying focused on a few key
points and most importantly, automating as smartly as possible.
• DevOps for Testers is focusing on continuous testing.
• When people describe DevOps as a “shift left,” one reference is to running performance
tests early and not waiting until the end of development.
• This “shift left” will uncover bugs earlier which will save time and cost for your company.
• This is an important example because it illustrates the many pieces of DevOps.
• The production environment can be virtualized and spun up at any moment with a VM or
in the cloud and have full performance tests run early in development.
22. CONTINUOUS TESTING CONTD.
• Your team has to be great at Agile. Scrum butts and Agile Falls will fail in
DevOps.
• A quick, Continuous Testing task overview is:
1. Start with an automated smoke test. Move these into CI build process tool.
2. Build bigger regression suites. Move these into CI build process tool.
3. Grow in levels of awesomeness of CI; Run smoke and/or regression on multiple VMs.
4. Easy and effective reporting back to the organization.
5. Use containers and/or virtualization for data and full production like environments.
6. Distribute automated tests into different suites with varying goals on different
environments. Use VMs for various environments to grow automation, coverage, speed,
monitoring and feedback to the team.
28. WHERE DOES QZ FIT IN DEVOPS?
• DevOps QA is about preventing defects, not finding them:
• QA takes a critical role in this organizational structure because they have the visibility and
the directive to push code out when it is working, and roll it back
when it is not.
• This has several implications:
• QA owns continuous improvement and quality tracking across the entire development cycle.
• Test are code.
• Anything that can be automated, should be automated.
• Testers don’t just find bugs. They look for any opportunity to improve repeatability and
predictability of them.
• Beyond functional testing: automation for load testing, stress testing, and performance
testing.
29. WHAT YOU NEED TO CONSIDER BEFORE
YOU JUMP TO CONTINUOUS TESTING…
1. Consider the platforms and devices.
• What are the platforms and devices that each of your products run over?
2. Consider the environment.
• Consider the environment that will be in the customer side and try to virtualize it.
3. Consider the tool.
• There are many available tools. You should consider a tool that’s scalable, and can be run on a variety
of machines and environments.
4. Consider the number of tests.
• It’s better to cover more scenarios in less number of tests to save time in recording and running them.
30. HOW TO MAKE THE JUMP TO DEVOPS.
1. Automate more, automate faster.
• You need to automate not only your testing, but other tasks that were done by other teams. And yes,
automate faster to save the cost and raise the quality.
2. Build a solid framework.
• You will need a framework with reusable and low maintenance functions.
3. Choose effective methods.
• Automating traditional test scripts doesn’t work anymore. Consider Action based testing, test-driven
development, and A/B testing.
• Once you have efficient Agile practices, good low-maintenance test automation and Continuous
Integration processes in place, then Continuous Testing and DevOps is the next step in achieving hyper
efficiency.
32. TEST-DRIVEN DEVELOPMENT (TDD)
• Test-driven development (TDD) is a software development
process that relies on the repetition of a very short development
cycle: requirements are turned into very specific test cases, then the
software is improved to pass the new tests, ONLY.
• The most important concept here is that testing team starts its work
before the development. And it’s the true meaning of “shift left” in
continuous testing.
• This approach prevents software development that allows software to
be added which is not proven to meet requirements.
33. TEST-DRIVEN DEVELOPMENT LIFECYCLE
1. Add a test: Each new feature begins with that the developer writes a test that defines a function or
improvements of a function, which should be very concise.
2. Run this test: At the first run, this test will fail due to there are no code to make it pass! So now it’s
the time to write the code to pass this failed test.
3. Write the code: The main target at this step is to write code which passes the test. No matter how
elegant or efficient it’s. Just pass the test and check this step as completed.
4. Re-run the previously failed test: Now we will re-run the failed test. If it’s passed so you have
done. If not, keep looping between steps #3 and #4 until it’s done.
5. Refactor code: It’s the time now to refactor your code now. The previously written code passed
the test successfully, but it may not be the most efficient code.
34. TEST-DRIVEN DEVELOPMENT LIFECYCLE CONTD.
6. Add new tests: You can now move on and write new test for a new feature or requirement.
7. Run the new tests: This test will fail expectedly, so you move on to write some code to
make it pass. If these new tests pass from the first run, so there is a design problem here!
This means that you built the features which make it pass in the previous step and this is
out of the right flow.
8. Write more code: Write code to pass the new tests.
9. Run all the tests including the new ones: The new tests should pass now. If not keep
writing code until it pass. All the old tests should pass also, it’s for the sake of integration.
If not, stop working and fix the failed tests.
10. Refactor code.
Repeat…
37. NOTES ABOUT TDD
• The size of the steps should always be small, with as few as 1 to 10 edits
between each test run.
• If new code does not rapidly satisfy a new test, or other tests fail unexpectedly,
the programmer should undo or revert in preference to excessive debugging.
• Continuous integration helps here by providing revertible checkpoints.
• When using external libraries, there is some reason to believe that the library is
buggy or is not sufficiently feature-complete to serve all the needs of the
software under development.
• This process is also called Red-Green factorization. Red refers to the failed tests,
green refers to the passed ones, and factorization refers to the process of
refactoring the code each time it passes the tests.
38. NOTES ABOUT TDD CONTD.
• Some tend to see TDD as a game of ping pong (or table tennis). The game is
very fast. They tend not to spend more than a minute on either side of the table
(test and implementation). Write a short test and run it (ping), write the
implementation and run all tests (pong), write another test (ping), write
implementation of that test (pong), refactor and confirm that all tests are
passing (score), repeat. Ping, pong, ping, pong, ping, pong, score, serve again.
Do not try to make the perfect code. Instead, try to keep the ball rolling until
you think that the time is right to score (refactor).
• Very useful tool when working in the TDD fashion are watchers. They are
frameworks or tools that are executed before we start working and are
watching for any change in the code. When such a change is detected, all the
tests are run.
39. NOTES ABOUT TDD CONTD.
• Only trust those tests which you saw in both cases (fail and pass).
• The most important part of TDD is the middle D. You let the
tests drive you. The tests tell you what to do, what to do next,
when you are done. They tell you what the API is going to be, what
the design is.
• This is important: TDD is not about writing tests first. There are
plenty of projects that write tests first but don't practice TDD.
Writing tests first is simply a prerequisite for being able to let the
tests drive the development.
40. USE TESTS AS DOCUMENTATION
• Another very useful side effect of TDD (and well structured tests in general) is
documentation.
• In most cases, it is much easier to find out what the code does by looking at
tests than the implementation itself.
• Additional benefit that other types of documentation cannot provide is that
tests are never outdated.
• If there is any discrepancy between tests and the implementation code, tests
fail. Failed tests mean inaccurate documentation.
• If your tests aren’t that so clear or your product have much details which are
needed to be translated from code to words, you can use tests as main
headlines for the documentation.
41. REFERENCES
• Test-Driven Development article: (Wikipedia).
• DevOps article: (Wikipedia).
• TDD testers.
• Technology Conversation
• Intro to TDD
• JavaScript testing:
• Tests as documentation:
• Testing in the new age of DevOps.