gpt4 book ai didi

unit-testing - 如何为未导出的函数编写单元测试?

转载 作者:行者123 更新时间:2023-12-04 14:12:26 32 4
gpt4 key购买 nike

我有一个模块,我正在编写单元测试,以便与 travis.ci 一起运行。

在我的模块中,我对 Web 服务执行 HTTP POST 操作。

我的内部唯一功能之一validate_http_response()是我为环绕 Web 服务调用而创建的功能不可或缺的一部分,因此我想对其进行测试。但是,因为没有这样的export validate_http_response我的测试脚本无法“看到”该功能,并且出现错误:

validate_http_response not defined

我应该如何构建我的测试,这样我就不必将内部函数复制并粘贴到测试本身(其中有几个)?我想避免必须维护 srctest同时编写脚本。

编辑 除了接受的答案,我还发现我可以在测试脚本的开头执行以下操作: include("../src/myfunctions.jl") ,因为我对 src 中的每个文件都有一个单独的测试脚本.

最佳答案

查看 documentation在模块上以更好地了解命名空间的工作原理。 Julia 中没有强制可见性,因此您始终可以通过完全限定引用来访问任何模块中的导出或非导出函数。

所以在你的情况下,如果你的模块被命名为 HTTP , 你可以说 HTTP.validate_http_response访问您未导出的功能进行测试。

关于unit-testing - 如何为未导出的函数编写单元测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26628227/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com