AQuAMan

Overview

As a Peer Reviewer I want to have a fast and predictable method of checking the quality of application patches so that I do not have to exert a lot of time and energy manually checking these against the application standards.

As a Lead Developer I want to define and manage the quality standards that comprise the 'Definition of Good' for my application so that they can be applied and reported on in a peer review against an application patch.

Key Features & Functionality

  • Automate 80% of the Peer Review checklist items
  • Register Appian applications and define common standards across that application
  • Run a suite of tests across an application patch
  • Report on failed tests
  • Copy tests between applications
  • Define new object/attribute tests (including database table and view objects) and apply within an application
  • Set the reported significance for a failed test (Fail/Warning/Information)
  • Report on unused variables in Expression Rules and Interfaces
  • Report on the complexity score for Expression Rules and Interfaces
  • Report on missing labels/accessibility text for Interface Object components

Anonymous
Parents
  • Hi Team,
    For the first time we've tried deploying AQuAMan QA application (in Cloud) but we're seeing behavior which is almost identical to the issue posted by subhadeepr3242 6 months ago - where issue occurs only when evaluation some Process Models, but not others. Here's a stack trace of the error: - any ideas on what can be done?

    [1] object: pv!Object, attributeName: #"_a-0000e385-9976-8000-9bac-011c48011c48_3445850", objectAttributes: pv!objectAttributes ) =>(EXCEPTION) [2] 2024-04-15 06:48:58,298 [Appian Work Item - 194049 - WorkID 339 - execution02 - process 536878506 - model 1159 : ExpressionGroupRequest] DEBUG com.appiancorp.core.expr.tree.Variable - Variable local!xPathDocument => Context Reference local!xPathDocument Îåà 2024-04-15 06:48:58,298 [Appian Work Item - 194049 - WorkID 339 - execution02 - process 536878506 - model 1159 : ExpressionGroupRequest] DEBUG com.appiancorp.core.expr.tree.Variable - Variable local!xPathDocument => Context Reference local!xPathDocument Îåà 2024-04-15 06:48:58,299 [Appian Work Item - 194049 - WorkID 339 - execution02 - process 536878506 - model 1159 : ExpressionGroupRequest] DEBUG com.appiancorp.core.expr.Parse - =#"_a-0000e385-9976-8000-9bac-011c48011c48_3446005"( object: pv!Object, attributeName: #"_a-0000e385-9976-8000-9bac-011c48011c48_3445850", objectAttributes: pv!objectAttributes ) =>(EXCEPTION) 2024-04-15 06:48:58,299 [Appian Work Item - 194049 - WorkID 339 - execution02 - process 536878506 - model 1159 : ExpressionGroupRequest] DEBUG com.appiancorp.core.expr.Parse - Could not evaluate expression parse tree: =#"_a-0000e385-9976-8000-9bac-011c48011c48_3446005"( object: pv!Object, attributeName: #"_a-0000e385-9976-8000-9bac-011c48011c48_3445850", objectAttributes: pv!objectAttributes ) com.appiancorp.core.expr.exceptions.ExpressionRuntimeException$AppianExceptionProvider: Expression evaluation error in rule 'aqa_er_getobjectattributevaluebyattributename': Invalid index (1) for list: valid range is empty (APNX-1-4198-000) at <DESIGNER RULE>.(_a-0000e385-9976-8000-9bac-011c48011c48_3446005:1) at ______________________________SAIL_TO_JAVA_BOUNDARY______________________________.esId=BFH2LI9O(Unknown Source) at com.appiancorp.core.expr.exceptions.ExpressionRuntimeException.<init>(ExpressionRuntimeException.java:112) at com.appiancorp.core.expr.exceptions.AppianScriptException.<init>(AppianScriptException.java:28) at com.appiancorp.core.expr.exceptions.AppianScriptException.<init>(AppianScriptException.java:24) at com.appiancorp.core.expr.tree.Select.evalWrapped(Select.java:207) at com.appiancorp.core.expr.Tree.eval(Tree.java:448) at com.appiancorp.core.expr.Tree.eval0(Tree.java:438) at com.appiancorp.core.expr.Tree.eval(Tree.java:341) at com.appiancorp.core.expr.rule.Rule.evalBody(Rule.java:1569) at com.appiancorp.core.expr.rule.Rule.doEval(Rule.java:962) at com.appiancorp.core.expr.rule.Rule.eval(Rule.java:849) at com.appiancorp.core.expr.rule.Rule.evalAndCache(Rule.java:743) at com.appiancorp.core.expr.rule.Rule.eval(Rule.java:735) at com.appiancorp.core.expr.rule.Rule.evalWithMetrics(Rule.java:716) at com.appiancorp.core.expr.rule.Rule.eval(Rule.java:702) at com.appiancorp.core.expr.tree.FreeformRule.evalWrapped(FreeformRule.java:162) at com.appiancorp.core.expr.Tree.eval(Tree.java:448) at com.appiancorp.core.expr.tree.FreeformRule.eval0(FreeformRule.java:133) at com.appiancorp.core.expr.Tree.eval(Tree.java:341) at com.appiancorp.core.expr.Parse.evalInner(Parse.java:433) at com.appiancorp.core.expr.Parse.eval(Parse.java:383) at com.appiancorp.core.expr.Parse.eval(Parse.java:369) at com.appiancorp.core.expr.AppianScriptEngine.eval(AppianScriptEngine.java:79) at com.appiancorp.process.engine.ExpressionGroup.eval(ExpressionGroup.java:290) at com.appiancorp.process.engine.ExpressionGroup.eval(ExpressionGroup.java:354) at com.appiancorp.process.engine.ExpressionGroupRequest.execute0(ExpressionGroupRequest.java:106) at com.appiancorp.common.persistence.data.AppianDataUserContextProvider.executeWithConsistentDataReads(AppianDataUserContextProvider.java:143) at com.appiancorp.process.engine.ProcessContinuationRequest.executeOuter(ProcessContinuationRequest.java:68) at com.appiancorp.process.engine.ContinuationRequest.execute(ContinuationRequest.java:129) at com.appiancorp.process.workpoller.UnattendedRequestHandlerBean.onMessage(UnattendedRequestHandlerBean.java:36) at com.appiancorp.process.workpoller.WorkItem.run(WorkItem.java:110) at org.springframework.jca.work.SimpleTaskWorkManager$DelegatingWorkAdapter.run(SimpleTaskWorkManager.java:241) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:750) Caused by: java.lang.ArrayIndexOutOfBoundsException: Invalid index (1) for list: valid range is empty at com.appiancorp.core.expr.portable.storage.StorageArray.arrayIndexOutOfBoundsException(StorageArray.java:360) at com.appiancorp.core.expr.portable.storage.StorageArray.doSelect_integerScalarIndex(StorageArray.java:737) at com.appiancorp.core.expr.portable.storage.Storage.doSelect(Storage.java:735) at com.appiancorp.core.expr.portable.storage.Storage._select(Storage.java:693) at com.appiancorp.core.expr.portable.storage.Storage.select(Storage.java:673) at com.appiancorp.core.expr.portable.Value.select(Value.java:209) at com.appiancorp.core.Data.select(Data.java:124) at com.appiancorp.core.expr.tree.Select.eval(Select.java:223) -- 2024-04-15 06:48:58,300 [Appian Work Item - 194049 - WorkID 339 - execution02 - process 536878506 - model 1159 : ExpressionGroupRequest] ERROR com.appiancorp.process.engine.ExpressionGroup - An error occurred while evaluating expression: =rule!AQA_ER_getObjectAttributeValueByAttributeName( object: pv!Object, attributeName: cons!AQA_TEXT_OBJECT_ATTRIBUTE_NAME, objectAttributes: pv!objectAttributes ) (Expression evaluation error in rule 'aqa_er_getobjectattributevaluebyattributename': Invalid index (1) for list: valid range is empty) com.appiancorp.core.expr.exceptions.ExpressionRuntimeException$AppianExceptionProvider: Expression evaluation error in rule 'aqa_er_getobjectattributevaluebyattributename': Invalid index (1) for list: valid range is empty (APNX-1-4198-000) at <DESIGNER RULE>.(_a-0000e385-9976-8000-9bac-011c48011c48_3446005:1) at ______________________________SAIL_TO_JAVA_BOUNDARY______________________________.esId=BFH2LI9O(Unknown Source) at com.appiancorp.core.expr.exceptions.ExpressionRuntimeException.<init>(ExpressionRuntimeException.java:112) at com.appiancorp.core.expr.exceptions.AppianScriptException.<init>(AppianScriptException.java:28) at com.appiancorp.core.expr.exceptions.AppianScriptException.<init>(AppianScriptException.java:24) at com.appiancorp.core.expr.tree.Select.evalWrapped(Select.java:207) at com.appiancorp.core.expr.Tree.eval(Tree.java:448) ....

Comment
  • Hi Team,
    For the first time we've tried deploying AQuAMan QA application (in Cloud) but we're seeing behavior which is almost identical to the issue posted by subhadeepr3242 6 months ago - where issue occurs only when evaluation some Process Models, but not others. Here's a stack trace of the error: - any ideas on what can be done?

    [1] object: pv!Object, attributeName: #"_a-0000e385-9976-8000-9bac-011c48011c48_3445850", objectAttributes: pv!objectAttributes ) =>(EXCEPTION) [2] 2024-04-15 06:48:58,298 [Appian Work Item - 194049 - WorkID 339 - execution02 - process 536878506 - model 1159 : ExpressionGroupRequest] DEBUG com.appiancorp.core.expr.tree.Variable - Variable local!xPathDocument => Context Reference local!xPathDocument Îåà 2024-04-15 06:48:58,298 [Appian Work Item - 194049 - WorkID 339 - execution02 - process 536878506 - model 1159 : ExpressionGroupRequest] DEBUG com.appiancorp.core.expr.tree.Variable - Variable local!xPathDocument => Context Reference local!xPathDocument Îåà 2024-04-15 06:48:58,299 [Appian Work Item - 194049 - WorkID 339 - execution02 - process 536878506 - model 1159 : ExpressionGroupRequest] DEBUG com.appiancorp.core.expr.Parse - =#"_a-0000e385-9976-8000-9bac-011c48011c48_3446005"( object: pv!Object, attributeName: #"_a-0000e385-9976-8000-9bac-011c48011c48_3445850", objectAttributes: pv!objectAttributes ) =>(EXCEPTION) 2024-04-15 06:48:58,299 [Appian Work Item - 194049 - WorkID 339 - execution02 - process 536878506 - model 1159 : ExpressionGroupRequest] DEBUG com.appiancorp.core.expr.Parse - Could not evaluate expression parse tree: =#"_a-0000e385-9976-8000-9bac-011c48011c48_3446005"( object: pv!Object, attributeName: #"_a-0000e385-9976-8000-9bac-011c48011c48_3445850", objectAttributes: pv!objectAttributes ) com.appiancorp.core.expr.exceptions.ExpressionRuntimeException$AppianExceptionProvider: Expression evaluation error in rule 'aqa_er_getobjectattributevaluebyattributename': Invalid index (1) for list: valid range is empty (APNX-1-4198-000) at <DESIGNER RULE>.(_a-0000e385-9976-8000-9bac-011c48011c48_3446005:1) at ______________________________SAIL_TO_JAVA_BOUNDARY______________________________.esId=BFH2LI9O(Unknown Source) at com.appiancorp.core.expr.exceptions.ExpressionRuntimeException.<init>(ExpressionRuntimeException.java:112) at com.appiancorp.core.expr.exceptions.AppianScriptException.<init>(AppianScriptException.java:28) at com.appiancorp.core.expr.exceptions.AppianScriptException.<init>(AppianScriptException.java:24) at com.appiancorp.core.expr.tree.Select.evalWrapped(Select.java:207) at com.appiancorp.core.expr.Tree.eval(Tree.java:448) at com.appiancorp.core.expr.Tree.eval0(Tree.java:438) at com.appiancorp.core.expr.Tree.eval(Tree.java:341) at com.appiancorp.core.expr.rule.Rule.evalBody(Rule.java:1569) at com.appiancorp.core.expr.rule.Rule.doEval(Rule.java:962) at com.appiancorp.core.expr.rule.Rule.eval(Rule.java:849) at com.appiancorp.core.expr.rule.Rule.evalAndCache(Rule.java:743) at com.appiancorp.core.expr.rule.Rule.eval(Rule.java:735) at com.appiancorp.core.expr.rule.Rule.evalWithMetrics(Rule.java:716) at com.appiancorp.core.expr.rule.Rule.eval(Rule.java:702) at com.appiancorp.core.expr.tree.FreeformRule.evalWrapped(FreeformRule.java:162) at com.appiancorp.core.expr.Tree.eval(Tree.java:448) at com.appiancorp.core.expr.tree.FreeformRule.eval0(FreeformRule.java:133) at com.appiancorp.core.expr.Tree.eval(Tree.java:341) at com.appiancorp.core.expr.Parse.evalInner(Parse.java:433) at com.appiancorp.core.expr.Parse.eval(Parse.java:383) at com.appiancorp.core.expr.Parse.eval(Parse.java:369) at com.appiancorp.core.expr.AppianScriptEngine.eval(AppianScriptEngine.java:79) at com.appiancorp.process.engine.ExpressionGroup.eval(ExpressionGroup.java:290) at com.appiancorp.process.engine.ExpressionGroup.eval(ExpressionGroup.java:354) at com.appiancorp.process.engine.ExpressionGroupRequest.execute0(ExpressionGroupRequest.java:106) at com.appiancorp.common.persistence.data.AppianDataUserContextProvider.executeWithConsistentDataReads(AppianDataUserContextProvider.java:143) at com.appiancorp.process.engine.ProcessContinuationRequest.executeOuter(ProcessContinuationRequest.java:68) at com.appiancorp.process.engine.ContinuationRequest.execute(ContinuationRequest.java:129) at com.appiancorp.process.workpoller.UnattendedRequestHandlerBean.onMessage(UnattendedRequestHandlerBean.java:36) at com.appiancorp.process.workpoller.WorkItem.run(WorkItem.java:110) at org.springframework.jca.work.SimpleTaskWorkManager$DelegatingWorkAdapter.run(SimpleTaskWorkManager.java:241) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:750) Caused by: java.lang.ArrayIndexOutOfBoundsException: Invalid index (1) for list: valid range is empty at com.appiancorp.core.expr.portable.storage.StorageArray.arrayIndexOutOfBoundsException(StorageArray.java:360) at com.appiancorp.core.expr.portable.storage.StorageArray.doSelect_integerScalarIndex(StorageArray.java:737) at com.appiancorp.core.expr.portable.storage.Storage.doSelect(Storage.java:735) at com.appiancorp.core.expr.portable.storage.Storage._select(Storage.java:693) at com.appiancorp.core.expr.portable.storage.Storage.select(Storage.java:673) at com.appiancorp.core.expr.portable.Value.select(Value.java:209) at com.appiancorp.core.Data.select(Data.java:124) at com.appiancorp.core.expr.tree.Select.eval(Select.java:223) -- 2024-04-15 06:48:58,300 [Appian Work Item - 194049 - WorkID 339 - execution02 - process 536878506 - model 1159 : ExpressionGroupRequest] ERROR com.appiancorp.process.engine.ExpressionGroup - An error occurred while evaluating expression: =rule!AQA_ER_getObjectAttributeValueByAttributeName( object: pv!Object, attributeName: cons!AQA_TEXT_OBJECT_ATTRIBUTE_NAME, objectAttributes: pv!objectAttributes ) (Expression evaluation error in rule 'aqa_er_getobjectattributevaluebyattributename': Invalid index (1) for list: valid range is empty) com.appiancorp.core.expr.exceptions.ExpressionRuntimeException$AppianExceptionProvider: Expression evaluation error in rule 'aqa_er_getobjectattributevaluebyattributename': Invalid index (1) for list: valid range is empty (APNX-1-4198-000) at <DESIGNER RULE>.(_a-0000e385-9976-8000-9bac-011c48011c48_3446005:1) at ______________________________SAIL_TO_JAVA_BOUNDARY______________________________.esId=BFH2LI9O(Unknown Source) at com.appiancorp.core.expr.exceptions.ExpressionRuntimeException.<init>(ExpressionRuntimeException.java:112) at com.appiancorp.core.expr.exceptions.AppianScriptException.<init>(AppianScriptException.java:28) at com.appiancorp.core.expr.exceptions.AppianScriptException.<init>(AppianScriptException.java:24) at com.appiancorp.core.expr.tree.Select.evalWrapped(Select.java:207) at com.appiancorp.core.expr.Tree.eval(Tree.java:448) ....

Children
  • Hello Dimitark,

    I faced this too and found the the  Xpath function is using XPATH to OBJECT attribute from [AQA_OBJECT_ATTRIBUTE]  wrt to Object type ID.

    That attribute is corrupted when we are converting  mssql to Mysql to server.   

    First verify the Object type

    Verify the object attribute which is getting the call  when rule is failing and then try to pass that attribute.  Once you able to find out the attribute. Please compare it with  the one which is provided in package and see the difference.

    Also c heck case : "612282 - Please make an incident for Xpath broken"

    Thanks