Hints On Software Testing
From Gemin-Wiki
| Table of contents |
Hints On Software Testing
Testing software is mostly the same as using it, just play with it and note any bugs or problems that come up. However, testing is also about doing the most stupid and broken things you can imagine. Actually trying to break the software. You'll do that by doing unexpected things.
Input Fields
Try putting strange charcters into the fields. " and ' break SQL statements quite often. , and single ( or ) still quite often but slightly less. If you're asked for numbers of things, try answering with words or letters or negative numbers or 0 or "ok';asf"
Dragging
Drag things into strange and unexpected places. Try to send email to a forum or a jpeg.
New Features
If there are any new features, that's where you should concentrate particually hard. With new features in particular you'll ideally want to write up things that are just unintuative or not how you'd expect them to work as well as things that make the browser crash or lock up windows or pull down the entire server.
Reporting bugs
If you find something broken you'll want to report it in as much detail as possible. What exactly were you doing, what exactly were you doing it to? Ideally you'd give enough detail that a moron could follow your instructions and crash the program in exactly the same way. "I logged in as root, searched the home-folder for 'special obj' and tripple-clicked it then the browser froze" or "I created a new group called "***!" and it actually created a group with no name", not just "Tripple-click didn't work" becasue I don't know what you were tripple clicking etc.
Repeat Stuff
If you manage to crash anything, try it again. Sometimes the bug will be intermittent, or you won't be able to figure out exactly what the circumstances were to recreate it. Write in your report whether this problem was a one-off, or if it happens [i]every time[/i] you try to do this action.
Specifilc JellyOS testing
Try things as different users. Create a few dummy test-accounts and use those to create things, make sure that only the viewers who should be able to see an object can see it (remember: root sees all, so if you've got root logged in you can see everything), make sure that emailing links around between those users works. Make sure that users can be dragged when you'd expect etc.
![[Main Page]](/wiki/stylesheets/images/wiki.png)