【问题标题】:Julia-lang - function testingJulia-lang - 功能测试
【发布时间】:2018-05-08 16:07:18
【问题描述】:

我正在 Julia 中开发一组函数,我必须开发一组覆盖测试。我有一个函数可以在一个元组中返回 3 个值。

如何进行如下测试:

@test_approx_eq_eps()

这将适用于所有三个输出值,所有这些都是浮点数?

【问题讨论】:

  • 有点不清楚你在问什么。您要检查它们是否彼此大致相等,还是与另外 3 个值相等?

标签: testing tdd julia


【解决方案1】:

只需使用任何风格的循环:

julia> using Base.Test: @test_approx_eq_eps

julia> ns = tuple(ones(3)...)
(1.0, 1.0, 1.0)

julia> x = 1.0
1.0

julia> epsilon = 0.0
0.0

julia> for n in ns    # simple loop
           @test_approx_eq_eps n x epsilon
       end

julia> [@test_approx_eq_eps(n, x, epsilon) for n in ns]    # comprehension
3-element Array{Void,1}:
 nothing
 nothing
 nothing

julia> foreach(ns) do n    # foreach (doesn't return anything)
           @test_approx_eq_eps n x epsilon
       end

julia> test_aprox_eq_eps(n, x, epsilon) = @test_approx_eq_eps(n, x, epsilon)
test_aprox_eq_eps (generic function with 1 method)

julia> test_aprox_eq_eps.(ns, x, epsilon)    # broadcasting
(nothing, nothing, nothing)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-23
    • 2020-12-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多