Quality Assurance - PowerPoint PPT Presentation

1 / 18
About This Presentation
Title:

Quality Assurance

Description:

Automates the software maintenance process. Keeps track of when bugs where found and fixed ... Its best to compile executables with g. and no optimization options ... – PowerPoint PPT presentation

Number of Views:19
Avg rating:3.0/5.0
Slides: 19
Provided by: Mat4255
Category:

less

Transcript and Presenter's Notes

Title: Quality Assurance


1
Quality Assurance
  • Bug Tracking System
  • Memory Debuggers
  • Unit Testing Framework

2
Motivation
  • Automates the software maintenance process
  • Keeps track of when bugs where found and fixed
  • More tools to find difficult bugs
  • Automated testing framework

3
Bugzilla
  • Open source bug tracking system from the Mozilla
    project
  • Product-based granular security schema
  • Advanced reporting capabilities
  • Browser user interface

4
Using Bugzilla
  • Create an Account
  • Get Permissions from the Administrator
  • Running Queries
  • Filing a Bug Report

5
(No Transcript)
6
Running Queries
  • Query before you file a bug report
  • Get Summary Reports to see which bugs are still
    outstanding
  • Filling in fields limits the search
  • Use the Long Listing for all of the bugs info

7
Filing a Bug Report
  • Descriptive Summary
  • Specifically explain how to reproduce the bug
  • One bug per report
  • If the bug crashes the program a stack trace
  • on the core is proper etiquette

8
Configuring your project
  • Products- your project
  • Components aspects of your project
  • Versions releases of your project
  • Milestones releases by when certain bugs will
    be fixed
  • Voting Allows users to pick which bug they want
    fixed

9
Integration with 3rd Party Tools
  • Bonsai Web based CVS
  • CVS
  • Perforce
  • Tinderbox

10
Purify
  • http//ww-itg.lbl.gov/purify
  • Memory debugger for C/ C programs
  • Memory Debugger for the solaris platform
  • Has a GUI interface

11
How to use Purify
  • Setup your environment
  • Link in the purify libraries when you compile
    your program
  • Run your program

12
Problems with Purify
  • Licensing
  • Only 3 accounts can use it
  • Portnoy is becoming BSD machine

13
Valgrind
  • http//developer.kde.org/sewardj/
  • Memory Debugger for x86/Linux only
  • Easy to use valgrind executable ltargsgt
  • Runs the program in a simulated x86 CPU
  • Environment
  • Cannot use this on statically linked binaries

14
What valgrind detects
  • Use of uninitialised memory
  • Reading/writing memory after it has been free'd
  • Reading/writing off the end of malloc'd blocks
  • Reading/writing inappropriate areas on the stack
  • Memory leaks -- where pointers to malloc'd blocks
    are lost forever
  • Passing of uninitialised and/or unaddressible
    memory to system calls
  • Mismatched use of malloc/new/new vs
    free/delete/delete
  • Some misuses of the POSIX pthreads API

15
How to use Valgrind
  • Its best to compile executables with g
  • and no optimization options
  • Use v for a summary of errors

16
Useful flags
  • --help
  • --attach-gdbyes
  • --leak-checkyes
  • --show-reachableyes
  • --logfileltfilegt
  • --num-callers4

17
Unit Testing
  • MOTIVATION
  • Do you test your software?
  • Provides an extensible framework to
  • aggregate code that tests your project

18
The Goal
  • Automatically test your software by periodically
    running the unittests
  • One solution
  • Create a cron job that checks out, builds , runs
    the unittests nightly and mails the results to
    you.
Write a Comment
User Comments (0)
About PowerShow.com