My Items

I'm a title. ​Click here to edit me.

Moving Beyond Selenium

In this article, NGA will walk you through a list of tools and libraries that are commonly used in test automation nowadays other than Selenium. Many QA Engineers asked this question, We know Selenium library very well. What shall we learn next that is helpful for us as QA Automation Engineer. So this is the best post to answer that commonly asked question from QA Engineers. Since the list is huge, NGA suggests QA Engineer should select any particular tool or library at a time, do significant hands-on work like downloading the library code from a shared link, integrate with an already developed automation framework, understand library methods and once hold good expertise start exploring the next available library. This approach let QA Engineers learn a lot more things other than selenium over a period of time and stay competitive in the Job Search market. So go ahead and start exploring the test automation world beyond Selenium. Web UI Based Test Automation Frameworks: Language: Java SikuliX - SikuliX automates anything you see on the screen of your desktop computer running Windows, Mac or some Linux/Unix. It uses image recognition powered by OpenCV to identify and control GUI components. This is handy in cases when there is no easy access to a GUI's internals or the source code of the application or web page you want to act on. Selenide - Concise API around Selenium to write stable and readable UI tests. Selenified - An open source framework to simplify Selenium Testing. It provides a wrapper for Selenium calls to add detailed reporting, error handling, simple test setup in a thread-safe manner, and can run either locally or in the cloud (Grid or SauceLabs). Serenity BDD (Thucydides) - An innovative open source library that helps you write more effective automated acceptance tests, and uses these acceptance tests to generates rich documentation and reports about your product and project. htmlelements - A Java framework providing easy-to-use way of interaction with web-page elements in web-page tests. atlassian-selenium - An open-source (BSD) project that aims at facilitating development of functional tests in Selenium/WebDriver libraries. stevia - Open Source QA Automation Testing Framework by Persado darcy - An open source Java 8 framework for modeling user interfaces as page objects with a declarative, automation-library-agnostic DSL Satisfy - An open source Java framework based on Thucydides + Jbehave. Supports to work with WebUI, SOAP, REST, emails, files and generate random data out of the box. JDI Light - is the test Framework for UI test automation that helps to makes your tests fast and sustainable and provide obvious and predictable test run result. Geb Framework - A groovy test automation framework designed for the use with the Webdriver Page Object model and the Spock Framework for (BDD). FluentLenium - FluentLenium helps you writing readable, reusable, reliable and resilient UI functional tests for the browser. FluentLenium provides a Java fluent interface to Selenium, and brings some magic to avoid common issues faced by Selenium users. Selion - builds on top of TestNG and Selenium to provide a set of capabilities that get you up and running with WebDriver in a short time. It can be used for testing web and mobile applications. Frameworkium - automation framework for web, app, and API testing. Integrates: saucelabs, allure, rest-assured, jackson, gson. Published on Jitpack repository. Carina - Carina is a Java-based test automation framework that unites all testing layers: Mobile applications (web, native, hybrid), WEB applications, REST services, Databases. NoraUi - NoraUi, for NOn-Regression Automation for User Interfaces, is a Java framework based on Selenium, Cucumber and Gherkin stack to create GUI testing projects that can be included in the continuous integration chain of single/multi applications web solution builds. Cubano - Cubano is a test automation framework written in Java that provides a structure for developing acceptance and regression tests so your team can hit the ground running and not have to waste time needlessly building and maintaining your own framework. Jalenium - Jalenium is a Java Selenium API which can be easily integrated to any maven Selenium Java project which uses Selenium JAR files. BrowserMob Proxy - Is a simple utility that makes it easy to capture performance data from browsers, typically written using automation toolkits such as Selenium and Watir. Selenoid - Selenium Hub successor running browsers within containers. Scalable, immutable, self hosted Selenium-Grid on any platform with single binary. Selenium-Grid-Extras - Simplify the management of the Selenium Grid Nodes and stabilize said nodes by cleaning up the test environment after the build has been completed Selenium Grid Extensions - Extend Selenium grid with extra functionality. Execute Sikuli tests in combination with Selenium. Selenium Grid Router is a lightweight server that routes and proxies Selenium Wedriver requests to multiple Selenium hubs. Docker Selenium Grid - A project to provide native video recording support for Selenium Grid and was initially designed to be used with docker-selenium project. Video Recorder Java - This library allows easily record video of your UI tests by just putting couple annotations. Zalenium - Allows anyone to have a disposable and flexible Docker-based Selenium Grid infrastructure featuring video recording, live preview and online/offline dashboards. SikuliFactory - A based PageFactory model for SikuliX. Mailosaur - Java client for email testing/automation via Mailosaur. TrueAutomation.IO - One of the main tasks of TA is to solve problem of working with unstable locators. Mobile Based Test Automation Frameworks: Language: Java Appium - An open source test automation framework for use with native, hybrid and mobile web apps. It drives iOS and Android apps using the WebDriver protocol. Calabash - A cross-platform test automation framework for Android and iOS native and hybrid applications. Calabash’s easy-to-understand syntax enables even non-technical people to create and execute automated acceptance tests for apps on both of these mobile platforms. Robotium - An Android test automation framework that fully supports native and hybrid applications. Robotium makes it easy to write powerful and robust automatic black-box UI tests for Android applications. With the support of Robotium, test case developers can write function, system and user acceptance test scenarios, spanning multiple Android activities. UIautomator - Provides an efficient way to test UIs. It creates automated functional test cases that can be executed against apps on real Android devices and emulators. It includes a viewer, which is a GUI tool to scan and analyze the UI components of an Android app. Espresso - A pretty new test automation framework that got open-sourced just last year, making it available for developers and testers to hammer out their UIs. Espresso has an API that is small, predictable, easy to learn and built on top of the Android instrumentation framework. You can quickly write concise and reliable Android UI tests with it. API Test Automation Frameworks: hikaku - A library that tests if the implementation of a REST-API meets its specification. Karate-DSL - Karate is a BDD javascript framework which enables you to script a sequence of calls to any kind of web-service and assert that the responses are as expected. It makes it really easy to build complex request payloads, traverse data within the responses, and chain data from responses into the next request. Karate's payload validation engine can perform a 'smart compare' of two JSON or XML documents without being affected by white-space or the order in which data-elements actually appear, and you can opt to ignore fields that you choose. Retrofit - A type-safe HTTP client for Android and Java. REST-Assured - A library for testing and validation of REST services in Java. Windows UI Test Automation Frameworks: SikuliX - SikuliX automates anything you see on the screen of your desktop computer running Windows, Mac or some Linux/Unix. It uses image recognition powered by OpenCV to identify and control GUI components. This is handy in cases when there is no easy access to a GUI's internals or the source code of the application or web page you want to act on. Winium for Desktop - Winium.Desktop is an open source test automation tool for automated testing of Windows application based on WinFroms and WPF platforms. WinAppDriver - Windows Application Driver (WinAppDriver) is a service to support Selenium-like UI Test Automation on Windows Applications. This service supports testing Universal Windows Platform (UWP), Windows Forms (WinForms), Windows Presentation Foundation (WPF), and Classic Windows (Win32) apps on Windows 10 PCs. Server Side Test Automation Frameworks: Language: Java Citrus - Test framework written in Java that is able to create fully automated end-to-end use case tests for enterprise SOA applications. Citrus simulates surrounding interface partners supporting a huge set of different transports and protocols like HTTP, JMS, TCP/IP, FTP, SOAP, XML and JSON. Mocking Frameworks: Language: Java WireMock is a flexible library for stubbing and mocking web services. Unlike general purpose mocking tools it works by creating an actual HTTP server that your code under test can connect to as it would a real web service. MockServer can be used for mocking any system you integrate with via HTTP or HTTPS (i.e. services, web sites, etc). Mockito is a mocking framework that lets you write beautiful tests with a clean & simple API. PowerMock is a Java framework that allows you to unit test code normally regarded as untestable. Assertion Frameworks: Language: Java AssertJ - Powerful fluent assertion framework. Compatible with any xUnit framework. Truth - Fluent assertion framework for Java and Android from Google. JSONassert - JSON assertion library. Reporting Frameworks: Language: Java ReportPortal - powerful server-client reporting tool. Reduce the effort to work with results. Powered with Machine Learning, Providing historical data (statues) of executions in on click, logs, screenshost and any binary attachement. Trends, flaky test, most failed, longest test via custom widgets and dashboards, which give visibility to the team, leads, managers and falcon-eye view for VPs. Provide ability to categorize fails by custom defect types and utilize power of Machine Learning to detect fails, based on collected patterns. Give benefits of real-time integration: no need to wait execution ending. Any language, any platform. Free, Open Sourced. Java integrations Allure - Open-source framework designed to create test execution reports clear to everyone in the team. Gradle Allure Plugin - 3rd-party Gradle Allure Plugin allows you to integrate Allure into spock, testing and junit tests. ExtentReports - HTML reporting library for .NET and Java which is extremely easy to use and creates beautiful execution reports. It shows test and step summary, test steps and status in a toggle view for quick analysis. ReportNG - ReportNG is a simple HTML reporting plug-in for the TestNG unit-testing framework. Zafira - Zafira is central automation reporting system that is build on the top of Java Spring Framework. It dramatically increases the transparany of test automation results and provides better undestanding of product quality. Difido-reports - This project aims to provide a generic implementation for HTML test reports. cucumber-reporting - This is a Java report publisher primarily created to publish cucumber reports on the Jenkins build server. It publishes pretty html reports with charts showing the results of cucumber runs. It has been split out into a standalone package so it can be used for Jenkins and maven command line as well as any other packaging that might be useful. Generated report has no dependency so can be viewed offline. Unit Testing Frameworks: Language: Java JUnit - Common testing framework. TestNG - TestNG - Testing framework. Test Data Supplier - TestNG DataProvider wrapper which helps to supply test data in a more flexible way. Sunshine - Sunshine is a wrapper on Java xUnit test runners (such as TestNG, Junit...) which allows automatically find classes with tests within the jar file, passes them to desired test runner and reports an execution status. XMLUnit - testing and comparing XML output for Java and .NET TDD \ ATDD \ BDD Based Testing Frameworks: Language: Java JBehave - A framework for Behaviour-Driven Development (BDD). BDD is an evolution of test-driven development (TDD) and acceptance-test driven design, and is intended to make these practices more accessible and intuitive to newcomers and experts alike. Cucumber-JVM - A pure Java implementation of Cucumber that supports the most popular programming languages for the JVM. JGiven - A developer-friendly and pragmatic BDD tool for Java. Developers write scenarios in plain Java using a fluent, domain-specific API, JGiven generates reports that are readable by domain experts. easyb - A behavior driven development framework for the Java platform. By using a specification based Domain Specific Language, easyb aims to enable executable, yet readable documentation. Robot Framework - A generic test automation framework for acceptance testing and acceptance test-driven development (ATDD). Spectrum - A BDD-style test runner for Java 8. Inspired by Jasmine, RSpec, and Cucumber. Gauge - Gauge is a light-weight cross-platform test automation tool with the ability to author test cases in the business language. Spock - Specification testing framework for Java and Groovy. Concordion - Flexible, extensible BDD/SBE tool that creates beautiful living documentation using business language cucumber-report-db - Stores results of BDD tests with Cucumber-JVM in a database and provides reporting capabilities. Code analysis and coverage Frameworks: Language: Java SonarQube - Open source project to manage code quality. Gradle Quality Plugin - Static code analysis for Java and Groovy projects using Checkstyle, PMD, FindBugs and CodeNarc. Plugin implements unified console output for all quality plugins which greatly simplifies developer workflow: only console is required for working with violations and makes it feel the same as java compiler errors. Qulice - Qulice is a static analysis quality control instrument for Java projects. It combines all the best static analysis instruments and pre-configure them. You don't need to use and configure them individually any more. JaCoCo - JaCoCo is a free code coverage library for Java, which has been created by the EclEmma team based on the lessons learned from using and integration existing libraries for many years. #NGAutomation

Selenium Locator Strategies

Check commonly used locator strategies to find web elements while working complex web applications. XPATH Selectors CSS Selectors #NGAutomation

Selenium Commonly Used Commands

Check commonly used selenium commands which can be referred by UI Automation Developers anytime WebDriver Initialization Finding Web Elements Basic Browser Operations Basic Element Operations Advance Element Operations Advance Browser Operations Advance Browser Configurations #NGAutomation

Next Generation Automation Whats App Broadcast feed Live Now

Silent features of Whats App Broadcast feed from Next Generation Automation: 1. Feed let QA Engineers get latest technology updates related to testing as shared by NGA 2. Sharing Grow India Model updates and how its performing 3. Sharing Training Programs Updates where team actively working 4. Sharing Webinar invite links to let maximum QAs join the interactive sessions live hosted by NGA Academy 5. Sharing project openings where NGA is working actively for Clients 6. Participate in Proof of Concepts where NGA Academy actively working Membership free for a lifetime unless any QA like to quit by his choice. Click below URL and launch in your chrome browser to join the group: Group Join Invite link Click here #NGAutomation Building better QA for tomorrow

Evaluation Criteria to Hire Automation QAs now a days

In this post, I will share 4 important parameters that every QA Engineer must worked before appearing for any Automation Interview: Parameter1: Knowledge about Testing Tools Automation, API Testing, Selenium, Rest Assured, Jmeter We obsess on giving the best error and bug-free experience to our user. And therefore, you will be assessed on your skills in automation testing and using Frameworks like Selenium, Appium, Espresso to do so. Parameter 2: Scenario Assessment Automation Knowledge, Scenario Creation, Testing Concepts, Blackbox Testing Techniques, Linux basics. You will be assessed in detail on automation and on your ability to create positive/negative scenarios for testing. We also expect you to be well informed testing concepts like Blackbox testing techniques and Linux basics. Parameter 3: Project Experience Past Projects, Real Time Assessment, Simulation Exercise After thoroughly assessing your testing skills, we will now deep dive into your previous projects and understand their synergy and relevance with the projects where we are working currently. We will also challenge you with some real time simulation exercises. Brace up for some testing, folks! Parameter 4: Team Fitment Behavioral Assessment, Culture Fit, Project Knowledge, Role Operation Be yourself. It works out better for everyone if we're genuinely and can see if we're a cultural fit for each other. Everyone here is focused on our mission, so you should figure out what it is. #NGAutomation

LinkedIn Resume Star Strategies

1. Choose the right profile picture for LinkedIn Your profile picture is your calling card on LinkedIn – it’s how people are introduced to you and (visual beings that we are) it governs their impressions from the start. 2. Add a background photo Your background photo is the second visual element at the top of your profile page. It grabs people’s attention, sets the context and shows a little more about what matters to you. More than anything, the right background photo helps your page stand out, engage attention and stay memorable. 3. Make your headline more than just a job title There’s no rule that says the description at the top of your profile page has to be just a job title. Use the headline field to say a bit more about how you see your role. You can check top linked in profiles with maximum followership on LinkedIn to get more thoughts how to create your LinkedIn Headline. 4. Turn your summary into your story Your summary is your chance to tell your own story – so don’t just use it to list your skills or the job titles you’ve had. Try to bring to life why those skills matter – and the difference they can make to the people you work with. This is your most personal piece of content marketing – and it’s worth the effort. 5. Let your buzzwords describe your work as well Buzzwords are adjectives that are used so often in LinkedIn headlines and summaries. Just using these words won’t convince people that you have these qualities. You need to demonstrate them as well – both in the way you describe yourself, and in the way you use LinkedIn profile features to show what you’re about. 6. List your relevant skills It’s one of the quickest of quick wins on LinkedIn – scroll through the list of skills and identify those that are relevant to you. Doing so helps to substantiate the description in your Headline and Summary, and provides a platform for others to endorse you. However, the key here is staying relevant. A long list of skills that aren’t really core to who you are and what you do, can start to feel unwieldy. Take time for a spring clean of your skills list every now and then. 7. Get maximum endorsements Endorsements from other members substantiate your skills and increase your credibility. How do you get endorsed on LinkedIn? For starters, go through your network and identify connections who you feel genuinely deserve an endorsement from you – that’s often the trigger for people to return the favour. Don’t be afraid to reach out with a polite message asking for endorsement for a few key skills as well. Remember though – relevance matters. Reach out to people whose endorsement you’d really value. 8. Take a skills assessment A skills assessment is an online test that enables you to demonstrate the level of your skills, and display a Verified Skills badge on your profile. Data shows that candidates with verified skills are around 30% more likely to be hired for the roles they apply for – and displaying proof your abilities strengthens your personal brand more generally as well. Displaying the results of your skills assessments is entirely voluntary, and you can retake the tests as often as you like before showing that you’ve passed. 9. Request recommendations Endorsements give people viewing your profile a quick, visual sense of what you’re valued for. Recommendations take things a step further. They are personal testimonials written to illustrate the experience of working with you. There’s a handy drop-down menu in the Recommendations section of your profile that makes it easy to reach out to specific contacts and request recommendations. Take the time to think about who you would most value a recommendation from – and personalize your request. It’s worth the extra effort. 10. Showcase your passion for learning When you complete a course on LinkedIn Learning, you’ll have the opportunity to add a course certificate to your LinkedIn profile. You do this from within the Learning History section of your LinkedIn Learning account – where you can also send updates about your learning to your network if choose. 11. Share media and knowledge collateral The knowledge collateral that you produce for your business can add an extra dimension to your own profile as well. Sharing case studies, white papers and other knowledge content helps to show what the level you work for is all about – and helps people understand what makes you tick. It demonstrates passion and commitment as well. For Automation QAs, sharing blogs or write own LinkedIn Articles describing Automation principles related to tools & technologies helpful. 12. Get credit for your thought-leadership with Publications The Publications section is one of the most under-used elements in LinkedIn profiles – and that means that you can really stand out from the crowd when you use this feature to draw attention to existing thought-leadership content. Have you helped to write an eBook or a White Paper? Or written a post on your company’s blog? The Publications section links your profile to these assets. You can also participate in Next Generation Automation Publications in form of blogs and update your resume with the generated Blog URL. 13. Highlight your Professional Experience All your job experiences should be mentioned on your LinkedIn profile in the same way as in your CV. This is an essential segment for the reader to understand what you do currently and what have you accomplished so far. So, ensure that you describe your current role well enough! NGAutomation Building better QA for tomorrow

Rest Assured Coding Exercises

1. Write Code using Rest Assured API to verify API Response Code 200. Here is JSON file to simulate the API 2. Write Code using Rest Assured API to verify API Response Code 404 Here is JSON file to simulate the API 3. Write Code using Rest Assured API to verify Content Type of API response Use JSON File as mentioned in Exercise 1 to simulate the API response. 4. Write Code using Rest Assured API to verify AP Response Body Contents Use JSON File as mentioned in Exercise 1 to simulate the API response. 5. Write Code using Rest Assured API to perform POST Operation using Model Class and check API Response code 200 Model class to use as below: Use JSON File as below to simulate the API response. 6 . Write Code using Rest Assured API to perform POST Operation and check contents of Response Body using Model Class Use JSON File as below to simulate the API response. Use Model Class as shown in Exercise 5. 7. Write Code using Rest Assured API to perform Data driven testing and verify contents of Response Body Use JSON File as below to simulate API Response along with Exercise 1 JSON:

Learn Selenium Web Driver Architecture

Selenium Web Driver Architecture every QA Engineer must know if he is looking forward to start career as Automation QA. In this post will share architecture of Selenium Web Driver and how your test script start performing multiple operations on Web browser. Behind the scenes its not as easy as it looks. As there is web driver server specific to every browser running who actually responsible for converting test scripts commands into http commands and communication of messages exchanged via json wire protocol. Selenium Web Driver Architecture contains 4 main components: Selenium Client Library JSON WIRE PROTOCOL Over HTTP ClientBrowser Drivers Browsers Block Diagram 1. Selenium Client Libraries/Language Bindings Selenium supports multiple libraries such as Java, Ruby, Python, etc. Selenium Developers have developed language bindings to allow Selenium to support multiple languages. If you wish to know more about libraries, kindly refer to the official site for Selenium libraries. 2. JSON WIRE PROTOCOL Over HTTP Client JSON stands for JavaScript Object Notation. It is used to transfer data between a server and a client on the web. JSON Wire Protocol is a REST API that transfers the information between HTTP server. Each BrowserDriver (such as FirefoxDriver, ChromeDriver, etc.) has its own HTTP server. 3. Browser Drivers Each browser contains a separate browser driver. Browser drivers communicate with the respective browser without revealing the internal logic of the browser’s functionality. When a browser driver has received any command then that command will be executed on the respective browser and the response will go back in the form of an HTTP response. 4. Browsers Selenium supports multiple browsers such as Firefox, Chrome, IE, Safari, etc. Demo In real time, you write a code in your UI (say Eclipse IDE) using any one of the supported Selenium client libraries (say Java). Example: // System Property for IEDriver System.setProperty("webdriver.ie.driver", "D:\\IE Driver Server\\IEDriverServer.exe"); // Instantiate a IEDriver class. WebDriver driver=new InternetExplorerDriver(); driver.get("https://www.nextgenerationautomation.com"); Once you are ready with your script, you will click on Run to execute the program. Based on the above statements, the IE browser will be launched and it will navigate to Next Generation Automation website. Once you click on ‘Run’, every statement in your script will be converted as a URL, with the help of JSON Wire Protocol over HTTP. The URL’s will be passed to the Browser Drivers. Here, in this case, the client library (Java) will convert the statements of the script into JSON format and further communicate with the IE Driver. Every Browser Driver uses an HTTP server to receive HTTP requests. Once the URL reaches the Browser Driver, then it will pass that request to the real browser over HTTP. Once done, the commands in your Selenium script will be executed on the browser. In the case of Chrome browser, you can write your Selenium script as shown below: // System Property for ChromeDriver System.setProperty("webdriver.chrome.driver", "path of the exe file\\chromedriver.exe"); // Instantiate a ChromeDriver class. WebDriver driver = new ChromeDriver(); driver.get("https://www.nextgenerationautomation.com"); If the request is POST request, then there will be an action on the browser. If the request is a GET request then the corresponding response will be generated at the browser end. It will be then sent over HTTP to the browser driver and the Browser Driver over JSON Wire Protocol and sends it to the UI (Eclipse IDE). So, that was all about Selenium WebDriver Architecture. Additional Information: Automation in Selenium: Page Object Model and Page Factory Learn How to start career as Automation QA. #NGAutomation

Factory Design Pattern Coding Exercise

Factory Design Pattern very common pattern used for framework development using Selenium. Automation QAs must know about this pattern if they are going to develop automation framework based on Selenium APIs. In this post we will share coding exercise that help you understand about pattern in more details. A Factory Pattern or Factory Method Pattern says that just define an interface or abstract class for creating an object but let the sub classes decide which class to instantiate. In other words, sub classes are responsible to create the instance of the class. The Factory Method Pattern is also known as Virtual Constructor. Advantage of Factory Design Pattern Factory Method Pattern allows the sub-classes to choose the type of objects to create. It promotes the loose-coupling by eliminating the need to bind application-specific classes into the code. That means the code interacts solely with the resultant interface or abstract class, so that it will work with any classes that implement that interface or that extends that abstract class. Usage of Factory Design Pattern When a class doesn't know what sub-classes will be required to create When a class wants that its sub-classes specify the objects to be created. When the parent classes choose the creation of objects to its sub-classes. Learn Factory Pattern by Example and Video Here is You tube video that will talk about the project that we going to develop using Factory Pattern Here is sample problem which need to be solved using Factory Pattern: Here is project structure which need to be developed. Try to write your own code before downloading the shared code. Here is Download link to download project source code: Click here to download

Abstract Factory Design Pattern Coding Exercise

In this post we will share information regarding Abstract Factory Pattern. Abstract Factory Pattern very important for Automation QAs to understand if need to develop complex automation frameworks in high performing business applications testing. Brief Introduction about Abstract Factory Design Pattern The Abstract Factory Pattern is one of the creational design patterns. We can say Abstract Factory patterns acts as a super-factory which produces other factories. The role of the Abstract Factory is to provide an interface for creating families of related or dependent objects without specifying their concrete classes. If we are using an abstract factory pattern, then the client program will never create platform objects directly, they ask the factory to perform this task for them. So the factory object has the total responsibility for proving this service for the entire platform family. You can use this pattern if- You need your application to be independent of how its objects are created. To decouple classes and way its objects are created. If your business logic involves families of related or dependent objects. The pattern is great when creating predefined objects and providing abstraction, and automation projects majorly comes into picture when all interfaces have developed and need to be tested. That's why Abstract Factory Pattern significantly used across complex business applications test automation. Learn Abstract Factory Pattern by Example and Video Here is You tube video that will talk about the project that we going to develop using Abstract Factory Here is sample problem which need to be solved using Abstract Factory: Here is project structure which need to be developed. Try to write your own code before downloading the shared code. Here is Download link to download project source code: Click here to download

Database Utilities Creation Coding Exercises

Data connectivity one major requirement for test engineers to test along with data correctness. And this can be made possible if you have right set of Database Utilities in your automation framework which can be extended as per your data testing needs. In this post, We are sharing common Database Utilities which can be used in live projects and also same can be used while solving coding exercises as given by overseas employers to test coding skills of Automation QAs. Exercise 1: Write method to Get all data from table in vector format Exercise 2: Write method to Get list of all available tables in database Exercise 3: Write method to Get list of column names for particular table Exercise 4: Write method to Get Column List for all available tables from data base Exercise 5: Write method to Establish Connection for given username and password Exercise 6: Write method to Execute database query for given username and password Exercise 7: Write method to Execute Update Query for given username and password Exercise 8: Write method to Execute Procedure Call for given username and password #NGAutomation Building better QA for tomorrow

Excel Utilities Creation Coding Exercises

Excel utilities creation very much required for any QA Engineer as all test scripts require some level of interaction with Data and excel utilities help you get interacted with excel sheets where many enterprises maintains its test data. In this post we will share common utilities that will be helpful for QA Engineers to use both live projects and to solve coding exercises which sometimes given by Overseas employers while hiring Automation QAs. Exercise 1: Write method to returns the row count in a sheet Exercise 2: Write method to returns the data from a cell based on Column Name and Row Number Exercise 3: Write method to returns the data from a cell based on Column Number and Row Number Exercise 4: Write method to write cell data based on colName and rowNumber with given data Exercise 5: Write method to write cell data based on colName and rowNumber with given data and URL Exercise 6: Write method to addsheet in given excel Exercise 7: Write method to remove sheet in given excel Exercise 8: Write method to add column in given sheet Exercise 9: Write method to remove column in given sheet Exercise 10: Write method to find whether sheets exists Exercise 11: Write method to returns number of columns in a sheet Exercise 12: Write method to add hyper link for given sheetname and screen shot column name #NGAutomation Building better QA for tomorrow