gpt4 book ai didi

java - junit5 无法识别 csv 文件

转载 作者:行者123 更新时间:2023-12-05 08:50:49 26 4
gpt4 key购买 nike

我正在尝试在 junit 5 的帮助下为一个类编写一些测试。我已经使用 Maven 导入了依赖项但是当我尝试使用注释 @CsvFileSource(resources = "/teSTList.csv") 导入一个 csv 文件以用作测试用例时我得到这个错误

org.junit.platform.commons.PreconditionViolationException: Classpath resource [/testlist.csv] does not exist

这是我正在运行的代码

 package com.faezeh.shayesteh;

import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.CsvFileSource;
public class MultipleOperationParamTest {
@ParameterizedTest

@CsvFileSource(resources = "/testlist.csv")
void testMultipleOpWithCsvFileSrc(int operand, int data, int result){
MultiplyOperation multop = new MultiplyOperation(operand);
int actual = multop.operate(data);
Assertions.assertEquals(result,actual);

}
}

这就是我的目录排序方式 enter image description here

我需要提一下,当我不使用 Maven 作为框架并按如下方式对我的目录进行排序时,它工作正常并且没有问题 enter image description here

最佳答案

由于 CSV 文件位于 com.faezeh.shayesteh 包中,您必须指定相应的类路径位置:

@CsvFileSource(resources = "/com/faezeh/shayesteh/testlist.csv")

查看target/test-classes/,这是测试类路径根目录(/)。如果将 CSV 文件放在 src/test/resources/ 中,您将直接在根路径下找到它。这样您就可以坚持使用 resource = "/teSTList.csv"

关于java - junit5 无法识别 csv 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61171050/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com