On May 30, 2009, at 4:22 PM, BJ Freeman wrote:
I see commits like the one I just commented on that says lets open
this
so it can be tested.
The "do no harm" comes to mind
Is it the contents of the commit or the comment from Ashish that
bothered you?
I'll agree that his comment ("Reason of enabling this new
implementation is that we should get bugs in extensive testing and
code will become more stable") was poorly phrased and sounds like a
lazy approach to contributing things.
However, you could also interpret this a different way, and give him
the benefit of the doubt as to intent and process: "Changing the
default to the new implementation which now has more features than the
previous one and has been tested in a development/testing environment;
would appreciate collaboration on further development of this and
welcome others to test it according to their requirements, and we'll
be happy to work with them on making it work for them even if their
requirements are different than the ones we are working from."
I might be interpreting this a little too generously, but without
evidence to the contrary this is what I'm happy to believe.
What I have more of a problem with is things like "I didn't write
this, I haven't tested it, but since not very people complain about
Commit-Then-Review in it goes!" IMO the CTR pattern, especially for
anything widely used, is generally pretty rude and not good community
etiquette. Of course, that's my pet-peeve and I know that I have a
hard time being "generous" with people when I see it... but unless I
see something specific that causes a problem I usually try to refrain
from commenting...
Now here is my full thoughts on this.
i think we have enough manpower at this point that we should require
that a test unit be used for testing before submitting to the trunk.
then allow it to be committed along with the code that was tested by
the
test unit.
The project technically has zero manpower... it's all volunteer. That
means that if no one cares enough about testing to work on it and
contribute (and/or improve) automated tests then there won't be any
tests. However things turn out, the management of the project is based
on "meritocracy."
There are lots of different ways of approaching automated tests (and I
say "automated" and not "unit" because it would be great to have a
wide variety of automated tests and not just unit type/level tests).
At this point we have pretty good support for automated unit tests
(basically service level and below), but not such good support for UI-
level tests, though these are definitely getting closer.
Anyway, at the conference last year in New Orleans a number of ideas
and approaches were discussed (and I think all of these have been
discussed over time on the mailing lists too). The one I like the
most, and that I've mentioned on this mailing list, is to encourage
people that want to have a certain thing work a certain way to
contribute an automated test for that. In some cases people who
contribute automated tests will be the same as those who develop
things, and probably in many cases it will be people who were not
involved in the development.
The basic idea is simple: if you want something to work a certain way,
contribute an automated test that verifies it; if you manage to get
your unit test committed then you have an easy basis to complain that
something is broken, and you have a "foot in the door" for making
OFBiz function the way YOU want it to.
-David