Abstract
Prevention actions (trainings, audits) and inspections (tests, validations, code reviews) are crucial factors in achieving a high quality level for any software application simply because low investments in this area are leading to significant expenses in terms of corrective actions needed for defect fixing. Mobile applications testing involves use of various tools and scenarios. An important process is represented by test data generation. This paper proposes a test data generator (TDG) system for mobile applications using several sources for test data and it focuses on UI layout files analyzer module. The proposed architecture aims to reduce time-to-market for mobile applications. The focus is on test data generators based on source code, user interface layout files (using markup languages like XML or XAML) and application specifications. In order to assure a common interface for test data generators, an XML or JSON-based language called Data Specification Language (DSL) is proposed.Keywords: Mobile Applications, Software Testing, Test Data Generators, Software Quality, Time-to-Market, UI Layout1 IntroductionS oftware testing is an important phase within software development cycle. It is also an expensive phase counting about 40% of total cost associated with software development [1], [2].According to ISO9000 standard [13], quality associated to a deliverable is seen as being the degree to which a set of inherent characteristics fulfill requirements. If requirements are not (completely) met, severe consequences may follow, like intensive rework or even risk of losing business.From an economic point of view, quality measures are indicating application actual metrics (in terms of cost, time and scope) that can be easily compared with planned ones. To fulfill requirements is crucial but way in which these requirements are met in terms of time, cost and application scope is also very important because an application may be delivered in time but with a lot extra work and/or by using lighter inspections, so project may not be so successful due to reduced profits and very possible future implementation costs.When discussing about quality of a software application, usually there are two types of costs assigned [14]:§ poor quality costs - defects that must be repaired by corrective actions;§ good quality costs - code inspections and prevention activities, like planning, training and auditing.As illustrated into Figure 1, any application can reach a great quality level at a reasonable cost by positioning itself just above optimal point indicated by vertical line.Testing methodologies include white-box and black-box approaches [3], [4]. White-box testing considers internal structure of programs. In this case, test data generation uses several coverage criteria (path, statement, branch etc.). Black-box testing does not depend on internal structure of programs. Test data is generated based on program specifications.One area of software testing that can be automated is test data generation. Test data generation based on coverage can use random or optimized inputs, engaging advanced techniques [5], [6].There is a continuous uptrend of mobile application development. Compared with other software solutions, time-to-market for mobile applications tends to be shorter. A mobile application can be used on different versions of target platform, on different hardware configurations (screen size, processor architecture, processor speed, memory capacity etc.), different types of networks (Wi-Fi, mobile) etc. In this respect, mobile applications testing is more challenging than other type of application testing [7], [8], [9]. Every improvement of testing process for mobile applications helps achieving high quality software, reducing development costs and time-to-market. …
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.