您现在的位置是:首页 > 技术教程 正文

【Python】WebUI自动化—如何用Selenium IDE录制脚本生成单元测试代码(基于Chrome)(17)

admin 阅读: 2024-03-29
后台-插件-广告管理-内容页头部广告(手机)

一.Selenium IDE介绍

Selenium IDE是Chrome和FireFox浏览器中的插件,Selenium IDE结合浏览器提供脚本录制、脚本回放、脚本编辑、元素定位等功能,使用Selenium IDE可以将录制的脚本生成相应单元测试框架的自动化测试脚本,录制脚本支持导出Python pytest、Java JUnit、 NUnit等格式

二.Selenium IDE下载、安装

下载

  • 地址1 https://www.extfans.com/web-development/mooikfkahbdckldjjndioackbalphokd/download/
  • 地址2 https://www.crx4chrome.com/crx/77585/

Chrome浏览器安装

  • 设置–扩展程序–打开开发者模式
  • 将后缀为crx文件拖拽到页面即可
    在这里插入图片描述

FireFox浏览器安装

  • 无需FQ,通过浏览器直接安装即可
    在这里插入图片描述

三.Selenium IDE 基本使用

  • 从浏览器的扩展程序中点击Selenium IDE 打开插件
  • 点击Create a new project–填写PROJECT NAME
  • 点击REC–输入要操作的URL–开始录制
  • 按照准备的测试用例操作步骤进行操作
  • 结束录制–填写TEST NAME
  • 点击Export–导出py文件
  • 参考脚本编写UI自动化脚本

在这里插入图片描述

Chrome和FireFox浏览器插件安装成功后,使用方法都是一样的,此处示例使用的是Chrome浏览器

  1. 创建新项目
    在这里插入图片描述

  2. 设置项目名称
    在这里插入图片描述

  3. 输入网站url
    在这里插入图片描述

  4. 测试用例录制完后点击结束录制
    在这里插入图片描述

  5. 按需导出测试用例
    在这里插入图片描述

在这里插入图片描述

  1. 参考导出脚本编写符合自己业务测试用例
# 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 TestUntitled(): def setup_method(self, method): self.driver = webdriver.Chrome() self.vars = {} def teardown_method(self, method): self.driver.quit() def wait_for_window(self, timeout = 2): time.sleep(round(timeout / 1000)) wh_now = self.driver.window_handles wh_then = self.vars["window_handles"] if len(wh_now) > len(wh_then): return set(wh_now).difference(set(wh_then)).pop() def test_untitled(self): self.driver.get("https://www.bilibili.com/") self.driver.set_window_size(1509, 918) self.driver.find_element(By.CSS_SELECTOR, ".nav-search-keyword").click() self.driver.find_element(By.CSS_SELECTOR, ".nav-search-keyword").send_keys("罗翔") self.vars["window_handles"] = self.driver.window_handles self.driver.find_element(By.CSS_SELECTOR, ".nav-search-submit").click() self.vars["win7307"] = self.wait_for_window(2000) self.vars["root"] = self.driver.current_window_handle self.driver.switch_to.window(self.vars["win7307"]) self.driver.close()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38

通过PyCharm运行以上代码,需要先配置好环境

  1. 安装pytest

    pip install pytest
    • 1
  2. 已配置好WebDriver,ChromeDriver或者FireFoxDriver

  3. 在代码后添加main函数,如下:

    if __name__ == '__main__': pytest.main()
    • 1
    • 2

四.Selenium IDE 窗口功能介绍

在这里插入图片描述

其他操作
在这里插入图片描述

标签:
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

在线投稿:投稿 站长QQ:1888636

后台-插件-广告管理-内容页尾部广告(手机)
关注我们

扫一扫关注我们,了解最新精彩内容

搜索