1.Selenium IDE简介
Selenium IDE是一个用于Web测试的集成开发环境,是Chrome和Firefox的插件,可以记录和回放与浏览器的交互过程。
虽然Selenium IDE可以帮我们实现生成代码、录制回放、元素定位等功能,但是它的缺点也很明显:
(1)录制回放方式的稳定性和可靠性有限;
(2)只支持FireFox、Chrome浏览器;
(3)对于复杂的页面逻辑处理能力有限。
2.Selenium IDE安装准备
(1)Chrome插件
下载的网址如下:
https://chrome.google.com/webstrore/detail/selenium-ide/mooikfkahbdckIdjjndioackbaiphokd。
(2)Firefox插件
下载的地址如下:
https://addons.mozilla.org/en-US/fire/addon/selenium-ide/。
Selenium IDE 安装完成之后,通过在浏览器的菜单栏中点击图标启动Selenium(见图3-5)。
3.实战演示
(1)录制第一个测试用例
1)用Selenium IDE创建新项目后,把新项目取名为hogwarts_demol。
2)然后需要在 “录制 URL” 文本框中填写录制测试脚本的网站URL,这里填写的URL是测试人社区 - 软件测试开发爱好者的交流社区,交流范围涵盖软件测试、自动化测试、UI测试、接口测试、性能测试、安全测试、测试开发、测试平台、开源测试、测试教程、测试面试题、appium、selenium、jmeter、jenkins,如图3-6所示
3)完成设置后,将打开一个新的浏览器窗口,加载URL并开始录制脚本。我们在页面上的操作都将记录在IDE中。操作完成后,切换到Selenium IDE窗口,并点击停止录制按钮(见图3-7)
4)停止录制后,为刚录制的测试用例取名ceshiren_demol。
(2)导出测试用例并分析其结构
利用Selenium IDE导出pytest格式的测试用例代码,导出测试用例代码如下(Python版):
# 注释是由Selenium IDE生成的
# Generted by Selenium IDE
# 导入可能用到的依赖
from selenium import webdriver
from selenium.webdriver.common.by import By
class TestCeshirendemol():
# setup_module()只会在开始测试时运行一次
def setup_method(self,method):
# 初始化webdriver
self.driver = webdriver.FireFox()
self.vaf = {}
# teardown_module()只会在结束测试时运行一次
def teardown_method(self,method):
# 关闭浏览器并关闭ChromeDriver 可执行文件
self.driver.quit()
# 测试方法
def test_ceshirendemol(self):
# 访问地址
self.driver.get("https://ceshiren.com/")
#设置窗口大小
self.driver.set_window_size(1382,744)
#点击操作(
self.driver.find_element(By.LINK_TEXT,"所有分类").click()
# 设置等待时间为2秒
time.sleep(2)
# 关闭当前窗口
self.driver.close()
上述这段代码简单地实现了对浏览器操作的自动化
4.保存
单击Selenium IDE界面右上角的 “Save” 图标,输入项目的保存名称即可完成保存。
5.回放
在Selenium IDE界面上选择想要回放的测试用例,单击按钮,在Selenium IDE中回放测试用例(见图3-8)
6.控件定位
如果想定位Web中其他的控件,只需要点击图3-9中的箭头,点击后就会跳转到浏览器上,然后点击想要定位的Web控件,此时,Target的值就会变成相应的定位表达式(见图3-9)