Introduction
In this chapter, we will learn about testing for Clojure applications. With our first recipe, we will introduce behavior-driven development. Making use of Cucumber for behavior-driven development, the recipe implements some interesting BDD applications, including Spark and OpenCV.
The next recipe, on pattern-based testing, shows you the famous Haskell's QuickCheck in Clojure. In this recipe, you will learn to generate test patterns automatically.
With our final recipe for this chapter, Benchmarking with Criterium, performance tips, and other tools, we will show you tests for performance. Criterium is the de facto benchmark tool in Clojure. You will learn how to test your performance using Criterium.
You will also learn some performance tips in Clojure. Last but not least, you will also learn how to profile your application from the performance point of view.