When comparing Karma vs BusterJS, the Slant community recommends Karma for most people. In the question“What are the best JavaScript unit testing tools?” Karma is ranked 4th while BusterJS is ranked 9th. The most important reason people chose Karma is:
Do you prefer other test frameworks such as Mocha, Jasmine, qUnit or any other framework? Well you're in luck as Karma can be easiliy be extended to wrap around ANY framework of your choice.
Ranked in these QuestionsQuestion Ranking
Pros
Pro Easily extensible
Do you prefer other test frameworks such as Mocha, Jasmine, qUnit or any other framework? Well you're in luck as Karma can be easiliy be extended to wrap around ANY framework of your choice.
Pro Provides both Browser based testing as well as headless tests
Karma eases out the UI testing process as you can test your code on all your devices let it be smartphones, tablets or your very own desktop. If you don't want all of that, you always have the option of headless testing using a PhantomJS instance.
Pro Provides the option of running client/servers either separately or on the Development computer
These options are really helpful in cases, where you have the luxury of multiple machines (tablets, mobile phones desktops) around you.
Pro You can test your code in cross browser environments
Being able to test your code directly via your testing tool is a breeze! You don't need to download a fancy tool to see how your app looks in a number of different browsers, now that Karma would do the job for you.
Pro Has plugins for WebStorm and is supported by the Netbeans IDE
Thanks to Karma, you won't need to spawn up a new terminal just so that you can test your app, you can now code and test right from the IDE
Pro Supports deferring tests
No need to comment out your entire test case, now that you have Buster, which supports deferring a test so it doesn't actually run, but you get notified that there’s a deferred tests every time you run your test suite.
Pro Flexible; extend it to wrap other test-frameworks
Have your test cases written in another framework, want to use BusterJS to run the tests, then you're in luck. BusterJS can be easily wrapped around other test frameworks. If you need to know how to do it, here's a link that showing just that.
Pro Has support for NodeJS testing.
Working on a NodeJS app? BusterJS can help you Unit test it. This pretty much works just like browser tests, but you need to require Buster.JS in your tests.
Pro You have the option of either running tests headless or via the browser
Don't have time to go through the lengthy process of opening up your browsers? BusterJS gives you the option of performing Headless tests. These are powered by PhantomJS; hence all your testing is done within the command line.
Cons
Con No Support for NodeJS testing
Currently Karma doesn't support testing of apps built on NodeJS. So if you have a node app, you don't want to use Karma, Mocha or Jasmine can do the job for you.
Con No plugin for Eclipse (yet)
Do most of your code using Eclipse, well, you're in bad luck. Karma doesn't have an eclipse plugin, though if you are a real die hard eclipse fan, you can see this little hack to be able to run Karma from inside Eclipse Link
(Time of writing: July 2014)
Con Has no plugins for major IDE's (Eclipse/IntelliJ) yet.
Do you prefer running your test cases from inside your IDE? well BusterJS will make that a lot difficult for you if not impossible. You'll have to run Buster using the good old way of spawning up a new terminal for running the tests.
Con Currently still in Beta; some of the stuff still has bugs
Time of writing : 31st July 2014