News for hackers. Stuff that matters.

wallabyjs

Re:Github1s – One second to read GitHub code with VS Code on Wednesday February 10, 2021 @07:38PM (#26096796)
Check out Dingo extension for VS Code, does exactly that for GitHub URLs + for npm packages by name too: https://marketplace.visualstudio.com/items?itemName=WallabyJ...
Re:Ava – Asynchronous test runner on Thursday November 26, 2015 @12:01AM (#10631361)
Wallaby.js author here. Just thought I'd mention that we are working on AVA and tape support in wallaby: https://github.com/sindresorhus/ava/issues/141
Wallaby.js supports PhantomJs. It also supports node.js/io.js for node tests, as well as for front-end tests with something like jsdom.

Karma is not slow, but some of our tests may be. Wallaby just allows not to run them if we are not editing anything that affects them.

Cross browser issues are always a pain, I know what you mean. However, I have realised that I can write the bulk of my code without worrying too much about them.

When I'm writing the bulk of logic, especially with TDD, I found that it's more efficient to run tests as fast as possible in the fastest engine and care about running across all browsers much less frequently. Especially if you run tests as you type.

Later on, closer to the end of the iteration, when preparing to commit my changes, I surely run all of the tests in all browsers/smartphones/tablets that I support. Typically it just works, especially when your codebase is mature, you already know the majority of cross-browser issue sources and have something in place to avoid them. Even if it doesn't work, the issues are normally easy to solve. Overall, less context switching, more focussed work.

Anyway, it's just my experience (you can read more about the motivation behind wallaby.js in my blog post - http://dm.gl/2015/01/30/wallaby/) and we are planning to support more browser runners, or even just karma as a runner for wallaby, in future. Please feel free to vote (https://github.com/wallabyjs/public/issues/29) or create new feature requests.

Running affected tests as fast as possible and running all of them in a variety of different browsers to make sure your code works everywhere - are two different tasks. Not like they are completely mutually exclusive, but it's hard to run something very fast, as you type your code, if you have to do it in multiple versions of IE/Chrome/FF and perhaps a smartphone/tablet at the same time. Easier to just use different tools at different stages - wallaby when you write code and tests, karma when you need to run them all in many browsers.
Wallaby.js is very different from a file watcher. File watcher would run all of your JavaScript tests and it can be very time consuming. Wallaby uses sophisticated dependency analysis and lots of other tricks to only run tests affected by your code changes, no more no less, so even in large codebases with lots of tests the feedback is delivered very fast.

Yep, wallaby can jump to failing test(s), error sources, show error details inline and much more.

Parallel execution in wallaby works fine with browser "state". Imagine running a half of your tests in one browser tab and another one in a second tab - that's what wallaby does but in 6 or 8 or N processes. As long as your tests set up context for themselves and don't depend on each other (and they shouldn't) - it all works.

These projects' focus is a bit different.

Karma was built to run all of your browsers tests in as many different browsers as possible.

Wallaby.js focuses on seamless integration with many code editors and on delivering instant feedback from your (both browser and node.js/io.js) tests.

Fair enough.

Wallaby.js will be less expensive than some similar commercial solutions for other languages.

In any case, feel free to sign up and to receive the pricing info as soon as it's available.

Always loved to put some epic music in my demos :)
We will most likely have a subscription model, so the tool will be very affordable to start using without any significant capital investments. We didn't put the pricing section on top because there's no pricing yet. The section is right next to the download one, so hopefully those who download - see it.
It's free at the moment, so feel free to try it. We will announce pricing and licensing in advance, so there'll be enough time to decide whether or not to keep using the tool.
We will at some point. Right now working on module loaders support (browserify, webpack), then will be adding more testing frameworks support. TypeScript/CoffeeScript next. Feel free to add feature requests/vote - https://github.com/wallabyjs/public/issues

Older »