betterer
WebdriverIO
betterer | WebdriverIO | |
---|---|---|
5 | 37 | |
563 | 8,784 | |
- | 0.5% | |
4.3 | 9.9 | |
16 days ago | 5 days ago | |
TypeScript | TypeScript | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
betterer
-
How to Effortlessly Improve a Legacy Codebase Using Robots
We first took a shot at addressing this gradually using a tool called Betterer, which works by taking a snapshot of the state of a set of errors, warnings, or undesired regular expressions in the codebase and surfacing changes in pull request diffs. Betterer had served us well in the past, such as when it helped us deprecate the Enzyme testing framework in favor of React testing library. However, because there were so many instances of noImplicitAny errors in the codebase, we found that much like snapshot tests, reviewers had begun to ignore Betterer results and we weren’t in fact getting better at all. Begrudgingly, we removed the rule from our Betterer tests and agreed to find a different way to enforce it. Luckily, this decision took place just in time for Snoosweek (Reddit’s internal hack week) so I was able to invest a few days into adding a new automation step to ensure incremental progress toward adherence to this rule.
-
Betterer v5.0.0 5️⃣
Check out the beast of a PR here (and yes, it took me three branches to get it right 😅)
-
Incrementally adding Stylelint rules with Betterer
I just released v4.0.0 of Betterer 🎉 (now with sweet new docs!) and it has a bunch of simplified APIs for writing tests. And just before I shipped it, I got an issue asking how to write a Stylelint test, so let's do it here and explain it line by line:
-
Conventions Don’t Matter – What Matters Is Consistency
You may think that is a bad idea, and stops innovation and adopting new trends and technologies. I dare to disagree. New conventions can be agreed on, and when a new convention is agreed on, it should be used in the codebase from that day on. Either by refactoring the whole code base to follow the new convention, which should be doable if the previous convention was followed carefully, or by using tools such as phenomnomnominal/betterer to incrementally adopt a new convention, and stop anyone from adding new code that does not follow the newly agreed convention. It is equally important to document the agreed conventions and keep the documentation up-to-date over time in addition to making sure everyone on the team hears about and understands the agreed conventions.
-
Lazy debug logging for Node.js
I have a tool that I've been working on for a while, and debugging it can be kind of a pain - especially when it's running inside VS Code. It'd be nice to have an easy way to get information about what is going on when the tool runs, without having to manually write a bunch of debug logging code and release a new version. That means that the usual approaches are not going to work:
WebdriverIO
-
Learn Automated Testing At Home: A Beginner's Guide
3.WebdriverIO: WebdriverIO is another popular open-source test automation framework. Key Features: Integrates well with popular testing frameworks (e.g., Mocha, Jasmine). Supports both synchronous and asynchronous commands. Works with various browsers and platforms
- Mastering Performance Testing with WebDriverIO
- Webdriver.io: Next-gen browser and mobile automation test framework
-
Way to High Confidence: The Ideal Testing Trophy
Webdriver.io
- Setting up parallel cross browser tests and desktop within seconds using Webdriver.IO configuration wizard
-
Seeking Recommendations for the Best Mobile Automation Tool
There is a tool called webdriver.io which purports to handle mobile automation. I haven't had a chance to play with it yet but it's on my radar.
-
Browserstack - too expensive? Is our consultant SCAMMING us?
We recently hired an engineer to write us integration tests with webdriver.io. All of our other tests run fine in Github actions - rspec, javascript jest, etc.
-
How to fix Frontend Tests as a lazy developer
Your automated tests will act on behalf of a real user, open a real web browser (typically Chromium, Chrome, Firefox) using one an existing technology like Webdriver and add some syntactical sugar on top.
-
Battle-Testing Nx Console with E2E Tests
WebdriverIO (abbreviated as WDIO) is an E2E testing framework for Node.js. It allows you to automate all kinds of web and mobile applications using the Webdriver or Chrome DevTools protocols.
-
Can't access an element in a web page using DOM
i recall having to deal with elements inside iframes and shadow roots when using webdriver.io for testing. you can always inspect an element and copy the selector. if it is unique to the page it should work
What are some alternatives?
peeky - A fast and fun test runner for Vite & Node 🐈️ Powered by Vite ⚡️
Playwright - Playwright is a framework for Web Testing and Automation. It allows testing Chromium, Firefox and WebKit with a single API.
vitest - Next generation testing framework powered by Vite.
jest - Delightful JavaScript Testing.
n - Node version management
TestCafe - A Node.js tool to automate end-to-end web testing.
unimported - Find and fix dangling files and unused dependencies in your JavaScript projects.
nightwatch - Integrated end-to-end testing framework written in Node.js and using W3C Webdriver API. Developed at @browserstack
action-junit-report - Reports junit test results as GitHub Pull Request Check
Protractor - E2E test framework for Angular apps
rut - ⚛️ React testing made easy. Supports DOM and custom renderers.
CodeceptJS - Supercharged End 2 End Testing Framework for NodeJS