TMF vs JasUnit
comparison of testing frameworks
What are the differences between TMF and JasUnit?

TMF

JasUnit

Ruby

JavaScript

Unit Testing

Unit Testing

TMF is a minimal testing tool for ruby

TMF is a very small testing tool, it's not even a gem, you just copy the code and you're done. it uses just two methods to test: assert and stub

JasUnit is a slim unit testing framework for JavaScript, following the general design principles of xUnit.

For testing your code, JasUnit allows you to: Create test fixtures with any number of test methods; Implement setup() and teardown() methods which are run before and after each test; Specify a namespace for a fixture for easy organisation of tests; Use the default or custom logger (default appends results to a given element); Use assertions from any scope - this isn't necessary or even really advised, but some people prefer it.

xUnitSet of frameworks originating from SUnit (Smalltalk's testing framework). They share similar structure and functionality.

No

Yes

JasUnit follows the general design principles o xUnit

Client-sideAllows testing code execution on the client, such as a web browser

Yes

JasUnit is primarily used to test front-end code and functionality

Server-sideAllows testing the bahovior of a server-side code

Yes

You can test back-end components with TMF

No

FixturesAllows defining a fixed, specific states of data (fixtures) that are test-local. This ensures specific environment for a single test

No

Yes

With JasUnit you can Create test fixtures with any number of test methods Implement setup() and teardown() methods which are run before and after each test

Group fixturesAllows defining a fixed, specific states of data for a group of tests (group-fixtures). This ensures specific environment for a given group of tests.

No

Yes

JasUnit allow you to create group fixtures

GeneratorsSupports data generators for tests. Data generators generate input data for test. The test is then run for each input data produced in this way.

No

LicenceLicence type governing the use and redistribution of the software

N/A

MocksMocks are objects that simulate the behavior of real objects. Using mocks allows testing some part of the code in isolation (with other parts mocked when needed)

No

Yes

It provides inbuilt Mocking capabilities

GroupingAllows organizing tests in groups

No

N/A

OtherOther useful information about the testing framework

How to run parallel tests on your CI server to execute 1-hour test suite in 2 minutes?

Do you wait 15 minutes or even hours to run tests? Slow tests mean wasted developers time

Have you tried to run tests in parallel? How to split tests across parallel CI jobs to avoid bottleneck job?

Run tests on CI with Knapsack Pro to ensure parallel jobs finish work at a similar time. Get the fastest CI build time!

Without Knapsack Pro

you have to wait 20 minutes for slow tests running too long on red node

Loading...

Run fast parallel CI build with Knapsack Pro

CI build completes work in only 10 minutes because Knapsack Pro ensures all parallel nodes finish work at a similar time

Loading...

You can even run 20 parallel nodes to complete your CI build in 2 minutes

How it works

1. Install Knapsack Pro client in your project

2. Add Knapsack Pro client to your current CI server and run your tests in parallel

Knapsack Pro in Queue Mode will split tests in a dynamic way across parallel CI nodes to ensure each CI node finishes work at a similar time.
Thanks to that your CI build time is as fast as possible. It works with many supported CI servers.

We are using CircleCI and we noticed that builds were being limited by the slowest parallelized container. Knapsack Pro was really east to setup and we saw huge improvements right away. Thank you for making this tool!

I just logged into my account expecting it to say that I needed to add a credit card and was so surprised and delighted to see the trial doesn't count usage by calendar days but by testing days! This is incredible! I love it!!!

I just wanted to say that I really appreciate that small but very huge feature. Thank you for being so thoughtful :)