cancel
Showing results for 
Search instead for 
Did you mean: 

Difference between Aliases and Name Mapping and thier significances

Occasional Contributor

Difference between Aliases and Name Mapping and thier significances

Hi ,

 

While working on test complete, I came across a two workbenches under Name mapping section "Aliases" and "Mapped Objects". I found that the parent node of Mapped Object was "Sys" and for "Aliases" it was a process e.g. "CNEXT." I would like to know what is the difference between these two work benches and why was "Aliases" intorduced if "Mapped Object" workbench could provide information about the Object?

Below are the images for Mapped objects and Aliases

 

 

 

 

Regards,

Parth

4 REPLIES 4
Community Hero

Re: Difference between Aliases and Name Mapping and thier significances

Mapped Objects are the direct engine identification for the objects that are mapped for use in tests.  Aliases are a way of referencing the Mapped Objects in a more user meaningful fashion.  Additionally, where as, for example, you could have a Mapped Object that has something like

 

NameMapping.Sys.MyApp.MyForm.MySubPanel.AnotherSubPanel.EditBox

 

The Alias can be collapsed manually to simply be

 

Aliases.MyApp.MyForm.EditBox

 

Reference https://support.smartbear.com/testcomplete/docs/testing-with/object-identification/name-mapping/over...

 

 


Robert Martin
[Hall of Fame]
Please consider giving a Kudo if I write good stuff
----

Why automate?  I do automated testing because there's only so much a human being can do and remain healthy.  Sleep is a requirement.  So, while people sleep, automation that I create does what I've described above in order to make sure that nothing gets past the final defense of the testing group.
I love good food, good books, good friends, and good fun.

Mysterious Gremlin Master
Vegas Thrill Rider
Extensions available
Occasional Contributor

Re: Difference between Aliases and Name Mapping and thier significances

Hello Robert,

 

Thanks for the explanation.

 

But as we can see in the example, the classification path or the address of the object between  Mapped Names and Aliases are different

 

NameMapping.Sys.MyApp.MyForm.MySubPanel.AnotherSubPanel.EditBox  -  name mapping

Aliases.MyApp.MyForm.EditBox - Aliases

 

These two cases , if compared we can find that "My Subpanel" and "Another Subpanel" is missing then how does the tool land up to that particular object.

 Why does it not show any errors?

 

Thanks in advance.

 

Regards,
Parth.

 

Community Hero

Re: Difference between Aliases and Name Mapping and thier significances

Did you read the article?  It explains the whole thing.

 

Aliases point to Mapped Objects.  So, Aliases.MyApp.MyForm.EditBox points to the mapped object... and the mapped object is used then for finding and identifying the object.  Aliases are, exactly as the name implies, an "alias" for the mapped object.

The idea is that MySubPanel and AnotherSubPanel are mapped to be able to provide identification... however, because they are not strictly needed to be referenced for the test itself, the Alias edit window allows you to "collapse" the tree to be able to make referencing objects more user-friendly.

 

This is more easily seen in Web applications where a single text edit box may have a full path of something like

 

NameMapping.Sys.Browser.MyPage.Form1.Panel1.Table0.Cell13.Panel2.Table1.Cell23.TextBox

 

All that stuff in between is simply DIV tags and tables and cells used in the HTML to format the rendering of the web page.  It's really rather cumbersome to enter that whole thing every time you want to reference that TextBox and, for that matter, it's not readable.  If I'm scanning a test to find stuff, that's a VERY long string.  

 

When you first record the test, you MAY get an Alias that then reads almost exactly like that.

Aliases.Browser.MyPage.Form1.Panel1.Table0.Cell13.Panel2.Table1.Cell23.TextBox

 

So, the totally COOL feature of Aliases is that, because the Aliase REFERENCE the Mapped object, in Aliases, I can drag TextBox to be a direct child of MyPage and then delete the Aliases for everything else, PRESERVING the Mapped Object.  So, the Mapped Object remains as is... and now the Alias reads as

 

Aliases.Browser.MyPage.TextBox

 

The object hasn't changed... the Mapped Object hasn't changed.  Only the organization of the Alias has changed for the purpose of readability and convenience.  

This works for Desktop, Web, and Mobile applications in TestComplete.  Again, the article explains it all.  The logic is like so:

 

1) The test makes a reference Aliases.Browser.MyPage.TextBox

2) The NameMapping Engine of TestComplete looks at the Alias and finds that it references NameMapping.Sys.Browser.MyPage.Form1.Panel1.Table0.Cell13.Panel2.Table1.Cell23.TextBox

3) The NameMapping Engine then uses the NameMapping Mapped Object to perform its task of finding and identifying the object

4) The object handle is passed back to the test, via the Alias, so the test can interact with it.

 


Robert Martin
[Hall of Fame]
Please consider giving a Kudo if I write good stuff
----

Why automate?  I do automated testing because there's only so much a human being can do and remain healthy.  Sleep is a requirement.  So, while people sleep, automation that I create does what I've described above in order to make sure that nothing gets past the final defense of the testing group.
I love good food, good books, good friends, and good fun.

Mysterious Gremlin Master
Vegas Thrill Rider
Extensions available
Occasional Contributor

Re: Difference between Aliases and Name Mapping and thier significances

Thanks Robert for the explaination.Now, the things are clear.I will check them on my code and see if that works.

 

Happy Testing!!!

New Here?
Join us and watch the welcome video:
Announcements
Top Kudoed Authors