tape vs Dimensions
When comparing tape vs Dimensions, the Slant community recommends tape for most people. In the question“What are the best tools for measuring web elements in the browser?” tape is ranked 1st while Dimensions is ranked 3rd. The most important reason people chose tape is:
Very simple API that doesn't require globals, or monkey patching objects for assertions.
Ranked in these QuestionsQuestion Ranking
Pros
Pro Simple API
Very simple API that doesn't require globals, or monkey patching objects for assertions.
Pro Built-in assert
This way you don't have to add more dependencies and external assertion libraries.
Pro No global functions
Tape does not use global methods such as "it", "describe", since they are not considered best practice in JavaScript.
Pro It follows the principles of TAP
TAP: Test Anything Protocol
Pro Measures visible not HTML elements
Dimensions takes a screenshot of the page and uses that to create a contour map via edge detection that can then be used to measure actual page elements instead of HTML elements. For example, Dimensions measures against contours of letters in text, through transparent backgrounds, etc
Cons
Con No concurrency
Cannot run async test cases concurrently for faster test builds.
Con Doesn't work well with gradients and textured backgrounds
Since Dimensions is based on color edge detection, color gradients and patterns tend to mess with the results. A simple workaround is to open Chrome's DevTools (or equivalent) and remove the offending DOM object.