Question: I'm working in an QA team. 

We do the automated work from the scratch. So many testing methods may be anti-pattern or disobey some discipline.

We pay lots of effort on test web pages on our products.

Our test cases are based on `Robot framework` and use the selenium library for testing web pages. 

I found my members write those code by looking up the html source code to find the `id` or `name` of the `DOM element`. (Because some of element in DOM without ID.)

Even worse, the same function buttons' `DOM id` are differs from many product.

So I just think the way we build the automated testing code is too slow.

I thought if there is an tool that can record our all actions' on web pages and turn it into Robot framework script or other testing framework scripts is more effective ? 

If there any good tool for the purpose ?

Second.

We test the `.NET` software by auto-it.
Is there any GUI Software testing tool can cross platforms even on `Android` or `iOS` ?
Thanks in advance.

Answer: 
Many people's first encounter with automation is to start with a record and playback tool. You quickly learn the limitations of that method because the code it produces is crude and not very maintainable. 

I do know some people who continue to use a recorder only for the purpose of getting the ID's or other unique identifiers, however there is still a manual process to take the ID's from the generated code and insert it into your own code. 

In my experience, every browser now has very good built in developer tools that make inspecting an element and finding a unique identifier pretty simple. I would suggest staying away from recorders as it would likely complicate your process instead of simplify it.
In my experience, I think you can use MTAS: msys-tech.com; I am working for the company for a while. The tool should be able to help in various functional testing requirements.