- 博客(120)
- 问答 (1)
- 收藏
- 关注
原创 5.5 python函数式编程之--返回函数、匿名函数、偏函数(暂时稍微了解即可)
nonlocal声明变量非当前内部函数局部变量,调用外部函数时,每次调用都是一个新的函数对与闭包函数使用, 调用外部函数时,其实并没有执行,直到调用了内部函数才会执行。 内层函数引用外层函数局部变量,如果未赋值可正常执行 内层函数引用外部函数且对外层变量重新赋值,会报错 闭包时:尽量避免在返回函数中引用可变化的变量。
2023-07-16 15:16:09
249
原创 5.4 python内置高阶函数之--map、reduce、filter、sorted
了解python高阶用法: map、filter、sorted, 常用的几种
2023-07-16 10:57:59
352
原创 1-1 ISTQB-FL基础认证证书
根据FL考试大纲 & 练习题对比, 梳理了考试范围内的内容。并自行结合个人经验&其他资料汇总, 便于对于容易混淆或者理解有偏差的内容的扎实掌握。目前已过FL, 正在备考TM, 后续也会以类似形式进行总结。如需完整附件, 可评论区留言, 会定期联系。后续还可能会有软考类笔记总结。。
2023-04-12 10:05:45
403
2
原创 第一篇Java环境安装以及Maven配置
本篇文章会针对maven环境配置的步骤一步一步写, 局部安装过程可自行寻找资料,此处不会一一说明, 如安装过程中有问题,可以评论留言, 会定期查看回复。一、 安装JDK, 并配置JAVA_HOME环境二、 安装IDEA工具,建议可安装2020版本,不需要登录三、安装MAVEN(跟项目有关)1、 同开发拿到后端项目的:settings.xml文件,查看并修改相关内容2、将配置文件放在maven安装目录下3、将配置文件放在用户目录下, 如:mac : /Users/xxx/.m2/setti.
2022-04-12 10:22:37
315
原创 1. 2 Flask介绍与第一个程序
一 、 Flask简单示例1. 程序示例:Hello World2. 示例内容说明1) Flask类: 继承_PackageBoundObject类, 该类_init__中参数说明可以进入该类py文件查看__name__特殊变量,此时可以通过所处模块赋予__name__变量相应的值,对上述代码示例的话,name= day013. 路由注册:1) 过程了解先了解:WEB应用程序里,客户端和服务器上的Flask程序的交互可以概括为:用户在浏览器输入:URL访问某个资
2021-02-09 13:25:31
2361
原创 1.1 Flask 环境搭建
一、 Pipenv 环境准备Pipenv 是基于pip的Python包管理工具,与pip用法类似 ,是pip,Pipfile 和Virtualenv的结合体,它让包安装、包依赖管理和虚拟环境管理更加方便,可实现搞笑的Python项目开发工作流。1. 安装pip和Pipenv1) pip安装: pip 是用来安装Python包的工具,一般在python安装完成时,会自动完成安装,可以通过命令:pip --version 如下图类似内容,则会安装成功 http-command3 移动端自动化框架在自动化接口方面不应该重造轮子,find_element\click send_keys WebDriver --- Web浏览自动
2020-09-27 11:30:50
464
原创 4.1 APP_UI ---- ADB常用命令以及启动参数说明
一. 移动端自带框架: iOS 9.3 及其以上: 苹果的XCUITest (基本用这个)iOS 9.3及以下: 苹果的UIAutomationAndroid4.2+: 谷歌的UiAutomation (基本用这个)Android2.3+ : 谷歌的Instrumentation(通过绑定另外的项目---- Selendroid Instrumentation的支持) - 不需要把Appium特定的或者第三方的代码编译进你的应用 - 意味着你测试使用...
2020-09-27 11:01:59
786
原创 4.0 APP_UI自动化 ----- 环境准备(Windows)
一、Appium 介绍: 开源,跨平台,多语言支持的移动应用自动化工具 测试对象: 原生App 混合(Hybrid) app 移动web app 测试对象APP运行平台:IOS Android Windows FirefoxOS 测试对象APP运行环境:真实设备,模拟器 测试程序语言: Python.Java.Ruby.js,PHP,c# 测试程序运行平台: Windows,Linux,Mac,OS...
2020-09-27 10:47:39
364
原创 3.13 Web自动化 --- PO设计思想介绍
一 、 PO 是什么页面对象模型(PO)是一种设计模式,全称(Page Object),用来管理维护一组web元素的对象库 在PO下,应用程序的每一个页面都有一个对应的page class 每一个page class维护着该web页的元素集和操作这些元素的方法 page class中的方法命名最好根据对应的业务场景进行,例如通常登录后我们需要等待几秒钟, 多用于UI自动化测试(例: Web ,APP等)二、代码结构1. PageObject层页面对象内容同包含: ...
2020-09-23 13:39:32
1274
原创 3.12 Web自动化---- 自动化背景与测试流程
一、 自动化测试背景1、 什么是自动化测试? 机器替代手工测试,自动测验结果是否符合预期2、 自动化测试能够带来什么? 替代大量重复性工作,减轻双手工作量 提高回归测试效率,适合敏捷测试 在非工作时间自动执行,工作时间查看测试报告 保证每次测试执行的一致性与正确性,避免人为错误3、 自动化测试劣势? 一般用于回归测试 不能完全替代手工测试 自动化测试环境依赖性较...
2020-09-22 05:47:20
923
原创 3.11 Web自动化 --- 鼠标操作、文件上传
一、 鼠标操作1. 引入: 在自动化测试过程中,有些元素不适合直接点击或者进行某些操作时,就可以使用selenium库中的Action类来模拟鼠标操作,通过Action类(java),ActionChains(java)可以发起拖拽,移动等操作,最后使用perform进行执行操作2. 方法介绍:主要操作流程: 1. 存储鼠标操作 2. perform()来执行鼠标操作支持的操作如下: python中用法:...
2020-09-22 05:10:04
450
原创 3.10 Web自动化 ---- js修改元素属性、页面滑动
一、 时间日期控件允许输入时间 控件如果没有限制手动输入,则直接可以使用sendKeys(或send_keys)方法写入时间数据 空间有设置限制输入,那么就不能sendKey操作了,需要先js修改元素value属性 如:https://www.12306.cn/index/网站日期输入框1. Window窗口Console控制台修改readOnly属性 仅对本次生效,页面刷新之后,日期空间input就又不允许手动输入了:2. Python代...
2020-09-22 02:19:35
846
原创 3.9 Web自动化 --- radio单选、checkbox多选、select下拉框
一、 radio 单选按钮和checkbox多选按钮 1. 概述: radio单选按钮: 允许用户多选一: 在多个选项中,仅允许选择一个(type=radio) checkbox多选按钮: 支持在多个选项中多选择(type=checkbox) 2 . 操作方法: 跟普通元素定位一样,定位选择框,点击选择 查看当前选项是否被选择,可以用如下方法 ele.is...
2020-09-18 14:55:14
2534
原创 3.8 Web自动化 ----- Alert、Window、Iframe切换
一、 对话框1. 概述 是指用户想要对对话框以外的应用程序操作时,必须先对对话框进行响应,如单击【确定】或【取消】按钮将该对话框关闭2. 对话框分类 1) alert警告框 2) confirm确认框 3) 通过div显示在页面最上层的内容3. 对话框的操作 1) alert,confirm等对话框的操作 当要操作页面上的alert警告框时,必须先获取到此alert警告框 ...
2020-09-17 14:06:50
318
原创 5.0 Robot Framework 框架学习
测试框架共同点:手工编写用例+测试数据手工运行用例 — > 自由运行用例肉眼全程观察运行过程—>自动记录运行过程肉眼校验结果 — > 自动校验测试结果手工编写测试报告—> 自动生成测试报告 (查看测试报告,分析测试报告,反馈bug,优化脚本)Robot Framework 框架学习一、 RF特点:开源、基于python语言丰富的第三方库: UI , API, Android, iOS测试用例支持: txt\tsv、html等格式编写关键字驱动,用已有关键字
2020-09-15 20:23:55
588
原创 4.0 HttpRunner测试框架使用(python)
HttpRunner1. 引入接口测试有哪些方法?1) 依靠工具:postman, Jmeter,SoupUi2) 使用代码创建接口请求语言: Java Python用例数据存储在哪里? – Excel使用框架:unnittest框架+ 结合ddt数据驱动日志器、配置文件、PyMysql、requests参数化: 结合正则接口依赖: 动态创建类属性的方式来处理测试报告Jekins实现持续继承HttpRunner, 将上述所有优秀的框架进行了完美的封装,几乎可以0代码,高效率进
2020-09-15 19:54:15
2803
原创 1.0 python之pytest使用
进阶2: python之pytest使用1. Pytest介绍 A. 与unittest对比? 基于unittest之上的单元测试框架。 1)自动发现测试模块和测试方法 2) 断言使用assert+表达式即可 3) 可以设置测试会话级、模块级、函数级的fixtures数据准备+清理工作; 4) 有丰富的插件库,目前有600个以上。 ==allure B. 安装 安装命令:pip install pytest
2020-09-15 19:49:19
447
原创 3.7 Web自动化 --- 元素三大等待方式
一、死等,硬等待 -- sleep 1. python用法 参数以秒为单位import timetime.sleep(3)2. java用法 参数以毫秒为单位Thread.sleep(3000);3. 优点缺点 1) 优点: 使用简单 2) 缺点: 无论元素是否找到,都会等待所设置的时间,容易造成时间浪费二、 隐式等待 --- implicityWait()1. python用...
2020-09-15 19:42:28
586
原创 3.6 Web自动化 ---- 常用API(WebElement 和WebDriver对象常用)
一、 WebElement对象API常用API1. 常用基本API2. 键盘输入操作3. python代码练习import timefrom SeleniumWeb import openBrowserfrom selenium.webdriver.common.by import By# 键盘使用from selenium.webdriver.common.keys import Keysdriver = openBrowser.openBrowser("Chrom.
2020-09-15 16:09:28
341
原创 2. 13 Python 之接口请求发送(依赖Session)
接上一节: 2.12python 发送request请求方法封装(依赖requests)在上一节,最后提出requests.method发送请求是不会自动保留cookies信息,那么充值必须需要登录才可以,所以解决方式有2种:1. 手动解决: 提取cookies信息,下一个充值接口发送请求时,手动传递cookies2. 自动保存cookies,用作下一个接口:Session发送请求,如下截图代码:Session发送请求方法封装(参考上一节2.12)...
2020-09-14 11:54:44
419
原创 2.12 python 发送request请求方法封装(依赖requests)
import loggingimport requestsfrom requests import Sessionclass MyRequest: def sendRequest(self, url, method, params=None, data=None, headers=None, json=None, cookies=None,timeout=10): ''' :param url: 接口请求地址 .
2020-09-14 10:59:58
2342
原创 3.5 WEB自动化 --- Xpath定位方式
一、 Xpath(XML Path Language)相关概念 是W3c定义的用来在XML文档中选择节点的语言主流浏览器也支持Xpath对于浏览器原声支持XPATH,Selenium尽量使用原声的Xpath实现,有些浏览器也支持Xpath访问xpath的语法类似与电脑文件系统的路径二、 绝对定位与相对定位绝对定位: 从根目录开始,以“/”开头,严格按照层级,同级元素位置: 太死,容错性差相对定位: 不依靠位置和层级,只需要一个参照物,根据这个参照物,来确定指定元素的位置...
2020-09-11 19:55:33
610
原创 3.4 WEB自动化 ---- CSS方式定位元素
一、 常用元素定位表达式二、如何判断当前元素的css 元素定位内容对不对1). 快捷键: CTRL+F 然后在搜索框内内容输入定位元素的内容,查看位置是否是预想中的位置2) . console中进行查询:$$("input[name='wd']") 然后回车即可...
2020-09-11 19:37:10
315
原创 3.3 Web自动化 ---- 元素定位(基本定位方式)
常见元素定位方式: 通过id(一般id唯一) : By.id 通过元素name属性来定位: By.name 通过元素标签名来获取元素: By.tagName 通过元素class属性值来定位: By.className 通过元素超链接的文本值来获取元素: By.linkText 通过元素超链接的部分文本值来获取元素: By.partialLinkText...
2020-09-11 11:35:02
1352
原创 3.2 WEB自动化UI ------ selenium自动化工作原理以及环境准备
介绍 Selenium IDE 是一个Firefox/Chrome插件,用于记录和回放用户与浏览器的交互,使用它来创建简单的脚本和协助进行探索性测试。安装: 下载地址: https://www.selenium.dev/downloads/...
2020-09-10 18:23:44
396
原创 3. 1 WEB自动化 --- WEB前端知识简介
前端前端即网站前台部分,运行在PC端,移动端等浏览器上展现给用户浏览的网页和界面。前端开发中最基本也是最必须的三个技能。前端的开发中,在页面的布局时,HTML:页面结构:可以把他看成一个文档,定义展示页面的内容结构。CSS:页面表现:元素大小、颜色、位置、隐藏或显示、部分动画效果。JavaScript:页面行为:部分动画效果、页面与用户的交互、页面功能一、HTMLHTML: 超文本标记语言,是 网页制作必备的编程语言**“**[超文本]HTML 版本**HTML 2.0 :**是
2020-09-08 18:10:52
2071
原创 3.3 unittest框架报告生成-- 常用三种
测试代码如下(测试用例类):@ddtclass TestRegister(unittest.TestCase): @data(*cases) def test_register(self, case_data): case_row = int(case_data.case_id.split("_")[1]) + 1 actual_result = register(*case_data.data) # *进行解包,调用login re
2020-09-07 10:51:04
607
2
原创 14. python日志打印重复问题解决(3种思路)
一、 代码如下:# -*-coding:utf8-*-import loggingclass MyLogging(object): def __new__(cls, level='DEBUG', **channels): """ :param level: 日志输出等级--->str :param channels: ---> 日志输出渠道--->dict,如: {'file':'my_log.log','console':'
2020-09-06 22:41:59
2101
原创 4. Jenkins 发送邮件配置
一、 插件安装:Email Extension Plugin二、 系统设置1. Jenkins Location配置 2.Extended E-mail Notification 信息配置 进入步骤(同1): Jenkins首页----Manage Jenkins----Configure System (在这里以163邮箱发送邮件为例) 设置后,一律点击: 应用---保存二 、 项目设置 步骤: ...
2020-09-05 17:13:52
529
原创 3. Windows 下 本地 SVN服务环境配置
一、 下载 1. SVN 的下载地址:https://tortoisesvn.net/downloads.html 2. VisualSVN Server的下载地址:https://www.visualsvn.com/server/download/二 、 VisualSVN Server安装(看图)
2020-09-05 16:04:24
261
原创 2. Windows下Jenkins使用Git源码管理
一、 Git下载安装 1. 下载:https://git-scm.com/downloads 2. 安装: 参考:https://blog.youkuaiyun.com/huangqqdy/article/details/83032408二 、 GitHub代码上传:1. 新创建仓库2.本地代码上传GitHub 3. 代码拉取(Jenkins) 下面行为都是在Jekins可用且登录情况下进行: ...
2020-09-05 12:49:23
578
原创 2.13 接口自动化 ---TestNG结合allure生成测试报告
一、 allure 使用基本准备: 1. 学习网站: https://docs.qameta.io/allure/#_testng 2. allure 的 Maven坐标(pom.xml自行添入) <dependency> <groupId>io.qameta.allure</groupId> <artifactId>allure-testng</artifactI...
2020-09-02 20:59:58
1809
1
原创 2.12 接口自动化 --- 日志记录Log4j
一、Log4j引入 日志: 在项目中,用来记录系统的行为,以便更好的跟踪系统中的一些交互和问题 Log4j是一个日志框架,配置简单,功能强大,记录起来方便二、 应用前准备工作 1. Maven坐标写入pom.xml文件中<!-- https://mvnrepository.com/artifact/log4j/log4j --><dependency> <groupId>log4j</groupId...
2020-09-02 13:48:34
395
原创 2 . 11 接口自动化 --- 接口依赖 &用例参数化
一、 接口文档说明 综上: 充值接口 依赖登录接口返回的用户id信息二 、 接口依赖处理 & 用例参数化处理1. 思路: 1) 接口依赖: 登录接口请求成功后,从响应体中提取用户id信息保存下来,充值接口传参时member_id传 登录接口提取的用户id 2) 用例参数化: a. 用例数据动态数据,如: 用户数据,用变量替代 ...
2020-09-01 20:50:32
1917
ISTQB-FL、CSTQB-FL、 FL总结
2023-04-12
TA创建的收藏夹 TA关注的收藏夹
TA关注的人