OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]
Re: [xml-dev] Testing XML don't use xUnit

I was working with an OASIS-open.org technical committee on a document
describing test assertions [1].
The methodology separates the test assertion from the test case(s). The
test assertion can be prose. The test cases can make use of XPath (as they
do in some cases when the test targets are found in XML instances). A spin
off was Tamelizer and a markup profile it uses called TAML-X. This combined
the test assertions and the test case technology so that the test assertions
themselves were executable (using XPath). The examples used in the
guidelines included a markup without using XPath expressions but we had
a major scenario in mind where the targets would be XML and the assertion
expressions would typically be written using XPath (WS-I test suites which
aren't to be confused with previously mentioned WS-* standards).
I also do a lot of work with testers writing tests for HTML pages using the
very well-known integration test tool Selenium IDE (for Firefox) and that
makes heavy use of XPath even though the target is HTML. Here we end
up with many tests which include XPaths which break every time a
significant change is made to the HTML. So we have to keep mending the
XPath expressions (even though we try to write them with //, etc, to avoid
this). So I know the problem. It doesn't stop people favouring Selenium
IDE for website integration tests though. It's well worth the hassle to many.
I guess it might be different if we were using XPath for unit tests but I
don't know about that. I guess modern unit tests get associated with TDD
and Agile, so maybe having separate test assertions (written in prose)
would be a 'no no' for many unit test writers as it might be seen as going
against Agile mantras. You'd have to update the assertions less frequently
than the unit tests but having to update something other than the tests
and the XML / code would be just too much for many Agile teams. So
if you wanted to inut test your XML you'd probably be stuck with having to
keep revising a load of XPath expressions. It goes with the territory.
Best regards
Stephen D Green
[1] http://docs.oasis-open.org/tag/guidelines/v1.0/cn01/guidelines-v1.0-cn01.pdf
[2] http://code.google.com/p/tamelizer/

On 11 April 2013 09:47, Ihe Onwuka <ihe.onwuka@gmail.com> wrote:
On Thu, Apr 11, 2013 at 9:25 AM, Andrew Welch <andrew.j.welch@gmail.com> wrote:
> On 11 April 2013 07:37, Ihe Onwuka <ihe.onwuka@gmail.com> wrote:
>> On Thu, Apr 11, 2013 at 4:04 AM, George Cristian Bina
>> <george@oxygenxml.com> wrote:
>>> Hi Ihe,
>>> People asked for a Schematron example that you think cannot be written as an
>>> XPath only test then they wanted to show you the equivalent XPath for that.
>>> Basically, in Schematron you have
>>> rule/@context = XPath expression
>>> assert/@test = XPath expression
>>> these can be written in XPath 2.0 as
>>> //(context)/test
>>> where context is the rule/@context expression and test is the assert/@test
>>> expression.
>>> So, the challenge will be to come up with a Schematron example for which
>>> someone cannot write an XPath equivalent. If you cannot provide such an
>>> example then you should accept that they are equivalent, at least for your
>>> use cases.
>> I am sorry I have no idea what that challenge has to do with what I
>> have been illustrating.
> You were trying to say my use of XPath/XQuery in unit tests was bad,
> and to use Schematron instead:

The thread  is not  and was never about you or how you use XPath or
XQuery. I submitted a very late and sloppy abstract on the larger
subject matter to XMLLondon which didn't make the cut.

The thread is not about bad or good.

The thread is about the relative robustness of two methods of doing
something. The counterargument seems to be they can both do the same
thing therefore they are equivalent and because the counterargument
ignores the distinguishing property that predicated the thread there
is no value in me continuing to respond.


XML-DEV is a publicly archived, unmoderated list hosted by OASIS
to support XML implementation and development. To minimize
spam in the archives, you must subscribe before posting.

[Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/
Or unsubscribe: xml-dev-unsubscribe@lists.xml.org
subscribe: xml-dev-subscribe@lists.xml.org
List archive: http://lists.xml.org/archives/xml-dev/
List Guidelines: http://www.oasis-open.org/maillists/guidelines.php

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 1993-2007 XML.org. This site is hosted by OASIS