Come testate le regole Jboss Rules (Drools)?
-
05-07-2019 - |
Domanda
Ho scritto alcune regole di Drools per la mia applicazione Seam e mi chiedo come faccio a provare queste unità. Qualcuno ha qualche codice di esempio che può mostrarmi come procedere?
Soluzione
Aggiungi il seguente codice a un unit test (JUnit, TestNG, ecc.):
PackageBuilder builder = new PackageBuilder();
builder.addPackageFromDrl(new InputStreamReader(getClass().getResourceAsStream( "rules.drl")));
PackageBuilderErrors errors = builder.getErrors();
Assert.assertEquals(0, errors.getErrors().length);
RuleBase ruleBase = RuleBaseFactory.newRuleBase();
ruleBase.addPackage(pkg);
StatefullSession session = ruleBase.newStatefulSession(false);
MyFactObject myFact = new MyFactObject();
session.insert(myFact);
session.fireAllRules();
Altri suggerimenti
Prendi in considerazione alcuni test "zucchero" con un TestRule
di Junit library .
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow