I have spent several days writing rules
and tests for them in Guvnor, and kept having strange results. A
test would sometimes fail, repeatedly, and then finally start working after
I would delete and recreate some portion of it, or change a value.
After two of us spent many hours trying
to identify the extent of the problem, we concluded the following:
1. The problem happens under both
IE and Firefox.
2. The problem happens less frequently
under Firefox if we install and turn on a third-party plug-in which disables
Firefox caching web pages.
3. Saving a new rule or test will
allow us to work with it (edit - save - test scenarios). However,
frequently the rule or test will just disappear once we log out.
4. A "Save" and "Check-in"
will often work correctly if we cross our fingers and do the following:
a.
Save it once (the screen updates, and you can check the version
history)
b.
Refresh the browser
c.
Make the change again
d.
Save it a second time
5. After doing a "Save"
and "Check-in", you can immediately do a "view source"
and see your changes in place. However, if you then close the test
(or rule) and re-open it, you will often find that the change is gone,
and the test or rule looks like it did before you made the change.
A sample screenshot appears below. In
this case, I created the test with the "performedTime" set to
20-Sep-2008. I ran the test and it failed, because the rule was checking
for greater than or equal to 21-Sep-2008. I then changed the date
on the test to 21-Sep-2008, did a "save changes" and a "Check-in",
and then ran the scenario again.
As you can see below, the asserted object
contains the date 20-Sep-2008, even though the test clearly shows 21-Sep-2008.
Does anybody have any ideas on this?
If I copy the above test into a new test, it will often work the
first time, but then it may disappear, once I logout, even though it was
saved and checked-in.
It almost seems like there is something
wrong with the imbedded repository, and / or the first running of the test
created fact objects that are persisting and being found the second time
I ran the changed test. ...
We are running the Final release of
Drools Guvnor 5.1.1 found in drools-5.1.1-guvnor.zip downloaded on 4-Sep-2010
We are running under Tomcat 6.0, with
the recommended jar files replaced.
Thanks for your help!
--------------------------------------------------
David Shields
Division of Clinical Informatics
Department of Community and Family Medicine
Duke University Medical Center
Phone (864) 787-8551