随笔分类 - Web自动化测试
1
摘要:1、seldom 实现Page objects设计模式 seldom API的设计理念已经将元素操作和元素定位做了整合,本身不太适合实现Page objects设计模式。poium 是Page objects设计模式最佳实践,如果想使用poium,需要单独安装。 将seldom与poium结合使用。
阅读全文
摘要:1.1、seldom 提供了8中定位方式,与Selenium保持一致。 id_ name class_name tag link_text partial_link_text css xpath import seldom class YouTest(seldom.TestCase): def te
阅读全文
摘要:1、Seldom简介 Seldom是基于selenium 和 unittest 的 Web UI自动化测试框架。 提供更加简单API编写自动化测试。 提供脚手架,快速生成自动化测试项目。 全局启动和关闭浏览器,减少浏览器的启动次数。 支持用例参数化。 支持用例失败/错误重跑。 定制化HTML测试报告
阅读全文
摘要:项目背景 https://passport.csdn.net/login CSDN登录页面 功能实现 自动运行用例 自动生成测试报告 自动断言与截图 自动将最新测试报告发送到指定邮箱 数据,页面元素分离 PageObject+Unittest+ddt数据驱动用例 执行日志、分布式执行 项目架构 浏览
阅读全文
摘要:1、多线程执行测试用例 这里以百度搜索为例,通过不同的浏览器来启动不同的线程。 from threading import Thread from selenium import webdriver from time import ctime,sleep #测试用例 def test_baidu(
阅读全文
摘要:1、selenium-grid简介 selenium实现多机器分布式执行,依靠的是:selenium-grid(selenium的三大组件之一)。 selenium-grid允许用户在不同的机器上并行地针对不同的浏览器运行测试。 selenium-grid采用的是Hub和Node模式,允许在分布式测
阅读全文
摘要:点击日期控件 常规方法,先定位到日期控件,再选择日期 from selenium import webdriver from time import sleep # 启动浏览器 driver = webdriver.Chrome() driver.get("https://www.12306.cn/
阅读全文
摘要:Chrome通过设置参数来实现 from selenium import webdriver from selenium.webdriver.chrome.options import Options # 创建chrome参数对象 opt = Options() # 把chrome设置成无界面模式,
阅读全文
摘要:应用背景 selenium可以自由切换浏览器选项卡、处理浏览器弹窗、frame切换。 选项卡管理 import time from selenium import webdriver driver = webdriver.Chrome() driver.get("https://www.baidu.
阅读全文
摘要:概念 自动化测试模型可以看作自动化测试框架与工具设计的思想。 线性模型 线性脚本中每个脚本都相互独立,且不会产生其他依赖与调用,其实就是简单模拟用户某个操作流程产生的脚本。 from selenium import webdriver from time import sleep driver=we
阅读全文
摘要:验证码作用 不少网站在用户登录、用户提交信息等登录和输入的页面上使用了验证码技术。验证码技术可以有效防止恶意用户对网站的滥用,使得网站可以有效避免用户信息失窃、保证网站稳定安全性。 但是验证码给自动化测试带来一些不便,使脚本无法正常运行覆盖功能模块。 如何解决 1.去掉验证码 这是最简单的方法,对于
阅读全文
摘要:简介 PageObject是Selenium自动化测试项目开发实践的最佳设计模式之一,通过对界面元素的封装减少冗余代码,同时在后期维护中,若元素定位发生变化,只需要调整页面元素封装的代码,提高测试用例的可维护性。 实践案例 1.封装BasePage from selenium import webd
阅读全文
摘要:什么是Cookie Cookie是储存在用户本地终端上的数据,实际上是一小段的文本信息。 Cookie作用 帮助 Web 站点保存有关访问者的信息,方便用户的访问。 案例:查看和添加访问百度的Cookie内容(Chromel浏览器) from selenium import webdriverdri
阅读全文
摘要:文件上传 对于input上传,直接send_keys即可 from selenium import webdriverimport timedriver = webdriver.Chrome()driver.get('http://sahitest.com/demo/php/fileUpload.h
阅读全文
摘要:应用背景 selenium可以模拟人工上下滑动进度条的操作。 实践案例 案例1:打开我要自学网页面,然后将滚动条拖到最底部,然后再拖到顶部 from selenium import webdriver from time import sleep def jsroll(driver,top): js
阅读全文
摘要:概念 显示等待是针对某一个元素进行相关等待判定; 隐式等待不针对某一个元素进行等待,全局元素等待; 强制等待通过sleep来实现进程等待。 相关模块 WebDriverWait 显示等待针对元素必用 expected_conditions 预期条件类(下面很多方法可以调用,用于显示等待) NoSuc
阅读全文
摘要:实现思路 需要引入ActionChains类 然后定位相关元素 在ActionChains()调用相关鼠标操作方法 相关方法 ''' click(on_element=None) ——单击鼠标左键 click_and_hold(on_element=None) ——点击鼠标左键,不松开 contex
阅读全文
摘要:元素定位 元素的定位应该是自动化测试的核心,要想操作一个元素,首先应该识别这个元素象。 webdriver提供了一系列的对象定位方法,常用的有以下几种 id name class name link text partial link text tag name xpath css selector
阅读全文
摘要:测试案例 实现支持所有浏览器的方法,默认是Chrome浏览器 加载指定浏览器 首先打开菜鸟教程页面,打印网页标题,等待3秒 打开百度首页,打印网页标题,再等待2秒 关闭浏览器。 代码实现 from selenium import webdriver from time import sleep de
阅读全文
摘要:Selenium Webdriver概述 Webdriver (Selenium2)是一种用于Web应用程序的自动测试工具,它提供了一套友好的API,与Selenium 1(Selenium-RC)相比,Webdriver 的API更容易理解和使用,其可读性和可维护性也大大提高。Webdriver完
阅读全文
1

浙公网安备 33010602011771号