Я новичок в модульном тестировании. У меня есть сборка веб-приложений Java в Netbeans 8.1 и Maven. Я создал этот класс, чтобы попытаться проверить запросы в моей базе данных PostgreSQl:
public class DatesUtil {
private Collection<Menusistema> listamenus = new LinkedList<>();
private Menusistema menu= new Menusistema();
private String nombreBuscar = null;
private static final EntityManager entityManager;
static {
entityManager = Persistence.createEntityManagerFactory("com.controlpersonal.pu").
createEntityManager();
}
public static EntityManager getEntityManager() {
return entityManager;
};
public DatesUtil() {
}
@BeforeClass
public static void setUpClass() {
}
@AfterClass
public static void tearDownClass() {
}
@Before
public void setUp() {
}
@After
public void tearDown() {
}
// TODO add test methods here.
// The methods must be annotated with annotation @Test. For example:
//
@Test
public void hello() {
buscarTodo();
}
public void buscarTodo(){
findAll(Menusistema.class);
}
public <T> List<T> findAll(Class<T> clazz) {
return (List<T>) getEntityManager().createQuery("SELECT p FROM " + clazz.getSimpleName() + " p", clazz).getResultList();
}
}
Я получил следующую ошибку, когда щелкнул правой кнопкой мыши по netbeans и выбрал: Тестовый файл:
[EL Info]: 2018-04-30
20: 30: 57.78 - ServerSession (252553541) - EclipseLink, версия: Eclipse
Постоянные услуги - 2.5.2.v20140319-9ad6abd [EL Severe]: ejb:
2018-04-30 20: 30: 57.836 - ServerSession (252553541) - Исключение
[EclipseLink-7060] (Службы постоянства Eclipse -
2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.ValidationException Exception
Описание: Невозможно получить источник данных [jdbc / controlpersonal].
Внутреннее исключение: javax.naming.NoInitialContextException: необходимо
указать имя класса в окружении или системном свойстве, или как апплет
параметр или в файле ресурсов приложения:
java.naming.factory.initial
Мой файл persistence.xml:
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">
<persistence-unit name="com.controlpersonal.pu" transaction-type="JTA">
<jta-data-source>jdbc/controlpersonal</jta-data-source>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties/>
</persistence-unit>
</persistence>
Я действительно хотел бы проверить, возможно ли это. Заранее спасибо!