Links for fulltext
(May Require Subscription)
- Publisher Website: 10.1016/S0950-5849(00)00112-9
- Scopus: eid_2-s2.0-0034224520
- WOS: WOS:000088103600002
- Find via
Supplementary
- Citations:
- Appears in Collections:
Article: ROCS: An object-oriented class-level testing system based on the Relevant Observable ContextS technique
Title | ROCS: An object-oriented class-level testing system based on the Relevant Observable ContextS technique |
---|---|
Authors | |
Keywords | Equivalent terms Fundamental pairs Class-level testing Object-oriented testing Observational equivalence Relevant observable contexts |
Issue Date | 2000 |
Publisher | Elsevier BV. The Journal's web site is located at http://www.elsevier.com/locate/infsof |
Citation | Information And Software Technology, 2000, v. 42 n. 10, p. 677-686 How to Cite? |
Abstract | Given an algebraic specification of a class of objects, we define a fundamental pair as two equivalent terms generated by substituting all the variables on both sides of an axiom by normal forms. For any implementation error in the class, if it can be revealed by two equivalent terms in general, it can also be revealed by a fundamental pair. Hence, we need only select test cases from the set of fundamental pairs instead of equivalent pairs in general. We highlight an algorithm for selecting a finite set of fundamental pairs as test cases. Further, by using the relevant observable contexts technique, we highlight another algorithm to determine whether the objects resulting from executing a fundamental pair are observationally equivalent. If not, it reveals an implementation error. Using these algorithms, we have constructed a system to test object-oriented programs at class-level. We describe in detail the implementation of a prototype system, including the data structure of a Data member Relevant Graph (DRG) for the class, the procedures for the construction and path traversal of the DRG, the generation and execution of relevant observable contexts on the objects under test, and the reporting of implementation errors. The implementation illustrates an innovative idea of embedding testing algorithms into an interpreter to facilitate software testing. |
Sponsorship | This research is supported in part by the Guangdong Province Science Foundation under Grants Nos. 980690 and 950618, the Hong Kong Research Grants Council, the National Natural Science Foundation of China under Grant No. 69873020, and the University Research Committee of the University of Hong Kong. Part of the Chen’s work was done when he was on leave at the University of Hong Kong. Part of the Tse’s work was done when he was on leave at the Vocational Training Council, Hong Kong. Part of the Deng’s work was done when he was with Jinan University, China. |
Persistent Identifier | http://hdl.handle.net/10722/55519 |
ISSN | 2023 Impact Factor: 3.8 2023 SCImago Journal Rankings: 1.320 |
ISI Accession Number ID | |
References |
DC Field | Value | Language |
---|---|---|
dc.contributor.author | Chen, HY | en_HK |
dc.contributor.author | Tse, TH | en_HK |
dc.contributor.author | Deng, YT | en_HK |
dc.date.accessioned | 2009-08-13T08:24:55Z | - |
dc.date.available | 2009-08-13T08:24:55Z | - |
dc.date.issued | 2000 | en_HK |
dc.identifier.citation | Information And Software Technology, 2000, v. 42 n. 10, p. 677-686 | en_HK |
dc.identifier.issn | 0950-5849 | en_HK |
dc.identifier.uri | http://hdl.handle.net/10722/55519 | - |
dc.description.abstract | Given an algebraic specification of a class of objects, we define a fundamental pair as two equivalent terms generated by substituting all the variables on both sides of an axiom by normal forms. For any implementation error in the class, if it can be revealed by two equivalent terms in general, it can also be revealed by a fundamental pair. Hence, we need only select test cases from the set of fundamental pairs instead of equivalent pairs in general. We highlight an algorithm for selecting a finite set of fundamental pairs as test cases. Further, by using the relevant observable contexts technique, we highlight another algorithm to determine whether the objects resulting from executing a fundamental pair are observationally equivalent. If not, it reveals an implementation error. Using these algorithms, we have constructed a system to test object-oriented programs at class-level. We describe in detail the implementation of a prototype system, including the data structure of a Data member Relevant Graph (DRG) for the class, the procedures for the construction and path traversal of the DRG, the generation and execution of relevant observable contexts on the objects under test, and the reporting of implementation errors. The implementation illustrates an innovative idea of embedding testing algorithms into an interpreter to facilitate software testing. | en_HK |
dc.description.sponsorship | This research is supported in part by the Guangdong Province Science Foundation under Grants Nos. 980690 and 950618, the Hong Kong Research Grants Council, the National Natural Science Foundation of China under Grant No. 69873020, and the University Research Committee of the University of Hong Kong. Part of the Chen’s work was done when he was on leave at the University of Hong Kong. Part of the Tse’s work was done when he was on leave at the Vocational Training Council, Hong Kong. Part of the Deng’s work was done when he was with Jinan University, China. | en |
dc.language.iso | eng | en |
dc.publisher | Elsevier BV. The Journal's web site is located at http://www.elsevier.com/locate/infsof | en_HK |
dc.relation.ispartof | Information and Software Technology | en_HK |
dc.rights | Copyright © 2000 Elsevier Science B.V. All rights reserved. | - |
dc.rights | This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. | - |
dc.subject | Equivalent terms | en |
dc.subject | Fundamental pairs | en |
dc.subject | Class-level testing | en |
dc.subject | Object-oriented testing | en |
dc.subject | Observational equivalence | en |
dc.subject | Relevant observable contexts | en |
dc.title | ROCS: An object-oriented class-level testing system based on the Relevant Observable ContextS technique | en_HK |
dc.type | Article | en_HK |
dc.identifier.email | Tse, TH: thtse@cs.hku.hk | en_HK |
dc.identifier.authority | Tse, TH=rp00546 | en_HK |
dc.description.nature | preprint | en_HK |
dc.identifier.doi | 10.1016/S0950-5849(00)00112-9 | en_HK |
dc.identifier.scopus | eid_2-s2.0-0034224520 | en_HK |
dc.relation.references | http://www.scopus.com/mlt/select.url?eid=2-s2.0-0034224520&selection=ref&src=s&origin=recordpage | en_HK |
dc.identifier.volume | 42 | en_HK |
dc.identifier.issue | 10 | en_HK |
dc.identifier.spage | 677 | en_HK |
dc.identifier.epage | 686 | en_HK |
dc.identifier.isi | WOS:000088103600002 | - |
dc.publisher.place | Netherlands | en_HK |
dc.identifier.scopusauthorid | Chen, HY=7501614657 | en_HK |
dc.identifier.scopusauthorid | Tse, TH=7005496974 | en_HK |
dc.identifier.scopusauthorid | Deng, YT=7401531068 | en_HK |
dc.identifier.issnl | 0950-5849 | - |