This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2017-04-02
Channels
- # arachne (1)
- # bangalore-clj (3)
- # beginners (4)
- # boot (6)
- # cider (3)
- # cljs-dev (14)
- # cljsrn (2)
- # clojure (309)
- # clojure-ireland (1)
- # clojure-russia (7)
- # clojure-spec (10)
- # clojure-uk (5)
- # clojureremote (2)
- # clojurescript (68)
- # cursive (7)
- # emacs (7)
- # luminus (3)
- # lumo (21)
- # off-topic (14)
- # om (1)
- # onyx (53)
- # perun (3)
- # re-frame (4)
- # slack-help (14)
- # unrepl (56)
- # untangled (3)
@qqq I think the appeal of Midje is that it appears to have all the bells and whistles anyone could ever need. However, when it comes to testing, often simpler is better. A testing library can be about 100 lines of code.
IMO you don't need a testing DSL, if your base language is good enough. Which Clojure is.
And like every library Midje offers a tradeoff: a DSL and new semantics for easier to read tests. I think that's the tradeoff that many new developers don't see, and so they think Midje will just make their code more understandable. But in reality it's a DSL, and the new semantics will come back to bite them in the future.
@tbaldridge love your “hate" for DSLs !
I'm trying to tone that down. As I stated in my ClojureWest talk, libraries offer value in exchange for a tradeoff. A DSL is a new language and semantics, so I rank it rather high on the tradeoffs list.
Some are worth the cost of learning, like logic or query DSLs.
your talk is great ! I recognized some pattern from your Youtube channel
@tbaldridge : so what do you use then? spec? or something else?
@qqq use for?
@tbaldridge : what do you use for testing if not midje ?
Testing, I use Clojure.test although even that could be simpler.
For testing all you really need is an assert and a way to gather and run tests.