gpt4 book ai didi

java - JDBC + DBUnit 未找到测试

转载 作者:行者123 更新时间:2023-12-01 16:45:39 25 4
gpt4 key购买 nike

我正在尝试为我的 DAOImpl 类编写一个测试,只需插入一个查询但测试不起作用,给出这样的错误:junit.framework.AssertionFailedError:在...中找不到测试

找不到有关此问题的任何信息。

测试类:

import org.dbunit.Assertion;
import org.dbunit.DBTestCase;
import org.dbunit.PropertiesBasedJdbcDatabaseTester;
import org.dbunit.dataset.IDataSet;
import org.dbunit.dataset.ITable;
import org.dbunit.dataset.xml.FlatXmlDataSetBuilder;
import org.junit.jupiter.api.Test;
import test.database.dao.DaoFactory;
import test.database.dao.interfaces.CoursesDao;
import test.models.Course;

import java.io.File;

import static org.junit.jupiter.api.Assertions.*;

public class CoursesDaoImplTest extends DBTestCase {

public CoursesDaoImplTest(String name) {
super(name);
System.setProperty(PropertiesBasedJdbcDatabaseTester.DBUNIT_DRIVER_CLASS, "org.postgresql.Driver");
System.setProperty( PropertiesBasedJdbcDatabaseTester.DBUNIT_CONNECTION_URL, "jdbc:postgresql://localhost:5432/school" );
System.setProperty( PropertiesBasedJdbcDatabaseTester.DBUNIT_USERNAME, "school_admin" );
System.setProperty( PropertiesBasedJdbcDatabaseTester.DBUNIT_PASSWORD, "admin" );
}

@Override
protected IDataSet getDataSet() throws Exception {
return new FlatXmlDataSetBuilder().build(new File(getClass().getClassLoader()
.getResource("/school-data.xml").getFile()));
}

@Test
public void TestAdd_ShouldAddCourse_WhenInputNewCourse() throws Exception {

Course course = new Course("Archery", "Description");

CoursesDao coursesDao = DaoFactory.getCoursesDao();
coursesDao.add(course);

IDataSet databaseDataSet = getConnection().createDataSet();
ITable actualTable = databaseDataSet.getTable("courses");

IDataSet expectedDataSet = new FlatXmlDataSetBuilder().build(new File(getClass().getClassLoader()
.getResource("/coursesDaoImplTest-add-expected.xml").getFile()));
ITable expectedTable = expectedDataSet.getTable("courses");

Assertion.assertEquals(expectedTable, actualTable);
}

}

最佳答案

DBTestCase 是一个 JUnit 4 类,您正在使用 JUnit 5 中的 @Test。需要决定使用哪个版本并进行相应更新。

此外,不要扩展 dbUnit 测试类,而是使用组合。

关于java - JDBC + DBUnit 未找到测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61782872/

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