{"title":"Contract-based testing: from objects to components","authors":"P. Collet, D. Deveaux, R. Rousseau","doi":"10.1109/IWOTA.2004.1428408","DOIUrl":null,"url":null,"abstract":"Contracts on object-oriented classes have been first developed as a software design approach. They were also quickly used for supporting class testing, providing a form of design for testability. In this paper, we identify the tracks to extend the contract-based built-in test technique to hierarchical components. To do that, we build on our previous work on STclass, a framework supporting design by contract and built-in test for Java, and on ConFract, a contracting system for the Fractal component platform. Tests are embedded in the components and are generated with respect to a category of contract (library, interface, composition). In this paper we study how this approach, firstly dedicated to objects, can be valuable for component testability. As a result of the test process, the embedded contracts are more robust and offer an original way to improve the observability of the component-based system. Contracts make it aware of its execution, and thus able to detect erroneous behaviors at runtime.","PeriodicalId":120954,"journal":{"name":"First International Workshop onTestability Assessment, 2004. IWoTA 2004. Proceedings.","volume":"52 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2004-11-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"6","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"First International Workshop onTestability Assessment, 2004. IWoTA 2004. Proceedings.","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/IWOTA.2004.1428408","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 6
Abstract
Contracts on object-oriented classes have been first developed as a software design approach. They were also quickly used for supporting class testing, providing a form of design for testability. In this paper, we identify the tracks to extend the contract-based built-in test technique to hierarchical components. To do that, we build on our previous work on STclass, a framework supporting design by contract and built-in test for Java, and on ConFract, a contracting system for the Fractal component platform. Tests are embedded in the components and are generated with respect to a category of contract (library, interface, composition). In this paper we study how this approach, firstly dedicated to objects, can be valuable for component testability. As a result of the test process, the embedded contracts are more robust and offer an original way to improve the observability of the component-based system. Contracts make it aware of its execution, and thus able to detect erroneous behaviors at runtime.