java - 运行测试时在其他模块中搜索资源文件

标签 java scala testing module

我有一个包含 5 个模块的项目。当我尝试为特定模块运行测试时,出现路径不存在错误,因为测试正在其他模块中寻找资源。

这是我想通过的路径

src/test/resources/data/stg.csv

这是我的项目结构

enter image description here

我如何让它在我需要的模块中测试寻找资源?

编辑

我尝试为模块 ucp... 运行测试,该模块正在引用 agg..,后者又开始在第三个模块 actuall 中搜索资源。 ..。有趣的是,一个确实有效(只有 5 个中的一个有效)并且所有路径都以相同的方式传递。

代码

  override def beforeAll(): Unit = {
    super.beforeAll()
    parameters = Parameters(TestUtils.args)

    loadTestTables(spark, parameters)
  }

  def loadTestTables(implicit spark: SparkSession, parameters: Parameters): Unit = {
    createTable(path, Table.schema, parameters.TABLE_STG_FAIR_DEBT)

  }

  def createTable(path: String, scheme: StructType, tableName: String, delimiter: String = "\t")(implicit spark: SparkSession): Unit = {
    spark.read.schema(scheme)
      .format("com.databricks.spark.csv")
      .option("delimiter", delimiter)
      .option("nullValue", "")
      .load(path)
      .createOrReplaceTempView(tableName)
  }

最佳答案

问题出在工作目录中。

编辑配置->工作目录->选择模块路径

关于java - 运行测试时在其他模块中搜索资源文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52892012/

相关文章:

java - 当前如何从 Android 应用程序更新 Twitter 状态的最简单示例是什么?

java - 如何获取已在 Java Servlet 上下文中设置的全局对象

scala - 如何使ScalaCheck的任意值始终生成一些特殊情况值?

unit-testing - Java EE 测试策略

ruby-on-rails - 无需通过路由即可测试 Controller

java - Java 中的外部鼠标监听器

java - 使用网络服务器部署 OSGI bundle 时出现无限循环

generics - Scala 集合中的泛型类

java - iframe 中的 Scala Play 框架 URL 不起作用

javascript - 正则表达式测试如何只返回完全匹配