Enhancing Mobile App Testing Through MAT and UGA: A Comprehensive Overview

Categories: EngineeringScience


MAT is introduced which is based on the principle of test tools auto-generating the TCs, hence there is no longer a need for humans to intervene. There are certain topics of research in this field which take testing by means of automated tools to a newer and rather enhanced level. Research is in progress on the usage of MAT tools for heterogenous platforms and the key criteria to be kept in mind while selecting a test tool. It introduces the UGA technique and compares various test tools that are being used currently in the industry.


The quantity of consumer and endeavor mobile applications have become exponential throughout the most recent couple of years, leaving the end client with a humongous applications to look over in terms of number. In any case, how does the user pick the application that will occupy the valuable space on their gadget or electronic device? App quality is the way to any app’s prosperity and hence it must be accomplished through MAT.

Get quality help now
checked Verified writer

Proficient in: Engineering

star star star star 4.9 (247)

“ Rhizman is absolutely amazing at what he does . I highly recommend him if you need an assignment done ”

avatar avatar avatar
+84 relevant experts are online
Hire writer

The success of the app can be estimated by the quantity of downloads as well as the positive feed backs, just as a quick usage of new features and bug fixes. Most importantly, not be thought little of, peoples' review through word of mouth. Be that as it may, testing is one of the most important ways to determine success of any app. This gives a chance to the company to convey better product and encourages the app to be fruitful by testing its usefulness, ease of use and consistency, and hence developing the customer base.

Get to Know The Price Estimate For Your Paper
Number of pages
Email Invalid email

By clicking “Check Writers’ Offers”, you agree to our terms of service and privacy policy. We’ll occasionally send you promo and account related email

"You must agree to out terms of services and privacy policy"
Write my paper

You won’t be charged yet!

In truth, testing is a vital piece of each product improvement method and when it comes to mobile applications it has turned out to be much increasingly critical. The developing number of mobile gadgets is prompting a monstrous fragmentation of OS, screen sizes, varieties of standard OS and that's only the tip of the iceberg. With agile procedures, testing of programs is played out occasionally to guarantee the most ideal quality. New highlights and bug fixes should be discharged with short intervals, so clients don't free intrigue and new highlights ought not bring new bugs. Testing ends up indispensable for an application's survival.

Contrasted with desktop as well as web applications, the ones on mobiles have to manage explicit difficulties. For example, applications on mobiles need to process contributions from users just as contributions from continually evolving settings. Furthermore, advanced mobile phones and gadgets are as yet restricted in their assets contrasted with present day PCs and workstations. Further, there is a substantial decent variety of mobile OS, and the OS gets updated routinely and in generally brief time periods. As mobile applications have been created to address an ever increasing number of critical domains, they are turning out to be progressively complex to grow, yet in addition progressively hard to test and to approve. There are a few open research issues with respect to testing of smart phone and mobile software applications. Among these issues is that mobile applications are inalienably unique in relation to conventional programming apps and in this manner require specific testing systems and techniques.

Approaches for Testing Mobile Applications

As software engineering, mobile testing also has two approaches, namely :

  1.  Manual
  2.  Automated

Manual Testing:

It is a human input examination or assessment. This methodology is client driven, focusing on exploratory methods for checking, regardless of whether or not a mobile app adheres to client prerequisites and desires. The testing on the app is to be done for look and feel as well as for ease of use, ensuring the user friendliness. It is advised that the entire app should not be tested manually. The ratio of manual to automated part of the testing should be around 1:4

Automated Testing:

It is another mobile app testing approach. The team is expected to, in a perfect world set up however many scenarios as would be prudent, that will enable the tester to computerize about 80% of the systematic approach. The speed along with the unwavering quality of computerized testing are useful for.regression.testing.and.the.execution of time-consuming experiments, and majority of the TCs which are automated are capable of being used again, however in an agile domain, automated test contents must be modified.

As a mobile app advances, the item stream changes, just as the UI prerequisites and explicit highlights. Therefore, every single change requires to be updated in the code and content of the computerized test. In case you're dealing with a littler venture, similar to a MVP, it becomes inefficient to keep up with computerized mobile app testing. Keeping up computerized test contents regularly makes ventures fall behind in run cycles except if a tight hang is kept on the rules.


  • Versatile for bigger applications
  • More cost-proficient for bigger mobile applications, after a period of time
  • Ready to run numerous tests simultaneously
  • Performs dull tests that are requesting for human analyzers


  • Cannot be used for slow and small features because that leads to wastage of time and money
  • It is deficient in testing user experiences and the various factors related to them
  • The TC and the code needed for auto-testing has to be changed when testing a different app

A Heterogenous Platform for Integrated and Mat

Due to the way that few stages are contending in the quickly developing cell-phone market, numerous organizations and people need to compose same applications in several platforms. One of the greatest issues is- testing services should bolster a few platforms. For instance, the Naver Map2 administration presently supports three sorts of platforms: iPhone, Android, and Windows OS. As of now the platform specific application has been grown.autonomously for each and every service. To dispatch a service, three apps must be tried autonomously on every one of the stages. Notwithstanding playing out a similar usefulness, time and cost ha to be wasted in light of the fact that the properties of the three mobile conditions of testing are for the most part unique. This research plans to build up an answer for give an increasingly productive and proficient testing practice in such circumstance.

Approaches to Resolve the Issues

Platform Specific Issues

Functionalities are different for different platforms. So, this drawback is the most challenging and difficult to overcome. A framework has to be designed to integrate the features and functionalities for each testing platform. For example, suppose an app is designed for both Android as well as iPhone, it should be tested using a common interface, considering the two platforms. Separate testing for the same mobile app is a serious drawback. The integrated interface will improve efficiency many- folds.

Management Issues

The testing team is expected to develop a source code for the testing cases. If the testing cases are different, the task becomes very tedious. So, common ones have to be designed for mobile apps running on different platforms. Common criteria for testing can Platform independent Common integration platform Platform dependent ios Android Others be designed for scroll, touch, drag etcetera, because these functions are platform-independent. Hence, the cost of testing is saved. Since the tests keep running in the platform dependent condition, it is hard to share the TC. To beat this, TCs are overseen through web server that everybody can get to. Anyone who is able to reach the web can make, change as well as oversee TCs to share. The main idea is to reuse the TC and apply them at various stages.

Testing Environment Issues

A human technician is always needed to run the tests because the testing platforms are in reality not completely automated. During such situations, quick feedbacks are needed by the person conducting the tests. And hence, small tests are performed frequently. An efficient test environment can be made if a common integrated and automated platform is developed. Later on, progress is expected to improve functional and methodological angle and also the performance. As far as usefulness, the integrated mobile testing platform bolster straightforward upheld occasion as well as versatility for definite testing. As far as execution, it must be improved speed for testing and doing input of test outcomes. At long last, regarding the technique, mobile app is winding up at a lot bigger scale and more intricate than the past. It needs to break down client necessities adequately. Totally new testing techniques might be expected to test efficiently and confirm complex necessities.

Selecting Appropriate Test Tool

A MAT tool has the potential to conduct tests, evaluate the outcome, and also compare the result with previous outcomes. Apart from that, it can also tests the capability of the app over the web. Hence, tool selecting process is of utmost importance. The needs have to be listed down. This is the utmost vital step of the Automated Testing Life-cycle Methodology (ATLM) because the tester is guided through the entire method of the selection and evaluation of the testing tool.

Test Automation Tool Efficacy

Efficiency.of. the.testing. tool is of utmost importance so as to address and reduce the challenges of MAT. Certain tool can be useful for testing a certain feature and another tool for some other feature. Suppose, Tool A might be used for testing security while Tool B might be used to test robustness or usability. So, it becomes important to prioritize as well as select the right tool.

Key Criteria in Tool Selection

The most important aspects of the tools used for testing are how they handle the web browsers and differing OS. Certain test tools perform only specific functions and some of them perform wide variety of tests. So, coming into the picture is proper tool selection. Some of the key criteria for tool- selection are:

  1. Cost
  2. Support and service
  3. Outcomes and their reports
  4. Lead time for new OS version
  5. Coverage of the test (both inside as well as outside the app)
  6. The languages supported
  7. Capability of scripting
  8. Workflow of test
  9. Mobile platform support- suppose whether it supports Android testing or ios testing or it is integrated and supports testing upon various platforms.

User Guided Mat

Purely computerized techniques tend to be extremely difficult to implement for complete mobile app testing. Test automation is hindered by extremely complex interactions of the app with the user. But performing such interactions is very easy for human beings. So, User Guided Automation (UGA) tends to resolve the issue. Thus, users interact with the mobile apps and they tend to easily get acquainted to the application’s intentions and reach to those sections of the code in the app that purely automated test tools cannot reach. The UGA technique was developed. This technique is divided into two phases.

During the course of the first phase, the user interacts with the app and this trace is recorded. It is called the user trace. This user trace is saved and can later be used for other traces by extending from this user trace. In the second phase, it replays some partially executed trace to the stop point. From this point on, computerized testing is performed around this stop point. So, by using two phase UGA technique, more paths and traces can be explored in the mobile app rather than pure MAT.

Examples for Comparison Between UGA and Pure Automated Testing

Bing Dictionary

The first version of the Bing dictionary app required three swipes before you could reach the home page. The current pure MAT tools cannot generate TCs that have complex interactions and hence this task cannot be achieved by them. But as opposed to these pure MAT tools, the UGA technique is highly effective. It can replay the collected traces of different users and hence can easily pass this test and can also pass many other complex user interactions. Due to the UGA, it was observed that the coverage of the test significantly improved.


Mileage is a mobile app for managing cars. The user has to customize a vehicle using this app. And only after the customization, it is possible to explore some of the paths and functionalities of the app. The customization task is very long and needs a large number of steps in the course of the input. Here, UGA comes into picture. It can easily reuse and replay the previous user traces. UGA becomes necessary here because the RND and DFS algorithms cannot be used for input sequences having a large number of steps.

Netease News

This app has a screen for setting up of the parameters and it can be reached only with the help of certain swipe gestures. When pure automated applications were used for the purpose of testing, they failed to reach the parameter screen to set up the parameters. This is because the GUI models had to explicit transition from the normal screens to this screen for setting up the parameters. But the UGA technique managed to reach this screen as well as many other parts of the code. In any case, this work is at an underlying stage.

There are many research issues that merit further investigation. UGA is more a system than a solitary method. Each extraordinary client follow gathering procedure, stop point recognizable proof calculation and mechanized testing approach characterizes an exceptional UGA execution: UGA characterizes a range of mobile testing methods, and more research issues are rising. It could be contended that the UGA's test viability may rely upon what client follows are gathered and how stop focuses are recognized.

At that point how to manage clients to give valuable follows and select quality stop focuses need a further report. Additionally, it was seen that UGA accomplishes higher inclusion improvement for model-based efficient testing (e.g., DFS), as contrasted and arbitrary testing. Hypothetically, any robotized testing systems can be reached out for such client direction.

Uberisation of Mat

A novel and innovative way for MAT can be thought of as the test being performed for the mobile app on the gadget itself rather than performing it on the web apps. This has been famously called as uberisation of MAT. To empower computerization testing straightforwardly on mobile gadgets we present a platform for the purpose of automated tests that enables the analyzer to perform the testing on the mobile app from the device itself.

The Mobile apps that keep functioning on this gadget might be a free app which depends only on the gadget equipment abilities or the app may run remotely at server and the gadget goes about as a platform for survey as well as interacting. The mobile apps can be executed either on gadget or from the server, contingent upon architecture, nature of the mobile appls and gadget capacity. Later on, the research will be centered around chronicle the total experiment executing on the mobile gadget.

This will assist the concerned specialist with recording and playback the experiments when needed, it is extremely valuable for distinguishing bugs, it will backtrack the definite activities that the analyzer performed to the point where the issues were found. Additionally research will be centered on building up a Real-Time WebRTC dashboard for constant testing.

Examples of Automated Testing Tools


It is UI automation.structure for.android. It is free apparatus, utilized by people and organizations. It allows TC engineers to compose functions, system and acknowledgment test situations, traversing numerous android exercises. It uses Java programming and JUnit test system as the language, the structure is made to make it simple to compose amazing and vigorous programmed Black Box experiments for android app.

In this tool, discovery testing reproduces and computerizes client communication, for example, contacting, clicking, content passage, and some other signal conceivable on a touch gadget. It doesn't take a shot at Web or Flash apps. The disadvantage is that it can work only on one functionality at a time. So, if the user is using the camera, it will not be possible to take a screenshot. The advantage is that the elements’ source code does not have a compulsion to be a part of the TC.


Ranorex is testing tool and structure, which bolsters content less method for working and coding capacities. Currently it is being fundamentally utilized for GUI testing in the domain of windows which likewise bolsters mobile and online app. Ranorex gives quick and instinctive to set experiments, where capacities utilized in SUT and gives us additional capacity to make a hearty relapse testing. It utilizes standard programming language, for example, C# and VB.NET as base. Ranorex studios IDE gives click and go capacity to guarantee reusability of test activities and UI component with a group of specialized expertise levels.


It is a cross platform, which permits to compose test against the various platforms (iOS, android), utilizing similar API as well as it empowers code reuse among multi-platform test suites. The device is open-source for mechanizing local application, mobile web-application and half and half application on iOS and android platforms, where Native applications are composed utilizing iOS or Android SDK, mobile web apps are web apps gotten to utilizing a mobile program, crossover applications wrapper around web view - a local control which empowers association with the web content.


It is a testing structure given by Google's Android. The testing guarantees an app to meet its practical necessities and accomplish an exclusive requirement quality, which is to be effectively received by clients. The manual methodology in UI testing is to play out a lot of client tasks on the objective app is performed in robotized way and confirm it's practices, which is tedious, repetitive and blunder inclined. It permits to run test quick and solid in a repeatable way. The robotization of UI tests with Android Studio is to actualize test code in a different Android test envelope. In test code UI testing system is utilized to mimic client cooperation on the objective app, to perform testing errands, which covers explicit use situations.


Maximizing automation in the.testing.of mobile applications directly means less human work and testing manually. It will speed up the process and the mobile app will be less prone to errors. Several factors are to be put forward while selecting an MAT tool are the support of the tool for various platforms, the cost, the reusability of the TCs, the time taken to test, and the amount of user interaction required.

When we compare UIAutomator to Robotium, Ranorex, Appium, it is found that UIAutomator gives a more efficient output and is quicker to learn and use. There is both manual and automated mobile application testing but both have their gains and losses. Nowadays, MAT has been gaining loads of popularity but a little bit of manual testing is also necessary so as to reduce the costs as well as errors. Research is currently being carried out to make heterogeneous platforms for testing the applications because testing the same app for different platforms will lead to wastage of time, monetary and human resources and will increase the task for the same app based upon the different platforms such as Android, iOS etcetera.

As mentioned earlier, user intervention in the testing of mobile applications is extremely necessary. There are certain stages in the working of the application that cannot be reached by pure automated test tools. UGA technique enables user interaction and hence the test outcome is more efficient and error free. Certain criteria have to be kept in mind by the tester before selecting a test tool. Some test tools perform only certain functionalities. So, prioritization becomes the key point here.


  1. Dr. S Gunasekaran, V. Bargavi, “Survey on Automation Testing tools for mobile applications” International Journal of Advanced Engineering Research and Science. Nov-2015
  2. Prasad Seth, NishantRane, AkshayWagh, Prof. Aniket Katade, SwapnilSahu, NikhilMalhotra “Uberisation of Mobile Automation Testing” International Conference on Intelligent Computing and Control Systems. 2017
  3. Xiujiang Li, YanyanJiang, YepangLiu, Chang Xu, Xiaoxing Ma, Jian Lu “User Guided Automation for Testing Mobile Apps” 21st Asia-Pacific Software Engineering Conference 2014
  4. NurulHusnaSaad, NormiShaamAwangAbuBakar “Automated Testing tools for mobile Applications” 5th International Conference on Information and Communication Technology for the Muslim World. Nov-2014
  5. LeckrajNagowah and GayereeSowamber, “A Novel Approach of Automation Testing on Mobile Devices. “ International Conference on Computer and Information Science 2012
  6. Hyungkeun Song, SeokmoonRyoo, JinHyung Kim “An Integrated Test Automation Framework for testing on
  7. Hyungkeun Song, SeokmoonRyoo, JinHyung Kim “An Integrated Test Automation Framework for testing on heterogenous Mobile platforms” First ACIS International Symposium on Software and Network Engineering 2011
  8. Dr. S Gunasekaran, V. Bargavi, “Survey on Automation Testing tools for mobile applications” International Journal of Advanced Engineering Research and Science. Nov-2015
Updated: Feb 19, 2024
Cite this page

Enhancing Mobile App Testing Through MAT and UGA: A Comprehensive Overview. (2024, Feb 19). Retrieved from https://studymoose.com/document/enhancing-mobile-app-testing-through-mat-and-uga-a-comprehensive-overview

Live chat  with support 24/7

👋 Hi! I’m your smart assistant Amy!

Don’t know where to start? Type your requirements and I’ll connect you to an academic expert within 3 minutes.

get help with your assignment