You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
ソース変更での自動テスト実行 lein-autoexpectは、ソース変更を検知して自動でテストを実行してくれる、leiningen用のプラグインです。 もともとleiningenを使っていればテスト実行は楽ですが、このプラグインを使うことでさらに楽になります。 環境構築方法 今回使用した動作環境は以下のとおりです。 OS : MacOS X 10.7.5 leiningen : 2.3.1 leinコマンドが使える状態にしておいてください。 lein-autoexpectを試してみる 最初からプロジェクトを作ってもいいのですが、Githubからcloneしてくればそのまま試すことができるので、 持ってきてしまいましょう。
他の誰かが作成した検索プログラムやストアドファンクションを 修正させられる時に、 検索対象のテストデータとか プログラムに渡す検索パラメータのテスト用データを 必要なパターン分作成してテストするのだけど、 抜け漏れのないテストデータを簡単に生成できないものかと調べていたら、 PythonにもClojureにも組み合わせリストを作成してくれるライブラリがあった。 組み合わせデータを作成する 必要なパターンの組み合わせデータを自前で作成するのはなかなかめんどくさい。 例えば商品検索機能のテストデータを作成する際、 「商品データ」が 属性として「有効区分(0:無効、1:有効)」と「表示区分(0:非表示、1:表示)」を 持っていて、「有効」で「表示」の商品のみ検索結果に含まれる、 ということを確認したい場合に テストデータとしては「有効区分」2パターンと「表示区分」2パターンの 組み合わせで下記の
Clojureでテストを書く、というのはclojure.testというものを用いることで簡単に達成できます。 今回はTDDを進めていく体で、テストの書き方を紹介していこうと思います。 お題は簡単に行うためにFizzBuzz*1です。FizzBuzzについてはWeb上に多く紹介があると思いますので割愛させていただきます。 これからコードを書いていきますが、コードはdiffのように追加した行は"+"、削除された行は"-"をつけることにします。 TDD最初の一歩とisマクロ TDDの最初は、「まずはテストから」ですよね。 +(ns fizzbuzz + (:use clojure.test)) + +(is (= 1 (say 1))) ここでは"say"と言う関数が、引数に1を受け取ると1が期待されるということを書いています。 これを実行すると java.lang.Exception: Una
こんにちはこんにちは!!あやぴーです。 最近の仕事ではF#を使ったり、Clojureを使ったりすることが多いのですが、今日は久しぶりにClojureの話を書きます。 Clojureでテスト書くときに一緒に使うライブラリ何使ってますか? テスト対象が依存する関数をモックしたい - mockfn 複雑なデータ構造のdiffを簡単に知りたい(あるいはデータ構造の比較を簡単にやりたい) - matcher-combinators モックした関数が取る引数をスマートに制限したい - mockfn & matcher-combinators まとめ Clojureでテスト書くときに一緒に使うライブラリ何使ってますか? アプリケーションでユニットテストレベルのテストを書くとき、どういうライブラリを一緒に使っていますか?Kaocha?Midje?test.check?shrubbery?Flare? 今回
Git Repo ソースコードと原文が入ったレポジトリ https://github.com/MokkeMeguru/clj-web-dev-ja/tree/main/chap0 シリーズ Clojure x ClojureScript で深める Web 開発 (0) Clojure x ClojureScript で深める Web 開発 (1) Duct x Clean Architecture Clojure x ClojureScript で深める Web 開発 (2) 環境の構築 Clojure x ClojureScript で深める Web 開発 (3) API 作成入門 Clojure x ClojureScript で深める Web 開発 (4) Auth Clojure x ClojureScript で深める Web 開発 (5) API 開発 トランザクション添え C
Vim/Neovim 向けに Clojure の開発環境を提供するプラグイン vim-iced を使って Clojure 開発環境の構築をしてみましょう。 なお vim-iced は個人的に開発している拙作の Vim プラグインで、実際に私が業務で(勝手に)利用しているという実績があります。 前提 ゴール やること Clojure 実行環境のインストール vim-iced のセットアップ vim-plug のインストール 各種プラグインのインストール iced コマンドにパスを通す サンプルプロジェクトの作成 REPL 駆動開発への入り口 REPL への接続 コードを評価してみる 変更内容を即座に確認する テスト駆動開発への入り口 テストの作成 ソースの修正 リンター/フォーマッター の設定 clj-kondo による静的解析の設定 cljstyle によるフォーマットの設定 vim-ic
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? この記事は Clojure Advent Calendar 2019 18 日目の記事です。二年前に書いたキメるClojure高速開発が未だに読まれている気配があるので、情報を最新化し、現時点での意見をまとめようと思います。 当時の意見は特に Clojure 開発の高速性に注目し、短いスパンで進める個人開発に特に向いているというものでした。一方で経験にないため憶測でしたが、チームで進める中規模以上の開発にはあまり向かないのではないかと考えていました。しかし現在はチームとして Clojure を使って開発を行っているため今回はその観点から
Leiningenについて調べたので記録しておく。 Leiningenとは LeiningenはClojureのプロジェクトまわりの雑務をこなすツールである。ビルドやテストや依存するライブラリの管理などをこなす。JavaにおけるMavenに近いものである。 前回はLeiningenを使ってClojureのREPL起動までを行っ。今回はもうすこし詳しくLeiningenを調べたいと思う。 Leiningenのインストール 割愛する。GitHubから1.x系統を取得し、leinをPATHに設定しているものとする。今回の環境は次の通りである。 $ lein version Leiningen 1.7.1 on Java 1.6.0_24 OpenJDK 64-Bit Server VM lein versionでLeiningenのバージョンを確認している。Leiningenではこのようにlei
Awesome products in Clojure OneKeePass: A secure password manager and mobile app in ClojureScript Penpot: design and prototyping platform LightTable (IDE) (archived) Maria.cloud (Online IDE for beginners) Riemann (Monitoring) Precursor (Online prototyping tool) Puppet Server PuppetDB Metabase Metabase Datomic CircleCI Avi (vim rewrite) Liquid (Text Editor) Clojupyter meins Jepsen Braid: a team-cha
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く