When i execute project, i got "Failed to find item 'xxxx' using cached folders,trying again without cache".
During creating project ,i moved the caught objects from their default parent to the other . How can i modify cached folder?
disable caching for the parent folder
- Support Team
- Site Admin
- Posts: 12145
- Joined: Fri Jul 07, 2006 4:30 pm
- Location: Houston, Texas, USA
- Contact:
Re: disable caching for the parent folder
In the folder containing the item, open the properties and set "Use Cache" to false.
Michael
Ranorex Team
Michael
Ranorex Team
Re: disable caching for the parent folder
Hi,
I am also getting same warning in Ranorex log.
Can you please tell me what will be the impact of “disable caching for the parent folder” on identification of the controls for this parent folder?
Sometimes if I didn’t disable cacheing, it gave warning and failed the steps.
Is there any one place in repository where I can disable the caching?
I could not find UseCache() details in documentation.
Thanks,
Sachin
I am also getting same warning in Ranorex log.
Can you please tell me what will be the impact of “disable caching for the parent folder” on identification of the controls for this parent folder?
Sometimes if I didn’t disable cacheing, it gave warning and failed the steps.
Is there any one place in repository where I can disable the caching?
I could not find UseCache() details in documentation.
Thanks,
Sachin
- Support Team
- Site Admin
- Posts: 12145
- Joined: Fri Jul 07, 2006 4:30 pm
- Location: Houston, Texas, USA
- Contact:
Re: disable caching for the parent folder
Folder caching in Ranorex repositories tries to minimize the number of times a folder is searched using its path. That means, a rooted folder is only searched once using its path and from then on the element instance of the folder is used to search relatively for its children. The cached element instance for that folder is used as long as it gets invalid.
The methods used to determine if an element is invalid are technology specific, especially for MSAA elements they depend on the MSAA implementation of the corresponding control. That's why sometimes a folder element seems to be valid to Ranorex although it is not. In that case you will get that warning in your report and you should try to disable caching for that folder.
Disabling caching for rooted folders has some downsides and should only be done on a per item basis, that's why there is no global flag to disable folder caching: Firstly, performance will decrease since the folder element will be searched using its RanoreXPath whenever you access a child item of the folder. Secondly, if there are two elements that correspond to the folder's RanoreXPath, it is not guaranteed which element is found when the folder item is used several times. I.e. if you have two applications with the same title and a folder which path searches for a form with that title, it's not guaranteed that the same form will always be found if you have "Use Cache" disabled for that folder. If you have folder caching enabled, the same form will always be returned for that folder repository item (as long as the same repository is used or the form element gets invalid).
The "Use Cache" property is covered by the following chapter in the Ranorex User Guide:
http://www.ranorex.com/support/user-gui ... html#c2076
Regards,
Alex
Ranorex Support Team
The methods used to determine if an element is invalid are technology specific, especially for MSAA elements they depend on the MSAA implementation of the corresponding control. That's why sometimes a folder element seems to be valid to Ranorex although it is not. In that case you will get that warning in your report and you should try to disable caching for that folder.
Disabling caching for rooted folders has some downsides and should only be done on a per item basis, that's why there is no global flag to disable folder caching: Firstly, performance will decrease since the folder element will be searched using its RanoreXPath whenever you access a child item of the folder. Secondly, if there are two elements that correspond to the folder's RanoreXPath, it is not guaranteed which element is found when the folder item is used several times. I.e. if you have two applications with the same title and a folder which path searches for a form with that title, it's not guaranteed that the same form will always be found if you have "Use Cache" disabled for that folder. If you have folder caching enabled, the same form will always be returned for that folder repository item (as long as the same repository is used or the form element gets invalid).
The "Use Cache" property is covered by the following chapter in the Ranorex User Guide:
http://www.ranorex.com/support/user-gui ... html#c2076
Regards,
Alex
Ranorex Support Team
Re: disable caching for the parent folder
Thanks for your reply
As per given instruction in given link:
http://www.ranorex.com/support/user-gui ... html#c2076
I have created a repository and it has default settings i.e. ‘Enable Folder Caching’ is checked in repository configuration setting.
Can you please tell me where I can verify this setting in C# generated repository file?
How can we decide at the time of development that should we disable/enable the cache?
Or every time we need to check the logs, if it is giving warning then disable it for that particular item and later on enable it again?
Thanks,
Sachin
As per given instruction in given link:
http://www.ranorex.com/support/user-gui ... html#c2076
I have created a repository and it has default settings i.e. ‘Enable Folder Caching’ is checked in repository configuration setting.
Can you please tell me where I can verify this setting in C# generated repository file?
How can we decide at the time of development that should we disable/enable the cache?
Or every time we need to check the logs, if it is giving warning then disable it for that particular item and later on enable it again?
Thanks,
Sachin
- Support Team
- Site Admin
- Posts: 12145
- Joined: Fri Jul 07, 2006 4:30 pm
- Location: Houston, Texas, USA
- Contact:
Re: disable caching for the parent folder
Each folder has the property UseCache which returns a value indicating whether folder caching is used or not. In the generated C# code file you can see the value this property is set to when you look at the constructor of the folder class, it's the last value passed to the base constructor.
Regards,
Alex
Ranorex Support Team
Right, you should only set "Use Cache" to false for a folder item if you see the warning mentioned above in your reports. Generally, you should have to do that very seldom, if you see that warning message for many different controls, please send a bug report with a detailed description of the control and (if possible) a sample application to support_at_ranorex.com!cancerion wrote:Or every time we need to check the logs, if it is giving warning then disable it for that particular item ...?
Regards,
Alex
Ranorex Support Team