This paper revolves around Procedural Programming, Object Oriented Programming and Aspect Oriented Programming Paradigm and how testing is performed on this paradigms. This paper concludes by comparing various testing methods in various programming paradigms.
Nội dung trích xuất từ tài liệu:
Evolution of testing with respect to the programming paradigmsInternational Journal of Mechanical Engineering and Technology (IJMET)Volume 10, Issue 03, March 2019, pp. 1067–1072, Article ID: IJMET_10_03_107Available online at http://www.iaeme.com/ijmet/issues.asp?JType=IJMET&VType=10&IType=3ISSN Print: 0976-6340 and ISSN Online: 0976-6359© IAEME Publication Scopus Indexed EVOLUTION OF TESTING WITH RESPECT TO THE PROGRAMMING PARADIGMS Pravesh Panwar, Deepanshu Agarwal, Purva Vyas Department of Information Technology, Faculty of Technology and Engineering Bharati Vidyapeeth (Deemed to be University) College of Engineering, Pune, Maharashtra, India P.A. Jadhav Department of Information Technology, Assistant Professor of Information Technology Bharati Vidyapeeth (Deemed to be University) College of Engineering, Pune, Maharashtra, India S.D. Joshi Department of Computer Science, Professor in Computer Science Bharati Vidyapeeth (Deemed to be University) College of Engineering, Pune, Maharashtra, India ABSTRACT With the advancement in computer technology all over the globe developing and maintainability of a program is sine qua non. A program goes through various phases before it actually used by public and this is known as Software Development Life Cycle. The various phases are Requirement gathering and analysis, Designing, Coding, Testing, Deployment and Maintenance. Industries uses these phases to enhance the technology which is supported by many pillars like digital electronics, computer networks, data structure and algorithms etc. and major role is played by various programming languages. As a ramification of it this paper presents how various software testing methods like Unit testing, Integration testing, Validation testing and System Testing evolve with the revalorisation of programming paradigms. This paper revolves around Procedural Programming, Object Oriented Programming and Aspect Oriented Programming Paradigm and how testing is performed on this paradigms. This paper concludes by comparing various testing methods in various programming paradigms. Key words: Unit Testing, Integration Testing, Validation Testing, System Testing, Procedural Programming, Object Oriented Programming, Aspect oriented Programming. Cite this Article: Pravesh Panwar, Deepanshu Agarwal, Purva Vyas, P.A. Jadhav, S.D. Joshi, Evolution of Testing with Respect to the Programming Paradigms, International Journal of Mechanical Engineering and Technology 10(3), 2019, pp. 1067–1072. http://www.iaeme.com/IJMET/issues.asp?JType=IJMET&VType=10&IType=3 http://www.iaeme.com/IJMET/index.asp 1067 editor@iaeme.com Evolution of Testing with Respect to the Programming Paradigms1. INTRODUCTIONSoftware Testing is the action of illuminating a software capabilities by placing them under pre-defined pre-requisite constraints. Testing is one of the important and indispensable activities ofsoftware development life cycle [1] [2].Software testing make sure the deployed software iserror resilient and satisfies the customer specifications. To fulfil the correspondingrequirements: validation and verification is performed on the software. Validation refers torectifying the project requirements with respect to the output generated by each phase andverification refers to the evaluation done on output generated by each phase with respect to theinput criteria test cases fixed by the developer. The testing also gives assurances for the productquality. [2]. Testing clinches to perform series of activities which range from building the testcases to evaluating it. Regardless of using any software development programming paradigm, testing is performedat each phase of the software development life cycle which are namely as follows unit testing,integration testing, validation testing and system testing [3] as represented in Fig. 1.Tetsinglevels remain same irrespective of the programming paradigms used. Figure 1 Levels of Software TestingUnit Testing:- It is the most basic level at which any program or software is tested upon. Themotto is to authenticate that each component of the software performs as planned by thedeveloper. A component is the tiniest testable part of any software. It commonly has single ora few inputs and usually a single or multiple output. Unit Testing test cases evolve or changesrespective of the programming paradigms the tester is working on. In structural/proceduralprogramming, an individual program, function, etc. are considered as a unit whereas thesmallest unit in object-oriented programming is an encapsulated class, which may belong to aparent/base class, abstract class or derived/child class. In an aspect-oriented programming, thesmallest building block is an aspect itself.Integration Testing- The coding team codes for various modules of a software and integrationtesting is the one which comprises different modules of a software are integrated to test asoftware logically as a single unit. The main focus of this testing is to check the flow of dataamong various modules. It is also termed as I&T (Integration and Testing), String Testingor Thread Testing also. Structural programming involves Integration testing over the controlflow diagrams. Also, this testing pedals the communication through the data created and usedby other groups of programs modules, interacting with the group under test. In Object-Orientedsoftware, integrated testing is to verify the collaboration and responsive nature among theclasses and pa ...