|
Gary R. Wheeler wrote: I always insist on a detailed description of the test circumstances and procedure Also early in my career, a senior colleague received a bug report which read, "During the night, the attached log occurred." This was still in the day of hard-copy bug reports with attached printouts. His fix: "Turn off printer."
|
|
|
|
|
Software Zen: delete this;
|
|
|
|
|
The guy's name was actually Richard H. Ead?! Oh what a setup!
|
|
|
|
|
The name has been changed to protect the inept.
Software Zen: delete this;
|
|
|
|
|
|
Sounds like you owe your daughter an ice cream cone.
|
|
|
|
|
People who grew up using mice and event queues instead of fingers probably have blind spots around this.
|
|
|
|
|
HappyDotNet wrote: a 5 year old randomly pushing buttons could be a good QA test. Many users probably have less brain than your 5 years daughter, so yes, she might be a really important QA Tester.
Back then, my first day in new company, I went into the office and a guy was staring at the roof, just randomly moving his fingers through a touch panel of Siemens... when I looked at him with an "what the hell is he doing?" expression in my face, my mentor said: "He is simulating a bored worker"
And it is like this, we unconsciously do things in more or less the way they are designed, we don't think about the order of small processes because for us they are "extremely logical" and mostly "self explanatory" but there are people that will play with the GUI with malice just due to boredom or plain stupidity.
Fast forward 3 years in my career, I inherited an industrial line automation at what was going to be my main customer. 4 years later and a lot of months improving the processes and adding new stuff... I knew almost everything by heart and could solve almost everything just on the phone, without having to look at the code.
I got a call, line was blocked. Aha... Do this, nothing. Do that, nothing. Mmmmhhh... I'll be right there.
Once at the factory, I try this... nothing. I try that... nothing. Mmmmhhhh... I better have a look to the code.
I pack my laptop out, nothing.
I connect my laptop for online diagnose... 1 hour later... bug found.
How the hell did this happen? I had no explanation.
I had to reset the PLC, overwrite some blocks with my fixed versions and manually change the value of some parameters, then I had to move back the robot to home manually and do a restart of some slaves...
The girl / woman operating the line that day was a new one and it was her second day at that position. 2 years without any issue that couldn't be solve with a simple "back to home position" button click and she had found a bug that blocked the line beyond any recoverable point in less than 2 work-shifts.
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
Rating helpful answers is nice, but saying thanks can be even nicer.
modified 8-Sep-21 2:29am.
|
|
|
|
|
That's awesome!
|
|
|
|
|
I have almost the same story - it involves two buttons and, in my case, a two year old.
In the olden days, when a complete "C" system fitted on a 340k floppy, CP/M ruled and I was working with Z80 based Superbrains, The Superbrain had two red keys, one each end of the keyboard, press them both and the computer reboots.
My daughter came into the lab, saw the computer, saw the two bright red keys and (of course) pressed them simultaneously - Oh Nooooooooo...
Andy
|
|
|
|
|
That's basically the old adage of "devs shall not test themselves and call it a day". As someone who's built that thing, certain assumptions on what it's supposed to do and how are thoroughly burned into our synapses rendering us impossible to see beyond.
|
|
|
|
|
@HappyDotNet
I'll give you a better test that Lord Murphy always gives me. First block some time with someone really high up that you are possibly trying to impress.
Then go on your routine demo.
Then ask him to use it in front of you.
Don't forget to record the screen if its possible to do so.
Nine times out of ten, you will get a big glaring bug, thrown in your face.
It will happen for each thoroughly tested application that is not a POC or low ticket sort of development effort.
And that is the lesson, no matter what you do,
Lord Murphy always gets the last laugh.
-Paras
|
|
|
|
|
I used to develop some apps for the PalmOS, remember those?
You could run an emulator on the desktop,
and there was a auto-test feature that would literally just press the emulated screen randomly for as long as you like.
I think it was called something like Monkey testing or something like that.
Leave it running overnight and check in on it in the morning!
|
|
|
|
|
I lead a small dev team. We had a old mainframe coder here years back, refused to learn anything new (it's a govt job...), so he had zero work. I enlisted him to test our applications before fielding them. Being completely out of the loop on things, he was a valuable tester. He'd come back with things like
"Well, if I press shift, F6, K, and Enter, this happens"
"Why would you do that?"
"I dunno, but this happens"
Found things we'd never test for. Annoying, but hey, it happens.
|
|
|
|
|
Your 5 year-old deserves some sort of treat for teaching you something new about QA. If she were (much) older, I'd say that she deserves a
Freedom is the freedom to say that two plus two make four. If that is granted, all else follows.
-- 6079 Smith W.
|
|
|
|
|
This reminds me:
We had a user, that despite taking the online training for our software, could not get various features to work. (All of them involved F-Keys, in hindsight, but she referred to them by their names, like Refresh, etc).
On a visit, I stopped by her desk, and I asked her to show me. When she was required to press F3 to search, she was PRESSING: F, and then 3
I was ASTOUNDED, until I realized she had never pulled her keyboard drawer fully open.
I pulled it open for her, and she excitedly exclaimed "Oh, do you think THEY meant that F3 key?"
I said "I don't know! Try it!", and, of course, it worked...
The manager overheard this, and as I walked to the other part of the office, TRYING TO PREVENT MY SKULL From exploding... He said "I know you will tell this story in the future, just promise me to NEVER mention the company!"... ROTFLMAO.
Users... They come in all varieties. And it's why engineers/testers fail to find the problems.
|
|
|
|
|
When my daughter was about the same age (2 decades ago), she inserted a linux install disc into our windows computer and by random key presses, not only installed linux, but forced a login for either partition with a root password of God only knows. Sigh.
After that we put a screenlock on with the failed password alert saying aloud, "No, no, Katie!" LOL
|
|
|
|
|
|
I've just forwarded this to one of my mentees. A Good Lesson.
|
|
|
|
|
I was reading about complex numbers in C# and saw this
Complex minusOne = new Complex(-1, 0);
Console.WriteLine(Complex.Sqrt(minusOne));
I'm curious: is there any reason one would not simply hardcode Complex.Sqrt(-1) to equal new Complex(0, 1); ?
The whole thing about complex numbers is they are based on the fundamental concept that i2 = -1. Why wouldn't you bake that in as an absolute and let the representational errors happen elsewhere?
I get that actually detecting all cases of √-1 is tricky and messy at best, but it's not like you can actually compare, with arbitrary precision, two floating point values anyway.
Future warning: if I ever get access to the .NET code in a way that lets me sneak in a change, then this will happen. It may cause manned spacecraft to veer off course and crash into the moon, or nuclear reactors to overheat and take out half a continent. But, dammit, √-1 will equal i.
cheers
Chris Maunder
|
|
|
|
|
If spacecraft or nuclear reactors are ever allowed to be run on .Net I will hide in a cave for the foreseeable future.
|
|
|
|
|
Ehm.. As a fellow swedish developer, I suggest you hide right now, because software I've written in C# is actually in a control room for a unnamed reactor. =)
|
|
|
|
|
But is it actually controlling the reactor?
|
|
|
|
|
Not directly but a crash will cause an emergency stop. // E
|
|
|
|
|
Ok, that's interesting.
I suppose it's not an off the shelf PC it's running on?
|
|
|
|
|