首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用SBT编译测试,并将其打包以便稍后运行

使用SBT编译测试,并将其打包以便稍后运行
EN

Stack Overflow用户
提问于 2013-05-06 05:44:56
回答 1查看 8.1K关注 0票数 13

我正在使用SBT和Play!框架。目前,我们在我们的管道中有一个提交阶段,我们在这个阶段发布我们的二进制文件。二进制文件是使用dist任务生成的。然后管道运行冒烟和验收测试,这些测试是用scala编写的。它们是通过sbt运行的。

我想要做的是编译冒烟和验收测试以及二进制文件,并将它们发布到artifactory。这将允许管道下载这些二进制文件(测试套件)并运行它们,而不是每次都重新编译它们,这需要很长时间。

我尝试了sbt test:compile来生成jar,但是我找不到一种方法来运行测试。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-05-07 07:55:00

sbt不在工件中发布测试

代码语言:javascript
运行
复制
publishArtifact in GlobalScope in Test:== false

来源:https://github.com/sbt/sbt/blob/a7413f6415687f32e6365598680f3bb8545c46b5/main/src/main/scala/sbt/Defaults.scala#L1118

以下是启用它的方法

代码语言:javascript
运行
复制
// enable publishing the jar produced by `test:package`
publishArtifact in (Test, packageBin) := true

// enable publishing the test API jar
publishArtifact in (Test, packageDoc) := true

// enable publishing the test sources jar
publishArtifact in (Test, packageSrc) := true

来源:http://www.scala-sbt.org/release/docs/Detailed-Topics/Artifacts

运行测试

代码语言:javascript
运行
复制
scala -classpath pipeline.jar classpath scalatest-<version>.jar org.scalatest.tools.Runner -p compiled_tests

其中pipeline.jar是从管道接收的测试工件

或者您可以通过sbt设置一个测试项目

http://www.scala-sbt.org/release/docs/Detailed-Topics/Testing.html

票数 16
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16389446

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档