From: yet another bill smith Date: 2001-12-03T00:20:05+09:00 Subject: [ruby-talk:27279] Re: John Roth dolt ( Re: A challenge to proponents of Unit Testing. ) Thaddeus L Olczyk wrote: (snipped in places, my comments interspersed) > > Background. > > For a long time I've been writing unit tests with my code. > I have a reputation among of friends of writing meticulous > code and of meticulously testing it. I have been so determined > to not release code until it was well tested, that at times I have > suffered professionally from it. For a long time (starting 1966) I've been developoing a reputation for delivering working code faster than expected. I'm sorry you have suffered professionally (though judging from this post, the original post with your "challenge," and your posts that I've seen on c.s-eng over the last year or so (let's face it, your name is somewhat more memorable than mine), I suspect your suffering is more due to you being a jerk of the first water. > > In all that time, I have never once been able to produce a system > of tests that meets three criteria: the tests run automatically, the > tests are comprehensive, and the tests are easily maintainable. > At this point I am strongly beginning to wonder whether such a > system is possible. I've never produced one either. SO who ever told you that engineering is easy? Some tests will always have to be checked manually (such as many things that appear on a monitor). Even if you redefine 'comprehensive' to mean something more like 'adequate' rather than 'exhaustive' there is still the question of what you think qualifies as easy to maintain. If testing were easy, it wouldn't have grown into a separate career path from programming. > > So I offered a challenge to those that support heavy unit testing. > In particular to the XP community. Produce a "proof-of-concept" > for unit testing by taking some open source project and adding unit > tests. I also suggested that if the person needed to he could rewrite > the project to facilitate testing. ( Let me say that this also can be > loosely interpreted to include writing an open source project. Some > advocates say that the only way to implement a unit test system is to > write it before you write the code. ) How generous of you. But what makes you think that the proponents of test-first coding owe you a response? Particulararly when issued in such an impolite and ungrammatical format, in such imprecise terms? Hey, if your ego grows much more, you'll have to start calling yourself 'Universe'! [And notice how few people take Elliott's garbage seriously, either.] > > On Fri, 30 Nov 2001 20:06:09 -0800, "John Roth" > wrote: > > > > >"Tom Adams" wrote in message > >news:708f3b7f.0111301318.2a499dd3@posting.google.com... > >> Comprehensive unit testing is not practical. It was shown decades > >> ago that comprehensive unit testing is equivalent to correctness > >> proof of the program being tested. Therefore it is no more > >> practical than correctness proof for large programs. > >> > >> Where you guys been? See "Partition testing does not inspire > >> confidence" by Dick Hamlet. I'll go home tonight at dig up > >> the old references if you like. > > > >I think I've come to the conclusion that the original post on > >this thread was a troll, so I've snipped it. > A troll is supposed to generate a lot of responses. > The original question generated more than 250 responses. > However less than 10 of the responses directly tackled the question. > Until Tom Adams posted his reply there were less then 5. > Many of the rest had no relevance to the original post. > > Thus there is no way that I can take credit for the volume of posts. > Nor do I want a lot of posts. I prefer quality over quantity. Still > waters run deep, but then I don't expect you to understand what that > means. You just don't have the intelligence to understand it. Aside: rare personal attack: if he really preferred quality over quantity, why is this post so long? Also, intelligence has little or nothing to do with understanding highly idiomatic expressions, and who ever said that still waters were higher quality than fast? In my neighborhood, still waters get a coating of scum. > > Of all the posts only two actually tried to meet my challenge. > ( I'm still evaluating them, and forming my questions. ) Kent Beck's > post, which suggested I look at ant and junit, and Max Ischenko who > suggested ruby. ( Which is why I added comp.lang.ruby. I believe in > giving credit where credit is due. All you "rubiers" who aren't > interested in the rest can go, that was the whole relationship to > ruby. ) > > You on the other have done just the opposite. Instead of proactively > rising to meet the challenge, you chose instead to denigrate me. Now > you call the challenge a troll. That was one post requesting that > XPers ( and others who believe in unit testing ) offer a > "proof-of-concept" versus a flood of off-topic ( relative to thread ) > posts from XPers. 230 to 1 and the 1 is the one wasting bandwidth. > You've got a lot of balls to even suggest it, and a lot of stupidity > to think you wouldn't get called for it. Imagine yourself in a small boat puttering along on a lake, with some people dangling fishing lines off the stern. If a fish rises to the bait, it it being proactive or reactive? If someone has risen to meet your challenge, he/she would also have been reactive. BTW, do you know the name for that type of fishing? Can you say 'trolling'? I knew you could. > > More amazing is the fact that you ( perhaps in conjunction with others > ) don't jump at the chance to create a "proof-of-concept". Such a > thing would be invaluable ( if done correctly ) to hold up to > managers and senior developers to convince them to do unit testing. Maybe they've got something more useful to do, like paid work? Or maybe even a life? (Note, I'm not suggesting that you don't have a life, I'm just stating that if they did they might prefer it to your challenge. Hey, if I had a life I'd prefer it to answering your post =-) > > Something which BTW I am surprised you would find objectionable, > since it is something that you could hold up to managers as proof of > unit testing. People supporting the less popular programming languages > beg for precisely such a proof for their languages. > > I suspect the reason is that you cannot do it. That you really > don't have the development skills to do it for yourself and > instead go into a company and sell the latest religion disguised as > methodology to the management. You don't pay attention when > the developers tell you something is impossible, instead blame them > when things turn out wrong. As you PJPlauger once put it, your > wonderful method should have work, but the programmers just > didn't try hard enough or were using the method wrong etc. > > > > >Nobody does "comprehensive unit tests" of the type mentioned, > >for the simple reason that the number of tests vastly outweighs > >any possible benefit, even if it was possible to characterize > >the actual tests required, which in most cases of any practical > >interest, it isn't. > > > "You should test things that might break." > eXtreme Programming eXplained: Embrace Change > Kent Beck > > You are now running away from that statement by saying it > does not pay to do that ( after all what does comprehensive mean? ) > > As for the rest. Well I one made one mistake. A long time ago I swore > that I would reply to the intelligent posts first then the stupid > ones. Your post upset me enough that I violated that rule. I will now > go back to make my detailed analysis of junit as a response to Kent > Beck's post. > > When I said "consultants that give consultants a bad name" in my > original post, you said the phrase was nonsensical. Well let me > explain what I meant ( it's obvious to those with an IQ ). Most of > the SD managers and senior people I speak to associate certain words > with consultants "liar", "incompetent", and "con-man" are just a few. > One manager once said to me "We need someone with OLE experience. > This guy claims to be one of the best OLE developers around. Even > though all consultants lie, I expect this one has enough experience > to meet our needs. Even though I know he's lying." Other managers have > said similar things. This comes not from some sort of prejudice, but > from previous experience of these managers. I doubt, however, that you > want to admit such a thing exists because it would make looking in the > mirror hard. > > In conclusion. I was so serious about this question that I removed > people from my kill file to get their responses. For the most part > that was a mistake because these people don't seem serious about > wanting to prove unit testing is good. Instead they want to spend > their time dancing around the maypole and sending 230 chants...that > is... irrelevant posts trying to get more converts to their cult. > > So... > > There is nothing that I can learn from you except that you are an > asshole. I already know that so there is really nothing that I can > learn from you. > > I expect that you will say nasty things being the person that you are, > but I hope people take into consideration that they are being said > behind my back. > > Sorry, your just too stupid for me to learn anything from you. > Goodbye. > > > From my list of good tag lines: "I have never met a man so ignorant that I couldn't learn something from him."--Galileo Galilei, physicist and astronomer (1564-1642)