|
I presume that the end-user is:
- unlucky
- with two left hands
- curious
- with evil intentions.
Enough?
36. When you surround an army, leave an outlet free.
...
Do not press a desperate foe too hard.
SUN-TZU - Art of War
|
|
|
|
|
I think you should start a new testing methodology based on those principles!
|
|
|
|
|
Or maybe I call it PARANOIA ?
36. When you surround an army, leave an outlet free.
...
Do not press a desperate foe too hard.
SUN-TZU - Art of War
|
|
|
|
|
The PARANOIA Testing Method. I like it!
Put a few words together in a folder with some pictures - and you're on the road to making millions!
|
|
|
|
|
rmallamace wrote: I think you should start a new testing methodology based on those principles!
That's a perfect Idea
|
|
|
|
|
Thanks for saying this!
36. When you surround an army, leave an outlet free.
...
Do not press a desperate foe too hard.
SUN-TZU - Art of War
|
|
|
|
|
Agree. That is why authors are not supposed to edit their own work. That is the job of an editor.
|
|
|
|
|
I agree that there should be independent testing particularly at the functional and requirements level.
However, code is a work product and a developer should deliver a quality work product. A developer who takes ownership over what he delivers needs to be able to say, "My code functions as I intended".
A writer .e.g. might proof-read, spell check and grammar check their document prior to handing it over to someone else to proof-read it. No editor wants to receive a document that is full of typos.
I would also argue that regarding unit-test the developer is the best qualified to perform it. Once it becomes integrated or a system level test a dedicated tester will be the best choice.
I also believe in Test-Driven-Development and so when writing new code will often write the tests first and then the code.
The end result is that very few bugs are submitted against my code.
Our company also practices code-review. We are semi-agile.
I have worked on both sides - as a dedicated tester and as a developer. I have seen far better success in quality projects being released on time when developers do their own code verification coupled with independent validation as opposed to independent test alone.
|
|
|
|
|
Developers should always test their own code. That however should not be the only testing.
As a developer I test my implementation, I run the application, or whatever, and test the new stuff I have implemented. I walk through all the paths I have written in debug mode and confirm that what I expect to happen actually does.
When I am happy with it peers test it. When they are happy testers test it. When they are happy internal staff test it. Finally selected customers test it. If all of the above are happy we release it and wait for the complaints.
|
|
|
|
|
I take it a step further by encouraging the testers to try and break the code. Often times, the developer gets locked into the normal cases and tends to forget the true randomness of real life.
|
|
|
|
|
As my previous employers finally learned, a programmer cannot properly test his own code.
First, there's that hauntingly beautiful poem "It works on my machine".
Secondly, developers don't think like users (Praise Be !), and so won't do stupid things (at least, not as often).
That doesn't mean they shouldn't test it at all: it should work as expected, boundary conditions checked, and as much a defensive wall put up so that eventualities are either prevented or handled. Here, in particular, experience counts.
. . . but sooner or later, that stuff goes into the wild, and the heartless and mindless aboriginals will flay it. It's their nature.
"The difference between genius and stupidity is that genius has its limits." - Albert Einstein | "As far as we know, our computer has never had an undetected error." - Weisert | "If you are searching for perfection in others, then you seek dissappointment. If you are searching for perfection in yourself, then you seek failure." - Balboos HaGadol Mar 2010 |
|
|
|
|
|
Ive also experienced the hauntingly annoying "It must be something you've done" as well
|
|
|
|
|
I want to tick two boxes.
Developers should always fully test their code. The number of times I have had to ream people out for checking stuff in that may well compile but cannot possible ever have worked! Guess what they don't work for us anymore.
In addition ...
Fully documented and planned test plans should be in place and carried out by a dedicated testing team before release.
If either are missing then problems will occur.
|
|
|
|
|
Agreed, both the developer and a dedicated tester need to perform tests.
jgehman
Software Engineer
|
|
|
|
|
I fourth it.
That's why I voted other and put 1 and 2 in the comment box.
Henry Minute
Do not read medical books! You could die of a misprint. - Mark Twain
Girl: (staring) "Why do you need an icy cucumber?"
“I want to report a fraud. The government is lying to us all.”
|
|
|
|
|
Perfect, I agree with you.
|
|
|
|