Troubleshooting: Unresolvable Property or Identifier - Soap/Web¶
If a Feature File addresses an object with a soap.
or web.
prefix, an error should occur. This is because it is trying to use intaQt's legacy behavior instead of intaQt's default behavior, which does not isolate the sublanguages from each other.
Feature File With Legacy Object Example
1 2 3 4 5 | Feature: New test Scenario: test 1 Given use context And verify soap.counter == "0" |
Solution
Remove the soap.
or web.
prefix.
Feature File With Default Object Example
1 2 3 4 5 | Feature: New test Scenario: test 1 Given use context And verify counter == "0" |
In rare cases of backwards compatibility, the legacy behavior may be activated instead of removing the soap.
or web.
prefixes. This should be avoided unless absolutely necessary. For more information, see Isolate Steps/UI Steps Language Contexts
Error Output Example
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | 10:40:12.188 [INFO]: Step started: verify soap.counter == "0" 10:40:12.189 [INFO]: Step ended with status: failed 10:40:12.189 [INFO]: [Error: unresolvable property or identifier: soap] [Near : {... soap.counter == "0" ....}] [Line: 1, Column: 1] at org.mvel2.PropertyAccessor.getBeanProperty(PropertyAccessor.java:676) at org.mvel2.PropertyAccessor.getNormal(PropertyAccessor.java:178) at org.mvel2.PropertyAccessor.get(PropertyAccessor.java:145) at org.mvel2.PropertyAccessor.get(PropertyAccessor.java:125) at org.mvel2.ast.ASTNode.getReducedValue(ASTNode.java:187) at org.mvel2.MVELInterpretedRuntime.parseAndExecuteInterpreted(MVELInterpretedRuntime.java:101) at org.mvel2.MVELInterpretedRuntime.parse(MVELInterpretedRuntime.java:47) at org.mvel2.MVEL.eval(MVEL.java:165) at intaqt.eds.a(Unknown Source) at com.tryge.autotest.server.stepdefs.verification.a.a(Unknown Source) at com.tryge.autotest.server.stepdefs.verification.d.a(Unknown Source) at ✽.And verify soap.counter == "0"(/var/folders/s7/5j2jb7tn0pv2_xs09djyrpfd4wp4_5/T/1500540011970-0/New test.feature:5) |