Requiring Namespaces

A test namespace has a singular purpose to test a matching application namespace. Therefore the idiomatic approach is to :refer specific functions from clojure.test as those functions are used.

The namespace to be tested is referred using the alias SUT meaning software under test. The alias highlight the exact functions being tested in the body of the code. This provides a visual way to separate functions under test with other test functions, especially if there are helper functions or vars used for test data.

Clojure Unit Testining - using SUT alias

(require '[clojure.test :refer [are deftest is testing]])

The namespace under test should be referred, typically using the alias SUT for software under test.

(require '[practicalli.playground :as SUT])

Add clojure.test to the namespace definition along with the namespace under test.

(ns practicalli.app-namespace-test
  (:require '[clojure.test :refer [are deftest is testing]]
             [practicalli.app-namespace :as SUT]))

SUT alias - system under test

The alias SUT, meaning system under test, is a common convention in software testing. Using the SUT alias makes it easier for developers to see which functions from the application are being tested at a glance.

results matching ""

    No results matching ""