問題タブ [ounit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ocaml - モジュールケース名の混乱
ソフトウェアの更新を間違えたため、OUnit テストを実行できません。
問題を単純な REPL セッションに要約することができたと思います。
私が間違っていることはありますか?
デフォルトの大文字と小文字を区別しない/大文字と小文字を保持するファイルシステムを備えたMacラップトップでこれを実行していますが、インクルードパスの大文字と小文字を区別しても役に立ちません。
私のより大きな問題は次のように現れます。
makefile - ocamlbuild と OUnit
次のような構造のプロジェクトがあります。
はMakefile
次のようなものです。
を実行するmake tests
と (ビルド後にmain.byte
)、次のエラーが返されます。
ocamlbuild
にリンクできないことを示していますmain.byte
。見た目のtests
ルールはどうあるべきですか?Makefile
ocaml - OUnit.assert_equal の文字列の違いのプリティ プリンター
OUnit.assert_equal ~pp_diff
期待値/実際の値の違いをきれいに印刷できOUnitDiff
、コレクションの違いを提供しているようです。
pp_diff
ただし、文字列値の在庫はありますか? 理想的には、diff を最も近い UTF-8 シーケンス境界に拡張するために最善を尽くすものです。
一般的なプレフィックス/サフィックスを削除しても、何もないよりはましです。
ocaml - ocaml ounit テストを同時実行しないように設定するには?
現在、単体テストを実行するために次のものがあります。
問題は、test_1 と test_2 に一部の TCP 通信が含まれており、ポートが共有されていることです。順番に実行する必要がありますが、順序は気にしません。
編集:コマンドライン引数を指定して、それらを順番に実行できます
しかし、ソース コードでこのオプションをデフォルトにするにはどうすればよいでしょうか。
unit-testing - pa_ounit を使用した OCaml モジュールの単体テスト
いくつかのインライン pa_ounit テストでテストする単純なモジュールがあります。ディレクトリをオアシス スタイルでセットアップし、すべてをビルドしました。
私が使用している参照用: https://github.com/janestreet/textutils
上記のレポの単体テストをどのように実行しますか? 書き込む実行可能な .ml ファイルがあると仮定していますが、これには何が含まれているのでしょうか。それはどのように構築され、モジュール レベルで記述されたテストを何らかの方法で拡張しますか?
pa_ounit のドキュメントを読みましたが、混乱するだけです。
ocaml - ローカル ディレクトリでの ocamlfind の使用
ワークステーションにルート アクセス権がないため、oUnit をローカルの ~/ounit にインストールしました。実行すると、モジュールをインタープリターにロードできます
テストを実行したいので、コンパイルしてみます。
残念ながら、ocamlfind は oUnit パッケージを検出しません。
私は何を間違っていますか?
ocaml - oUnit の長いテスト スイートをプログラムで処理する
私のテストスイートは次のようになります
テスト スイートの粗さを軽減する方法はありますか? (いくつかの for ループを使用するなど)