We take a look at the current state of Infrastructure testing, by reviewing how Application Automation testing has evolved over time.
Presented by Steve Mactaggart (@stevemac) at LastConf 2018 - Melbourne Australia
Nicolas Grekas (Blackfire) – App Profiling - the Must-Have Tool of your Daily...Techsylvania
The document discusses performance profiling tools from Blackfire that help developers, sysadmins, managers, and hosters continuously monitor and improve application performance. Blackfire provides freemium performance profiling as a service to help reduce costs by needing fewer and cheaper servers, increase user engagement and revenues by optimizing performance, and stop wasting money on one-time performance audits. It enables continuous performance profiling across the development lifecycle.
Presentation on World Conference on Next Generation Testing 2015 conducted at Bangalore,India on ' Anti Patterns of Testing for Continuous Delivery adoption'. This presentation covered the anti patterns of testing during the continuous delivery adoption. It covered the details related to Collaboration, test automation architecture, test suite organization, lack of test strategy for parallel execution in the build pipeline, test code issues and some others.It also highlighted how it is difficult for any team to adopt continuous delivery in true sense and and further move into the continuous deployment and Devops practices due to such challenges.
The document discusses end-to-end testing with Cypress, including an overview of different types of testing like manual testing, test automation, and the testing pyramid. It then covers related topics like acceptance testing, BDD, and executable specifications before demonstrating basic examples of writing tests using Cypress' describe and it functions to test visiting a page and entering input.
This document discusses Oomph, a tool for automating the setup of Eclipse development environments. Oomph can download the required Eclipse installation, plugins, and project code repositories. It can also configure integration with task management tools like Jira. This provides a reliable solution for setting up standard Eclipse environments and avoids the need to manually install and configure multiple components. Oomph represents an improvement over previous solutions that required custom installations or documentation on setup procedures.
QA&test 2016 (Bilbao) Pros and Cons of Doing Performance Testing Along with D...Federico Toledo
“You better start testing at the beginning,” is what everyone in testing says these days as new methodologies such as agile and test driven development are becoming increasingly popular. What is the best way to go when it comes to performance testing? Should we start it right away (taking a lean approach) or at the end (following a more waterfall style approach)?
The speaker, Federico Toledo, will compare two different real world performance testing projects that he took part in over the past 10 years. The first project employed a more waterfall like approach, meaning, the whole load testing project took place at the end of development. In the second one, development and load testing projects started on the same day (planned by two different teams but as part of the same team) in a more lean approach. He will go into detail about the pros and cons of each project. After the presentation, you will end up coming to your own conclusions about which one is right for you.
Additionally, Federico will reveal insights about monitoring and problem solving in production, mistakes to avoid in each, and the skills one should develop to be a successful performance tester.
http://www.qatest.org/es/programme/speaker_info.php?id_speaker=247&day=1
Are we really moving faster? How visualizing flow changed the way we workRoman Pickl
This document discusses how visualizing workflow helped a company change the way they work to move faster. It summarizes that initially they realized they were creating too much unnecessary work. Visualizing their flow revealed they could not keep running faster without changes. Using value stream mapping showed they needed to change processes. These insights helped them finally start moving faster.
Are we really moving faster? How visualizing flow changed the way we workRoman Pickl
Are we really moving faster?
After putting in countless hours improving the deployment pipeline, investing in automation and deploying new technologies, it is time to ask this fundamental question: "Are we really moving faster?"
This is a story of how we made work visible by applying Flow Metrics to discover bottlenecks and improve flow.
The session will leave you with concrete steps to implement key metrics, automatically collect and visualize them on an open source dashboard and find an answer to this important question.
Key Takeaways:
- A brief Intro to Value Stream Mapping
- Actionable Flow Metrics
- An Implementation Example using an Open Source Solution
References and pointers to advanced material
For more information see: https://pickl.eu/blog/are-we-really-moving-faster-how-visualizing-flow-changed-the-way-we-work/
Agile, Cloud Computing, Open Source and what's in between Alon Girmonsky
Performance Testing in the Agile Age
An organization That relies on web or mobile applications to deliver services, benefits and features needs to intro agility into its product development lifecycle. In order to Achieve Agility we have to build applications today differently than we did it in the past. Bugs, bad user experience and downtime are luxuries That are far more expensive today than in the past. cloud-based performance testing Accommodates gift requirements to validate application performance, surface performance related bugs, bottleneck and bad user experience. It Allows for a swift resolution and testing over and over again without having to wait.
Nicolas Grekas (Blackfire) – App Profiling - the Must-Have Tool of your Daily...Techsylvania
The document discusses performance profiling tools from Blackfire that help developers, sysadmins, managers, and hosters continuously monitor and improve application performance. Blackfire provides freemium performance profiling as a service to help reduce costs by needing fewer and cheaper servers, increase user engagement and revenues by optimizing performance, and stop wasting money on one-time performance audits. It enables continuous performance profiling across the development lifecycle.
Presentation on World Conference on Next Generation Testing 2015 conducted at Bangalore,India on ' Anti Patterns of Testing for Continuous Delivery adoption'. This presentation covered the anti patterns of testing during the continuous delivery adoption. It covered the details related to Collaboration, test automation architecture, test suite organization, lack of test strategy for parallel execution in the build pipeline, test code issues and some others.It also highlighted how it is difficult for any team to adopt continuous delivery in true sense and and further move into the continuous deployment and Devops practices due to such challenges.
The document discusses end-to-end testing with Cypress, including an overview of different types of testing like manual testing, test automation, and the testing pyramid. It then covers related topics like acceptance testing, BDD, and executable specifications before demonstrating basic examples of writing tests using Cypress' describe and it functions to test visiting a page and entering input.
This document discusses Oomph, a tool for automating the setup of Eclipse development environments. Oomph can download the required Eclipse installation, plugins, and project code repositories. It can also configure integration with task management tools like Jira. This provides a reliable solution for setting up standard Eclipse environments and avoids the need to manually install and configure multiple components. Oomph represents an improvement over previous solutions that required custom installations or documentation on setup procedures.
QA&test 2016 (Bilbao) Pros and Cons of Doing Performance Testing Along with D...Federico Toledo
“You better start testing at the beginning,” is what everyone in testing says these days as new methodologies such as agile and test driven development are becoming increasingly popular. What is the best way to go when it comes to performance testing? Should we start it right away (taking a lean approach) or at the end (following a more waterfall style approach)?
The speaker, Federico Toledo, will compare two different real world performance testing projects that he took part in over the past 10 years. The first project employed a more waterfall like approach, meaning, the whole load testing project took place at the end of development. In the second one, development and load testing projects started on the same day (planned by two different teams but as part of the same team) in a more lean approach. He will go into detail about the pros and cons of each project. After the presentation, you will end up coming to your own conclusions about which one is right for you.
Additionally, Federico will reveal insights about monitoring and problem solving in production, mistakes to avoid in each, and the skills one should develop to be a successful performance tester.
http://www.qatest.org/es/programme/speaker_info.php?id_speaker=247&day=1
Are we really moving faster? How visualizing flow changed the way we workRoman Pickl
This document discusses how visualizing workflow helped a company change the way they work to move faster. It summarizes that initially they realized they were creating too much unnecessary work. Visualizing their flow revealed they could not keep running faster without changes. Using value stream mapping showed they needed to change processes. These insights helped them finally start moving faster.
Are we really moving faster? How visualizing flow changed the way we workRoman Pickl
Are we really moving faster?
After putting in countless hours improving the deployment pipeline, investing in automation and deploying new technologies, it is time to ask this fundamental question: "Are we really moving faster?"
This is a story of how we made work visible by applying Flow Metrics to discover bottlenecks and improve flow.
The session will leave you with concrete steps to implement key metrics, automatically collect and visualize them on an open source dashboard and find an answer to this important question.
Key Takeaways:
- A brief Intro to Value Stream Mapping
- Actionable Flow Metrics
- An Implementation Example using an Open Source Solution
References and pointers to advanced material
For more information see: https://pickl.eu/blog/are-we-really-moving-faster-how-visualizing-flow-changed-the-way-we-work/
Agile, Cloud Computing, Open Source and what's in between Alon Girmonsky
Performance Testing in the Agile Age
An organization That relies on web or mobile applications to deliver services, benefits and features needs to intro agility into its product development lifecycle. In order to Achieve Agility we have to build applications today differently than we did it in the past. Bugs, bad user experience and downtime are luxuries That are far more expensive today than in the past. cloud-based performance testing Accommodates gift requirements to validate application performance, surface performance related bugs, bottleneck and bad user experience. It Allows for a swift resolution and testing over and over again without having to wait.
The document discusses test-driven development (TDD) and acceptance test-driven development (ATDD). It notes that TDD involves writing tests before code to drive the design and ensure all tests pass, while ATDD focuses on testing business rules from the perspective of the team. The document advocates that successful teams use TDD and notes benefits like reduced defects and increased development time when adopting TDD practices.
The document discusses unit testing in Umbraco, including the goals of unit testing to isolate and test parts individually, benefits like finding bugs early and providing documentation. It provides several links to resources on unit testing and describes dependencies like NUnit, Moq and NUnit Test Adapter needed. The steps outlined include creating a test project with Umbraco.Tests.dll, and writing a first test. Additional information is referenced from articles by Sam Sussman and Lars-Erik Bach. A GitHub repo and slides are linked for more details on unit testing in Umbraco.
Apache Yetus is a collection of tools that enable contribution and release processes for software projects. It includes precommit (also called test-patch), which runs tests and checks on code contributions to provide feedback and ensure project consistency before code is committed. Precommit can be run both locally and on build servers like Jenkins to reduce their workload. The talk discussed the goals and features of precommit, including its outputs, supported languages, tests, and integrations with tools like Git and JIRA.
Building tools to free up exploratory testers - appium conference talkPradeep Soundararajan
I have been a functional exploratory tester. I was motivated to move out of exploratory testing and go into automation. Thankfully, someone pulled me aside and told me - I am more suited to be a functional exploratory tester and I am business savvy. I didn't shy away from code. I worked closely with developers, my testing approach involved reading code (didn't write any) and brought in value to developers and to the business. I grew up as a tester being coached by experts, reading blogs from experts and learning that automation will help exploratory testers do more.
In my wait - I found very little effort that has gone in direction. I partnered with developers to be building some products.
I failed multiple times but here are my failed attempts
1. Tool for Social Media Driven Testing for Testers
2. Tool for mapping the heuristics and oracles to test ideas
3. A checklist tool for testing mobile apps and scoring on quality for start-ups
I would like to share
- The thinking behind building these tools and their value
- How purely focusing only on automation is taking away the possibility of building tools
- How I would love the community to start building tools
- How I can help and how they can help me
This document discusses Netflix's experience with Cassandra and database automation during a reboot event in 2014 across all availability zones on AWS. It describes the initial stack used including Cassandra, Priam, and Atlas for managing instances. Gaps were identified in this approach and alternatives were explored, leading Netflix to decide on an asynchronous, RESTful solution. Key principles learned included using asynchronous vs synchronous communications and REST vs SSH. The future direction of this work is also briefly discussed.
The document discusses property-based testing for services in Scala. It introduces property-based testing as an alternative to example tests that can generate random inputs to test definitions of how a program should behave. The document provides an example of generating test data using Scalacheck, writing properties to define expected outputs, and using for-comprehensions to combine generated values into more complex types for testing.
This document discusses dependencies between agile teams and how to manage them. It defines dependencies as blockers that can kill agility. Dependencies are created both externally from other teams and internally from things like technical debt or processes. The document recommends testing your own components independently through unit testing to avoid dependencies. It also discusses different types of automated tests including unit, integration, acceptance, and exploratory tests and when each is appropriate. Continuous integration is recommended to catch issues early. Simulators and mocks can be used to reduce dependencies when promoting code to production.
TestCorner #22 - How DevOps helps QA daily worksHTC
The document discusses how DevOps helps the QA daily work at a company. It outlines the team structure and responsibilities, including global sites and integration. It describes QA pain points like short release cycles and large test rounds. To solve these, the company adopted test automation using RobotFramework, Appium, and BrowserStack. This automation freed up QA resources and testing time while allowing them to handle more test items. Future plans include automatically submitting issues and filling test results.
Patrick Duclos-Montagne presents his experience using Tuleap at Orange, an open source project management tool. He discusses how Tuleap is used across Orange for agile development, tracking issues and tasks, sharing documents and designs, and providing support to other projects. He emphasizes that Tuleap's trackers are particularly useful for managing work. Training, community support, and assistance from the Tuleap team help users be successful with the tool.
This document contains an event portfolio belonging to Marcie Carpenter. It includes pictures from AMAG Technology's booths at the 2014 and 2015 ISC West conferences as well as electrical layout information for the 2015 booth. It also contains pictures from the 2015 AMAG Technology Eagle Awards event and Security Engineering Symposium. Contact information for Marcie Carpenter is provided at the end.
[QaOps] Continuouss Integration | Pipeline strategyRafael Lima
The document discusses strategies for testing software applications, including the test pyramid approach. It describes the ideal test pyramid structure with automated unit tests at the base and more integrated tests as the layers increase. However, it notes that the ideal shape is not always achievable and provides suggestions for alternative test structures and strategies when facing constraints like existing codebases or microservice architectures. The relevance of the test pyramid approach in modern development is also examined.
Integrate Your Test Automation Tools for More PowerTechWell
Walk the Expo, and you will see all kinds of test automation tools. Some run scripts. Some communicate with the system under test. Some virtualize system components. Some do interesting things that you may never have considered. Yet, none gives you a complete recipe for testing your product and synthesizing the results. That is not their job. It's yours. Mike Duskis says an effective test automation program will reflect the unique nuances of your product and your business. However, unique nuances need not add up to radically different architectures. In fact, effective automation programs share some essential components. Join Mike on a tour through this common anatomy—trigger, scaffold, script, fixture, connector, artifact manager, and reporter. Along the way, learn how these structure types manifest in specific real-world programs and how they work together to form extensible and maintainable systems which consistently produce useful test results.
Making Continuous Security a Reality with OWASP’s AppSec Pipeline - Matt Tesa...Matt Tesauro
You’ve probably heard many talks about DevSecOps and continuous security testing but how many provided the tools needed to actually start that testing? This talk does exactly that. It provides an overview of the open source AppSec Pipeline tool which has been used in real world companies to do real security work. Beyond a stand alone tool, the OWASP AppSec Pipeline provides numerous docker containers ready to automate, a specification to customize with the ability to create your own implementation and references to get you started.
The talk will also cover how to add an AppSec Pipeline to your team’s arsenal and provide example templates of how best to run the automated tools provided. Finally, we’ll briefly cover using OWASP Defect Dojo to store and curate the issues found by your AppSec Pipeline. The goal of this talk is to share the field-tested methods of two AppSec professionals with nearly 20 years of experience between them. If you want to start your DevSecOps journey by continuously testing rather then hear about it, this talk is for you.
Heavenly hell – automated tests at scale wojciech seligaAtlassian
The document summarizes Atlassian's journey to improve their automated test suite over 2.5 years. They had over 20,000 slow and fragile tests that resulted in dispirited developers accepting failures as normal. Through efforts like restructuring tests, parallelizing execution, removing flaky tests, and splitting the codebase into modules, they were able to reduce build times from over 2 hours to under 1 hour and make passes the norm. Continuous measurement, removing technical debt, and prioritizing test performance were key to their success in improving development feedback loops.
Tomas Riha discusses the challenges of scaling continuous delivery. Initially, their process worked well with a small team but failed as they grew. Key lessons include: making environments portable across infrastructure to allow scaling; building quality through an architecture and test strategy that optimize lead time; and empowering cross-functional teams through consensus on practices and autonomous environments.
Testing Vue Apps with Cypress.io (STLJS Meetup April 2018)Christian Catalan
Presented at the STLJS Meetup (St Louis, MO)
We dive into a Vue application used in semiconductor labs for transistor measurements. We discuss how get started with E2E testing with Cypress.io. And give a crash course into Vue applications.
Video: https://www.youtube.com/watch?v=dpB0YgnFyZQ
Based on hands-on Agile experience acquired over multiple delivery projects and Agile coaching/consulting assignments, Vatsala and Aman share common Agile Testing dilemmas, and possible solutions, tying them to the principle of "moving testing upstream".
Presented at Next Generation Testing conference in Bangalore, India (July 2014).
The document summarizes a presentation on software testing concepts and practices like test-driven development, terminology used in testing, popular tools used for testing, and resources for learning more about testing. The presentation covered topics like unit testing, integration testing, test-driven development principles and practices, popular IDEs, build tools, testing frameworks, mock object libraries, code coverage tools, load testing tools, acceptance testing tools, and continuous integration tools. It also demonstrated testing using an open-source medical record system.
The document summarizes a presentation on software testing concepts and practices like test-driven development, terminology used in testing, popular tools used for testing, and resources for learning more about testing. The presentation covered topics like unit testing, integration testing, test-driven development principles and practices, popular IDEs, build tools, testing frameworks, mock object libraries, code coverage tools, load testing tools, acceptance testing tools, and continuous integration tools. It also demonstrated testing using an open-source medical record system.
The document discusses test-driven development (TDD) and acceptance test-driven development (ATDD). It notes that TDD involves writing tests before code to drive the design and ensure all tests pass, while ATDD focuses on testing business rules from the perspective of the team. The document advocates that successful teams use TDD and notes benefits like reduced defects and increased development time when adopting TDD practices.
The document discusses unit testing in Umbraco, including the goals of unit testing to isolate and test parts individually, benefits like finding bugs early and providing documentation. It provides several links to resources on unit testing and describes dependencies like NUnit, Moq and NUnit Test Adapter needed. The steps outlined include creating a test project with Umbraco.Tests.dll, and writing a first test. Additional information is referenced from articles by Sam Sussman and Lars-Erik Bach. A GitHub repo and slides are linked for more details on unit testing in Umbraco.
Apache Yetus is a collection of tools that enable contribution and release processes for software projects. It includes precommit (also called test-patch), which runs tests and checks on code contributions to provide feedback and ensure project consistency before code is committed. Precommit can be run both locally and on build servers like Jenkins to reduce their workload. The talk discussed the goals and features of precommit, including its outputs, supported languages, tests, and integrations with tools like Git and JIRA.
Building tools to free up exploratory testers - appium conference talkPradeep Soundararajan
I have been a functional exploratory tester. I was motivated to move out of exploratory testing and go into automation. Thankfully, someone pulled me aside and told me - I am more suited to be a functional exploratory tester and I am business savvy. I didn't shy away from code. I worked closely with developers, my testing approach involved reading code (didn't write any) and brought in value to developers and to the business. I grew up as a tester being coached by experts, reading blogs from experts and learning that automation will help exploratory testers do more.
In my wait - I found very little effort that has gone in direction. I partnered with developers to be building some products.
I failed multiple times but here are my failed attempts
1. Tool for Social Media Driven Testing for Testers
2. Tool for mapping the heuristics and oracles to test ideas
3. A checklist tool for testing mobile apps and scoring on quality for start-ups
I would like to share
- The thinking behind building these tools and their value
- How purely focusing only on automation is taking away the possibility of building tools
- How I would love the community to start building tools
- How I can help and how they can help me
This document discusses Netflix's experience with Cassandra and database automation during a reboot event in 2014 across all availability zones on AWS. It describes the initial stack used including Cassandra, Priam, and Atlas for managing instances. Gaps were identified in this approach and alternatives were explored, leading Netflix to decide on an asynchronous, RESTful solution. Key principles learned included using asynchronous vs synchronous communications and REST vs SSH. The future direction of this work is also briefly discussed.
The document discusses property-based testing for services in Scala. It introduces property-based testing as an alternative to example tests that can generate random inputs to test definitions of how a program should behave. The document provides an example of generating test data using Scalacheck, writing properties to define expected outputs, and using for-comprehensions to combine generated values into more complex types for testing.
This document discusses dependencies between agile teams and how to manage them. It defines dependencies as blockers that can kill agility. Dependencies are created both externally from other teams and internally from things like technical debt or processes. The document recommends testing your own components independently through unit testing to avoid dependencies. It also discusses different types of automated tests including unit, integration, acceptance, and exploratory tests and when each is appropriate. Continuous integration is recommended to catch issues early. Simulators and mocks can be used to reduce dependencies when promoting code to production.
TestCorner #22 - How DevOps helps QA daily worksHTC
The document discusses how DevOps helps the QA daily work at a company. It outlines the team structure and responsibilities, including global sites and integration. It describes QA pain points like short release cycles and large test rounds. To solve these, the company adopted test automation using RobotFramework, Appium, and BrowserStack. This automation freed up QA resources and testing time while allowing them to handle more test items. Future plans include automatically submitting issues and filling test results.
Patrick Duclos-Montagne presents his experience using Tuleap at Orange, an open source project management tool. He discusses how Tuleap is used across Orange for agile development, tracking issues and tasks, sharing documents and designs, and providing support to other projects. He emphasizes that Tuleap's trackers are particularly useful for managing work. Training, community support, and assistance from the Tuleap team help users be successful with the tool.
This document contains an event portfolio belonging to Marcie Carpenter. It includes pictures from AMAG Technology's booths at the 2014 and 2015 ISC West conferences as well as electrical layout information for the 2015 booth. It also contains pictures from the 2015 AMAG Technology Eagle Awards event and Security Engineering Symposium. Contact information for Marcie Carpenter is provided at the end.
[QaOps] Continuouss Integration | Pipeline strategyRafael Lima
The document discusses strategies for testing software applications, including the test pyramid approach. It describes the ideal test pyramid structure with automated unit tests at the base and more integrated tests as the layers increase. However, it notes that the ideal shape is not always achievable and provides suggestions for alternative test structures and strategies when facing constraints like existing codebases or microservice architectures. The relevance of the test pyramid approach in modern development is also examined.
Integrate Your Test Automation Tools for More PowerTechWell
Walk the Expo, and you will see all kinds of test automation tools. Some run scripts. Some communicate with the system under test. Some virtualize system components. Some do interesting things that you may never have considered. Yet, none gives you a complete recipe for testing your product and synthesizing the results. That is not their job. It's yours. Mike Duskis says an effective test automation program will reflect the unique nuances of your product and your business. However, unique nuances need not add up to radically different architectures. In fact, effective automation programs share some essential components. Join Mike on a tour through this common anatomy—trigger, scaffold, script, fixture, connector, artifact manager, and reporter. Along the way, learn how these structure types manifest in specific real-world programs and how they work together to form extensible and maintainable systems which consistently produce useful test results.
Making Continuous Security a Reality with OWASP’s AppSec Pipeline - Matt Tesa...Matt Tesauro
You’ve probably heard many talks about DevSecOps and continuous security testing but how many provided the tools needed to actually start that testing? This talk does exactly that. It provides an overview of the open source AppSec Pipeline tool which has been used in real world companies to do real security work. Beyond a stand alone tool, the OWASP AppSec Pipeline provides numerous docker containers ready to automate, a specification to customize with the ability to create your own implementation and references to get you started.
The talk will also cover how to add an AppSec Pipeline to your team’s arsenal and provide example templates of how best to run the automated tools provided. Finally, we’ll briefly cover using OWASP Defect Dojo to store and curate the issues found by your AppSec Pipeline. The goal of this talk is to share the field-tested methods of two AppSec professionals with nearly 20 years of experience between them. If you want to start your DevSecOps journey by continuously testing rather then hear about it, this talk is for you.
Heavenly hell – automated tests at scale wojciech seligaAtlassian
The document summarizes Atlassian's journey to improve their automated test suite over 2.5 years. They had over 20,000 slow and fragile tests that resulted in dispirited developers accepting failures as normal. Through efforts like restructuring tests, parallelizing execution, removing flaky tests, and splitting the codebase into modules, they were able to reduce build times from over 2 hours to under 1 hour and make passes the norm. Continuous measurement, removing technical debt, and prioritizing test performance were key to their success in improving development feedback loops.
Tomas Riha discusses the challenges of scaling continuous delivery. Initially, their process worked well with a small team but failed as they grew. Key lessons include: making environments portable across infrastructure to allow scaling; building quality through an architecture and test strategy that optimize lead time; and empowering cross-functional teams through consensus on practices and autonomous environments.
Testing Vue Apps with Cypress.io (STLJS Meetup April 2018)Christian Catalan
Presented at the STLJS Meetup (St Louis, MO)
We dive into a Vue application used in semiconductor labs for transistor measurements. We discuss how get started with E2E testing with Cypress.io. And give a crash course into Vue applications.
Video: https://www.youtube.com/watch?v=dpB0YgnFyZQ
Based on hands-on Agile experience acquired over multiple delivery projects and Agile coaching/consulting assignments, Vatsala and Aman share common Agile Testing dilemmas, and possible solutions, tying them to the principle of "moving testing upstream".
Presented at Next Generation Testing conference in Bangalore, India (July 2014).
The document summarizes a presentation on software testing concepts and practices like test-driven development, terminology used in testing, popular tools used for testing, and resources for learning more about testing. The presentation covered topics like unit testing, integration testing, test-driven development principles and practices, popular IDEs, build tools, testing frameworks, mock object libraries, code coverage tools, load testing tools, acceptance testing tools, and continuous integration tools. It also demonstrated testing using an open-source medical record system.
The document summarizes a presentation on software testing concepts and practices like test-driven development, terminology used in testing, popular tools used for testing, and resources for learning more about testing. The presentation covered topics like unit testing, integration testing, test-driven development principles and practices, popular IDEs, build tools, testing frameworks, mock object libraries, code coverage tools, load testing tools, acceptance testing tools, and continuous integration tools. It also demonstrated testing using an open-source medical record system.
The document discusses various topics related to Android testing including:
- Best practice is to create a separate test project rather than including tests in the main project. This keeps tests stripped out of the main code and easier/faster to run.
- Tests can be run from Eclipse or from the command line with options to run all tests, a single test class/method, or filter by category.
- The Android SDK tools, emulator/AVD, and tools like uiautomatorviewer and uiautomator are needed to perform UI tests.
- Different types of tests include unit tests, integration tests to check components work together, acceptance tests for QA, and performance tests to check system behavior.
This document discusses visual testing and the challenges of automating it. It introduces Applitools, a framework that handles challenges like anti-aliasing, pixel shifts, and dynamic content when comparing screenshots. Applitools uses flexible verification settings and image processing to identify visual differences while ignoring minor layout changes. The document provides examples of integrating Applitools into test frameworks and executing cross-browser tests by leveraging baseline data. It also outlines next steps like using screen regions and different resolutions.
Enabling Agile Testing Through Continuous Integration Agile2009sstolberg
A Continuous Integration system is often considered one of the key elements involved in supporting an agile software development and testing environment. As a traditional software tester transitioning to an agile development environment it became clear to me that I would need to put this essential infrastructure in place and promote improved development practices in order to make the transition to agile testing possible. This experience report discusses a continuous integration implementation I led last year. The initial motivations for implementing continuous integration are discussed and a pre and post-assessment using Martin Fowler's "Practices of Continuous Integration" is provided along with the technical specifics of the implementation. The report concludes with a retrospective of my experiences implementing and promoting continuous integration within the context of agile testing.
Automated Testing for Web Applications - Wurbe #36Andrei Savu
This document discusses automated testing for web applications. It defines software testing and different types of testing like unit, integration, functional, and end-to-end testing. Automated testing is recommended because it saves time and money, improves accuracy, allows testing at scale, and improves team morale. Low hanging fruits for automation include unit, integration and functional testing, and setting up continuous integration. The document provides examples of testing a typical application with MongoDB, Tornado and SMTP and concludes with advice to think about testing from the beginning and automate where possible.
An Agilist's Guide to Excelling on a Scrum Team as a TesterAndy Melichar
The document provides guidance for testers working on Scrum teams. It recommends five steps: 1) regroup the team to address any issues with assumptions around testing responsibilities; 2) for testers to expand their skills and consult with developers; 3) for testers to partner closely with the Scrum team, asking questions early and over-communicating; 4) to limit work in progress to avoid bottlenecks; and 5) to continuously iterate and improve processes. The overall message is that quality and testing should be a shared responsibility of the entire Scrum team through open communication and incremental process adjustments.
The document describes LinkedIn's approach to releasing updates for their flagship mobile app three times per day (dubbed "3x3") in order to enable faster iteration. Key aspects included distributed and parallel testing across devices and emulators, refactoring tests for speed, creating consistent test environments, static analysis of code, and feature flagging to reduce risk and enable A/B testing of changes. The approach helped reduce release cycles from monthly to daily but further automation of areas like production releases and performance testing was still needed. Distributing workload and leveraging services like TestFlight and Google Play helped scale testing across many devices.
Testing Hourglass at Jira Frontend - by Alexey Shpakov, Sr. Developer @ Atlas...Applitools
Alexey Shpakov presents on testing in Jira Frontend. He discusses the testing pyramid with unit, integration, and end-to-end tests. He then introduces the concept of a "testing hourglass" which adds deployment and post-deployment verification to the pyramid. Key aspects of each type of test are discussed such as using feature flags, monitoring for flaky tests, and gradual rollouts to reduce risk.
Getting your mobile test automation process in place - using Cucumber and Cal...Niels Frydenholm
Taking your mobile development process cycle, and the quality of the apps, from good to great.
See how focusing on automated tests can improve app quality, time to market and much more, and learn some best practices to avoid too much trouble getting started
Presented at Xamarin Evolve 2014
Creating testing tools to support developmentChema del Barco
This is a presentation I made for the Kraków Java User Group on test automation and how to solve the challenges around it to make it really useful for development teams. It contains some examples of how we are doing it at Akamai's Web department, and some based on my own experience.
At Findly we know test automation is key for continuous delivery. However, in the context of a microservices architecture, our monolithic end-to-end test suites have still been limiting our ability to achieve a truly "continuous" pace of delivery. This talk will explain the principles, processes and techniques we are now using to build test suites for microservices and enable continuous delivery at Findly.
Presented at Auckland Continuous Delivery meetup, May 2016 (http://www.meetup.com/Auckland-Continuous-Delivery/events/230864194/).
5 DevOps things that have changed because of COVID-19Steve Mactaggart
The document discusses 5 ways that DevOps practices have changed due to COVID-19, including improved communication across teams, greater job stability, new ways of working together remotely, accelerated software delivery, and increased focus on agility to address uncertainty. It explores how the pandemic has impacted communication norms, job security, remote collaboration methods, delivery speed, and flexibility within DevOps teams and processes.
In this session we will take an introduction look to Continuous Integration and Continuous Delivery workflow.
This is an introduction session to CI/CD and is best for people new to the CI/CD concepts, or looking to brush up on benefits of using these approaches.
* What CI & CD actually are
* What good looks like
* A method for tracking confidence
* The business value from CI/CD
Are you a leadership group or a leadership team?Steve Mactaggart
We spend a lot of time talking about our delivery team mix and structure, we put time into reviewing their progress looking for room to improve and we scrutinize their backlog and metrics. But what about the other team. The one regularly forgotten. In most places the team that doesn’t practice what they preach.
The leadership team.
In this session we look at the function of IT leadership and how it can benefit from the processes and approaches we strive to achieve in our delivery teams.
This presentation walks through a Jenkins as Code approach that aims to fully automate and describe the creation of Infrastructure, Application and Configuration as Code.
We treat our applications with a strong 'as code' approach, but often forget about the critical operational tools. This presentation shows how it is possible to create a code first approach to creating and managing a Jenkins Service.
Working code repository is available at https://bitbucket.org/stevemac/dockerfiles
The changing role of the team leader in a DevOps transformationSteve Mactaggart
There is much discussion about the changing roles of Development and Operations staff when organisations undergo agile/digital/devops transformations. But what about the changing role of the Team Leader?
In pre-agile environments, as a Team Lead, your role is one of structure and co-ordination, it is through you that work routes. You know the skills and capacity of your team and are regularly making decisions about what can and can’t be done.
But as your team starts to work in agile teams, the need for you to keep them busy is reduced, as this is now a responsibility of the product owner and agile team itself.
Cloud computing delivers computing resources as a service over the internet. Users access cloud-based applications through a web browser or mobile app, while software and data are stored on remote servers managed by cloud providers. There are three main cloud service models: Infrastructure as a Service provides basic computing resources; Platform as a Service provides operating systems and platforms; and Software as a Service provides applications without requiring users to manage infrastructure. Public clouds offer services to the general public, while private clouds are for internal use within an organization.
What is an RPA CoE? Session 1 – CoE VisionDianaGray10
In the first session, we will review the organization's vision and how this has an impact on the COE Structure.
Topics covered:
• The role of a steering committee
• How do the organization’s priorities determine CoE Structure?
Speaker:
Chris Bolin, Senior Intelligent Automation Architect Anika Systems
Your One-Stop Shop for Python Success: Top 10 US Python Development Providersakankshawande
Simplify your search for a reliable Python development partner! This list presents the top 10 trusted US providers offering comprehensive Python development services, ensuring your project's success from conception to completion.
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfChart Kalyan
A Mix Chart displays historical data of numbers in a graphical or tabular form. The Kalyan Rajdhani Mix Chart specifically shows the results of a sequence of numbers over different periods.
Taking AI to the Next Level in Manufacturing.pdfssuserfac0301
Read Taking AI to the Next Level in Manufacturing to gain insights on AI adoption in the manufacturing industry, such as:
1. How quickly AI is being implemented in manufacturing.
2. Which barriers stand in the way of AI adoption.
3. How data quality and governance form the backbone of AI.
4. Organizational processes and structures that may inhibit effective AI adoption.
6. Ideas and approaches to help build your organization's AI strategy.
High performance Serverless Java on AWS- GoTo Amsterdam 2024Vadym Kazulkin
Java is for many years one of the most popular programming languages, but it used to have hard times in the Serverless community. Java is known for its high cold start times and high memory footprint, comparing to other programming languages like Node.js and Python. In this talk I'll look at the general best practices and techniques we can use to decrease memory consumption, cold start times for Java Serverless development on AWS including GraalVM (Native Image) and AWS own offering SnapStart based on Firecracker microVM snapshot and restore and CRaC (Coordinated Restore at Checkpoint) runtime hooks. I'll also provide a lot of benchmarking on Lambda functions trying out various deployment package sizes, Lambda memory settings, Java compilation options and HTTP (a)synchronous clients and measure their impact on cold and warm start times.
Have you ever been confused by the myriad of choices offered by AWS for hosting a website or an API?
Lambda, Elastic Beanstalk, Lightsail, Amplify, S3 (and more!) can each host websites + APIs. But which one should we choose?
Which one is cheapest? Which one is fastest? Which one will scale to meet our needs?
Join me in this session as we dive into each AWS hosting service to determine which one is best for your scenario and explain why!
Introduction of Cybersecurity with OSS at Code Europe 2024Hiroshi SHIBATA
I develop the Ruby programming language, RubyGems, and Bundler, which are package managers for Ruby. Today, I will introduce how to enhance the security of your application using open-source software (OSS) examples from Ruby and RubyGems.
The first topic is CVE (Common Vulnerabilities and Exposures). I have published CVEs many times. But what exactly is a CVE? I'll provide a basic understanding of CVEs and explain how to detect and handle vulnerabilities in OSS.
Next, let's discuss package managers. Package managers play a critical role in the OSS ecosystem. I'll explain how to manage library dependencies in your application.
I'll share insights into how the Ruby and RubyGems core team works to keep our ecosystem safe. By the end of this talk, you'll have a better understanding of how to safeguard your code.
How information systems are built or acquired puts information, which is what they should be about, in a secondary place. Our language adapted accordingly, and we no longer talk about information systems but applications. Applications evolved in a way to break data into diverse fragments, tightly coupled with applications and expensive to integrate. The result is technical debt, which is re-paid by taking even bigger "loans", resulting in an ever-increasing technical debt. Software engineering and procurement practices work in sync with market forces to maintain this trend. This talk demonstrates how natural this situation is. The question is: can something be done to reverse the trend?
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...Jason Yip
The typical problem in product engineering is not bad strategy, so much as “no strategy”. This leads to confusion, lack of motivation, and incoherent action. The next time you look for a strategy and find an empty space, instead of waiting for it to be filled, I will show you how to fill it in yourself. If you’re wrong, it forces a correction. If you’re right, it helps create focus. I’ll share how I’ve approached this in the past, both what works and lessons for what didn’t work so well.
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor IvaniukFwdays
At this talk we will discuss DDoS protection tools and best practices, discuss network architectures and what AWS has to offer. Also, we will look into one of the largest DDoS attacks on Ukrainian infrastructure that happened in February 2022. We'll see, what techniques helped to keep the web resources available for Ukrainians and how AWS improved DDoS protection for all customers based on Ukraine experience
AppSec PNW: Android and iOS Application Security with MobSFAjin Abraham
Mobile Security Framework - MobSF is a free and open source automated mobile application security testing environment designed to help security engineers, researchers, developers, and penetration testers to identify security vulnerabilities, malicious behaviours and privacy concerns in mobile applications using static and dynamic analysis. It supports all the popular mobile application binaries and source code formats built for Android and iOS devices. In addition to automated security assessment, it also offers an interactive testing environment to build and execute scenario based test/fuzz cases against the application.
This talk covers:
Using MobSF for static analysis of mobile applications.
Interactive dynamic security assessment of Android and iOS applications.
Solving Mobile app CTF challenges.
Reverse engineering and runtime analysis of Mobile malware.
How to shift left and integrate MobSF/mobsfscan SAST and DAST in your build pipeline.
For the full video of this presentation, please visit: https://www.edge-ai-vision.com/2024/06/temporal-event-neural-networks-a-more-efficient-alternative-to-the-transformer-a-presentation-from-brainchip/
Chris Jones, Director of Product Management at BrainChip , presents the “Temporal Event Neural Networks: A More Efficient Alternative to the Transformer” tutorial at the May 2024 Embedded Vision Summit.
The expansion of AI services necessitates enhanced computational capabilities on edge devices. Temporal Event Neural Networks (TENNs), developed by BrainChip, represent a novel and highly efficient state-space network. TENNs demonstrate exceptional proficiency in handling multi-dimensional streaming data, facilitating advancements in object detection, action recognition, speech enhancement and language model/sequence generation. Through the utilization of polynomial-based continuous convolutions, TENNs streamline models, expedite training processes and significantly diminish memory requirements, achieving notable reductions of up to 50x in parameters and 5,000x in energy consumption compared to prevailing methodologies like transformers.
Integration with BrainChip’s Akida neuromorphic hardware IP further enhances TENNs’ capabilities, enabling the realization of highly capable, portable and passively cooled edge devices. This presentation delves into the technical innovations underlying TENNs, presents real-world benchmarks, and elucidates how this cutting-edge approach is positioned to revolutionize edge AI across diverse applications.
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...Alex Pruden
Folding is a recent technique for building efficient recursive SNARKs. Several elegant folding protocols have been proposed, such as Nova, Supernova, Hypernova, Protostar, and others. However, all of them rely on an additively homomorphic commitment scheme based on discrete log, and are therefore not post-quantum secure. In this work we present LatticeFold, the first lattice-based folding protocol based on the Module SIS problem. This folding protocol naturally leads to an efficient recursive lattice-based SNARK and an efficient PCD scheme. LatticeFold supports folding low-degree relations, such as R1CS, as well as high-degree relations, such as CCS. The key challenge is to construct a secure folding protocol that works with the Ajtai commitment scheme. The difficulty, is ensuring that extracted witnesses are low norm through many rounds of folding. We present a novel technique using the sumcheck protocol to ensure that extracted witnesses are always low norm no matter how many rounds of folding are used. Our evaluation of the final proof system suggests that it is as performant as Hypernova, while providing post-quantum security.
Paper Link: https://eprint.iacr.org/2024/257
"Scaling RAG Applications to serve millions of users", Kevin GoedeckeFwdays
How we managed to grow and scale a RAG application from zero to thousands of users in 7 months. Lessons from technical challenges around managing high load for LLMs, RAGs and Vector databases.
22. What is the opportunity?
1. The big problems haven’t been solved yet
a. Get on board now
b. First mover advantage
c. Product / Business opportunity
2. Constantly evaluate the market
a. Be on the lookout for developments
3. Experiment and assess value
a. See what works for you
23. What should we be testing?
● CloudFormation
● CI/CD pipelines
● Makefiles
● Automation utilities
● Server provisioning scripts
● Server configuration scripts
24. What should we be testing?
● CloudFormation
● CI/CD pipelines
● Makefiles
● Automation utilities
● Server provisioning scripts
● Server configuration scripts
If it’s CODE, we should be testing it.