{"action":"created","issue":{"url":"https://api.github.com/repos/jquery/qunit/issues/531","labels_url":"https://api.github.com/repos/jquery/qunit/issues/531/labels{/name}","comments_url":"https://api.github.com/repos/jquery/qunit/issues/531/comments","events_url":"https://api.github.com/repos/jquery/qunit/issues/531/events","html_url":"https://github.com/jquery/qunit/issues/531","id":27562634,"number":531,"title":"Standard reporter interface","user":{"login":"jzaefferer","id":52585,"avatar_url":"https://avatars.githubusercontent.com/u/52585?v=3","gravatar_id":"","url":"https://api.github.com/users/jzaefferer","html_url":"https://github.com/jzaefferer","followers_url":"https://api.github.com/users/jzaefferer/followers","following_url":"https://api.github.com/users/jzaefferer/following{/other_user}","gists_url":"https://api.github.com/users/jzaefferer/gists{/gist_id}","starred_url":"https://api.github.com/users/jzaefferer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzaefferer/subscriptions","organizations_url":"https://api.github.com/users/jzaefferer/orgs","repos_url":"https://api.github.com/users/jzaefferer/repos","events_url":"https://api.github.com/users/jzaefferer/events{/privacy}","received_events_url":"https://api.github.com/users/jzaefferer/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/jquery/qunit/labels/meta","name":"meta","color":"fef2c0"},{"url":"https://api.github.com/repos/jquery/qunit/labels/reporter","name":"reporter","color":"bfe5bf"}],"state":"open","locked":false,"assignee":{"login":"JamesMGreene","id":417751,"avatar_url":"https://avatars.githubusercontent.com/u/417751?v=3","gravatar_id":"","url":"https://api.github.com/users/JamesMGreene","html_url":"https://github.com/JamesMGreene","followers_url":"https://api.github.com/users/JamesMGreene/followers","following_url":"https://api.github.com/users/JamesMGreene/following{/other_user}","gists_url":"https://api.github.com/users/JamesMGreene/gists{/gist_id}","starred_url":"https://api.github.com/users/JamesMGreene/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JamesMGreene/subscriptions","organizations_url":"https://api.github.com/users/JamesMGreene/orgs","repos_url":"https://api.github.com/users/JamesMGreene/repos","events_url":"https://api.github.com/users/JamesMGreene/events{/privacy}","received_events_url":"https://api.github.com/users/JamesMGreene/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/jquery/qunit/milestones/2","html_url":"https://github.com/jquery/qunit/milestones/v2.0","labels_url":"https://api.github.com/repos/jquery/qunit/milestones/2/labels","id":353904,"number":2,"title":"v2.0","description":"","creator":{"login":"Krinkle","id":156867,"avatar_url":"https://avatars.githubusercontent.com/u/156867?v=3","gravatar_id":"","url":"https://api.github.com/users/Krinkle","html_url":"https://github.com/Krinkle","followers_url":"https://api.github.com/users/Krinkle/followers","following_url":"https://api.github.com/users/Krinkle/following{/other_user}","gists_url":"https://api.github.com/users/Krinkle/gists{/gist_id}","starred_url":"https://api.github.com/users/Krinkle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Krinkle/subscriptions","organizations_url":"https://api.github.com/users/Krinkle/orgs","repos_url":"https://api.github.com/users/Krinkle/repos","events_url":"https://api.github.com/users/Krinkle/events{/privacy}","received_events_url":"https://api.github.com/users/Krinkle/received_events","type":"User","site_admin":false},"open_issues":11,"closed_issues":9,"state":"open","created_at":"2013-06-12T16:55:24Z","updated_at":"2014-12-01T19:45:17Z","due_on":null,"closed_at":null},"comments":12,"created_at":"2014-02-13T23:42:06Z","updated_at":"2015-03-09T16:57:23Z","closed_at":null,"body":"We want to provide a reporter interface that we can share with other testing tools like Jasmine and Mocha, to make it easier for integration tools - like Karma, browserstack-runner, grunt plugins - to hook into QUnit and other tools. Anyone writing a new JavaScript testing tool should be encouraged to provide the same interface, making it more reasonable to support these tools.\r\n\r\nThis requires a bunch of research. So far we identified two components that need to be standardised:\r\n\r\n* needs a data format ala JUnit XML (here's an [unofficial xsd to validate the output](https://github.com/ygjb/XmlUnit/blob/master/JUnit.xsd)) or [TAP](http://testanything.org/tap-specification.html), that is flexible enough to support QUnit and others. Specifically, Jasmine and other BDD styles support (more or less) infinite nesting, which QUnit doesn't\r\n* need a list of events that provide this data. Something like `done` should provide the full datastructure, other events should help to output progress\r\n\r\nRelated tickets:\r\n* (#351) testDone should provide aggregated assertion results\r\n* (#405) Implement reporter interface\r\n* (#422) Implement QUnit callbacks event listener style\r\n* (#472) QUnit.done should provide aggregated results"},"comment":{"url":"https://api.github.com/repos/jquery/qunit/issues/comments/77894804","html_url":"https://github.com/jquery/qunit/issues/531#issuecomment-77894804","issue_url":"https://api.github.com/repos/jquery/qunit/issues/531","id":77894804,"user":{"login":"jzaefferer","id":52585,"avatar_url":"https://avatars.githubusercontent.com/u/52585?v=3","gravatar_id":"","url":"https://api.github.com/users/jzaefferer","html_url":"https://github.com/jzaefferer","followers_url":"https://api.github.com/users/jzaefferer/followers","following_url":"https://api.github.com/users/jzaefferer/following{/other_user}","gists_url":"https://api.github.com/users/jzaefferer/gists{/gist_id}","starred_url":"https://api.github.com/users/jzaefferer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzaefferer/subscriptions","organizations_url":"https://api.github.com/users/jzaefferer/orgs","repos_url":"https://api.github.com/users/jzaefferer/repos","events_url":"https://api.github.com/users/jzaefferer/events{/privacy}","received_events_url":"https://api.github.com/users/jzaefferer/received_events","type":"User","site_admin":false},"created_at":"2015-03-09T16:57:23Z","updated_at":"2015-03-09T16:57:23Z","body":"@asped08 you should check out https://github.com/js-reporters/js-reporters - starting with the readme there, then going into the open issues, there's plenty to read."}}