Contributions
How to modify "Row" object "Value" property from scripts?
I've been using MSAA technique to read child objects of our application's property pages. I've tried Value[Set] and setting mapped names to project variables but it doesn't help me to modify the actual row value in the application. Object browser doesn't show any method like "SetProperty". Is there any way I can set the values from scripts?Solved1KViews0likes2CommentsRe: FindChild method fails intermittently when called from keyword test
Thanks Alex for the responses, please see my responses inline.. > fails 7 out of 10 times >>Does failure and pass occur for exactly the same data? Or just with different data the function may pass or fail ? >>>Test data is constant, sometimes it passes sometimes fails. I've seen the required object exists on the screen but Testcomplete fails to recognise it i.e. waits in the while loop and ultimately fails with error "object doesn't exist". After interrupting the test run, I'm able to locate that samechildobject from the name mapping so the childproperties I'm passing to the functionmust beright (also evidently it passes on the other occasions). Yes, I wascalling that function from keyword tests with array parameters. I've now changed it thinking itworks when called as a part of another function but it still fails so ideally this function intermittently fails no matter from where you're calling it - keyword test or asa part of another function. Please find attached screenshots for 1) the parameter passing from Keyword test. I've tried different depth parameters too e.g. 15 but that doesn't resolve the problem. Please note that "Page_MetapraxisLocalhost" (i.e. the first object highlighted in object browser) is a variable declared inseparate script called desclaration and I'm using USEUNIT in other function scripts. 2) the name mapping and 3) object browser (invisibleobjects is turned on)for the child object (highlighted in red)for which function fails.(Panel 0 is a dynamic object and it appears at several places in the application) Meanwhile I will udpate my while loop to "do while" and will check if that helps at all. > // This will find the child at any level >> You're right, actually those comments were added in hurry. Also initially I was struggling to find a single TC function to find the children with thegiven grand parentobjectand I later realised the depth is an important parameterof Finchild which controls this.(Also it wasn't obvious from the initial description of the method in the TC documentation, so I had to makea quick note before I forget the fact :) ). I will update it now. On the similar line, there is a new qustion on my mind -> do we need to use separate wait methods for the parentobjects which are createdat run timebefore usingFindChild methods on their child objects? Or FindChild is enough to handle these situations?2.2KViews0likes0CommentsFindChild method fails intermittently when called from keyword test
I've following common wait function for our web application which fails 7 out of 10 times when called from keyword tests - the parameters passed to function are of string type so I'm using eval as suggested in other community posts. function Wait_for_child_object_to_exist(parentObject, propertiesArray, valuesArray, depth) { var counter = 0; Sys.Refresh(); if (typeof propertiesArray == 'string') { propertiesArray = eval(propertiesArray); } if (typeof valuesArray == 'string') { valuesArray = eval(valuesArray); } parentObject = eval(parentObject); /*//printing arrays and param values Log.Message(parentObject); Log.Message(propertiesArray.length); for (var i=0; i<propertiesArray.length; i+=1) { Log.Message(propertiesArray[i] + " "); Log.Message(valuesArray[i] + " "); } */ if(!parentObject.Exists) //wait for the parent object if it doesn't exists Delay(3000); if(parentObject.Exists){ var child_object = parentObject.FindChild(propertiesArray, valuesArray, depth, true); // This will find the child at any level while((!child_object.Exists) && (counter < 90)){ //This will wait until child_object exists aqUtils.Delay(500); counter++; Log.Message("wait for child loop counter " + counter); } if(child_object.Exists) { Log.Message("child object found in the system"); return child_object; } else Log.Error("Failed to find the child object with given properties"); } else Log.Error("Parent object: " + parentObject+ " is missing"); //if parent object doesn't exist } However if I call this function as a part of another function so that parameter passing can be handled through script itself then it works consistently. But it doesn't always work if I pass the function paramters from keyword tests, it ends up with error "Failed to find the child object with given properties" even thought that object exists in the system. Can anyone please suggest if the above FindChild approach is right? Is there anything wrong with parameter passing from keyword tests?Solved2.4KViews0likes3CommentsRe: Chrome39 doesn't work with TCv10 despite of all extensions installed
Yes that's right. We were originally on TC v10.50 and that Chrome extension would work with v39 only. So the original issue in the post is now resolved. On the install and uninstall of TC - Because I have to download upgrade installer for v10.50 I went on installing v10.30 first and tried opening projects which ultimately doesnt work. We anyways have to upgrade and I hope atleast after upgrade the existing projects would work. Any idea what needs doing here?1.9KViews0likes1CommentRe: Chrome39 doesn't work with TCv10 despite of all extensions installed
Well it did work at the end after I modified the TC installation and I can see my chrome extension enabled and working with TestComplete. But since the modfiy installer did change some of my desktop extensions I attempted to un-install and re-install TC v10.30 which apparently broke myprojects it seems. I cannot open any of my existing projects and it now keeps crashing in tcCore.dll. Annoying!!1.9KViews0likes3CommentsRe: Chrome39 doesn't work with TCv10 despite of all extensions installed
I'm using TC v10.50. Well I did install latest chrome and it didnt work as the TC extension was disabled in chrome [common problem many people reported] and which I couldn't enable after all googling attempts. So I thought of installing v39 and the TC extension was at least enabled. Will TC v10 work with latest Chrome?1.9KViews0likes5CommentsChrome39 doesn't work with TCv10 despite of all extensions installed
I have installed chrome v39 which is currently supported by TestComplete v10 [after TC installation] . I can see the testcomplete extension enabled in chrome. Also Testcomplete install extensions dialog shows all the chrome extensions checked. But still TestComplete object spy isn't able to read objects and shows error message "Check if chrome extension is enabled or installed" I have tried modifying the TC installation to re-install web components and chrome re-installation followed by machine restart but no luck! Is there anything that I'm missing? I already have working test scripts for IE browser which I'm trying to configure on Chrome browser.2KViews0likes7CommentsCannot get a picture object from the input parameter, error occurs on region checkpoint tests
I have extended search turned on for the object which I'm using the in region checkpoint keyword test. The checkpoint fails with error "Cannot get a picture object from the input parameter" Prior to this error the warning message were posted which suggests that "The mapped item "xyz", which is one of the parent objects of the missing object, has the Extended Find attribute enabled. As a result, the test engine sought for this parent object on all levels down the object hierarchy and found the following object matching the mapping criteria:...." where the mapping in the log suggests that the TestComplete is half way through the object hierarchy and probably couldn't reach to find desired object. Is this because TestComplete is taking longer to do extended search for the required dynamic objectin the region checkpoint?868Views0likes1Comment