A test-driven development experience report based on the 10+ year history of the Jenkins git plugin. Provides examples and heuristics for cases where test-driven development may not be the most effective use of time.
The Journey to Devops: From Waterfall to Continuous IntegrationSauce Labs
The document discusses the journey from traditional waterfall development processes to continuous delivery using DevOps principles. It describes how the software delivery chain is evolving to emphasize automation, faster releases, and shifting testing left into the development process. QA's role also evolves from separate and manual testing to becoming more technical and integrating testing automation into the continuous integration and delivery pipelines. The presentation provides strategies for organizations adopting these changes and shares examples from companies that have made the transition.
Voxxed Days Thessaloniki 2016 - Continuous Delivery: Jenkins, Docker and Spri...Voxxed Days Thessaloniki
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 using continuous integration with Jenkins to run automated tests on code commits. It advocates treating servers like "cattle, not pets" by using Docker containers with pre-built images from a registry for deployments. This allows applications to be deployed to different environments like staging and production more easily and consistently.
Recent and constant changes in technology have resulted in a transition from the traditional Center of Excellence model, to an agile development model, which has made its way into the mainstream and caused a shift in how testing, particularly performance testing, is done.
Join our Webinar to learn how a top tier manufacturer transformed their ability to deliver high quality projects, faster, by adapting their load testing to fit an agile development approach.
In this webinar you’ll learn:
Why you need to think differently about performance testing in an agile development environment
How to shift Performance Testing to the left in the development cycle
What adjustments to consider in your performance testing centers of excellence model
Technology platform considerations for faster, more collaborative load testing
Utopia Solutions Founder and CTO, Lee Barnes, will dive into tips and techniques for bringing effective performance testing to your agile organization. The SOASTA team will demonstrate how continuous, cloud-based testing makes it easier.
The document discusses an upcoming presentation by Pierre-Antoine Grégoire and Arnaud Héritier on DevOps. It includes their backgrounds and experiences. The agenda covers what DevOps is and is not, its origins, trends in DevOps tooling, and current trends in the DevOps space.
The document discusses continuous testing in DevOps. It introduces SOASTA and their products for load and performance testing (CloudTest) and mobile functional test automation (TouchTest). SOASTA advocates for continuous integration with small batches, version control, automation, and continuous feedback to align development and testing teams. The presentation provides examples of how SOASTA's clients implement continuous integration by running unit tests and load tests on every code change through Jenkins and addressing issues before deployment.
Tests for Every Branch Using CircleCI and Sauce Labs to Continuously Test CS ...Sauce Labs
In this webinar presentation, Brian Jordan gives a tour of Code.org’s continuous, automated cross-browser testing suite, newly integrated with CircleCI. Brian discusses how Code.org’s small engineering team approaches testing throughout the product development cycle, including a suite of cross-browser tests using Sauce Labs that now run for every single commit an engineer pushes to their feature branch.
The need for automated regression testing is most often associated with making sure code changes don’t break an app. Often ignored is the impact of data changes that are ongoing even after the code is frozen and the app is launched. Making sure that this ongoing data change (including changes to content and configuration data) does not impact app quality requires a continuous testing solution that includes support for powerful data driven testing capabilities.
In this webinar we will specifically look at the challenges in testing the types of changes that occur on a frequent basis in an eCommerce app.
Version Control in SOASTA 57 Spring Release
Video
“Everything as Code” is a key to moving to DevOps, providing visibility and repeatability in processes. To support this, we added Version Control to the SOASTA 57 Spring release. Come to this webinar to learn how to connect CloudTest to your Git-compatible version control system so you can:
Protect all your test assets as code with version control
Support local and distributed teams with remote access
Track changes to test artifacts, update to newer versions, or revert if needed
DevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CDDevOps_Fest
CI/CD process has been something your DevOps engineer purpose-built for your team. But with Kubernetes & cloud-native, that’s becoming “legacy.” The rising level of platform abstraction allows all the good practices that the industry has developed over time to be integrated, hidden, and simplified behind just one practice called “GitOps.” That simplified world is what Jenkins X enables.
We will discuss GitOps, Jenkins X, and how that combination drastically simplifies cloud-native web app development. You’ll understand why traditional DevOps is not suitable in a Kubernetes and cloud-native world, explore GitOps principles and discover how they facilitate high-velocity app development.
And finally, Kohsuke will make a fool of himself by talking about the future — now that Jenkins X simplifies the CD process, where is the next frontier?
The document discusses Arbetsförmedlingen's transition to using Jenkins Enterprise for continuous integration and delivery. It describes how they moved from many separate Jenkins instances to a consolidated setup with Jenkins Enterprise. They created templates for jobs, builders, and pipelines to promote reuse and standardization. This improved their development processes by enabling easier onboarding, cross-functional teams, and giving teams more control over their pipelines. Moving forward, they plan to use Jenkinsfiles and further improve the Jenkins service offered to development teams.
DOES SFO 2016 - Ray Krueger - Speed as a Prime DirectiveGene Kim
Speed as a Prime Directive
Ray Krueger, Vice President of Engineering, Hyatt Hotels Corporation
Hyatt is transforming into a technology company that delivers digital experiences in the Hospitality industry. We're applying Continuous Delivery in order to achieve our goals faster. In the process, we are simplifying and abstracting legacy environments and building a hospitality technology platform.
Using JMeter in CloudTest for Continuous TestingSOASTA
The document discusses SOASTA's Spring Release of their CloudTest product. Some key highlights include new features like network emulation, version control integration, and first class support for the popular open source load testing tool JMeter. It also covers trends around shifting performance testing left into development and right from development into production environments.
Performance Metrics Driven CI/CD - Introduction to Continuous Innovation and ...Mike Villiger
Deck used for my talk at the 2016 Spring User Conference in Toronto. Deck was followed up by a walkthrough of a Jenkins workflow that deployed to Cloud Foundry based on jmeter test results
The presentation about the fundamentals of DevOps workflow and CI/CD practices I presented at Centroida (https://centroida.ai/) as a back-end development intern.
The presentation on Performance Testing of Big Data Application was done during #ATAGTR2017, one of the largest global testing conference. All copyright belongs to the author.
Author and presenter : Harpreet Kaur Kahai
Legacy On Premise Apps Got You Down? No Problem - DevOps for AllMuly Gottlieb
With all the buzz about DevOps we tend to believe that everyone is doing it when in fact most companies are not because it’s hard to do in a legacy world. And according to IDC –the vast majority of enterprise apps are on-premise. And even in 2018, only 27.8% of the worldwide enterprise applications market are expected to be SaaS-based compared to 16.6% of the market in 2013.
During this talk I will point out the difficulties on achieving DevOps Zen for On-Premise applications, and the way that those in the silent majority can get out off the bench and into the DevOps game.
1. The document discusses metrics-driven continuous delivery and focuses on using metrics throughout the development and delivery process.
2. It emphasizes using architectural metrics in addition to functional metrics to help determine if a new version is likely to cause catastrophic failures before deploying to production.
3. It also argues that the concept of continuous delivery pipelines should extend beyond production deployments to help evaluate user experience and gain feedback on new features beyond just technical metrics.
Transitioning from Traditional to Modern QASauce Labs
Join the conversation as test engineering experts Ashley Hunsberger, Greg Sypolt, and DevOps industry analyst Chris Riley discuss the challenges and potential approaches when moving from traditional testing to modern testing practices.
View the recording at: https://saucelabs.com/resources/webinars/practical-tips-on-how-to-transition-from-traditional-to-modern-testing-practices
FishEye opens your source code repository and helps development teams keep tabs on what's going on using a web interface.
Crucible is a peer code review tool that allows teams to review, edit, comment and record outcomes.
The document discusses continuous delivery and DevOps practices for software development. It notes that the objective is to achieve 50 production deployments per day with no service impact through automation, continuous integration, testing pipelines, and a culture of collaboration and shared responsibility across functions. It emphasizes that culture and people are more important than processes and tools for successful continuous delivery.
Join us for this webinar that will introduce you to the latest mobile testing technology and processes implemented by Forbes Fortune 5 Companies and the Top 10 Internet Retailers, reducing time to market and giving back valuable time to your business with every test cycle.
With the implementation of leading technology, people and processes, our customers have turned taxing four-week long test cycles to simple overnight automation.
Give us an hour and let us show you the seven steps on the path to successful Mobile Test Automation.
Topics we will cover will include:
1. Know your User
2. Know your App
3. Know your Matrix
4. Know your Devices
5. Know your plan to Automate
6. Know your Performance
7. Know your Edge
This document discusses agile requirements management and how it can be implemented using Serena Dimensions RM. Some of the key challenges discussed include handling requirements from both agile and waterfall projects, maintaining a single source of truth for requirements, and providing end-to-end visibility. The document outlines how Serena Dimensions RM allows for a bi-modal approach that supports both traditional and agile requirements within the same data model. It provides examples of agile artifacts like product and sprint backlogs that can be implemented using flexible class definitions. Traceability is also maintained between agile and traditional requirements.
Perforce - Under New Management by Konrad LitwinPerforce
Perforce announced new management and leadership changes. Janet Dryer was named CEO, and Tim Russell was appointed Chief Product Officer, bringing experience from NetApp. The company is focused on providing world-class customer support through quality assurance practices and a deep technical talent base. Perforce has also seen accomplishments like growth in its enterprise Git solution and code review usage.
In this presentation you will learn how Farm Credit Services of America/Frontier Farm Credit transformed their quality practices and tooling to bring visibility and consistency to Enterprise Quality, including: testing as a team approach, creating an automated test architecture, measuring progress with dashboards and standardizing on a set of testing tools.
This document describes the journey of a UK online betting company to implement a DevOps approach and build their own platform for continuous delivery. It discusses how they previously struggled with inconsistent tools and processes between development and operations. They started with continuous integration to establish common practices. They then automated the entire software delivery flow from development to production. To achieve this, they built their own platform using CloudStack for infrastructure provisioning, Chef for configuration management, and Cloudify for application deployment automation. This created a fully automated software delivery pipeline and common tools that could be consumed as a service across their organization.
Mary Newell from Cisco gave this talk at DevOpsDays Galway 2017:
Transitioning from a traditional software delivery approach to DevOps can be a daunting prospect. The list of challenges may appear overwhelming. Inevitably, this paradigm shift will be an adventure with many interesting and unforeseen changes along the way. This talk will outline one team's journey towards a DevOps culture, while still maintaining close links with teams working on more traditional delivery schedules.
Continuous Delivery without Significant Test AutomationMaaret Pyhäjärvi
All organisations aspiring agile don’t have a significant level of automated checks available. Deciding to start adding automation on top of legacy code is a long road to travel and while on route, releases will rely on more manual testing. Meanwhile, automating builds to a single click deploy already enables delivering.
This talk tells a story of going into mindset of continuous delivery of continuous releases to production without the level of test automation often seen as a key practice. You will learn from the changes we went through moving from monthly (scrum) to continuous (kanban) releases as we started delivering value in production in small incremental changes. The talk will help you see one route to a happy agile team with satisfied customers, where the recipe is built more around collaboration and smart exploratory testing than test automation to deliver a steady stream value.
Version Control in SOASTA 57 Spring Release
Video
“Everything as Code” is a key to moving to DevOps, providing visibility and repeatability in processes. To support this, we added Version Control to the SOASTA 57 Spring release. Come to this webinar to learn how to connect CloudTest to your Git-compatible version control system so you can:
Protect all your test assets as code with version control
Support local and distributed teams with remote access
Track changes to test artifacts, update to newer versions, or revert if needed
DevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CDDevOps_Fest
CI/CD process has been something your DevOps engineer purpose-built for your team. But with Kubernetes & cloud-native, that’s becoming “legacy.” The rising level of platform abstraction allows all the good practices that the industry has developed over time to be integrated, hidden, and simplified behind just one practice called “GitOps.” That simplified world is what Jenkins X enables.
We will discuss GitOps, Jenkins X, and how that combination drastically simplifies cloud-native web app development. You’ll understand why traditional DevOps is not suitable in a Kubernetes and cloud-native world, explore GitOps principles and discover how they facilitate high-velocity app development.
And finally, Kohsuke will make a fool of himself by talking about the future — now that Jenkins X simplifies the CD process, where is the next frontier?
The document discusses Arbetsförmedlingen's transition to using Jenkins Enterprise for continuous integration and delivery. It describes how they moved from many separate Jenkins instances to a consolidated setup with Jenkins Enterprise. They created templates for jobs, builders, and pipelines to promote reuse and standardization. This improved their development processes by enabling easier onboarding, cross-functional teams, and giving teams more control over their pipelines. Moving forward, they plan to use Jenkinsfiles and further improve the Jenkins service offered to development teams.
DOES SFO 2016 - Ray Krueger - Speed as a Prime DirectiveGene Kim
Speed as a Prime Directive
Ray Krueger, Vice President of Engineering, Hyatt Hotels Corporation
Hyatt is transforming into a technology company that delivers digital experiences in the Hospitality industry. We're applying Continuous Delivery in order to achieve our goals faster. In the process, we are simplifying and abstracting legacy environments and building a hospitality technology platform.
Using JMeter in CloudTest for Continuous TestingSOASTA
The document discusses SOASTA's Spring Release of their CloudTest product. Some key highlights include new features like network emulation, version control integration, and first class support for the popular open source load testing tool JMeter. It also covers trends around shifting performance testing left into development and right from development into production environments.
Performance Metrics Driven CI/CD - Introduction to Continuous Innovation and ...Mike Villiger
Deck used for my talk at the 2016 Spring User Conference in Toronto. Deck was followed up by a walkthrough of a Jenkins workflow that deployed to Cloud Foundry based on jmeter test results
The presentation about the fundamentals of DevOps workflow and CI/CD practices I presented at Centroida (https://centroida.ai/) as a back-end development intern.
The presentation on Performance Testing of Big Data Application was done during #ATAGTR2017, one of the largest global testing conference. All copyright belongs to the author.
Author and presenter : Harpreet Kaur Kahai
Legacy On Premise Apps Got You Down? No Problem - DevOps for AllMuly Gottlieb
With all the buzz about DevOps we tend to believe that everyone is doing it when in fact most companies are not because it’s hard to do in a legacy world. And according to IDC –the vast majority of enterprise apps are on-premise. And even in 2018, only 27.8% of the worldwide enterprise applications market are expected to be SaaS-based compared to 16.6% of the market in 2013.
During this talk I will point out the difficulties on achieving DevOps Zen for On-Premise applications, and the way that those in the silent majority can get out off the bench and into the DevOps game.
1. The document discusses metrics-driven continuous delivery and focuses on using metrics throughout the development and delivery process.
2. It emphasizes using architectural metrics in addition to functional metrics to help determine if a new version is likely to cause catastrophic failures before deploying to production.
3. It also argues that the concept of continuous delivery pipelines should extend beyond production deployments to help evaluate user experience and gain feedback on new features beyond just technical metrics.
Transitioning from Traditional to Modern QASauce Labs
Join the conversation as test engineering experts Ashley Hunsberger, Greg Sypolt, and DevOps industry analyst Chris Riley discuss the challenges and potential approaches when moving from traditional testing to modern testing practices.
View the recording at: https://saucelabs.com/resources/webinars/practical-tips-on-how-to-transition-from-traditional-to-modern-testing-practices
FishEye opens your source code repository and helps development teams keep tabs on what's going on using a web interface.
Crucible is a peer code review tool that allows teams to review, edit, comment and record outcomes.
The document discusses continuous delivery and DevOps practices for software development. It notes that the objective is to achieve 50 production deployments per day with no service impact through automation, continuous integration, testing pipelines, and a culture of collaboration and shared responsibility across functions. It emphasizes that culture and people are more important than processes and tools for successful continuous delivery.
Join us for this webinar that will introduce you to the latest mobile testing technology and processes implemented by Forbes Fortune 5 Companies and the Top 10 Internet Retailers, reducing time to market and giving back valuable time to your business with every test cycle.
With the implementation of leading technology, people and processes, our customers have turned taxing four-week long test cycles to simple overnight automation.
Give us an hour and let us show you the seven steps on the path to successful Mobile Test Automation.
Topics we will cover will include:
1. Know your User
2. Know your App
3. Know your Matrix
4. Know your Devices
5. Know your plan to Automate
6. Know your Performance
7. Know your Edge
This document discusses agile requirements management and how it can be implemented using Serena Dimensions RM. Some of the key challenges discussed include handling requirements from both agile and waterfall projects, maintaining a single source of truth for requirements, and providing end-to-end visibility. The document outlines how Serena Dimensions RM allows for a bi-modal approach that supports both traditional and agile requirements within the same data model. It provides examples of agile artifacts like product and sprint backlogs that can be implemented using flexible class definitions. Traceability is also maintained between agile and traditional requirements.
Perforce - Under New Management by Konrad LitwinPerforce
Perforce announced new management and leadership changes. Janet Dryer was named CEO, and Tim Russell was appointed Chief Product Officer, bringing experience from NetApp. The company is focused on providing world-class customer support through quality assurance practices and a deep technical talent base. Perforce has also seen accomplishments like growth in its enterprise Git solution and code review usage.
In this presentation you will learn how Farm Credit Services of America/Frontier Farm Credit transformed their quality practices and tooling to bring visibility and consistency to Enterprise Quality, including: testing as a team approach, creating an automated test architecture, measuring progress with dashboards and standardizing on a set of testing tools.
This document describes the journey of a UK online betting company to implement a DevOps approach and build their own platform for continuous delivery. It discusses how they previously struggled with inconsistent tools and processes between development and operations. They started with continuous integration to establish common practices. They then automated the entire software delivery flow from development to production. To achieve this, they built their own platform using CloudStack for infrastructure provisioning, Chef for configuration management, and Cloudify for application deployment automation. This created a fully automated software delivery pipeline and common tools that could be consumed as a service across their organization.
Mary Newell from Cisco gave this talk at DevOpsDays Galway 2017:
Transitioning from a traditional software delivery approach to DevOps can be a daunting prospect. The list of challenges may appear overwhelming. Inevitably, this paradigm shift will be an adventure with many interesting and unforeseen changes along the way. This talk will outline one team's journey towards a DevOps culture, while still maintaining close links with teams working on more traditional delivery schedules.
Continuous Delivery without Significant Test AutomationMaaret Pyhäjärvi
All organisations aspiring agile don’t have a significant level of automated checks available. Deciding to start adding automation on top of legacy code is a long road to travel and while on route, releases will rely on more manual testing. Meanwhile, automating builds to a single click deploy already enables delivering.
This talk tells a story of going into mindset of continuous delivery of continuous releases to production without the level of test automation often seen as a key practice. You will learn from the changes we went through moving from monthly (scrum) to continuous (kanban) releases as we started delivering value in production in small incremental changes. The talk will help you see one route to a happy agile team with satisfied customers, where the recipe is built more around collaboration and smart exploratory testing than test automation to deliver a steady stream value.
WSO2Con USA 2017: Implementing a Modern API Management Solution that Benefits...WSO2
A few years ago, Brigham Young University (BYU) started a massive effort to replace the existing API management systems with a more modern, standard, and efficient solution. WSO2 products such as WSO2 API Manager and WSO2 Identity Server are at the core of this new solution. They expected to improve consumer experience and minimize the impact on existing development work. Along the way, they hit a few roadblocks including problems such as integrating with legacy systems, improving API discoverability changing authentication mechanisms, and re-designing API development and deployment processes.
This session will explore how they overcame these roadblocks by using the WSO2 products will discuss how they
Integrated new the API management solution with legacy systems via API mediation
Standardized API documentation across the organization
Improved API search and discoverability for consumers
Made API consumption simple by following industry standards
How well does your solution work?, How do you know how well your solution works? In this session, Mike will show you how developers of integration solutions can use Azure Application Insights to complement existing monitoring solutions to provide developers with an additional level of insight into the way their solutions behave in the real world and how this can be applied to the types of integration components which we normally build.
From Iterative to Continuous Delivery, PNSQC 2014John Ruberto
The business team complained that 3-week release cycle was not fast enough. We changed to a continuous delivery cycle, releasing stories as soon as they were ready to be released. This presentation was given at the Pacific Northwest Software Quality Conference in 2014. http://bit.ly/1xCuKWD
Adopting Continuous Integration in an Ops Groupcolleenfry
The document discusses adopting continuous integration (CI) practices in an operations (Ops) group at Turner Broadcasting Systems. It describes setting up a CI server to run automated tests on code commits, creating standardized build processes, and developing tools like DIB (Daniel In Box) to catch issues earlier. This encouraged more teams to adopt source code management and testing. Lessons learned include how in-process testing is important, providing upstream tests to downstream teams, and culture being a key factor in CI adoption.
- The document contains contact information and a summary of work experience for Aniruddha Mukherjee as a Senior Engineer for Netwoven India Pvt. Ltd. since August 2010.
- It details 22 projects between 2010-2013 involving testing of SharePoint applications for various clients.
- Responsibilities included requirement gathering, testing, issue logging, documentation and use of tools like Selenium and Eclipse.
Mitchell International has been providing property and casualty claims services for 70 years. Raj Makkar and Richard Fong discuss Mitchell's journey to continuous integration and delivery over the past 7 years. They moved from a slow "big build" process controlled by one team to a componentized approach where developers control builds. Today, builds occur on every check-in with immediate feedback. They use tools like Jenkins and Artifactory to manage over 1400 jobs per day across many platforms. Their goal is rapid, quality software delivery through a culture of automation, testing, and collaboration across teams.
Mitchell International has been providing property and casualty claims services for 70 years. They are moving to continuous integration and delivery (CI/CD) to rapidly build and deliver quality software. Previously they had a slow "big build" system and manual testing. Now developers maintain componentized builds and immediately get feedback on check-ins through automated testing. It has been a journey over 7 years from centralized systems to empowering developers. They use tools like Jenkins and Artifactory to run over 1400 jobs daily across many platforms and deliver capabilities as a service.
CipherCloud Microservice Meetup - Managing Services in a Lean StartupShobana Radhakrishnan
Shobana Radhakrishnan discusses how Mindflash manages service integration and implements a microservices architecture to achieve high uptime and continuous deployment in a lean startup. Mindflash relies on many external services and has evolved its deployment process from monthly major releases with fallouts to near-continuous deployment with high automation and alignment between test and production environments. Mindflash implements a microservices architecture with independent services communicating through APIs to improve scalability, deployment speed, and allow incremental improvements. This approach helps Mindflash continuously upgrade services while maintaining high performance and uptime.
Top 10 Lessons Learned from the Netflix API - OSCON 2014Daniel Jacobson
The document discusses lessons learned from Netflix's API strategy over time. It notes that Netflix started with a focus on growing a community of public developers but now prioritizes ensuring subscribers can stream. It also discusses separating concerns between API providers and consumers, embracing differences in audiences, being pragmatic over dogmatic in API decisions, enabling fast iteration, planning for failures, and scaling infrastructure to match growth.
The DevOps journey in an Enterprise - CoDe-Conf. Stockholm September 14, 2017Anders Lundsgård
The presentation about the DevOps transformation at Scania Connected Services. A journey that involve breakdown of a big monolithic application to smaller services and moving from an On-Prem hosting solution to the cloud.
Chris Munns, DevOps @ Amazon: Microservices, 2 Pizza Teams, & 50 Million Depl...TriNimbus
Keynote presentation from Vancouver's 2016 Canadian Executive DevOps & Cloud Summit on Thursday, May 5th.
Speaker: Chris Munns, Business Development Manager, DevOps at Amazon Web Services
Title: DevOps @ Amazon: Microservices, 2 Pizza Teams, & 50 Million Deploys a Year
Modern software testing and processes 2019Karim Fanadka
This document discusses modern functional testing and DevOps. It provides an overview of the speaker including their experience and role. It then discusses QA team structures, timelines versus tasks, and how QA needs to adapt to keep up with faster release cycles. Various testing approaches are presented including automation, manual testing, different test environments, API and integration testing. The importance of automation, regression testing and tracking work is emphasized to support continuous delivery.
Continuous Performance Testing and Monitoring in Agile DevelopmentNeotys
Continuous Performance testing and monitoring is the best way to ensure application performance with quicker development cycles. Balancing Agile and DevOps velocity with the need for ongoing performance testing and monitoring is essential. We call it Continuous Performance Validation.
1) The document discusses the lessons learned from adopting DevOps practices at a large scale for IBM z Systems software development.
2) It describes the journey of transforming over 20,000 developers through practices like continuous integration, automated testing, and collaboration tools.
3) Challenges included supporting mainframe environments, dispersed teams, legal requirements, and integrating many products; successes included improved quality, speed, and job satisfaction.
apidays LIVE Paris 2021 - Lessons from the API Stewardship Journey in Azure b...apidays
apidays LIVE Paris 2021 - APIs and the Future of Software
December 7, 8 & 9, 2021
Lessons from the API Stewardship Journey in Azure
Ryan Sweet, Principal Architect at Microsoft
#SPSBrussels 2017 vincent biret #azure #functions microsoft #flowVincent Biret
Slides of the session given at the SharePoint Saturday Brussels 2017 around Microsoft flow and Azure Functions. This session is an introduction to both services and how you can combine them
Training as Code - Applying CI/CD to trainingMark Waite
Creating technical training using continuous integration and continuous delivery principles. Create the slides, the labs, and the lab environments with automated scripts so that changes can be updated rapidly.
Slides from the Docker and Jenkins [as code] talk at DevOps World | Jenkins World 2019. Discusses Jenkins, Docker, configuration as code as a concept groovy configuration, and the Jenkins configuration as code plugin (JCasC)
DevOps World | Jenkins World 2019 "Thinking about Jenkins Security" presentation by Mark Waite, Wadeck Follonier and Meg McRoberts. Reviews Jenkins security concepts, common pitfalls, and the techniques to avoid those common pitfalls.
Jenkins World 2019 lightning talk presented by Mark Waite, Aug 14, 2019 in San Francisco. Describes challenges, accomplishments, and lessons learned while adding Java 11 support to Jenkins
Techniques to improve performance and disc use of Jenkins jobs that store their source code in git repositories. Presented as a lightning talk at Jenkins World 2019, August 14, 2019 by Mark Waite
This document discusses how Docker and Jenkins can be used together for continuous integration. It describes how Docker provides repeatable environments that reduce unintended variations, and how Jenkins pipelines allow for frequent integration that detects issues earlier. Specific examples show how Docker images can standardize environments for building, testing, and reproducing bugs, while multi-branch Jenkins pipelines enable testing proposed changes before merging.
The document discusses several Git techniques for reducing network transfer and storage requirements when using Git in large projects or continuous integration systems, including reference repositories, narrow refspecs, shallow clones, large file support, and sparse checkouts. It outlines the benefits and limitations of each technique, such as reducing network transfer and local storage needs but potentially limiting history or breaking workflows. The goal is to help optimize remote repositories, master servers that detect changes, and agent servers that perform builds and jobs.
Jenkins - Continuous Integration after Hudson, CruiseControl, and home builtMark Waite
This document discusses Jenkins, an open source tool for continuous integration. It describes how Jenkins can help improve productivity by detecting breaks sooner, reporting failures more clearly, and making progress more visible. The document outlines how Jenkins is easy to install, use, and extend with over 300 plugins. It provides examples of using Jenkins for various programming languages and tasks like version control, building, testing, analyzing code quality, and notifications. Finally, it explains how Jenkins can support team development through features like multi-configuration and multi-stage jobs, and swarms to dynamically allocate resources.
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...Andre Hora
Unittest and pytest are the most popular testing frameworks in Python. Overall, pytest provides some advantages, including simpler assertion, reuse of fixtures, and interoperability. Due to such benefits, multiple projects in the Python ecosystem have migrated from unittest to pytest. To facilitate the migration, pytest can also run unittest tests, thus, the migration can happen gradually over time. However, the migration can be timeconsuming and take a long time to conclude. In this context, projects would benefit from automated solutions to support the migration process. In this paper, we propose TestMigrationsInPy, a dataset of test migrations from unittest to pytest. TestMigrationsInPy contains 923 real-world migrations performed by developers. Future research proposing novel solutions to migrate frameworks in Python can rely on TestMigrationsInPy as a ground truth. Moreover, as TestMigrationsInPy includes information about the migration type (e.g., changes in assertions or fixtures), our dataset enables novel solutions to be verified effectively, for instance, from simpler assertion migrations to more complex fixture migrations. TestMigrationsInPy is publicly available at: https://github.com/altinoalvesjunior/TestMigrationsInPy.
Interactive Odoo Dashboard for various business needs can provide users with dynamic, visually appealing dashboards tailored to their specific requirements. such a module that could support multiple dashboards for different aspects of a business
✅Visit And Buy Now : https://bit.ly/3VojWza
✅This Interactive Odoo dashboard module allow user to create their own odoo interactive dashboards for various purpose.
App download now :
Odoo 18 : https://bit.ly/3VojWza
Odoo 17 : https://bit.ly/4h9Z47G
Odoo 16 : https://bit.ly/3FJTEA4
Odoo 15 : https://bit.ly/3W7tsEB
Odoo 14 : https://bit.ly/3BqZDHg
Odoo 13 : https://bit.ly/3uNMF2t
Try Our website appointment booking odoo app : https://bit.ly/3SvNvgU
👉Want a Demo ?📧 [email protected]
➡️Contact us for Odoo ERP Set up : 091066 49361
👉Explore more apps: https://bit.ly/3oFIOCF
👉Want to know more : 🌐 https://www.axistechnolabs.com/
#odoo #odoo18 #odoo17 #odoo16 #odoo15 #odooapps #dashboards #dashboardsoftware #odooerp #odooimplementation #odoodashboardapp #bestodoodashboard #dashboardapp #odoodashboard #dashboardmodule #interactivedashboard #bestdashboard #dashboard #odootag #odooservices #odoonewfeatures #newappfeatures #odoodashboardapp #dynamicdashboard #odooapp #odooappstore #TopOdooApps #odooapp #odooexperience #odoodevelopment #businessdashboard #allinonedashboard #odooproducts
🌍📱👉COPY LINK & PASTE ON GOOGLE http://drfiles.net/ 👈🌍
Adobe Illustrator is a powerful, professional-grade vector graphics software used for creating a wide range of designs, including logos, icons, illustrations, and more. Unlike raster graphics (like photos), which are made of pixels, vector graphics in Illustrator are defined by mathematical equations, allowing them to be scaled up or down infinitely without losing quality.
Here's a more detailed explanation:
Key Features and Capabilities:
Vector-Based Design:
Illustrator's foundation is its use of vector graphics, meaning designs are created using paths, lines, shapes, and curves defined mathematically.
Scalability:
This vector-based approach allows for designs to be resized without any loss of resolution or quality, making it suitable for various print and digital applications.
Design Creation:
Illustrator is used for a wide variety of design purposes, including:
Logos and Brand Identity: Creating logos, icons, and other brand assets.
Illustrations: Designing detailed illustrations for books, magazines, web pages, and more.
Marketing Materials: Creating posters, flyers, banners, and other marketing visuals.
Web Design: Designing web graphics, including icons, buttons, and layouts.
Text Handling:
Illustrator offers sophisticated typography tools for manipulating and designing text within your graphics.
Brushes and Effects:
It provides a range of brushes and effects for adding artistic touches and visual styles to your designs.
Integration with Other Adobe Software:
Illustrator integrates seamlessly with other Adobe Creative Cloud apps like Photoshop, InDesign, and Dreamweaver, facilitating a smooth workflow.
Why Use Illustrator?
Professional-Grade Features:
Illustrator offers a comprehensive set of tools and features for professional design work.
Versatility:
It can be used for a wide range of design tasks and applications, making it a versatile tool for designers.
Industry Standard:
Illustrator is a widely used and recognized software in the graphic design industry.
Creative Freedom:
It empowers designers to create detailed, high-quality graphics with a high degree of control and precision.
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)Andre Hora
Exceptions allow developers to handle error cases expected to occur infrequently. Ideally, good test suites should test both normal and exceptional behaviors to catch more bugs and avoid regressions. While current research analyzes exceptions that propagate to tests, it does not explore other exceptions that do not reach the tests. In this paper, we provide an empirical study to explore how frequently exceptional behaviors are tested in real-world systems. We consider both exceptions that propagate to tests and the ones that do not reach the tests. For this purpose, we run an instrumented version of test suites, monitor their execution, and collect information about the exceptions raised at runtime. We analyze the test suites of 25 Python systems, covering 5,372 executed methods, 17.9M calls, and 1.4M raised exceptions. We find that 21.4% of the executed methods do raise exceptions at runtime. In methods that raise exceptions, on the median, 1 in 10 calls exercise exceptional behaviors. Close to 80% of the methods that raise exceptions do so infrequently, but about 20% raise exceptions more frequently. Finally, we provide implications for researchers and practitioners. We suggest developing novel tools to support exercising exceptional behaviors and refactoring expensive try/except blocks. We also call attention to the fact that exception-raising behaviors are not necessarily “abnormal” or rare.
Join Ajay Sarpal and Miray Vu to learn about key Marketo Engage enhancements. Discover improved in-app Salesforce CRM connector statistics for easy monitoring of sync health and throughput. Explore new Salesforce CRM Synch Dashboards providing up-to-date insights into weekly activity usage, thresholds, and limits with drill-down capabilities. Learn about proactive notifications for both Salesforce CRM sync and product usage overages. Get an update on improved Salesforce CRM synch scale and reliability coming in Q2 2025.
Key Takeaways:
Improved Salesforce CRM User Experience: Learn how self-service visibility enhances satisfaction.
Utilize Salesforce CRM Synch Dashboards: Explore real-time weekly activity data.
Monitor Performance Against Limits: See threshold limits for each product level.
Get Usage Over-Limit Alerts: Receive notifications for exceeding thresholds.
Learn About Improved Salesforce CRM Scale: Understand upcoming cloud-based incremental sync.
This presentation explores code comprehension challenges in scientific programming based on a survey of 57 research scientists. It reveals that 57.9% of scientists have no formal training in writing readable code. Key findings highlight a "documentation paradox" where documentation is both the most common readability practice and the biggest challenge scientists face. The study identifies critical issues with naming conventions and code organization, noting that 100% of scientists agree readable code is essential for reproducible research. The research concludes with four key recommendations: expanding programming education for scientists, conducting targeted research on scientific code quality, developing specialized tools, and establishing clearer documentation guidelines for scientific software.
Presented at: The 33rd International Conference on Program Comprehension (ICPC '25)
Date of Conference: April 2025
Conference Location: Ottawa, Ontario, Canada
Preprint: https://arxiv.org/abs/2501.10037
Download Wondershare Filmora Crack [2025] With Latesttahirabibi60507
Copy & Past Link 👉👉
http://drfiles.net/
Wondershare Filmora is a video editing software and app designed for both beginners and experienced users. It's known for its user-friendly interface, drag-and-drop functionality, and a wide range of tools and features for creating and editing videos. Filmora is available on Windows, macOS, iOS (iPhone/iPad), and Android platforms.
Avast Premium Security Crack FREE Latest Version 2025mu394968
🌍📱👉COPY LINK & PASTE ON GOOGLE https://dr-kain-geera.info/👈🌍
Avast Premium Security is a paid subscription service that provides comprehensive online security and privacy protection for multiple devices. It includes features like antivirus, firewall, ransomware protection, and website scanning, all designed to safeguard against a wide range of online threats, according to Avast.
Key features of Avast Premium Security:
Antivirus: Protects against viruses, malware, and other malicious software, according to Avast.
Firewall: Controls network traffic and blocks unauthorized access to your devices, as noted by All About Cookies.
Ransomware protection: Helps prevent ransomware attacks, which can encrypt your files and hold them hostage.
Website scanning: Checks websites for malicious content before you visit them, according to Avast.
Email Guardian: Scans your emails for suspicious attachments and phishing attempts.
Multi-device protection: Covers up to 10 devices, including Windows, Mac, Android, and iOS, as stated by 2GO Software.
Privacy features: Helps protect your personal data and online privacy.
In essence, Avast Premium Security provides a robust suite of tools to keep your devices and online activity safe and secure, according to Avast.
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AIdanshalev
If we were building a GenAI stack today, we'd start with one question: Can your retrieval system handle multi-hop logic?
Trick question, b/c most can’t. They treat retrieval as nearest-neighbor search.
Today, we discussed scaling #GraphRAG at AWS DevOps Day, and the takeaway is clear: VectorRAG is naive, lacks domain awareness, and can’t handle full dataset retrieval.
GraphRAG builds a knowledge graph from source documents, allowing for a deeper understanding of the data + higher accuracy.
Douwan Crack 2025 new verson+ License codeaneelaramzan63
Copy & Paste On Google >>> https://dr-up-community.info/
Douwan Preactivated Crack Douwan Crack Free Download. Douwan is a comprehensive software solution designed for data management and analysis.
Landscape of Requirements Engineering for/by AI through Literature ReviewHironori Washizaki
Hironori Washizaki, "Landscape of Requirements Engineering for/by AI through Literature Review," RAISE 2025: Workshop on Requirements engineering for AI-powered SoftwarE, 2025.
Adobe Master Collection CC Crack Advance Version 2025kashifyounis067
🌍📱👉COPY LINK & PASTE ON GOOGLE http://drfiles.net/ 👈🌍
Adobe Master Collection CC (Creative Cloud) is a comprehensive subscription-based package that bundles virtually all of Adobe's creative software applications. It provides access to a wide range of tools for graphic design, video editing, web development, photography, and more. Essentially, it's a one-stop-shop for creatives needing a broad set of professional tools.
Key Features and Benefits:
All-in-one access:
The Master Collection includes apps like Photoshop, Illustrator, InDesign, Premiere Pro, After Effects, Audition, and many others.
Subscription-based:
You pay a recurring fee for access to the latest versions of all the software, including new features and updates.
Comprehensive suite:
It offers tools for a wide variety of creative tasks, from photo editing and illustration to video editing and web development.
Cloud integration:
Creative Cloud provides cloud storage, asset sharing, and collaboration features.
Comparison to CS6:
While Adobe Creative Suite 6 (CS6) was a one-time purchase version of the software, Adobe Creative Cloud (CC) is a subscription service. CC offers access to the latest versions, regular updates, and cloud integration, while CS6 is no longer updated.
Examples of included software:
Adobe Photoshop: For image editing and manipulation.
Adobe Illustrator: For vector graphics and illustration.
Adobe InDesign: For page layout and desktop publishing.
Adobe Premiere Pro: For video editing and post-production.
Adobe After Effects: For visual effects and motion graphics.
Adobe Audition: For audio editing and mixing.
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...Eric D. Schabell
It's time you stopped letting your telemetry data pressure your budgets and get in the way of solving issues with agility! No more I say! Take back control of your telemetry data as we guide you through the open source project Fluent Bit. Learn how to manage your telemetry data from source to destination using the pipeline phases covering collection, parsing, aggregation, transformation, and forwarding from any source to any destination. Buckle up for a fun ride as you learn by exploring how telemetry pipelines work, how to set up your first pipeline, and exploring several common use cases that Fluent Bit helps solve. All this backed by a self-paced, hands-on workshop that attendees can pursue at home after this session (https://o11y-workshops.gitlab.io/workshop-fluentbit).
FL Studio Producer Edition Crack 2025 Full Versiontahirabibi60507
Copy & Past Link 👉👉
http://drfiles.net/
FL Studio is a Digital Audio Workstation (DAW) software used for music production. It's developed by the Belgian company Image-Line. FL Studio allows users to create and edit music using a graphical user interface with a pattern-based music sequencer.
Designing AI-Powered APIs on Azure: Best Practices& ConsiderationsDinusha Kumarasiri
AI is transforming APIs, enabling smarter automation, enhanced decision-making, and seamless integrations. This presentation explores key design principles for AI-infused APIs on Azure, covering performance optimization, security best practices, scalability strategies, and responsible AI governance. Learn how to leverage Azure API Management, machine learning models, and cloud-native architectures to build robust, efficient, and intelligent API solutions
Download YouTube By Click 2025 Free Full Activatedsaniamalik72555
Copy & Past Link 👉👉
https://dr-up-community.info/
"YouTube by Click" likely refers to the ByClick Downloader software, a video downloading and conversion tool, specifically designed to download content from YouTube and other video platforms. It allows users to download YouTube videos for offline viewing and to convert them to different formats.
Explaining GitHub Actions Failures with Large Language Models Challenges, In...ssuserb14185
GitHub Actions (GA) has become the de facto tool that developers use to automate software workflows, seamlessly building, testing, and deploying code. Yet when GA fails, it disrupts development, causing delays and driving up costs. Diagnosing failures becomes especially challenging because error logs are often long, complex and unstructured. Given these difficulties, this study explores the potential of large language models (LLMs) to generate correct, clear, concise, and actionable contextual descriptions (or summaries) for GA failures, focusing on developers’ perceptions of their feasibility and usefulness. Our results show that over 80% of developers rated LLM explanations positively in terms of correctness for simpler/small logs. Overall, our findings suggest that LLMs can feasibly assist developers in understanding common GA errors, thus, potentially reducing manual analysis. However, we also found that improved reasoning abilities are needed to support more complex CI/CD scenarios. For instance, less experienced developers tend to be more positive on the described context, while seasoned developers prefer concise summaries. Overall, our work offers key insights for researchers enhancing LLM reasoning, particularly in adapting explanations to user expertise.
https://arxiv.org/abs/2501.16495
Solidworks Crack 2025 latest new + license codeaneelaramzan63
Copy & Paste On Google >>> https://dr-up-community.info/
The two main methods for installing standalone licenses of SOLIDWORKS are clean installation and parallel installation (the process is different ...
Disable your internet connection to prevent the software from performing online checks during installation
Solidworks Crack 2025 latest new + license codeaneelaramzan63
To TDD or not to TDD - that is the question
1. TO TDD OR NOT TO TDD
–
THAT IS THE QUESTION
Test-driven
development: lessons
from the
Jenkins Git Plugin
Mark Waite
28 Feb 2018
Agile Boulder
2. AN EXPERIENCE
TALK
• My biases
• My mistakes
• My misperceptions
This is a biased talk. I’m using my experiences and some data
Biased by professional experience
• 2003 – Extreme Programming - manager
Loved it and lived it for 4 years at a 200 person company
• 2007 – Scrum - manager
Lived it for 6 years at a 5000 person company
• 2013 – More scrum - director
Lived it for 3 years at a 10,000 person company
• 2017 – Technical evangelist at CloudBees
We sell and support Jenkins to Enterprises
Biased by personal experience
• 2012 – My first commit to Jenkins git plugin (Java)
• 2014 – Wrote many tests for git plugin and git client
plugin
• 2015 – Primary maintainer of git plugin and git client
plugin
• 2017 – Divided maintainer – I do legacy, Stephen does
next gen
Biased by beliefs
• I believe in Test Driven Development
3. TEST-DRIVEN
DEVELOPMENT
• Red – write a small failing
test
• Green – write to pass the test
• Refactor – simplify and
improve
Three simple steps
A lifetime to learn to do it well
I love tests. I write tests.
I run tests. I fix tests. Photo CC BY-SA 4.0
5. WHAT IS JENKINS?
Leading continuous integration server
Open source, started in 2007 as Hudson
Became Jenkins in 2011
150,000+ installations worldwide
1,300+ plugins
Active community
Strong integrations
6. WHAT IS GIT?
Most popular version control system
Linux kernel tracked in Git
Microsoft Windows tracked in Git
Core technology at GitHub, Bitbucket, VS Online,
…
7. JENKINS
GIT PLUGIN
HISTORY
Jenkins Git Plugin connects Jenkins to Git
Historical Phases of Jenkins Git Plugin
• Early adoption: 2007 -
2010
• Significant growth: 2010 – 2013
• Refactoring: 2013 - 2016
• Pipeline: 2017 - now
8. EARLY ADOPTION
2007 - 2010
Early adoption questions:
• Is git relevant to Jenkins users?
• Which git features matter
most?
9. EARLY ADOPTION
Unknowns
• User value
• Feature relevance
• Performance measures
Integration Hurdles
• Few lines of code
• Few components used
• Few components depend on us
10. INSTALLS AND TESTS IN
EARLY ADOPTION
0
20000
40000
60000
80000
100000
120000
140000
160000
Jan-08 Jan-10 Jan-12 Jan-14 Jan-16 Jan-18
Active Jenkins Git Plugin Installations
0
2000
4000
6000
8000
10000
12000
14000
Jan-08 Jan-10 Jan-12 Jan-14 Jan-16 Jan-18
Jenkins Git Plugin lines of code vs. test LOC
LOC Test LOC
• User needs are more important than tests
• Discover user needs by delivering
• Test interactively for fastest delivery
11. WIDESPREAD USE
2010 - 2013
Widespread use questions:
• Easier to use?
• Easier to diagnose?
• Next features?
12. WIDESPREAD USE
More confident
• User value
• Feature relevance
• Key performance measure
Integration Hurdles
• More features
• More lines of code
• More components used
• Few components depend on us
13. INSTALLS AND TESTS IN
WIDESPREAD USE
0
20000
40000
60000
80000
100000
120000
140000
160000
Jan-08 Jan-10 Jan-12 Jan-14 Jan-16 Jan-18
Active Jenkins Git Plugin Installations
0
2000
4000
6000
8000
10000
12000
14000
Jan-08 Jan-10 Jan-12 Jan-14 Jan-16 Jan-18
Jenkins Git Plugin lines of code vs. test LOC
LOC Test LOC
• User needs are more important than tests
• Discover user needs by delivering
• Test interactively for fastest delivery
• Feature and dependency growth is increasing
the cost of testing
14. REFACTORING
2013 - 2016
Resolve implementation problems
Git is winning the source control wars
More regressions from refactoring
Refactor:
• add JGit
• extract git client
15. REFACTORING
Confident in
• User value
• Feature relevance
• Key performance measures
Integration Hurdles
• More features
• More lines of code
• More components used
• Many components depend on us
16. INSTALLS AND TESTS IN
REFACTORING
0
20000
40000
60000
80000
100000
120000
140000
160000
Jan-08 Jan-10 Jan-12 Jan-14 Jan-16 Jan-18
Active Jenkins Git Plugin Installations
0
2000
4000
6000
8000
10000
12000
14000
Jan-08 Jan-10 Jan-12 Jan-14 Jan-16 Jan-18
Jenkins Git Plugin lines of code vs. test LOC
LOC Test LOC
• User needs are often failed by regressions
• Discover user needs by delivering
• Test automation for fastest delivery
• Interactive testing still finds most bugs
• Feature and dependency growth is increasing
the cost of testing
18. PIPELINE
Significant new
• User value
• Features
• Key performance improved
Integration Hurdles
• More features
• More lines of code
• More components used
• Critical part of Jenkins
19. INSTALLS AND TESTS IN
PIPELINE
0
20000
40000
60000
80000
100000
120000
140000
160000
Jan-08 Jan-10 Jan-12 Jan-14 Jan-16 Jan-18
Active Jenkins Git Plugin Installations
0
2000
4000
6000
8000
10000
12000
14000
Jan-08 Jan-10 Jan-12 Jan-14 Jan-16 Jan-18
Jenkins Git Plugin lines of code vs. test LOC
LOC Test LOC
• Regressions are less frequent
• Discover user needs by delivering
• Test automation prevents many regressions
• Interactive testing still finds most bugs
• Feature and dependency growth is increasing
the cost of testing
20. WHEN CAN
I SKIP
TESTS?
Tests are not as critical if:
• Code will be discarded
• Failures are easy to detect
• Interactive testing is enough
• Risk is low from broken code
21. WHEN
SHOULD I
ADD
TESTS?
Tests are more critical if:
• Code will live a long time
• Failures are hard to detect
• Interactive testing is not
enough
• Risk is high from broken code
Editor's Notes
#3: This is an experience report. It is based on my biases, my errors, and my misperception. I share my history not because it is especially relevant to test driven development, but because it may help you understand some of the biases that are implicit in the talk.
Most of my time with test driven development was as a manager watching teams practice it. I was the manager of a team that transitioned from waterfall to Extreme Programming in 2003. That team of 10-15 people went “all in” with Extreme Programming. We tore down the cubicle walls. We installed big white boards. We encouraged continuous integration and rigorous test driven development in the Java desktop application we created and released every 3 months. We worked that way for 4 years. It was fun.
After those 4 years, in 2007 we were acquired by a larger company. The product was moved to India and we were assigned to a project writing SharePoint extensions in C#. I spent a few years managing SharePoint based development in C# with the same developers who had spent 4 years writing test driven the Java based desktop application. After we discovered that SharePoint was a poor choice for the tasks we were trying to accomplish, I was reassigned to manage the build team for a large database application written in Java. We didn’t write tests ourselves, but we ran the tests created by others. That lasted for a few years and provided new experiences, including running builds for hundreds of developers.
After those 6 years, I joined a different company as a director in 2013. The team was creating a Java based replacement for a rule processing engine. We spent 3+ years bringing that Java based rule processing engine into multiple releases. More new experiences, and eventually an assignment to manage a team of C programmers in their work on a message bus.
In 2017, I joined CloudBees as a technical evangelist. I now spend my time showing people how to do cool things with Jenkins.
I think test driven development is great. I’ve been in organizations where we wrote very few automated tests and I’ve been in organizations where we wrote many, many automated tests. I prefer more automated tests and I prefer tests that are written while the code is being written.
We created our own python based continuous integration server in 2003, then switched to Hudson in 2007 when it became available. Hudson became Jenkins in 2011. I submitted tests to the Jenkins git plugin in 2014 when I became frustrated at the regressions I was detecting in new releases. In 2015 I became the primary maintainer of the plugin. In 2017, Stephen Connolly became a maintainer and added some really great multi-branch Pipeline features which he maintains.
My history is only relevant to you if it helps you understand my biases. I think test driven development is great. I think everyone should do it almost all the time.
However, others don’t always think that way. In particular, the original developers of the Jenkins git plugin don’t work that way.
This talk uses history to look at those places where a lack of automated tests, and a lack of test driven development can be good, helpful, and workable.
#10: This is a period of fast learning and experimentation. There is less code to break and fewer dependencies
#11: I’m a test driven development proponent. I love test driven development.
Yet here we see adoption and delight with code that is definitely not test driven.
For the first 18 months of the existence of the plugin, there are no tests. None. All verification is done interactively before a release.
How were they so successful? Because users are more important than tests. Interactive testing at this stage is much faster than writing tests.