Click to See Complete Forum and Search --> : testing methodologies


Anti-Rich
July 12th, 2007, 09:35 PM
hi all,

im just about to start testing my application for the first time (proper testing i mean, not the whole test-as-i-go thing), im just wondering if anyone can suggest some methodologies for the testing process, as a skill like this, when done properly, is invaluable on a resume.

thanks everyone

adam

TheCPUWizard
July 18th, 2007, 10:41 AM
Proper Testing IS "Test as You Go".

Look at "Test Driven Development". Super Simplified..

1) When you define a class, implement only EMPTY public methods. Return NULL or extreme results to get it to compile.

2) Write Tests that fully cover the functional specification. If the specification is "properly" written. Each test (or test group) should cover one specific paragraph of the specification.

3) Veryif that EVERY test fails, and that you are getting 100% code covrage.

4) NOW you are ready to start writing code. When you get all of the tests to pass you have Version 0.1 of the class.

5) Setup you source control environment so that you must pass all tests and get some high (I use 95%) level of code coverage.

6) If you find a bug, that does not cause a test to fail. Add a NEW test to specifically detect the condition. Make sure the test fails.

7) When you have modiufied the code so that all tests pass, you are ready to check in the new version.

8) When the functional specification changes. Update the tests to reflect the new functional specification. Tests SHOULD fail at this point to reflect the change in the functional specification.

This is what my firm has been using for about the last 5 years. Quality is way up, and cost (TCO) is actually down significantly.

btw: The current project has approx 1800 classes and over 100,000 test routines. It has been over six months since a single bug "escaped" the development environment and was caught at the QA or customer level. (Not counting places where the functional specification was either wrong or incomplete).

Anti-Rich
July 18th, 2007, 09:30 PM
Thanks so much CPU wizard, thats the exact sort of thing i was asking , i hope to push my luck and ask if you could post a quick example, for a basic class or something? I havent done anything like this before, and a 'template' (for lack of a better word) would be great..


thanks again :)

adam

rjfioravanti
August 6th, 2007, 07:54 PM
look up the xUnit software packages

cppunit or Junit for example, theres lots of documentation out there on it

getzephyr
May 12th, 2008, 03:26 AM
Take a look at Zephyr (getzephyr.com/products/qa_methodologies.php), it easily fits and enhances any test methodology that you might be using as part of your software development lifecycle.