Lamela Seijas, Pablo (2017) Model construction, evolution, and use in testing of software systems. Doctor of Philosophy (PhD) thesis, University of Kent,. (KAR id:69474)
PDF
Language: English |
|
Download this file (PDF/2MB) |
Abstract
The ubiquity of software places emphasis on the need for techniques that allow us to ensure that software behaves as we expect it to behave. The most widely-used approach to ensuring software quality is unit testing, but this is arguably not a very efficient solution, since each test only checks that the software behaves as expected in one single scenario.
There exist more advanced techniques, like property-based testing, model-checking, and formal verification, but they usually rely on properties, models, and specifications. One source of friction faced by testers that want to use these advanced techniques is that they require the use of abstraction and, as humans, we tend to find it more difficult to think of abstract specifications than to think of concrete examples.
In this thesis, we study how to make it easier to create models that can be used for testing software. In particular, we research the creation of reusable models, ways of automating the generalisation of code and models, and ways of automating the generation of models from legacy unit tests and execution traces. As a result, we provide techniques for generating tests from state machine models, techniques for inferring parametrised state machines from code, and refactorings that automate the introduction of abstraction for property-based testing models and code in general. All these techniques are illustrated with concrete examples and with open-source implementations that are publicly available.
Item Type: | Thesis (Doctor of Philosophy (PhD)) |
---|---|
Thesis advisor: | Thompson, Simon |
Uncontrolled keywords: | abstraction behaviour blue-fringe control data design DFA EFSM Erlang erlang-diff EUnit flow FSM generalisation generation inference James JUnit Parameter pattern PBT Property QSM QuickCheck refactoring regular Services template Test Web Wrangler |
Subjects: | Q Science |
Divisions: | Divisions > Division of Computing, Engineering and Mathematical Sciences > School of Computing |
SWORD Depositor: | System Moodle |
Depositing User: | System Moodle |
Date Deposited: | 09 Oct 2018 13:33 UTC |
Last Modified: | 05 Nov 2024 12:31 UTC |
Resource URI: | https://kar.kent.ac.uk/id/eprint/69474 (The current URI for this page, for reference purposes) |
- Link to SensusAccess
- Export to:
- RefWorks
- EPrints3 XML
- BibTeX
- CSV
- Depositors only (login required):