𝔖 Scriptorium
✦   LIBER   ✦

πŸ“

Domain-Specific Model-Driven Testing

✍ Scribed by Stefan Baerisch


Publisher
Vieweg and Teubner
Year
2010
Tongue
English
Leaves
247
Category
Library

⬇  Acquire This Volume

No coin nor oath required. For personal study only.

✦ Synopsis


Software reuse and software quality are increasingly important topics in today's software engineering both for researchers and for practitioners. The design and implementation of tests is especially challenging when tests are conceptualized for different variants and versions of an application. Stefan Baerisch applies a combination of feature modeling and code generation, for which he uses a model-driven approach, in order to facilitate the design of tests by non-programmers. Thus, the reuse of tests, represented by abstract test models, for different systems under tests is made possible. The approach uses code generation to allow test execution on heterogeneous and changing implementations. This combination of modeling and code generation allows for a more integrated and more efficient testing process.

✦ Table of Contents


Vieweg - Domain-Specific Model-Driven Testing (2010) (ATTiCA)......Page 4
Foreword......Page 6
Acknowledgements......Page 7
Abstract......Page 8
Contents......Page 10
1.1 Testing and Software Quality......Page 13
1.1.1.1 Different Notions of Quality......Page 14
1.1.1.2 Attributes of Software Quality......Page 15
1.1.2.1 Conformance and Fault-Oriented Testing......Page 16
1.1.3.1 Reasons for Test Automation......Page 18
1.1.3.2 Phases of Test Automation......Page 21
1.1.3.3 Automatic and Automated Testing......Page 22
1.2.1 Testing by Domain Experts......Page 24
1.3 Quality of Test Automation......Page 25
1.3.2 Software Quality Attributes Applied to Test Software......Page 26
1.4 Chapter Summary......Page 27
2 Use of Models in Software Engineering......Page 29
2.1 Roles and Properties of Models......Page 30
2.1.2 Types of Models......Page 31
2.1.2.1 Meta Model......Page 32
2.2 Model-Driven Software Development......Page 33
2.2.3 Generative Programming......Page 34
2.2.5 Models and Programming Languages......Page 35
2.3 Model-Driven Testing......Page 36
2.3.1 Types of Model-Driven Testing......Page 37
2.4 Chapter Summary......Page 38
3 System Families and Variability......Page 40
3.1 Variability in Software Engineering......Page 41
3.1.1 Analysis and Scoping of a Product Line......Page 42
3.1.2 Variability and System Family Testing......Page 44
3.2.1 Structure of Feature Models......Page 45
3.2.2 Configuration and Specialization of Feature Models
......Page 47
3.3 Testing of System Families......Page 49
3.4 Chapter Summary......Page 51
4.1 Information Retrieval......Page 52
4.1.1 Purpose of Information Retrieval......Page 53
4.1.2 Concepts and Methods of Information Retrieval......Page 55
4.1.3 Evaluation for Information Retrieval......Page 58
4.1.3.1 Evaluation of Graded Retrieval Models......Page 59
4.1.3.2 Limitations of the Notion of Relevance......Page 60
4.2 Digital Libraries......Page 61
4.2.1 Structural and Semantic Heterogeneity......Page 62
4.2.3 Testing of Digital Libraries with MTCC......Page 64
4.3 Chapter Summary......Page 66
5.1 The MTCC Process......Page 67
5.1.1 Roles and Relation to Software Development......Page 69
5.1.1.1 Roles in the MTCC Process......Page 70
5.1.1.2 Relationship of MTCC to Product Development......Page 71
5.1.2.1 Domain Engineering......Page 72
5.1.2.2 Application Engineering......Page 74
5.1.3 Composition of Models......Page 75
5.1.3.1 Reasons for the Composition of Models......Page 76
5.1.3.2 The Composition Process......Page 77
5.1.4 Modeling of Test Configurations
......Page 78
5.1.4.1 Representation of Tests in the Editor......Page 79
5.1.5.1 Generation of Test Code......Page 80
5.2.1 Domain Level Models......Page 81
5.2.3 Test-Level Models......Page 83
5.3 Chapter Summary......Page 84
6 Models for System and Test Representation......Page 86
6.1 Models for the Behavior of a Testee......Page 87
6.1.2 Concepts and Structure of the Application State Model......Page 88
6.1.3 Test-Level Behavioral Models......Page 91
6.2 Feature Models for System and Test Representation......Page 93
6.2.1 Feature Modeling in MTCC......Page 94
6.2.2 Modeling of Test-Relevant Services......Page 96
6.2.3 Representation of Test Steps......Page 99
6.3.2 The Composition Process......Page 103
6.4 Chapter Summary......Page 105
7 Application of MTCC Models......Page 107
7.1 Representation of Test Steps in the Editor......Page 108
7.1.1 Overview of the MTCC Editor......Page 109
7.1.2 Construction of Tests from Test Step Instances......Page 111
7.1.3 Representation of a Test Step Instance by GUI Elements......Page 113
7.2 Configuration of Test Models
......Page 118
7.2.1 Representation of Specialization Steps as Configuration Nodes
......Page 120
7.2.2 Implementation of Configuration Nodes
......Page 121
7.2.3 Application of Configuration Objects
......Page 123
7.3 Reuse of Tests......Page 124
7.3.1 Transfer of Test Step Sequences......Page 125
7.3.2 Transfer of Test Step Con.gurations......Page 128
7.4 Test Execution Based on Test Configuration Instances
......Page 130
7.4.1 Transformation of Test Con.guration Instances......Page 131
7.4.2 Test Case Generation......Page 132
7.5 Chapter Summary......Page 135
8.1 A System Family of Digital Libraries......Page 136
8.1.1 Sowiport......Page 137
8.1.3 IREON......Page 140
8.1.4 GESIS Solr Installation......Page 142
8.2.1 Manipulation of the SUT......Page 143
8.2.2 Veri.cation of the Testee......Page 145
8.3.1 System-Independent Services......Page 146
8.3.2 Domain-Independent Services......Page 147
8.4.1 The SEARCH Service......Page 148
8.4.2 The SEARCH_OPTIONS Service......Page 149
8.4.3 The REQUEST_INFORMATION Service......Page 150
8.4.4 The DOCUMENT_LIST Service......Page 151
8.4.5 The MARKED_DOCUMENT_HANDLER Service......Page 152
8.4.6 The ORDERING Service......Page 153
8.4.9 The NAVIGATOR_LIST Service......Page 154
8.5 Chapter Summary......Page 155
9.1.1 Reasons for Validation......Page 157
9.1.2 Challenges to Validation......Page 159
9.1.3 Validation Methods......Page 160
9.1.3.1 Validation Types......Page 161
9.1.3.2 The Goal Question Metric Approach......Page 162
9.2.1 Hypothesis......Page 163
9.2.3 Goal of the Validation......Page 164
9.3 GQM Application for MTCC......Page 165
9.3.1 Systems and Test Sets......Page 166
9.3.2 Q1: Capability to Represent Tests......Page 168
9.3.2.1 Q1.1 Support of MTCC for Prede.ned Test Scenarios......Page 169
9.3.2.3 Q1.3 Capability to Express Tests De.ned by Domain Experts......Page 171
9.3.2.5 Q1.5 Support for Tests Derived from Identi.ed Faults......Page 172
9.3.3 Q2: Executability of MTCC Test Con.gurations......Page 173
9.3.3.2 Q2.2 Executability on the Members of a System Family......Page 174
9.3.4 Q3: Reuse of Test Con.gurations......Page 175
9.3.4.3 Q3.3: Reuse for System Layers......Page 176
9.3.5 Q4: Practicality and Understandability of MTCC......Page 177
9.3.5.2 Q4.2: Construction of Tests......Page 178
9.4 Chapter Summary......Page 179
10.2 The Prototype of the MTCC Editor......Page 181
10.4 Capability to Represent Tests......Page 185
10.5 Validation of the Executability......Page 187
10.6 Validation of Reusability......Page 191
10.6.1 Validation of the Usability......Page 192
10.6.1.2 Q4.2 Construction of Tests......Page 193
10.6.1.3 Problems and Relevant Mistakes in Test Modeling......Page 195
10.6.2 Validation of the Ef.ciency......Page 196
10.7.1.1 Reliability......Page 197
10.7.1.2 Descriptiveness and Reproducibility......Page 198
10.7.2.1 Interpretation of the Expressiveness......Page 199
10.7.2.2 Execution of Tests......Page 200
10.7.3 Usability of MTCC......Page 201
10.8 Chapter Summary......Page 202
11.1 Testing Based on Usage Scenarios......Page 204
11.1.1 The SCENT Approach......Page 205
11.1.2 The Eg Approach......Page 207
11.2 Modeling of Tests......Page 208
11.2.1 UML 2.0 Testing Pro.le......Page 209
11.3.1 Representation of GUIs......Page 210
11.4 Testing of System Families......Page 211
11.4.2 Condron’s TADE Approach......Page 212
11.5 Involvement of Domain Experts in Software Development......Page 214
11.5.1 FIT......Page 215
11.6 Novelty of MTCC......Page 216
11.7 Chapter Summary......Page 217
12.1.1 The MTCC Approach......Page 218
12.1.4 Validation......Page 219
12.2 Contributions......Page 220
13.1.1 Additional Validation......Page 222
13.2 Concluding Remarks......Page 223
Test Set TS2......Page 225
Test Set TS3a......Page 226
Test Set TS4a......Page 227
Test Set TS5......Page 228
Bibliography......Page 230


πŸ“œ SIMILAR VOLUMES


Domain-Specific Model-Driven Testing
✍ Stefan Baerisch πŸ“‚ Library πŸ“… 2010 πŸ› Vieweg and Teubner 🌐 English

Software reuse and software quality are increasingly important topics in today's software engineering both for researchers and for practitioners. The design and implementation of tests is especially challenging when tests are conceptualized for different variants and versions of an application. Stef

Domain-Specific Model-Driven Testing
✍ Stefan Baerisch πŸ“‚ Library πŸ“… 2010 🌐 English

Software reuse and software quality are increasingly important topics in today's software engineering both for researchers and for practitioners. The design and implementation of tests is especially challenging when tests are conceptualized for different variants and versions of an application. Stef

Domain-Specific Model-Driven Testing
✍ Stefan Baerisch (auth.), Prof. Dr. Wilhelm Hasselbring (eds.) πŸ“‚ Library πŸ“… 2010 πŸ› Vieweg+Teubner Verlag 🌐 English

<p>Software reuse and software quality are increasingly important topics in today’s software engineering both for researchers and for practitioners. The design and implementation of tests is especially challenging when tests are conceptualized for different variants and versions of an application. <

Domain-Specific Modeling
✍ Steven Kelly, Juha-Pekka Tolvanen πŸ“‚ Library πŸ“… 2008 🌐 English

"[The authors] are pioneers. . . . Few in our industry have their breadth of knowledge and experience."β€”From the Foreword by Dave Thomas, Bedarra LabsDomain-Specific Modeling (DSM) is the latest approach to software development, promising to greatly increase the speed and ease of software creation.

Model-Driven Testing
✍ Paul Baker, Zhen Ru Dai, Jens Grabowski, Øystein Haugen, Ina Schieferdecker, Cla πŸ“‚ Library πŸ“… 2008 πŸ› Springer-Verlag Berlin Heidelberg 🌐 English

<p><P>Model-driven development has become the most important new paradigm in software development and has already demonstrated considerable impact in reducing time to market and improving product quality. However, the development of high-quality systems not only requires systematic development proce

Architecture Patterns with Python: Enabl
✍ Harry Percival, Bob Gregory πŸ“‚ Library πŸ“… 2020 πŸ› O'Reilly Media 🌐 English

As Python continues to grow in popularity, projects are becoming larger and more complex. Many Python developers are taking an interest in high-level software design patterns such as hexagonal/clean architecture, event-driven architecture, and the strategic patterns prescribed by domain-driven desig