自动化测试selenium的安装和常用命令

                                                         自动化测试

一.分层的自动化测试的金字塔模型自动化测试selenium的安装和常用命令

API是前端到后端的枢纽。
UI层的自动化测试工具非常多,比较主流的是QTP,Robot Framework、watir、selenium 等。
其中70%的投入为单元测试,20%为集成、接口测试,10% 为UI层的自动化测试。
分层测试的思想:每一层做自己的该做的事,把问题尽早的暴露出来。
a.适合自动化测试的场景:
1.测试任务明确,不会频繁变动;
2. 回归测试比较频繁;
3. 界面比较稳定;
4.有大量重复任务;
5. 软件的维护周期较长;
6. 项目进度方面的压力较小;
7. 测试人员具备较强的编程能力。
其中UI自动化测试的case并不是凭空出来的,而是之前的功能用例抽取了核心的测试场景。
b.常用自动化测试工具
1.QTP(Quick Test Pro)支持B/S,C/S架构,主要用于回归测试和同一软件的新版本测试(收费,用得少)
2.RF(Robot Framework)基于关键字的接口自动化
3.Selenium 是一个用于Web应用程序的开源测试工具,支持多浏览器(Chrome,Edge,Opera,Firefox,IE,Mozilla),多语言(Java,C#,Ruby,Python,Perl,C++),多平台(Linux,Windows,MAC)
Selenium的优点
开源、免费;多浏览器支持,多平台支持,多语言支持;对Web页面有良好的支持
二.Selenium 1.0 组成
自动化测试selenium的安装和常用命令
Selenium IDE:Firefox浏览器中的一个小插件,实现浏览器操作的步骤的录制和回放
Selenium Grid:在多台机器和异构环境中运行测试用例
Client libraries:用来编写测试脚本,控制selenium server的库。(暴露API供调用)
Selenium server:负责控制浏览器的行为
Launcher:启动浏览器
Http Proxy:拦截你的请求
Core:加载JS来执行
Selenium Core就是一堆JavaScript函数的集合,即通过调用这些函数,我们才可以实现用程序对浏览器进行操作,嵌入到浏览器页面
launcher用于启动浏览器,把selenium core加载到浏览器页面中,并把浏览器的代理设置为selenium server的http poxy

三.Selenium 2.0 组成

Selenium 2.0=Selenium 1.0+WebDriver
SeleniumRC与WebDriver的区别
SeleniumRC是在浏览器中运行JavaScript应用,使用浏览器内置的JavaScript翻译器来翻译和执行selenese命令(selenese是selenium命令集合)。WebDriver是通过原生浏览器支持或者浏览器扩展来直接控制浏览器。
Selenium与WebDriver合并原因:WebDriver解决了selenium存在的缺点和问题;合并项目是为用户提供最优秀框架的最佳途径。

四.线下安装selenium
复制selenium安装包的路径,Windows+R打开运行界面输入cmd,切换到selenium安装包的盘,输入selenium的路径再输入python setup.py install
selenium webdriver元素定位的七种方式
(1)通过id定位
(2)通过name定位
(3)通过class_name定位
(4)通过link_text(点击文字)定位
(5)通过partial_link_text(点击部分文字)定位
(6)通过xpath绝对/相对路径定位
(7)通过css绝对/相对路径定位
Ps:class值有空格的话,不能用class定位;一般采用id来定位。

from selenium import webdriver (从selenium中导入webdriver)
driver=webdriver.Firefox() (把webdriver的Firefox赋给driver)
driver.get(‘https://www.baidu.com’) (打开百度浏览器)

通过id定位输入框
自动化测试selenium的安装和常用命令

通过name定位输入框
自动化测试selenium的安装和常用命令
通过class_name定位输入框
自动化测试selenium的安装和常用命令
通过link_text(点击文字)定位[必须是百度界面可点击的文字]
自动化测试selenium的安装和常用命令
通过partial_link_text(点击部分文字)定位[必须是百度界面可点击的文字]
自动化测试selenium的安装和常用命令
通过xpath绝对路径定位输入框
自动化测试selenium的安装和常用命令
通过xpath相对路径定位输入框
自动化测试selenium的安装和常用命令
通过css绝对/相对路径定位,一般不采用绝对对路径,其中路径之间用空格或者‘>’
(1)通过id定位输入框,其中#代表的是id;
自动化测试selenium的安装和常用命令
input#kw,其中加input是为了让定位更准确
自动化测试selenium的安装和常用命令
(2)通过class定位输入框,其中“.”代表的是class;
自动化测试selenium的安装和常用命令
回退,前进,停留5秒,刷新
自动化测试selenium的安装和常用命令
设置浏览器的大小
自动化测试selenium的安装和常用命令
浏览器全屏
自动化测试selenium的安装和常用命令
清除输入框的内容
自动化测试selenium的安装和常用命令
查看定位框的尺寸
自动化测试selenium的安装和常用命令

获取选定位置文本内容(不能被点击的文字)
自动化测试selenium的安装和常用命令
获得属性值,括号里写需要查询的属性名,用print()打印结果
自动化测试selenium的安装和常用命令
验证百度搜索框是不是正常显示,一般值是true或者false,后面可以调用if语句
自动化测试selenium的安装和常用命令