ContributionsMost RecentMost LikesSolutionsRe: Remote Desktop question concerning TC web using a node license and Firefox I have not had any problems running test complete over remote desktop other than when you disconect it locks the computer meaning TestComplete can't use the mouse or keyboard. If you think that is the problem I would make sure. I would sit down at that computer even if I had to plug my keyboard, mouse and monitor into it to be sure. Its likly that the setup is different on that computer. Or like I mentioned if you disconect your remote desktop the computer is locked and it can't access the keyboard or mouse. Also when you are not remoted into that machine and tests are running you most likly will need to have a keyboard, mouse and monitor it probably will not work either. Re: Hi! I don`t want to map Objects by names, I want to map objecty by Id`s. How can I do this? When you are mapping an object: First prompt select "Choose a name and properties manually" You may also be asked if you want to map parents too if so click yes. At that point you are presented with a window Find the property you want it to find that object by and make sure it is in the Left. If there is anything in the Left that you don't want to find it by make sure to move it to the right. Also you can rename your object at the top if you want to as well. Re: Version 11 Speed issues Just in case anybody else runs into this problem. This does seem to be fixed in TestCompelete Version 11.20.1491.7. Re: Version 11 Speed issues Just want to second what this topic is about. When I first discovered it I thought there was a performance bug introduced in the application under test. However after some investigation I came to the conclusion that TestComplete 11 is about 2 times as slow as TestComplete 10. Is there any new information on this? Is this being worked on or being planed for an upcoming release? I would really appreciate any information on this topic. Re: Tests timing out on TFS Build Never did figure out how to change the 30 minute time-out when running tests through tfs build. I did however find a work around. Creating a C# application that hooks into the TestComplete com interface made it easy to run the tests. The samples in the manual included everything I needed to know about the com interface. When creating the build it will let you run a script post build so I created a script that calls the C# application I wrote to run the tests. Doing things this way I was successful in getting my tests to run using TFS2013 builds. Tests timing out on TFS Build Using the latest version of TestComplete 10.20 Using TFS 2013 Using the TFS automated build system to run tests. Using the following tutorial to help me set everything up: http://support.smartbear.com/articles/testcomplete/testcomplete-and-team-build I can successfully get the tests to run. However after the tests run for 30 minute the Tests Stop. The exact error posted in the build is: Test 'BeamGage_R1' exceeded execution time-out period. After some searching I found that the 30 minute time out is a default of Visual Studios which can be changed using a test settings file. I add a test settings file to the solution and change the time-outs to be if an individual test exceeds 24 hours or if the total test run exceeds 48 hours. In the build configuration under the Test Area -> Automated tests -> Test Source -> Run settings I then select the test settings I created. There is also a Type of run settings I have tried Default and UserSpecified. Queue another build. Still run into the 30 minute time-out. I have tried many tweaks to get this to work and no matter what it seems that I still hit the 30 minute time-out. Currently I inherited a working solution to this using using TestComplete 9 and a TFS 2010 server so it should be possible. I am attempting to update to the new versions for TestComplete and TFS recreating this using the Test Complete 10 and TFS 2013 server and have figured out many issues but the last remaining issue that I can't seem to over come is this time-out problem. Re: C# plug-in helpJust found out all the Tabs are Eaten when you post. The format above is: TabName RibbonBar.Name RibbonBar.Control.Name RibbonBar.Name RibbonBar.Control.Name ... Some RibbonBars have multiple controls in them.Re: C# plug-in help Thanks for the quick reply. The data I want to store is. Each RibbonTab Each RibbonBar in each RibbonTab Each control in a RibbonBar. Below is one RibbonTab, its RibbonBars (1 tab in (ie. device, Gain)), each RibbonBars controls (2 tabs in (ieSerial Number, Rotation Speed, Track). There are 11 RibbonTabs (each with its own unique RibbonBars and controls) each would need to fit into this structure. __Strings.Tabs.Acquisition.Name = "Acquisition"; __Strings.Tabs.Acquisition.Device.Name = "Device"; __Strings.Tabs.Acquisition.Device.SerialNumber.Name = "Serial Number"; __Strings.Tabs.Acquisition.Device.RotationSpeed.Name = "Rotation Speed"; __Strings.Tabs.Acquisition.Gain.Name = "Gain (dB)"; __Strings.Tabs.Acquisition.Gain.Track.Name = "Track"; __Strings.Tabs.Acquisition.Gain.Axis1.Name = "Axis 1"; __Strings.Tabs.Acquisition.Gain.Axis2.Name = "Axis 2"; __Strings.Tabs.Acquisition.Gain.Power.Name = "Power"; __Strings.Tabs.Acquisition.FilterFrequency.Name = "Filter Frequency [KHz]"; __Strings.Tabs.Acquisition.FilterFrequency.Axis1.Name = "Axis 1"; __Strings.Tabs.Acquisition.FilterFrequency.Axis2.Name = "Axis 2"; __Strings.Tabs.Acquisition.FilterFrequency.Track.Name = "Track"; __Strings.Tabs.Acquisition.SampleResolution.Name = "Sample Resolution [µm]"; __Strings.Tabs.Acquisition.SampleResolution.ComboBox.Name = ""; __Strings.Tabs.Acquisition.AutoFind.Name = "Auto Find"; __Strings.Tabs.Acquisition.AutoFind.Button.Name = ""; __Strings.Tabs.Acquisition.RecordMode.Name = "Record Mode"; __Strings.Tabs.Acquisition.RecordMode.Enable.Name = "Enable"; __Strings.Tabs.Acquisition.RecordMode.Revolution.Name = "Revolution"; In addition to Name I would like to have a FullName for each RibbonBar and the controls in the RibbonBar. A RibbonBars FullName would look like "Acquisition|Device" A controls FullName would look like "Acquisition|Device|Serial Number" So I don't have to concatenate strings allover but done in just one place. Here is my code for the FullNames for the above objects __Strings.Tabs.Acquisition.Device.FullName = __Strings.Tabs.Acquisition.Name + "|" + __Strings.Tabs.Acquisition.Device.Name; __Strings.Tabs.Acquisition.Device.SerialNumber.FullName = __Strings.Tabs.Acquisition.Device.FullName + "|" +__Strings.Tabs.Acquisition.Device.SerialNumber.Name; __Strings.Tabs.Acquisition.Device.RotationSpeed.FullName = __Strings.Tabs.Acquisition.Device.FullName + "|" +__Strings.Tabs.Acquisition.Device.RotationSpeed.Name; __Strings.Tabs.Acquisition.Gain.FullName = __Strings.Tabs.Acquisition.Name + "|" + __Strings.Tabs.Acquisition.Gain.Name; __Strings.Tabs.Acquisition.Gain.Track.FullName = __Strings.Tabs.Acquisition.Gain.FullName + "|" + __Strings.Tabs.Acquisition.Gain.Track.Name; __Strings.Tabs.Acquisition.Gain.Axis1.FullName = __Strings.Tabs.Acquisition.Gain.FullName + "|" + __Strings.Tabs.Acquisition.Gain.Axis1.Name; __Strings.Tabs.Acquisition.Gain.Axis2.FullName = __Strings.Tabs.Acquisition.Gain.FullName + "|" + __Strings.Tabs.Acquisition.Gain.Axis2.Name; __Strings.Tabs.Acquisition.Gain.Power.FullName = __Strings.Tabs.Acquisition.Gain.FullName + "|" + __Strings.Tabs.Acquisition.Gain.Power.Name; __Strings.Tabs.Acquisition.FilterFrequency.FullName = __Strings.Tabs.Acquisition.Name + "|" + __Strings.Tabs.Acquisition.FilterFrequency.Name; __Strings.Tabs.Acquisition.FilterFrequency.Axis1.FullName = __Strings.Tabs.Acquisition.FilterFrequency.FullName + "|" + __Strings.Tabs.Acquisition.FilterFrequency.Axis1.Name; __Strings.Tabs.Acquisition.FilterFrequency.Axis2.FullName = __Strings.Tabs.Acquisition.FilterFrequency.FullName + "|" + __Strings.Tabs.Acquisition.FilterFrequency.Axis2.Name; __Strings.Tabs.Acquisition.FilterFrequency.Track.FullName = __Strings.Tabs.Acquisition.FilterFrequency.FullName + "|" + __Strings.Tabs.Acquisition.FilterFrequency.Track.Name; __Strings.Tabs.Acquisition.SampleResolution.FullName = __Strings.Tabs.Acquisition.Name + "|" + __Strings.Tabs.Acquisition.SampleResolution.Name; __Strings.Tabs.Acquisition.SampleResolution.ComboBox.FullName = __Strings.Tabs.Acquisition.SampleResolution.FullName + "|" +__Strings.Tabs.Acquisition.SampleResolution.ComboBox.Name; __Strings.Tabs.Acquisition.AutoFind.FullName = __Strings.Tabs.Acquisition.Name + "|" + __Strings.Tabs.Acquisition.AutoFind.Name; __Strings.Tabs.Acquisition.AutoFind.Button.FullName = __Strings.Tabs.Acquisition.AutoFind.FullName + "|" +__Strings.Tabs.Acquisition.AutoFind.Button.Name; __Strings.Tabs.Acquisition.RecordMode.FullName = __Strings.Tabs.Acquisition.Name + "|" + __Strings.Tabs.Acquisition.RecordMode.Name; __Strings.Tabs.Acquisition.RecordMode.Enable.FullName = __Strings.Tabs.Acquisition.RecordMode.FullName + "|" + __Strings.Tabs.Acquisition.RecordMode.Enable.Name; __Strings.Tabs.Acquisition.RecordMode.Revolution.FullName = __Strings.Tabs.Acquisition.RecordMode.FullName + "|" + __Strings.Tabs.Acquisition.RecordMode.Revolution.Name; C# plug-in help The problem: We are using MFC Ribbon controls in one of our applications. Ideally I would like to map the ribbon controls but we have not been able to do so yet. The only way I found to be able to get deeper into the MFC Ribbon is to navigate and get values from the controls by using the wItem properties exposed by the master Ribbon object. Because of this I have a very large number of strings to keep track of and since it is in display text they most likley will change over time. I would like to create a string library object so that my code is not using so many hard-coded strings. In Jscript I can accomplish this by: var __Strings = new Object(); __Strings.Tabs = new Object(); __Strings.Tabs.Acquisition = new Object(); __Strings.Tabs.Acquisition.Name = "Acquisition"; __Strings.Tabs.Acquisition.Device = new Object(); __Strings.Tabs.Acquisition.Device.Name = "Device"; ...... However I get no Intellisense, so it is generally laborious. What I am trying to do: Create a custom plug-in to house this object so I can get Intellisense, update the strings as they change and be able to share this across projects. In attempting to learn how to create a plugin for Test Complete using C#, I installed the SDK and was looking through the WPF sample and I could not install it into Test Complete. Things I done thus far: I am using Visual Studio 2010. I changed the project to use .net 3 so I can compile. (tried .net 3, 3.5 and 4) In AssemblyInfo.cs I changed AssemblyVersion to be version 8.0.0.0 (the Major version of Test Complete we are using). (I don't think this is the right place to update the version but was the only spot I could find.) After building it does not produce a .pls file but builds a .dll. (I try to install the extension by browsing to the .dll and get the error: "Cannot obtain information about the plug-in(s) from the (file Location).") I received the same error when I tried: 1. Renaming the.dll file to .pls 2. Building in both debug and release mode 3. 32 bit and 64 bit. (Program would need to be 32 bit because we run tests on 64 and 32 bit machines.) What do I need to do to solve my problem? There seem to be pieces missing from the C# example. For instance, the GetPluginRegistrator mentioned in the C++ and Delphi plug-in documentation is absent from the C# example provided in the SDK. If the solution is through a plug-in, what do I need to do to be able to get the sample to install in Test Complete? Thank you for your help.