1. ホーム
  2. scala

[解決済み] Scalaでテストリソースにアクセスするには?

2022-05-04 09:59:06

質問

あるファイル data.xmlsrc/test/resources/ .

どうすればそのファイルを新しい FileReader をテストします。 data.scalasrc/test/scala/ ?

解決方法は?

リソースへのアクセスは、特殊な getResource スタイルのメソッドを提供します。の例では data.xml である。 $SBT_PROJECT_HOME/src/test/resources/ というように、テストの中でアクセスすることができます。

import scala.io.Source

// The string argument given to getResource is a path relative to
// the resources directory.
val source = Source.fromURL(getClass.getResource("/data.xml"))

もちろん、その source はもう普通のScala IOオブジェクトなので、中身を読んだり、テストデータに使ったりと、何でもできます。

リソースを取得する方法は他にもあります(例えばストリームとして)。詳しくは getResource メソッドで Java Docs: クラス .