Приспособление NullPointer в SheetCommandBase.java:152

У нас есть фитнес-тест, в котором мы проверяем данные из базы данных. База данных - Postgres, а столбцы в кавычках.

e.g.

SELECT * FROM "MYTABLE_ONE", WHERE "ID" = 123456;

Когда я запускаю скрипт в инструменте HSQL, он не возвращает записей, но работает, а в фитнес-тесте возвращает проблему с нулевым указателем в файле jdbcslim.jar (плагин)

Я проверил файл плагина, но я больше не знаю, где проверить / продолжить, так как это уже плагин Fitness.

Пожалуйста, надеюсь, что кто-то может дать мне немного света.

__EXCEPTION__:java.lang.NullPointerException at 

six42.fitnesse.jdbcslim.SheetCommandBase.getColumnValueByName(SheetCommandBase.java:152) [jdbcslim.jar]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.8.0_144]

jdbcslim.jar (152)

public String getColumnValueByName(String columnName) { return getColumnValueByNameFromRow(columnName, 1); }

  public String getColumnValueByNameFromRow(String columnName, int row)
  {
    List<String> Data = getRowValues(row);
    List<String> Header = (List)resultSheet.get(0);

    for (int i = 0; i < Header.size(); i++) {
      if (HeaderLine.isHeaderNameEqual((String)Header.get(i), columnName)) return (String)Data.get(i);
    }
    throw new RuntimeException("Column not found   (" + columnName + ").");
  }

person Yejin    schedule 19.06.2018    source источник


Ответы (1)


Как выглядит ваш тест? Если вы хотите убедиться, что в качестве вывода вашего запроса нет записи, вы можете использовать «getRowCount».

F.e.:

|script|SQLCommand |!-MyDatabase-!|
|run|{{{SELECT * FROM "MYTABLE_ONE" WHERE "ID" = 123456}}}|
|show|resultSheet|
|check|getRowcount|0|
person Unforgettable631    schedule 26.06.2018
comment
Спасибо за ответ. Мы обнаружили, что проблема связана с конфигурацией сервера базы данных. Спасибо. - person Yejin; 28.06.2018