Please find the answers below:
1. If I install it on one site and test it and install it on second live site? (first site files will be deleted)
If you buy a license it will be for one domain name. If you change the license to another domain name you should remove it before installing it on the new one.
2. How can I define cache folder? I mean my web site has say 40,000 pages. All pages of all languages will be stored in one folder? or it will be stored /cache/my-site-folder1/, /cache/myfolder2/ etc.? Because 40 thousand x 20 languages = folder will be overloaded.
Yes, all the files will be in one folder. It will not translate everything instant after the installation. The number of cache files will grow when there is a request for translation. The maximal number will be 40kx20 if every page is requested at least once during the cache time period.
3. Free upgrades?
4. Free support?
Yes + one time integration
5. I am testing free version now. Only when visitor enters from homepage, the preference language is saving. Not if he entering one of the inside pages. Then I need to select language again and again.
It shouldn't happen that way. Which translation method are you using?
6. How exactly google knows the content is present in different languages? When it crawls or a visitor accesses a page?
You provide a sitemap to search engines and they know that you have the translations presented.
7. How long cache can be stored? I can change it? What happens if I change a page? cache updated?
By default it is set to 20 days. You can change it, but the default setting is most common for most of the websites. I don't suggest decreasing it, because translation traffic can become huge. After cache expires it will be updated again.