160 likes | 168 Views
Learn how to automate desktop applications using LeanFT, a powerful and lightweight functional testing solution designed for continuous integration and testing. This white paper explores LeanFT's features, integration capabilities, and its advantages over Selenium.
E N D
A solution for automating desktop applications with Java skill set • VeerlaShilpa • (Senior Software Engineer- Testing) Mysore NarasimhaRaju,Pratap (Test Automation Architect)
Abstract LeanFT is a powerful and lightweight functional testing solution built specifically for continuous integration and continuous testing that enables and encourages developers and QA to collaborate in agile teams by using the same tool for development and testing of applications. Keeping Agility in process we have designed light weight framework and implemented BDD (Behavior-Driven Development) approach for validating Regression Test cases mainly for window’s based application(Trouble Ticket application).Using LeanFT we can automate applications of technologies likeWeb, Java, Mobile, and Standard Windows and .NET Windows Forms. LeanFT supports development on standard IDEs with modern programming languages like C# and Java. And add open source templates like NUnit, TestNG and Junit to your IDE to help accelerate your coding and maintain your tests over time.Wehave developed our automation Script in java using TestNG Template. Concluding thoughts on LeanFT With UFT 12.5 a new version of LeanFT, HP is trying to address everybody involved in SDLC. Those who are not happy with lack of support in Selenium will be happy to switch to UFT+LeanFTcombination.Javaand C# are better alternatives and will lead to more collaboration between Dev and Test Teams leading to Continuous Integration, Continuous Delivery and Continuous Testing. This White Paper is all about how a selenium tester can automate a desktop application with Selenium skill set using LeanFT.
Introduction LeanFT is the new functional testing tool set from HP.As the name suggests it’s the leaner functional testing tool.Essentially, LeanFTcombines the best of both the vendor-based and open-source worlds by morphing Selenium with some key functionality currently found in UFT. Remember — Selenium is only for browser-based testing, and does not handle non browser-based popups and windows. This is a major issue, as most experienced testers working in an Enterprise environment will tell you. Quite often our test scripts have to deal with more than just web-based interactions.Our company's goal is to try automating as many tests as possible, and most of these integration tests could not be handled within the current framework.LeanFT solves this issue.WithLeanFT, I can now use my existingSelenum/Java framework and still be able to handle these integration-type tests.
Main Features of LeanFT: • MULTIPLE IDE SUPPORT :- Add LeanFT tool and templates to your IDE to help accelerate your coding and maintain your tests over time. • LEANFT PROJECT TEMPLATES :- Project templates based on popular testing frameworks: JUnit, NUnit, and MSTest that set up everything you need to access LeanFT. • INTEGRATION WITH :- • •Git, SvN • •Jenkins, TFS • •Cucumber, jBehave • •ALM
Main Functionality of LeanFT • OBJECT IDENTIFICATION CENTER A one-stop-shop where you can spy on your AUT objects, edit captured descriptions, generate test object code, and add objects to the application model. • APPLICATION MODEL Use this rich UI editor, embedded directly in the IDE to build a test object model of your Application, and maintain the test objects in a single location for use across your entire Testing suite. • COMPREHENSIVE REPORTING WITH FULL LIFECYCLE Get straight to the bottom of issues with LeanFT’s detailed description of test execution flow, including clear and actionable reasons for test failure at each step. Manage your test lab, execution and results either in HP ALM/QC or directly with CI and Source Control tools.
Lean FT vs Selenium: Selenium :Selenium is an open source tool and supports different types of languages such as Java, Python, PHP, C#, Ruby and pure JavaScript. Selenium, to a large extent, uses Java scripting and is the most influential Open Source Automation tool. LeanFT :Lean FT from HP is a new functional testing solution having a set of APIs. Lean FT provides powerful tools like Object Identification Center and Application Models. This tool is developed to target test automation engineers and developers from agile teams.
LeanFT using BDD approach: Short Definition of BDD: BDD is about implementing the software by describing its behavior from the perspectives of its stake holders, and customers. LeanFT supports behavior-driven development (BDD) techniques using Cucumber, and taking advantage of this capability can help development and management teams use shared tools and a shared process to collaborate more effectively on software development.
Project Setup: • Feature file Add the cucumber jar files to your test build path. Feature file name should be saved with extension ‘.feature’
2.Sample class will be created once we create a project : In the LeanFTTest class, we need to add the following annotation in the class. @RunWith(Cucumber.class)
3.Create one java class in same package: Inside this class we need to implement: @Before section in which the LeanFT Reporter object is configured to start a new node in the report. @After section in which the LeanFT Reporter object is configured to end the node in the report.
Advantages of LeanFT • Better Error Handling • Choose programming language of your choice(C# or Java) • Create meaningful testing classes with Polymorphism, Inheritance and utilize other • OOPS Concepts. • Updated capabilities with each new .Net or java framework updates. • Better memory management • Integrate tests with Junit and NUnit, testNG or any other unit testing frameworks • tests. • Integration available with any Version control system. • Better integration with Continuous integration tools like Jenkins. • Also — in another non-HP-like move, if you have an existing UFT license you • automatically have access to LeanFT at no additional cost. However grass is not all green, there are some draw backs of using LeanFT • Web Services testing is not Part of LeanFT • BPT integration is not available • You cannot use record and playback(that’s obvious) • Can only be used for Mobile, Windows, WEB, .Net, SeibelUI, WPF and Insight Image • recognition.
Conclusion LeanFT has been specifically targeted at the Selenium user base – would be very interesting to see how this pans out in the marketplace in the next 12 months. Much of the recent increase in Selenium projects has been because of large organizations seeking to diversify their tools portfolios. Technology trends are extremely dynamic and you prepare today for anticipated changes or risk Obsolescence. I am excited to write this white paper, because the possibilities are endless – e.g., if you have all selenium tests and you want to include some of the windows based testing, which is not available in selenium, you can quickly include the LeanFT API’s to automate the windows based actions and then switch back to selenium.
About the Author Shilpa is a Senior Software Engineer working as Manual and Automation tester for 6 years with good knowledge on software test design and test execution methodologies. Working in Agile Methodology for 2.6 years. Worked on various kinds of automation tools and also have capability of upgrading skills with changing trends. Being working with a legacy product where agile adaptation comes with certain challenges, drove me towards publishing the paper. About Co-Author : • Pratap Mysore NarasimhaRaju working in Century Link in the capacity of Test Automation Architect and handling a team of 15 members. • A forward thinking, innovative, capable and committed test Project lead with a proven ability to build self sustaining high skill eco system , co-ordinate and work to define testing methodologies within a structured environment. Has got wide range of experience in automation tools from open source to commercial , web based , desktop , and API and backend applications . Having a strong executive leadership, negotiating and communicating skills and capable of providing authoritative guidance and advice to both in house and third party test teams. Has been following and participating in STC since 2010. References: https://learn2automate.blog/2016/05/21/leanft-java-tutorial-part-1-introduction/ http://www.testingvidya.com/hp-leanft-overview-lean-functional-testing/