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