Maveryx

Maveryx
Developer(s) Maveryx
Stable release 1.4 (Java) - 1.0 (Android) / November 5, 2014
Development status Active
Operating system Microsoft Windows, Linux, Mac OS, Android
Type test automation tools
License GNU General Public License v2.0, Proprietary
Website www.maveryx.com

Maveryx is an automated functional, graphical user interface (GUI), and regression test tool for Java and Android applications.[1] Unlike other test tools, Maveryx does not use a GUI Map to create and run its automated tests. GUI test objects are recognized at execution time, by a GUI Objects Finder. This search engine supports exact and fuzzy matching algorithms to identify the test objects in the application's user interface. Avoiding GUI Maps allows starting automation early—long before the application is available for testing, while approximate matching gives the possibility to derive tests even from partial or lacking requirements, and to automate scripts resilient to frequent application changes. Maveryx is primarily used by Software Quality Assurance teams to perform automated testing in traditional and agile environments.[2]

Overview

Maveryx is automated testing software designed for functional testing, regression testing, GUI testing and data-driven testing of Java and Android applications on Windows, Linux and Mac. Maveryx does not require any ‘GUI Map’ to build and execute the automated tests: GUI objects to test are recognized and located directly at runtime, during the scripts execution. By running a test, Maveryx performs the scan of the current application user interface and searches for the objects and controls to manipulate. Test objects are uniquely identified by the GUI Objects Finder, an advanced search engine powered by a wide set of algorithms, including exact and approximate matching. This technology allows finding the closest match between a GUI object encoded in the script and the objects in the application under test, even in case of partial information on the GUI object to operate.[3] Maveryx uses Java as scripting language, and can be integrated into any Java IDE (Eclipse, NetBeans, etc.) and testing framework (JUnit, IBM Rational Functional Tester, etc.).[4] It supports data-driven testing, verification points and keywords to increases test coverage, promotes script reuse, and leverage the number of automated tests.

Key Technologies

No GUI Maps

Maveryx analyzes and identifies the GUI objects to test and their properties dynamically at runtime during the scripts execution, without using any GUI Map.[5] Running a test, Maveryx performs the scan and gets ‘snapshots’ of the current application’s user interface. Each snapshot is processed by an advanced GUI Objects Finder that recognizes and locates the test objects. By this approach, in order to write the tests, there is no need to wait for the application to be released. Testers can develop the automated scripts early in the software lifecycle, in parallel to the application development. Test scripts can be executed as soon as the application is released for testing.

GUI Objects Finder

Test objects encoded in the scripts are identified and located directly at runtime by an advanced GUI Objects Finder with several pattern–matching capabilities. Maveryx uses several searching algorithms to recognize and locate objects during the test execution, even if the objects have changed since test creation or ‘partial’ descriptions are encoded in the scripts. Maveryx searches for run–time objects that exactly or partially (approximate similarity) match the test objects in the scripts. The following matching algorithms are supported:

This technology reduces time and effort that testers spend on script maintenance and allows writing automated tests from unstable, lacking or partial specifications. It also enables testers to automate tests resilient to frequent application user interface changes, avoiding continuous reworking of the scripts.

Data-driven testing

Maveryx supports data-driven testing. Data-driven testing is primarily implemented as Microsoft Excel spreadsheets and XML files that can be accessed from dedicated scripting API.[6] Maveryx also supports any database (JDBC sources). The test steps can read data from these data sources in order to drive variable data into the application under test, and verify the expected result.

Keyword-driven testing

Maveryx supports Keyword-driven testing. Automated test cases are developed as data tables in Microsoft Excel spreadsheets, plain text or XML files. Each row in the data table contains the test action (keyword) to be performed as well as input, expected output and information on the object to test. The Keyword-driven framework has a plugin architecture which allows users to add new keywords.

Extensibility

Maveryx has an extensible plug-in system. Users can add specific capabilities or customize the existing functionalities with separate plug-ins. Maveryx supports plug-ins for many reasons. Some of the main reasons include:

Eclipse Plug-in

Maveryx-for-Eclipse is a set of software tools for the Java Eclipse IDE that enables testers and developers to design, build, and run automated test scripts based on Maveryx. The plug-in assists testers in creating new test projects and test classes, generating Java stub code using the Maveryx Framework API.

Test reporting

Maveryx automatically generates metrics and produces detailed reports with the execution results of all tests. Maveryx Eclipse plug-in uses several reporting features to create live charts and reports during test execution, and to produce the final test reports explaining test results with tables charts, and statistics.

Android

Maveryx for Android gives automated testing capabilities for functional, regression, GUI, and data-driven testing of Android mobile applications. It provides a solution for non-rooting devices (mobile phones, tablets, smartwatches ...), and supports any handset emulator, including Native Android Emulators, Genymotion, etc.
Maveryx integrates with the Android Development Tools (ADT) Plugin.

Other Features

Maveryx also supports:

Awards

See also

References

  1. http://www.maveryx.com/public/leaflet/index.html
  2. L.Sansone (2010-12-12). "Open Source for distributed GUI test automation". http://www.testingexperience.com. Retrieved 2014-03-12.
  3. A. Nocella (2014-03-17). "The faces of testing: men vs. robots - in Belgium Testing Days Conference Proceedings". http://btdconf.com. Retrieved 2014-03-12.
  4. M. Garofalo (2011-11-23). "Mixing Open And Commercial Tools - in Eurostar Software Testing Conference Proceedings". http://www.eurostarconference.com. Retrieved 2014-03-12.
  5. http://blog.dreamcss.com/tools/gui-testing-tools/
  6. JP Corriveau (2013). "Maveryx Instructions". http://people.scs.carleton.ca/~jeanpier/. Retrieved 2014-03-12.
  7. "5th Annual ATI Automation Honors". Automatedtestinginstitute.com. Retrieved 2014-11-13.
  8. "4th Annual ATI Automation Honors". Automatedtestinginstitute.com. Retrieved 2014-11-13.

External links