Ich weiß, dass es viele andere ähnliche Fragen gibt, aber die Antworten bieten keine Möglichkeit, dieses Problem zu umgehen.Headless JavaScript Testing HTML5 Audio/Video
Ich habe eine JavaScript-Datei auf meiner Website verwendet, die die HTML 5 Web Audio verwendet und Einheit testen möchte.
ich mit QUnit mit PhantomJS ausgesehen haben und bevor Sie sagen, alles, was ich wissen das Phantom nicht unterstützt (http://phantomjs.org/supported-web-standards.html) jedoch möchte ich wissen, ob es einen Weg, um dieses ist?
Das Testen mit QUnit im Browser funktioniert wie erwartet, aber ich möchte es nicht jedes Mal mit dem Browser testen, ich möchte, dass es auf dem Server automatisiert wird.
Ein Beispiel für einen der Tests, die fehlschlägt:
QUnit.test("isPlaying", function(assert){
// true case
My.Sound.play("background");
assert.ok(My.Sound.isPlaying("background"), "The background audio is playing");
// false case
My.Sound.pause("background");
assert.ok(!My.Sound.isPlaying("background"), "The background audio is not playing");
});
Ich weiß nicht, ob QUnit mit SlimerJS läuft, aber wenn es das ist, können Sie dies mit SlimerJS + xvfb tun –
Sie können immer die gesamte Web Audio API verspotten ... aber scheint wie Overkill. Was Sie hier testen, ist HTML5 Web Audio, nicht Ihr eigener Code. – jakerella
Verwandte für automatisierte Tests mit SlimerJS und xvfb: https://askubuntu.com/questions/430247/which-packages-should-be-installed-on-ubuntu-server-so-it-will-be-able-to-- Spiel-v/430251 # 430251 –