4 ms·
> And Playwright isn't smart enough to understand that that is still the label for the <input> element. Helium is smart enough. I'm glad you like your project,
by mdaniel 2y ago
> And Playwright isn't smart enough to understand that that is still the label for the <input> element. Helium is smart enough.
I'm glad you like your project, and I'm sure there are others who will similarly enjoy that kind of magick. However, it's super disingenuous to write an example that asks a standards based API to find a non-existent element and then clutch pearls because it didn't find a non-existent element. page.get_by_label("I dunno, I didn't read, do what I am thinking").fill('lol') similarly would not work but that's not the awesome dunk you think it is
- mherrmann 2y agoIt's not disingenuous. The HN example was literally the first one I tried. It's what happens in the real world. The real world doesn't adhere to standards, much of the time.
- bdcravens 2y agoJust like what you've done with Selenium, such a wrapper could be written for Playwright (I think that's what most developers end up doing anyways, just in a more domain-specific manner)
- TimTheTinker 2y agoThis project was started long before Playwright existed. I's an OSS tool that had very good reason to be made the way it was at that time, and continues to be useful (in my opinion).
- bdcravens 2y agoIt is a useful tool, similar to others that accomplish the same task (WATIR and Capybara in Ruby, for example). My point was that the comparison of a wrapper to an underlying library is a bit apples to oranges, as a similar wrapper could be written for Playwright as well. I haven't looked at the code, but I assume Helium's API could be used to support Playwright (which itself was an evolution of Puppeteer).