Introduction to Continuous Integration. Combining with Acceptance Test Driven Development, Test Driven Development, Showing how a developer in agile team does the work.
Self healing test automation with Healenium and Minimization of regression su...Dmitriy Gumeniuk
Joint talk. To cover 2 topics.
Dmitriy will cover 2 topics, 20 minutes each:
self-healing algorithm for selenium based UI tests (Healenium)
Test Gap Analysis and minimization of regression suite with Test-to-code mapping in Drill4J
Self-healing
Selectors in Automated UI is a pain point: tests sooner or later “breaks” due to changes in layout. Which makes UI tests unreliable as a part of testing pipeline and Continuous Testing itself. Layout mutate and as a result test crashes, builds turn “red”.
In this talk Anna will give a word regarding easiest way how to hack this problem in the bud. You will learn about the newly open-sourced tool for self-healing automation called Healenium.
Healenium allows to overcome problem of instability of automation tests automatically and spend less time supporting tests. Now it works for Mobile Automation as well !
Drill4J
Test Gap Analysis is the process of identifying these gaps where new code has been deployed but hasn’t been tested yet. However, often your testing department does not know which parts of code have been changed by the developers. As a result, testers run some unnecessary tests while other crucial tests are overlooked.
With Test Gap Analysis we can find gaps in tests and help you avoid errors made due to recent, untested changes. In doing so, you can optimize the interface between developers and testers and avoid hotfixes after the system’s release.
With this talk Dmitriy will share and unveil new Open Sourced tool Drill4J, describe capabilities of Test-to-Code mapping and how you can minimize your regression time by identifying subset of tests, which should be run, which code have been changed and which changes are not tested after full testing cycle.
How I make a podcast website using serverless technology in 2023Shengyou Fan
In 2022, I launched a Kotlin podcast show, Kotlin Fireside Chat, with my friends in Kotlin User Group. Now, we're taking things to the next level by building a podcast website with a statistical analysis dashboard. We've built a static website using Jamstack and connected it to a serverless API written in Kotlin. In order to aggregate the listener number across platforms, such as YouTube, BiliBili, Ximalaya, Lizhi, Qingting, we've also created a crawler to grab those numbers and display them in a custom dashboard. Everything is made by open source technology and deployed on Google Cloud Platform. In this talk, I'll share my experience and the lessons I learned when using all the technologies in 2023.
Self healing test automation with Healenium and Minimization of regression su...Dmitriy Gumeniuk
Joint talk. To cover 2 topics.
Dmitriy will cover 2 topics, 20 minutes each:
self-healing algorithm for selenium based UI tests (Healenium)
Test Gap Analysis and minimization of regression suite with Test-to-code mapping in Drill4J
Self-healing
Selectors in Automated UI is a pain point: tests sooner or later “breaks” due to changes in layout. Which makes UI tests unreliable as a part of testing pipeline and Continuous Testing itself. Layout mutate and as a result test crashes, builds turn “red”.
In this talk Anna will give a word regarding easiest way how to hack this problem in the bud. You will learn about the newly open-sourced tool for self-healing automation called Healenium.
Healenium allows to overcome problem of instability of automation tests automatically and spend less time supporting tests. Now it works for Mobile Automation as well !
Drill4J
Test Gap Analysis is the process of identifying these gaps where new code has been deployed but hasn’t been tested yet. However, often your testing department does not know which parts of code have been changed by the developers. As a result, testers run some unnecessary tests while other crucial tests are overlooked.
With Test Gap Analysis we can find gaps in tests and help you avoid errors made due to recent, untested changes. In doing so, you can optimize the interface between developers and testers and avoid hotfixes after the system’s release.
With this talk Dmitriy will share and unveil new Open Sourced tool Drill4J, describe capabilities of Test-to-Code mapping and how you can minimize your regression time by identifying subset of tests, which should be run, which code have been changed and which changes are not tested after full testing cycle.
How I make a podcast website using serverless technology in 2023Shengyou Fan
In 2022, I launched a Kotlin podcast show, Kotlin Fireside Chat, with my friends in Kotlin User Group. Now, we're taking things to the next level by building a podcast website with a statistical analysis dashboard. We've built a static website using Jamstack and connected it to a serverless API written in Kotlin. In order to aggregate the listener number across platforms, such as YouTube, BiliBili, Ximalaya, Lizhi, Qingting, we've also created a crawler to grab those numbers and display them in a custom dashboard. Everything is made by open source technology and deployed on Google Cloud Platform. In this talk, I'll share my experience and the lessons I learned when using all the technologies in 2023.
As projects get faster and teams get leaner, the need to write high quality automated acceptance criteria quickly and efficiently has never been greater. Engineers in Test simply cannot afford to spend time maintaining brittle tests. And yet, without solid test automation strategies, this is what many teams find themselves doing. In this workshop, you will learn a better way. You will learn how to write clean, clear and maintainable tests using the Screenplay Pattern, an innovative new approach to writing BDD-style automated acceptance tests that are easier to understand, easier to extend and easier to maintain. The workshop will be a practical demonstration of the principles of good automated test design. There will be live coding of real-world BDD automated acceptance tests in abundance, using Java, Serenity BDD and Cucumber. We will go from requirements and BDD-style Acceptance Criteria in Cucumber right through to automated acceptance tests and living documentation.
Introduction to Gitlab | Gitlab 101 | Training SessionAnwarul Islam
I actually described in this slide how to use Gitlab with git. I explained what is git, push, pull, clone, commit etc. so, you can use this slide to learn or tech someone.
Every test tells a story, but some tell a better story than others. Every test illustrates a specific path through the system to achieve a specific goal, but some paths are clearer than others. Valuable tests are the ones that tell a compelling story.
Come on a journey of discovery to learn how to write such tests, and witness a demonstration of these principles in action, with live coding of Serenity BDD automated tests.
Codemotion Madrid 2023 - Testcontainers y Spring BootIván López Martín
Es 2023 y ya hemos dado por sentado que tenemos que testear nuestras aplicaciones. Escribimos test unitarios sin problemas y somos relativamente felices.
Pero ¿qué ocurre con los tests de integración? ¿Cómo podemos testear con seguridad los diferentes servicios que utilizamos en nuestras aplicaciones Spring?
Testcontainers se integra de manera sencilla y transparente con Spring Boot para ofrecer una experiencia similar a los tests unitarios pero escribiendo tests de integración con servicios reales ejecutados en contenedores: Kafka, Postgresql, MySql, Elasticsearch y cualquier cosa que se pueda ejecutar en Docker.
En esta charla aprenderás cómo utilizar Testcontainers en tus tests de Spring Boot sin sacrificar la velocidad en tu ciclo de desarrollo y aprovechar todo el potencial que ofrece.
Unit Testing like a Pro - The Circle of PurityVictor Rentea
Best practices on designing unit tests, designing testable production code, a glimpse of TDD, using mocks and isolating pure functions for easy testing. Talk distilled from http://victorrentea.ro/#unit-testing
Held at VoxxedDays Bucharest in March 2019.
This presentation offers a complete overview of Qt Test, the Qt framework for unit testing.
It explains you how to create more stable and robust code by testing plain C++ code and Qt GUIs. It also covers advanced topics like data driven testing, Qt Creator integration and project organization.
This was part of the first Barcelona Qt Meetup.
As projects get faster and teams get leaner, the need to write high quality automated acceptance criteria quickly and efficiently has never been greater. Engineers in Test simply cannot afford to spend time maintaining brittle tests. And yet, without solid test automation strategies, this is what many teams find themselves doing. In this workshop, you will learn a better way. You will learn how to write clean, clear and maintainable tests using the Screenplay Pattern, an innovative new approach to writing BDD-style automated acceptance tests that are easier to understand, easier to extend and easier to maintain. The workshop will be a practical demonstration of the principles of good automated test design. There will be live coding of real-world BDD automated acceptance tests in abundance, using Java, Serenity BDD and Cucumber. We will go from requirements and BDD-style Acceptance Criteria in Cucumber right through to automated acceptance tests and living documentation.
Introduction to Gitlab | Gitlab 101 | Training SessionAnwarul Islam
I actually described in this slide how to use Gitlab with git. I explained what is git, push, pull, clone, commit etc. so, you can use this slide to learn or tech someone.
Every test tells a story, but some tell a better story than others. Every test illustrates a specific path through the system to achieve a specific goal, but some paths are clearer than others. Valuable tests are the ones that tell a compelling story.
Come on a journey of discovery to learn how to write such tests, and witness a demonstration of these principles in action, with live coding of Serenity BDD automated tests.
Codemotion Madrid 2023 - Testcontainers y Spring BootIván López Martín
Es 2023 y ya hemos dado por sentado que tenemos que testear nuestras aplicaciones. Escribimos test unitarios sin problemas y somos relativamente felices.
Pero ¿qué ocurre con los tests de integración? ¿Cómo podemos testear con seguridad los diferentes servicios que utilizamos en nuestras aplicaciones Spring?
Testcontainers se integra de manera sencilla y transparente con Spring Boot para ofrecer una experiencia similar a los tests unitarios pero escribiendo tests de integración con servicios reales ejecutados en contenedores: Kafka, Postgresql, MySql, Elasticsearch y cualquier cosa que se pueda ejecutar en Docker.
En esta charla aprenderás cómo utilizar Testcontainers en tus tests de Spring Boot sin sacrificar la velocidad en tu ciclo de desarrollo y aprovechar todo el potencial que ofrece.
Unit Testing like a Pro - The Circle of PurityVictor Rentea
Best practices on designing unit tests, designing testable production code, a glimpse of TDD, using mocks and isolating pure functions for easy testing. Talk distilled from http://victorrentea.ro/#unit-testing
Held at VoxxedDays Bucharest in March 2019.
This presentation offers a complete overview of Qt Test, the Qt framework for unit testing.
It explains you how to create more stable and robust code by testing plain C++ code and Qt GUIs. It also covers advanced topics like data driven testing, Qt Creator integration and project organization.
This was part of the first Barcelona Qt Meetup.
Social Media For Small Business 5 10 11mythicgroup
Each workshop focuses on the specific site and how to use them to your best advantage with regard to your professional brand, business and career search. Sites shown “live” on the SmartBoard, so that questions may be asked and examples shown of how to navigate the sites to their fullest potential.
Company profile royal bricks infraheightsAmit Vats
Hi All, people who can see this presentation.
Please Introduce us to the people you know (if any) who looks after Corporate Leasing for opening up new stores, Call Center spaces, IT Companies, Banks, Super/Hyper Markets etc...
Attached herewith is our company's profile for your reference.
Any help will be much appreciated. Thanks.
Warm Regards!
Amit Vats
+919971056439
PyCon 9: Continuous Delivery starts at your Development DnvironmentPeter Bittner
Continuous Delivery is the automation of our deployment and QA, isn’t it? The industrialized software production chain that makes our products more stable. Well, kind of. It’s more than that. It can save you tons of pain when you apply its principles everywhere. This talk explains how you free yourself by doing infrastructure like software development. Everything under control. Everything under version control.
Continuous Delivery for Python Developers – PyCon OttoPeter Bittner
Continuous Delivery sounds easy in theory, but it’s hard to do in practice. There are myriads of things you can and should do to get your code delivered faster, reliably. We look at what we can do as Python developers, or as a small or mid-sized team to make the industrialized software development production chain come true.
Covering topics like:
CI CD DevOps Jenkins TFS TeamCity Compile Test Package Delpoy
See Disclaimer in the last slide and/or in file comments, if available.
xUnit and TDD: Why and How in Enterprise Software, August 2012Justin Gordon
“A comprehensive suite of JUnit tests is one of the most import aspects of a software project because it reduces bugs, facilitates adding new developers, and enables refactoring and performance tuning with confidence. Test-driven development (TDD) is the best way to build a suite of tests. And the Dependent Object Framework is the best way to test against database objects.” This presentation covers the benefits of TDD along with practical advice on how to implement TDD in complex projects.
How to go beyond traditional Scrum principles and scale to globally distributed teams with Continuous Delivery and Subversion. Presented by Andy Singleton of Assembla and Scott Rudenstein of WANdisco. Presented Nov. 15, 2012. 30 minutes.
Presentation from ConfeT&QA Online conference (February 2012) about techniques and approaches for successful adoption of TDD (Test Driven Development) in functional tests with WebDriver.
Watch the recorded version of this Webinar here:
Curious about Continuous Integration? Tune in!
Continuous Integration (CI), which is a big part of continuous delivery, is the concept of continuously building and testing software using an automated process. We have learned that utilizing CI could help us catch bugs earlier, enable better visibility, reduce repetitive processes, enable the development team to produce deployable products at a moment's notice, and reduce risk overall.
These slides will identify the various levels of continuous integration and delivery with regards to a release maturity of the development team or parent organization.
Pretotyping Before Prototyping @ QCon BeijingDaniel Teng
This will be the next hot topic! Our idea is great, and it's attracting a lot of potential customers. The team is also excellent, skilled in various XXX-driven development methods such as Scrum, TDD, ATDD, and more. Everything looks great. But once the product is released to the market, everything suddenly changes.
Why is that? Our product is based on many hidden assumptions. Any wrong assumptions will make our efforts come to naught. So now some product teams are adopting some typical lean startup validation methods, such as A/B testing. But wait! We've already spent a lot of time and cost on development and testing, and we've built the features.
So what should we do? We can use agile methods to conduct low-cost, short-term experiments to validate these hidden assumptions. There are even some structured methods to discover and validate assumptions.
I am going to share a case study of how we as coaches kick start a large scale agile transition and supported the product teams in the one year journey in the transition in FDA (Food & Drugs Administration) regulated organisation in healthcare industry. The product teams include members with software, electrical and mechanical background. I will share how the transition get started, what are the phases during the journey, what are the main problems we try to address and what we did to achieve significant success.
**Outlines**
- Why did the management seek external support after a successful product death march version release
- Phase 0 - Kick start
- How did we kick off the journey and facilitate the organisation structure change
- Phase 1 - Building real teams and Make very basics
- How to build self-managing team to enable cross-learning and close collaboration
- Phase 2 - Scaling Scrum and Real Teams
- What scaling ceremonies, practices, artifacts were adopted and what were the difference from single team implementation
- Involving stake holders
- Phase 3 - Get up to speed
- What infrastructure, tool and process change were adopt to support iterative and increment development
- What individual level agile practices adopted to enable frequent and stable release
- Phase 4 - Test Efficiency and Effectiveness
- What we did to address quality issue of life-critical product release
Three years ago, Daniel and his team had a pivot into dark world of product development from Agile. Currently we have a product to help Asian Online Travel Agencies to search / book tickets from Europe railway companies and bus company such as Deutsche Bahn (Germany Railway), Trenitalia, Italo and Flixbus. We working on project of DNA testing, we also work on project of cross-border trade of car parts. After 3 years experience in product development, one big lesson we realized is that some agile practices became irrelevant. And beyond agile practices, in order to succeed, start up team need to survive, need to exploit every opportunity, or even need some good luck. In this talk, Daniel is going to share with you our strategy to survive, strategy response to uncertainty and our strategy to encounter with serendipity.
Old evaluation and value system are broken. Most of us are educated as a cog to think, perform according to standard. We don't need that much standardization in current fast changing market. How can we survive in modern and fast companies? How to make ourselves indispensable?
ISNIPER - How To Make The Change When Change Is HardDaniel Teng
If you give kids broccoli and tell them it is good for their health. Most likely, you will still get a no. The reason is quite simple, little kids don't care about being healthy. This broccoli principles applies to agile adoption as well. Simply telling and pushing new ideas and practices don't help very much because It is about changing people's mindset and way of thinking. Push and enforcement will always get resistance. The more push we have, the more resistance we will have as coach or change agent. To make it even worse, each individual, team and organization are so different, the culture is different, the business situation is different, the technology is different. Those are perfect excuses for not to change. One key factor for successful and sustainable adoption is to lit the desire to learn and improve, from individual, to team, to organization level. Rather than being pushed a lot of ideas, team will come for help and guidance, to pull idea from coach then apply in their context.
The Cretaceous was a period with a relatively warm climate, resulting in high eustatic sea levels and creating numerous shallow inland seas. These oceans and seas were populated with now-extinct marine reptiles, ammonites and rudists, while dinosaurs continued to dominate on land. At the same time, new groups of mammals and birds, as well as flowering plants, appeared. Until one day, a Meteor came, everything changed. After year 2000, along with the emergence of internet, the structure of human society change significantly. A lot of things which were hard to imagine became possible. This created huge impact on organizations and individuals. All in sudden, the way of innovation, the way of marketing and the way of doing business changed totally. Even the focus of doing business changed. As organizer and individual, in order to remain competent and relevant, we need to learn fast and adapt fast. The speed of responding to change became crucial survival strategy.
In this 2 hr talk, I am going to share my deliberate strategy and toolbox to deal in such change.
- The evolution / history of innovation, from tradition innovation to democratic innovation to extreme innovation
- Agile is about the need for speed of learning
- Deliberate learning strategy for:
*Unknown Unknown
*Known Unknown
*Known Known
*Unknown Known
- Journey toward excellence via a town called Agile
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.
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
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/
"Impact of front-end architecture on development cost", Viktor TurskyiFwdays
I have heard many times that architecture is not important for the front-end. Also, many times I have seen how developers implement features on the front-end just following the standard rules for a framework and think that this is enough to successfully launch the project, and then the project fails. How to prevent this and what approach to choose? I have launched dozens of complex projects and during the talk we will analyze which approaches have worked for me and which have not.
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.
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
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.
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
12. Hudson
CruiseControl, CruiseControl.Net,
CruiseControl.rb
TeamCity
Team Foundation Server
More on
http://en.wikipedia.org/wiki/Continuous_Integ
ration#Software
13. Check in as often as you can
Avoid stale code
Don't ever check into or out of a busted build
Communicate and negotiate check in's to the
rest of the team
If you're working on fixing the build, let the
rest of the team know
DON'T LEAVE THE BUILD BROKEN
OVERNIGHT
15. Get the latest code from source control.
Do a merge on any conflicts.
Run the build locally and fix any problems
Peer Review
Let the rest of the team know a change is
coming if it's a significant update.
Commit the changes to source control.
Stop coding until the build passes.
If the build breaks, drop everything else and
fix the build.
19. User Story Selected For Development
Iteration
Story
Implemented
Domain Model / User
Using TDD
Story Elaborated For
Feature
Unit Tests
StoryTest developed by Initially Fail
Business Owners and
Development/QA
Refactor Until
Unit Tests Story
StoryTest Initially Pass Accepted
Fails when Story
Test passes
Defining “done” for a user story.