Contributions
Re: Code Completion for Javascript Classes
Marsha_R,cunderw- I assumed that they knew and it was just functionality that had not "caught up" with the rest of the editor. If it should be a bug, do you know where I go to log it? I found a way to log a support issue, but that does not feel like the same thing, so I was unsure. Stephen4.6KViews0likes0CommentsRe: Code Completion for Javascript Classes
Marsha_R- My project isabsolutely a JavaScript project. And I get code completion for normal functions and such, it just does not work for instantiated classes (objects). I have been doing some of my editing in Visual Studio Code as a work around, but it is frustrating to have to switch back and forth.4.6KViews0likes0CommentsIntegrate into Visual Studio Code
The editor in Visual Studio Code is much better than what is provided with Test Complete. This request is to integrate into Visual Studio Code for source editing and debugging. Visual Studio Code is very extendable and would provide a much better coding and debugging experience than the provided Test Complete text editor.3.6KViews19likes1CommentCode Completion for Javascript Classes
A recent release provided support for Javascript classes, but there is no Code Completion/Intellisense for them. If I make a class and then instantiate it via "new", that instance does not have any code compeltion on the methods or fields inside of it. This request is to upgrade the editor to allow for that.4.6KViews12likes7CommentsClasses in Javascript
I can't tell what version of Javascript is currently supported by TestComplete, but I am really hoping it supports classes of somekind. (Bascially EcmaScript 2015) I tried searching for it, but all the hits I found were 5+ years old. I am hoping things have improved in the last 5 years. (But I have tried playing around with it, and I can't seem to make it work.) Here is an ES2105 style Javascript class I would like to be able to use: export class CoolStuff{ constructor(){ this.coolness="this is cool"; } function runCoolness(addedCoolness){ Log.Message("Executing Coolness: " + this.coolness + " along with: " + addedCoolness); // Other Stuff here } } // In another file... let coolStuff = new CoolStuff(); coolStuff.runCoolness("more and more cool"); Is there a way to pull that kind of thing off with TestComplete?Solved3.5KViews0likes3CommentsCan't run custom JQuery
I am looking for ways around Named Mapping. I thought maybe I can get the elements I need to interact with via JQuery. At first I did this, to make sure that scripts are working: page.contentDocument.Script.eval("alert('testing')"); That runs fine (and shows the alert). I then tried: var originCode = page.contentDocument.Script.Eval("$('#OriginCode')"); Hoping to get the element I am looking for. But that gave me an error (very unhelpful error that says:Error 0x80020101 and file and line number to the line above). So then I tried this: varoriginCode = page.contentDocument.Script.$("#OriginCode"); From that I get a pop up error in Test Complete. It says: JavaScript runtime error. TypeError page.contentDocument.Script.$ is not a function But if I go to the console of my application and run$('#OriginCode') I get the JQuery object as a response. Any ideas of what I can do to get JQuery to work? Or any other ideas to work around Named Mapping? (If you want I can give a rant about how named mapping makes tests brittle and causes tons of work every time a slight change is made to the UI, but I will pass on that for now.)Solved1.3KViews0likes1CommentMake Named Mapping not care about the "Path"
My application has unique names for every single UI element. But the UI does change on occasion as development is on going. When I try to setup my application in Name Mapping, I set the ObjectType(input, select etc) and the ObjectIdentifier (the unique name). This is more than enough to identify any element in my application. And it all seems to work except that if the developers add a div around my element (or remove one), the name mapping breaks! That is confusing, because I am not mapping on its "path". When I open the broken mapping/alias, it says: The object must correspond to the 'NameMapping.Sys.browser.myPage.panel.panel.panelColMd9.panelFormGroup.fieldset.MyMappedName' Why does it do that? I have told it that I only want to use ObjectIdentifier and ObjectType. Why must it lock it into a path? This makes all my tests that use the mapping super SUPER brittle. On top of that, fixing the broken mapping is hard. Really hard. It is almost easier to start over each time. I am a bit frustrated as this product seems to be setup for me to fail, and a paid product should not do that!Solved1.6KViews0likes2Comments