W3C home > Mailing lists > Public > xproc-dev@w3.org > May 2011

Re: How to start testing?

From: Bob Jolliffe <bobjolliffe@gmail.com>
Date: Fri, 6 May 2011 22:49:19 +0100
Message-ID: <BANLkTingKEmbYPQ9gNOd4ygiX683t1T-ew@mail.gmail.com>
To: "Tony R." <tony@gonk.net>
Cc: XProc Dev <xproc-dev@w3.org>
On 6 May 2011 18:35, Tony R. <tony@gonk.net> wrote:

> *P.S.:*
> I forgot one more thing I do lots of, and that is *Document Testing.*
>
> The focus is on correctness, usability, readabililty, and style.
>  Obviously, this includes a lot of stuff that is less clear-cut than most
> tests.
>
> I’m surprised I left this out, but it’s actually a very high priority for
> me.  I’m a strong believer that form-and-function (or content-and-style if
> you prefer) are best when working in harmony, and that one should never come
> at the expense of (or be neglected for) the other.
>
> *Examples:*
>
>    - The words “can not” and “cannot” are both technically correct, but I
>    want to be able to test for the latter because it tends to read easier.
>
>    - Verify proper use of it’s/its, there/they’re/their, where/wear, etc.
>
>    - Check capitalization of acronyms (where appropriate); SSH should be
>    capitalized in body text, but lowercase in examples of command line use.
>
>    - …bunch of others.  No need to make this a litany. :)
>
>
>
> Ideally, a lot of these things require human judgement, but I’d love a way
> to automate the process of search-and-replace across large batches of
> documents.
>
> The best I can do right now is simply to write an XPath statement in
> Oxygen, click through the results one by one, and replace each one as
> appropriate.  But I do this somewhat chaotically, and sometimes my XPath
> queries are too general or too specific.
>

This certainly sounds like something you might benefit from schematron for.
But there will always be a tension between too general and too specific :-)


>
>
> —Tony
>
>
> On May 6, 2011, at 1:18 PM, Tony R. wrote:
>
> When I Grow Up, I Want To Test! ☺
>
> I love the concept of tests.
>
>    - I love that they automate something very useful.
>    - I love the idea of developing a modular test suite I can use across
>    projects, and simply write any project-specific tests on top.
>    - I love the idea of being able to make a change in a given project and
>    have an automatic way of being absolutely confident that changes are moving
>    the code forward without breaking anything.
>
>
> Alas, Testing Eludes Me
>
> …But I’ve never used tests in my own projects.  I just *don’t know how to
> get started*.
>
> Other than very general ideas about testing, I can’t find resources to help
> an absolute beginner (like me) to the minimum proficiency to be comfortable
> enough to self-teach from that point onwards.
>
> The other major problem is that most resources about XML testing tell me *
> what* to write, not *how* to write.  That is, they describe the syntax for
> a particular test grammar, but not *how to think* in order to start
> writing tests from scratch.  (Or, they offer a very brief and general
> description that makes sense, but is not enough to get started when I open
> up a new XML document and start starting at a blank screen.)
>
> What I know About Testing
>
> I’ve done tons of reading in my attempts to learn how to use testing in my
> projects.  I haven’t been able to put anything into practice, but I have
> learned a few things along the way:
>
>    - Of the various testing “schools of thought”, Behavior Driven
>    Development (BDD)<http://en.wikipedia.org/wiki/Behavior_Driven_Development> makes
>    the most sense to me.
>    - There’s tons of resources for testing in other programming languages.
>     I dabble in other programming languages, but my experience is too broad
>    (and not deep) enough for me to feel qualified to judge whether they are
>    candidates for gleaning any useful concepts from.
>    - To quote the awesome Mark Pilgrim, there are “a metric f***-ton” of
>    ways to test XML:
>       - Normal validation (sometimes against several different types of
>       schemas)
>       - Schematron <http://www.schematron.com/>
>       - NVDL <http://nvdl.org/>
>       - Xspec <http://livepage.apple.com/>
>       - Online Validation via REST (e.g., validator.nu , Test Everything!<http://tester.jonasjohn.de/>,
>       etc.)
>       - Xproc’s <http://xproc.org/> various steps for validation
>
> …and probably even more I haven’t found yet
> OMFG
>
> I am overwhelmed by the sheer number of options!
>
>    - Do I start with just one of these things?
>    - Do I manage these things separately?  Or is there a way to declare at
>    a higher level, “run NVDL, then XSpec, then Schematron, etc.”?
>    - Do any of these (partially or completely) obsolete others?
>
> And apart from this problem of overflow, the most important thing I am
> missing is the *mental process* of writing tests.
>
> Help?
>
> Any help for this would be greatly appreciated!
>
> If it helps, most of my XML work tends to include XHTML 1 (Strict), XHTML5
> (or my best attempt at polyglot, at any rate), and DocBook5.  I’m also
> dabbling more and more with data-scraping from websites.  Either way, my
> primary focus on web content & DocBook.
>
>
> Thanks!
>
> —Tony
>
>
>
Received on Friday, 6 May 2011 21:49:49 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Friday, 6 May 2011 21:49:49 GMT