A study of Object Oriented testing techniques: Survey and challenges

Author(s):  
G. Suganya ◽  
S. Neduncheliyan
2016 ◽  
Vol 11 (01) ◽  
Author(s):  
Rashmi Trivedi Sharma

In today’s fast pace world, large scale system design is sought for, and to fulfill this need Object-oriented paradigm is the solution. It includes various distinguished features that are not involved in their conventional analogues. Example: Encapsulation, Polymorphism, Object instantiation, Persistence, Synchronization, Message Passing, Inheritance, and Dynamic Binding etc. Hence, Testing for such programs becomes even more tedious than that for stereotyped programs. In this paper we have discussed about the testing being carried out in the Object Oriented domain. In order to conform to this, several new methodologies have been proposed like Scenario based testing, Deep structural testing, Surface structure testing, and fault-based techniques.


2008 ◽  
Vol 7 (8) ◽  
pp. 155 ◽  
Author(s):  
Praveen Ranjan Srivastava ◽  
V. Karthik Anand ◽  
Mayuri Rastogi ◽  
Vikrant Yadav ◽  
G. Raghurama

2013 ◽  
Vol 411-414 ◽  
pp. 497-500
Author(s):  
Li Zhang ◽  
Xiao Dong Mu ◽  
Hai Jing Zhang ◽  
Wei Song

Object-oriented technology has been widely used in the area of computer software. However, traditional software testing techniques cannot perform effectively on object-oriented software. The differences between object-oriented software testing and traditional software testing are compared and elaborated from three aspects: testing model, testing software and testing cases.


Author(s):  
RAKSHA SV

Continuous integration is an extensive experience in the Enterprise and system architectures, it is the concept of integrating new code into existing code and then utilizing the testing techniques defined by Extreme Programming. This practice yields units of code that are continually tested during development. Using continuous integration, a programmer integrates new code into existing code after the existing code has been relentlessly built. Therefore, the release of the change is done when it is and everyone knows about the new functionality at the time of the release. While this is dynamic, it should not pose problems since the code is released only after thorough testing. This particular idea generates much discussion among the software practitioners, but the result is that it does advocate the thorough building and testing of modules prior to release as its main premise. On this main premise there is no resistance. It also recognizes that the integration of code in the object-oriented paradigm deserves some focus. One of the key requirement of this paper is to develop a common platform to do automated build environment, as the current environment is emulated from decade old build system based on Make and there is no way to track changes made to the system for detecting dependency flaws.


Author(s):  
Xiaozhen Xue ◽  
Sima Siami-Namini ◽  
Akbar Siami Namin

Empirical studies show that coverage-based fault localizations are very effective in testing and debugging software applications. It is also a commonly held belief that no software testing techniques would perform best for all programs with various data structures and complexity. An important research question posed in this paper is whether the type and complexity of faults in a given program has any influence on the performance of these fault localization techniques. This paper investigates the performance of coverage-based fault localizations for different types of faults. We explore and compare the accuracy of these techniques for two large groups of faults often observed in object-oriented programs. First, we explore different types of traditional method-level faults grouped into six categories including those related to arithmetic, relational, conditional, logical, assignment, and shift. We then focus on class-level faults related to object-oriented features and group them into four categories including inheritance, overriding, Java-specific features, and common programming mistakes. The results show that coverage-based fault localizations are less effective for class-level faults associated with object-oriented features of programs. We therefore advocate the needs for designing more effective fault localizations for debugging object-oriented and class-level defects.


Author(s):  
Muhammad Miftakhul Syaikhuddin ◽  
Choirul Anam ◽  
Ade Rizky Rinaldi ◽  
Moch El Bahar Conoras

Software development process highly relates to analysis, design, coding, testing and implementation processes. Testing process becomes imperative process to maintain a quality product running well. Testing process can be conducted both for structural and object-oriented software. However, the method utilized for structural and object-oriented software is significantly different. Testing structural program can utilize White Box, Black Box, or Gray testing methods. This study White Box Testing has been employed to test a simple application. The testing process using White Box Testing employs some testing techniques based on path testing consisting of some processes, namely testing independent path, developing flow graph, calculating cyclomatic complexity, and developing graph matrices. Hence, the testing process employing White Box method with basis path testing technique can be executed.


Author(s):  
PETER J. CLARKE ◽  
JUNHUA DING ◽  
DJURADJ BABICH ◽  
BRIAN A. MALLOY

The object-oriented (OO) paradigm provides several benefits during analysis and design of large-scale software systems, but scores lower in terms of testability. The low testability score for OO software is due mainly to the composition of OO systems exhibiting the characteristics of abstraction, encapsulation, genericity, inheritance, polymorphism, concurrency and exception handling. To address the difficulty of testing the features of a class, a plethora of implementation-based testing techniques (IBTTs) have been developed. However, no one IBTT has emerged as the preferred technique to test the implementation of a class. In this paper we present a technique that automatically identify those IBTTs that are most suitable for testing a class based on the characteristics of that class. Our approach uses a taxonomy of OO classes that is used to succinctly abstract the characteristics of a class under test (CUT). We have implemented a tool that automates the process of mapping IBTTs to a class. In addition to identifying the IBTTs that would be best suited for testing a class, our tool provides feedback to the tester facilitating the identification of the characteristics of the class that are not suitably tested by any of the IBTTs in the list. We provide results of a study supporting the notion that using more than on IBTT during testing improves test coverage of a CUT.


Sign in / Sign up

Export Citation Format

Share Document