Software testing basics

Software testing basics Today in this software testing tutorial we will study about software testing basics . This tutorial covers...


Software testing basics


Today in this software testing tutorial we will study about software testing basics. This tutorial covers the following contents.

       (1) What is software testing ?
       (2)   Basic Terminology used in  during software testing
       (3)   Who does the software testing ?
       (4)   When to start  software testing
       (5)   When to stop software testing
       (6)   Verification and validation

All the above contents are software testing basics, which are described as follows:

What is Software Testing?


At first in this software testing tutorial we will cover introduction of software testing.A software is developed by following a SDLC model. Each and every phase of SDLC model takes some input and provides some output. So after completion of each phase during the software development we check the correctness of the output of that particular phase. This checking is known as testing.

Now the question is what is software testing ? How will you define the term software testing. There is no fixed definition of software testing. It may be defined in several ways.
Sometimes
      
      (1)   Software testing is defined as a process of demonstrating that error are present.

      (2)   Objective point of view Software testing is a process in which we test that a program performs its intended function correctly.

More appropriate definition of software testing is “ Testing the process of executing a program with the intent of finding the faults”

Software testing is very important but it is an effort consuming activity.
difference between verification and validation


Basic Terminology Used in Software Testing

In this section of software testing tutorial Before going in depth we should know about some basic terms used in software testing. So here in this section we will see these terms and these definition.

(i)                 Program: Program is a set of instructions written in a particular programming language to do some task.

(ii)               Software: Software is a set of programs as well as documentation. This documentation are of two type internal and external. Internal documentation  useful  for the person involved in software development team. This documentation is like SRS, SDD, Source Code. External documentation is useful for the end user or customer. This tell about the how doses software works or how to operate the software.

(iii)             Error: Error , mistake and defect are synonyms in software testing terminology.

(iv)             Bug: Error in coding is known as bug.

(v)               Fault : A fault is defined as the representation of error . Fault is any incorrect step due which error has occurred. For example Semicolon missing, use of any wrong notation in UML Diagram. Etc.
  
(vi)             Failure: Failure is the result of execution of a faulty program. In context to software Failure  is the inability of software  to perform its function.

(vii)           Test case: A test case consist of input given to the program and its expected output. Input are nothing but data value some times input also conations pre condition( circumstances to be be hold before execution of test case) . Output is the result and post condition ( circumstances after execution of a test case)


Different parameters  to be used during designing of a test case are as follow

Parameters Used Before Execution of Test case

(a)    Purpose of Test case
(b)   Precondition
(c)    Input
(d)   Expected Output
(e)    Post Conditions
(f)    Written By
(g)    Date of Design

                    Parameters used after execution of Test Case

                  (a)    Actual Output
                  (b)   Post Condition
                  (c)    Pass/Fail
                  (d)   If fail any possible reason for failur
                  (e)    Suggestions
                  (f)    Run By
                  (g)    Date of Suggestion

(viii)         Test Case Suite: Set of test cases is known as test suite. We may have test suite of all tests cases, successful test cases, unsuccessful test cases.

(ix)             SRS: SRS is known as Software requirement specification. All the functional and non functional requirements of the software are properly listed in SRS. SRS is the output of the Requirements and analysis phase.

(x)               Source Code Documentation : Document that contain the source code of the software.

(xi)             SDD: SDD is known as software design documentation . This documents works as blue print of the software. It contain the design part of the software. This is the output of the design phase.


    Who does Software Testing?

       Most of the time we think that software testers  it means members of testing team performs the           software testing but this is not true at all, then who does the testing ?  Generally it depends on             process and the associated stakeholders of the project.

        In this software testing tutorial let us see this example in the Software industry, large companies have a team with responsibilities to evaluate the developed software in context of the given requirements. Moreover, developers also conduct the testing during the implementation or coding phase, this type of testing is called Unit Testing.

     There are some other cases also where, the apart from the software tester or developer ,Project Manager or Lead and End users  are involved in testing a system within their respective capacities:
Some software companies also  have different designations for people who test the software.

 This designation depends on their experience and knowledge. These designation are Software Tester,  Software Quality Assurance Engineer, QA Analyst, etc.

When to Start SoftwareTesting?

Generally we think that software testing is an activity after the coding phase but this is not true at all. Testing perform after the coding is actually the dynamic testing.

Testing is performs at every stage of the SDLC. An early start to testing reduces the cost and time to rework and produce error-free software that is delivered to the customer. During Software Development Life Cycle (SDLC), testing can be started from the Requirements Gathering phase and continued till the deployment or installation of the software at client site.

Sometimes it  also depends on the development model that is being used. For example, in the Waterfall model, formal testing is conducted in the testing phase, but in the incremental model, testing is performed at the end of every increment/iteration and the whole application is tested at the end.

At requirement Analysis and specification  phase, the analysis and verification of requirements are also considered as testing. SRS is verified by the audit team.During the design phase SDD Design document is need to be tested or verified to ensure that all the diagrams are made as per specific notations.

Testing performed by a developer during the coding phase in order to ensure the working of the individual class/unit.During the Testing Phase of SDLC. Testing of whole software is perform by software testers.


When to Stop Software Testing?

It is difficult to say when to stop software testing because  testing is a never-ending process and no one can claim that a software is 100% tested.

There are some following aspects are to be considered  to stop the testing process:
      
       (a)    Completion of test case execution
     
       (b)   Completion of functional and code coverage to a certain point
        
( c )  Some time Management decision

Verification and Validation


Verification and validation terms  are very confusing sometime for most people. But these two terms are not same . Verification and validation are two different activities. The difference between verification and validation are as follows:

Verification
Validation
          Verification is a development process oriented activity  which ensure  the concern: "Are you building the product  right?"
           Validation is product oriented. It means Validation ensure that “ Are we building the right product ?”
           It basically a type of static testing
          It is a type of dynamic testing
          It is perform during the early phases of sdlc such as srs verification, design verification and source code review
           Validation is performed at the end of the implementation
           Done by Audit team and Developer
           Done by testers
          Verification ensure that software meet all the functionalities
          Validation ensures that all the functionalities perform its intended behavior


I hope that this software testing basics tutorial will be helpful to you for understanding the basic concept of software testing . Your comments are valuable for us. Please provide your feedback so that we can improve the quality.

COMMENTS

Name

addressing modes types,1,advance-java,2,advancejava,1,aktu entrance exam,1,aktu exam schedule,1,ASP,1,bare machine,1,base register and limit register,1,Basic Computer network questions,1,C Programming,15,C Plus Plus,1,C Programming,2,C Programming MCQ,2,C Programming Questions,2,C programming study material for gate exam,13,Cache Memory,1,CBNST Program,1,Childcare,1,CJ,2,Cloud Computing,1,COA GATE Questions,1,components of use case diagram,1,Computer Architecture,2,Computer architecture based questions for gate exam,11,Computer Network,3,Computer Network Study Material,4,Computer network study material for gate,2,Computer Networks,7,Computer Science Study Material for Gate,20,computer science study material for gate exam,36,content based image retrieval content based image retrieval system,1,contiguous memory allocation,2,Core Java,8,COre Java Interview Questions,1,core java interviews questions,1,cyber crime report,1,Cyber crime status,1,cybercrime and security,1,cybercrime examples,1,Data link Layer Questions,1,Data Mining,1,Data Structure Questions,1,Data Transmission Architecture,1,Data Transmission in wsn,1,DBMS,4,dbms question paper,1,DE,1,Digital Electronics,1,DS,1,dynamic linking,1,dynamic linking in memory management,1,Electroencephalogram,1,File Handling,1,file management in operating system notes,1,FOC,1,Fundamenatl of Computer,1,Gate 2017,5,Gate 2017 Admit card,1,Gate 2017 Exam Schedule,1,Gate 2017 Syllabus,1,gate 2018,1,gate cse study material,1,gate practice set,10,gate study material for computer science,18,Gate study material for computer science 2017,1,GatePreviousYear,1,General,3,HCL Aptitude Test,1,HR Interview Questions,1,HTML,1,Image Processing,1,Important Date of Gate 2017 Exam,1,Information Security Policy,1,internal and external fragmentation,1,JS,1,lagrange's interpolation formula,1,lagrange's interpolation formula examples,1,Looping in C,1,MComputing,1,memory fragmentation,1,memory management,1,memory management questions and answer in os,1,Motivational,4,NCER,2,Numerical Techniques Lab,1,OOT,1,Operating System,12,Operating System Gate Questions,1,Operating System Objective Questions,4,Operating System Questions Bank,1,Operating system questions for gate,1,Operating System Study material,2,operating system study material for gate exam,16,Operating system tutorial,2,page swapping,1,paged memory allocation,1,paged memory allocation in operating system,1,paging technique of memory management .paging technique,1,paging technique of memory management program in c,1,Pointer in C,5,Process based question for gate,1,Quiz on non conventional energy resources,1,Regression testing,1,relocation in memory management,1,relocation registe,1,relocation register,1,resident monitor,1,resident monitor in operating system,1,routing table,1,segmentation in memory management,1,segmentation in memory management in operating system,1,Servlet,1,session tracking,1,session tracking in java,1,session tracking in servlet,1,Software Engineering,10,Software Engineering baes study material for gate,1,software engineering interview questions,1,Software Quality Assurance,3,software verification methods,1,SPM,1,Structure in C,1,Study Material for gate Computer Science,11,swapping in memory management,1,swapping in operating system,1,TCS Code Vita,1,TCS Interview Questions,1,Technical Interview,1,Technical Questions from DBMS,1,Thrashing in Operating System,1,Threads concept in operating system,1,Tips to Learn Coding,1,Top 30 Core Java Interview Questions with Answer,2,top down approach,1,top down approach in programming,1,Types of operating system,1,UML,1,use case diagram explanation,1,website uses cookies,1,what is cookies website,1,What is process control block ?,1,what is software testing?,1,Wireless Sensor Network,3,worst fit algorithm for memory allocation,1,XML,1,
ltr
item
Computer Science Junction: Software testing basics
Software testing basics
https://1.bp.blogspot.com/-6ViZdcJPQrU/W0clFEo4zOI/AAAAAAAAA38/gjKWUAHsvvQS6eZljGROQarzVRhNTAIWgCLcBGAs/s640/software_testing.jpg
https://1.bp.blogspot.com/-6ViZdcJPQrU/W0clFEo4zOI/AAAAAAAAA38/gjKWUAHsvvQS6eZljGROQarzVRhNTAIWgCLcBGAs/s72-c/software_testing.jpg
Computer Science Junction
https://www.computersciencejunction.in/2018/07/software-testing.html
https://www.computersciencejunction.in/
https://www.computersciencejunction.in/
https://www.computersciencejunction.in/2018/07/software-testing.html
true
425357657003182083
UTF-8
Loaded All Posts Not found any posts VIEW ALL Readmore Reply Cancel reply Delete By Home PAGES POSTS View All RECOMMENDED FOR YOU LABEL ARCHIVE SEARCH ALL POSTS Not found any post match with your request Back Home Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sun Mon Tue Wed Thu Fri Sat January February March April May June July August September October November December Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec just now 1 minute ago $$1$$ minutes ago 1 hour ago $$1$$ hours ago Yesterday $$1$$ days ago $$1$$ weeks ago more than 5 weeks ago Followers Follow THIS PREMIUM CONTENT IS LOCKED STEP 1: Share. STEP 2: Click the link you shared to unlock Copy All Code Select All Code All codes were copied to your clipboard Can not copy the codes / texts, please press [CTRL]+[C] (or CMD+C with Mac) to copy