How to test or call a java method using fitnesse?

3.6k views Asked by At

My requirement is to test or call a java method directly through fitnesse tool. I have used this tool for REST testing, but never for calling java methods directly. Also googled , but no solution. Any help would be appreciated.

Thanks

3

There are 3 answers

0
Vineet Singla On BEST ANSWER

I found the answer finally :

To call any method of any Java class, just use Generic Fixture Eg.

Java class :

package com.fitnesse.fixtures;


public class HelloWorld {

    public long getValue()
    {
        return 10;
    }

}

Fitnesse script to call the fore-mentioned java class :

!| Generic Fixture | com.fitnesse.fixtures.HelloWorld|
|myvar=getValue||10|

So first line calls the default constructor of the Java class, and
second line calls the method getValue and saves it in myvar and also validates it with 10.

0
Jason Slobotski On

Using a script table you can do something like this:

For static methods

|script   |java.util.UUID.randomUUID|
|$uuidVar=|to string                |
|check    |to string                | $uuidVar |

For non static methods

|script             | MyClass       |constructor   |arguments|here|
|$classToString=    | to string     |
|check              | to string     |$classToString|
|$classReference=   | get fixture   |
|$storeMethodOutput=| my method name|

Any of the $ variables defined can be reference in later tables for just about whatever you need.

2
Mike Stockdale On

You need to write 'fixture' code which connects FitNesse to your Java classes.

You'll find details here: http://fitnesse.org/FitNesse.UserGuide

For example, here's some information on one way to do that: http://fitnesse.org/FitNesse.UserGuide.FitLibraryUserGuide.DoFixture