Missing docs for installing into an existing FitNesse installation
MMatten opened this issue · 26 comments
Hi.
(Is there a more appropriate support forum?)
I can't find any docs about how to install just the fixtures into an existing FitNesse installation. E.g. so I can combine web service testing with existing database testing assets.
Is this possible / feasible / etc?
You are right there is no documentation on that. I wouldn't know what to put in it, since it really depends on what your existing installation looks like.
To be frank, what I've done in the past is create a new project based on the archetype/sample project and copy existing installation's code and wiki pages to that. But I see no reason the other way around can not be done.
As far as I can tell there are a couple of elements you could incorporate, and you can choose to do just one or all.
- Include the hsac-fitnesse-plugin to your plugins folder: for extra slim tables and symbols
- Include the hsac-fitnesse-fixtures (and its dependencies) to your classpath: to be able to use the fixtures themselve
- Include the selenium web drivers to a new
webdrivers
directory in your wiki: to use Selenium without having to set system properties using Selenium: only when SeleniumDriverSetup is used
Thanks for the response. My current installation is based upon the DbFit distribution (https://github.com/dbfit/dbfit) as I'm going mainly database / data warehouse testing and I wanted to add web services (mainly SOAP) testing for the services that sit over a database layer.
The DbFit distro (https://github.com/dbfit/dbfit/releases/tag/v3.2.0) uses a stock FitNesse build (pulled from the Maven central repo). The current released version is from a couple of years ago (a new release will be out very soon using the latest FitNesse release).
I'll try transplanting in the above items to my installation and see where I get to and report back!
Try clicking the 'Execution Log' button. That page might have more info
I'm now using the latest FitNesse build for this installation.
and the console where started fitnesse. Does that show anything?
Did you copy all dependencies for my fixtures to your installation (either in lib
or fixtures
)? (All the jars packaged in my -standalone.zip's fixtures
directory.)
Note that I've also updated my plugins.properties
to add the content from your distro. I'm not really sure if I needed to.
The plugins.properties change is only needed if you add the maven classpath plugin (which I would not recommend for you).
I just thought of what you might have missed. The actual fixture classes (or would that just be something that would happen to me?) :-)
Try placing the .jar in the fixtures
directory...
I've got all the class files installed. E.g. under fixtures/nl/hsac/fitnesse/fixture/slim
I can see lots of .class
files.
All your .jar
files are in the fixtures
folder.
I don't think I need any custom .jar
files for this example test.
For the file hsac-fitnesse-fixtures-3.16.0.jar
I take it this is the archive/artefact that's the same as the .class
files I've already got installed. Is this right?
Yes you are right
But in the screenshot I'm not sure I see that directory being used: the fixtures
element on the classpath seems to be the only one that is not absolute. That might be causing problems. Try an absolute path for that dir
I've tried an absolute path too and I get the same result. It's very strange!
I can try building a new distro based upon yours and adding DbFit, etc, into it instead to see if that helps.
(I've been playing with XmlHttpTest and nearly have something working but I'm doing something silly most likely but posted that on stackexchange).
I'm sorry I can't provide an easy answer. There might be some conflict in versions of libraries used.
I have no personal experience with dbFit. I've done a few tests with jdbc slim (which I added as a maven dependency to my fitnesse installation) and that worked together quite well.
The DbFit district uses a vanilla Fitnesse JAR from the central repo and my classpath excludes the DbFit JARs.
Could there be and other file dependencies that I’ve not copied over?
I think I've cracked it. Somewhat embarrassingly I think I was mixing the binaries from your 3.15.1
release with the 4.0.0-SNAPSHOT
release from the DbFit upcoming distro. They have slightly different FitNesse versions bundled.
By copying in the following directories:-
- fixtures
- plugins
- target
- webdrivers
I can run both my DbFit/Fitlibrary suites as well as test SOAP web services. Great!
Is this something that would be worth documenting as part of your project for other users wishing to add your binaries to their installations?
Glad to hear you managed to get it to work. I'm pretty sure you don't need the target directory. And as long as you are not doing any browser testing, web drivers will not be needed either.
The maven-classpath plugin can be removed from the plugins folder (if you don't use !pom
in the wiki).
Does it still work in that case?
If you are willing to do a short write-up about your experiences, we could add that to the wiki on GitHub. Is that something you're interested in?
If you are willing to do a short write-up about your experiences, we could add that to the wiki on GitHub. Is that something you're interested in?
Yes. I can do that. I'll help to get the new DbFit release out first then write something up and get back to you.
Hello, i have a fitnesse testing framework, but now i need to upgrade my browser, so i need to update all my libraries. Does someone knows the latest versions for firefox, selenide, selenium and Fitnesse so they can work properly together????
Are you using this sample project, or some other fitnesse/selenium setup.
If you are NOT using the approach in this project I cannot advise you in general, as it depends on what (which versions) you are currently using and maybe even how you are using them. It might be a small matter of replacing some versions/jars and web driver executables. It might be more complex.
If you are using this sample project it is a matter of updating the version numbers for fitnesse and hsac-fitnesse-fixtures as described in the README
No, i'm not using this project as a base.
I have Selenium 2.47.1 firefox V32 selenide 2.17 and Fitnesse 20150424
@fhoeben sorry, not yet. However I think my initial problems were down to FitNesse version conflicts. It seems all I needed to do was to take the JARs from DbFit and add them to your distro, or in fact the fixtures
directory from your distro and add them to the master
(current FitNesse version) build of the DbFit project.
I can write this up. Where do you think it should go? On your project Wiki or in the README?
If it really was that simple a write-up might not be needed (we can point people to this issue).
But for a bit more elaborate description of which jars to put where, and what is needed in the wiki pages, a wiki page in this project seems like a good place.