我正在寻找一种方法来自动化一些浏览器... Firefox和Chrome(现在只在Windows上)来自外部应用程序/进程。
有没有办法按照以下方式做事:
作为参考,IE可以使用InternetExplorer.Application对象自动化,该对象可以使用以下javascript在shell脚本中创建,然后我可以使用DOM API:
var ie = new ActiveXObject('InternetExplorer.Application');
这里的激励方案是自动化测试。我想加载包含测试代码的页面,并在测试运行后收集结果。
答案 0 :(得分:11)
WatiN正是如此,我相信他们最近添加了Chrome支持
2011年6月22日更新: 目前WatiN仅适用于Firefox 2和3,而不适用于Firefiox 4(几乎可以肯定不适用于今天发布的Firefox 5)。此外,这个答案的时间,据说可以添加Chrome支持,但看起来好像从未完全出炉,现在并未在其主页上列为支持平台。
另外值得注意的是,根据我的经验,当我升级到IE9时,WatiN变慢了很多。我在两台不同的机器上看到了这一点,并降级到IE8,加快了两台机器上的测试速度。
我仍然大量使用WatiN,但现在主要用于行为驱动设计和功能回归测试,这些测试通常不是特定于浏览器的。然后,在FF和Chrome中手动测试所有进展测试。
2015年9月22日更新: Elmue是对的,看起来WatiN已经不再适用了。我们现在正在研究Selenium的自动验收测试:http://www.seleniumhq.org
答案 1 :(得分:0)
TestR将让您自动化IE,FF和Chrome。我已经开始研究Edge支持,但还没有时间。
https://github.com/BobbyCannon/TestR
您可以使用nuget包。
https://www.nuget.org/packages/TestR/
以下是一些例子。