TestNG无法获取MyBatis XML文件的解决方法

使用TestNG测试含有MyBatis的项目时,可能出现找不到XML文件的异常

org.apache.ibatis.binding.BindingException: Invalid bound statement (not found):

  • 假设你的MyBatis对应的XML文件都放在 src/main/resources/mapper 下
  • 编译后 target/classes 文件夹中会包含 mapper 文件夹
  • target/test-classes 文件夹中没有 mapper 文件夹 !所以报错

解决方法

pom.xml 文件中将 Test 的 resources 目录指向 src/main/resources

    <build>
        <testResources>
            <!--测试的时候直接读取src/main/resources的资源文件-->
            <testResource>
              <directory>${project.basedir}/src/main/resources</directory>
            </testResource>
        </testResources>
    </build>

参考文章:maven项目自动创建src/main/resources等四个资源文件夹

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章