harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Geir Magnusson Jr." <g...@pobox.com>
Subject Re: [general] JUnit consistency, practices
Date Thu, 30 Nov 2006 02:38:22 GMT
Absolutely - if there are people that are against it, don't do it.

geir


Alexei Fedotov wrote:
> Let me clarify my point a bit - I don't think we should remove main()
> from all tests now having (-1) people aboard. This is not a big deal
> anyway compared to 96 open JIRA issues on Swing.
> 
> 
> On 11/29/06, Paulex Yang <paulex.yang@gmail.com> wrote:
>> Mark Hindess wrote:
>> > On 29 November 2006 at 20:34, "Ivan Popov" <ivan.g.popov@gmail.com> 
>> wrote:
>> >
>> >> Alexei,
>> >>
>> >> I agree that it is still possible to run JUnit tests from command line
>> >> even without having main() in the code. But I think it is easier to
>> >> run test by convenient way
>> >>
>> >>   $ java -cp junit.jar TestClass
>> >>
>> >> rather than in a more complex manner
>> >>
>> >>   $ java -cp junit.jar junit.textui.TestRunner TestClass
>> >>
>> >> Actually, I constantly forget the right spelling of the full class
>> >> name for TestRunner class and have to look into JUnit doc to specify
>> >> proper name for such a command line.
>> >>
>> >> Also, it would be inconvenient if
>> >> someone runs test from an IDE that does not support JUnit environment,
>> >> but launches test as a usual Java application.
>> >>
>> >> I don't insist on adding main() to each JUnit testcase, but I see no
>> >> reason for removing this functionality from those test where it
>> >> already exists.
>> >>
>> >
>> > Whatever we do, main() should either be in all tests or none.  
>> Having it
>> > in only a subset is *much* too confusing.
>> >
>> > I don't care if we have main() in testcases or not.  (I personally will
>> > never use it and don't find remembering[0] the junit test runner 
>> class.)
>> >
>> +1 to keep a consistent style.
>> > Regards,
>> >  Mark.
>> >
>> > [0] I remember it by writing it in a shell script because I have a
>> > terrible memory.
>>
>> > Thanks.
>> > Ivan
>> >
>> > On 11/29/06, Alexei Fedotov <alexei.fedotov@gmail.com> wrote:
>> >
>> >>> Ivan, Stepan,
>> >>>
>> >>> I personally set +1 for removing main() method. Any script or command
>> >>> line can be trivially modified to launch JUnit tests without main()
>> >>> method: one should just add junit.textui.TestRunner class before a
>> >>> test class name.
>> >>>
>> >>> $ java -cp junit.jar junit.textui.TestRunner TestClass
>> >>>
>> >>> I'm writing this trivial thing here because during our work on class
>> >>> library test enabling it was FAQ N1 for all C/C++ developers.
>> >>>
>> >>> Note, any JUnit test won't work without junit.jar anyway. If you have
>> >>> junit.jar, you have a standard test runner, which is also quite
>> >>> lightweight.
>> >>>
>> >>> --
>> >>> Thank you,
>> >>> Alexei
>> >>>
>> >>> On 11/29/06, Ivan Popov <ivan.g.popov@gmail.com> wrote:
>> >>>
>> >>>> -1 for removing main().
>> >>>>
>> >>>> I often run individual tests from command line or using scripts
and
>> >>>> it's easier to launch them as a usual Java application. Also, this
>> >>>> facilitates creating separate bundle with test to attach to a bug
>> >>>> report or send to other people, who can just run it from command

>> line
>> >>>> or use script with the all required options already specified, 
>> instead
>> >>>> of setting IDE for this test.
>> >>>>
>> >>>> Thanks.
>> >>>> Ivan
>> >>>>
>> >>>> On 11/29/06, Nathan Beyer <nbeyer@gmail.com> wrote:
>> >>>>
>> >>>>> There is a large amount of inconsistency across the tests and

>> I'd like
>> >>>>> to lobby for cleaning them up as much as possible. I'm of the

>> opinion
>> >>>>> that test code should be clean, simple and transparent. Here
are 
>> some
>> >>>>> of the more noticeable items that I'd like to cleanup.
>> >>>>>
>> >>>>> * Empty setUp/teardown methods - There are a number of tests
that
>> >>>>> override setUp and/or teardown methods, but are either empty
or 
>> just
>> >>>>> call the super implementation.
>> >>>>>
>> >>>>> * Singleton suite methods - There are some tests that contain
a 
>> static
>> >>>>> "suite" method that creates a TestSuite and adds one test (the
test
>> >>>>> class it's declared in). Are there any practical uses for these
>> >>>>> methods? TestSuites are for grouping together tests to treat

>> them as
>> >>>>> one unit. Since these suites are just one test, it doesn't seem
to
>> >>>>> provide much value.
>> >>>>>
>> >>>>> * main method launching text runner - There are some tests that
>> >>>>> contain "main" methods which run the enclosing test via a JUnit

>> text
>> >>>>> runner. Most IDEs have built-in support for JUnit and can launch

>> any
>> >>>>> test arbitrarily and Ant can do the same thing. Does anyone
launch
>> >>>>> tests via these methods?
>> >>>>>
>> >>>>> My proposal would be to clean up these inconsistencies by 
>> eliminating
>> >>>>> them, but what does everyone else think?
>> >>>>>
>> >>>>> -Nathan
>> >>>>>
>> >>>>>
>> >
>> >
>> >
>> >
>>
>>
>> -- 
>> Paulex Yang
>> China Software Development Lab
>> IBM
>>
>>
>>
> 
> 

Mime
View raw message