- From: Shadi Abou-Zahra <shadi@w3.org>
- Date: Thu, 01 Mar 2007 20:24:10 +0100
- To: Sean Owen <srowen@google.com>
- Cc: public-mobileok-checker@w3.org
Hi Sean,
Just as an fyi, the EARL code looks good for the current EARL WD. There
has been a minor change in "Web Content" class though. An upcoming Last
Call WD is expected later this month, here is a sneak preview of the
Editor's Draft under discussion by ERT WG:
- <http://www.w3.org/WAI/ER/EARL10/WD-EARL10-Schema-20070226>
Regards,
Shadi
Sean Owen wrote:
> Here's another cut at a test framework. It exposes intermediate test
> states in the HTTP-in-RDF vocab, and results in the EARL vocab, per my
> ACTION. Also per my ACTION I'm offering this overview of the code for
> discussion as we need to decide whether this is roughly OK as a
> starting point or not.
>
> Attached is source, a sample of the intermediate output XML at the
> moment, and a sample of the EARL results.
>
>
> All code is in package org.w3c.mwi.mobileok.basic. Depends on Java 5,
> Commons Codec, Commons HttpClient, Commons Logging.
>
>
> THE PUBLIC API
>
> Tester
> This is the top-level abstraction which runs the test. It can be
> constructed to operate on a file, a URI, or can be given the HTTP
> response body and headers directly. It exposes a runTests() method
> that runs everything, or, runTest() which runs just one test.
>
> TestType
> Just an enum of all test types.
>
> TestResults
> TestResult
> Returned by runTests() and runTest() respectively, and encapsulate the
> results of many tests and one test, respectively. TestResults includes
> many TestResult instances. These objects include test outcome,
> warnings, and information.
>
> TestOutcome
> Just an enum of PASS and FAIL, the two test outcomes
>
> TestException
> Throw if something goes wrong in the tester -- that is, not just that
> there was an error accessing the document but that something is wrong
> with the tester.
>
>
> NON-PUBLIC INTERNALS
>
> TestImplementation
> AbstractTestImplementation
> There's an implementation of TestImplementation for each mobileOK
> basic test, and AbstractTestImplementation fills the usual role of
> holding bits of logic common to implementations.
>
> TestContext
> Packages all the details of the preprocessing done by Tester, like the
> results of retrieving the resource, for all implementations to use.
>
> HTTPResource
> HTTPTextResource
> Encapsulates an HTTP request, its execution, and the response.
> HTTPTextResource just extends this to try to treat the body as text
> and make it available as a String
>
> CachingTest, etc.
> Implementations for particular mobileOK basic tests.
>
>
> SAMPLE USAGE IN JAVA
> ... which just prints results to System.out
>
> final Tester tester = new Tester(new URI("http://foobar.com"));
> final TestResults results = tester.runTests();
>
> final TransformerFactory tFactory =
> TransformerFactory.newInstance();
> final StreamResult result = new StreamResult(System.out);
> tFactory.newTransformer().transform(new
> DOMSource(results.getIntermediateResultsDOM()), result);
> tFactory.newTransformer().transform(new
> DOMSource(results.getTestResultsDOM()), result);
--
Shadi Abou-Zahra Web Accessibility Specialist for Europe |
Chair & Staff Contact for the Evaluation and Repair Tools WG |
World Wide Web Consortium (W3C) http://www.w3.org/ |
Web Accessibility Initiative (WAI), http://www.w3.org/WAI/ |
WAI-TIES Project, http://www.w3.org/WAI/TIES/ |
Evaluation and Repair Tools WG, http://www.w3.org/WAI/ER/ |
2004, Route des Lucioles - 06560, Sophia-Antipolis - France |
Voice: +33(0)4 92 38 50 64 Fax: +33(0)4 92 38 78 22 |
Received on Thursday, 1 March 2007 19:25:31 UTC