Estudo, definição e proposta de representação de interface web visando à atividade de teste de software - Jorge, Rodrigo Funabashi (2016)
The main purpose of software engineering is to subsidy the software development, from its speciﬁcation to its implementation and maintenance, by applying methods, processes and tools seeking for a higher quality software product. One of the activities to get the desired quality is software testing. This activity can become very complex, depending on the characteristics and dimensions of the software product under developed and thus, is subjected to various kinds of problems which, eventually, may result on a product with faults, jeopardizing its quality. Despite the complexity and limitations of testing, there are in the literature different techniques that can be used to generate test data to satisfy several testing criteria, aiming at to reduce the cost of testing. However, generation of test data is an undecidable problem due to the complexity, constraints, and size of programs. One of the factors that increase the complexity is the use of user interfaces (UI), present in many applications. This complexity is a result of the high number of available input combinations, making it virtually impossible to hold the UI tests manually. Among the alternatives that enable the automation of the most recognized and advantageous is the UI based testing models. This technique involves the construction of a model to abstract the UI elements, its interactions, and structure to be tested. From this model, the test data can be generated. However, a troublesome factor in this approach lies in building the model. This process can be costly and time consuming. Additionally, even after the effort, the model can be incomplete and may not represent precisely the actual characteristics of the application. When studying the state of the art for testing UI, we noted that there are tools that allow to perform such testing automatically. But they also have some limitations, mainly arising from the representation model adopted. Thus the purpose of this thesis is to propose a UI representation model that brings beneﬁts over existing representations in today literature, evolving the state of art on this area. With the proposal of this model we can represent, with the greatest level of detail, a graphical interface for web software applications. A preliminary study comparing the model with others available in the literature, highlights the beneﬁts achieved.