Automated tests Fitnesse NullPointer位于SheetCommandBase.java:152

Automated tests Fitnesse NullPointer位于SheetCommandBase.java:152,automated-tests,fitnesse,fitnesse-slim,Automated Tests,Fitnesse,Fitnesse Slim,我们有一个健康测试,在那里我们检查数据库中的数据。 数据库是Postgres,列在引号中 e、 g 从“MYTABLE_ONE”中选择*,其中“ID”=123456 当我在HSQL工具中执行脚本时,它不会返回任何记录,但会正常工作 在适应性测试中,它在jdbcslim.jar文件(插件)中返回空指针问题 我确实检查了插件文件,但我不再知道在哪里检查/继续,因为它已经是一个健身插件 希望有人能给我点启示 __EXCEPTION__:java.lang.NullPointerException at

我们有一个健康测试,在那里我们检查数据库中的数据。 数据库是Postgres,列在引号中

e、 g

从“MYTABLE_ONE”中选择*,其中“ID”=123456

当我在HSQL工具中执行脚本时,它不会返回任何记录,但会正常工作 在适应性测试中,它在jdbcslim.jar文件(插件)中返回空指针问题

我确实检查了插件文件,但我不再知道在哪里检查/继续,因为它已经是一个健身插件

希望有人能给我点启示

__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)

公共字符串getColumnValueByName(String columnName){返回getColumnValueByNameFromRow(columnName,1);}
公共字符串getColumnValueByNameFromRow(字符串columnName,int行)
{
列表数据=getRowValues(行);
列表头=(列表)结果表.get(0);
对于(int i=0;i
您的测试看起来怎么样?如果要验证没有记录作为查询的输出,可以使用“getRowCount”

F.e.:


谢谢你的回复。我们发现问题出在数据库服务器的配置上。谢谢
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 + ").");
  }
|script|SQLCommand |!-MyDatabase-!|
|run|{{{SELECT * FROM "MYTABLE_ONE" WHERE "ID" = 123456}}}|
|show|resultSheet|
|check|getRowcount|0|