DesignTesting Framework
State of the art
With the extensively increasing number of mobile applications on the market, an automating and effective testing of applications has become a relevant research challenge. For the development of applications for companies, not only the functionality and the response of the application to the user actions is important, but also the compliance of corporate identity, general design guidelines and customer needs concerning the visual appearance. However, it is difficult to identify the design requirements with a human eye as precisely as the computer would do this. An automation of the design testing process can improve the results and reduce effort, time and the cost of the testing process.
In recent years a number of diverse automated tools for the GUI testing were presented. Nevertheless, the most currently existing techniques were developed only for the testing of functionality, safety or usability of the application, not taking into account the layout design. No automated tool for the verification of the design requirements and corporate design of mobile applicationsis currently known.
Description
The DesignTesting Framework is an automated testing tool for the evaluation of design requirements of iOS applications. It was developed in Objective-C and can be linked within XCode project to every iOS application with the available source code.
While running the application on the mobile device, the DesignTesting Framework can be activated through the shaking motion of the device. The automated design testing tool goes recursively through the source code of the application, finds all UI elements presented on the screen, and defines their attributes.
After that, the tool reads the customer and corporate design documents and compares the design requirements with the values in the application. Finally, the tool represents the test results in the structured PDF document. TheDesignTesting Framework is able to verify the general design guidelines, the corporate design, and the requirements of the customers concerning the visual appearance of the application.
Functionality
- Working with any iOS application with the available source code
- Orientation and resolution awareness
- Setting of user preferences
- Storing data with iTunes
- Finding all UI elements of the current view
- Defining the certain attributes of required elements
- Reading the design requirements from the excel document
- Comparing UI element attributes with the customer and corporate design requirements
- Analyzing the general design requirements
- Comparing the screenshots of the UI elements with the assets
- Result output
Test results
The DesignTesting Framework was tested with two iOS applications by 3 participants, and returned correct results for both of them. During the user study, qualitative and quantitative data were collected, including time, number of errors and satisfaction with the tool. The evaluation of DesignTesting Framework in a user study shows that it can reduce the time of the design testing process, especially using the tool for the large tests. The most significant outcome of the evaluation demonstrates that the use of my automated tool leads to more accurate and precise testing results, almost without errors, while the manual design testing causes a large number of errors. The users agree that the invention of DesignTesting Framework in the design testing process can reduce production costs, increase productivity and will lead to the development of more qualitative and visually appealing applications.
|
|
Full version of master thesis: [PDF]
License
This original work is copyright by University of Bremen.
Any software of this work is covered by the European Union Public Licence v1.2.
To view a copy of this license, visit
eur-lex.europa.eu.
The Thesis provided above (as PDF file) is licensed under Attribution-NonCommercial-NoDerivatives 4.0 International.
Any other assets (3D models, movies, documents, etc.) are covered by the
Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
To view a copy of this license, visit
creativecommons.org.
If you use any of the assets or software to produce a publication,
then you must give credit and put a reference in your publication.
If you would like to use our software in proprietary software,
you can obtain an exception from the above license (aka. dual licensing).
Please contact zach at cs.uni-bremen dot de.