Giter Club home page Giter Club logo

jdbcslim's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

jdbcslim's Issues

Allow SQL to be passed 'preformatted'

When SQL statements become more complex it is nice to format them in the wiki (so they can be across multiple lines and can have some indentation).
At the moment we cannot pass such SQL to SQLCommand, as it gets the HTML formatted version and tries to pass that to the JDBC driver, which (suprise! :-)) does not understand SQL surrounded between <pre> and </pre> tags.

SQLCommand could check whether the SQL starts and ends with these tags, and remove them if present before passing to the JDBC driver.

Sample usage based on part of PlugIns.JdbcSlim.XxTestMoreDrivers.HtwoTest.Tests.7UsingSqlInScriptsAndScenarios

!define SQL { {{{
select Name
from TestData
where
  ID = '@id'
}}} }

|scenario|The Id              |id   |is Named|name|and Has Phone|phone|
|execute |${SQL}                                                      |
|show    |success                                                     |
|show    |rawResult                                                   |
|show    |resultSheet                                                 |
|check   |getColumnValueByName|NAME |@name                            |
|#                                                                    |
|execute |{{{
select *
 from TestData
  where ID = '@id'
}}}|
|show    |success                                                     |
|show    |rawResult                                                   |
|show    |resultSheet                                                 |
|check   |getColumnValueByName|Phone|@phone                           |

Add method to do simple single query

When using jdbc slim in a larger test (where database work is only a minor part) it is often desirable to execute a single query (sometimes just an update, sometimes to get one or two values to store in variables) as part of a script (possibly via a scenario).
This is already quite possible with SQLCommand, but it requires a couple of script lines for each query. It would be nice to be able to do the query in a single line (possibly having SQLCommand as a library) and only need an additional line to store a result column in a variable.

I'm thinking of a single method to combine: opening connection, execute the query, check success and close the connection. So instead of:

...
|open connection|
|execute|<query>|
|ensure|success|
|close connection|
|$var=| get column value by name |<name>|
...

One could do something like:

...
|run|<query>|
|$var=| get column value by name |<name>|
...

I'm thinking of a 'run' method along the lines of:

public boolean run(String command) {
  boolean result = false;
  openConnection();
  try {
    execute(command);
    result = success();
  } finally {
    closeConnection();
  }
  return result;
}

What do you think?

Show / use resultsheet without header columns

I couldn't find it in the documentation, but is there a way to use the resultsheet or when echo-ing the resultsheet (or both) without printing the header columns?

For example, I want to use / generate an outcome for another scenario.

!|script|SQLCommand|TestDatabase|
|run|${query}| --> output of this are multiple rows 'for example insert queries' I want to use without header columns
|$savedResultQuery=|resultSheet|

!|script|SQLCommand|OtherDatabase|
|run|${savedResultQuery}|

Or by just printing it with a parameter like?

|!-Table:SheetEcho-!|$savedResultQuery|ShowNoHeaders|

I'd like a select where you can store the returned value of a cell in a variable

!|SQLCommand|StartupDatabase|SELECT TOP 1 * FROM BV.Bands|Query        |
|BandName?  |BandLeader?    |BandAge?                    |BandCount?   |
|=~/.*/     |=$firstLeader? |=~/.*/                      |=~/.*/|=~/.*/|
*!

|Import           |
|fitnesse.fixtures|

|Library                      |
|fitnesse.fixtures.EchoFixture|

!|script|echo fixture   |
|show   |echo|$firstLeader|

This would for instance allow for checks for equality between values from different tables.

Trouble with installation regarding root page and suite setup page

Dear six42,

I'm currently also in the proces of setting up a FitNesse instance together with your JdbcSlim solution for database testing. However I'm getting stuck on the installation page at the end, as you state: "!2 To build your own test pages 1. include this page on the root page of your suite 2. include the SuiteSetup page or a page with similar content in the setup of your suite" What page do you mean at point 1, with 'this page'? And do you have an example (screenshot or something alike) of both point 1 and 2, the root page and the SuiteSetup page regarding the content needed?

Thanks in advance!

You can always reach me on: [email protected]

Regards,

Michael Klijn

Surplus and Missing rows not reported

I'm migrating my old DBFit tests to JDBCSlim. One feature that DBFIT had that I'm now missing was the ability to report missing and surplus rows.
Currently in JDBCSlim when I've got a row missing or surplus in the beginning or middle of my expected output, it throws the rest of the table off, instead of identifying the mistake.

Would it perhaps be possible to do row matching on unique (set of) values?

JdbcSlim not working with CsvDriver

In order to query a CSV file I'm trying to setup jdbcslim with CsvDriver in my FitNesse project. First step is to get the CsvDriver tests (PlugIns.JdbcSlim.XxTestMoreDrivers.CsvDriver.Tests.1ASimpleExample) to work. I'm however not able to get them to pass. Jsdbslim seems to call an unimplemented method on CsvDriver.

Failing_PlugIns JdbcSlim XxTestMoreDrivers CsvDriver Test

Full stacktrace:

__EXCEPTION__:java.lang.UnsupportedOperationException: Method not supported: Connection.prepareCall(String) at org.relique.jdbc.csv.CsvConnection.prepareCall(CsvConnection.java:624) [csvjdbc-1.0.36.jar] at six42.fitnesse.jdbcslim.SQLCommand.dbExecute(SQLCommand.java:119) [jdbcslim-1.2.4.jar:1.2.4] at six42.fitnesse.jdbcslim.SQLCommand.execute(SQLCommand.java:85) [jdbcslim-1.2.4.jar:1.2.4] at six42.fitnesse.jdbcslim.SheetCommandBase.execute(SheetCommandBase.java:88) [jdbcslim-1.2.4.jar:1.2.4] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.8.0_201] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [rt.jar:1.8.0_201] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.8.0_201] at java.lang.reflect.Method.invoke(Method.java:498) [rt.jar:1.8.0_201] at fitnesse.slim.fixtureInteraction.SimpleInteraction.methodInvoke(SimpleInteraction.java:256) [fitnesse-standalone.jar:20191110] at fitnesse.slim.fixtureInteraction.SimpleInteraction.callMethod(SimpleInteraction.java:241) [fitnesse-standalone.jar:20191110] at fitnesse.slim.fixtureInteraction.SimpleInteraction.invokeMethod(SimpleInteraction.java:223) [fitnesse-standalone.jar:20191110] at fitnesse.slim.fixtureInteraction.SimpleInteraction.findAndInvoke(SimpleInteraction.java:185) [fitnesse-standalone.jar:20191110] at fitnesse.slim.MethodExecutor.findAndInvoke(MethodExecutor.java:18) [fitnesse-standalone.jar:20191110] at fitnesse.slim.FixtureMethodExecutor.execute(FixtureMethodExecutor.java:18) [fitnesse-standalone.jar:20191110] at fitnesse.slim.StatementExecutor.getMethodExecutionResult(StatementExecutor.java:139) [fitnesse-standalone.jar:20191110] at fitnesse.slim.StatementExecutor.call(StatementExecutor.java:112) [fitnesse-standalone.jar:20191110] at fitnesse.slim.instructions.CallAndOptionalAssignInstruction.executeInternal(CallAndOptionalAssignInstruction.java:30) [fitnesse-standalone.jar:20191110] at fitnesse.slim.instructions.Instruction.execute(Instruction.java:29) [fitnesse-standalone.jar:20191110] at fitnesse.slim.ListExecutor$Executive.executeStatement(ListExecutor.java:49) [fitnesse-standalone.jar:20191110] at fitnesse.slim.ListExecutor$Executive.executeStatements(ListExecutor.java:43) [fitnesse-standalone.jar:20191110] at fitnesse.slim.ListExecutor.execute(ListExecutor.java:85) [fitnesse-standalone.jar:20191110] at fitnesse.slim.SlimServer.executeInstructions(SlimServer.java:82) [fitnesse-standalone.jar:20191110] at fitnesse.slim.SlimServer.processOneSetOfInstructions(SlimServer.java:75) [fitnesse-standalone.jar:20191110] at fitnesse.slim.SlimServer.tryProcessInstructions(SlimServer.java:62) [fitnesse-standalone.jar:20191110] at fitnesse.slim.SlimServer.serve(SlimServer.java:47) [fitnesse-standalone.jar:20191110] at fitnesse.slim.SlimService.handle(SlimService.java:169) [fitnesse-standalone.jar:20191110] at fitnesse.slim.SlimService.acceptOne(SlimService.java:177) [fitnesse-standalone.jar:20191110] at fitnesse.slim.SlimService.accept(SlimService.java:139) [fitnesse-standalone.jar:20191110] at fitnesse.slim.SlimService.startWithFactory(SlimService.java:92) [fitnesse-standalone.jar:20191110] at fitnesse.slim.SlimService.main(SlimService.java:57) [fitnesse-standalone.jar:20191110]

Is there a way to make CsvDriver work with jdbcslim or is this a bug?

`getRowCount()` should return 0 if first non-header row does not have values

Currently getRowCount() just counts the number of rows beyond the header, but if no results are returned there is a first row. So getRowCount() returns 1.
But that first row does not have any values, leading to errors later on when one calls getColumnValueByName().

When a query returns no results the 'row count' should be 0, correct?

Is that empty row required for the usage as 'table', or could it just be removed altogether?

Getting Method not found for Inputs and Output column While using SQLCommand

Hi,

I am trying to use jdbcslim on my project. It is giving me an error "Method ORDER_NUMBER[0] not found in six42.fitnesse.jdbcslim.SQLCommand." I am getting this for all the input and output columns for SQLCommand fixture.

e.g: I am expecting ORDER_NUMBER, TASK_DESCRIPTION and STATUS as output of a query. When i run my test i get an Method not found error.

Appreciate your help!

Make jdbcslim releases available in Maven Central

To include jdbc in a FitNesse installation it would be nice if jdbcslim could be obtained from Maven Central, and not just from the GitHub releases page.

Especially in corporate environments downloading stuff from GitHub is often not allowed, whereas they often have a proxy for Maven Central which allows them to get dependencies from there.

To be added to Maven Central the project has to be open source (which it is not currently based on its LICENSE.txt), which also makes it easier to introduce in corporate environments.

Initial setup of upload is a bit of a hassle, but uploading releases after that (or adding more libraries/projects), is not much work at all. I suggest using Sonatype OSS Repository Hosting: http://central.sonatype.org/pages/ossrh-guide.html

[CI/CD pipeline] java.lang.Exception: java.lang.RuntimeException: decrypt of *** failed. Wrong Key Store used?

When running tests usin jdbcslim within a pipeline using a docker image (Ubuntu 20.04 LTS) I always seem to get this exception:
java.lang.Exception: java.lang.RuntimeException: decrypt of *** failed. Wrong Key Store used?

My keystore is located in <project_name>/wiki/keyStore/.dbfit.jks
In my "Define Properties" table I've tried the following options:

| .keyStoreLocation | ./keyStore  |
| .keyStoreLocation | ./keyStore/ |
| .keyStoreLocation | keyStore    |
| .keyStoreLocation | keyStore\   |

All seem to work when running them on Windows (IntelliJ), but not in the pipeline.
I'm currently using jdbcslim as a dependency in my already existing project pom.xml.

Compare large dataset; compare result options?

I think it's not an issue, more a question about using the compare functionality.

Situation
I've setup a test to compare the outcome (source vs target). Ideally the test result doesn't find any differences. In our case we're not ready yet and a few differences will occur. The outcome is a large dataset (3000+ rows) on two columns. At the moment in the outcome there are only 5 differences, but on the testpage there are more then 1000 + differences which is causing confusion. I think I'm missing an ouputparameter or so to determine how the resultsheets must be compared? Which options are there for result-comparison?

I hope the question is clear. Details about the testpage and a grep of the testresult added below.
I expect in the grep only two differences in the final resultsheet, row 2 and 5:
Values:
[1],[b] and [2],[f]

Here's how the compare page looks like:


!|Define Properties|Source                     |
|key               |value                      |
|jdbcDriver        |SQLDriver                  |
|DBURL             |${connection_url}|
|DBUSER            |user                       |
|.keyStoreLocation |keystore                   |
|DBPASSWORD        |password                   |
|#DBAUTOCOMMIT     |true                       |
|CMD               |${source_query}            |
|query             |true                       |

!|Define Properties|Target                     |
|key               |value                      |
|jdbcDriver        |SQLDriver                  |
|DBURL             |${connection_url}|
|DBUSER            |user                       |
|.keyStoreLocation |keystore                   |
|DBPASSWORD        |password                   |
|#DBAUTOCOMMIT     |true                       |
|CMD               |${target_query}            |
|query             |true                       |


!|Script   |SQLCommand|Source|
|open connection             |
|execute                     |
|$RSSource=|resultSheet      |
|close connection            |

!|Script   |SQLCommand  |Target   |
|open connection                  |
|execute                          |
|$RSTarget=|resultSheet           |
|$RSDiff=  |compareSheet|$RSSource|
|close connection                 |


!|Table:SheetEcho|$RSDiff|

Grep of the sheetresults and compare flags:

_Source result_
[TABLE_NAME],[COLUMN_NAME]
[1],[a]
[1],[b]
[2],[c]
[2],[d]
[2],[e]

_Target result_
[TABLE_NAME],[COLUMN_NAME]
[1],[a]
[2],[c]
[2],[d]
[2],[e]
[2],[f]


_Compare_
[report:TABLE_NAME, report:COLUMN_NAME],
[pass:1, pass:a],
[fail:[2] expected[1], fail:[c] expected[b]],
[pass:2, fail:[d] expected [c]],
[pass:2, fail:[e] expected [d]],
[pass:2, fail:[f] expected [e]]

SQLServer binary data column when queried value misses 0x prefix

Problem:
With an MS SQLServer database, when I do a WHERE query on a value from a binary(32) column, and use a value obtained from an earlier query, I have to prefix the value in the WHERE query with 0x .
That's not nice, because what I want is to be able to use the value as it was returned from the earlier query.

Explanation:
In a SQL server database I have table KNT_0104_Zaak_Werksoort that has 5 columns,
one of which is KLM_Zaak_Werksoort_HKey with type binary(32) .

https://learn.microsoft.com/en-us/sql/t-sql/data-types/binary-and-varbinary-transact-sql?view=sql-server-ver16
states:

binary [ ( n ) ]

Fixed-length binary data with a length of n bytes, where n is a value from 1 through 8,000. The storage size is n bytes.

I do first a query that returns values from the first row,
and I store the value of KLM_Zaak_Werksoort_HKey in slim variable firstKey .
Next I want to check that a query with a WHERE clause on that value of firstKey ,
returns a result from matching row 1.

I find that in the WHERE clause, I need to prefix the value for the firstKey, with 0x .
Otherwise the second query won't match any row.

!* query first row
!|SQLCommand             |StartupDatabase|SELECT TOP 1 * FROM BV.KNT_0104_Zaak_Werksoort|
|KLM_Zaak_Werksoort_HKey?|MD_GeldigVan?  |MD_GeldigTot?    |MD_LaadDatum?   |MD_Bron?   |
|$firstKey=             |=~/.*/         |=~/.*/           |=~/.*/          |=~/.*/     |
*!

!* where query
!|SQLCommand            |StartupDatabase|SELECT MD_GeldigVan FROM BV.KNT_0104_Zaak_Werksoort WHERE KLM_Zaak_Werksoort_HKey = 0x%KLM_Zaak_Werksoort_HKey%|
|KLM_Zaak_Werksoort_HKey|MD_GeldigVan?                                                                                                                  |
|$firstKey             |=~/.*/                                                                                                                         |
*!

I looked in the jdbcslim code, at where the value that is assigned to firstKey, is obtained :

six42.fitnesse.jdbcslim.SQLCommand  convertRSIntoTable :

    while (rs.next()) {
      oneRow = new ArrayList();
      for (int i = 1; i <= columnCount; i++) {
>>>     oneRow.add(rs.getString(i));
        if (Properties().isDebug()) System.out.println("Row:" + i + ":" + rs.getString(i));
      }
      appendOrExtendRow(resultTable, oneRow, rowCount++, extend, summaryOnly);
    }

I see that rs is an object of type
com.microsoft.sqlserver.jdbc.SQLServerResultSet
and from the ms sqlserver jdbc driver (mssql-jdbc-11.2.1.jre11.jar) .

Question:
Should the getString() method from SQLServerResultSet add the prefix 0x .
Of should method convertRSIntoTable from SQLCommand add the prefix ,
by using something more advanced than getString() ?

SQLCommand - dbExecute:Method not supported

I'm getting an error when I'm running SQLCommand fixture.
Database execution failed:Method not supported

I'm referring the example Constructor with two parameter and below is how my test page looks like:

!define TEST_SYSTEM {slim} 

|import|
|six42.fitnesse.jdbcslim|

|define table type|
|SQLCommand|as Table|

'''Connect to Database'''

!| Define Properties | DatabaseSetup |
| key | value |
| jdbcDriver | org.apache.hive.jdbc.HiveDriver |
| DBURL | jdbc:hive2://host:port/default | 
| DBUSER | user |
| DBPASSWORD | pass |

!| SQLCommand | DatabaseSetup | SELECT value as test_value FROM mytable |
|test_value?|     ---->>  Database execution failed:Method not supported
|N|

Is there anything I'm missing here?

Make dbfit dependency optional

As far as I've been able to establish (in code and documentation) dbfit is only needed for encryption.

If that is correct can the code be updated to make this dependency optional (i.e. no direct references to its dbfit.util.crypto.Crypto* classes in PropertiesLoader)?

dbfit, with its dependencies when gotten from Maven Central or GitHub, is quite big (+- 18MB) so not adding it to a test project when it is not actually used seems desirable to me.

execute script from file

Now before anything else, I did not look very hard yet, but how would I go and start an SQL script from a file? This would be useful for really huge datasets...

Another one would be how to do a test to compare two result sets from two queries, to do a source/target compare?

Sort option in compare resultset?

Before I'll make something for our project I just want to make sure it isn't covered already in the existing jdbcSlim code :). I read the manual and scanned the sources.

Situation
We're using two different databases (Oracle & Sap Hana). We have a testcase querying both of them and the result has to be compared. Both databases have a different algorithm implemented for order by sorting (one binary sort and the other I forgot). Unfortunately adjusting this implementation is not an option (at the moment).

The problem here is the outcome of the result sheets. Because the ordering differs from each other, it will be marked as differences (while in fact there are no differences in this case).

Grep resultsheets:

$RSSource<-[[[sourcetable<, targettable<], .....[CRG_EXG_TEXT, A1_RANDOM], [CRG_EXG_Z, A2_RANDOM], [CRG_0AC_TEXT, A1_RANDOM], [CRG_0ASSET_TEXT, A2_RANDOM], .....]]

$RSTarget<-[[[SOURCETABLE, TARGETTABLE], .....[CRG_0AC_TEXT, A1_RANDOM], [CRG_0ASSET_TEXT, A2_RANDOM], [CRG_EXG_TEXT, A1_RANDOM], [CRG_EXG_Z, A2_RANDOM], .....]]


|Table:SheetEcho| $RSDiff|
|sourcetable<|targettable<|
|.....many records above|.....many records above|
|[+]CRG_0AC_TEXT|[+]A1_RANDOM|
|[+]CRG_0ASSET_TEXT|[+]A2_RANDOM|
|CRG_EXG_TEXT|A1_RANDOM|
|CRG_EXG_Z|A2_RANDOM|
|[-]CRG_0AC_TEXT|[-]A1_RANDOM|
|[-]CRG_0ASSET_TEXT|[-]A2_RANDOM|
|many records below...|many records below...|

I would like to see there is no difference, because all 4 rows are present in the resultsheet.
Testpage looks something like:

!define source_query {select a.table as "sourcetable<", b.table as "targettable<" from db 1 order by 1,2}
!define target_query {select c.table as sourcetable, d.table as targettable  from db 9 order by 1,2}

!|Define Properties|Source                     |
|key               |value                      |
|jdbcDriver        |SQLDriver                  |
|DBURL             |${connection_url}          |
|DBUSER            |user                       |
|.keyStoreLocation |keystore                   |
|DBPASSWORD        |password                   |
|#DBAUTOCOMMIT     |true                       |
|CMD               |${source_query}            |
|query             |true                       |

!|Define Properties|Target                     |
|key               |value                      |
|jdbcDriver        |SQLDriver                  |
|DBURL             |${connection_url}          |
|DBUSER            |user                       |
|.keyStoreLocation |keystore                   |
|DBPASSWORD        |password                   |
|#DBAUTOCOMMIT     |true                       |
|CMD               |${target_query}            |
|query             |true                       |

!|Script   |SQLCommand|Source|
|open connection             |
|execute                     |
|$RSSource=|resultSheet      |
|close connection            |

!|Script   |SQLCommand  |Target   |
|open connection                  |
|execute                          |
|$RSTarget=|resultSheet           |
|$RSDiff=  |compareSheet|$RSSource|
|close connection                 |


!|Table:SheetEcho|$RSDiff|

I know if we could use 'SQLCommand | db | query| outputparameter SORT|' outcome of the sorting is for both results the same.

Workaround could be defining the sql statement better, but do you have any advice in this?

Problem to use SQLCommand

I run this code, but get a failure said `

SQLCommand DatabaseSetup[?] select id, name from report where name ='%name%'
id? name
2 Method id[0] not found in six42.fitnesse.jdbcslim.SQLCommand. Detailed Event Audit Method setName[1] not found in six42.fitnesse.jdbcslim.SQLCommand.

`

Could you give a full example?

`
!define TEST_SYSTEM {slim}

|Import |
|six42.fitnesse.jdbcslim|

|Define Properties|DatabaseSetup |
|key |value |
|jdbcDriver |org.relique.jdbc.csv.CsvDriver |
|DBURL |jdbc:oracle:thin:@192.168.100.1:1521/chn|
|DBUSER |user|
|DBPASSWORD |password|
|CMD | |

|Script|SQLCommand|DatabaseSetup|
|open Connection |

|SQLCommand|DatabaseSetup|select id, name from report where name ='%name%'|
|id? |name |
|2 |Detailed Event Audit |

`

compilation error

I am running into compilation errors when using the ant script to compile. I added fitnesse-standalone.jar (06112016 version) and dbfit.jar, all compilation errors are on the fitnesse file.
Let me try with the version before that or can you tell me what version you used to compile?

SQLCommand ends in IndexOutOfBoundsException

When using SQLCommand we sometimes get an IndexOutOfBoundsException.

!|SQLCommand|Database|select bla from test where bla in('This', 'That')|sort|
|bla?<|
|This |
|That |
__EXCEPTION__:java.lang.IndexOutOfBoundsException: Index 1 out of bounds for length 0
at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64) [n/a]
at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70) [n/a]
at java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:248) [n/a]
at java.base/java.util.Objects.checkIndex(Objects.java:372) [rt.jar]
at java.base/java.util.ArrayList.get(ArrayList.java:458) [rt.jar]
at six42.fitnesse.jdbcslim.StringListComparator.compare(StringListComparator.java:50) [jdbcslim.jar]
at six42.fitnesse.jdbcslim.SheetFixture.compareTableWithSort(SheetFixture.java:373) [jdbcslim.jar]
at six42.fitnesse.jdbcslim.SheetFixture.processComandOnceAndCompareToExpected(SheetFixture.java:92) [jdbcslim.jar]
at six42.fitnesse.jdbcslim.SheetFixture.doTable(SheetFixture.java:58) [jdbcslim.jar]
at six42.fitnesse.jdbcslim.SheetCommandBase.doTable(SheetCommandBase.java:68) [jdbcslim.jar]
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [n/a]
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [n/a]
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [n/a]
at java.base/java.lang.reflect.Method.invoke(Method.java:567) [rt.jar]

image

How come I sometimes get this error and most of the time it does not give this error?

Call a stored procedure

I did some internet searching and there is it mentioned I can use ScriptFixture from jdbcSlim to call a stored procedure, but no mention of this is in the manual.
How would I go call a stored procedure using jdbcSlim according to you?

JDBC slim with cassandra

Hi,
After spending a day and bumping into various nullpointers i decided to ask if anyone had success with running tests against cassandra db (any cassandra version never than 3.0)?

Any hints, examples, links would be appreciated :)

Empty row when no records returned in Table:SQLCommand

This issue was briefly addressed in issue #21.

When the expected result should return 0 records, an empty row is created. When one result is returned the test will pass while it should fail.

Example:

table:SQLCommand ${DB} ${SQLquery} QUERY
NAME ID USERNAME EMAIL

Issues integrating JDBC Slim into FitNesse

Hi,

I am new to FitNesse and am trying to download jdbcslim and get that working with my current installation.

I have downloaded the project and followed the build instructions, however when running the userGuide Suite to see if the tests run, all seem to have failed with exceptions.

Examples are given below: Page include failed because the page PlugIns.JdbcSlim.XxTestMoreDrivers.HtwoTest.SuiteSetUp does not exist

The instance decisionTable_2.ID. does not exist

These are just a few examples of the exceptions I am seeing. I may be doing something wrong with the installation or build, apologies for that i am quite new to this and have been asked to implement this into my organisation.

Any help or guidance in basic set up options would be highly appreciated as this is causing a delay and i am not sure how to resolve the issue.

Many thanks

Jdbcslim tests are failing on the H2 driver when using maven

tried to clone the repository and used the maven command as described on https://github.com/six42/jdbcslim.

I got the mostly ClassNotFoundException: org.h2.Driver errors for the tests. Is there a way to solve this, or is there a workaround?

below the maven log:

C:\Apps\java\fitnesse>mvn clean compile dependency:copy-dependencies package
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building Six42 jdbcSlim FitNesse Fixtures 1.1.0
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-clean-plugin:3.0.0:clean (default-clean) @ jdbcslim ---
[INFO] Deleting C:\Apps\java\fitnesse\target
[INFO] Deleting C:\Apps\java\fitnesse\classes
[INFO] Deleting C:\Apps\java\fitnesse\plugins\jdbcslim (includes = [**/*.jar], excludes = [plugins/jdbcslim/TestDB])
[INFO]
[INFO] --- maven-dependency-plugin:3.0.1:copy (copy-plugins) @ jdbcslim ---
[INFO] Configured Artifact: com.h2Database:h2:RELEASE:jar
[INFO] Configured Artifact: net.sourceforge.csvjdbc:csvjdbc:RELEASE:jar
[INFO] Copying h2-1.4.196.jar to C:\Apps\java\fitnesse\plugins\jdbcslim\h2-1.4.196.jar
[INFO] Copying csvjdbc-1.0.34.jar to C:\Apps\java\fitnesse\plugins\jdbcslim\csvjdbc-1.0.34.jar
[INFO]
[INFO] --- maven-dependency-plugin:3.0.1:copy (copy-fitnesse-standalone) @ jdbcslim ---
[INFO] Configured Artifact: org.fitnesse:fitnesse:standalone:?:jar
[INFO] Copying fitnesse-20161106-standalone.jar to C:\Apps\java\fitnesse\plugins\jdbcslim\fitnesse-standalone.jar
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ jdbcslim ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory C:\Apps\java\fitnesse\src\main\resources
[INFO]
[INFO] --- maven-compiler-plugin:3.6.1:compile (default-compile) @ jdbcslim ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 23 source files to C:\Apps\java\fitnesse\classes
[INFO]
[INFO] --- maven-dependency-plugin:3.0.1:copy-dependencies (default-cli) @ jdbcslim ---
[INFO] Copying hsqldb-2.3.2.jar to C:\Apps\java\fitnesse\plugins\jdbcslim\hsqldb-2.3.2.jar
[INFO] Copying dbfit-3.2.0.jar to C:\Apps\java\fitnesse\plugins\jdbcslim\dbfit-3.2.0.jar
[INFO] Copying commons-codec-1.10.jar to C:\Apps\java\fitnesse\plugins\jdbcslim\commons-codec-1.10.jar
[INFO]
[INFO] --- maven-dependency-plugin:3.0.1:copy (copy-plugins) @ jdbcslim ---
[INFO] Configured Artifact: com.h2Database:h2:RELEASE:jar
[INFO] Configured Artifact: net.sourceforge.csvjdbc:csvjdbc:RELEASE:jar
[INFO] Copying h2-1.4.196.jar to C:\Apps\java\fitnesse\plugins\jdbcslim\h2-1.4.196.jar
[INFO] Copying csvjdbc-1.0.34.jar to C:\Apps\java\fitnesse\plugins\jdbcslim\csvjdbc-1.0.34.jar
[INFO]
[INFO] --- maven-dependency-plugin:3.0.1:copy (copy-fitnesse-standalone) @ jdbcslim ---
[INFO] Configured Artifact: org.fitnesse:fitnesse:standalone:?:jar
[INFO] Copying fitnesse-20161106-standalone.jar to C:\Apps\java\fitnesse\plugins\jdbcslim\fitnesse-standalone.jar
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ jdbcslim ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory C:\Apps\java\fitnesse\src\main\resources
[INFO]
[INFO] --- maven-compiler-plugin:3.6.1:compile (default-compile) @ jdbcslim ---
[INFO] Nothing to compile - all classes are up to date
[INFO]
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ jdbcslim ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 5 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.6.1:testCompile (default-testCompile) @ jdbcslim ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 1 source file to C:\Apps\java\fitnesse\target\test-classes
[INFO]
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ jdbcslim ---
[INFO] Surefire report directory: C:\Apps\java\fitnesse\target\surefire-reports

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running six42.fitnesse.jdbcslim.JdbcSlimAcceptanceTest
Jan 05, 2018 2:55:58 AM fitnesse.ConfigurationParameter loadProperties
INFO: No configuration file found (C:\Apps\java\fitnesse\plugins.properties)
slim:in-process

java.lang.ClassNotFoundException: org.h2.Driver
        at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:338)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:264)
        at six42.fitnesse.jdbcslim.SQLCommand.openNewConnection(SQLCommand.java:378)
        at six42.fitnesse.jdbcslim.SQLCommand.openConnection(SQLCommand.java:337)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.methodInvoke(DefaultInteraction.java:147)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.callMethod(DefaultInteraction.java:132)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.invokeMethod(DefaultInteraction.java:114)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.findAndInvoke(DefaultInteraction.java:92)
        at fitnesse.slim.MethodExecutor.findAndInvoke(MethodExecutor.java:18)
        at fitnesse.slim.FixtureMethodExecutor.execute(FixtureMethodExecutor.java:18)
        at fitnesse.slim.StatementExecutor.getMethodExecutionResult(StatementExecutor.java:130)
        at fitnesse.slim.StatementExecutor.call(StatementExecutor.java:103)
        at fitnesse.slim.instructions.CallInstruction.executeInternal(CallInstruction.java:35)
        at fitnesse.slim.instructions.Instruction.execute(Instruction.java:29)
        at fitnesse.slim.ListExecutor$Executive.executeStatement(ListExecutor.java:49)
        at fitnesse.slim.ListExecutor$Executive.executeStatements(ListExecutor.java:43)
        at fitnesse.slim.ListExecutor.execute(ListExecutor.java:85)
        at fitnesse.slim.SlimServer.executeInstructions(SlimServer.java:82)
        at fitnesse.slim.SlimServer.processOneSetOfInstructions(SlimServer.java:75)
        at fitnesse.slim.SlimServer.tryProcessInstructions(SlimServer.java:62)
        at fitnesse.slim.SlimServer.serve(SlimServer.java:47)
        at fitnesse.testsystems.slim.InProcessSlimClient$1.run(InProcessSlimClient.java:53)
        at java.lang.Thread.run(Thread.java:748)
java.lang.ClassNotFoundException: org.h2.Driver
        at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:338)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:264)
        at six42.fitnesse.jdbcslim.SQLCommand.openNewConnection(SQLCommand.java:378)
        at six42.fitnesse.jdbcslim.SQLCommand.openConnection(SQLCommand.java:337)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.methodInvoke(DefaultInteraction.java:147)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.callMethod(DefaultInteraction.java:132)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.invokeMethod(DefaultInteraction.java:114)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.findAndInvoke(DefaultInteraction.java:92)
        at fitnesse.slim.MethodExecutor.findAndInvoke(MethodExecutor.java:18)
        at fitnesse.slim.FixtureMethodExecutor.execute(FixtureMethodExecutor.java:18)
        at fitnesse.slim.StatementExecutor.getMethodExecutionResult(StatementExecutor.java:130)
        at fitnesse.slim.StatementExecutor.call(StatementExecutor.java:103)
        at fitnesse.slim.instructions.CallInstruction.executeInternal(CallInstruction.java:35)
        at fitnesse.slim.instructions.Instruction.execute(Instruction.java:29)
        at fitnesse.slim.ListExecutor$Executive.executeStatement(ListExecutor.java:49)
        at fitnesse.slim.ListExecutor$Executive.executeStatements(ListExecutor.java:43)
        at fitnesse.slim.ListExecutor.execute(ListExecutor.java:85)
        at fitnesse.slim.SlimServer.executeInstructions(SlimServer.java:82)
        at fitnesse.slim.SlimServer.processOneSetOfInstructions(SlimServer.java:75)
        at fitnesse.slim.SlimServer.tryProcessInstructions(SlimServer.java:62)
        at fitnesse.slim.SlimServer.serve(SlimServer.java:47)
        at fitnesse.testsystems.slim.InProcessSlimClient$1.run(InProcessSlimClient.java:53)
        at java.lang.Thread.run(Thread.java:748)
java.lang.ClassNotFoundException: org.h2.Driver
        at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:338)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:264)
        at six42.fitnesse.jdbcslim.SQLCommand.openNewConnection(SQLCommand.java:378)
        at six42.fitnesse.jdbcslim.SQLCommand.openConnection(SQLCommand.java:327)
        at six42.fitnesse.jdbcslim.SQLCommand.beginTable(SQLCommand.java:300)
        at six42.fitnesse.jdbcslim.SheetFixture.doTable(SheetFixture.java:52)
        at six42.fitnesse.jdbcslim.SheetCommandBase.doTable(SheetCommandBase.java:68)
        at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.methodInvoke(DefaultInteraction.java:147)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.callMethod(DefaultInteraction.java:132)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.invokeMethod(DefaultInteraction.java:114)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.findAndInvoke(DefaultInteraction.java:92)
        at fitnesse.slim.MethodExecutor.findAndInvoke(MethodExecutor.java:18)
        at fitnesse.slim.FixtureMethodExecutor.execute(FixtureMethodExecutor.java:18)
        at fitnesse.slim.StatementExecutor.getMethodExecutionResult(StatementExecutor.java:130)
        at fitnesse.slim.StatementExecutor.call(StatementExecutor.java:103)
        at fitnesse.slim.instructions.CallInstruction.executeInternal(CallInstruction.java:35)
        at fitnesse.slim.instructions.Instruction.execute(Instruction.java:29)
        at fitnesse.slim.ListExecutor$Executive.executeStatement(ListExecutor.java:49)
        at fitnesse.slim.ListExecutor$Executive.executeStatements(ListExecutor.java:43)
        at fitnesse.slim.ListExecutor.execute(ListExecutor.java:85)
        at fitnesse.slim.SlimServer.executeInstructions(SlimServer.java:82)
        at fitnesse.slim.SlimServer.processOneSetOfInstructions(SlimServer.java:75)
        at fitnesse.slim.SlimServer.tryProcessInstructions(SlimServer.java:62)
        at fitnesse.slim.SlimServer.serve(SlimServer.java:47)
        at fitnesse.testsystems.slim.InProcessSlimClient$1.run(InProcessSlimClient.java:53)
        at java.lang.Thread.run(Thread.java:748)
java.lang.ClassNotFoundException: org.h2.Driver
        at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:338)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:264)
        at six42.fitnesse.jdbcslim.SQLCommand.openNewConnection(SQLCommand.java:378)
        at six42.fitnesse.jdbcslim.SQLCommand.openConnection(SQLCommand.java:327)
        at six42.fitnesse.jdbcslim.SQLCommand.beginTable(SQLCommand.java:300)
        at six42.fitnesse.jdbcslim.SheetFixture.doTable(SheetFixture.java:52)
        at six42.fitnesse.jdbcslim.SheetCommandBase.doTable(SheetCommandBase.java:68)
        at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.methodInvoke(DefaultInteraction.java:147)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.callMethod(DefaultInteraction.java:132)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.invokeMethod(DefaultInteraction.java:114)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.findAndInvoke(DefaultInteraction.java:92)
        at fitnesse.slim.MethodExecutor.findAndInvoke(MethodExecutor.java:18)
        at fitnesse.slim.FixtureMethodExecutor.execute(FixtureMethodExecutor.java:18)
        at fitnesse.slim.StatementExecutor.getMethodExecutionResult(StatementExecutor.java:130)
        at fitnesse.slim.StatementExecutor.call(StatementExecutor.java:103)
        at fitnesse.slim.instructions.CallInstruction.executeInternal(CallInstruction.java:35)
        at fitnesse.slim.instructions.Instruction.execute(Instruction.java:29)
        at fitnesse.slim.ListExecutor$Executive.executeStatement(ListExecutor.java:49)
        at fitnesse.slim.ListExecutor$Executive.executeStatements(ListExecutor.java:43)
        at fitnesse.slim.ListExecutor.execute(ListExecutor.java:85)
        at fitnesse.slim.SlimServer.executeInstructions(SlimServer.java:82)
        at fitnesse.slim.SlimServer.processOneSetOfInstructions(SlimServer.java:75)
        at fitnesse.slim.SlimServer.tryProcessInstructions(SlimServer.java:62)
        at fitnesse.slim.SlimServer.serve(SlimServer.java:47)
        at fitnesse.testsystems.slim.InProcessSlimClient$1.run(InProcessSlimClient.java:53)
        at java.lang.Thread.run(Thread.java:748)
java.lang.ClassNotFoundException: org.h2.Driver
        at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:338)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:264)
        at six42.fitnesse.jdbcslim.SQLCommand.openNewConnection(SQLCommand.java:378)
        at six42.fitnesse.jdbcslim.SQLCommand.openConnection(SQLCommand.java:327)
        at six42.fitnesse.jdbcslim.SQLCommand.beginTable(SQLCommand.java:300)
        at six42.fitnesse.jdbcslim.SheetFixture.doTable(SheetFixture.java:52)
        at six42.fitnesse.jdbcslim.SheetCommandBase.doTable(SheetCommandBase.java:68)
        at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.methodInvoke(DefaultInteraction.java:147)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.callMethod(DefaultInteraction.java:132)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.invokeMethod(DefaultInteraction.java:114)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.findAndInvoke(DefaultInteraction.java:92)
        at fitnesse.slim.MethodExecutor.findAndInvoke(MethodExecutor.java:18)
        at fitnesse.slim.FixtureMethodExecutor.execute(FixtureMethodExecutor.java:18)
        at fitnesse.slim.StatementExecutor.getMethodExecutionResult(StatementExecutor.java:130)
        at fitnesse.slim.StatementExecutor.call(StatementExecutor.java:103)
        at fitnesse.slim.instructions.CallInstruction.executeInternal(CallInstruction.java:35)
        at fitnesse.slim.instructions.Instruction.execute(Instruction.java:29)
        at fitnesse.slim.ListExecutor$Executive.executeStatement(ListExecutor.java:49)
        at fitnesse.slim.ListExecutor$Executive.executeStatements(ListExecutor.java:43)
        at fitnesse.slim.ListExecutor.execute(ListExecutor.java:85)
        at fitnesse.slim.SlimServer.executeInstructions(SlimServer.java:82)
        at fitnesse.slim.SlimServer.processOneSetOfInstructions(SlimServer.java:75)
        at fitnesse.slim.SlimServer.tryProcessInstructions(SlimServer.java:62)
        at fitnesse.slim.SlimServer.serve(SlimServer.java:47)
        at fitnesse.testsystems.slim.InProcessSlimClient$1.run(InProcessSlimClient.java:53)
        at java.lang.Thread.run(Thread.java:748)
java.lang.ClassNotFoundException: org.h2.Driver
        at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:338)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:264)
        at six42.fitnesse.jdbcslim.SQLCommand.openNewConnection(SQLCommand.java:378)
        at six42.fitnesse.jdbcslim.SQLCommand.openConnection(SQLCommand.java:327)
        at six42.fitnesse.jdbcslim.SQLCommand.beginTable(SQLCommand.java:300)
        at six42.fitnesse.jdbcslim.SheetFixture.doTable(SheetFixture.java:52)
        at six42.fitnesse.jdbcslim.SheetCommandBase.doTable(SheetCommandBase.java:68)
        at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.methodInvoke(DefaultInteraction.java:147)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.callMethod(DefaultInteraction.java:132)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.invokeMethod(DefaultInteraction.java:114)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.findAndInvoke(DefaultInteraction.java:92)
        at fitnesse.slim.MethodExecutor.findAndInvoke(MethodExecutor.java:18)
        at fitnesse.slim.FixtureMethodExecutor.execute(FixtureMethodExecutor.java:18)
        at fitnesse.slim.StatementExecutor.getMethodExecutionResult(StatementExecutor.java:130)
        at fitnesse.slim.StatementExecutor.call(StatementExecutor.java:103)
        at fitnesse.slim.instructions.CallInstruction.executeInternal(CallInstruction.java:35)
        at fitnesse.slim.instructions.Instruction.execute(Instruction.java:29)
        at fitnesse.slim.ListExecutor$Executive.executeStatement(ListExecutor.java:49)
        at fitnesse.slim.ListExecutor$Executive.executeStatements(ListExecutor.java:43)
        at fitnesse.slim.ListExecutor.execute(ListExecutor.java:85)
        at fitnesse.slim.SlimServer.executeInstructions(SlimServer.java:82)
        at fitnesse.slim.SlimServer.processOneSetOfInstructions(SlimServer.java:75)
        at fitnesse.slim.SlimServer.tryProcessInstructions(SlimServer.java:62)
        at fitnesse.slim.SlimServer.serve(SlimServer.java:47)
        at fitnesse.testsystems.slim.InProcessSlimClient$1.run(InProcessSlimClient.java:53)
        at java.lang.Thread.run(Thread.java:748)
java.lang.ClassNotFoundException: org.h2.Driver
        at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:338)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:264)
        at six42.fitnesse.jdbcslim.SQLCommand.openNewConnection(SQLCommand.java:378)
        at six42.fitnesse.jdbcslim.SQLCommand.openConnection(SQLCommand.java:327)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.methodInvoke(DefaultInteraction.java:147)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.callMethod(DefaultInteraction.java:132)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.invokeMethod(DefaultInteraction.java:114)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.findAndInvoke(DefaultInteraction.java:92)
        at fitnesse.slim.MethodExecutor.findAndInvoke(MethodExecutor.java:18)
        at fitnesse.slim.FixtureMethodExecutor.execute(FixtureMethodExecutor.java:18)
        at fitnesse.slim.StatementExecutor.getMethodExecutionResult(StatementExecutor.java:130)
        at fitnesse.slim.StatementExecutor.call(StatementExecutor.java:103)
        at fitnesse.slim.instructions.CallInstruction.executeInternal(CallInstruction.java:35)
        at fitnesse.slim.instructions.Instruction.execute(Instruction.java:29)
        at fitnesse.slim.ListExecutor$Executive.executeStatement(ListExecutor.java:49)
        at fitnesse.slim.ListExecutor$Executive.executeStatements(ListExecutor.java:43)
        at fitnesse.slim.ListExecutor.execute(ListExecutor.java:85)
        at fitnesse.slim.SlimServer.executeInstructions(SlimServer.java:82)
        at fitnesse.slim.SlimServer.processOneSetOfInstructions(SlimServer.java:75)
        at fitnesse.slim.SlimServer.tryProcessInstructions(SlimServer.java:62)
        at fitnesse.slim.SlimServer.serve(SlimServer.java:47)
        at fitnesse.testsystems.slim.InProcessSlimClient$1.run(InProcessSlimClient.java:53)
        at java.lang.Thread.run(Thread.java:748)
java.lang.ClassNotFoundException: org.h2.Driver
        at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:338)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:264)
        at six42.fitnesse.jdbcslim.SQLCommand.openNewConnection(SQLCommand.java:378)
        at six42.fitnesse.jdbcslim.SQLCommand.openConnection(SQLCommand.java:327)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.methodInvoke(DefaultInteraction.java:147)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.callMethod(DefaultInteraction.java:132)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.invokeMethod(DefaultInteraction.java:114)
        at fitnesse.slim.fixtureInteraction.DefaultInteraction.findAndInvoke(DefaultInteraction.java:92)
        at fitnesse.slim.MethodExecutor.findAndInvoke(MethodExecutor.java:18)
        at fitnesse.slim.FixtureMethodExecutor.execute(FixtureMethodExecutor.java:18)
        at fitnesse.slim.StatementExecutor.getMethodExecutionResult(StatementExecutor.java:130)
        at fitnesse.slim.StatementExecutor.call(StatementExecutor.java:103)
        at fitnesse.slim.instructions.CallInstruction.executeInternal(CallInstruction.java:35)
        at fitnesse.slim.instructions.Instruction.execute(Instruction.java:29)
        at fitnesse.slim.ListExecutor$Executive.executeStatement(ListExecutor.java:49)
        at fitnesse.slim.ListExecutor$Executive.executeStatements(ListExecutor.java:43)
        at fitnesse.slim.ListExecutor.execute(ListExecutor.java:85)
        at fitnesse.slim.SlimServer.executeInstructions(SlimServer.java:82)
        at fitnesse.slim.SlimServer.processOneSetOfInstructions(SlimServer.java:75)
        at fitnesse.slim.SlimServer.tryProcessInstructions(SlimServer.java:62)
        at fitnesse.slim.SlimServer.serve(SlimServer.java:47)
        at fitnesse.testsystems.slim.InProcessSlimClient$1.run(InProcessSlimClient.java:53)
        at java.lang.Thread.run(Thread.java:748)
java.io.InterruptedIOException
        at java.io.PipedInputStream.read(PipedInputStream.java:328)
        at java.io.PipedInputStream.read(PipedInputStream.java:377)
        at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
        at java.io.BufferedInputStream.read1(BufferedInputStream.java:286)
        at java.io.BufferedInputStream.read(BufferedInputStream.java:345)
        at java.io.FilterInputStream.read(FilterInputStream.java:107)
        at util.StreamReader$2.read(StreamReader.java:218)
        at util.StreamReader.readUntilFinished(StreamReader.java:140)
        at util.StreamReader.preformRead(StreamReader.java:117)
        at util.StreamReader.readBytes(StreamReader.java:75)
        at util.StreamReader.read(StreamReader.java:68)
        at fitnesse.slim.SlimStreamReader.getLengthToRead(SlimStreamReader.java:35)
        at fitnesse.slim.SlimStreamReader.getSlimMessage(SlimStreamReader.java:56)
        at fitnesse.slim.SlimServer.processOneSetOfInstructions(SlimServer.java:66)
        at fitnesse.slim.SlimServer.tryProcessInstructions(SlimServer.java:62)
        at fitnesse.slim.SlimServer.serve(SlimServer.java:47)
        at fitnesse.testsystems.slim.InProcessSlimClient$1.run(InProcessSlimClient.java:53)
        at java.lang.Thread.run(Thread.java:748)
java.lang.ClassCastException: java.lang.String cannot be cast to java.util.List
        at fitnesse.testsystems.slim.tables.TableTable.addNewRows(TableTable.java:83)
        at fitnesse.testsystems.slim.tables.TableTable.extendTable(TableTable.java:76)
        at fitnesse.testsystems.slim.tables.TableTable.resizeTableAndEvaluateRows(TableTable.java:68)
        at fitnesse.testsystems.slim.tables.TableTable.access$000(TableTable.java:18)
        at fitnesse.testsystems.slim.tables.TableTable$TableTableExpectation.evaluateExpectation(TableTable.java:48)
        at fitnesse.testsystems.slim.SlimTestSystem.evaluateTables(SlimTestSystem.java:149)
        at fitnesse.testsystems.slim.SlimTestSystem.processTable(SlimTestSystem.java:127)
        at fitnesse.testsystems.slim.HtmlSlimTestSystem.processAllTablesOnPage(HtmlSlimTestSystem.java:56)
        at fitnesse.testsystems.slim.SlimTestSystem.runTests(SlimTestSystem.java:89)
        at fitnesse.testrunner.MultipleTestsRunner.executeTestSystemPages(MultipleTestsRunner.java:158)
        at fitnesse.testrunner.MultipleTestsRunner.startTestSystemAndExecutePages(MultipleTestsRunner.java:78)
        at fitnesse.testrunner.MultipleTestsRunner.internalExecuteTestPages(MultipleTestsRunner.java:66)
        at fitnesse.testrunner.MultipleTestsRunner.executeTestPages(MultipleTestsRunner.java:49)
        at fitnesse.junit.FitNesseRunner.executeTests(FitNesseRunner.java:474)
        at fitnesse.junit.FitNesseRunner.runPages(FitNesseRunner.java:399)
        at fitnesse.junit.FitNesseRunner.run(FitNesseRunner.java:380)
        at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
        at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
        at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
        at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
        at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
        at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
        at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)
fitnesse.testsystems.TestExecutionException: java.lang.ClassCastException: java.lang.String cannot be cast to java.util.List
        at fitnesse.testsystems.slim.SlimTestSystem.runTests(SlimTestSystem.java:93)
        at fitnesse.testrunner.MultipleTestsRunner.executeTestSystemPages(MultipleTestsRunner.java:158)
        at fitnesse.testrunner.MultipleTestsRunner.startTestSystemAndExecutePages(MultipleTestsRunner.java:78)
        at fitnesse.testrunner.MultipleTestsRunner.internalExecuteTestPages(MultipleTestsRunner.java:66)
        at fitnesse.testrunner.MultipleTestsRunner.executeTestPages(MultipleTestsRunner.java:49)
        at fitnesse.junit.FitNesseRunner.executeTests(FitNesseRunner.java:474)
        at fitnesse.junit.FitNesseRunner.runPages(FitNesseRunner.java:399)
        at fitnesse.junit.FitNesseRunner.run(FitNesseRunner.java:380)
        at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
        at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
        at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
        at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
        at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
        at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
        at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)
Caused by: java.lang.ClassCastException: java.lang.String cannot be cast to java.util.List
        at fitnesse.testsystems.slim.tables.TableTable.addNewRows(TableTable.java:83)
        at fitnesse.testsystems.slim.tables.TableTable.extendTable(TableTable.java:76)
        at fitnesse.testsystems.slim.tables.TableTable.resizeTableAndEvaluateRows(TableTable.java:68)
        at fitnesse.testsystems.slim.tables.TableTable.access$000(TableTable.java:18)
        at fitnesse.testsystems.slim.tables.TableTable$TableTableExpectation.evaluateExpectation(TableTable.java:48)
        at fitnesse.testsystems.slim.SlimTestSystem.evaluateTables(SlimTestSystem.java:149)
        at fitnesse.testsystems.slim.SlimTestSystem.processTable(SlimTestSystem.java:127)
        at fitnesse.testsystems.slim.HtmlSlimTestSystem.processAllTablesOnPage(HtmlSlimTestSystem.java:56)
        at fitnesse.testsystems.slim.SlimTestSystem.runTests(SlimTestSystem.java:89)
        ... 19 more
Tests run: 8, Failures: 4, Errors: 4, Skipped: 0, Time elapsed: 2.357 sec <<< FAILURE!
PlugIns.JdbcSlim.SuiteSetUp(six42.fitnesse.jdbcslim.JdbcSlimAcceptanceTest)  Time elapsed: 0.29 sec  <<< FAILURE!
java.lang.AssertionError: null
        at fitnesse.junit.JUnitRunNotifierResultsListener.firstFailure(JUnitRunNotifierResultsListener.java:138)
        at fitnesse.junit.JUnitRunNotifierResultsListener.testAssertionVerified(JUnitRunNotifierResultsListener.java:74)
        at fitnesse.testsystems.CompositeTestSystemListener.testAssertionVerified(CompositeTestSystemListener.java:55)
        at fitnesse.testrunner.MultipleTestsRunner$InternalTestSystemListener.testAssertionVerified(MultipleTestsRunner.java:215)
        at fitnesse.testsystems.CompositeTestSystemListener.testAssertionVerified(CompositeTestSystemListener.java:55)
        at fitnesse.testsystems.slim.SlimTestSystem.testAssertionVerified(SlimTestSystem.java:189)
        at fitnesse.testsystems.slim.SlimTestSystem.evaluateTables(SlimTestSystem.java:150)
        at fitnesse.testsystems.slim.SlimTestSystem.processTable(SlimTestSystem.java:127)
        at fitnesse.testsystems.slim.HtmlSlimTestSystem.processAllTablesOnPage(HtmlSlimTestSystem.java:56)
        at fitnesse.testsystems.slim.SlimTestSystem.runTests(SlimTestSystem.java:89)
        at fitnesse.testrunner.MultipleTestsRunner.executeTestSystemPages(MultipleTestsRunner.java:158)
        at fitnesse.testrunner.MultipleTestsRunner.startTestSystemAndExecutePages(MultipleTestsRunner.java:78)
        at fitnesse.testrunner.MultipleTestsRunner.internalExecuteTestPages(MultipleTestsRunner.java:66)
        at fitnesse.testrunner.MultipleTestsRunner.executeTestPages(MultipleTestsRunner.java:49)
        at fitnesse.junit.FitNesseRunner.executeTests(FitNesseRunner.java:474)
        at fitnesse.junit.FitNesseRunner.runPages(FitNesseRunner.java:399)
        at fitnesse.junit.FitNesseRunner.run(FitNesseRunner.java:380)
        at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
        at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
        at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
        at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
        at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
        at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
        at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)

PlugIns.JdbcSlim.UserGuide.1ASimpleExample(six42.fitnesse.jdbcslim.JdbcSlimAcceptanceTest)  Time elapsed: 0.124 sec  <<< FAILURE!
java.lang.AssertionError: null
        at fitnesse.junit.JUnitRunNotifierResultsListener.firstFailure(JUnitRunNotifierResultsListener.java:138)
        at fitnesse.junit.JUnitRunNotifierResultsListener.testAssertionVerified(JUnitRunNotifierResultsListener.java:74)
        at fitnesse.testsystems.CompositeTestSystemListener.testAssertionVerified(CompositeTestSystemListener.java:55)
        at fitnesse.testrunner.MultipleTestsRunner$InternalTestSystemListener.testAssertionVerified(MultipleTestsRunner.java:215)
        at fitnesse.testsystems.CompositeTestSystemListener.testAssertionVerified(CompositeTestSystemListener.java:55)
        at fitnesse.testsystems.slim.SlimTestSystem.testAssertionVerified(SlimTestSystem.java:189)
        at fitnesse.testsystems.slim.SlimTestSystem.evaluateTables(SlimTestSystem.java:150)
        at fitnesse.testsystems.slim.SlimTestSystem.processTable(SlimTestSystem.java:127)
        at fitnesse.testsystems.slim.HtmlSlimTestSystem.processAllTablesOnPage(HtmlSlimTestSystem.java:56)
        at fitnesse.testsystems.slim.SlimTestSystem.runTests(SlimTestSystem.java:89)
        at fitnesse.testrunner.MultipleTestsRunner.executeTestSystemPages(MultipleTestsRunner.java:158)
        at fitnesse.testrunner.MultipleTestsRunner.startTestSystemAndExecutePages(MultipleTestsRunner.java:78)
        at fitnesse.testrunner.MultipleTestsRunner.internalExecuteTestPages(MultipleTestsRunner.java:66)
        at fitnesse.testrunner.MultipleTestsRunner.executeTestPages(MultipleTestsRunner.java:49)
        at fitnesse.junit.FitNesseRunner.executeTests(FitNesseRunner.java:474)
        at fitnesse.junit.FitNesseRunner.runPages(FitNesseRunner.java:399)
        at fitnesse.junit.FitNesseRunner.run(FitNesseRunner.java:380)
        at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
        at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
        at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
        at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
        at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
        at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
        at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)

PlugIns.JdbcSlim.UserGuide.1ASimpleExample.SeparatingSqlCommandsAndRequirements(six42.fitnesse.jdbcslim.JdbcSlimAcceptanceTest)  Time elapsed: 0.11 sec  <<< FAILURE!
java.lang.AssertionError: null
        at fitnesse.junit.JUnitRunNotifierResultsListener.firstFailure(JUnitRunNotifierResultsListener.java:138)
        at fitnesse.junit.JUnitRunNotifierResultsListener.testAssertionVerified(JUnitRunNotifierResultsListener.java:74)
        at fitnesse.testsystems.CompositeTestSystemListener.testAssertionVerified(CompositeTestSystemListener.java:55)
        at fitnesse.testrunner.MultipleTestsRunner$InternalTestSystemListener.testAssertionVerified(MultipleTestsRunner.java:215)
        at fitnesse.testsystems.CompositeTestSystemListener.testAssertionVerified(CompositeTestSystemListener.java:55)
        at fitnesse.testsystems.slim.SlimTestSystem.testAssertionVerified(SlimTestSystem.java:189)
        at fitnesse.testsystems.slim.SlimTestSystem.evaluateTables(SlimTestSystem.java:150)
        at fitnesse.testsystems.slim.SlimTestSystem.processTable(SlimTestSystem.java:127)
        at fitnesse.testsystems.slim.HtmlSlimTestSystem.processAllTablesOnPage(HtmlSlimTestSystem.java:56)
        at fitnesse.testsystems.slim.SlimTestSystem.runTests(SlimTestSystem.java:89)
        at fitnesse.testrunner.MultipleTestsRunner.executeTestSystemPages(MultipleTestsRunner.java:158)
        at fitnesse.testrunner.MultipleTestsRunner.startTestSystemAndExecutePages(MultipleTestsRunner.java:78)
        at fitnesse.testrunner.MultipleTestsRunner.internalExecuteTestPages(MultipleTestsRunner.java:66)
        at fitnesse.testrunner.MultipleTestsRunner.executeTestPages(MultipleTestsRunner.java:49)
        at fitnesse.junit.FitNesseRunner.executeTests(FitNesseRunner.java:474)
        at fitnesse.junit.FitNesseRunner.runPages(FitNesseRunner.java:399)
        at fitnesse.junit.FitNesseRunner.run(FitNesseRunner.java:380)
        at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
        at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
        at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
        at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
        at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
        at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
        at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)

PlugIns.JdbcSlim.UserGuide.1ASimpleExample.WritingGenericRequirementsWithAlias(six42.fitnesse.jdbcslim.JdbcSlimAcceptanceTest)  Time elapsed: 0.126 sec  <<< FAILURE!
java.lang.AssertionError: null
        at fitnesse.junit.JUnitRunNotifierResultsListener.firstFailure(JUnitRunNotifierResultsListener.java:138)
        at fitnesse.junit.JUnitRunNotifierResultsListener.testAssertionVerified(JUnitRunNotifierResultsListener.java:74)
        at fitnesse.testsystems.CompositeTestSystemListener.testAssertionVerified(CompositeTestSystemListener.java:55)
        at fitnesse.testrunner.MultipleTestsRunner$InternalTestSystemListener.testAssertionVerified(MultipleTestsRunner.java:215)
        at fitnesse.testsystems.CompositeTestSystemListener.testAssertionVerified(CompositeTestSystemListener.java:55)
        at fitnesse.testsystems.slim.SlimTestSystem.testAssertionVerified(SlimTestSystem.java:189)
        at fitnesse.testsystems.slim.SlimTestSystem.evaluateTables(SlimTestSystem.java:150)
        at fitnesse.testsystems.slim.SlimTestSystem.processTable(SlimTestSystem.java:127)
        at fitnesse.testsystems.slim.HtmlSlimTestSystem.processAllTablesOnPage(HtmlSlimTestSystem.java:56)
        at fitnesse.testsystems.slim.SlimTestSystem.runTests(SlimTestSystem.java:89)
        at fitnesse.testrunner.MultipleTestsRunner.executeTestSystemPages(MultipleTestsRunner.java:158)
        at fitnesse.testrunner.MultipleTestsRunner.startTestSystemAndExecutePages(MultipleTestsRunner.java:78)
        at fitnesse.testrunner.MultipleTestsRunner.internalExecuteTestPages(MultipleTestsRunner.java:66)
        at fitnesse.testrunner.MultipleTestsRunner.executeTestPages(MultipleTestsRunner.java:49)
        at fitnesse.junit.FitNesseRunner.executeTests(FitNesseRunner.java:474)
        at fitnesse.junit.FitNesseRunner.runPages(FitNesseRunner.java:399)
        at fitnesse.junit.FitNesseRunner.run(FitNesseRunner.java:380)
        at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
        at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
        at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
        at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
        at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
        at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
        at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)

PlugIns.JdbcSlim.UserGuide.2KeyBenefits.1WaitingForAsynchronousResults(six42.fitnesse.jdbcslim.JdbcSlimAcceptanceTest)  Time elapsed: 0.268 sec  <<< ERROR!
java.lang.Exception
        at fitnesse.junit.JUnitRunNotifierResultsListener.firstFailure(JUnitRunNotifierResultsListener.java:136)
        at fitnesse.junit.JUnitRunNotifierResultsListener.testExceptionOccurred(JUnitRunNotifierResultsListener.java:80)
        at fitnesse.testsystems.CompositeTestSystemListener.testExceptionOccurred(CompositeTestSystemListener.java:61)
        at fitnesse.testrunner.MultipleTestsRunner$InternalTestSystemListener.testExceptionOccurred(MultipleTestsRunner.java:220)
        at fitnesse.testsystems.CompositeTestSystemListener.testExceptionOccurred(CompositeTestSystemListener.java:61)
        at fitnesse.testsystems.slim.SlimTestSystem.testExceptionOccurred(SlimTestSystem.java:193)
        at fitnesse.testsystems.slim.SlimTestSystem.evaluateTables(SlimTestSystem.java:145)
        at fitnesse.testsystems.slim.SlimTestSystem.processTable(SlimTestSystem.java:127)
        at fitnesse.testsystems.slim.HtmlSlimTestSystem.processAllTablesOnPage(HtmlSlimTestSystem.java:56)
        at fitnesse.testsystems.slim.SlimTestSystem.runTests(SlimTestSystem.java:89)
        at fitnesse.testrunner.MultipleTestsRunner.executeTestSystemPages(MultipleTestsRunner.java:158)
        at fitnesse.testrunner.MultipleTestsRunner.startTestSystemAndExecutePages(MultipleTestsRunner.java:78)
        at fitnesse.testrunner.MultipleTestsRunner.internalExecuteTestPages(MultipleTestsRunner.java:66)
        at fitnesse.testrunner.MultipleTestsRunner.executeTestPages(MultipleTestsRunner.java:49)
        at fitnesse.junit.FitNesseRunner.executeTests(FitNesseRunner.java:474)
        at fitnesse.junit.FitNesseRunner.runPages(FitNesseRunner.java:399)
        at fitnesse.junit.FitNesseRunner.run(FitNesseRunner.java:380)
        at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
        at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
        at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
        at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
        at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
        at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
        at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)

six42.fitnesse.jdbcslim.JdbcSlimAcceptanceTest  Time elapsed: 0.043 sec  <<< ERROR!
java.lang.Exception: Exception while executing tests using: slim:in-process
        at fitnesse.junit.JUnitRunNotifierResultsListener.notifyOfTestSystemException(JUnitRunNotifierResultsListener.java:105)
        at fitnesse.junit.JUnitRunNotifierResultsListener.testSystemStopped(JUnitRunNotifierResultsListener.java:89)
        at fitnesse.testsystems.CompositeTestSystemListener.testSystemStopped(CompositeTestSystemListener.java:49)
        at fitnesse.testrunner.MultipleTestsRunner$InternalTestSystemListener.testSystemStopped(MultipleTestsRunner.java:205)
        at fitnesse.testsystems.CompositeTestSystemListener.testSystemStopped(CompositeTestSystemListener.java:49)
        at fitnesse.testsystems.slim.SlimTestSystem.testSystemStopped(SlimTestSystem.java:200)
        at fitnesse.testsystems.slim.SlimTestSystem.stopTestSystem(SlimTestSystem.java:185)
        at fitnesse.testsystems.slim.SlimTestSystem.runTests(SlimTestSystem.java:92)
        at fitnesse.testrunner.MultipleTestsRunner.executeTestSystemPages(MultipleTestsRunner.java:158)
        at fitnesse.testrunner.MultipleTestsRunner.startTestSystemAndExecutePages(MultipleTestsRunner.java:78)
        at fitnesse.testrunner.MultipleTestsRunner.internalExecuteTestPages(MultipleTestsRunner.java:66)
        at fitnesse.testrunner.MultipleTestsRunner.executeTestPages(MultipleTestsRunner.java:49)
        at fitnesse.junit.FitNesseRunner.executeTests(FitNesseRunner.java:474)
        at fitnesse.junit.FitNesseRunner.runPages(FitNesseRunner.java:399)
        at fitnesse.junit.FitNesseRunner.run(FitNesseRunner.java:380)
        at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
        at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
        at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
        at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
        at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
        at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
        at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)
Caused by: java.lang.ClassCastException: java.lang.String cannot be cast to java.util.List
        at fitnesse.testsystems.slim.tables.TableTable.addNewRows(TableTable.java:83)
        at fitnesse.testsystems.slim.tables.TableTable.extendTable(TableTable.java:76)
        at fitnesse.testsystems.slim.tables.TableTable.resizeTableAndEvaluateRows(TableTable.java:68)
        at fitnesse.testsystems.slim.tables.TableTable.access$000(TableTable.java:18)
        at fitnesse.testsystems.slim.tables.TableTable$TableTableExpectation.evaluateExpectation(TableTable.java:48)
        at fitnesse.testsystems.slim.SlimTestSystem.evaluateTables(SlimTestSystem.java:149)
        at fitnesse.testsystems.slim.SlimTestSystem.processTable(SlimTestSystem.java:127)
        at fitnesse.testsystems.slim.HtmlSlimTestSystem.processAllTablesOnPage(HtmlSlimTestSystem.java:56)
        at fitnesse.testsystems.slim.SlimTestSystem.runTests(SlimTestSystem.java:89)
        ... 19 more

six42.fitnesse.jdbcslim.JdbcSlimAcceptanceTest  Time elapsed: 0.08 sec  <<< ERROR!
java.lang.Exception: Not all tests executed. Completed 5 of 39 tests.
        at fitnesse.junit.JUnitRunNotifierResultsListener.close(JUnitRunNotifierResultsListener.java:98)
        at util.FileUtil.close(FileUtil.java:192)
        at fitnesse.testrunner.CompositeFormatter.close(CompositeFormatter.java:29)
        at util.FileUtil.close(FileUtil.java:192)
        at fitnesse.testrunner.MultipleTestsRunner.allTestingComplete(MultipleTestsRunner.java:59)
        at fitnesse.testrunner.MultipleTestsRunner.executeTestPages(MultipleTestsRunner.java:54)
        at fitnesse.junit.FitNesseRunner.executeTests(FitNesseRunner.java:474)
        at fitnesse.junit.FitNesseRunner.runPages(FitNesseRunner.java:399)
        at fitnesse.junit.FitNesseRunner.run(FitNesseRunner.java:380)
        at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
        at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
        at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
        at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
        at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
        at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
        at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)

six42.fitnesse.jdbcslim.JdbcSlimAcceptanceTest  Time elapsed: 0.08 sec  <<< ERROR!
fitnesse.testsystems.slim.TestingInterruptedException: fitnesse.testsystems.TestExecutionException: java.lang.ClassCastException: java.lang.String cannot be cast to java.util.List
        at fitnesse.testrunner.MultipleTestsRunner.executeTestPages(MultipleTestsRunner.java:52)
        at fitnesse.junit.FitNesseRunner.executeTests(FitNesseRunner.java:474)
        at fitnesse.junit.FitNesseRunner.runPages(FitNesseRunner.java:399)
        at fitnesse.junit.FitNesseRunner.run(FitNesseRunner.java:380)
        at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
        at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
        at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
        at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
        at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
        at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
        at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)
Caused by: fitnesse.testsystems.TestExecutionException: java.lang.ClassCastException: java.lang.String cannot be cast to java.util.List
        at fitnesse.testsystems.slim.SlimTestSystem.runTests(SlimTestSystem.java:93)
        at fitnesse.testrunner.MultipleTestsRunner.executeTestSystemPages(MultipleTestsRunner.java:158)
        at fitnesse.testrunner.MultipleTestsRunner.startTestSystemAndExecutePages(MultipleTestsRunner.java:78)
        at fitnesse.testrunner.MultipleTestsRunner.internalExecuteTestPages(MultipleTestsRunner.java:66)
        at fitnesse.testrunner.MultipleTestsRunner.executeTestPages(MultipleTestsRunner.java:49)
        ... 15 more
Caused by: java.lang.ClassCastException: java.lang.String cannot be cast to java.util.List
        at fitnesse.testsystems.slim.tables.TableTable.addNewRows(TableTable.java:83)
        at fitnesse.testsystems.slim.tables.TableTable.extendTable(TableTable.java:76)
        at fitnesse.testsystems.slim.tables.TableTable.resizeTableAndEvaluateRows(TableTable.java:68)
        at fitnesse.testsystems.slim.tables.TableTable.access$000(TableTable.java:18)
        at fitnesse.testsystems.slim.tables.TableTable$TableTableExpectation.evaluateExpectation(TableTable.java:48)
        at fitnesse.testsystems.slim.SlimTestSystem.evaluateTables(SlimTestSystem.java:149)
        at fitnesse.testsystems.slim.SlimTestSystem.processTable(SlimTestSystem.java:127)
        at fitnesse.testsystems.slim.HtmlSlimTestSystem.processAllTablesOnPage(HtmlSlimTestSystem.java:56)
        at fitnesse.testsystems.slim.SlimTestSystem.runTests(SlimTestSystem.java:89)
        ... 19 more


Results :

Failed tests:   PlugIns.JdbcSlim.SuiteSetUp(six42.fitnesse.jdbcslim.JdbcSlimAcceptanceTest)
  PlugIns.JdbcSlim.UserGuide.1ASimpleExample(six42.fitnesse.jdbcslim.JdbcSlimAcceptanceTest)
  PlugIns.JdbcSlim.UserGuide.1ASimpleExample.SeparatingSqlCommandsAndRequirements(six42.fitnesse.jdbcslim.JdbcSlimAcceptanceTest)
  PlugIns.JdbcSlim.UserGuide.1ASimpleExample.WritingGenericRequirementsWithAlias(six42.fitnesse.jdbcslim.JdbcSlimAcceptanceTest)

Tests in error:
  PlugIns.JdbcSlim.UserGuide.2KeyBenefits.1WaitingForAsynchronousResults(six42.fitnesse.jdbcslim.JdbcSlimAcceptanceTest)
  six42.fitnesse.jdbcslim.JdbcSlimAcceptanceTest: Exception while executing tests using: slim:in-process
  six42.fitnesse.jdbcslim.JdbcSlimAcceptanceTest: Not all tests executed. Completed 5 of 39 tests.
  six42.fitnesse.jdbcslim.JdbcSlimAcceptanceTest: fitnesse.testsystems.TestExecutionException: java.lang.ClassCastException: java.lang.String cannot be cast to java.util.List

Tests run: 8, Failures: 4, Errors: 4, Skipped: 0

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.