- From: Francois Daoust <fd@w3.org>
- Date: Fri, 13 Feb 2009 14:57:57 +0100
- To: Yeliz Yesilada <yesilady@cs.man.ac.uk>
- CC: public-mobileok-checker@w3.org, Kentarou Fukuda <KENTAROU@jp.ibm.com>
Yeliz Yesilada wrote: [...] >> >> 3/ I think there is a useful distinction to be made between a subtest >> that can't be run because some data is missing, and a subtest that >> can't be run because it doesn't need to, i.e. if there are no objects >> in the page, the OBJECT_OR_SCRIPTS subtests de facto pass. The first >> possibility is what we're talking about. The second possibility may be >> of some use in the future (I'm not suggesting we implement it right >> now). In short, I would rather keep NOT_APPLICABLE to the second case, >> and use DATA_MISSING (I can't think of a better proposal, but the idea >> is to point out that the moki representation is incomplete) for checks >> on files. > > I agree. I think what Dominique suggested is a good idea: using > "cannotTell". Yes, good idea, thanks dom! > [...] > I think we need to think "why one would like to know if a *sub-test* > passed partially or not?". For example, in our application if a sub-test > can only be checked partially, then we have to use the Tester (URI) > version to check that again so it's enough to know that the a particular > sub-test cannot be tested. > > I am just not sure if these partial solutions would be useful or not. I > would rather prefer to keep the approach simple: > > subtests > ======= > - PASS/FAIL/WARN that can run normally > - CANNOTTELL if there is missing information > > tests > ==== > - PASS/FAIL/WARN that can run normally > - CANNOTTELL if any of the sub-tests return "CANNOTTELL" > > But do you still think it's important to have PARTIAL results? At the subtest level, there aren't so many subtests that are concerned. I think it would be useful to run EXTERNAL_RESOURCES-2 and -3 or PAGE_SIZE_LIMIT-2 to alert authors that their page is simply too big, because that's a core mobile limitation. That being said, it may be added in a second time. At the test level, I just think that we lose the ability to quickly point out the outcome of the test. You'll basically end up with the following in each and every check run on a file document: <tests outcome="CANNOTTELL"> <test name="CHARACTER_ENCODING_SUPPORT" outcome="CANNOTTELL"> [list of FAIL/WARN/CANNOTTELL results] </test> <test name="CONTENT_FORMAT_SUPPORT" outcome="CANNOTTELL"> [list of FAIL/WARN/CANNOTTELL results] </test> <test name="OBJECTS_OR_SCRIPT" outcome="CANNOTTELL"> [list of FAIL/WARN/CANNOTTELL results] </test> [...] </tests> Whilst totally correct, the overall outcome and the outcome of the tests mentioned above doesn't tell you whether there is a FAIL in one of the subtests or not. Sure enough, this can be sorted out by having a look at the list of <result />, but it's the same thing today: the outcome attribute is more a "visual" clue than a computational need (i.e. its value can be re-computed at any time by having a look at the list of results elements). By limiting ourselves to CANNOTTELL, we're dropping that "visual" clue: any report on a file will need to be parsed to see how many of the tests that could be run failed. Any tool can compute the corresponding PARTIAL_PASS/PARTIAL_FAIL pretty easily, but I guess I just like the idea to still have a notion of PASS/FAIL at the test and overall outcome level. Or... Another possibility is to have FAIL override CANNOTTELL. In other words compute the test outcome as: If any of the subtests outcome is FAIL, then test outcome is FAIL else if any of the subtests outcome is CANNOTTELL, then test outcome is CANNOTTELL else test outcome is PASS ... and about the same thing at the overall outcome level. Tools would still have to go through the list of results to tell which tests were only partially run, but at least, looking at a CANNOTTELL would tell you that "the thing looks great so far although not everything could be checked", while FAIL would keep its "something's wrong" meaning. It does work well provided that a FAIL in a file:// case always imply a FAIL in a http:// case, otherwise we would just raise a red flag that isn't a real one. I think that's almost true, except the uncertainty about <object> elements for computing included resources when files are handled. I can live with that. This could even be applied to subtests, and the net result is that we don't have to define more outcome values that carry orthogonal meanings. What about it? [...] Francois.
Received on Friday, 13 February 2009 13:58:35 UTC