51Testing软件测试论坛
标题: Selenium IDE [打印本页]
作者: 草帽路飞UU 时间: 2022-7-18 11:41
标题: Selenium IDE
本帖最后由 草帽路飞UU 于 2022-7-18 11:49 编辑
1、前言
提起 Web 自动化测试工具,相信很多人第一个想到的就是 Selenium。
开源,使用者众多,功能强大,方法封装使用便利,可以兼容多种平台和多种开发语言等优点。
Selenium 有三大组件。
分别是:Selenium WebDriver、Selenium IDE、Selenium Grid
[attach]139177[/attach]
其实大多数人都是用 Selenium WebDriver,如果是分布式的话,就采用 Selenium Grid。
那么 Selenium IDE 是用来做什么的?
Selenium IDE 是一款面向 Web 的录制与回放的自动化测试工具。这对于刚介入自动化的测试人员来说,从这个入手再好不过了。
官网地址:
https://www.selenium.dev/selenium-ide/
2、安装从 Chrome 或 Firefox 网上商店安装 Selenium IDE 即可。
Chrome 网上商店
[attach]139178[/attach]
Firefox 网上商店
[attach]139179[/attach]
3、启动IDE安装完成后,通过单击浏览器菜单栏中的图标来启动它。
例如 Chrome 浏览器
[attach]139180[/attach]
注意:如果在浏览器菜单栏中找不到启动图标,确认在扩展设置中是否启用了 Selenium IDE。
通过在地址栏中输入以下内容点击进入,进行开启。
Chrome 浏览器:chrome://extensions
[attach]139181[/attach]
Firefox 浏览器:about:addons
[attach]139182[/attach]
通过点击 Selenium IDE 图标,启动后,弹出欢迎对话框。
可进行如下操作:
(1)在新项目中记录新测试
(2)打开现有项目
(3)创建一个新项目
(4)关闭 Selenium IDE
[attach]139183[/attach]
4、录制脚本点击【在新项目中记录新测试】或【创建一个新项目】都可以进行脚本的录制。
这里点击【在新项目中记录新测试】。
[attach]139184[/attach]
创建新项目名称,例如:My_Project,之后点击 OK。
[attach]139185[/attach]
设置录制的 URL 地址,例如:百度首页,之后点击 Start Recording。
[attach]139186[/attach]
自动打开浏览器,跳转到设置的 URL 地址,右下角提示正在录制中。
[attach]139187[/attach]
按照实际操作进行录制,录制完成后,点击停止录制按钮即可。
[attach]139188[/attach]
设置测试用例名称,例如:My_Test,点击OK。
[attach]139189[/attach]
脚本录制完成。
之后可进行添加、修改、删除测试用例(Tests)或测试套件(Test suites)等操作。
注:测试套件为多个测试用例的合集。
[attach]139190[/attach]
之后就可以运行脚本。运行过程中,执行日志信息也会打印到 Log 框里。
[attach]139191[/attach]
除了运行脚本,还可以进行脚本的修改、添加、删除等操作。
[attach]139192[/attach]
5、导出脚本通过右键单击测试用例(Tests)或测试套件(Test suites),选择 Export。
[attach]139193[/attach]
选择语言。
目前支持的语言和测试框架为:
● C# NUnit
● C# xUnit
● Java JUnit
● JavaScript Mocha
● Python pytest
● Ruby RSpec
还可以进行选填:
● 包括源代码跟踪注释
● 将步骤描述作为单独的注释包括在内
● 导出以在 Selenium Grid 上使用
如图:选择 Python pytest 语言。[attach]139193[/attach]
作者: 草帽路飞UU 时间: 2022-7-18 11:48
导出后的脚本文件,之后执行即可。
[attach]139195[/attach]
导出的脚本代码:
# Generated by Selenium IDE
import pytest
import time
import json
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.support import expected_conditions
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
class TestMyTest():
def setup_method(self, method):
self.driver = webdriver.Chrome()
self.vars = {}
def teardown_method(self, method):
self.driver.quit()
def test_myTest(self):
# Test name: My_Test
# Step # | name | target | value
# 1 | open | / |
self.driver.get("https://www.baidu.com/")
# 2 | setWindowSize | 1792x1034 |
self.driver.set_window_size(1792, 1034)
# 3 | type | id=kw | Selenium IDE
self.driver.find_element(By.ID, "kw").send_keys("Selenium IDE")
# 4 | click | id=su |
self.driver.find_element(By.ID, "su").click()
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) |
Powered by Discuz! X3.2 |