gpt4 book ai didi

testing - 如何让 buildr 对 jar 而不是类进行测试?

转载 作者:行者123 更新时间:2023-11-28 20:41:19 25 4
gpt4 key购买 nike

当我运行 buildr test 时,它甚至没有构建我的包。这似乎是 Buildr 的正常行为,它可能认为在验证代码可以工作之前不应创建包。

问题是,我目前正在尝试解决一个仅在从 jar 运行代码时才会发生的问题。如果我运行我的测试,它们都会通过,但代码在生产中根本不起作用。

因此,我会在运行测试之前构建包,并且只将包用于测试。这也可能有助于持续集成,我们喜欢将编译与测试分开,因为测试更容易分成单独的 block 。

有什么办法吗?

(我认为 test.using :integration 会是诀窍,但不是......它在运行时打印出不同的信息,但它仍然跳过构建包然后继续运行针对裸文件。)

最佳答案

我们通过创建另一个依赖于第一个项目的输出的项目来实现这一点,然后对其进行测试。即我们的集成测试的一个例子看起来像

define 'myproject' do
...
define 'server' do
...
package(:jar)
end
...
define 'integration-tests' do
# Either add it as a dependency
test.with project('server').package(:jar)
# Or manually load jar so the classpath
# can be explicitly controlled and pass in system
# property to locate jar
test.enhance([project('server').package(:jar)])
test.using :properties =>
{
'jar.filename' => project('server').package(:jar).to_s,
}
end

大多数情况下,我们在测试 war 文件时这样做,但它也应该适用于常规 jar。希望对您有所帮助!

关于testing - 如何让 buildr 对 jar 而不是类进行测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31332944/

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