随笔分类 -  web自动化测试学习

selenium 原理
摘要:## selenium 原理1、架构层面的解读2、源码层面的解读selenium 安装:1、pip install selenium2、 chromedriver.exe 驱动3、浏览器python http请求--> chromedriver.exe --js --> 浏览器JavaGoJS源码: 阅读全文
posted @ 2022-02-05 00:34 熊猫星人 阅读(66) 评论(0) 推荐(0)
web关键字驱动
摘要:web关键字驱动: 数据驱动:很多测试数据 共享 一个测试逻辑(代码) 关键字驱动本质还是数据驱动: 需要执行的浏览器的操作名称也要配置到测试参数当中。 # 1、读取yaml文件的内容:包含浏览器操作和对应的测试数据# 2、 需要一个页面对象。BasePage , 调用basepage 浏览器操作 阅读全文
posted @ 2022-02-05 00:33 熊猫星人 阅读(72) 评论(0) 推荐(0)
allure测试报告的定制、jenkins集成以及jenkins主从模式
摘要:- allure 本地安装 - 安装包,方便打开报告的网页,allure-command-line, 运行报告服务 - allure 放到本地 allure\bin 目录配置到环境变量 - 下载地址:http://allure.qatools.ru/ - MAC配置环境变量: 1、修改配置文件 vi 阅读全文
posted @ 2021-12-13 11:45 熊猫星人 阅读(242) 评论(0) 推荐(0)
多个浏览器不同用户操作的用例
摘要:需求:在课堂派上完成老师考勤,学生签到的步骤。 分析需求,设计测试用例,在熟悉界面的同时把需要用到的元素定位表达式先写好,方便编写代码 ## 复杂用例(签到) 步骤: 老师: 1、需要打开一个老师角色的浏览器 2、登录老师账号 ### ### 3、在首页点击课堂名称,进入教室 Link text = 阅读全文
posted @ 2021-12-12 23:20 熊猫星人 阅读(209) 评论(0) 推荐(0)
元素定位分离
摘要:web测试的特征: 1.效率慢 2.不稳定,前端改了页面后,元素会变,不易定位 为了方便维护,可以把元素定位隔离出来,前端界面发生变化后,可以比较方便地进行修改。 一般有两种方式隔离: 1.直接放在PO页面作为类属性 2.创建一个独立的文件来管理元素定位表达式 第一种放在类属性 在下面直接调用 第二 阅读全文
posted @ 2021-12-12 21:46 熊猫星人 阅读(50) 评论(0) 推荐(0)
basepage实现与封装
摘要:思想: ●页面封装也可以使用组件方式。比如导航object, footer object等在多个页面重复出现的,使用组件可以增强代码复用性。 简单来说就是封装导航栏中的每个页面,将通用的页面操作封装成basepage 举例: 将不属于该登录页面的操作拿出来,单独再封装个类 在conftest补充实例 阅读全文
posted @ 2021-12-08 17:18 熊猫星人 阅读(261) 评论(0) 推荐(0)
UI测试框架搭建成型及PO模式
摘要:项目目录: 1.先在手工测试用例中写好测试步骤,然后复制测试步骤到注释中,方便编写代码步骤 2.测试数据分离 3.浏览器驱动分离 4.封装可复用的代码 什么是PO模式? PO:page object,页面对象模型,page代表我们需要操作的页面,把页面中的操作封装到一个类里,需要用到的url放到类的 阅读全文
posted @ 2021-12-07 19:08 熊猫星人 阅读(176) 评论(0) 推荐(0)
UI测试框架搭建雏形
摘要:项目目录下要有的内容: tests目录里的测试代码 可以先写注释梳理流程,再写代码 from selenium import webdriver from selenium.webdriver.common.by import By class TestSignIn: def test_sign_i 阅读全文
posted @ 2021-12-07 17:23 熊猫星人 阅读(63) 评论(0) 推荐(0)
UI自动化-文件上传
摘要:借助系统的操作上传文件 import time from selenium import webdriver from selenium.webdriver import ChromeOptions, ActionChains from selenium.webdriver.chrome.servi 阅读全文
posted @ 2021-12-07 17:13 熊猫星人 阅读(306) 评论(0) 推荐(0)
UI自动化测试的特征
摘要:## ui 自动化测试的特征 (web, app)- 1、界面修改频繁。前端 <div></div>- 2、界面需求变动也大。- 3、运行速度很慢。(浏览器打开速度慢,页面加载速度很慢,页面操作动画)3-4s- 4、界面稳定性不够。- 5、界面排版是不方便做自动化 ## ui自动化测试流程- 需求分 阅读全文
posted @ 2021-12-07 16:55 熊猫星人 阅读(77) 评论(0) 推荐(0)
发送JS指令操作浏览器
摘要:## DOM 文档对象模型(Document Object Model,简称DOM)通过 JS 控制浏览器当中的页面行为。document是DOM中的一种转换对象的方法 通过ducument操作元素: 通过window操作浏览器 滚动页面 滚动元素 修改时间选择器的时间 ## JS 的操作如果出现 阅读全文
posted @ 2021-12-01 12:01 熊猫星人 阅读(611) 评论(0) 推荐(0)
JavaScript基础
摘要:## JavaScript- 前端工程师学的编程语言(HTML, CSS, Javascript, Vue)- JavaScript , python , Java- 后端工程师:**java**, python ,go, rust, javascript, php, c#- Vue是一个 Java 阅读全文
posted @ 2021-12-01 10:57 熊猫星人 阅读(31) 评论(0) 推荐(0)
鼠标操作、toast、用户输入、快捷键操作
摘要:## 鼠标悬停```pythonel = browser.find_element('xpath', "//a[contains(text(),'HTML / CSS')]") # actionchains 下面动作方法必须要再加上 perform 才能生效ActionChains(browser) 阅读全文
posted @ 2021-11-30 12:00 熊猫星人 阅读(60) 评论(0) 推荐(0)
alert弹框操作
摘要:## alert出现频率不高。```pythonbrowser.switch_to.alert.accept() 实现弹框的方式:1、原生的 alert, prompt, 样式很丑,所以现在用得少2、框架vue.js 实现了 ui 效果,弹框,就是普通的元素。 出现弹框加个 browser.swit 阅读全文
posted @ 2021-11-30 11:57 熊猫星人 阅读(124) 评论(0) 推荐(0)
窗口切换
摘要:import time from selenium import webdriver from selenium.webdriver import ChromeOptions from selenium.webdriver.chrome.service import Service from sel 阅读全文
posted @ 2021-11-30 11:24 熊猫星人 阅读(44) 评论(0) 推荐(0)
selenium的二次封装
摘要:from selenium.webdriver import Chrome from selenium.webdriver.common.by import By from selenium.webdriver.support.wait import WebDriverWait from selen 阅读全文
posted @ 2021-11-30 10:54 熊猫星人 阅读(194) 评论(0) 推荐(0)
xpath对比css定位
摘要:## 元素找不到可能的原因(实战技巧)- 元素定位的表达式不对。 - 没有等待,或者是等待时间太少- 你根本不在这个页面。(另外一个窗口,在一个iframe当中。)## 元素定位不要用动态生成值如果属性存在以下特征,最好不要用该值作为元素定位的依据:- 属性值有数字 12- 不认识的莫名其妙的字符串 阅读全文
posted @ 2021-11-30 10:13 熊猫星人 阅读(198) 评论(0) 推荐(0)
web自动化测试等待的方法
摘要:## 等待的第一种方法 - 强制等待, time.sleep(3)- 隐性等待, 智能等待元素被加载, 全局只需要设置一次, 只能等待元素被加载- 显性等待,非全局 - 真的很麻烦,不容易理解。 - 你可以自己设置某种条件,如果条件满足了,就返回;如果条件不满足,就继续执行 - 等待某个元素可以被点 阅读全文
posted @ 2021-11-25 15:39 熊猫星人 阅读(68) 评论(0) 推荐(0)
html基础
摘要:## HTML- 每个标签都有自己独特的能力 <input> 输入框 <h2>- 标签中通过属性也可以获取某种能力- input 输入框- h2 标题- div 分块,换行- a 链接- img 图片- checkbox radio 多选、单选- id- name- form 表单格式- table 阅读全文
posted @ 2021-11-21 18:15 熊猫星人 阅读(47) 评论(0) 推荐(0)
元素定位方式
摘要:## web自动化测试核心内容- 元素定位- 网页操作- 等待- pytest + selenium- 项目实战 自动化去查找元素的方法:- 1、网页的页面结构(selenium)- 2、坐标- 3、图像识别 ## 什么是页面结构由各种各样的网页标签构成,形成很复杂的树形结构标签名、属性、text文 阅读全文
posted @ 2021-11-21 17:54 熊猫星人 阅读(66) 评论(0) 推荐(0)