- 博客(122)
- 资源 (1)
- 收藏
- 关注
原创 Java,数组加元素,反转数组
本题需要将数组a=[1,2,3]变成[1,2,3,4],需要改变原数组a。删除数组最后一个元素,如果数组为空,则不改变数组,返回undefined。把数组的第一个元素删除,若空数组,不进行任何操作,返回undefined。对数组元素进行排序(ascii)把数组中所有元素放入一个字符串。向数组的开头添加一个或多个元素。从已有的数组中返回选定的元素。向数组末尾添加一个或多个元素。返回被连接数组的一个副本。从数组中添加/删除项目。返回数组的字符串形式。颠倒数组中元素的顺序。
2024-03-06 00:53:33
353
原创 切片的一些问题整理python
切片适用于列表、元组、字符串、range对象等类型,但作用于列表时功能最强大。可以使用切片来截取列表中的任何部分,得到一个新列表,也可以通过切片来修改和删除列表中部分元素,甚至可以通过切片操作为列表对象增加元素。这个步长只能是1 ,试了好多次其他的数值,都会报错。
2023-04-24 14:26:29
257
1
原创 Appium
文章目录adbadb 的构成adb工作原理:adb的常用命令adbadb 的构成adb工作原理:client 端将命令发送给server 端server 端会将命令发送给 daemon 端daemon端进行执行将执行结构,返回给server 端server端将结果返回给 client 端adb的常用命令获取包名和界面名应用场景:自动化测试需要通过代码的形式告诉手机 测试哪个应用程序哪一个界面 ,所以需要通过这个命令进行获取包名:决定程序的唯一性 —— package
2022-04-16 21:42:47
662
1
原创 12 - web自动化实战
文章目录自动化测试流程测试流程:自动化测试流程:实际项目流程项目项目介绍自动化涉及的模块自动化测试结构测试用例自动化测试流程测试流程:用例文档需求分析用例编写用例评审执行用例发现bug 的话,提交bug回归bug总结自动化测试流程:需求分析 ——挑选适合做自动化测试的功能设计测试用例 —— 在后面加个是否自动化搭建自动化测试环境(可选)设计自动化测试项目的架构(可选)—— 架构就是 po + 数据驱动 + log编写代码执行测试用例生成测试报告并分析结果自动化在手
2022-04-16 16:07:28
866
1
原创 10-2:日志单例封装
日志单例封装这样可以避免生成重复文件# 导包import logging.handlersclass GetLogger: logger = None @classmethod def get_logger(cls): if cls.logger is None: # 获取 日志器 cls.logger = logging.getLogger() # 设置 日志器 级别
2022-04-15 21:09:58
250
原创 11.日志练习
文章目录项目自动化测试流程自动化涉及的模块自动化测试结构base 公共方法封装实现登录分析项目自动化测试流程 1. 将功能用例转化自动化用例(在功能用例模板新增一列 是否自动化 ) 2. 搭建自动化测试环境(本机依赖的环境:python、pycharm、浏览器、浏览器驱动、selenium、 parameterized) 3. 搭建自动化框架(po模式+数据驱动+log+报告) 4. 编写代码 5. 执行用例 6. 生成报告\分析log自动化涉及的模块 1. 登录 2. 购物车 3
2022-04-15 20:36:26
180
原创 10.日志,日志格式,处理器,日志器,格式器
文章目录日志日志作用日志级别日志的用法设置日志级别更改日志的输出格式设置日志保存到指定的文件日志是用于记录系统运行时的信息,对事件的记录(点击事件),也称为log日志作用调试程序根据日志,了解系统程序运行的情况,是否正常系统程序运行故障分析与问题定位用来做用户行为分析和数据统计日志级别指的是 日志信息的优先级、重要性、或者严重程度debug # 调试级别info # 信息级别 —— 突出程序的运行过程warning # 警告 ——国内一般会忽略,但是国外会更加重视error
2022-04-15 18:05:54
941
原创 9.数据驱动
文章目录数据驱动jsonjson 和 字典之间的转换字典转为 json 字符串json 字符串转换为 字典数据驱动通过测试数据控制用例的执行,直接影响测试结果数据驱动 最好结合 PO+参数化 技术使用数据驱动的优点:将维护关注点放到测试数上, 而不去关注测试脚本代码json一种纯文本格式,后缀.json一种轻量级数据交换格式:接口数据传递基本使用json 格式由键值对组成,和 python 的字典格式一样,不同之处在于 json 是文本格式json 语法: 花括号包含键值对,键与值
2022-04-14 15:18:53
1356
原创 8.po 模式,base 。page、script
文章目录base1. 新建base 类2. 填充base 内容3. 注意page1. 搭建框架2. 填充业务层实现base搭建框架:1. 新建base 类如下所示这些方法解包的时候,只要一次解包 —— 在查找元素的时候解包driver 是虚拟的,调用 base 的时候传入loc 真正使用 loc 的方法,只有查找元素的时候使用class base: # 初始化 def _init_(self): pass # 查找元素方法 —— 提供:点击、输入、获取文本 方法使用 d
2022-04-10 19:29:52
1098
原创 7.po 模式,v1,v2,v3,v4,
三、PO模式版本:v1:不采用任何模式(线性模型):就是不回溯v2:采用测试框架 unittest 框架在测试中的应用v3:业务代码和页面对象进行v4:实际中的po模式编写案例:tpshop登录账号不存在密码错误v1账号不存在test_login_username_not_exist# 导包from selenium import webdriver# 获取driver对象driver = webdriver.Chrome()# 最大化浏览器driver.maximiz
2022-04-09 20:31:54
59258
原创 6.跳过用例. HTML测试报告,open和 open with
target基于unittest框架跳过测试 函数生成html报告PO模式一、跳过用例分类:1. 直接跳过 语法:@unittest.skip(说明) 场景:一般适合功能未实现完成用例2. 条件满足跳过 语法:@unittest.skipIf(条件, 原因) 场景:一般判断条件满足,就不执行;如:达到指定版本,此功能失效;提示: 以上两种方式,都可以修饰函数和类;二、HTML测试报告HTML报告:根据TextTestRunner改编而来操作:1. 导包 from
2022-04-08 18:47:55
705
原创 5. UnitTest 框架 . fixture . 断言
文章目录targetUnitTest 框架测试用例targetUnitTest 框架fixture断言HTML测试报告UnitTest 框架单元测试 - 白盒测试就是对程序源代码进行测试framework 框架:为解决一类事情的功能集合为什么使用UnitTest框架能够组织多个用例去执行提供丰富的断言方法能够生成测试报告UnitTest核心要素1. TestCase 测试用例2. TestSuite 测试套件3. TestRunner 测试执行 (TextTes
2022-04-05 18:10:05
1019
原创 4.下拉选择框,弹出框。滚动条,(frame切换、多窗口切换,很重要,常用)等等,面试重要
文章目录target下拉选择框target下拉选择框——seleuim有专门的类弹出框滚动条操作frame 表单切换多窗口切换窗口截图验证码处理下拉选择框css 里的option选择框css# 导包from selenium import webdriverfrom time import sleep# 获取浏览器驱动对象driver = webdriver.Firefox()# 最大化浏览器driver.maximize_window()# 隐式等待driver
2022-04-04 10:43:12
920
原创 3.元素,鼠标,键盘操作,元素等待,
文章目录target元素操作浏览器操作获取元素信息的常用方法分析获取元素信息的常用方法实践鼠标操作键盘操作等待target元素操作浏览器常用API元素操作其他常用操作API鼠标以及键盘的操作元素等待(重要)下拉框选择元素操作目的:1. 让脚本模拟用户给指定元素输入值2. 让脚本模拟人为删除元素的内容3. 让脚本模拟点击操作常用方法:click()send_keys(value)clear()# 导包from selenium import webdriverfrom
2022-04-02 11:56:26
762
原创 2.元素定位
# 导包from time import sleepfrom selenium import webdriver# 获取浏览器驱动driver = webdriver.Chrome()# 打开urldriver.get('https://baidu.com')# 暂停 3 秒sleep(3)# 关闭浏览器驱动driver.quit()5. selenium提供了 8 种元素定位方式id name class_name(使用元素的class属性定位)——元素属性定位t
2022-04-01 15:07:53
570
2
原创 1. web 测试
文章目录自动化测试自动化测试优缺点自动化测试分类适合web自动化的项目web自动化测试开始阶段web自动化所属分类——功能用例,属于黑盒测试自动化测试回归测试——项目发行新版本,上线之前,对之前的功能进行测试压力测试——多用户操作软件兼容性测试自动化测试优缺点较少时间内运行更多的测试用例自动化脚本可以重复运行减少人为错误克服手工测试的局限性——更加灵活误区:自动化测试可以完全代替手工测试自动化测试一定比手工厉害自动化测试可以发掘更多的bug:只能发现固定的bug,在代码
2022-04-01 11:11:04
327
原创 ;Linux装mysql初始密码忘了
centos安装mysql过程查看初始密码msyql5.7后,默认系统会分配一个初始密码ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option
2022-03-31 13:09:54
760
原创 【无标题】
[root@localhost mysql]# rpm -ivh mysql-community-libs-5.7.28-1.el7.x86_64.rpmwarning: mysql-community-libs-5.7.28-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEYerror: Failed dependencies: mysql-community-common(x86-64) >= 5.7.
2022-03-31 12:23:09
230
原创 1.明天继续掉头发
Linux关机:shutdown -h now(正常关机)、halt(关闭内存)、init 0备份:1.拍摄快照 2.克隆startx——进入图形界面
2022-03-30 00:27:46
699
原创 5.测试用例分析,设计,执行——>小项目
小项目项目实施需求登录测试点提取+非功能测试登录用例实现项目实施1、分析需求2、设计测试点3、编写⽤例覆盖测试点4、执行用例5、缺陷管理6、测试总结需求登录测试点提取+非功能测试登录用例实现登录成功,手机号逆向验证码逆向兼容、布局滑块...
2022-03-29 17:45:13
718
原创 4.缺陷实战
文章目录实例跟踪流程提交缺陷的注意事项缺陷管理工具缺陷标题分析缺陷报告实例缺陷跟踪流程提交缺陷的注意事项缺陷编写规范实例跟踪流程知道测试和开发流程中涉及的⼯作即可提交缺陷的注意事项可重现:缺陷可以复现唯一性:一个缺陷上报一个问题规范性:符合公司或者项目要求面试题: 发现缺陷后,首先会怎么办?确定Bug可复现、确定是Bug。缺陷管理工具禅道:实质是 项目管理的禅道缺陷标题分析...
2022-03-29 14:52:35
90
原创 3.执行用例,缺陷
文章目录执行用例缺陷执行用例执行的结果与用例的结果不一致(包括含义不一致)缺陷缺陷:软件中存在的任何问题,都为缺陷,简称bug ,用例执行不通过缺陷标准:1、缺少功能2、功能错误3、多功能4、缺少隐性功能5、易⽤性(软件测试⼈员专业⻆度)缺陷产生原因1、需求⽂档:需求描述不易理解,有歧义,错误等2、架构设计:设计文档错误或者缺失3、编码实现:代码出现错误4、环境(硬件、软件):软硬件系统本身故障呆滞软件缺陷缺陷生命周期缺陷核心要素缺陷提交要素
2022-03-29 11:37:38
349
原创 2.用例设计目标——特别重要
文章目录1、能对**穷举场景**设计测试点2、能对**限定边界规则**设计测试点3、能对**多条件依赖关系**进⾏设计测试点4、能对于**项目业务**进行设计测试(重要)1、能对穷举场景设计测试点等价类划分法:某种特征集合划分有效等价类:满足需求无效等价类:不满足需求步骤:案例2要求:区号:空或者是三位数字前缀码:⾮“0”且⾮“1”开头的三位数字后缀码:四位数字有效用例 2 条,无效用例 8 条等价类的适用场景:有大量数据测试输入、没办法穷举测试的地方如:输入框、下拉列
2022-03-28 23:22:19
1658
1
原创 1.测试步骤,分类,流程,8要素
文章目录软件测试测试技术测试分类——阶段划分、代码可见度划分、还有别的测试-质量模型测试流程(面试问)测试用例用例设计目标软件测试软件:控制计算机硬件工作的工具需求产生——需求文档——UI设计——产品开发——产品测试——上线软件测试:使⽤技术⼿段验证软件是否满足需求目的:减少软件缺陷,保证软件质量测试技术功能测试自动化测试:代码或工具实现测试接口测试——代码实现性能测试——工具实现测试分类——阶段划分、代码可见度划分、还有别的一、阶段划分单元测试说明:针对程序源代码进
2022-03-28 19:12:50
1705
原创 停到tab这里了
闲了在看吧<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title
2022-03-28 16:16:50
101
原创 vue- el与data 的两种写法
el与data 的两种写法el:new Vue 时候配置el属性先创建 Vue 实例,随后通过vm.$mount(’#root’) 指定 el 值data 两种写法对象式函数式:现在写那种都可以,以后学组件的时候,data 必须使用函数式,不然会报错一个重要原则:由 vue 管理的函数(比如这里写的 data),一定不要写箭头函数,一旦写了箭头函数, this就不再是 vue 实例了,它指向的将会是 window<!DOCTYPE html><html la
2022-03-25 15:39:56
180
原创 vue-数据绑定
vue有两种数据绑定方法:单向绑定:v-bind ——> 数据只能由 data 流向页面双向绑定:v-model ——> 数据不仅能从 data 流向页面,还可以从页面流向 data注意:双向绑定一般都应用在 表单类元素上(有value 值的)v-model:value 可以简写为 v-model ,因为 v-model 默认收集的就是value值<!DOCTYPE html><html lang="en"><head> <
2022-03-24 23:51:05
400
原创 vue 模板
文章目录插值语法指令语法vue 语法有这两大类插值语法功能:用于解析标签体内容写法:{{xxx}} ,xxx 是 js 表达式,且可以直接读取 data 里面的所有属性指令语法功能:用于解析标签,包括:标签属性、标签体内容、绑定事件…举例: v-bind:href = “xxx” 或者简写 :href = 'xxx" ,xxx 同样要写 js 表达式,并且可以直接读取到 data 里的所有属性备注: vue 里面有很多属性,形式都是 v-xxx<!DOCTYPE h
2022-03-24 23:26:21
366
原创 vue基础知识
文章目录1.入门2. 分析代码MVVM就是构建用户界面的渐进式 JavaScript框架就是那大数据以后,怎么变成动态的页面渐进式:vue可以自底向上逐层的应用特点:组件化,提高代码复用率,并且让代码更好维护.vue 就是一个组件,封装了声明式代码:让编码人员不需要直接操作DOM,提高开发效率:v-for虚拟DOM+优秀Diff算法,尽量复用DOM节点前提:ES6语法规范ES6模块化包管理器原型、原型链数组常用方法–axios–promiseVue.config 是一个对象
2022-03-24 20:56:56
1497
3
原创 自定义属性值----获取、修改、删除***我反正觉着挺重要的哈哈哈哈哈哈哈哈哈
文章目录获取自定义属性值修改设置属性值获取自定义属性值element.属性------获取内置属性,本身自带的element.getattribute('属性')————得到的时attribute 属性的意思,我们程序员自己添加的属性叫做自定义属性修改设置属性值element.属性 = '值' 设置内置属性值element.setAttribute('属性','值')哈哈哈哈哈你看原来设置的class 的属性是 nav通过这修改成了navs3. 移除属性 remove
2022-03-20 11:58:06
120
原创 表单全选全取消例子
目标:全选和取消全选:让下面的所有父选框大的checked属性 跟随全选按钮下面复选框需要全部选中,上面才能选中的做法:给下面所有复选框绑定点击事件,每次点击,都要循环查看下面所有的复选框是否由没选中的,如果有一个没选中,上面就不会选中设置变量,控制 是否选中<!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8"> <title></title&
2022-03-19 23:02:06
151
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人