![Page 1: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/1.jpg)
Database Testing - Minimizing"If it can break, it will."
Mladen PrajdićSQL Server MVP
@MladenPrajdic [email protected]
http://weblogs.sqlteam.com/mladenp
![Page 2: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/2.jpg)
Welcome to Slovenia.
Population: Awesome!
About me1999...
![Page 3: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/3.jpg)
How many are doing database testing?
How many are doing any kind of testing?
Quick poll
![Page 4: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/4.jpg)
Agenda
• Why test• Non technical obstacles• What do we need• Types of testing• Examples
![Page 5: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/5.jpg)
Why test?
Confidence in code
![Page 6: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/6.jpg)
Why test?
Always valid documentation
![Page 7: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/7.jpg)
Why test?
Sleeping well at night
![Page 8: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/8.jpg)
Agenda
• Why test• Non technical obstacles• What do we need• Types of testing• Examples
![Page 9: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/9.jpg)
Non technical obstacles
Peers
![Page 10: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/10.jpg)
Non technical obstacles
Management
![Page 11: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/11.jpg)
Non technical obstacles
You. Discipline!
![Page 12: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/12.jpg)
Agenda
• Why test• Non technical obstacles• What do we need• Types of testing• Examples
![Page 13: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/13.jpg)
What do we need
Test lab
![Page 14: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/14.jpg)
What do we need
Testing tool
![Page 15: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/15.jpg)
What do we need
Source control
![Page 16: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/16.jpg)
What do we need
Schema comparison tool
![Page 17: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/17.jpg)
What do we need
(Semi)Continuous integration
![Page 18: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/18.jpg)
Agenda
• Why test• Non technical obstacles• What do we need• Types of testing• Examples
![Page 19: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/19.jpg)
Types of testing
White box Black box
![Page 20: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/20.jpg)
Types of testing
Unit testing
![Page 21: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/21.jpg)
Types of testing
Integration & acceptance testing
![Page 22: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/22.jpg)
Types of testing
Error testing
![Page 23: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/23.jpg)
Types of testing
Stress testing
![Page 24: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/24.jpg)
Types of testing
Other...
![Page 25: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/25.jpg)
Agenda
• Why test• Non technical obstacles• What do we need• Types of testing• Examples
![Page 26: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/26.jpg)
Examples
Testing database interface
Testing schema
Testing tables, views, UDFs
Testing stored procedures
![Page 27: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/27.jpg)
The most important slide of the presentation!
Test RESTORING database BACKUPS!
![Page 28: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/28.jpg)
Quick summary
• Start working around obstacles• Think about what you need to test• Get tooled up• Do it!• Sleep better and spend more time doing other
things you like
• So....
![Page 29: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/29.jpg)
Quick summary... please test. Because...
![Page 31: Database Testing - Minimizing "If it can break, it will."](https://reader036.vdocument.in/reader036/viewer/2022062810/56815cbb550346895dcaba77/html5/thumbnails/31.jpg)
Picture sourceshttp://www.flickr.com/photos/dvids/3345063374/http://en.wikipedia.org/wiki/File:Tightrope_walking.jpghttp://www.flickr.com/photos/minchki/2811335149/http://cheezburger.com/txperson/lolz/View/2243660544http://www.flickr.com/photos/22577165@N07/2282032693/http://www.flickr.com/photos/gadl/320300354/http://static.divbyzero.nl/facepalm/http://www.flickr.com/photos/11284224@N00/4323983731http://en.wikipedia.org/wiki/File:Wine_on_the_Wall.jpghttp://www.flickr.com/photos/pnts/2496548941/sizes/z/in/photostream/http://www.flickr.com/photos/design-dog/1366460627/http://www.flickr.com/photos/nordearigamarathon/4649999908/in/photostream/http://www.flickr.com/photos/nickwebb/3016498475/http://www.flickr.com/photos/augu/1334255992/http://www.flickr.com/photos/hortense/3196460719/http://www.flickr.com/photos/54544400@N00/5181596187/http://www.flickr.com/photos/quinnanya/3570356861/http://commons.wikimedia.org/wiki/File:Cuba-old_car.jpghttp://www.flickr.com/photos/calciphus/3661636507/