1、selenium1.0的特点
- selenium1.0中可以使用多种编程语言,在启动selenium程序前需要先启动selenium server端(selenium remote control)
- selenium 1.0是用javascript实现的,所以只要支持javascript的浏览器,都可以很好的支持selenium1.0
- 由于浏览器对javascript有严格的安全限制,以防止脚本攻击,所以导致selenium1.0的很多测试工作很难执行,比如IE下面的upload操作就不允许执行往输入框中填写文件的路径。主要有以下几点问题亟待解决:
1.没有原生的鼠标和键盘事件
2.XSS/HTTP同源数据问题
3.popup dialog问题 - selenium要求真实的浏览器环境
- selenium GRID可以实现并行测试
2、Webdriver的特点
- selenium1.0对所有的浏览器都是用javascript来处理,而Webdriver针对不同的浏览器选择本浏览器最容易接受的语言来处理,如IE,C++最合适,Firefox利用javascript比较合适。通过灵活的选择语言针对不同浏览器进行处理,可以很好地回避某些浏览器对javascript的安全限制。
- Webdriver可以调用操作系统的API,尤其是在用户模拟鼠标和键盘对页面进行操作的时候。
- Webdriver可以直接操作html unit驱动
- Webdriver不执行并行测试
webdriver 提供很多元素定位方法:id、name、xpath、css等。
3、selenium2.0
即selenium1.0+Webdriver
selenium2.0的最大特点就是不用再执行server端了。