Triggering alerts on Slack along with screenshots in case of test case failure
One of the biggest limitations with most of the frameworks in selenium is that we need to wait till the end to get the final test case report. Only then we can raise the alert that a particular functionality is broken. By then, it may be too late! In addition to this, in most of the frameworks, the HTML report generated is hosted on our company's private network and we need to connect to the VPN if we are outside the office to open the report and check the related screenshots to see which test case has failed and why.
So, why not raise an alert as soon as the test case fails? And why not attach a screenshot along with that alert so that all the stakeholders can actually see what has failed in the application?
In this session, we will learn a simple yet a really useful way of sending an alert along with the failed test case screenshot by integrating slack with selenium which will help us alert all the stakeholders as soon as an automated test case fails so that everyone can react to it immediately and the damage will be minimised.
Outline/Structure of the Demonstration
- Defining the problem [~10min]
- Presenting the solution [~5min]
- Demonstrating the solution [~20min]
- Discussing alternate use-cases [~5min]
- QnA [~5min]
Learning Outcome
- Knowledge of Slack incoming web hook
- Knowledge of TestNG Listener class
- Integration of slack with selenium
- Multiple applications of this integration
Target Audience
Selenium users
Prerequisites for Attendees
Basic knowledge of Selenium
Links
Recently took a session on XCUITest POC. Link to the session: https://www.youtube.com/watch?v=bV5e7ZuVpkU
I am among the top 5% contributors of Selenium and top 10% contributors of Java and Appium on StackOverflow. Link to my profile: https://stackoverflow.com/users/10959845/sameer-arora
schedule Submitted 3 years ago
People who liked this proposal, also liked:
-
keyboard_arrow_down
Shweta Sharma / Nikita Jain - Accessibility testing 101
Shweta SharmaDirector of QA ServicesAxelerant TechnologiesNikita JainQA EngineerAxelerant Technologiesschedule 3 years ago
45 Mins
Talk
Beginner
"This world is such a beautiful place to live in." If you can read the first sentence without any screen readers or assistance, you're privileged. As technologists, shouldn’t we be more empathetic towards differently-abled people and make all parts of our website accessible to them? In my humble opinion, the true power of technology can be identified when it reaches out to people of all kinds having different physical or psychological challenges. We not only legally bound to provide Accessibility but also it should be considered as our moral responsibility.
As testers, we have a wonderful opportunity to contribute to Accessibility by ensuring that the site is accessible in many different ways. Although it is impossible to identify all the issues that exist around Accessibility in the world, we are lucky enough to still understand a majority of them. With this understanding, there have been many measures taken in order to make your site accessible. But, don’t forget - we are QA engineers. We got to ensure that the site is accessible as per the standards set by WCAG 2.0 (AA) by testing for accessibility using various tools and techniques.
-
keyboard_arrow_down
Gaurav Singh - How to build an automation framework with Selenium : Patterns and practices
45 Mins
Talk
Beginner
With an ever increasing no of businesses being conducted on web the testing need to write automated tests for the app's UI is something that can never be ignored. As you all know Selenium provides an API that enables us to do this quite effectively.
However, when tasked with setting up the automation framework, there are a lot of questions that arise in the minds of aspiring test developers regardless of what level they are in their career.
Some of such questions are:
- How does one actually go about the business of building a robust and effective automation framework on top of selenium?
- What are the elementary building blocks to include in the framework that an aspiring automation developer should know of?
- How should we model our tests? XUnit style vs BDD?
- Are there good practices, sensible design patterns and abstractions that we can follow in our code?
- What are some of the anti patterns/common mistakes we should avoid
A lot of literature, documentation and blogs exists on these topics on the web already.
However In this talk,
I would combine this existing knowledge and my years of experience in building automation frameworks and breakdown these elements and walk you through exactly the sort of decisions/considerations and practices that you can take while starting to implement or improve the UI automation for your team.
Hope to see you there!
-
keyboard_arrow_down
Raghav Pal - How to select Right Automation Tools | Step by Step
20 Mins
Talk
Beginner
In this talk, I will speak about the process and strategies on how can one analyze and select the right tools for test automation. We will look at some tools and processes that help to select the tools, frameworks, libraries, etc.
I will demonstrate some helpful extensions and tools that will be very handy and useful during the process
This process can be carried out before every test automation project or engagement. The selection of the right tools will help throughout the process of automation and will help to avoid delays, changes, re-work, incomplete automation, etc. and will save a lot of time, effort and resources for the organization.
The session is designed for anyone in the Software Testing industry and the knowledge received from this session can be implemented right away in any of the upcoming or existing test automation projects.
-
keyboard_arrow_down
Ivan Krutov - Workshop: Efficient Selenium Infrastructure with Selenoid
480 Mins
Workshop
Intermediate
Selenoid is an alternative lightning fast open-source Selenium protocol implementation running browsers and Android emulators inside Docker containers. It is distributed with a set of ready-to-use Docker images corresponding to the majority of popular browser versions, has a one-command installation utility and works slightly more efficiently than traditional Selenium Grid.
This tutorial shows how to build efficient and scalable browser automation infrastructure using Selenoid and related tools. You will be taught why running browsers in containers is so efficient, how to easily install Selenoid and use its powerful features.
-
keyboard_arrow_down
Naveen Khunteta - Best Practices to implement the test automation framework starting from Design - To -> Infrastructure - To -> Execution.
45 Mins
Talk
Intermediate
Best Practices - How to get the best 'Return ON Investment' (ROI) from your Test Automation.
This has been observed that, most of the test frameworks wont be able to survive due to lack of expertise, no maintenance, no best practices being followed, and finally your test automation will be dead after few months, and there is no "Return ON Investment" from this. This is the most common problem, most of the companies are struggling and finally back to square to the Manual testing.
My proposal : HOW to leverage your test automation in terms of best practices, best ROI, and how to adopt best automation culture in your organisation.
I strongly propose some of the important points/suggestions to achieve this in your Organisation/Team.
1. Test Automation Practices:
- Design Patterns (Web/Mobile/API)
- What to Automate/Not to Automate
2. Common Automation Frameworks at Org Level:
- How to design Generic Utilities, Libraries and different Components, which can be suitable for all the teams in the same Org.
- Best practices to design your Tests (Automation).
- Common Design Patterns
- Common application level and Page libraries
- Best Practices to use Assertions in your Tests (How and What to write for assertions). Most of the people don't write proper assertions and this is making your test unreliable and no defects found during execution.
3. Inclusion of API/Backend libraries in your UI test automation as an external Maven/Gradle Dependencies to avoid un-necessary tasks, some of the important points to be considered here:
- User Creation from APIs (No need to automate user creation from web/app for all the test cases)
- API tests are stabled most of the time
- API calls takes lesser time as compared to web, hence include API calls in your UI/App framework to save time.
- Less flaky test
4. Best Code Review Process (Do not merge your code into Master without proper Code Review)
- Implement PR (PULL Request) Process
- Static Code Analysis using SonarQube, Cobertura, JACOCO etc..
- Get the benefits of Best Test Automation Quality Matrices
- Sometimes, Manual (Functional Tester) should review your code (Assertion, test steps and use cases) to get the best coverage
5. Quality is A Team responsibility:
- Developers, POs, Manual QEs and Automation engineers should be included to get an overview of test automation coverage.
6. Maintenance of the Frameworks
- After couple of months, it should not make your life miserable if you don't maintain your libraries and framework properly.
- Do not use Hard Coded values, make it simple and Generic.
7. Infrastructure Setup for Test Design and Test Execution:
- Proper Browser - OS lab setup
- Proper Mobile Labs setup with different Devices - IOT, iOS, Android, iPad, Tablets
- Proper CI - CD common configuration using Jenkins, Dev Ops, AWS, Docker and Cloud setup
- Handling multiple Docker nodes using Kubernates (use of Selenoid, GRID on Cloud)
-
keyboard_arrow_down
Srinivasu gangam - Zero Touch Automation using NLP (Natural language processing) & AI
45 Mins
Demonstration
Intermediate
Problem Statement:
As part of SDLC process:
- Is your product quality impacted due to a smaller number of QA resources available in the team?
- Are you waiting for QA resources to certify your code every time when you deploy? Is this impacting your product lead time (Speed to Market)?
- Is your Product delivery timelines are impacted due to last minute defects identified?
- Do you have your QA resources only in one location, but you want to “follow-the-sun” approach for Software delivery across multiple locations?
- Do you have manual testers who are not skilled in programming, but you want them to execute automated test scripts w/o any training efforts and automation setup?
- Would you like your team more agile and cross functional with Delivery?
- Would you like to increase your QA team’s productivity while they invest more time in script development rather than script execution?
If answer is ‘Yes’ for above questions, "Zero touch automation" is the solution for above challenges that we have been facing part of SDLC.
Solution: Zero touch automation with cutting-edge technologies
In this session, I will cover how we solved this problem using innovative solutions, Cutting-edge technologies like NLP (Natural language processing), AI & Cloud solutions.
You will learn how AI, NLP integrated with core automation components to achieve Zero touch automation.
This solution is not just revolutionary, it is paradigm shift in test automation to get results to your email with detailed analysis of failure categorization with recommended actions to users.
I will also cover how E2E automation will be driven with decisions taken by machines based on what user is looking for . There is no manual intervention in this process. NLP and AI play key role to help machines to take decisions.
We will also cover how we empowered developer/release manager/any team member/Manager to trigger the scripts from their cell phone and get the detailed execution report without having any automation software installed in their computer or Phone.
We will be demonstrating how the request will be initiated from User, understand the need from user using NLP & AI , Fetching the code from bitbucket to select appropriate automation scripts , running them on Selenoid/docker server , storing results to MongoDB , receiving email with test results and Failure analysis.
What is the value of zero touch automation?
- Enable speed to market: Now that Developers does not need to wait for QA resource, Changes can be certified quickly and ready to push to production. Lead time will be significantly reduced.
- Increase quality: Now that test automation is easy and it can run multiple times in each environment, most of the defects will be uncovered and addressed before code goes to production.
- Ease of test execution: Test execution will be very easy, no automation or framework setup required from user side. Test execution can be done 24*7.
- Productivity: Increase QA team’s Productivity to focus more on script development rather than focusing on script execution and failure analysis .
-
keyboard_arrow_down
Artem Sokovets - Three approaches to the next level of automation testing
45 Mins
Case Study
Intermediate
In my talk, I want to share several approaches that help to improve automation testing in your company.
Do you want to spend less time developing UI automated tests? Maybe you want to reduce boilerplate code in UI tests? Or you think it is time to improve Page Object pattern that has been used for more than 8 years?
My first point will be about how the interface can help us to represent a new vision of Page Object and what benefits we could get from it.
The second - modern methods for coverage measuring are good only for development. However, the amount of useful information from coverage reports is extremely small.
It will a journey about autotest coverage. Imagine, that your project manager asks you - Do we have autotests for these buttons (forms, pages) or what autotests cover these Rest APIs with 'special' query parameters? I will show you two simple solutions that allow you to evaluate the coverage of tests written by test automation specialists.
a) API tests. There is a swagger and during his execution, we also collect a swagger. We count coverage as a diff of two swaggers. We can see what is covered, what is not and what data used.
b) Web tests. During the execution of tests, we collect information about elements, pages, and actions. As a result, we have such a format: page -> elements -> actions -> tests. All information representing in Chrome Plugin, that I will share with you.
And last, I am going to consider what cons have current TMS (QA time management systems) and what to do if you want to make an automation-first strategy on your project? Moreover, you look for one TMS for developers and QAs/or you want to save the Allure report of all autotests in one place?
Here you are! Allure Server has already released. I will overview the most important features and how to start using it from scratch.
If you have an interest in the above themes come to my talk.
-
keyboard_arrow_down
Tomasz Wojciechowski / Tomasz Wojtuń - How to run 2500 selenium tests in an hour.
Tomasz WojciechowskiSr. QA EngineerStepStone Services Sp.z o.o.Tomasz WojtuńDevOps EngineerStepStoneschedule 3 years ago
45 Mins
Case Study
Advanced
If you are tired of waiting for your selenium tests status and old fasioned ways of reporting tests status, you are in a good place.
We will show you our test environment setup and how we run over 2500 tests in about an hour. Not cool enough? Take a look how we make reports via slack.
Do you want to check if we can be even more faster?
-
keyboard_arrow_down
Prateek Sethi - Enhance Test Automation ROI with Docker based Selenium Environment
90 Mins
Workshop
Intermediate
Quick Description :
To support the continuously evolving software industry, DevOps and Agile practices have established themselves as a big helping hand. With ever-increasing large scale digital transformation projects, organizations realize that the only way to shorten the product development cycles is to automate the processes involved in the delivery pipeline.
There are many tools and technologies to establish DevOps, but one of the most important ones is containerization, which gives flexibility in application packaging and automating a number of processes involved in the delivery pipeline. Containers have all the needed configurations and dependencies, for faster delivery of committed items to the customer. Docker is an open-source solution that makes it easier to create, deploy and run applications securely using containers. Therefore, quick feedback and testing applications with different environments can be achieved using Selenium with Docker.
My Proposal :
We can reduce the significant effort in provisioning, maintaining, running the Test Automation on different environment setup using, Docker with Test Automation. Some of the benefits are:
Benefits of using Docker with Selenium:
- Test an application on multiple browsers and their different versions without installing them on multiple machines
- To test multiple application builds concurrently without updating the code for different environments
- To test your applications on multiple devices/OS/Browser combinations on a single machine.As Selenium within Docker will make it much quicker to test different environments by using the preconfigured containers.
- Also, I will cover topics like how to set up the Selenium multi-environment setup using Docker concepts like Compose file, etc.
Best practices using Selenium with Docker
- Common Dos and Don'ts for this setup.
- How to avoid over maintenance of your Test Harness.
- Infrastructure setup
Increase the power of your Test Automation Setup with Kubernates:
How to handle Selenium grid-based dockerize nodes with Kubernates.
-
keyboard_arrow_down
Khanh Do - Leveraging Artificial Intelligence to create self-healing tests
45 Mins
Tutorial
Intermediate
A key requirement for successful test automation is to get past the brittle or fragile nature of test scripts. Any Selenium (or Appium) developer has encountered the dreaded "NoSuchElement Exception". A locator that worked yesterday may fail today. What's a test engineer to do?
Fortunately the field of AI provides promising solutions and allows for the creation of self-healing tests. Tests that can find elements across all environments. Tests that can learn from "human-in-the-loop" intervention and work perfectly thereafter. Imagine automated tests that "just work"!
This session will look at how to apply the latest in AI and Machine Learning technologies to improve your test scripts. With the plethora of new open source AI libraries made available by companies such as Google, the ability to leverage AI in your applications is more accessible than ever.
This session will be a primer on AI technologies and how they can be utilized for perfect test automation.
-
keyboard_arrow_down
Nishil Patel - Tesbo : An Awesome Test Automation Framework with Plain English Text But not BDD
45 Mins
Demonstration
Beginner
Tesbo is a hybrid Test Framework built top on the Selenium which allows you to use the plain English language to define the test which helps you to reduce the development and maintenance time and efforts. sounds similar to the BDD framework (i.e. Cucumber, Specflow, Gauge, etc...) ??? But No It Isn't... It's much better than Cucumber.
In this session, we will look into why we have developed Tesbo and how it will reduce the development and maintenance times of web and mobile test script.
This session will focus on the
- Introduction of Tesbo
- Advantages of Tesbo
- Feature description
- Test Development and Execution demo
- Future plans for Tesbo