{"title":"Constraint-based test database generation for SQL queries","authors":"C. Riva, María José Suárez Cabal, J. Tuya","doi":"10.1145/1808266.1808276","DOIUrl":"https://doi.org/10.1145/1808266.1808276","url":null,"abstract":"Populating test databases with meaningful test data is a difficult task as it involves generating data for many joined tables that must be diverse enough to be able to reveal faults and small enough to make the testing process efficient. This paper proposes an approach for the automatic generation of a test database for a set of SQL queries using a test criterion specifically tailored for the SQL language (SQLFpc). Given as input a schema database and a set of test requirements derived from the application of the test criterion to the target queries, the approach returns a database instance which satisfies the test requirements. Both the schema and the test requirements are modeled in the Alloy language, after which the analyzer generates the test database. The approach is evaluated on a real case study and the results show its feasibility, generating a test database of reduced size with an elevated coverage and mutation score.","PeriodicalId":443108,"journal":{"name":"International Conference/Workshop on Automation of Software Test","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-05-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115769072","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Makoto Higashi, Tetsuo Yamamoto, Yasuhiro Hayase, T. Ishio, Katsuro Inoue
{"title":"An effective method to control interrupt handler for data race detection","authors":"Makoto Higashi, Tetsuo Yamamoto, Yasuhiro Hayase, T. Ishio, Katsuro Inoue","doi":"10.1145/1808266.1808278","DOIUrl":"https://doi.org/10.1145/1808266.1808278","url":null,"abstract":"Embedded software frequently uses interrupts for timer or I/O processing. If a memory area is used by both an interrupt handler and other routines at the same time, the embedded system has the potential to fail because of unexpected data in the memory. To detect the race conditions of memory, this paper proposes a method of interrupt testing on a CPU emulator. The method consists of two features: one is interrupt generation at the instruction points that possibly causes race conditions; the other is replacing input value from external device to control interrupt handlers. An interrupt is generated just after the program reads or writes data on memory for the purpose of covering all possibility of sharing memory between the interrupt handler and other routines. Sequence of input value from the external device is prepared by hand before program execution. We have applied our method to testing for a race condition of uClinux. The experience of detecting race conditions has shown the mechanism causes interrupts at necessary and sufficient timing compared with random interrupt testing. Also, it is easy to substitute values in memory to detect race conditions.","PeriodicalId":443108,"journal":{"name":"International Conference/Workshop on Automation of Software Test","volume":"149 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-05-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117300456","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Automating software tests with partial oracles in integrated environments","authors":"René Just, F. Schweiggert","doi":"10.1145/1808266.1808280","DOIUrl":"https://doi.org/10.1145/1808266.1808280","url":null,"abstract":"The oracle problem is an essential part in current research on automating software tests. Partial oracles seem to be a viable solution, but their suitability for different testing steps and general applicability for various systems remains still to be shown.\u0000 In the present paper a study is presented in which partial oracles are applied in order to automatically test an image processing application in an integrated environment. Furthermore, the efficiency of these partial oracles is measured by means of Mutation Analysis to determine their adequacy for this purpose.","PeriodicalId":443108,"journal":{"name":"International Conference/Workshop on Automation of Software Test","volume":"209 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-05-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124706365","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Baris Güldali, Stefan Sauer, Peter Winkelhane, Holger Funke, M. Jahnich
{"title":"Pattern-based generation of test plans for open distributed processing systems","authors":"Baris Güldali, Stefan Sauer, Peter Winkelhane, Holger Funke, M. Jahnich","doi":"10.1145/1808266.1808284","DOIUrl":"https://doi.org/10.1145/1808266.1808284","url":null,"abstract":"Acceptance testing is a time-consuming task for complex software systems that have to fulfil a large number of requirements. To reduce efforts in acceptance testing, we have developed an approach that exploits redundancies and implicit relations in requirements specifications which are based on multi-viewpoint techniques, such as RM-ODP. We use linguistic analysis techniques, requirements clustering algorithms and pattern-based requirements collection for reducing the total number of test cases that are derived from the requirements specification. In particular, we present new capabilities for automatically deriving semi-formal test plans and acceptance criteria from the clustered informal textual requirements. Tool support for automated detection of redundancies and implicit relations is extended by new functionalities regarding measurement and the generation of quality plans. We apply our solution particularly in planning, procurement and acceptance testing of national electronic identification (eID) systems. In summary, we show that linguistic analysis and clustering techniques can help testers in understanding the relations between requirements and for improving test planning.","PeriodicalId":443108,"journal":{"name":"International Conference/Workshop on Automation of Software Test","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-05-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130487805","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Automatically extracting mock object behavior from Design by Contract#8482; specification for test data generation","authors":"Stefan J. Galler, Andreas Maller, F. Wotawa","doi":"10.1145/1808266.1808273","DOIUrl":"https://doi.org/10.1145/1808266.1808273","url":null,"abstract":"Test data generation is an important task in the process of automated unit test generation. Random and heuristic approaches are well known for test input data generation. Unfortunately, in the presence of complex pre-conditions especially in the case of non-primitive data types those approaches often fail. A promising technique for generating an object that exactly satisfies a given pre-condition is mocking, i.e., replacing the concrete implementation with an implementation only considering the necessary behavior for a specific test case. In this paper we follow this technique and present an approach for automatically deriving the behavior of mock objects from given Design by Contract#8482; specifications. The generated mock objects behave according to the Design by Contract#8482; specification of the original class. Furthermore, we make sure that the observed behavior of the mock object satisfies the pre-condition of the method under test. We evaluate the approach using the Java implementations of 20 common Design Patterns and a stack based calculator. Our approach clearly outperforms pure random data generation in terms of line coverage.","PeriodicalId":443108,"journal":{"name":"International Conference/Workshop on Automation of Software Test","volume":"55 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-05-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126202498","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Model-based testing in industry: a case study with two MBT tools","authors":"M. Sarma, P. Murthy, S. Jell, A. Ulrich","doi":"10.1145/1808266.1808279","DOIUrl":"https://doi.org/10.1145/1808266.1808279","url":null,"abstract":"Traditional testing techniques may not always be suitable for adequate, thorough, and extensible testing of critical and complex software in a resource and time constrained software development environment. Model-based testing (MBT) is an evolving technique for generating test cases automatically from a behavioral model of a system under test. For a Siemens industrial project in the healthcare domain high quality, reliable and robust software is indispensable. Thus, we must ensure rigorous testing using a model based approach. We specify nine essential criteria to be satisfied to ensure the quality of the medical software with MBT. We have selected two recently launched MBT tools, namely Conformiq's Qtronic 2.0 and Microsoft's SpecExplorer 2010 V3.0, to see how far the criteria set for testing are achieved by these two tools. This paper reports on the evaluation of the tools and discusses the scope and objectives of future generation MBT tools.","PeriodicalId":443108,"journal":{"name":"International Conference/Workshop on Automation of Software Test","volume":"50 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-05-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130453136","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Calculating the usage probabilities of statistical usage models by constraints optimization","authors":"W. Dulz, R. German, Stefan Holpp, Helmut Goetz","doi":"10.1145/1808266.1808285","DOIUrl":"https://doi.org/10.1145/1808266.1808285","url":null,"abstract":"The systematic generation of test cases from statistical usage models has been investigated recently for specific application domains, such as wireless communications or automotive applications. For Markov chain usage models, the expected usage of a hardware/software system is represented by transitions between usage states and a usage profile, meaning probability values that are attached to the state transitions.\u0000 In this paper, we explain how to calculate the profile probabilities for the Markov chain usage model from a set of linear usage constraints and by optimizing a convex polyhedron that represents the constrained solution space. Comparing the computed probability distributions of our polyhedron approach with the maximum entropy technique, which is the main technique used so far, illustrates that our results are more obvious to the intented constraint semantics. In order to demonstrate the applicability of our approach, workflow testing of a complex RIS/PACS system in the medical domain was carried through and has provided promising results.","PeriodicalId":443108,"journal":{"name":"International Conference/Workshop on Automation of Software Test","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-05-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130634748","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Automating the mutation testing of aspect-oriented Java programs","authors":"F. Ferrari, E. Nakagawa, A. Rashid, J. Maldonado","doi":"10.1145/1808266.1808274","DOIUrl":"https://doi.org/10.1145/1808266.1808274","url":null,"abstract":"Aspect-Oriented Programming has introduced new types of software faults that may be systematically tackled with mutation testing. However, such testing approach requires adequate tooling support in order to be properly performed. This paper addresses this issue, introducing a novel tool named Proteum/AJ. Proteum/AJ realises a set of requirements for mutation-based testing tools and overcomes some limitations identified in previous tools for aspect-oriented programs. Through an example, we show how Proteum/AJ was designed to support the main steps of mutation testing. This preliminary use of the tool in a full test cycle provided evidences of the feasibility of using it in real software development processes and helped us to reason about the current functionalities and to identify future needs.","PeriodicalId":443108,"journal":{"name":"International Conference/Workshop on Automation of Software Test","volume":"120 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-05-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116579850","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Koen Claessen, John Hughes, Michal H. Palka, Nicholas Smallbone, Hans Svensson
{"title":"Ranking programs using black box testing","authors":"Koen Claessen, John Hughes, Michal H. Palka, Nicholas Smallbone, Hans Svensson","doi":"10.1145/1808266.1808282","DOIUrl":"https://doi.org/10.1145/1808266.1808282","url":null,"abstract":"We present an unbiased method for measuring the relative quality of different solutions to a programming problem. Our method is based on identifying possible bugs from program behaviour through black-box testing. The main motivation for such a method is its use in experimental evaluation of software development methods. We report on the use of our method in a small-scale such experiment, which was aimed at evaluating the effectiveness of property-based testing vs. unit testing in software development.","PeriodicalId":443108,"journal":{"name":"International Conference/Workshop on Automation of Software Test","volume":"31 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-05-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131994254","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Generation of executable test cases based on behavioral UML system models","authors":"C. Schwarzl, B. Peischl","doi":"10.1145/1808266.1808271","DOIUrl":"https://doi.org/10.1145/1808266.1808271","url":null,"abstract":"The further automation of the test development process beyond the automatic execution of tests is an increasing challenge, because the development of new functionalities has a higher pace than the test development. The use of model based techniques combined with test generation methods enable a fast test definition while the test oracle is calculated automatically. The presented approach was implemented in a research prototype, which was used to generate test cases out of an UML state chart model describing the behavior of the system under test. The resulting test sequences were executed on a hardware in the loop (HiL) and showed its applicability in an industrial setting.","PeriodicalId":443108,"journal":{"name":"International Conference/Workshop on Automation of Software Test","volume":"11 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-05-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116828619","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}