Я слышал, что это просто вопрос мнения, но мне кажется, что неправильно ссылаться на вашу область формы в CFC, так как нет никакой гарантии, что область формы будет доступна при вызове вашего cfc и когда ваш метод вызывается. Лучше убедиться, что любые данные, которые должны быть доступны для метода, предоставлены явно вашему объекту. Это можно сделать, включив аргумент:
<cfargument name="resetAppVars" type="boolean" required="false" default="false" />
Затем вы проверяете arguments.resetAppVars, и он всегда определен, но по умолчанию имеет значение false.
Или путем создания атрибута для вашего объекта и создания метода явного набора:
(вверху вашего cfc)
<cfset this.resetAppVars = false />
<cffunction name="setResetAppVars" access="public" returnType="void" output="false">
<cfargument name="flagValue" type="boolean" required="true" />
<cfset this.resetAppVars = arguments.flagValue />
</cffunction>
В этом случае вы будете проверять это.resetAppVars. Вы также можете ограничить это локально, используя <cfset var resetAppVars = false />
в качестве объявления, что делает его закрытым атрибутом вашего объекта и, вероятно, является правильным, поэтому код, вызывающий объект, не может неправильно перезаписать эту переменную не-логическим типом. В этом случае вы просто будете обращаться непосредственно к resetAppvars в своем тесте, вместо того, чтобы использовать эту область.