4 ms·
> access to a testing system that allows it to inject mouse events into a running instance of our application FWIW that's precisely what https://pptr.dev https
by utopiah 10mo ago
> access to a testing system that allows it to inject mouse events into a running instance of our application
FWIW that's precisely what https://pptr.dev https://pptr.dev is all about. To your broader point though designing a good harness itself remains very challenging and requires to actually understand what value for user, software architecture (to e.g. bypass user interaction and test the API first), etc.
- PaulDavisThe1st 10mo ago> Puppeteer is a JavaScript library which provides a high-level API to control Chrome or Firefox my world is native desktop applications, not in-browser stuff.
- nineteen999 10mo agoYou suggest a web testing framework as a response to someone working on a real desktop app?
- utopiah 10mo agoNo I was sharing an example of a framework that does include "a testing system that allows it to inject mouse events". That being said mouse events and similar isn't hard to do, e.g. start with a fixed resolution (using xrandr) then xdotool or similar. Ideally if the application has accessibility feature it won't be as finicky. My point though was just to show that testing with GUI is not infeasible. Apparently there is even a "UI Testing for devs & agents" https://www.chromatic.com https://www.chromatic.com which I found via Visual TDD https://www.chromatic.com/blog/visual-test-driven-development/ https://www.chromatic.com/blog/visual-test-driven-developmen... I can't recommend this but it does show even though the person I was replying with can't use Puppeteer in their context the tooling does exist and the principles would still apply.
- PaulDavisThe1st 10mo ago> My point though was just to show that testing with GUI is not infeasible. Indeed, which is why I mentioned the ProTools test harness and the fact that it took 6 people a year to write and takes a week to run (or took a week, at some point in the past; it might be more or less now).