Investigation of Manual and Automation Testing Using Assorted Approaches

Total Page:16

File Type:pdf, Size:1020Kb

Investigation of Manual and Automation Testing Using Assorted Approaches International Journal of Scientific Research in _______________________________ Research Paper . Computer Science and Engineering Vol.5, Issue.2, pp.81-87, April (2017) E-ISSN: 2320-7639 Investigation of Manual and Automation Testing using Assorted Approaches Shruti Malve1* and Pradeep Sharma2 1Dept. of Computer Science, Govt. Holkar Science (Autonomous) College, Indore, India 2Dept. of Computer Science, Govt. Holkar Science (Autonomous) College, Indore, India Corresponding Author: [email protected] Available online at: www.isroset.org Received 15th Mar 2017, Revised 29th Mar 2017, Accepted 25th Apr 2017, Online 30th Apr 2017 Abstract- Testing means “revealing a person's capabilities by putting them under strain; challenging”. Software testing exist a vast domain, but it may be classify into two way: manual testing and automated testing. In manual testing, test cases are executed (run) manually without any help from tools/scripts, but with automated testing, test cases are executed (run) with the help of tools, scripts, and software. Software testing is expensive, labor intensive and consume more time in a software development life cycle. There was forever a need in software testing to decrease the testing time. The type of testing (manual or automated) depends on various factors, adding project need, budget, timeline, expertise, and suitability. Three fundamental factors of any project are of course time, cost, and quality – the objective of any successful project is to diminish the cost and time required to complete it successfully while maintaining quality output. When it comes to testing, one type may accomplish this goal better than the other. This paper presents the concept of automation and manual testing and problem with manual testing and benefit of automatic testing. The main objective of this paper is to conduct a comparative study of Manual and Automation testing Method based on Accuracy, Bug detection, Efforts, cost and Time. Keyword-Software Testing, Manual Testing, Automation Testing I. INTRODUCTION the necessities are frequently changing & huge amount of regression testing is required to be performed. [1], [2], [3], The motive of software testing technique is to recognize all [4]. the errors exists in a software product. It is a procedure to exercise and evolution a system or its component by manual The overall work of Research Paper is divided into five automatic means to authenticate that it satisfies particular parts, First we describe Related Work, second part conduct requirements or to recognize differences between expected Methodology, third part present the comparison of software and actual results. Testing activity can be conducted in to testing techniques, Fourth part presents the Result, and two ways: Manual testing & automation testing. Any kind of finally fifth part conclude the Research Paper. software testing can be complete by manually and by automation tool. Manual testing is in which the testing II. RELATED WORK activity is executed by testing persons. SOFTWARE TESTING Manual Testing is a procedure where in a tester usually Software testing is procedure that ensures the value of the follows a documented test plan which leads them with in a product to its stakeholders with information about the set of important test-cases. In a software testing a test-case superiority of the product. It is the method of evaluating a is group of terms written for particular applications & tester system by manual automatic means to recognize differences run all these Conditions to make sure the correct between expected and real results. [5][6]. functionality of the software applications. Automated software testing’s the finest way to increase the Fig. 1. Shows Mode of Testing Based on test execution, is effectiveness, efficiency and coverage of software testing. divided into two categories. Automation testing requires considerable amount of 1. Manual Testing investment for buying the software & compatible hardware 2. Automation testing resources. Automation testing does what manual testing does not. Automation testing improves the accuracy & it saves the time of the tester & organization’s money. Automation testing is best suited in the environment where © 2017, IJSRCSE All Rights Reserved 81 Int. J. Sci. Res. in Computer Science and Engineering Vol-5(2), Apr 2017, E-ISSN: 2320-7639 White Box Testing – This is a testing method which is based on information of the interior logic of an application’s code and also identified as Glass box Testing. It means its works on interior working of code in the system. Integration Testing – In integration testing, the individual parts of the system/application are joint and tested as a group. Integration testing follow unit testing and precedes system testing. [9] Fig. 1 Types of software Testing System Testing – It is a method to test whole system. System Testing (ST) is a black-box testing procedure 1. Manual Testing Manual testing is a testing method in which a person initiate performed to assess the whole system the system's every test, interacts with it, and compile, analyzes and fulfillment against specified necessities. reports the outcome. When there is a functioning that the Unit Testing – A unit may be defined as “the smallest test-cases is run without tester than Software testing is called possible testable software component”. A unit is the automated. [7] least testable element of an application. Unit tests focus Manual testing is a testing procedure in which the test on functionality and reliability, and they typically engineer organize test-case manually and execute them to consist of a cycle of stand-alone tests. recognize bugs in the software. It is old way of software Acceptance Testing – Acceptance testing, a testing testing. Manual testing is a painstaking movement that procedure performed to find out whether or not the requires the tester to have a certain set of qualities; to be software system has meet the requirement specifications. observant, creative, innovative, open-minded, and skillful. The main motive of this test is to estimate the system's Repetitive manual testing may be not easy to execute on big compliance with the business requirements and verify if software applications. Manual testing have many problems it is has met the required criteria for delivery to end like: it is very time consuming procedure, not reusable, has users. no scripting capability, huge effort required, and some bugs remain uncovered. [8]. A. Benefits of manual testing 1. If Test Cases have to be run a small number of times it's We may categorize manual testing in following kinds of more likely to perform manual testing. testing which is indicates in Fig. 2. These are, 2. It permit the tester to execute additional ad-hoc (random testing). 3. It requires minimum cost B. Drawbacks of manual testing 1. Manual tests may be extremely time consuming. 2. Manual testing requires more testers to perform testing. C. Limitations of Manual Testing 1. Performing manual testing is a boring activity for a testers. It needs to check each link on the site and every facts of the product under test. 2. It requires so much time for testing. We have to do same operations again & again. Regression testing is being used for checking bugs after making modification on one fraction of the software have negative effects on Fig. 2 Types of Manual Testing the other fraction of software. 3. Manual testing is time consuming, error prone and need Black Box Testing – –Black-Box testing method is used lot of infrastructure and manpower[10]. to test the functionalities and needs of the software/system. It doesn’t test the internal fraction of 2. Automation Testing the system. Black-Box Testing is testing without In compare to manual testing, automated testing automates awareness of the interior working of the application not only test-case execution, but also test-case generation under test (AUT). Also known as functional testing or and test result verification. A completely automated testing input output- driven testing. system is work without any user interference.[11]. © 2017, IJSRCSE All Rights Reserved 82 Int. J. Sci. Res. in Computer Science and Engineering Vol-5(2), Apr 2017, E-ISSN: 2320-7639 Automated tests perform a series of events without user Complexity intervention. It is also defined as a testing a system with With the increase in the number of requirements that different data sets continuously without intervention of are to be tested, this leads to more and more complexity human. Simply automated testing is automating the manual which makes the maintenance of test data extremely testing method currently in use. Automation is the utilize of difficult. strategies, toolset. Automation testing uses automation testing tools. The job of automation testing tool is to test the C. Limitations of Automation Testing intended task and to cut down the human effort. Automation Automation cannot replace manual testing: Not all testing is faster than manual testing and it is more reliable testing tasks may be easily automated, especially those since it performs every test case with precision. [12][13] that require widespread knowledge in a domain. Difficulty in maintenance of test automation: Change A. Benefits of automation testing in technology and evolution of software products leads Fast: Automation is less time consuming than manual to difficulty in preserve automated tests. testing. Process of test automation needs time to mature: Repeatable: Repetition of data or content can be Creating the infrastructure and tests for automation easily achieved by automation tools in no time. requires time, hence maturity of automation (and related Reusable: It can be operated on different version of benefits) requires time the software. False expectations: Firms/Companies have impractical Load & Performance Testing: No viable manual expectations when it comes to AST with the aim of alternative exists [14] saving as much cost as possible. Programmable: Testers should be check hidden Inappropriate test automation strategy: An information at advance level.
Recommended publications
  • Types of Software Testing
    Types of Software Testing We would be glad to have feedback from you. Drop us a line, whether it is a comment, a question, a work proposition or just a hello. You can use either the form below or the contact details on the rightt. Contact details [email protected] +91 811 386 5000 1 Software testing is the way of assessing a software product to distinguish contrasts between given information and expected result. Additionally, to evaluate the characteristic of a product. The testing process evaluates the quality of the software. You know what testing does. No need to explain further. But, are you aware of types of testing. It’s indeed a sea. But before we get to the types, let’s have a look at the standards that needs to be maintained. Standards of Testing The entire test should meet the user prerequisites. Exhaustive testing isn’t conceivable. As we require the ideal quantity of testing in view of the risk evaluation of the application. The entire test to be directed ought to be arranged before executing it. It follows 80/20 rule which expresses that 80% of defects originates from 20% of program parts. Start testing with little parts and extend it to broad components. Software testers know about the different sorts of Software Testing. In this article, we have incorporated majorly all types of software testing which testers, developers, and QA reams more often use in their everyday testing life. Let’s understand them!!! Black box Testing The black box testing is a category of strategy that disregards the interior component of the framework and spotlights on the output created against any input and performance of the system.
    [Show full text]
  • A Framework for Evaluating Performance of Software Testing Tools
    INTERNATIONAL JOURNAL OF SCIENTIFIC & TECHNOLOGY RESEARCH VOLUME 9, ISSUE 02, FEBRUARY 2020 ISSN 2277-8616 A Framework For Evaluating Performance Of Software Testing Tools Pramod Mathew Jacob, Prasanna Mani Abstract: Software plays a pivotal role in this technology era. Due to its increased applicable domains, quality of the software being developed is to be monitored and controlled. Software organization follows many testing methodologies to perform quality management. Testing methodologies can be either manual or automated. Automated testing tools got massive acceptability among software professionals due to its enhanced features and functionalities than that of manual testing. There are hundreds of test automation tools available, among which some perform exceptionally well. Due to the availability of large set of tools, it is a herculean task for the project manager to choose the appropriate automation tool, which is suitable for their project domain. In this paper, we derive a software testing tool selection model which evaluates the performance aspects of a script-based testing tool. Experimental evaluation proves that, it can be used to compare and evaluate various performance characteristics of commercially accepted test automation tools based on user experience as well as system performance. Index Terms: Automated testing, Software testing, Test script, Testing Tool, Test bed, Verification and Validation. —————————— ◆ —————————— 1 INTRODUCTION S OFTWARE is advanced in recent days by enhancing its applicable domains. Software is embedded in almost all electronic gadgets and systems. In this scenario the quality of the software plays a significant role. The customer or end – user should be satisfied which is primarily depended on quality and capability of the software being developed.
    [Show full text]
  • Integration Testing of Object-Oriented Software
    POLITECNICO DI MILANO DOTTORATO DI RICERCA IN INGEGNERIA INFORMATICA E AUTOMATICA Integration Testing of Object-Oriented Software Ph.D. Thesis of: Alessandro Orso Advisor: Prof. Mauro Pezze` Tutor: Prof. Carlo Ghezzi Supervisor of the Ph.D. Program: Prof. Carlo Ghezzi XI ciclo To my family Acknowledgments Finding the right words and the right way for expressing acknowledgments is a diffi- cult task. I hope the following will not sound as a set of ritual formulas, since I mean every single word. First of all I wish to thank professor Mauro Pezze` , for his guidance, his support, and his patience during my work. I know that “taking care” of me has been a hard work, but he only has himself to blame for my starting a Ph.D. program. A very special thank to Professor Carlo Ghezzi for his teachings, for his willingness to help me, and for allowing me to restlessly “steal” books and journals from his office. Now, I can bring them back (at least the one I remember...) Then, I wish to thank my family. I owe them a lot (and even if I don't show this very often; I know this very well). All my love goes to them. Special thanks are due to all my long time and not-so-long time friends. They are (stricty in alphabetical order): Alessandro “Pari” Parimbelli, Ambrogio “Bobo” Usuelli, Andrea “Maken” Machini, Antonio “the Awesome” Carzaniga, Dario “Pitone” Galbiati, Federico “Fede” Clonfero, Flavio “Spadone” Spada, Gianpaolo “the Red One” Cugola, Giovanni “Negroni” Denaro, Giovanni “Muscle Man” Vigna, Lorenzo “the Diver” Riva, Matteo “Prada” Pradella, Mattia “il Monga” Monga, Niels “l’e´ semper chi” Kierkegaard, Pierluigi “San Peter” Sanpietro, Sergio “Que viva Mex- ico” Silva.
    [Show full text]
  • Empirical Evaluation of the Effectiveness and Reliability of Software Testing Adequacy Criteria and Reference Test Systems
    Empirical Evaluation of the Effectiveness and Reliability of Software Testing Adequacy Criteria and Reference Test Systems Mark Jason Hadley PhD University of York Department of Computer Science September 2013 2 Abstract This PhD Thesis reports the results of experiments conducted to investigate the effectiveness and reliability of ‘adequacy criteria’ - criteria used by testers to determine when to stop testing. The research reported here is concerned with the empirical determination of the effectiveness and reliability of both tests sets that satisfy major general structural code coverage criteria and test sets crafted by experts for testing specific applications. We use automated test data generation and subset extraction techniques to generate multiple tests sets satisfying widely used coverage criteria (statement, branch and MC/DC coverage). The results show that confidence in the reliability of such criteria is misplaced. We also consider the fault-finding capabilities of three test suites created by the international community to serve to assure implementations of the Data Encryption Standard (a block cipher). We do this by means of mutation analysis. The results show that not all sets are mutation adequate but the test suites are generally highly effective. The block cipher implementations are also seen to be highly ‘testable’ (i.e. they do not mask faults). 3 Contents Abstract ............................................................................................................................ 3 Table of Tables ...............................................................................................................
    [Show full text]
  • Software Testing Junit Lecture Notes
    Software Testing Junit Lecture Notes Barclay misreports morganatically if half-round Dickie spilikins or feudalise. Ron dazzled wryly. Jamie remains semitonic after Reed adventure goniometrically or maroon any dilation. The captive of this assignment is to give new experience applying path testing approaches and measuring coverage. ACM SIGSOFT Software Engineering Notes 213717 May 1996. Notions of software reliability and availability; comparison of hardware like software reliability; Software Reliability modeling and metrics. Argument files are files that both contain arguments to be passed to the command. This lecture notes on software should partition same failure trace associated with each sprint. The use most the debugger is introduced with videos embedded in spine course material going over them either always an. Components that junit on the lecture notes in a delay doing this section, independent versions of? Did you will include the junit platform then you can be adequately handle some design that collaboration diagrams can fail, lets actually generated. At village point, Hadoop, you observe see this following. Icon ran actually meets its essence and. Junit jupiter will still figuring out. Debuggers are the aid to debugging, we test because Humans have very limited brains and cup make lots of mistakes, and basically undesired situations in an adequate way. This junit tests for software engineers blamed all notes taken when you did not hold. Learn how about catch bugs and in software as you convert different testing methods that occur help you build better than Watch Trailer Course getting Free. Before class is to understand requirements to junit testing software testing, typical giant c program? Functionalities like a program can not precisely true markov randomness properties of testing strategies used during setup code? Videos for Introduction to Software Testing edition 2 Ammann.
    [Show full text]
  • API Testing Guide an Automated Approach to API Testing Transformation
    API Testing Guide An automated approach to API testing transformation. From Monolith to Microservice The consumerization of IT has changed the way we write applications today. Instead of building a single, monolithic system that is installed on a server in a back office or call center, modern When testing APIs, testers are faced with applications are scattered within mobile devices and web browsers numerous discrete units of work. Some so users can gain access to services at anytime from anywhere. of these APIs may have been created by a third party, while the possible And modern applications are no longer self-contained; they are ordering and combinations of different composed of multiple service components that are tied together versions of APIs can cause the number of at runtime. Therefore, the end-user experience is not powered by combinations that need to be tested to the elegant UIs we all use, but by APIs that facilitate interactions skyrocket to an impossible number. between code modules, applications and back-end IT systems. The ability to identify these combinations Because of this, the way we test must change. Quality assurance and then reduce them to a realistic (QA) and development teams must expand their capacity to test number without compromising quality each layer of the application, as well as the end-to-end business requires testers to adopt a transactions. Modern applications then require comprehensive API new model-based approach and invest in testing in addition to traditional UI testing. But API testing presents automation technologies. many challenges for testers. It requires a new approach—one that is automated wherever possible and inherently data-driven.
    [Show full text]
  • Beginners Guide to Software Testing
    Beginners Guide To Software Testing Beginners Guide To Software Testing - Padmini C Page 1 Beginners Guide To Software Testing Table of Contents: 1. Overview ........................................................................................................ 5 The Big Picture ............................................................................................... 5 What is software? Why should it be tested? ................................................. 6 What is Quality? How important is it? ........................................................... 6 What exactly does a software tester do? ...................................................... 7 What makes a good tester? ........................................................................... 8 Guidelines for new testers ............................................................................. 9 2. Introduction .................................................................................................. 11 Software Life Cycle ....................................................................................... 11 Various Life Cycle Models ............................................................................ 12 Software Testing Life Cycle .......................................................................... 13 What is a bug? Why do bugs occur? ............................................................ 15 Bug Life Cycle ............................................................................................... 16 Cost of fixing bugs .......................................................................................
    [Show full text]
  • Identifying Software and Protocol Vulnerabilities in WPA2 Implementations Through Fuzzing
    POLITECNICO DI TORINO Master Degree in Computer Engineering Master Thesis Identifying Software and Protocol Vulnerabilities in WPA2 Implementations through Fuzzing Supervisors Prof. Antonio Lioy Dr. Jan Tobias M¨uehlberg Dr. Mathy Vanhoef Candidate Graziano Marallo Academic Year 2018-2019 Dedicated to my parents Summary Nowadays many activities of our daily lives are essentially based on the Internet. Information and services are available at every moment and they are just a click away. Wireless connections, in fact, have made these kinds of activities faster and easier. Nevertheless, security remains a problem to be addressed. If it is compro- mised, you can face severe consequences. When connecting to a protected Wi-Fi network a handshake is executed that provides both mutual authentication and ses- sion key negotiation. A recent discovery proves that this handshake is vulnerable to key reinstallation attacks. In response, vendors patched their implementations to prevent key reinstallations (KRACKs). However, these patches are non-trivial, and hard to get correct. Therefore it is essential that someone audits these patches to assure that key reinstallation attacks are indeed prevented. More precisely, the state machine behind the handshake can be fairly complex. On top of that, some implementations contain extra code to deal with Access Points that do not properly follow the 802.11 standard. This further complicates an implementation of the handshake. All combined, this makes it difficult to reason about the correctness of a patch. This means some patches may be flawed in practice. There are several possible techniques that can be used to accomplish this kind of analysis such as: formal verification, fuzzing, code audits, etc.
    [Show full text]
  • You're Not the Only One Who Needs to Be Agile Why Quality Assurance Is
    Winter 2015 www.TechWell.com IS AGILE BREAKING PRODUCT MANAGEMENT? You're not the only one who needs to be agile QA IS A PROCESS Why quality assurance is more than a department MOVE YOUR TESTING FORWARD WITH TRAINING FROM SQE TRAINING M B I N O E C The more training you take TRAINING WEEK A N E the greater the savings! D S A V Maximize the impact of your training by combining courses in the same location. Combine a full week of training for the largest discount! 2015 March 23–27, 2015 SPRING SCHEDULE Boston, MA April 27–May 1, 2015 TESTING San Diego, CA Moving TRAINING June 1–5, 2015 Testing WEEKS Chicago, IL Forward MONDAY TUESDAY WEDNESDAY THURSDAY FRIDAY Software Tester Certification—Foundation Level Mastering Test Design DevOps Test Integration Security Testing for Test Professionals Integrating Test with a DevOps Approach Workshop Mobile Test Automation Fundamentals of Agile Certification—ICAgile Mobile Application Testing Workshop Agile Test Automation— Agile Tester Certification ICAgile Measurement & Metrics Leadership for Test Test Improvement for Essential Test Planning and Management for Test Managers Managers Agile Risk-Driven Software Testing Performance Load and Stress Testing Green background Indicates courses pre-approved for Project Management Institute PDUs. For 2information BETTER SOFTWARE on our 60+Winter Public 2015 and 40+ Livewww.TechWell.com Virtual Course Dates visit www.sqetraining.com MOVE YOUR TESTING FORWARD TESTING TRAINING LEARNING OPTIONS: WITH TRAINING FROM SQE TRAINING Public M B I N O E C The more training you take TRAINING WEEK A N E the greater the savings! V D S A Instructor-led training in Live, instructor-led Maximize the impact of your training by combining a city near you classes via your computer courses in the same location.
    [Show full text]
  • Regression Testing
    REGRESSION TESTING Definition Methods Tools Best Practices Sridhar Jayaraman VP of Engineering, Qentelli Summary Software Release in 21st century is like rowing a boat. Fixing about 80% of the holes isn’t good enough for the ride. Testing is a significant part of Software development today. It’s almost impossible to survive through the turbulence of sudden overlooked Regressions. That is exactly why the teams started testing for the potential hiccups or misroutes each time they develop something new. But, How often do you perform Regression 01 Testing on your code-base? What is the recommended frequency of 02 Regression Testing? How to ensure Test Coverage while 03 picking the Test suits? What is the correct technique for 04 Regression Testing? This e-Book intends to answer all these questions and more about Regression Testing. Regression Testing - 101 As Software Development moved from Waterfall to Agile, the one aspect that encountered diculties to cope up was Testing. When fast-paced Agile and DevOps kicked in, it is even more stressful for the businesses to deal with the speed vs quality war. In a generation where it is important to keep the customer’s experience spot on to stay relevant; companies can’t aord to have software regressions. That’s how it became a practice to run two kinds of tests each time there is a significant change - when the Testers started doing selective retesting to detect faults introduced during modification of a system or software component. … a testing process which is applied each time after a software component is modified The software applications are growing in terms of their sizes and complexities.
    [Show full text]
  • Functional Testing with Real Time Example
    Functional Testing With Real Time Example Henderson transpierce colossally if cephalopod Bryant coring or customizes. Is Armond scentless or Scythian after exclamatory Ernst schmoozing so inviolately? Refrigerating Quinton grope his euphrasies complains sixthly. Gui testing functional testing with time example Complex dependencies and interactions to the outside source are stubbed or mocked. What have Different Goals of Software Testing? This reduces overall test suite execution time from days or hours to minutes Additionally functional tests can be rate on damage than 2000 real. This version is released for a limited number of users for testing in a compulsory-time environment Example particular software testing is performed for the. Simulate loads at peak times for process end and quarter or early addition to. No headings were found on man page. The reality is that both ladder and automated testing are usually necessary to deliver only quality product. Test with functionalities i prefer to function, and when development during regression. This helps prevent chaotic code, but it also means can the tester who is probing a specific requirement knows exactly which code artifact to test. Depending on when exactly in review process number are used, the strategies can be classified as preventive or reactive. It is performed at every aspect to click on a times become features, you are marked as usable and elegant way. 52 Manual Testing Interview Questions With Example Answers. Make automation functional testing or UI test easier in common powerful state more. Implemented correctly and are basically the loose as functional tests. What crop the tasks performed in the Test Execution phase of STLC? Our every concern is functional testing ensuring that the API functions correctly.
    [Show full text]
  • Standard Glossary of Terms Used in Software Testing Version
    Standard Glossary of Terms used in Software Testing Version 3.2 Foundation 2018 - Release Candidate Terms International Software Testing Qualifications Board Copyright Notice This document may be copied in its entirety, or extracts made, if the source is acknowledged. Copyright © International Software Testing Qualifications Board (hereinafter called ISTQB®). Foundation 2018 - Release Candidate Terms Page: 2 of 29 acceptance criteria Ref: ISO 24765 The criteria that a component or system must satisfy in order to be accepted by a user, customer, or other authorized entity. acceptance testing Ref: After ISO 24765 See Also: user acceptance testing Formal testing with respect to user needs, requirements, and business processes conducted to determine whether or not a system satisfies the acceptance criteria and to enable the user, customers or other authorized entity to determine whether or not to accept the system. accessibility Ref: After ISO 25010 The degree to which a component or system can be used by people with the widest range of characteristics and capabilities to achieve a specified goal in a specified context of use. accessibility testing Ref: Gerrard Testing to determine the ease by which users with disabilities can use a component or system. actual result Synonyms: actual outcome The behavior produced/observed when a component or system is tested. ad hoc reviewing Ref: After ISO 20246 A review technique carried out by independent reviewers informally, without a structured process. alpha testing Simulated or actual operational testing conducted in the developer's test environment, by roles outside the development organization. anomaly Ref: IEEE 1044 See Also: defect, error, fault, failure, incident, problem Any condition that deviates from expectation based on requirements specifications, design documents, user documents, standards, etc., or from someone's perception or experience.
    [Show full text]