自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(315)
  • 资源 (4)
  • 收藏
  • 关注

原创 设计模式汇总

设计模式分为三大类:创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。其实还有两类:并发型模式和线程池模式。...

2017-08-24 14:24:21 291

原创 自定义控件--实现步骤

前言:      在android开发中我们常常会用到自定义控件,可是为什么要自定义呢?自定义控件又该怎么实现呢?下面我们来了解下自定义控件的常用知识。1:为什么要自定义控件     用到自定义控件的几种情况如下:    1> 通常一个APP有自己的显示风格,为了统一这个显示风格,我们需要自己实现一套特定的显示    2> 处理特有的用户交互    3> 优化我们的

2017-03-27 15:58:38 456

原创 基于python的IOS自动化测试小技巧

当我们需要获取音乐播放器(这里以QQ音乐为例)歌曲名的时候,因为歌曲名是不固定的内容,这个时候如果采用label或者name标签都不适合,在执行IOS APP UI自动化测试时,需要使用到元素定位,我们使用WEditor进行元素的定位,操作流程可以查看。,但是在一些特殊的场景需要灵活使用元素定位。但是我们可以去分析Xpath树来获取。获取到他的上一个元素的Xpath为。

2023-11-28 14:13:37 83

原创 Python图像处理-----几何变换

图像几何变换在变换过程中会建立一种原图像像素与变换后图像像素之间的映射关系,通过这种关系,能够从一方的像素计算出另一方的像素的坐标位置。通常将图像坐标映射到输出的过程称作向前映射,反之,将输出图像映射到输入的过程称作向后映射。图像平移是将图像中的所有像素点按照给定的平移量进行水平或垂直方向上的移动。绍常见的图像几何变换,包括图形平移、图像缩放、图像旋转、图像镜像、图像仿射、图像透视等。图像几何变换不改变图像的像素值,在图像平面上进行像素变换。式子中,矩阵称为平移变换矩阵或因子,△x 和△y 称为平移量。

2023-09-25 18:07:37 281

原创 Python图像融合处理和 ROI 区域绘制基础

该函数的作用是将一个图像从一个颜色空间转换到另一个颜色空间,其中,RGB 是指 Red、Green 和 Blue,一副图像由这三个通道(channel)构成;在日常生活中,我们看到的大多数彩色图像都是 RGB 类型,但是在图像处理过程中,常常需要用到灰度图像、二值图像、HSV、HSI 等颜色。下面代码对比了九种常见的颜色空间,包括 BGR、RGB、GRAY、HSV、YCrCb、HLS、XYZ、LAB 和 YUV,并循环显示处理后的图像。其中灰度图像返回行数和列数,彩色图像返回行数、列数和通道数。

2023-09-12 17:35:52 239

原创 基于Python的IOS自动化测试环境搭建

以下为测试架构原理图手机端的WDA Runner(WebDriverAgent)类似于appium测试框架中的 UIAutomator Server,将从客户端接收到的控制命令转换为XCUITest 相关API操作,实现对应用界面的控制。WebDriverAgent应用需要通过xcode编译安装。

2023-09-01 12:11:55 1144

原创 Python图像处理基础

数字图像处理(Digital Image Processing)又称为计算机图像处理(Computer Image Processing),旨在将图像信号转换成数字信号并利用计算机对其进行处理的过程。

2023-08-28 15:50:54 291

原创 JAVA设计模式汇总

里氏替换原则是继承复用的基石,只有当衍生类可以替换基类,软件单位的功能不受到影响时,基类才能真正被复用,而衍生类也能够在基类的基础上增加新的行为。在程序需要进行拓展的时候,不能去修改原有的代码,而是要扩展原有代码,实现一个热插拔的效果。这样当被依赖的类变化时,才能最小的影响该类。共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。

2023-08-11 11:11:35 808

原创 JAVA设计模式----原型设计模式

定义:用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象。类型:创建类模式类图原型模式主要用于对象的复制,它的核心是就是类图中的原型类Prototype。Prototype类需要具备以下两个条件:实现Cloneable接口。在java语言有一个Cloneable接口,它的作用只有一个,就是在运行时通知虚拟机可以安全地在实现了此接口的类上使用clone方法。在java虚拟机中,只有实现了这个接口的类才可以被拷贝,否则在运行时会抛出CloneNotSupportedException异常。

2023-08-11 10:44:47 1042

原创 使用Adb命令进行Monkey测试

2、当Monkey程序在模拟器或真实设备运行的时候,程序会产生一定数量或一定时间内的随机模拟用户操作的事件, 如点击,按键,手势等, 以及一些系统级别的事件。Monkey测试本身非常简单,就是模拟用户的按键输入,触摸屏输入,手势输入等,看设备多长时间会出异常。同样,在得到LOG后,搜索”CRASH”字段,如果搜索到有结果,则表明,在测试过程中,测试对象出现了报错现象,因此测试失败。在log中搜素该字段,如果有搜索有结果,则表示测试过程中,测试对象出现了进程无响应的现象,因此测试失败。

2023-07-11 17:07:34 463

原创 python列表

文章目录一、列表定义二、访问列表三、修改列表的元素修改元素插入元素1>.在列表的末尾添加元素2>.在列表中插入元素删除元素1>.使用del删除指定位置的元素2>.使用pop()删除指定位置的元素3>.使用remove()删除指定值的元素四、操作列表1.列表排序五、列表表达式六、bisect --- 数组二分查找算法模块6.1 查找6.2 插入数据一、列表定义在python中用 [ ] 来表示列表,并用逗号来分割其中的元素h=["扣1","扣2","扣3","扣4"]pr

2022-05-31 12:40:55 150

原创 Python简化常用技巧

文章目录一、列表表达式二、语法糖一、列表表达式Python 为了简化程序的代码行数做了很多努力,其中最经典的就是列表表达式。比如我有如下函数,用来输出一个单词中的所有字符:def output_letter(letter): l = [] for item in letter: l.append(item) return lif __name__ == "__main__": print(output_letter('kevin'))

2022-05-27 15:46:25 297

原创 Linux常考指令

文章目录一、文件和目录二、查看文件内容三、文件搜索四、文件的权限 - 使用 "+" 设置权限,使用 "-" 用于取消五、文本处理六、打包和压缩文件七、系统和关机 (系统的关机、重启以及登出 )八、进程相关的命令一、文件和目录1.cd命令(它用于切换当前目录,它的参数是要切换到的目录的路径,可以是绝对路径,也可以是相对路径)cd /home 进入 ‘/ home’ 目录cd … 返回上一级目录cd …/… 返回上两级目录cd 进入个人的主目录cd ~u

2022-05-25 16:53:01 140

原创 pytest之fixture

文章目录一、fixture二、fixture定义三、fixture使用3.1 Fixture名字作为用例的参数3.2 使用@pytest.mark.usefixtures('fixture')装饰器3.3 使用autouse参数四、fixtur作用范围五、fixture实现teardown  学pytest就不得不说fixture,fixture是pytest的精髓所在,就像unittest中的setup和teardown一样一、fixture做测试前后的初始化设置,如测试数据准备,链接数据库,打

2022-05-23 10:43:59 168

原创 pytest基础

文章目录一、pytest简介二、基本功能三、运行一、pytest简介Pytest是一个测试框架,其将测试常用的内容都包含进来了,如生成测试报告、生成覆盖率报告等。而且Pytest提供插件功能,很多开发人员可以通过开发Pytest插件来扩展Pytest的功能。Pytest不是Python自带的模块,需要自行安装。推荐使用PIP进行安装,安装命令如下:pip install pytest二、基本功能pytest文档官方文档:https://docs.pytest.org/en/latest/co

2022-05-17 17:41:56 145

原创 代码整洁之道

文章目录一、有意义的命名**1.名副其实****2 .避免误导****3 .做有意义的区分**一、有意义的命名软件中随处可见命名。我们给变量、函数、参数、类和封包命名、源代码文件命名、目录命名,良好的命名规范使得代码以及工程的维护难度大大降低,下面列出良好命名的几条简单规则。1.名副其实变量、函数或类的名称应该已经答复了所有的大问题。它应该告诉你,它为什么会存在,它做什么事,应该怎么用。如果名称需要注释来补充,那就不算是名副其实。int d # 消逝的时间,以日计名称d什么也没有说明。它没有引

2022-04-02 14:58:35 264

原创 SVN常见问题

文章目录一、commit相关一、commit相关SVN提交,提示“remains in conflict”错误SVN commit时,提示“remains in conflict”错误:1、error出现原因:在本地项目删除了一个目录,又通过SVN的“Repo-browser ”方式删除了SVN服务器端对应的目录;再提交时,就会提示该错误。2、解决办法:项目目录 右键 -> TortoiseSVN -> Revert,在弹出的 对话框中,选择 对应的已删除目录及其子目录,点击确定,

2022-03-31 17:58:02 141

原创 数据分析理论

数据分析理论

2022-02-23 14:02:06 2288

原创 查询当前网站的Cookie

1.在浏览器的地址栏输入:javascript:alert(document.cookie) (不区分大小写),就会弹出你在当前网页登录的cookie信息。注意:你把以上复制进入地址栏后会发现,“javascript”字符串消失不见,不管“javascript”里面哪一个字母被大写或小写,只要识别为“javascript”就会自动被过滤隐藏消失。你应该复制下面这个到地址栏(粘贴到地址栏后再把前面的“1”去掉):1javascript:alert(document.cookie) 2.按F12进入

2021-12-14 17:10:24 4510

原创 软件测试之安全测试

文章目录一、引言1.1、为什么要学习安全测试以及什么是安全测试1.2、什么是安全测试一、引言1.1、为什么要学习安全测试以及什么是安全测试 为了安全、有效的进行权限控制、不能随意提交数据进行修改、避免跨站式脚本的攻击。我们偶尔会听到这么一些报道,说某个网站的首页被篡改,敏感数据被泄露或者是重要信息被更改。其实这些问题就是因为黑客利用了系统安全漏洞,对系统进行攻击导致而成,从而导致损失的代价也是不言而喻的。因此安全测试也成为了系统质量保证中必不可少的一部分,那么安全测试具体有什么好处呢?提升产品的安

2021-09-23 18:04:47 1650

原创 软件测试-----性能测试

文章目录1.性能测试的指标1.1、响应时间1.2、吞吐量1.3、并发用户数1.4、TPS1.5、点击率1.性能测试的指标 性能测试常用的指标包括响应时间、吞吐量、并发用户数、TPS等1.1、响应时间 响应时间是指系统对用户请求做出响应所需要的时间。这个时间是指用户从软件客户端发出请求到用户接收到返回数据的整个过程所需要的时间,包括各种中间件(如服务器、数据库等)的处理时间。1.2、吞吐量 吞吐量是指单位时间内系统能够完成的工作量,他衡量的是软件系统服务器的处理能力。吞吐量的度量单可以是请求数/秒

2021-09-09 18:02:31 650

原创 Linux三大工具

文章目录一、Linux 三剑客简介二、Linux 三剑客价值三、grep1.grep基本用法2.grep正则表达式用法一、Linux 三剑客简介首先,我们来了解下 Linux 三剑客具体指什么?第一个工具是 grep,grep 会根据正则表达式查找相关内容并打印对应的数据。第二个工具是 awk,awk 的名字来源于三个作者的名字简称,它可以根据定位到的数据行处理其中的分段。第三个工具是 sed,它是 stream editor 流式编辑器的简称,可以定位到数据行并对数据进行增删改查操作

2021-06-28 16:56:39 596

原创 黑盒测试方法

文章目录1、等价类划分法1.划分等价类2.设计测试用例  黑盒测试就是软件当做一个有输入与输出的黑匣子,它把程序当做一个输入域到输出域的映射,只要输入的数据能输出到预期的结果即可,不必关心程序内部是怎么实现的。  黑盒测试是软件测试中经常使用的一种测试手段,常用的黑盒测试方法包括等价类划分法、边界值分析法、因果图与决策表法、正交实验设计法等1、等价类划分法  等价类划分法是一种常用的黑盒测试方法,它主张从大量的数据中选择一部分数据用于测试,即尽可能使用最少的测试用例覆盖最多的数据,以发现更多的软件缺

2021-06-18 11:23:05 2157 1

原创 软件测试流程

文章目录一、测试需求分析阶段:虽然不同软件的详细测试步骤不同,但他们所遵循的最基本的测试流程是一样的:分析测试需求 ------ 制定测试计划 ------ 设计测试用例 ------- 执行测试 ------ 编写测试报告。一、测试需求分析阶段:  测试人员在制定测试计划之前需要先对测试需求进行分析,以便对要开发的软件产品有一个清晰的认识,从而明确测试对象以及测试工作的范围和测试重点。主要内容为:阅读需求,理解需求,主要就是对业务的学习,分析需求点。...

2021-06-11 11:05:05 212 3

原创 软件测试原则的6个基本原则

文章目录1、测试应基于客户需求2、测试要尽早进行3、穷尽测试是不可能的4、遵循GoodEnough原则5、测试缺陷要符合“二八”定理6、避免缺陷免疫  软件测试经过几十年的发展,人们提出了很多测试的基本原则用于指导软件测试工作。制定软件测试的基本原则有助于提高测试工作的效率和质量,能让测试人员以最少的人力物力、时间等尽早发现软件中存在的问题,测试人员应该在测试原则的指导下进行测试工作。下面介绍一下业界公认的6个基本原则。1、测试应基于客户需求  所有的测试工作都应该建立在满足客户需求的基础上,从客户角

2021-06-11 09:59:03 2002 2

原创 软件测试分类

文章目录1.按照测试阶段分类1、单元测试2、冒烟测试3、集成测试4、系统测试5、验收测试2.按照测试技术分类1、黑盒测试2、白盒测试3.按照软件质量特性分类1、功能测试2、性能测试4.按照测试类型分类1、界面类测试2、安全性测试3、文档测试5.其他分类回归测试随机测试软件测试按照不同的分类标准,可以将软件测试分为很多不同的种类1.按照测试阶段分类按照测试阶段可以将软件测试分为单元测试、冒烟测试、集成测试、系统测试与验收测试。这种分类方式与软件开发过程相契合,是为了检验软件开发各个阶段是否符合要求。1

2021-06-10 16:38:43 390 2

原创 Linux常用命令

文章目录1.磁盘与目录2.进程1.磁盘与目录1.df 或 df-h   我们可以通过 df 或 df-h 命令,打印设备上挂载了多少个磁盘设备,以及磁盘里还有多少可用空间。2.ls   ls 可以打印当前目录下的所有文件和目录,你可以通过 ls 命令,把当前所有的目录和文件都打印出来了。ls 有一个常用的参数叫 -l,-l 可以打印出每个文件的基本信息如上图所示,在文件列表中,有些文件权限以 d 开头的表示该文件是一个目录,没有 d 则表示它是一个文件。3. cd   

2021-06-07 15:25:34 89

原创 常见算法问题

文章目录1.组合策略1.组合策略组合问题

2021-05-04 13:49:34 68

原创 Leetcode两两交换链表中的节点(24)

文章目录题目描述方法一:递归思路与算法复杂度分析方法二:迭代思路与算法复杂度分析题目描述给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。示例 1:输入:head = [1,2,3,4]输出:[2,1,4,3]示例 2:输入:head = []输出:[]示例 3:输入:head = [1]输出:[1]方法一:递归思路与算法可以通过递归的方式实现两两交换链表中的节点。递归的终止条件是链表中没有节点,或

2021-04-22 12:33:56 160

原创 数据结构之链表

文章目录链表(LinkedList)链表的优缺点链表(LinkedList)单链表:链表中的每个元素实际上是一个单独的对象,而所有对象都通过每个元素中的引用字段链接在一起。双链表:与单链表不同的是,双链表的每个结点中都含有两个引用字段。链表的优缺点链表的优点如下:链表能灵活地分配内存空间;能在 O(1) 时间内删除或者添加元素,前提是该元素的前一个元素已知,当然也取决于是单链表还是双链表,在双链表中,如果已知该元素的后一个元素,同样可以在 O(1) 时间内删除或者添加该元素。链表

2021-03-23 16:45:22 119

原创 LeetCode有效的字母异位词(242)

文章目录题目:有效的字母异位词题目:有效的字母异位词给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。示例 1:输入: s = "anagram", t = "nagaram"输出: true示例 2:输入: s = "rat", t = "car"输出: false说明:你可以假设字符串只包含小写字母。...

2021-03-23 10:30:09 80

原创 数据结构之数组、字符串

文章目录1.数组2.字符串及数组算法题1.数组数组的优点在于:构建非常简单能在 O(1) 的时间里根据数组的下标(index)查询某个元素而数组的缺点在于:构建时必须分配一段连续的空间查询某个元素是否存在时需要遍历整个数组,耗费 O(n) 的时间(其中,n 是元素的个数)删除和添加某个元素时,同样需要耗费 O(n) 的时间2.字符串及数组算法题...

2021-03-22 17:40:21 85

原创 数据结构学习汇总

文章目录1.数组和字符串1.数组和字符串

2021-03-22 17:24:51 246

原创 Python之音频信号处理(一)音频基础知识

文章目录一、音频基础知识1、声音的三要素2、音频的量化与编码3、音频压缩技术二、音频信号的读写1、python读取.wav音频2、python写.wav音频文件一、音频基础知识1、声音的三要素(1)音调人耳对声音高低的感觉称为音调(也叫音频)。音调主要与声波的频率有关。声波的频率高,则音调也高。一般音频 儿童>女生>男生。人耳听觉音频范围是20Hz-20000Hz(做音频压缩时不在这个范围内的数据就可以砍掉)。(2)音量也就是响度。人耳对声音强弱的主观感觉称为响度。响度和声波振动的

2021-03-17 14:45:53 8840 1

原创 Python whl文件下载地址及下载出错的解决办法

文章目录1. 下载地址及安装说明2. 下载出错及解决方案1. 下载地址及安装说明Python whl文件下载地址:https://www.lfd.uci.edu/~gohlke/pythonlibs具体下载和安装某个特定包,可以参考:python3.8和3.7手动下载whl文件并进行安装pyaudio2. 下载出错及解决方案使用某些国产浏览器(如QQ浏览器)可能会提示如下所示的404错误404 - File or directory not found.The resource you are

2021-03-16 10:40:14 541

原创 python常用函数

文章目录1.排序2.map函数3.filter函数4.functools库常用函数4.1.reduce函数4.2.partial函数5.lambda表达式1.排序list.sort方法会就地排序列表,也就是说不会把原列表复制一份。这也是这个方法的返回值是None的原因,提醒你本方法不会新建一个列表。与list.sort相反的是内置函数sorted,它会新建一个列表作为返回值。这个方法可以接受任何形式的可迭代对象作为参数,甚至包括不可变序列或生成器。而不管sorted接受的是怎样的参数,它最后都会返回

2021-03-04 16:47:33 181 1

原创 python常用字符串以及数据操作

文章目录1.双引号2.运算符1.乘方3.字符常用操作3.1 常见字符大小写切换3.2 字符切片操作1.双引号python即支持双引号,也支持单引号,同时还支持相互嵌套string1 ="This is a string"string2 = 'I say "this is a string"'string3 = "The girl's name is ‘lili’"print(string1)print(string2)print(string3)上面的代码输出This is a str

2021-03-04 11:50:46 188 1

原创 unittest加载自动化测试用例的几种方式

文章目录1.通过unittest.main()来执行测试用例的方式:2.通过testsuit来执行测试用例的方式:3.通过testLoader方式:4.利用配置文件加载测试用例利用python进行测试时,测试用例的加载方式有2种:一种是通过unittest.main()来启动所需测试的测试模块;一种是添加到testsuite集合中再加载所有的被测试对象,而testsuit里存放的就是所需测试的用例,下面分别列出3种方法的具体使用方式:1.通过unittest.main()来执行测试用例的方式:im

2021-03-02 09:44:44 393

原创 使用Python requests进行接口测试

文章目录1.接口测试的背景2.python实现接口自动化测试2.1 安装requests库:2.2 http测试工具:3.requests简单介绍4.request的get使用示例:4.1 get请求4.2 带参数的get4.3 带header的get5.request的post使用示例:1、带数据的post2、带header的post3、带json的post4、带参数的post5、普通文件上传6、定制化文件上传7、多文件上传8.流式上传6.Cookie&Session6.1获取Cookie6.2

2021-01-18 17:04:52 611

原创 Python Selenium常用方法

文章目录1.浏览器网页调试2.元素定位1.浏览器网页调试在 Chrome浏览器中,点击鼠标右键,在弹出的快捷菜单中选择“检查”选项;在弹出的调试信息窗口中,点击按钮后,将鼠标移动到需要定位的目标位置,调试信息窗口中就会显示元素的属性。以对百度搜索页面的测试为例,在调试信息窗口中点击[插图]按钮后,将鼠标移动到百度搜索输入框上,屏幕上就会显示元素属性。如图百度搜索输入框的元素属性 ID 为 kw,NAME 为wd,CLASS_NAME为s_ipt。或者进 选项>更多工具>开发者工具然

2021-01-14 17:57:05 162

android的IBinder简单使用

android中IPC机制的IBinder简单使用,简要说明下IBinder中两个重要方法

2018-02-26

AIDLDemo的代码示例

AIDL ,android跨进程通信示例,包括服务端,客户端,以及权限检测

2018-01-15

AIDl跨进程客户端与服务端互相通信

使用AIDL进行跨进程实现客户端与服务端互相通信的demo

2017-03-31

android高级编程

一本用于android开发进阶的书籍,android高级编程pdf

2015-12-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除