I see this alot people that ask that you know and understand Formal QA methodologies. I mean I thought that QA testing was just testing out the program in every possible senario to see if it works. Are there formal steps to test a program???
Originally posted by Michael Huber: I see this alot people that ask that you know and understand Formal QA methodologies. I mean I thought that QA testing was just testing out the program in every possible senario to see if it works. Are there formal steps to test a program???
The term "formal testing" usually refers to a process where the tests to be carried out are documented beforehand, then executed, and the results documented.
Non-formal testing would, in this context, refer to tests carried out "ad hoc", i.e. without up-front planning of what to test and how to test.
Originally posted by Michael Huber: and what is automated testing?
Automated testing is just that -- automated testing. For example, take a typical test case for a web application. The test case probably starts with some kind of initialization (set up test data, go to main page, log in, etc.), continues with a sequence of actions (click this, click that, etc.), and includes all sorts of visual checks along the lines of "when you come back to this page, the value in field X should be Y".
Manually executing this sort of a test case isn't much fun -- at least in my opinion. It's a lot of work and doesn't require much activity in your frontal lobe...
Automated testing to rescue!
If you take another look at the generic test case I described, can you think of something you could not automate with scripts executed by a computer (written in Java, Python, Perl, Ruby, C#, whatever you prefer)? These days, a significant portion of test cases for web applications, for example, are perfectly capable of being automated with tools like HttpUnit, jWebUnit, HtmlUnit, Jameleon, etc.