Re: [General] Language-independent test representation

Hi Curt,

I've looked over some of the junit and jsunit tests and had some questions.
It appears that you have introduced some intermediate methods, such as
getElementsByTagNameAndIndex, etc -- I'm curious as to why you did
this.  As it turns out, we were just considering moving away from this
approach in the NIST ECMAScript tests.  Although at one time I thought
it better to have common methods/functions for tasks that were repeated
often, it has in the end made our ECMAScript tests much harder to follow.
The feedback that we have received seems to favor just using the standard
DOM calls, instead of having indirection inside the tests themselves.

Am I right in assuming that you went through and hand-coded all three of
these solutions as opposed to any automated mechanisms?  I'm trying to
understand the level of effort involved in converting what we already
have --   We already have another 200 tests that
have not yet been released that address namespace issues and DOMExceptions.
We also have the 600 HTML tests that have to be considered.

Have you used any of the graphical interfaces to run the tests?  If so, do
you have any comments?

I can't seem to find the JSUNIT download -- I can browse the repository
and look at the source for the tests, but can't seem to find the app area --
I wanted to try this out in Mozilla.

--Mary


----- Original Message -----
From: "Arnold, Curt" <Curt.Arnold@hyprotech.com>
To: <www-dom-ts@w3.org>
Sent: Tuesday, April 24, 2001 1:07 PM
Subject: RE: [General] Language-independent test representation


> I think the following history is approximately correct.  The primary sites
> to check are http://www.xprogramming.com and http://www.junit.org
>
> The xUnit frameworks developed out of the Extreme Programming paradigm of
Test
>  First Design.  Out of one original Smalltalk testing framework
> (http://www.xprogramming.com/testfram.htm), a family of about 30 different
> implementations of conceptually similar frameworks on different languages
and
> platforms (listed at http://www.xprogramming.com/software.htm)  Most if
not
> all of these frameworks are open source.  The quality and completeness of
the
> implementations vary and occassionally there are multiple implementations
for
> one platform.
>
> There is a list of articles at http://www.junit.org/articles.htm#fun
>
> JUnit, JSUnit, PYunit  have independent sites, http://www.junit.org ,
> http://www.jsunit.net , http://pyunit.sourceforge.net/
>
> Maybe the quickest way to comprehend the flavor of the xUnit tests is to
look
>  at my recasting of the NIST tests to JUnit, JSUnit and CppUnit.
>
> For example, comparing the source of the same suite of tests in multiple
> languages, should show how similar the code is when most of the language
> differences are hidden in the test framework implementation or the base
test
> case class:
>
> Java version of text tests
>
>
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/xmlconf/domunit/JUNIT/NET/sou
rceforge/XMLCONF/DOMUNIT/DOM1/NIST/text.java?rev=1.1.1.1&content-type=text/v
nd.viewcvs-markup
>
> JavaScript version:
>
>
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/xmlconf/domunit/JSUNIT/dom1_n
ist_text.html?rev=1.1.1.1&content-type=text/vnd.viewcvs-markup
>
> Cpp version:
>
>
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/xmlconf/domunit/CPPUNIT/dom1/
nist/text.cpp?rev=1.1.1.1&content-type=text/vnd.viewcvs-markup
>
> >From briefly looking at the PyUnit site, it does appear that the
> Python would require some more intelligent processing of the
> base JUnit tests than the JavaScript or C++ port.  However, it
> should still be reasonable to automate, possibly using JavaML + XSLT.
> But would want to take a manual shot at converting at least one
> or two test cases first to learn the ropes.
>
> The Perl flavor of xUnit seemed incomplete (or at least underdocumented),
> but again it is not a language I'm familiar with.  If needed however,
> we could always flesh out an implementation that met our needs.
>
>

Received on Tuesday, 24 April 2001 15:03:18 UTC