"Selecting Mobile Application Automation Tools"

Total Page:16

File Type:pdf, Size:1020Kb

T23 Class 10/6/2011 3:00 PM "Selecting Mobile Application Automation Tools" Presented by: Pradeep Kumar Govindasamy Cognizant Technology Solutions Brought to you by: 340 Corporate Way, Suite 300, Orange Park, FL 32073 888‐268‐8770 ∙ 904‐278‐0524 ∙ [email protected] ∙ www.sqe.com Pradeep Govindasamy Cognizant Technology Solutions With more than twelve years of experience in the information technology industry, Pradeep Govindasamy currently holds the lead role for the Automation and Mobile Testing Center of Excellence at Cognizant. Pradeep started—and is now the research and development unit lead for—the automation and mobile practices which has more than 1500 experts servicing global customers. Pradeep has spoken on topics of automation, test data management, and tools at conferences worldwide including STARWEST, STAREAST 2011, Swiss Testing Day, HP Universe, and EuroStar. Mobile Testing Selecting Mobile Application Automation Tools Thursday, October 06, 2011 3:00 PM | ©2011, Cognizant 1 | ©2011, Cognizant Agenda Demystifying Mobile Platforms Understanding & Challenges l Introduction Testing Tool selection Criteria o to Understanding Cognizant tools framework Right Automatin the frameworks Mobile class termining n e i D Best 2 | ©2011, Cognizant Mobile Operating Systems Part – 1 Demystifying the Mobile World 3 | ©2011, Cognizant Mobile Platform iPhone OS Android Windows Phone Symbian Blackberry OS Current version 4.3 Current Version 3 Current Version 7 Symbian^4 Current version 6.0 Closed Source Open Source Closed Source Open Source Closed Source Apple Google Microsoft Visual Multitasking RIM Restricted Multi tasking Multi‐tasking Restricted Multi‐tasking Multi‐touch interface Multi‐tasking Safari web browser Chrome/ Webkit Browser Multi touch interface Mozilla Browser Webkit Browser Sync Patch updates Over the air updates I.E / Trident Sync/Patch OTA Sync/Patch OTA 4 | ©2011, Cognizant World Wide OS Market Share Trend Worldwide Smartphone operating system (OS) market share in 2009‐2015, according to Gartner Operating Systems 2009 2010 2011 2015 market share market share market share market Share Android 3.9% 22.7% 38.5% 48.8% BlackBerry 19.9% 16.0% 13.4% 11.1% iOS 14.4% 15.7% 19.4% 17.2% Symbian 46.9% 37.6% 19.2% 0.1% Windows Phone/Mobile 8.7% 4.2% 5.6% 19.5% Others 6.1% 3.8% 3.9% 3.3% Total smartphones sold 172 million 297 million 468 million 631 million 5 | ©2011, Cognizant What is Mobile App Mobile Applications are a rapidly developing segment of the global Mobile Market. They consists of software that runs on a mobile device and performs certain tasks before the user of the Mobile Phone. They can be downloaded physically through USB / WIFI from a desktop or can be downloaded by a web server over internet. IQ Video Players City Guide Audio Players Currency Converter Streaming Players Translators Graphical Viewers Multimedia Travel Weather Presentation Viewers Itinerary Calendars MOBILE Email Clients Calculators Productivity Application Diary Communication IM Clients Banking / Finance Browser apps Directory Services Social Network Apps Utilities Address Book manager File Manager Call Manager 6 | ©2011, Cognizant Types of Mobile Applications Native Applications Hybrid Applications Web Based Applications • Applications that reside on the device •Third party applications that are • Accessible through mobile browsers and are accessible at any point of time installed in the device •Interfaces with external •May require network connectivity • Requires network connectivity. systems/servers • Messaging, Telephony, Multimedia, • Google Chat / Messenger, shopping • Wireless Application Protocol (WAP) or PIM, etc… application on iPhone Hyper Text Transfer Protocol (HTTP) • Mobile Banking, Reservation system Deciding the type Depending on the requirements. Some apps are a better fit with web technologies than others. Knowing the pros and cons of each approach will help you make the right decision about which path is appropriate for your situation. 7 | ©2011, Cognizant Stop! – Quality check for Mobile Application Being the first Increase of Mobile Hurry‐to‐market increases greater Applications pressures usage of Applications •Failure and Security losses destroys the brand reputation •Test coverage •Unhappy Customer Remedy End to End testing is required for thorough validation of Mobile Applications. Mobile Automation testing is vital to ensure a high application quality and faster time to market in a highly competitive market Mobile Automation Testing becomes Paramount 8 | ©2011, Cognizant Image Area Part 2‐ Understanding the Components of Mobile Automation Testing ©2011, Cognizant 9 | ©2011, Cognizant Mobile Testing ? Mobile Testing Hardware / Software Device Testing Testing Certificate Application Content Factory testing Testing testing testing 10 | ©2011, Cognizant Mobile Testing ? Mobile Testing intends to enable greater mobile experience Mobile Application testing tests application on various parameters to enable defect free mobile applications Automating Mobile Application Testing can deliver greater benefits in-terms of cost and quality Factory Testing Hardware or Device Testing Certificate Testing Mobile Testing Application Testing Software Testing Content Testing 11 | ©2011, Cognizant Mobile App Testing Challenges DEVICE DIVERSITY HARDWARE • Multiple Platforms CHALLENGES • MMltilultiple Browsers • Limitations in • Rendering differences processing speed • Mobile devices have • Limitations of Memory different application size of mobile runtimes. • Differences in Communication Protocols of devices WAP/ HTTP. NETWORK CHALLENGES • Multiple type of Networks(GSM / GPRS / Wi‐Fi / Wi‐Max etc ) • Unpredictable time taken for data transfer • Different speed of connectivity across geographies • Multiple Network Operators with customized Network features 12 | ©2011, Cognizant Mobile Application Testing Eco System Test Tool Automation Tools Simulators Emulators Mobile Application Testing Real Devices Virtual Devices 13 | ©2011, Cognizant Mobile Automation Testing? Usual Rare Net ‐ Net Highly Quicker Though there are challenges the benefits reliable Why? of Automation supersedes the demerits Cheaper Robust In numerable OS/ Platforms variations Hardware devices/ OEM PiProcessing speed Limited Resources Small memory CHALLENGES Numerous Wi‐Fi, Wi‐Max, Connectivity modes Cellular networks Accelerometer Varying features Radio trasmitter 14 | ©2011, Cognizant A Typical Test Automation setup for mobile Emulator Automation tool Real Device Connectivity •Bluetooth •Wi‐Fi •USB •Remote 15 | ©2011, Cognizant Typical Mobile Automation Mobile applications under Test (AUT) App 1 App 2 App N Test Data Real Devices/ Emulator/ Remote Test Automation Engine Schedule and Management track test Tool Starts and automates test execution Interface Scheduler cases on the application s s s working on device and / or Acce emulator Defects Report Defects 16 | ©2011, Cognizant Mobile Automation Approach Understand Requirements and Budgets Non Traditional i.e Compatibility, Type of test Location based etc automation Traditional i.e Regression etc Determine feasibility of Automation Classify Application as Native, Hybrid , Web Based Scan markets to identify tools for Automation Determine the test tool for maximum automation coverage Evaluate cost benefit analysis of patch/ tool creation for AtAutoma tion Perform manual testing and create Execute manual testing and create test scripts Scripts for Automation Execute Automation test cycles Execute Automation test cycles 17 | ©2011, Cognizant Mobile Automation Approach Non Traditional i.e Traditional i.e Regression etc Compatibility, Location based etc Classify Application as Native, Understand Determine feasibility of Requirements and Hybrid , Web Based Automation Budgets Determine the test tool for Scan markets to identify tools for maximum automation coverage Automation Types of Test Perform manual testing and Automation Evaluate CBA of patch/tool create Scripts for Automation creation for Automation Manual execution, creation and Execute Automation test cycles execution of Automation test cycles 18 | ©2011, Cognizant Candidates for Mobile Automation Typical Candidates for Mobile Automation Business Testing Types Testing Tools • Complex business logic • Smoke and build acceptance • Less Dynamic UI components • Lengthy business flow Testing. • Across platform testing • Data Driven Test scenarios • Regression Testing • Testing with different carriers • Frequently changing • Synchronization Testing across various location Application under test • Compatibility Testing • User’s interaction with the • GUI TiTesting applicat ion • Test steps spanning across multiple test cases 19 | ©2011, Cognizant Image Area Part 3: Tools and Best Practices ©2011, Cognizant 20 | ©2011, Cognizant Tool Types Mobile Testing Tools Remote Based Desktop Based Industry Based Open Source • Squish • Robotium Device Anywhere • FoneMonkey • Selenium • JamoSolutions • Robot Perfecto Mobile • Keynote Selenium • Eggplant 21 | ©2011, Cognizant Image Area Part 3.1: Mobile Web Automation ©2011, Cognizant 22 | ©2011, Cognizant Mobile Web Automation Web Pages render differently on various mobile phone making Automation of Mobile Testing of Web Page Key to its success Automation Testing Approach User Agent Based Emulator / Device based Remote based Automation Testing Automation Testing Automation Testing Classify the testing types Compliance Testing •Compliance •Automated Testing tool to Gather Requirement for •End to End testing validate the content at
Recommended publications
  • Practical Example of Tcl Command Design in a Qt/C++ Graphical Application Tony Johnson October 18Th, 2017 Tony [email protected]
    Practical Example of Tcl Command Design in a Qt/C++ Graphical Application Tony Johnson October 18th, 2017 [email protected] Abstract Tcl provides excellent support for creating complicated user commands in applications that have correct-by-construction built-in help, support for hidden commands, support for position- independent switches, and more. This paper discusses the technical details for how we created one such command in our Qt-based application. Summary In this paper I will discuss the technical details around the design for the Tcl “wave” command in our Qt-based [1] application. Visualizer is a GUI for displaying and analyzing simulation waveforms. It is driven by the user either via standard GUI operations such as menu selections, button clicks, drag and drop, key accelerators, etc or via commands passed in through a command prompt which is a Tcl shell. Because GUI operations are inherently difficult to automate among other reasons, there was a strong need to have a command for our waveform window that could do everything that could be done via the GUI. Since we already had a Tcl shell in our application, the obvious answer was to create a Tcl command to provide this capability. Luckily Tcl is well suited for implementing such a complex command. Background and Motivation Command-based control of graphical user interface interactions is important for many different reasons. The four key reasons that motivated this work were: Testing; User Control; 3rd Party Access; Save/Restore; and Expandability. Testing Unless you want to retest the GUI operations in your application by hand with every major release, minor release, feature addition and bug fix (trust me, you don’t), then you will want to have some way to create automated tests for GUI interactions.
    [Show full text]
  • Squish Coco 3.3.2 - Copyright ©2015 Froglogic Gmbh CONTENTS
    Squish Coco 3.3.2 - Copyright ©2015 froglogic GmbH CONTENTS Contents 1 Introduction 1 1.1 Squish Coco - Code Coverage Tool for Tcl, C# and C/C++ . .1 1.2 CoverageScanner—Instrumentation during the Generation . .2 1.3 CoverageBrowser—View, Analyse, and Manage, Code Coverage Results . .2 I Quick Start and Tutorials 4 2 Synopsis 5 3 Using Squish Coco 6 4 Creating an instrumented project 7 4.1 Installing Squish Coco ..............................................7 4.2 C++ on Microsoft Visual Studio using the Microsoft Visual Studio Add-in . .7 4.3 C# on Microsoft Visual Studio . .8 4.4 Tcl.........................................................9 4.4.1 Using more than one Tcl version on one system . 10 4.5 Command Line Tools . 10 5 Generating Instrumentations Without Modifying Projects 12 5.1 GNU Make . 12 5.2 Microsoft NMake . 12 5.3 Microsoft Visual Studio . 13 5.4 Microsoft MSBuild . 13 5.5 Mono C# XBuild . 13 6 Instrumenting a simple project 14 6.1 UNIX and Apple Mac OS X setup . 14 6.1.1 Setup . 14 6.1.2 Structure of the parser directories . 15 6.1.3 Compiling and testing . 15 6.1.4 Instrumentation . 15 - i - froglogic GmbH CONTENTS 6.1.5 How the project is instrumented . 16 6.1.6 Additional changes . 17 6.2 Microsoft Windows setup . 17 6.2.1 Setup . 17 6.2.2 Structure of the parser directories . 17 6.2.3 Compiling and testing . 18 6.2.4 Instrumentation . 18 6.2.5 How the project is instrumented . 19 6.2.6 Additional changes .
    [Show full text]
  • Analysis of Domain Specific Languages for GUI Testing: Rspec and Cucumber for Sikuli
    Journal of Multidisciplinary Engineering Science and Technology (JMEST) ISSN: 3159-0040 Vol. 2 Issue 1, January - 2015 Analysis of Domain Specific Languages for GUI testing: RSpec and Cucumber for Sikuli Ivan Evgrafov, [email protected] Raimund Hocke Roman S. Samarev, [email protected] Head Developer of SikuliX, Elena V. Smirnova, [email protected] [email protected], Nidderau, Germany Bauman Moscow State Technical University, Russia Abstract – This article is devoted to new usage tions. Little languages are small DSLs that do not include of the domain specific languages (DSL) for software many features found in General Purpose Programming with a Graphical User Interfaces (GUI) testing. This languages (GPLs). The testers use the GPPL in case if paper’s authors are a developers of the enhanced there is no time to create special DSL - in case of the short software Sikulix, the product which targeted for the term software project or if they could not find a proper programs with graphical interface testing. They pro- DSL, or if they could not create their own DSL. And they pose it as a functional basis for DSL. The SikuliX is use a domain-specific language (DSL), a computer lan- considering as an environment for domain specific guage specialized to a particular application domain in languages (DSL and DSEL). The results of two spe- such a case [17]. This is in contrast to a general-purpose cialized testing DSL’s estimation are being presented language (GPPL), which is broadly applicable across do- in this paper: the frameworks Rspec which belongs mains, and lacks specialized features for a particular do- to a Domain Specific Embedded Language (DSEL) main.
    [Show full text]
  • Squish for Java Data Sheet
    Home: www.froglogic.com E-Mail: [email protected] Evaluation: www.froglogic.com/evaluate ...one leap ahead Squish® for Java® DATA SHEET Functional GUI testing is a vital part of the development and QA process of today©s complex GUI applications. Manually testing the GUI of an application is error-prone, unreliable, unpredictable and slow. Automating this process on the other hand, allows to reliably deliver results quickly, enabling developers to find and fix regressions in nearly no time. This does not only save time but also money. Squish for Java is the most powerful automated GUI testing tool for Java™ Swing/AWT, SWT and Eclipse® Rich Client Platform (RCP) applications. Squish for Java offers dedicated support and tight integration for these GUI toolkits. Using the comfortable Squish IDE, tests are created using Squish©s event recorder. Verification and synchronization points can be easily inserted. Squish allows the user to choose between popular and open scripting languages such as Python, JavaScript, Perl and Tcl for test scripts. Therefore the complete set of language features, in addition to Squish©s test-specific APIs can be used to create powerful and robust tests. Squish for Java recognizes all standard Java GUI controls and offers special support for complex widgets such as tree-, table-, list and menu controls. In addition Squish for Java recognizes custom Java controls. Squish for Java©s mechanism to identify Java GUI widgets is very robust to make sure Squish tests will keep working while the application evolves. Squish for Java provides access to the complete Java API via its test scripting languages and offers access to all objects and properties via the Spy and verification point editor.
    [Show full text]
  • Jumpstart for Squish Datasheet
    Jumpstart for Squish Accelerate the Use of Squish Within Your QA Team Your acquisition of froglogic’s Squish® software product Optional Add-ons was the first step in creating a cost effective approach to Depending on your needs and staffing, ICS offers testing your Qt® based applications. The next step is for optional extensions to this program: your team to learn quickly how to use Squish in your en- vironment. ICS has developed Jumpstart for Squish for Extension of Test Infrastructure: ICS recommends organizations that are under tight deadlines and that the test scripts and test results be placed under cannot wait for the natural development of internal configuration management, and that you start with experts. By purchasing the Jumpstart for Squish service, overnight batch runs of your regression tests. As part of ICS experts will educate your team on the best practices this phase, ICS will help you publish the results of your in using Squish and help you get started immediately. nightly test runs on an internal web server for manageri- This Jumpstart will shave off weeks of trial and error and al review of test results. false starts. It is the best way to get started now, and get started right. Development of Initial Smoke Tests: We will work with your team to develop an initial set of smoke tests The Jumpstart for Squish is a 5-day engagement that that can be used immediately to validate the proper includes formal training installation, infrastructure functioning of your application. These initial tests will development, and test creation by ICS experts.
    [Show full text]
  • Froglogic Slidedeck
    Behavior Driven Development and Testing of Qt and QML applications Qt Developer Days 2014 by Reginald Stadlbauer About me . Name: Reginald Stadlbauer . Company: froglogic GmbH . Position: co-founder and CEO . Worked as Software Engineer at Trolltech and the KDE project About froglogic . HQ: Hamburg . Founded: 2003 . US presence since 2008 . Product focus on Squish - Squish GUI Tester (Cross-Platform/Cross-Technology GUI Test Automation) - Squish Coco (C, C++ and C# Code Coverage) . More than 3.000 customers world-wide Overview . What is BDD and TDD . Automating a Behavior Driven Test . Live Demo & Conclusion What is BDD / BDT? “BDD is a second-generation, outside-in, pull-based, multiple-stakeholder, multiple-scale, high-automation, agile methodology. It describes a cycle of interactions with well-defined outputs, resulting in the delivery of working, tested software that matters.” - Dan North http://en.wikipedia.org/wiki/Behavior-driven_development OR... What is BDD / BDT? . Based on Test Driven Development - Write (failing) test - Implement feature until test passes - Unit-Test level granularity (inside-out) . But - Focus on application's behavior and specification - Description in a human-readable DSL (e.g. Gherkin) - Less focus on implementation details Versatile usage of Feature Files . User story / feature specification . Communicate with customer / users . Documentation of acceptance test . Sequence to walk through for manual tests . Storyboard for automation of tests Why BDD/BDT . “Test first” development on a higher level . Clearly
    [Show full text]
  • Squish Manual I
    Squish Manual i Squish Manual Squish Manual ii COLLABORATORS TITLE : Squish Manual ACTION NAME DATE SIGNATURE WRITTEN BY April 10, 2009 REVISION HISTORY NUMBER DATE DESCRIPTION NAME Squish Manual iii Contents 1 Welcome 1 2 Release Notes 2 2.1 Version 3.4.4.....................................................2 2.1.1 General....................................................2 2.1.2 IDE......................................................2 2.1.3 Qt-specific..................................................3 2.1.4 Java-specific.................................................3 2.1.5 Web-specific.................................................3 2.1.6 Tk-specific..................................................3 2.1.7 Source Builds.................................................3 2.2 Version 3.4.3.....................................................4 2.2.1 General....................................................4 2.2.2 IDE......................................................4 2.2.3 Qt-specific..................................................5 2.2.4 Java-specific.................................................5 2.2.5 Web-specific.................................................5 2.2.6 Tk-specific..................................................5 2.2.7 Mac-specific (Cocoa/Carbon edition)....................................6 2.2.8 Source Builds.................................................6 2.3 Version 3.4.2.....................................................6 2.3.1 General....................................................6 2.3.2 Qt-specific..................................................7
    [Show full text]
  • Snake Wrangling for Kids, Learning to Program with Python by Jason R
    Snake Wrangling for Kids, Learning to Program with Python by Jason R. Briggs Version 0.7.7 Copyright c 2007. Published by... ah, no one actually. Cover art and illustrations by Nuthapitol C. Website: http://www.briggs.net.nz/log/writing/snake-wrangling-for-kids Thanks To: Guido van Rossum (for benevelont dictatorship of the Python language), the mem- bers of the Edu-Sig mailing list (for helpful advice and commentary), author David Brin (the original instigator of this book), Michel Weinachter (for providing better quality versions of the illustrations), and various people for providing feedback and errata, including: Paulo J. S. Silva, Tom Pohl, Janet Lathan, Martin Schimmels, and Mike Cariaso (among others). Anyone left off this list, who shouldn’t have been, is en- tirely due to premature senility on the part of the author. License: This work is licensed under the Creative Commons Attribution-Noncommercial- Share Alike 3.0 New Zealand License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/nz/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA. Below is a summary of the license. You are free: • to Share to copy, distribute and transmit the work • to Remix to adapt the work Under the following conditions: Attribution. You must attribute the work in the manner specified by the author or licensor (but not in any way that suggests that they endorse you or your use of the work). Noncommercial. You may not use this work for commercial purposes.
    [Show full text]
  • Metaprogramming Ruby
    Prepared exclusively for Shohei Tanaka What Readers Are Saying About Metaprogramming Ruby Reading this book was like diving into a new world of thinking. I tried a mix of Java and JRuby metaprogramming on a recent project. Using Java alone would now feel like entering a sword fight carrying only a banana, when my opponent is wielding a one-meter-long Samurai blade. Sebastian Hennebrüder Java Consultant and Trainer, laliluna.de This Ruby book fills a gap between language reference manuals and programming cookbooks. Not only does it explain various meta- programming facilities, but it also shows a pragmatic way of making software smaller and better. There’s a caveat, though; when the new knowledge sinks in, programming in more mainstream languages will start feeling like a chore. Jurek Husakowski Software Designer, Philips Applied Technologies Before this book, I’d never found a clear organization and explanation of concepts like the Ruby object model, closures, DSLs definition, and eigenclasses all spiced with real-life examples taken from the gems we usually use every day. This book is definitely worth reading. Carlo Pecchia Software Engineer I’ve had a lot of trouble finding a good way to pick up these meta- programming techniques, and this book is bar none the best way to do it. Paolo Perrotta makes it painless to learn Ruby’s most complex secrets and use them in practical applications. Chris Bunch Software Engineer Prepared exclusively for Shohei Tanaka Metaprogramming Ruby Program Like the Ruby Pros Paolo Perrotta The Pragmatic Bookshelf Raleigh, North Carolina Dallas, Texas Prepared exclusively for Shohei Tanaka Many of the designations used by manufacturers and sellers to distinguish their prod- ucts are claimed as trademarks.
    [Show full text]
  • Automated Qt and Web GUI Testing with Froglogic Squish on Actual
    Automated Qt and Web GUI Testing with froglogic Squish on Actual Hardware Using Timesys Board Farm Cloud (BFC) Squish + Timesys BFC = Highest UI quality, no matter where your boards are located froglogic’s Squish provides the ability to automatically test Qt based and Web User Interfaces without the need for human interaction, helping to accelerate tested, high-quality UI product releases. When it comes to embedded devices, in order to automate testing on your actual hardware using Squish, you’re tasked with either running Squish locally or via a local network connection. But this local PC/local hardware solution does not scale, often leaving test teams faced with the challenges associated with limited hardware constraints and not having timely access to hardware resources. To scale automated testing of Qt and Web UIs using Squish, you need the ability to run it on a remote target. Timesys On-Premises BFC — Remote Testing with Full Control Over Your Hardware The Timesys BFC provides a standardized infrastructure to add and manage hardware across locations. The BFC complements Squish by extending it to your actual product hardware, provid- ing seamless integration of automated testing on your hardware, no matter where it is located. The Squish-BFC solution enables remote testing on different boards in multiple locations. Squish GUI Testing Squish GUI Testing Using a Dedicated PC Connection Using BFC for Connecting to Different Boards Enable remote to a Single Board In Multiple Locations UI testing on your actual hardware Set up automated test processes and frameworks with global access Full control of the system by In addition, when you use Squish with the BFC, you have the ability to remote deploy SD card development images with Squish-aware runtime software, enabling you to select images you want to run.
    [Show full text]
  • GUI Test Automation for Qt Application
    Institutionen för datavetenskap Department of Computer and Information Science Final thesis GUI test automation for Qt application by Lei Wang LIU-IDA/LITH-EX-A--15/053--SE 2015-09-15 Linköpings universitet Linköpings universitet SE-581 83 Linköping, Sweden 581 83 Linköping Linköping University Department of Computer and Information Science Final Thesis GUI test automation for Qt application by Lei Wang LIU-IDA/LITH-EX-A--15/053--SE 2015-09-15 Supervisor: Nima Aghaee Ghaleshahi IDA, Linköping University Examiner: Ahmed Rezine IDA, Linköping University Abstract GUI test automation is a popular and interesting subject in the testing industry. Many companies plan to start test automation projects in order to implement efficient, less expensive software testing. However, there are challenges for the testing team who lack experience performing GUI tests automation. Many GUI test automation projects have ended in failure due to mistakes made during the early stages of the project. The major work of this thesis is to find a solution to the challenges of establishing new test automation projects and determine an appropriate method to build GUI tests automation. Due to the particularity of GUI tests automation, keyword driven test approach is introduced in this thesis. The advantages and disadvantages are shown by undertaking comparison with the Record and replay testing method and the data driven testing method. The research also includes a feasibility study of GUI tests automation. The analysis report points out which kinds of test projects should be automated and which kinds should not be automated. Test automation tool selection is a critical step for an test automation project.
    [Show full text]
  • Automated Qt GUI Testing with Squish
    Automated Qt GUI Testing with Squish Functional GUI testing is an essential part of develop- Squish has many other features, including: ment and QA when creating sophisticated modern GUI Powerful and easy to use test development applications. Manual testing alone cannot review an environment application for regressions within an acceptable time frame. Automated GUI tests quickly produce reliable Record and replay with powerful scripting and reproducible results, and execute in a fraction of capabilities the time. Automated GUI testing enables test engineers Choice of non-proprietary scripting language to expand testing coverage and rapidly find regressions so fixes can be make early, saving both time and money. Access to all the tested application’s objects Interactive Object Spy & Troubleshooting Utility The creation of a maintainable and time-proven auto- mated GUI testing framework requires an automation Command line toolset and 3rd-party integrations tool that embodies a deep knowledge of the underlying for unattended test automation GUI technologies being tested. Open data formats (e.g., plain text configuration files and plain text and XML/HTML reports) froglogic’s popular cross-platform, multi-technology GUI testing tool, Squish, supports automating testing Support for hybrid applications (Qt+Web, for all kinds of modern GUI applications, with dedicated Qt+ActiveX, Java+Windows, iOS+Web and more) and comprehensive support for: Source code availability Qt, QML, QtQuick and QtWebKit Licensing Java GUIs Named User Licenses and Group Licenses with Native Windows Controls concurrent seats are available. All licenses are perpetual and include a free 12-month Support & Mac OS X Cocoa and Carbon Updates Subscription.
    [Show full text]