User Interface Errors, Error Handling, Boundary related errors, Calculation errors, Initial and Later states, Control flow errors, Errors in Handling or Interpreting Data, Race Conditions, Load Conditions, Hardware, Source, Version and ID Control, Testing Errors, software testing, types of errors, notes, tutorial, presentation

http://www.knowsh.com > Notes > Software Testing > Software Testing - Types of Errors
Priya User Interface, Error Handling, Boundary related errors, Calculation, Control flow errors, Handling or Interpreting Data, Race Conditions, Load Conditions, Hardware, Source, Version, ID Control, Testing Errors This explains the common software errors. It helps to identify errors systematically and increases the efficiency of software testing and improves testing productivity.

Software Testing - Types of Errors

Software Testing - Types of Errors

User Interface, Error Handling, Boundary related errors, Calculation, Control flow errors, Handling or Interpreting Data, Race Conditions, Load Conditions, Hardware, Source, Version, ID Control, Testing Errors (Software Testing)

Introduction (Presentation)

This explains the common software errors. It helps to identify errors systematically and increases the efficiency of software testing and improves testing productivity.

Details

Type of Errors

  1. User Interface Errors
  2. Error Handling
  3. Boundary related errors
  4. Calculation errors
  5. Race Conditions
  6. Initial and Later states
  7. Control flow errors
  8. Errors in Handling or Interpreting Data
  9. Load Conditions
  10. Hardware
  11. Source, Version and ID Control
  12. Testing Errors

1. User Interface Errors

  • Functionality    
    • Possible Error Conditions       
    • Excessive Functionality          
    • Inflated impression of functionality   
    • Inadequacy for the task at hand        
    • Missing function           
    • Wrong function 
    • Functionality must be created by user          
    • Doesn't do what the user expects      
  • Communication           
    • Missing Information
      • Possible Error Conditions       
      • No on Screen instructions      
      • Assuming printed documentation is already available.     
      • Undocumented features         
      • States that appear impossible to exit 
      • No cursor
      • Failure to acknowledge input 
      • Failure to show activity during long delays  
      • Failure to advise when a change will take effect    
      • Failure to check for the same document being opened twice      
    • Wrong, misleading, confusing information
      • Simple factual errors    
      • Spelling errors   
      • Inaccurate simplifications       
      • Invalid metaphors         
      • Confusing feature names       
      • More than one name for the same feature   
      • Information overland    
      • When are data saved   
      • Wrong function 
      • Functionality must be created by user          
      • Poor external modularity         
    • Help text and error messages
      • Inappropriate reading levels   
      • Verbosity
      • Inappropriate emotional tone  
      • Factual errors    
      • Context errors    
      • Failure to identify the source of error
      • Forbidding a resource without saying why  
      • Reporting non-errors    
      • Failure to highlight the part of the screen    
      • Failure to clear highlighting    
      • Wrong/partial string displayed
      • Message displayed for too long or not long enough          
    • Display Layout
      • Poor aesthetics in screen layout        
      • Menu Layout errors      
      • Dialog box layout errors           
      • Obscured Instructions  
      • Misuse of flash  
      • Misuse of color  
      • Heavy reliance on color           
      • Inconsistent with the style of the environment        
      • Cannot get rid of on screen information       
    • Output
      • Can't output certain data         
      • Can't redirect output     
      • Format incompatible with a follow-up process        
      • Must output too little or too much       
      • Can't control output layout      
      • Absurd printout level of precision      
      • Can't control labeling of tables or figures     
      • Can't control scaling of graphs          
    • Performance
      • Program Speed 
      • User Throughput          
      • Can't redirect output     
      • Perceived performance           
      • Slow program    
      • slow echoing     
      • how to reduce user throughput          
      • Poor responsiveness   
      • No type ahead   
      • No warning that the operation takes long time        
      • No progress reports      
      • Problems with time-outs          
      • Program pesters you    
  • Program Rigidity   
    • User tailor ability
      • Possible Error Conditions       
      • Can't turn off case sensitivity 
      • Can't tailor to hardware at hand         
      • Can't change device initialization     
      • Can't turn off automatic changes      
      • Can't slow down/speed up scrolling 
      • Can't do what you did last time          
      • Failure to execute a customization commands       
      • Failure to save customization commands    
      • Side effects of feature changes         
      • Can't turn off the noise
      • Infinite tailor ability       
    • Who is in control?
      • Unnecessary imposition of a conceptual style        
      • Novice friendly, experienced hostile 
      • Surplus or redundant information required 
      • Unnecessary repetition of steps        
      • Unnecessary limits       
    • Command Structure and Rigidity
      • Inconsistencies: Possible Error Conditions 
        • Optimizations     
        • Inconsistent syntax      
        • Inconsistent command entry style     
        • Inconsistent abbreviations      
        • Inconsistent termination rule  
        • Inconsistent command options          
        • Similarly named commands   
        • Inconsistent Capitalization     
        • Inconsistent menu position    
        • Inconsistent function key usage        
        • Inconsistent error handling rules       
        • Inconsistent editing rules        
        • Inconsistent data saving rules           
      • Time Wasters
        • Garden paths     
        • choice can't be taken   
        • Are you really, really sure        
        • Obscurely or idiosyncratically named commands  
      • Menus
        • Excessively complex menu hierarchy          
        • Inadequate menu navigation options           
        • Too many paths to the same place    
        • You can't get there from here 
        • Related commands relegated to unrelated menus 
        • Unrelated commands tossed under the same menu         
      • Command Lines
        • Forced distinction between uppercase and lowercase     
        • Reversed parameters   
        • Full command names are not allowed          
        • Abbreviations are not allowed
        • Demands complex input on one line
        • no batch input   
        • can't edit commands    
      • Inappropriate use of key board
        • Failure to use cursor, edit, or function keys 
        • Non std use of cursor and edit keys  
        • non-standard use of function keys   
        • Failure to filter invalid keys     
        • Failure to indicate key board state changes
    • Missing Commands
      • State transitions
        • Possible Error Conditions       
        • Can't do nothing and leave    
        • Can't quit mid-program
        • Can't stop mid-command         
        • Can't pause       
      • Disaster prevention
        • No backup facility         
        • No undo 
        • No are you sure
        • No incremental saves  
        • Inconsistent menu position    
        • Inconsistent function key usage        
        • Inconsistent error handling rules       
        • Inconsistent editing rules        
        • Inconsistent data saving rules           
      • Error handling by the user
        • No user specifiable filters        
        • Awkward error correction         
        • Can't include comments          
        • Can't display relationships between variables        
      • Miscellaneous
        • Inadequate privacy or security           
        • Obsession with security          
        • Can't hide menus         
        • Doesn't support standard OS features          
        • Doesn't allow long names       

2. Error Handling 

  • Error prevention          
    • Possible Error Conditions       
    • Inadequate initial state validation      
    • Inadequate tests of user input
    • Inadequate protection against corrupted data         
    • Inadequate tests of passed parameters        
    • Inadequate protection against operating system bugs      
    • Inadequate protection against malicious use          
    • Inadequate version control     
  • Error Detection
    • Possible Error Conditions       
    • ignores overflow           
    • ignores impossible values      
    • ignores implausible values     
    • ignores error flag           
    • ignores hardware fault or error conditions   
    • data comparison           
  • Error Recovery
    • Possible Error Conditions       
    • automatic error detection         
    • failure to report error     
    • failure to set an error flag        
    • where does the program go back to  
    • aborting errors   
    • recovery from hardware problems     
    • no escape from missing disks

3. Boundary related errors  

  • Possible Error Conditions    
    • Numeric boundaries    
    • Equality as boundary   
    • Boundaries on numerosity     
    • Boundaries in space    
    • Boundaries in time       
    • Boundaries in loop       
    • Boundaries in memory
    • Boundaries with data structure          
    • Hardware related boundaries 
    • Invisible boundaries     
    • Mishandling of boundary case          
    • Wrong boundary           
    • Mishandling of cases outside boundary      

4. Calculation Errors    

  • Possible Error Conditions    
    • Bad Logic           
    • Bad Arithmetic   
    • Imprecise Calculations
    • Outdated constants      
    • Calculation errors         
    • Impossible parenthesis
    • Wrong order of calculations    
    • Bad underlying functions       
    • Overflow and Underflow         
    • Truncation and Round-off error         
    • Confusion about the representation of data
    • Incorrect conversion from one data representation to another     
    • Wrong Formula 
    • Incorrect Approximation           

5. Race Conditions       

  • Possible Error Conditions    
    • Races in updating data           
    • Assumption that one event or task finished before another begins        
    • Assumptions that one event or task has finished before another begins          
    • Assumptions that input won't occur during a brief processing interval  
    • Assumptions that interrupts won't occur during brief interval      
    • Resource races 
    • Assumptions that a person, device or process will respond quickly       
    • Options out of sync during display changes           
    • Tasks starts before its prerequisites are met
    • Messages cross or don't arrive in the order sent     

6. Initial and Later States      

  • Possible Error Conditions    
    • Failure to set data item to zero
    • Failure to initialize a loop-control variable   
    • Failure to initialize a or re-initialize a pointer           
    • Failure to clear a string
    • Failure to initialize a register   
    • Failure to clear a flag   
    • Data were supposed to be initialized elsewhere    
    • Failure to re-initialize   
    • Assumption that data were not re-initialized
    • Confusion between static and dynamic storage     
    • Data modifications by side effect       
    • Incorrect initialization   

7. Control Flow Errors  

  • Program runs amok   
    • Possible Error Conditions       
    • Jumping to a routine that isn't resident         
    • Re-entrance       
    • Variables contains embedded command names    
    • Wrong returning state assumed         
    • Exception handling based exits         
  • Return to wrong place           
    • Possible Error Conditions       
    • Corrupted Stack
    • Stack underflow/overflow        
    • GOTO rather than RETURN from sub-routine        
  • Interrupts           
    • Possible Error Conditions       
    • Wrong interrupt vector 
    • Failure to restore or update interrupt vector 
    • Invalid restart after an interrupt          
    • Failure to block or un-block interrupts          
  • Program Stops
    • Possible Error Conditions       
    • Dead crash        
    • Syntax error reported at run time        
    • Waiting for impossible condition or combinations of conditions  
    • Wrong user or process priority
  • Error Detection
    • Possible Error Conditions       
    • infinite loop        
    • Wrong starting value for the loop control variables
    • Accidental change of loop control variables
    • Command that do or don't belong inside the loop  
    • Command that do or don't belong inside the loop  
    • Improper loop nesting  
  • If Then Else , Or may not       
    • Possible Error Conditions       
    • Wrong inequalities       
    • Comparison sometimes yields wrong result
    • Not equal verses equal when there are three cases          
    • Testing floating point values for equality     
    • confusion between inclusive and exclusive OR    
    • Incorrectly negating a logical expression     
    • Assignment equal instead of test equal       
    • Commands being inside the THEN or ELSE clause         
    • Commands that don't belong either case     
    • Failure to test a flag      
    • Failure to clear a flag   
  • Multiple Cases 
    • Possible Error Conditions       
    • Missing default  
    • Wrong default    
    • Missing cases    
    • Overlapping cases        
    • Invalid or impossible cases     
    • Commands being inside the THEN or ELSE clause         
    • Case should be sub-divided   

8. Errors Handling or Interpreting Data 

  • Problems in passing data between routines 
    • Possible Error Conditions 
    • Parameter list variables out of order or missing
    • Data Type errors      
    • Aliases and shifting interpretations of the same area of memory      
    • Misunderstood data values           
    • inadequate error information        
    • Failure to clean up data on exception handling           
    • Outdated copies of data     
    • Related variable get out of synch
    • Local setting of global data           
    • Global use of local variables        
    • Wrong mask in bit fields    
    • Wrong value from table     
  • Data boundaries    
    • Possible Error Conditions 
    • Un-terminated null strings
    • Early end of string  
    • Read/Write past end of data structure or an element in it       
  • Read outside the limits of message buffer     
    • Possible Error Conditions 
    • Complier padding to word boundaries    
    • value stack underflow/overflow   
    • Trampling another process's code or data         
  • Messaging Problems       
    • Possible Error Conditions 
    • Messages sent to wrong process or port
    • Failure to validate an incoming message          
    • Lost or out of synch messages     
    • Message sent to only N of N+1 processes         
  • Data Storage corruption 
    • Possible Error Conditions 
    • Overwritten changes          
    • Data entry not saved          
    • Too much data for receiving process to handle
    • Overwriting a file after an error exit or user abort          

9. Load Conditions       

  • Possible Error Conditions          
    • Required resources are not available     
    • No available large memory area  
    • Input buffer or queue not deep enough 
    • Doesn't clear item from queue, buffer or stock  
    • Lost Messages        
    • Performance costs  
    • Race condition windows expand
    • Doesn't abbreviate under load     
    • Doesn't recognize that another process abbreviates output under load      
    • Low priority tasks not put off         
    • Low priority tasks never done       
  • Doesn't return a resource           
    • Possible Error Conditions 
    • Doesn't indicate that it's done with a device      
    • Doesn't erase old files from mass storage          
    • Doesn't return unused memory   
    • Wastes computer time        

10. Hardware 

  • Possible Error Conditions          
    • Wrong Device          
    • Wrong Device Address      
    • Device unavailable
    • Device returned to wrong type of pool    
    • Device use forbidden to caller      
    • Specifies wrong privilege level for the device   
    • Noisy Channel        
    • Channel goes down          
    • Time-out problems  
    • Wrong storage device        
    • Doesn't check the directory of current disk        
    • Doesn't close the file          
    • Unexpected end of file      
    • Disk sector bug and other length dependent errors     
    • Wrong operation or instruction codes     
    • Misunderstood status or return code       
    • Underutilizing device intelligence           
    • Paging mechanism ignored or misunderstood 
    • Ignores channel throughput limits          
    • Assuming device is or isn't or should be or shouldn't be initialized  
    • Assumes programmable function keys are programmed correctly    

11. Source, Version, ID Control       

  • Possible Error Conditions          
    • Old bugs mysteriously re appear 
    • Failure to update multiple copies of data or program files       
    • No title           
    • No version ID           
    • Wrong version number of title screen     
    • No copy right message or bad one          
    • Archived source doesn't compile into a match for shipping code      
    • Manufactured disks don't work or contain wrong code or data          

12. Testing Errors  

  • Missing bugs in the program           
    • Possible Error Conditions 
    • Failure to notice a problem           
    • You don't know what the correct test results are           
    • You are bored or inattentive         
    • Misreading the Screen      
    • Failure to report problem   
    • Failure to execute a planned test
    • Failure to use the most promising test case       
    • Ignoring programmer's suggestions        
  • Finding bugs that aren't in the program   
    • Possible Error Conditions 
    • Errors in testing programs 
    • Corrupted data files
    • Misinterpreted specifications or documentation           
  • Poor reporting 
    • Possible Error Conditions 
    • Illegible reports        
    • Failure to make it clear how to reproduce the problem
    • Failure to say you can't reproduce the problem
    • Failure to check your report          
    • Failure to report timing dependencies    
    • Failure to simplify conditions        
    • Concentration on trivia      
    • Abusive language  
  • Poor Tracking and follow-up           
    • Possible Error Conditions 
    • Failure to provide summary report           
    • Failure to re-report serious bug    
    • Failure to check for unresolved problems just before release
    • Failure to verify fixes          

About knowsh.com

We are tring to provide a common plateform to the students and professionals to share their knowledge among others because knowledge is the only thing that increase when it is shared.

Contact links

Follow Us On