Нет вывода на тест Junit: завершено через 0,098 секунды.JAVA

Программисты JAVA общаются здесь
Anonymous
Нет вывода на тест Junit: завершено через 0,098 секунды.

Сообщение Anonymous »

У меня есть следующий тест Junit, проблема в том, что я не получаю никаких результатов (PASS/FAIL) при запуске теста, появляется единственная информация: Завершено через 0,098 секунды.
Я предполагаю, что это POM проблема с зависимостями, но я не могу ее сузить, буду очень признателен за любую помощь.

Код: Выделить всё

import static org.junit.Assert.assertEquals;
import static org.mockito.ArgumentMatchers.anyString;
import static org.powermock.api.mockito.PowerMockito.*;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.Statement;
import java.sql.SQLException;
import java.sql.DriverManager;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.Mockito;
import org.powermock.core.classloader.annotations.PrepareForTest;
import org.powermock.modules.junit4.PowerMockRunner;

import com.google.gson.JsonArray;
import com.google.gson.JsonObject;

@RunWith(PowerMockRunner.class)
@PrepareForTest({DatabricksQueryExecutor.class, DriverManager.class})
public class DatabricksQueryExecutorTest {

@Mock
private Connection mockConnection;

@Mock
private Statement mockStatement;

@Mock
private ResultSet mockResultSet;

@Mock
private ResultSetMetaData mockResultSetMetaData;

@InjectMocks
private DatabricksQueryExecutor executor;

@Test
public void testReadUnityTableDataAsJson() throws Exception {
mockStatic(DriverManager.class);
when(DriverManager.getConnection(anyString())).thenReturn(mockConnection);

when(mockConnection.createStatement()).thenReturn(mockStatement);
when(mockStatement.executeQuery(anyString())).thenReturn(mockResultSet);
when(mockResultSet.next()).thenReturn(true, false);

when(mockResultSet.getMetaData()).thenReturn(mockResultSetMetaData);
when(mockResultSetMetaData.getColumnCount()).thenReturn(2);
when(mockResultSetMetaData.getColumnName(1)).thenReturn("id");
when(mockResultSetMetaData.getColumnName(2)).thenReturn("name");
when(mockResultSet.getString(1)).thenReturn("1");
when(mockResultSet.getString(2)).thenReturn("John");

JsonArray result = executor.readUnityTableDataAsJson(mockConnection, "SELECT * FROM unity_table");

assertEquals(1, result.size());
JsonObject jsonObject = result.get(0).getAsJsonObject();
assertEquals("1", jsonObject.get("id").getAsString());
assertEquals("John", jsonObject.get("name").getAsString());

// Verify method calls
Mockito.verify(mockConnection, Mockito.times(1)).createStatement();
Mockito.verify(mockStatement, Mockito.times(1)).executeQuery("SELECT * FROM unity_table");
Mockito.verify(mockResultSet, Mockito.times(1)).next();
Mockito.verify(mockResultSetMetaData, Mockito.times(1)).getColumnCount();
Mockito.verify(mockResultSetMetaData, Mockito.times(2)).getColumnName(Mockito.anyInt());
Mockito.verify(mockResultSet, Mockito.times(1)).getString(Mockito.anyInt());

Mockito.verifyNoMoreInteractions(mockConnection, mockStatement, mockResultSet, mockResultSetMetaData);
}

@Test
public void testReadUnityTableDataAsJsonEmptyResultSet() throws Exception {
mockStatic(DriverManager.class);
when(DriverManager.getConnection(anyString())).thenReturn(mockConnection);

when(mockConnection.createStatement()).thenReturn(mockStatement);
when(mockStatement.executeQuery(anyString())).thenReturn(mockResultSet);
when(mockResultSet.next()).thenReturn(false);

JsonArray result = executor.readUnityTableDataAsJson(mockConnection, "SELECT * FROM unity_table");

assertEquals(0, result.size());

Mockito.verify(mockConnection, Mockito.times(1)).createStatement();
Mockito.verify(mockStatement, Mockito.times(1)).executeQuery("SELECT * FROM unity_table");
Mockito.verify(mockResultSet, Mockito.times(1)).next();
verifyNoMoreInteractions(mockConnection, mockStatement, mockResultSet, mockResultSetMetaData);
}

@Test(expected = SQLException.class)
public void testReadUnityTableDataAsJsonSQLException() throws Exception {
mockStatic(DriverManager.class);
when(DriverManager.getConnection(anyString())).thenThrow(new SQLException("Mock SQL Exception"));

executor.readUnityTableDataAsJson(mockConnection,  "SELECT * FROM unity_table");
}
}


Зависимости POM:
< div class="snippet">

Код: Выделить всё

    

org.springframework.boot
spring-boot-starter-web


org.springframework.boot
spring-boot-starter-tomcat




org.springframework.boot
spring-boot-starter-jetty




org.springframework.boot
spring-boot-starter-actuator


io.micrometer
micrometer-registry-prometheus


org.springframework.boot
spring-boot-starter-oauth2-resource-server


org.springframework.boot
spring-boot-starter-security




org.powermock
powermock-module-junit4
2.0.9            
test


org.powermock
powermock-api-mockito2
2.0.9            
test


junit
junit
4.13.2
test



Я обнаружил аналогичную проблему, связанную с зависимостями, но в данном случае я не могу этого понять

Подробнее здесь: https://stackoverflow.com/questions/783 ... 98-seconds

Вернуться в «JAVA»