scala - 将 ScalaTest 与 SBT android-sdk-plugin 一起使用

标签 scala sbt android-sdk-plugin

我正在尝试将 SBT 与 android-sdk-plugin 和 ScalaTest 结合使用,但没有成功。

我可以在 SBT 控制台中运行 test 命令,但它没有在我的 src/test/scala 文件夹中找到任何 ScalaTest 测试套件。

我从 SBT 得到以下输出,它似乎根本没有运行任何 ScalaTest 测试套件。

[info] Compiling 2 Scala sources and 3 Java sources to /home/brianhsu/AndroidProject/FindLost/target/android-bin/classes...
[info] Packaging /home/brianhsu/AndroidProject/FindLost/target/android-bin/classes.jar ...
[info] Done packaging.
[info] Packaging /home/brianhsu/AndroidProject/FindLost/target/scala-2.10/findlost_2.10-0.1-SNAPSHOT-tests.jar ...
[info] Done packaging.
[info] Run completed in 44 milliseconds.
[info] Total number of tests run: 0
[info] Suites: completed 0, aborted 0
[info] Tests: succeeded 0, failed 0, canceled 0, ignored 0, pending 0
[info] No tests were executed.
[info] No tests to run for test:test

以下是我创建项目的方式:

  1. 使用 android create project -g 创建具有 gradle 布局的 Android 项目。

  2. 添加addSbtPlugin("com.hanhuy.sbt"% "android-sdk-plugin"% "1.2.11")project/plugins.sbt 将 android-sdk-plugin 包含到我的项目中。

  3. 将 ScalaTest 添加到我在 build.sbt 中的 libraryDependencies 设置中,这使得构建文件如下所示:

    import android.Keys._
    
    android.Plugin.androidBuild
    
    name := "FindLost"
    
    scalaVersion := "2.10.4"
    
    organization := "org.bone.findlost"
    
    libraryDependencies += "org.scalatest" % "scalatest_2.10" % "2.1.0" % "test"
    
    platformTarget in Android := "android-19"
    
    run <<= run in Android
    
    install <<= install in Android
    
  4. 将 ScalaTest 测试用例添加到 src/test/scala,其中包含来自 QuickStart 的示例测试套件ScalaTest 页面。

最佳答案

将测试放在 src/androidTest/scala

android-sdk-plugin 使用 androidTest 进行 Android 仪器测试和常规测试。

参见 Ordinary scalatests not found from src/test #45讨论这个话题。请注意,自那次讨论以来,插件更改目录已更改为我列出的路径。

关于scala - 将 ScalaTest 与 SBT android-sdk-plugin 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22626485/

相关文章:

intellij-idea - 如何执行 SBT 托管的 JLine 类

sbt - SBT 中的 Def.task 和 .taskValue 是什么?

android - 在使用 Android SDK 插件编译 Scala Android 多项目期间,X 已被定义为对象 X

android - 如何找到 android 项目支持的实际最小 API 级别?

android-sdk-plugin 项目不知道 Android 类

scala - 如何在scala中对列表列表执行转置?

docker - Docker容器在运行sbt/play应用程序时停止运行而没有任何错误

scala - Play Framework 2 模板表单 None.get

scala - 如何在编译时强制执行非泛型类型

scala - 在代码中设置 akka TestKit 默认超时