0

我是 Lua 的初学者,我想在我的开发人员中使用单元测试。我决定使用busted一个简单易用的框架来做到这一点。

require "yaci"
require "busted"

foo = {}
foor.bar = newclass( "foo.bar" )
function foo.bar:doSomething() return "foo bar" end

describe("Unit tests for Foo.Bar", function()

    it("A first test", function()

        local to_test = foo.bar()
        local text = to_test:doSomething()

        local a = { test = say }
        local b = { test = "foo bar" }
        assert.same( a, b )

    end)

end

但是 foo.bar 看起来无法访问......

attempt to index global 'foo' (a nil value)

在他们之外describe是没有问题的。

有人可以解释一下为什么 foo.bar 无法访问describe吗?

谢谢

4

1 回答 1

1

最有可能的是,describe 函数设置了传递函数的环境,以防止它干扰其他代码文件。

于 2012-09-18T12:37:09.800 回答