Scaloid といくつかのテスト プラットフォーム (ScalaTest と ScalaCheck を試しました) を使用して Android 用のプロジェクトを構築しようとしていますが、sbt に「test」または「testOnly *」と入力すると、テストがないように動作します私のプロジェクト。さらに奇妙なことに、StringSpecification.scala に意味不明なコードを記述しようとすると、コンパイルが実行され、この scala ファイルがテスト ビルドに含まれていないというヒントが表示されます。
これが私の build.sbt とテストです: https://gist.github.com/archeg/e5618c52f5661f494418
私のプロジェクト構造は次のとおりです。
wlan-client/
| -- src/
| |-- scaloid.powerwlan/ #- my sources
|
| -- test/
| |-- src/
| | | -- StringSpecification.scala
| | | -- My other tests....
|
| -- build.sbt
私のソースと私のテストは、標準的なフォルダーではありませんが、build.sbt でそれを反映しています。
私は Scaloid と Sbt の両方を使い始めたばかりなので、おそらく簡単なことを忘れたか間違っていたのでしょう。
重要な場合は、これを IntelliJ Idea でも実行しようとしていますが、IntelliJ Idea が私が書いている構文をチェックできる限り、sbt コンソールでのみ実行しても問題ありません。
ついにやった!なぜそれが機能するのかわからないので、誰かが私に説明できるなら、これを答えとして数えます:
私がしたことは、フォルダーを作成しtests
(最後に s を付けて)、 の下に置きましたwlan-client
。次に、このスレッドに従って入力しました: debugIncludesTests in Android := false
https://github.com/pfn/android-sdk-plugin/issues/45そして、ディレクトリマッピングも削除しましたbuild.sbt
build.sbt
debugIncludesTests 変数が必要な理由は理解していますが、tests
フォルダーが機能する理由がわかりません。規則に従っていないため、他のフォルダーが機能しないのはなぜですか?