ContributionsMost RecentMost LikesSolutionsRe: Newbie Question about Scripting Tests to run across multiple DB Hi, sonya_m, I'm actually still working through the issue. Since my original post, I've been watching some vb.net & Visual Basic tutorials just trying to get a better understanding of our programming language in hopes that it will assist with relating to TestComplete and scripting tests going forward. So far, it's like learning a new language :smileymad: but I think I'm slowly beginning to understand it more and more. Re: Newbie Question about Scripting Tests to run across multiple DB Wamboo thanks for the suggestion and the link; I'll look into this today :robothappy: Re: Newbie Question about Scripting Tests to run across multiple DB AlexKaras If it cannot be guaranteed that the value of TabIndex will remain stable, you may consider the approach like this: -- Search for all buttons within required scope (window/panel/etc.) using the .FindAllChildren() method; -- Iterate through the returned array and look for the button you need using some other criterion (for example - its caption); -- Proceed with the found button. The above approach will work even if TabIndex value changes from run to run. The price that you will pay is decreased performance (because of searching for all buttons and additional filtering) and possible cases with localization (if your application has localizations). Thank you very much for your reply and information :robothappy: Yes, I'm also worried about the TabIndex being stable, but it was the only unique property of the object so I figured I would try with that and see where it took me. I think it would work fine if all tests were being run on the one DB, but I'm almost certain it won't be useful across multiple DBs. I had actually thought about and looked into using the FindAllChildren method. However, where I was getting stuck was with actually returning an array. I wasn't sure which PropName and PropValue to use with the method in order to have anything returned. My first few attempts resulted in blank returns. Do you have any recommendations? Also, how would I go about iterating through the returned array? I really think this will be the way to go, because like you said it will work even if TabIndex changes from run to run. I'm not too concerned about decreased performance because this might be the only option for us to use TestComplete for this particular app (at least across multiple DBs). Thanks again for the info, - Allen Re: FindAll returns blank in log - help! Thank you so much,tristaanogre - that definitely clears some things up for me. So, in other words, I can use a method such as FindAllChildren configured to return a property such as FullClassName? I guess I'm still a bit confused about the method's operation parameters. Would I leave the PropValues as 'not specified' in order to return all child objects with the aforementioned property? I'm going to be spending the day reviewing some coding tutorials :robothappy: Thanks again for your reply and advice. - Allen Re: Newbie Question about Scripting Tests to run across multiple DB Hi tristaanogre thanks so much for your reply and advice :smileyhappy: I didn't think I'd find someone in the SmartBear Community with POS knowledge so quickly! Believe me, I had no intention of having a configuration for each of our clients lol and was planning on doing as you've suggested - more common setups and adding as we go (great minds think alike). My first real challenge came when I tried to get a script to run across just 2 different QA databases and was faced with this object property conflict. As mentioned in my reply to Wamboo I was able to determine that the TabIndex property seems to be the only unique property from one button to the next (although there will still be differences here from DB to DB so I'm not too sure that's a viable solution for our situation). It looks like I'll be spending some time today and maybe the next few days learning some basics of our programming language. Hopefully, that will clear some things up for me and maybe I'll be able to attack this from a different angle. Thanks again for your time and advice! - Allen Re: Newbie Question about Scripting Tests to run across multiple DB Hi Wamboo thanks so much for your reply it's very appreciated :smileyhappy: I have gotten familiar with NameMapping over the past few weeks but it sounds like I have a bit more to research and learn there. Just as you've described, I did use the Object Spy and went through each property of the object in question to determine which is a unique identifier and from what I can tell, the only one that is (aside from coordinates or other location markers) is TabIndex so I've used that to map the buttons. It looks like my next step is going to be finding some tutorials and learning a bit about our programming language which I was just told is vb.net. Maybe I should've started there before diving into test automation :robotlol: I've seen a little bit somewhere about using a debugger and I wasn't quite grasping the concept; so, I'll definitely follow your recommendation to read up on that as well. Thanks again for the advice! - Allen Re: FindAll returns blank in log - help! Hi cunderw I'm running into a similar issue as mentioned by the OP. My question relating to that and your response is, how can I loop through the results and print each one of the objects in the array? My apologies if this is something basic or beginner; I'm a complete newbie to this and trying to learn by doing & from the TC Academy, Courses, Community Board, etc. Thanks in advance for any reply or assistance. Cheers, Allen Newbie Question about Scripting Tests to run across multiple DB Hi all, For starters, I'll be frank - I'm a newbie to QA, newbie to automation, and have no tech background. I worked in hospitality for 12+ years and for the past ~3 years have been with a software dev company that develops Point of Sale (POS) software for use in hospitality. Until recently my main job duties mostly included end-user documentation and content production; occasionally I would assist with manual QA. We're now getting into automation testing with TC and I've been tasked with getting the ball rolling to figure out how we can use TC for our general regression tests. I've learned a lot over the past couple of weeks from watching the TC tutorials in the SmartBear Academy, webinars, etc. It seems like my biggest weakness with trying to figure different things out is my lack of technical skills and understanding code. Anyway, the issue that I've been stuck on for the past few days is how we can script tests that will run seamlessly across different test environments and different test databases. The reason being that obviously every customer in the real world will have a different setup in their POS; for example, Restaurant A might have a button for Coke in a certain position on one panel and Restaurant B might have it in a different position on a different panel. Another scenario could be that maybe we don't care which button is being selected as long as a product button is being selected and the product is rung up. Each product button has the same full class name (CFButton) so then TC maps them numerically and I've set up a template to use the TabIndex property to avoid conflicts. Even so, how can I script for TC to click any CFButton regardless of properties? I've looked into using Variables and couldn't work that at. I've also looked into the FindChild and FindAllChildren methods to see if maybe I could use that to return the objects (CFButtons) and go from there somehow. But, how can I actually see the objects being returned? Is there a different method that should be used? I feel extremely lost on this; my next step will be to just start reading through more TC documentation page by page until things start to come together. Thanks in advance for any replies or assistance. - AGR Solved