自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 utf8和utf8mb4的区别

一、导读 我们新建mysql数据库的时候,需要指定数据库的字符集,一般我们都是选择utf8这个字符集,但是还会又一个utf8mb4这个字符集,好像和utf8有联系,今天就来解析一下这两者的区别。 二、起源 MySQL在5.5.3之后增加了这个utf8mb4的编码,mb4就是most bytes ...

2020-04-18 13:02:10 833 0

原创 移动端自动化:Appium + Python环境搭建

一、安装JDK,配置JDK环境 百度搜索下载就行,这里分享一个下载链接:https://pan.baidu.com/s/1snuTOAx 密码:9z8r。 下载好后点击进行安装。安装好后进行环境变量的配置。 打开计算机-》系统属性-》高级系统设置-》环境变量-》新建(系统变量),如图所...

2020-03-08 17:03:25 1124 0

原创 (五)、Python自动化测试--Selenium之Xpath和css定位

1、xpath 是一种再XML文档中定位元素的语言。因为HTML可以看做XML的一种实现,所以可以使用xpath定位方式。 表达式 描述 / 从匹配选择的当前节点选择文档中的节点 // ...

2020-03-08 16:59:14 1072 0

原创 (四)、Python自动化测试--Selenium八种元素定位

import selenium.webdriver as web driver = web.Chrome() driver.get('https://www.baidu.com/') #八种元素的定位方法:id、name、class_name、tag_name、link_t...

2020-03-08 16:43:51 1064 0

原创 (三)、Python自动化测试--Selenium+Python环境搭建

一、安装Python 1. 下载python包,最新版本的上一个版本:https://www.python.org/downloads/windows/ 2. 安装 可选择默认安装或自定义安装,自定义安装指定到要安装的路径下,一直next,直至安装成功。 3. 测试python是否...

2020-03-07 16:43:38 1060 0

原创 (二)、Python自动化测试--Selenium介绍

1、Web端主流测试工具: SELENIUM可以说是测试WEB最全面的开源自动化工具, 它可以在WINDOWS, LINUX, MAC 和 SOLARIS 上运行, 而且可以几乎用任何一种编程语言进行构建, 你可以用你熟悉的语言包括 JAVA, C#, PERL, PHP, PYTHON 和 R...

2020-03-07 16:33:01 445 0

原创 (一)、Python自动化测试--自动化简介

1、什么是自动化? 自动化测试就是让被测试的软件自己运行起来,执行软件的功能;或者就是让其他的工具自己运行起来,去检查软件的内部和外部。 让机器自己动,就是自动。让机器按照人类的要求,把软件的所有功能遍历一遍,这是自动化。 2、自动化测试方案: 主流的自动化测试方案,无一例外,都有人机沟...

2020-03-07 16:25:50 312 0

原创 adb 命令大全

一、前言 1、介绍: 学习前是不是得先看看 adb 具体是啥东西,好吧,网上一大堆,截取了部分如下: SDK的Tools文件夹下包含着Android模拟器操作的重要命令adb,adb的全称为(Android Debug Bridge就是调试桥的作用。通过adb我们可以在Eclipse中方面通...

2019-11-26 18:02:23 218 0

原创 软件测试流程

测试需求分析阶段:阅读需求,理解需求,主要就是对业务的学习,分析需求点,参与需求评审会议 测试计划阶段:主要任务就是编写测试计划,参考软件需求规格说明书,项目总体计划,内容包括测试范围(来自需求文档),进度安排,人力物力的分配,整体测试策略的制定。风险评估与规避措施有一个制定。 测试设计阶段:...

2019-09-24 09:59:27 567 0

原创 软件测试计划

引言: 编号 确定项目 描述 1 确定范围 确定被测项目中功能模块,子功能模块等需要测试的范围。 2 确定需求 确...

2019-09-24 09:04:02 10924 3

原创 iOS 组件化与路由的本质

前言 虽然 iOS 组件化与路由的话题在业界谈了很久,但是貌似很多人都对其有所误解,甚至没搞明白“组件”、“模块”、“路由”、“解耦”的含义。 相关的博文也蛮多,其实除了那几个名家写的,具有参考价值的很少,况且名家的观点也并非都完全正确。架构往往需要权衡业务场景、学习成本、开发效率等,所以架构...

2019-06-11 11:33:37 426 0

原创 Linux 常用命令

1、切换用户   命令:su - paytest,回车输入密码。 2、查看文件系统   命令:df -a (用于查看文件系统的使用情况)   命令:du -shx * (用于列出所有文件夹的大小) 命令:df -h 显示已经挂载的分区列表 命令:ls -lSr |more 以尺寸大小排...

2019-04-20 09:53:57 268 0

原创 The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods install

方案一: command+Q 退出 Xcode,重新执行pod install,之后再重新打开Xcode运行。 正常 方案一: 即可解决问题. 方案二: 稍微麻烦一点,删除以下文件: xcworkspace Podfile.lock Pods文件夹 ~/Library/Developer...

2019-01-10 12:11:11 7740 0

原创 iOS Tabbar、baseViewController封装及链式编程使用

tabbar.h: NS_ASSUME_NONNULL_BEGIN typedef NS_ENUM(NSUInteger, HRTabBarItemStatus) { HRTabBarItemStatusSelected, //选中状态 HRTabBarItemStatusDe...

2019-01-04 18:11:32 640 0

原创 浅谈iOS函数式编程的实现 与 响应式编程

作为一个iOS 开发者,那么你一定用过Masnory/ SnapKit; Masonry是一个OC开发中,非常好用的自动布局的第三方框架; SnapKit是Masonry团队打造的swift版本的自动布局框架; 一个典型的Masonry的语句: make.centerY.equalTo(s...

2019-01-02 17:10:30 992 1

原创 iOS MVP设计模式实现

MVP: MVP模式是MVC模式的一个演化版本(好像所有的模式都是出自于MVC~~),MVP全称Model-View-Presenter。顾名思义, Model:与MVC中的model没有太大的区别。主要提供数据的存储功能,一般都是用来封装网络获取的json数据的集合。Presenter通过调...

2018-12-29 09:40:19 934 0

原创 UiTableViewdatasource的分离

创建ArrayDataSource类,继承于NSObject: ArrayDataSource.h中: #import <UIKit/UIKit.h> NS_ASSUME_NONNULL_BEGIN typedef void(^TableViewCellConf...

2018-12-28 17:45:01 319 0

原创 Xcode出现( linker command failed with exit code 1)错误总结

1.看看是不是有新添加的文件跟之前文件同名   2.错误信息中出现了某个类的名字,去原文件中看看#import了哪些第三方库,把这些库挨个注释排除,找到出错的那个库,然后按照官方提供的步骤重新添加一遍。   3.SVN或Git忽略了某些文件,如.o 等文件没能update下来,查看.o文件...

2018-12-26 15:36:44 452 0

原创 Mac 上mysql启动报错Starting MySQL... ERROR! The server quit without updating PID file

连接 启动MySQL时 sudo mysql.server start之后发现mysql报错,进入/tmp目录下 没有找到mysql.sock文件 报错信息:1、Starting MySQL . ERROR! The server quit without updating PID file ...

2018-11-09 09:34:05 3172 0

原创 python的pip10.1版本出现了安装包时的错误Could not install packages due to anEnvironmentError: [WinError 5] 拒绝访问

每安装一个包pip一下都会 出现叫你安装更新版本的pip,也就是10.1 但是更新过后,安装其他库的时候,我们习惯性的,按照原来的方式安装库 出现这个问题 由于时间紧张,pip10.1没时间研究,我想退回去,退不回去 看错误要求 只需要python -m pip insta...

2018-10-14 19:50:28 1172 0

原创 Xcode 10 编译工程遇到的坑

Xcode升级到了Xcode10,不想苹果还是和以前的套路一样,下面是我升级后遇到的两个问题,在Xcode9中运行代码工作,但在Xcode10中产生错误。 一、可能只因应用程序中的多个Plist文件: 解决方案: 打开 target > Build phase &g...

2018-09-26 21:22:26 933 0

原创 iOS新机 iPhoneXS max和iPhoneXR适配

三款手机的屏幕大小     上面是像素单位,然后我们找到对应的倍数,换算成-点pt;     iPhone XS 375812pt* iPhone XR 414896pt* iPhone X 414896pt* 总结一下,因为X已经都是陪过了XS基本上就是忽略不管了,而新...

2018-09-26 21:01:10 2666 0

原创 RAC基本使用

#pragma 1  signal     // 1.创建信号     RACSignal *signal = [RACSignal createSignal:^RACDisposable * _Nullable(id<RACSubscriber>  _Nonnu...

2018-09-21 17:39:47 529 0

原创 状态栏的字体颜色

状态栏的字体为黑色:UIStatusBarStyleDefault 状态栏的字体为白色:UIStatusBarStyleLightContent   在info.plist中,将View controller-based status bar appearance设为NO 状态栏字体的颜色...

2018-08-31 00:18:47 413 0

原创 MJExtension 解析

<1> MJExtensionConst .h  --  宏定义error/log,一堆断言,宏定义重写desc方法(模型转字典打印),extern属性类型 .m  --  定义常量   <2> MJFoundation ....

2018-08-29 15:51:09 1348 0

原创 iOS Reactivecocoa(RAC)原理解析

一、关于常见类 1、RACSiganl 信号类的使用 如下图: 完成一个信号的生命周期分为四步: 1、创建信号 2、订阅信号 3、发送信号 4、取消订阅(图中未标明) 下面每一步我们细细道来: 1、创建信号 由上面的 信号类使用图可知,创建信号类方法中传入了一个返回值是RAC...

2018-08-28 21:06:37 1755 0

原创 iOS宏定义

1.宏定义需要加括号的两种情况: (1)如果宏的替换列表中带有运算符,那么使用要将替换列表放到括号中。例如#define MAX_VALUE(X,Y) ((X) > (Y) ? (X) : (Y)) (2)如果宏有参数,每次参数在替换列表中出现时都要放在括号中。同上 ...

2018-08-28 14:36:41 574 0

转载 RACCommand使用

1.RACCommand:RAC中用于处理事件的类,可以把事件如何处理,事件中的数据如何传递,包装到这个类中,他可以很方便的监控事件的执行过程。 2.使用场景:监听按钮点击,网络请求   RACCommand的简单使用        一、RACCommand使用步骤:      1.创...

2018-08-20 23:01:12 508 0

原创 Status bar could not find cached time string image. Rendering in-process?解决

  错误原因: 过程渲染的时候,IOS状态栏找不到缓存的时间字符串图像。 解决方法: Product->Target-> Deployment Info -> 勾选’Hide status bar' 如果还是显示该信息可以在info.pli...

2018-08-08 22:42:43 1790 0

转载 SwiftyJson 实现Json转模型

JSON是移动端开发常用的应用层数据交换协议。最常见的场景便是,客户端向服务端发起网络请求,服务端返回JSON文本,然后客户端解析这个JSON文本,再把对应数据展现到页面上。 但在编程的时候,处理JSON是一件麻烦事。在不引入任何轮子的情况下,我们通常需要先把JSON转为Dictionary,然后...

2018-08-05 23:47:50 5195 0

原创 Swift 网络数据请求与处理最常用第三方

一: Swift 网络数据请求与处理最常用第三方      又有时间出来装天才了,还是在学swift,从中又发现一些问题,这两天上网找博客看问题弄的真的心都累。博客一篇写出来,好多就直接照抄,就没有实质性的把问题解决了,只是在发表的博客数量上 + 1 !!真心没意思。。     看看在Swif...

2018-08-05 11:11:42 1825 1

原创 Swift4.0中AFNetworking的桥接和使用

一、创建AFnetworking桥接文件: Github里面down下来AFNetworking的压缩包,解压缩然后将里面的AFNetworking和UIKit+AFNetworking这两个文件夹直接拖进去要用的那个工程里面去。 在Build Phrases下的Compile S...

2018-08-05 09:21:40 2180 0

原创 Swift 四种实现单例的方式

单例模式 单例模式是设计模式中最简单的一种,甚至有些模式大师都不称其为模式,称其为一种实现技巧,因为设计模式讲究对象之间的关系的抽象,而单例模式只有自己一个对象。 当你只需要一个实例的时候需要使用单例,如UIApplication.sharedApplication() 等 ,windows的...

2018-08-05 08:38:32 749 0

原创 capturing self strongly in this block is likely to lead to a retain cycle 警告解决

警告: capturing self strongly in this block is likely to lead to a retain cycle 意思是block会retain一次,所以使用前最好     __block ViewController *strongBlock = ...

2018-07-27 12:15:54 5598 0

原创 iOS 从0到1搭建高可用App框架

前言: 本文是继《iOS 从0到1搭建高可用App框架》之后,通过项目实践以及同行交流思考总结出来的一些新的架构思想,但初心仍不变,目的为搭建高可用App框架,保持框架底层健壮的同时让代码更清晰,为满足后期顶层业务开发时的需求,避免出现风格迥异的代码。 架构图: 架构图   效果...

2018-07-26 00:00:07 639 3

翻译 iOS实现视频截取

功能其实看着挺简单,实现过程也踩了不少坑。一方面记录一下;另一方面也算是对实现过程的再一次梳理,这样大家看代码也会比较明白。   实现 实现过程分析 整个功能可以分为三部分: 视频播放 这部分我们单独封装一个视频播放器即可 下边的滑动视图 这部分实现过程比较复杂,一...

2018-07-22 13:30:51 4284 1

原创 iOS 为label实现打折效果(添加中划线 & 下划线)

1、添加中划线: UILabel *oldPriceLabel = (UILabel *)[selfviewWithTag:70+i]; NSString *oldStr = [NSStringstringWithFormat:@"%ld元",old...

2018-06-29 10:59:12 530 0

转载 HTTPS原理

HTTPS 简介在日常互联网浏览网页时,我们接触到的大多都是 HTTP 协议,这种协议是未加密,即明文的。这使得 HTTP 协议在传输隐私数据时非常不安全。因此,浏览器鼻祖 Netscape 公司设计了 SSL(Secure Sockets Layer) 协议,用于对 HTTP 协议传输进行数据加...

2018-06-29 10:06:42 256 0

原创 http协议的数据传输过程

一、http协议: 超文本传输协议,可以传递各种类型的文件,是使用最广泛的协议模式,是Web联网的基础,也是手机联网常用的协议之一,HTTP协议是建立在TCP协议之上的一种应用二、http协议的底层是在应用层里,是一个特殊处理的socket,建立在TCP/IP协议之上的一种广泛应用2.1.服务器先...

2018-06-29 08:29:44 6554 0

原创 TCP与UDP的区别

TCP的优点: 可靠,稳定 TCP的可靠体现在TCP在传递数据之前,会有三次握手来建立连接,而且在数据传递时,有确认、窗口、重传、拥塞控制机制,在数据传完后,还会断开连接用来节约系统资源。 TCP的缺点: 慢,效率低,占用系统资源高,易被攻击 TCP在传递数据之前,要先建连接,这会消耗时间,而且在...

2018-06-26 17:40:59 247 1

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