Automating Internet Explorer w/o ActiveX
I've been automating some tests against a web application using Python and COM. My scripts send clicks to the browser to emulate user behavior and verify the results. I'm trying to find out if moving out of Python to .NET would benefit me much. I'm quite fond of C# as a development language. I've tried some existing tools like WatiN but the ActiveX controller used in the target web site does not play nice with them. I believe this is because the ActiveX controller is written incorrectly but I have no control over it.
Does .NET have any means of interacting with MSIE 开发者_StackOverflow中文版that isn't ActiveX or COM?
Believe me, stick with Python!
I'm afraid you are screwed when ActiveX is involved.
I did some automation with powershell via Com, and C# with WatiN (who said I can't do functional system testing via MSVS unit tests :P ) but I always had problems with ActiveX. I also tried some other tests like QuickTestPro, but still ActiveX was a pain. Problem was that in the system I was testing there was one ActiveX that was downloading some data in the background and than displaying it in the page.
I could catch some behavior when I was using HP Performance Center, but it was only when I was listening really low on on communication protocol. In the end it was useless for me as it would required to sniff and inject network traffic.
One thing that would work is software that is based on recognizing graphic areas, but I usually have limited trust in testing software that is based on some kind of OCRs or screen coordinates.
精彩评论