We usually write full-stack Clojure apps, and for these our editor (Cider) powered testing is invaluable for TDD. We write tests and then write code to make those tests pass, quickly hopping from code to test and rerunning as necessary in just a couple of keystrokes. But how shall such testing work for front-end ClojureScript? We’ve even gone so far on some apps as to write as much as possible in cljc for the single purpose of allowing it to be logically checked by our back-end. For one while we used Etaoin GitHub - clj-commons/etaoin: Pure Clojure Webdriver protocol implementation but that is only checking the interface; it doesn’t hit the point of testing functions. Also, we test our routes with handler tests and mocks; we don’t need any CLJS testing for this.
With a full-stack app, which front-end things SHOULD be tested?
HOW do you test them (tooling, libraries, etc)?