Font Size: a A A

Modeling Web Applications And Generating Test Cases Based On User-interface Specification

Posted on:2012-03-09Degree:DoctorType:Dissertation
Country:ChinaCandidate:B ZhuFull Text:PDF
GTID:1118330335981741Subject:Computer application technology
Abstract/Summary:PDF Full Text Request
The quality assurance of Web applications has become a critical issue and a hot research topic to Web applications development. Software testing is a primary way of assuring software quality.Compared with the tradition software, Web applications are more complicated. Web applications are interactive software with complex user-interface and numerous back-end software components that are integrated in different ways. With the constant increasement in Web application's scale and complexity, it becomes more difficult to develop, manage and maintain Web applications. Web applications characteristics put a request to the traditional testing methods to improve the existing or introduce new features for Web application testing. The existing Web application testing tools includes link checking tools, capture / playback tools, HTML validator, security testing tools and load, stress and performance testing tools. Most of them are program or the source code based static validation and measurement tools and do not support the automatic generation of test cases. The quality of software testing is a fundamental guarantee of software stability, so the test case generation is of high importance to software testing. Specification based testing generate test cases from specifications without understanding the internal structure. Specification based testing can ensure the proper implementation of software requirements, and it also provides the possibility to reuse test cases. In addition, software testing can be carried out in parallel throught the entire software lifecycle and this can greatly improve the efficiency of software testing. Formal specification language provides a set of precise, consistent, easy to machine processing symbols to describe the software requirements specification. The automatic generation of test cases from formal specification will be made possible.This paper utilizes the formal method to conduct the research on user interface specification based Web application modeling and the generation of test cases. Specification describes the functions and structure of the software accurately and abstractly according to the specifications of the software product testing functions have important information. This paper describes the specification using formal language Object-Z and explores the methods and technologies to generate test cases from user function specification and user interface specification. A tool prototype for specification based test cases generation has been built, attempting to automate the generation of test cases.The functional requirements of software describe the task that users have to complete and are the most fundamental requirements. This paper uses task-based model to describe the user's functional requirements. The entire system has been descrbied as a class using Object-Z and the operations defined in the class are to represent the various tasks of users.User interface specification describes the interaction between end-users and software process. It includes actions that users might perform with the software. User interface specification is an extension from function specification. In this paper, a method to formally describethe user interface of the Web applicationis suggested. The formal user interface specification gives the aid to verification and automatic generation of test cases. Using Object-Z, the common controls and Web pages are described. By extending the Object-Z and the combination of UAN into additional prediction, the user interface design has been illustrated. In this process, UAN was extended by adding some common constraints in Web application.While facilitating users to easily browse information, the buttons of Web browser will affect the Web application's navigation and functionality, especially in the security. In this paper, a complete navigation model described by Object-Z is given which is to illustrate the Web browser interactions and to define relevant various user actions. This model includes session control and browser caching mechanism in Web application and it also establishes a basis for the testing and verification of Web application navigation FSM is usually used to generate test cases. Base on analyses the specification of the relationship between the various methods, this paper proposed a method of building hierarchical FSM from functional specifications and user interface specification and using hierarchical FSM and test adequacy criteria to generate test cases.Object-Z is a descpritive language and is highly abstract. It is object-oriented which makes it ideal for modeling. As a comparison, FSM is more close to implementation and it is usually used to represent test model and to generate test cases. This paper proposed a method of building hierachical FSM from function specification and user interface specification. This effectively resolved the status explosion and test cases could also be generated from hierachical FSM and testing adequacy criteria. Keyword-driven testing has been widely used in industry area. There are many keyword-driven based testing tools based available but the existing tools cannot automatically generate test cases. From user interface specification, a method to generae keyword-driven test cases is proposed. Logic keywords and basic keywords are defined in the method. The ligic keywords represent the function of the testing and the basic keywords detail a certain function of testing. This method is conductive to the management and implementation of testing. In software testing, test cases are generated in accordance with test criteria. This paper analyzes the BOR and BRO testing coverage criteria, and adds the processing of elements and relational operators{∈,} into the algorithm which is used to produce the constraints set to satisfy the two aboved mentioned coverage criteria. By doing this, the algorithm can be applied into more wider areas.To deal with the potential problems brought by the buttions of browser to Web applications function and security, this paper proposes a method to generate new test cases including the interaction with the browser based on original test cases(regardless of browser interactions). This method defines page attributes related to browser interactionsgives algorithm to produce the navigation tree and defines test adequacy criteria related to page attributes.Compared to the traditional software, the reliability of Web applications is more important. Software statistical testing is an important part of highly reliable software testing. In this paper, test adequacy criteria is proposed for generating test cases in hierarchical FSM model. The statistical coverage is applied into the hierarchical FSM model and the way of calculating the statistical coverage of test cases set is presented. Therefore it becomes feasible to evaluate the reliability of the software that has gone through the testing based on this test case set.In order to implement and verify the proposed method, the paper designed and implemented a system prototype Object-Ztest that is to edit specification and generate test cases. Linear programming and database query techniques are used to instantiate abstract test cases in this tool.
Keywords/Search Tags:Web applications, specification-based testing, user interface specifications, test cases, test adequacy criteria
PDF Full Text Request
Related items