This document discusses the process of using Gherkin scripts to automate acceptance testing over multiple iterations of a project. Key points include:
- Gherkins were used to define test cases and acceptance criteria from the start of development.
- Automated testing was implemented in stages, first manually running Gherkins then gradually automating more test cases across browsers and environments.
- The process evolved to include capturing screenshots, archiving results, and coordinating test execution with various teams.
- Future areas for improvement include expanding test coverage, simplifying maintenance, and generating Gherkins from models.
Developing for Remote Bamboo Agents, AtlasCamp US 2012Atlassian
Brydie McCoy, Java Developer
As more and more peoples' building demands grow, they expand from building everything locally to a distributed building system or the elastic cloud. And for OnDemand the elastic cloud is the only option. Unfortunately developing plugins for remote/elastic agents has its own set of gotchas. Most plugins written for Bamboo do not work properly on remote agents. This talk will cover the core principles of developing for remote agents, what you can and can't do, as well as more advanced topics such as data transfer and communication between the agent and the server.
This presentation describes a "business trip" to Cambodia for a inter-cultural software project. Learn some of the benefits, challenges and lessons learned of this collaboration and how SCRUM can help you in such a setting.
Developing for Remote Bamboo Agents, AtlasCamp US 2012Atlassian
Brydie McCoy, Java Developer
As more and more peoples' building demands grow, they expand from building everything locally to a distributed building system or the elastic cloud. And for OnDemand the elastic cloud is the only option. Unfortunately developing plugins for remote/elastic agents has its own set of gotchas. Most plugins written for Bamboo do not work properly on remote agents. This talk will cover the core principles of developing for remote agents, what you can and can't do, as well as more advanced topics such as data transfer and communication between the agent and the server.
This presentation describes a "business trip" to Cambodia for a inter-cultural software project. Learn some of the benefits, challenges and lessons learned of this collaboration and how SCRUM can help you in such a setting.
Scaling Kanban in the Enterprise with GreenHopperDavid Jellison
Presentation delivered @Atlassian Summit 2012. Balancing the coordination of many Agile product delivery teams on the same major release cycle -- and still allowing these teams to self-organise -- is a craft Agile Enterprises must master. JIRA, GreenHopper and Confluence provide a rich platform that accommodates cross team co-ordination and the flexibility required for teams to self-organise. In this talk, David will walk the audience through the process of breaking down a Kanban value chain into steps and transitions, mapping out compatible workflows, and building the combined board. David will also share details of how Constant Contact provides visibility into the progress of teams and the release cycle. Constant Contact was able to deliver 15% more often in 2011 than prior years by refining their Agile practices.
Erlang factory SF 2011 "Erlang and the big switch in social games"Paolo Negri
talk given at erlang factory 2011 about using erlang to build social games backends
Watch the video of this presentation http://vimeo.com/22144057#at=0
Online games backend are challenging applications, a single user generates one http call every few seconds, usage volume can spike very quickly and balance between data read and write is close to 50/50 which make the use of write through cache or other common scaling approaches not so effective.
Follow how in our quest for a better architecture to serve millions of games sessions daily and reduce our resource usage we took the decision to write in Erlang our third generation game backend, see how we’re leveraging the actor model in order to change how we use and conceive our persistency layer. See also how introducing Erlang as a new tool in a company is working out, what we found hard from an organizational and technical point of view, which obstacle we hit and how as technical guys we convinced our management to take the risk of bringing in house a different technology.
Continuous Delivery refers to the process of releasing high quality software quickly and with confidence through the use of build, test and deployment automation. By applying Lean techniques to the development, test and deployment of software, waste is reduced and staff are freed up to work on more important tasks. By following a continuous delivery model, release cycles shift from a matter of months to weeks or days.
In this presentation, we will look at the key tools and processes involved in transitioning from a manual culture to one that embraces automation. We will look at real world examples, including the tools and architectural components. We will discuss organizational impacts, including the dramatic improvements in morale as team delivery commitments are met more easily through automation.
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20Michael Lihs
Presentation about open source tools to set up continuous integration and continuous deployment. Covers Git, Gitlab, Chef, Vagrant, Jenkins, Gatling, Dashing, TYPO3 Surf and some other tools. Shows some best practices for testing with Behat and Functional Testing.
Scaling Kanban in the Enterprise with GreenHopperDavid Jellison
Presentation delivered @Atlassian Summit 2012. Balancing the coordination of many Agile product delivery teams on the same major release cycle -- and still allowing these teams to self-organise -- is a craft Agile Enterprises must master. JIRA, GreenHopper and Confluence provide a rich platform that accommodates cross team co-ordination and the flexibility required for teams to self-organise. In this talk, David will walk the audience through the process of breaking down a Kanban value chain into steps and transitions, mapping out compatible workflows, and building the combined board. David will also share details of how Constant Contact provides visibility into the progress of teams and the release cycle. Constant Contact was able to deliver 15% more often in 2011 than prior years by refining their Agile practices.
Erlang factory SF 2011 "Erlang and the big switch in social games"Paolo Negri
talk given at erlang factory 2011 about using erlang to build social games backends
Watch the video of this presentation http://vimeo.com/22144057#at=0
Online games backend are challenging applications, a single user generates one http call every few seconds, usage volume can spike very quickly and balance between data read and write is close to 50/50 which make the use of write through cache or other common scaling approaches not so effective.
Follow how in our quest for a better architecture to serve millions of games sessions daily and reduce our resource usage we took the decision to write in Erlang our third generation game backend, see how we’re leveraging the actor model in order to change how we use and conceive our persistency layer. See also how introducing Erlang as a new tool in a company is working out, what we found hard from an organizational and technical point of view, which obstacle we hit and how as technical guys we convinced our management to take the risk of bringing in house a different technology.
Continuous Delivery refers to the process of releasing high quality software quickly and with confidence through the use of build, test and deployment automation. By applying Lean techniques to the development, test and deployment of software, waste is reduced and staff are freed up to work on more important tasks. By following a continuous delivery model, release cycles shift from a matter of months to weeks or days.
In this presentation, we will look at the key tools and processes involved in transitioning from a manual culture to one that embraces automation. We will look at real world examples, including the tools and architectural components. We will discuss organizational impacts, including the dramatic improvements in morale as team delivery commitments are met more easily through automation.
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20Michael Lihs
Presentation about open source tools to set up continuous integration and continuous deployment. Covers Git, Gitlab, Chef, Vagrant, Jenkins, Gatling, Dashing, TYPO3 Surf and some other tools. Shows some best practices for testing with Behat and Functional Testing.
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source ToolsMichael Lihs
In diesem Talk beschreibe ich die Continuous Integartion Pipeline von punkt.de und deren Entstehen. Es wird motiviert, warum es sich lohnt, eine solche Pipeline zu implementieren und welche Tools wir dafür verwendet haben. Neben der Beschreibung von Git, Jenkins, Chef, Vagrant, Behat und Surf geht es auch um Integration der einzelnen Tools in eine Deployment Kette.
Slides from the talk "CI doesn’t start with Jenkins" from DevOps Stage 2018 (12-13 October 2018, Kyiv, Ukraine)
CI is not only a tool. You cannot simply install and configure Jenkins or whatever system and say that you have CICD pipeline. Here I'm trying to cover different aspects and dependencies of the CICD process based on Preply Inc experience.
External Links:
[2] CatOps Telegram channel: https://t.me/catops
[2] HashiCorp User Group Kyiv: https://www.meetup.com/Kyiv-HashiCorp-User-Group/
[12-24 ]https://www.endpoint.com/blog/2014/05/02/git-workflows-that-work
[49-50]: https://nvie.com/posts/a-successful-git-branching-model/
[51-56]: https://www.toptal.com/software/trunk-based-development-git-flow
[64] Django Anonymizer: https://github.com/knowledge-point/dj_anonymizer
Deploying your Drupal site, Upgrading your Drupal Site, Scaling, Clustering and Monitoring it ... all topics Developers are often not involved with ...
Devops For Drupal explains the Devops problem, to a Drupal audience .
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
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.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
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.
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.
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.
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
Generating a custom Ruby SDK for your web service or Rails API using Smithyg2nightmarescribd
Have you ever wanted a Ruby client API to communicate with your web service? Smithy is a protocol-agnostic language for defining services and SDKs. Smithy Ruby is an implementation of Smithy that generates a Ruby SDK using a Smithy model. In this talk, we will explore Smithy and Smithy Ruby to learn how to generate custom feature-rich SDKs that can communicate with any web service, such as a Rails JSON API.
2. February 16, 2012 – Today / Terry
• What is/are gherkin(s)?
• Examples of gherkins
• Reports after execution
• Screen shot captured for each click
• Executed within the Iteration
• Discussed at retrospectives
3. Sample gherkins
• Goal Level:
– Given that I am a Teacher
– When I have students in my Classes
– Then I should be able to see the same ConnectED content
my Students see
•
• Task Level:
– Given that I have created a class and have added students
to it
– When I open the book for that class
– Then I should be able to access the same
– Newsfeed that Student see
6. February 16, 2012 – Today / Ayan
• Technologies used
• Java, Maven
• WebDriver, Cuke4Duke
• gherkin-salad – my pet project
• Automation using three browsers
• Chrome, FireFox, IE
• Automation in three environments
• DEV, QA, UAT
7.
8. Flashback: October 10, 2011/Terry
• New team, new client site, new project
• Terry BA and QA: Ayan Lead Developer
• App, Browsers, System Environments
• Client Environment
• Pooled past experiences
• Challenges for agile teams, blending roles
9. Flashback: October 10, 2011/Ayan
• Challenges as a Developer
• Use gherkins
• Gherkins as a shared language
• Possibility of Automation
• But no automation at this point
• To allow the team to ride the learning /
adopting curve
10. Flashback: October 10, 2011/Terry
• Use gherkins to capture
requirements, acceptance tests
• Use gherkins to form test plans
• Write gherkins at the start of development
11. Flashback: October 10, 2011 / Ayan
• Execute gherkins before the development
ends
• Definition of Done - Before the developer
calls a feature “done” the developer, QA and
BA would get together and manually run
through the gherkins
• Code Reviews are also done
12. • 2 iterations, 0 defects
• Scenarios walked
through at the end of
Flashback: November 14, 2011 /Terry
development with BA
After 2 iterations
and Tester
• First version of
“gherkins”
13. Initial Version of our gherkins / Terry
• Rolling Scenarios
• Action Level gherkins
• Data Preparation Scenarios
14. • Task and Action Level
gherkins
• Action levels are good
Flashback: November 10, 2011 /Ayan
for certain audiences –
After 2 iterations
Help
Desk, Writers, Newbies
• Ready to try Task Level
Gherkins
15. Task Level gherkins / Ayan
• Less element level interactions
• Every task level instruction may translate to
multiple action level instructions
16. • Used gherkins in show
and tell, business and
client is intrigued
• Questions came up that
how is this different
Flashback: November 10, 2011 /Terry
from QTP?
After 2 iterations
• No License :)
• Accessible to everyone
• Need Automation
• Traceability to
requirements in JIRA
18. • Can write groovy script to
create reports around
traceability
• Want to do automation in all
environments, all browsers
Flashback: November 10, 2011 /Ayan
• Would do only Firefox and DEV
After 2 iterations
environment for next 2
iterations
• With Task Level gherkins we
would write code at action
level
19. January 2, 2012 - Happy New Year!
After 2 iterations & Nice Holiday Season
• We had more task level gherkins
• Gherkins and automation organized in SVN
• Found a Notepad++ plugin to assist in writing gherkins
21. January 2, 2012 - Happy New Year!
After 2 iterations & Nice Holiday Season
• Captured page structure
information, Role, Component, Element
• @manual features
• @wip features
• Want to do more automation in 3 browsers, 3 environments
• Created Execution Plans
• Created Data File
27. February 16, 2012 – Back to Today, After 2 Iterations
• Here we have a process with 0 defects, well
running and adapted to
• A running process
• Running in 3 browsers
• Running in 3 environments
• Scheduled run at 6 in evening
28. February 16, 2012 – Back to Today, After 2 Iterations
• Added the following features
• Capturing screenshots
• Archiving the results
• Specific browser usage
29. What Do We Jump Over next?
• Capture scenarios as we are talking to
business and run it by them, if possible
• Involve client Testing/QA team in our
processes
• Ensuring scenario and test coverage
• Ensuring complementary scenarios
30. What Do We Jump Over next?
• Support for ipad?
• Simplify the maintenance of gherkins including
execution plan, page structure and data file
• Automatic conversion of Task Level gherkins to
Action Level Gherkins?
• Automatically generating gherkins from
models?
31. Credits
All of this is not something that we could have
done by ourselves. It is a team effort.
• Development Team: Chai Thatipamula, Sakshi
Vaghela, Pallavi Jain
• Project Manager: Demetrius Jackson
• Team at the Client Location
32. Contact
• Ayan Dave
• @daveayan
• http://projects.daveayan.com
• http://daveayan.com
• Terry Wiegmann, CBAP, CSQE
• @twieg
• twiegmann@quicksolutions.com