Testing (was: [Agenda] W3C Audio WG Teleconference, 13th June 2012)

Hi, Philip-

+1 on your comments and methodology.

Regards-
-Doug

On 6/13/12 5:21 AM, Philip Jägenstedt wrote:
> On Mon, 11 Jun 2012 17:29:22 +0200, olivier Thereaux
> <olivier.thereaux@bbc.co.uk> wrote:
>
>> The call will be held on June 13th at 3PM Boston time. That's noon in
>> San Francisco, 3PM in New York, 8PM in London, 9PM in Paris/Oslo and
>> 7am+1D in Auckland.
>
> Regrets from me. I have one comment on the agenda:
>
>> 1) Testing
>> Let's start the conversation about the testing effort for the Web
>> Audio API and MIDI API. There are already several initiatives and
>> tests produced, but no coordinated effort yet. Expected outcome: rough
>> agreement on type of test framework, nominate test lead(s).
>
> I think that we should use the W3C test harness, we use this at Opera
> for all of our new tests and I have no complaints about it:
>
> http://w3c-test.org/resources/testharness.js
>
> As for methodology, tests fall roughly into two categories:
>
> 1. Interface tests. This is things like asserting that "new
> AudioContext()" returns an object of the correct type, that it has the
> methods it should have, that calling ctx.createMediaElementSource() with
> no argument throws the appropriate exception, and so on. These tests are
> easy to write and to pass.
>
> 2. Semantic tests, to verify that the audio graph actually does the
> correct thing. In general, I think we should try to implement all native
> nodes in JavaScript and verify that the output is the same within some
> margin of error, a graph like:
>
> +------------+
> |            |
> | Oscillator |--+
> | (native)   |  |   +---------+   +------+
> +------------+  |   |         |   |      |
>                 +-->| Compare |-->| Sink |
> +------------+  |   | (JS)    |   |      |
> |            |  |   +---------+   +------+
> | Oscillator |--+
> | (JS)       |
> +------------+
>
> The sink (AudioDestinationNode) is there just to drive the pipeline, the
> compare node would just output silence.
>
> These tests are a lot more work to write, and should of course test
> every imaginable corner case of each node type.
>

Received on Wednesday, 13 June 2012 19:24:21 UTC