4 ms·
> they don't have a requirement or test for it. Automated and thorough testing of client-side JavaScript is a huge, huge burden because you cannot simply run a
by DaiPlusPlus 5y ago
> they don't have a requirement or test for it.
Automated and thorough testing of client-side JavaScript is a huge, huge burden because you cannot simply run a script in isolation in a headless V8 instance or something: you need the entire browser and clone environment running.
Secondarily: the major tools for performing automated testing of web-applications within modern browsers are all lacking in some critical way, for example while Cypress automates Chrome fine, for some reason it loads the entire SUT into an <iframe>!!!! That alone will introduce massive differences from production, top-level browsing (the project is full of hacks that do things like re-write `window.top` so that the SUT can almost believe it's not running in an iframe, but enough differences leak through).
For all the effort Google put into Angular's Protractor, Chrome does not make this easy.
- jefftk 5y agoI've been pretty happy with the WebDriver protocol: https://developer.mozilla.org/en-US/docs/Web/WebDriver https://developer.mozilla.org/en-US/docs/Web/WebDriver Works across browsers and lets you simulate the user and check anything you want.
- muro 5y agoSure, it's technically possible, just very unstable.
- margaretdouglas 5y agoThe issue isn't that the testing is challenging. The ask here is Netflix covers all third-party Chrome plugins that manipulate the playback experience. Is it really Netflix's job to ensure all changes are compatible with third party tools like the one linked here, or others like Language Reactor?
- davidzweig 5y agoIf they wanted to, it wouldn't be much work for them to provide a stable API for such tools. Mostly it would involve making certain functions/properties that are internal to their modules/closures available on a global object. For Language Reactor, it would be helpful to have a handful of stable classes or ids on different HTML elements, and an email when major changes are incoming. Even just to have access to the new code early on in the rollout would be nice. There is a frantic two weeks every year where LR is breaking for users and we can't debug, because we don't have the new code yet.