问题标签 [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.
unit-testing - 在 OCaml 中为模块编写单元测试的正确方法
我在module.mli
文件中有一个给定的接口规范。我必须在module.ml
文件中写下它的实现。
module.mli
提供抽象类型
我正在使用 OUnit 来创建测试。我需要在其中使用类型的实现。(例如比较值)一种解决方案是扩展接口以包含测试中使用的附加功能。
但是有没有可能在不修改界面的情况下做这样的事情呢?
ocaml - 使用 dune 运行 OUnit 测试
我在运行 OUnit 测试时遇到了困难,主要是因为我对沙丘和 OUnit 都不熟悉。dune
我跑步时抱怨dune runtest
:
这是项目结构:
这是dune
:
这是test/dune
:
我可以看到出现错误是因为 dune 不知道f.ml
,因此不知道f
dune 文件中的 about 。
如何以了解我使用的库f.ml
的方式进行 dune 编译?如何正确运行单元测试?test/dune
f
test/f_test.ml
ocaml - 是否可以在 Ocaide 中使用 OUnit?
我正在尝试在 Eclipse 中使用 Ocaide,并且需要使用 OUnit。我找到的所有说明都是在命令行中使用它。我尝试通过添加来编辑运行配置,-pkgs oUnit
但这不起作用。我在其他地方找到了带有标志和参数的指令,-package oUnit -linkpkg -g
因此我尝试将其放入,但 IDE 仍然无法识别 OUnit 的存在。
我的文件只有
没有别的了。编译器抛出一个错误,指出模块未绑定。
我通过 OPAM 安装了 OCaml 和 OUnit,在 Linux Mint 上运行。
ocaml - OCaml:当我将包添加到命令行时,Ocaide 不再执行新的字节码
我在 Linux Mint 上使用 Ocaide,当我运行一个文件时,print_string "TEST";;
它会按预期打印。现在我想写一些代码并使用 OUnit,所以我把它放在open OUnit2;;
最上面。它给出了一个模块未绑定的错误,很好,我右键单击文件并打开属性,在 OCaml Module 下的字段中添加命令行标志,我输入package -oUnit -linkpkg -g
并且错误消失了。但是,我将打印行更改为print_string "Other test"
,现在它继续打印原始消息“TEST”。
似乎,使用命令行标志,字节码不再更新。在添加标志之前,它会在文件保存时正确更新字节码。
我尝试将标志添加到模块而不是包中。我也尝试过在两者中都有标志。没有一个有效。
当我打开运行配置时,包含项目名称、可执行文件和命令行参数的字段似乎都是正确的。
当我打开终端并导航到 Eclipse 工作区中的项目并在那里运行可执行文件时,它仍然会打印旧消息“TEST”。
它没有显示编译或其他错误。
在命令行我可以执行ocamlfind ocamlc -o test -package oUnit -linkpkg -g test.ml
,这成功地创建了一个文件,test
当我运行它时,它有更新的消息“其他测试”。
ocaml - Dune 的 OUnit 测试问题
我有一个具有这种结构的项目:
在src/dune
中,我有以下内容:
在test/dune
:
当我去跑步时dune build
,我得到了抱怨:
关于如何解决的任何想法?
ocaml - ocaml 中 uncurry 的单元测试
到目前为止,我的实施我似乎无法理解问题出在哪里
ocaml - OUnit2 未绑定模块
我正在编写我的第一个 Ocaml+OUnit2+Dune 项目。但是在我的单元测试中,当我说打开 Mymaps 时,它会显示“未绑定模块 Mymaps”
我的项目结构如下
mymaps_test.ml 的内容
mymaps.mli 的内容
mymaps.ml 的内容
测试/沙丘文件的内容
lib/dune 文件的内容
这是 Github 的链接https://github.com/abhsrivastava/mymaps.git
请让我知道为什么我的测试无法打开模块。为什么它说未绑定模块 Mymaps。(我也尝试过小写的 mymaps 和 MyMaps,但它就是看不到它)。