Cookies Policy
The website need some cookies and similar means to function. If you permit us, we will use those means to collect data on your visits for aggregated statistics to improve our service. Find out More
Accept Reject
  • Menu
Publications

Publications by Ana Cristina Paiva

2008

Visual abstract notation for GUI modelling and testing - VAN4GUIM

Authors
Moreira, RMLM; Paiva, ACR;

Publication
ICSOFT 2008: PROCEEDINGS OF THE THIRD INTERNATIONAL CONFERENCE ON SOFTWARE AND DATA TECHNOLOGIES, VOL SE/GSDCA/MUSE

Abstract
This paper presents a new Visual Notation for QUI modelling and testing (VAN4GUIM) which aims to hide, as much as possible, formalism details inherent to models used in model-based testing (MBT) approaches and to promote the use of MBT in industrial environments providing a visual front-end for modelling which is more attractive to testers than textual notation. This visual notation is developed as five different UML profiles and based on three notations/concepts: Canonical Abstract Prototyping notation; ConcurTaskTrees (CTT) notation; and the Window Manager concept. A set of translation rules was defined in order to automatically perform conversion from VAN4GUIM to Speck GUI models are developed with VAN4GUIM notation then translated automatically to Spec# that can be then completed manually with additional behaviour not included in the visual model. As soon as a Spec# model is completed, it can be used as input to Spec Explorer (model-based testing tool) which generates test cases and executes those tests automatically.

2012

Specifying UML Protocol State Machines in Alloy

Authors
Garis, AG; Paiva, ACR; Cunha, A; Riesco, D;

Publication
Integrated Formal Methods - 9th International Conference, IFM 2012, Pisa, Italy, June 18-21, 2012. Proceedings

Abstract
A UML Protocol State Machine (PSM) is a behavioral diagram for the specification of the external behavior of a class, interface or component. PSMs have been used in the software development process for different purposes, such as requirements analysis and testing. However, like other UML diagrams, they are often difficult to validate and verify, specially when combined with other artifacts, such as Object Constraint Language (OCL) specifications. This drawback can be overcome by application of an off-the-shelf formal method, namely one supporting automatic validation and verification. Among those, we have the increasingly popular Alloy, based on a simple relational flavor of first-order logic. This paper presents a model transformation from PSMs, optionally complemented with OCL specifications, to Alloy. Not only it enables automatic verification and validation of PSMs, but also a smooth integration of Alloy in current software development practices. © 2012 Springer-Verlag.

2011

Test case generation from mutated task models

Authors
Barbosa, A; Paiva, ACR; Campos, JC;

Publication
Proceedings of the 2011 SIGCHI Symposium on Engineering Interactive Computing Systems, EICS 2011

Abstract
This paper describes an approach to the model-based testing of graphical user interfaces from task models. Starting from a task model of the system under test, oracles are generated whose behaviour is compared with the execution of the running system. The use of task models means that the effort of producing the test oracles is reduced. It does also mean, however, that the oracles are confined to the set of expected user behaviours for the system. The paper focuses on solving this problem. It shows how task mutations can be generated automatically, enabling a broader range of user behaviours to be considered. A tool, based on a classification of user errors, generates these mutations. A number of examples illustrate the approach. Copyright 2011 ACM.

2008

Model-based User Interface Testing With Spec Explorer and ConcurTaskTrees

Authors
Silva, JL; Campos, JC; Paiva, ACR;

Publication
Electronic Notes in Theoretical Computer Science

Abstract
Analytic usability analysis methods have been proposed as an alternative to user testing in early phases of development due to the cost of the latter approach. By working with models of the systems, analytic models are not capable of identifying implementation related problems that might have an impact on usability. Model-based testing enables the testing of an implemented software artefact against a model of what it should be (the oracle). In the case of model-based user interface testing, the models should be expressed at an adequate level of abstraction, adequately modelling the interaction process. This paper describes an effort to develop tool support enabling the use of task models as oracles for model-based testing of user interfaces.

2010

PETTool: A pattern-based GUI testing tool

Authors
Cunha, M; Paiva, ACR; Ferreira, HS; Abreu, R;

Publication
ICSTE 2010 - 2010 2nd International Conference on Software Technology and Engineering, Proceedings

Abstract
Nowadays, the usage of graphical user interfaces (GUIs) in order to ease the interaction with software applications is preferred over command line interfaces. Despite recent advances in software testing, GUIs are still tested in a complete ad-hoc, manual fashion, with little support from (industrial) testing tools. Automating the process of testing GUIs has additional challenges when compared to command-line applications. This paper presents an approach for GUI (semi-automated) testing which uses knowledge of the common behaviour of a GUI. To do so, the most common aspects in a GUI are identified and then a suite of test cases is automatically generated and executed. To validate our approach, we have run it against well known web-based applications, such as GMail. © 2010 IEEE.

2010

Testing Aspect-Oriented Programs

Authors
Moreira, RMLM; Paiva, ACR; Aguiar, A;

Publication
SISTEMAS Y TECNOLOGIAS DE INFORMACION

Abstract
This work addresses software quality issues introduced by Aspect-Oriented Programming (AOP). AOP aims at enhancing modularity and thus solving the problem of crosscutting concerns by capturing them into new units of modularity called aspects. With the increasing usage and acceptance of AOP, the task of assuring aspect-oriented systems' correctness has become a challenge, mainly due to its nature. Although several testing techniques have been applied and improved for object-oriented programs through the years, there is still the problem of selecting and verifying which ones can be effectively applied to AOP. This paper presents a perspective on how AOP can improve quality (when applied correctly), identifies a set of key testing issues that arise with AOP and presents weaknesses and strengths of the existing solutions to improve quality in AOP.

  • 12
  • 16