自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(96)
  • 收藏
  • 关注

转载 【转】浅析Java中synchronized与static synchronized

浅析Java中synchronized与static synchronized </h2> <div class="postbody"> <div id="cnblogs_post_body" class="blogpost-body cnblogs-markdown"> synchronized关键字 synchronized是进行同步处理而保证线程安全。在一个方法中,如果是方法内的私有变...

2021-05-14 23:44:58 206

原创 【Appuim实战】Error: java.lang.SecurityException问题排查

报错信息:Error: java.lang.SecurityException: PID 21457 does not have permission android.permission.CLEAR_APP_USER_DATA to clear data of package com.android.chrome' 原因分析: 权限不够,要开启【开发者选项】-【USB调试(安全设置)】,启动该设置后,允许外部模拟和修改手机应用。小米手机开发该设置前,需登录小米账号。 ...

2021-05-06 18:36:47 1985

原创 【Appuim实战】MaxRetryError问题排查

报错信息:MaxRetryError: HTTPConnectionPool(host='127.0.0.1', port=4723): Max retries exceeded with url: /wd/hub/session (Caused by NewConnectionError……)) 原因分析: Appuim server没有启动。

2021-05-06 18:35:30 1013

原创 【Appium实战】如何使用mumu模拟器模拟安卓手机

1)下载Mumu模拟器(就是网易那一款专门用来在电脑上打手机游戏的安卓模拟器) 2)运行Mumu模拟器 3)在Mumu的安装目录下找到adb_server.exe,路径如下: 4)CMD上 执行 adb connect 127.0.0.1:7555 5)CMD上 执行 adb devices 就会发现Mumu模拟器了 同时,在androidStudio里面也会发现下图所示的Mumu: ...

2021-05-06 18:33:24 4840

原创 【python实战】中文乱码问题

#coding:utf-8—— 指明文档编码方式 temp = input(u"请输入要转换的温度:")—— 中文字符串前加u,指明字符串编码方式

2021-05-06 18:27:23 121

原创 【selenium实战】当找到元素,但点击无效时,常见解决步骤

在WEB自动化测试过程中,经常会遇到这样的问题: 元素定位到了,但是点击无效?有人可能会问了,怎么判断元素定位到了,这个问题很好判断,给元素加高亮显示: self.driver.execute_script( "arguments[0].setAttribute('style', arguments[1]);", element, "border: 2px solid red;" #边框border:2px; ...

2021-05-06 18:23:28 4427

原创 【selenium实战】python模块以及导入出现ImportError: No module named ‘xxx‘问题

遇到该报错的时候,查找问题的思路 (1)是否在需要导入的包中新建了 __init__.py 空文件 python中,每个py文件被称之为模块,每个具有init.py文件的目录被称为包。只要模块或者包所在的目录在sys.path中,就可以使用import 模块或import 包来使用。 (2)该模块或包的目录是否在sys.path中 验证方式 import sysprint(sys.path) 如果不在,则将该模块或包加入到sys.path中。加入的方式有: 1)在调用文件中添加sys.path.

2021-05-06 18:17:46 323

原创 【selenium实战】运行python脚本,浏览器一闪而过的可能原因

如果运行python脚本,浏览器出现一闪而过,可能是当前driver驱动文件跟当前浏览器版本不匹配。

2021-05-04 10:24:55 2521

原创 【selenium实战】查找元素之前,一定要分析UI代码,并进行适当的窗口切换

如点击按钮后有新窗口弹出,一定要先切换到新窗口,再对新窗口上面的元素进行操作。 Iframe也类似,先检查是否嵌套在iframe里面,如是,先切换到iframe再进行元素操作,并且一定要记得切出来。 ...

2021-05-04 10:23:20 123

原创 【selenium实战】多窗口切换

windowpage title和window name是不一样的,实际上Window Name 是一长串数字,类似“59790103-4e06-4433-97a9-b6e519a84fd0”。 要正确切换到windowpage title为"Content Display"的方法是: 1. 获得当前所有的WindowHandles。 2. 循环遍历到所有的window, 查找window.title与"Content Display"相符的window返回。 ...

2021-05-04 10:18:23 131

转载 【转载】在线编程——排序算法总结

                                     在线编程——排序算法总结 【转载】原文链接:https://geekzw.blog.youkuaiyun.com/article/details/80419920...

2021-05-04 00:21:18 284

原创 《Effective C++》读书笔记VI

模板与泛型编程(Templates and Generic Programming) 模板元编程(Template metaprogramming):在C++编译器内执行并于编译完成时停止执行的程序。 条款41:了解隐式接口和编译器多态(Understand implicit Interface and compile-time polymorphism.) 面向对象编程世界总是以显示接口(

2015-11-17 09:28:22 422

原创 《Effective C++》读书笔记V

实现 条款26:尽可能延后变量定义式的出现时间(Postpone variable definitions as long as possible.) 1)“尽可能延后”的真正意义:不只应该延后变量的定义,直到非得使用该变量的前一刻为止,甚至应该尝试延后这份定义直到能够给它初值实参为止。   条款27:尽量少做转型动作(Minimize casting.) 1)C风格的转型(旧式转型,o

2015-11-17 09:26:40 491

原创 《Effective C++》读书笔记IV

实现 条款26:尽可能延后变量定义式的出现时间(Postpone variable definitions as long as possible.) 1)“尽可能延后”的真正意义:不只应该延后变量的定义,直到非得使用该变量的前一刻为止,甚至应该尝试延后这份定义直到能够给它初值实参为止。   条款27:尽量少做转型动作(Minimize casting.) 1)C风格的转型(旧式转型,o

2015-11-17 09:24:52 339

原创 《Effective C++》读书笔记III

资源管理 条款13:以对象管理资源(Use objects to manage resources.),也就是“资源取得时机便是初始化时机”(Resource Acquisition Is Initialization,RAII) 1)标准程序库提供的auto_ptr是个“类指针(pointer-like)对象”,也就是所谓“智能指针”,其析构函数自动对其所指对象调用delete。 2)对对

2015-11-17 09:23:16 335

原创 《Effective C++》读书笔记II

让自己习惯C++ 条款01:视C++为一个语言联邦(View C++ as a federation of languages) C++是个多重范型编程语言(multiparadigm programming language),一个同时支持过程形式、面向对象形式、函数形式、泛型形式、元编程形式的语言。C++相关的次语言主要包括四个:C、Object-Oriented C++、Template

2015-11-17 09:17:29 359

原创 《Effective C++》读书笔记I

术语 1)声明式 所谓声明式:告诉编译器某个东西的名称和类型,但略去细节。 extern int x; //对象(object)声明式 std::size_t numDigits(int number); //函数(function)声明式 Class Widget; //类(class)声明式 template class GraphNode; //模板(template)声明式

2015-11-17 09:15:21 293

原创 《深入理解Python》读书笔记Ⅵ

1、Python的完美计时工具:timeit  timeit 模块定义了接受两个参数的 Timer 类。两个参数都是字符串。第一个参数是要计时的语句;传递给 Timer 的第二个参数是为第一个参数语句构建环境的导入语句。从内部讲,timeit 构建起一个独立的虚拟环境,手工地执行建立语句 (导入模块),然后手工地编译和执行被计时语句 。 只要有了 Timer 对象,最简单的事就是调用 ti

2015-01-19 15:21:45 416

原创 《深入理解Python》读书笔记Ⅴ

1、urllib 依赖于另一个 Python 的标准库,httplib。通常不必显式地给出 importhttplib (urllib 会自动导入),但是可以为 HTTPConnection 类 (urllib 在内部使用它来访问 HTTP 服务器) 设置调试标记。  import httplib  httplib.HTTPCon nection.debuglevel = 1 2

2015-01-17 21:56:43 499

原创 《深入理解Python》读书笔记Ⅳ

1、正则表达式 (1)在Python中,所有和正则表达式相关的功能都包含在re模块中。 (2)字符$表示”字符串的末尾“,字符尖号^表示”字符串的开始“。 (3)‘\b'表示”单词的边界必须在这里“。 (4)只要处理正则表达式,就使用原始字符串,如r'\t'是一个真正的反斜线字符'\',紧跟着一个字母't'。 (5)re模块的关键是一个search函数,该函数有两个参数,一个是正则表达式

2015-01-16 15:37:15 474

原创 《深入理解Python》读书笔记Ⅲ

1、

2015-01-15 17:29:04 593

原创 《深入理解Python》读书笔记Ⅱ

1、type函数返回任意对象的数据类型。type可以接收任何东西作为参数——整型、字符串、列表、字典、元组、函数、类、模块、甚至类型对象,并返回它的数据类型。可以使用types模块中的常量来进行对象类型的比较。 import myModule import types type(myModule) == types.MuduleType      #返回True 2、str函数将数

2015-01-15 15:39:08 447

原创 《深入理解Python》读书笔记Ⅰ

1、在Python中万物皆对象,字符串是对象,列表是对象,函数式对象,甚至模块也是对象。万物皆对象:一切都可以赋值给变量或作为参数传递给函数。 2、Python函数没有明显的begin和end,没有标明函数的开始和结束的花括号。唯一的分隔符是一个冒号(:),接着代码本身是缩进的。代码块是通过它们的缩进来定义的,开始缩进表示块的开始,取消缩进表示块的结束。 3、Python使用硬

2015-01-14 10:18:31 626

转载 python特殊语句

lambda语句被用来创建新的函数对象,并且在运行时返回它们。 # Filename: lambda.py def make_repeater(n):     return lambda s: s*n twice = make_repeater(2) print twice('word') print twice(5) 输出 $ python lambda.py

2015-01-13 21:24:01 702

转载 python中特殊的方法

名称 说明 __init__(self,...) 这个方法在新建对象恰好要被返回使用之前被调用。 __del__(self) 恰好在对象要被删除之前调用。 __str__(self) 在我们对对象使用print语句或是使用str()的时候调用。 __lt__(self,other) 当使用 小于 运算符(等等)都有特殊的方法。 __get

2015-01-13 21:01:39 378

原创 python标准库

1、在sys.argv列表中总是至少有一个项目,它就是当前运行的程序名称,作为sys.argv[0](由于Python从0开始计数),其他的命令行参数在这个项目之后。 2、sys.exit函数用于退出正在运行的程序。 3、sys.version字符串提供安装的Python的版本信息。sys.version_info元组则提供一个更简单的方法来使程序具备Python版本要求功能。

2015-01-13 20:50:54 425

转载 异常

1、可以使用try..except语句来处理异常,把通常的语句放在try-块中,而把错误处理语句放在except-块中。 # Filename: try_except.py import sys try:     s = raw_input('Enter something --> ') except EOFError:     print '\nWhy did y

2015-01-13 17:55:55 373

转载 输入/输出

1、文件 可以通过创建一个file类的对象来打开一个文件,分别使用file类的read、readline或write方法来恰当地读写文件。对文件的读写能力依赖于打开文件时指定的模式。最后,完成对文件的操作的时候,调用close方法来告诉Python完成了对文件的使用。 # Filename: using_file.py poem = '''\ Programming is fu

2015-01-13 17:27:05 274

原创 面向对象编程

1、即便是整数也被作为对象(属于int类)。 2、Python中的self等价于C++中的self指针和Java、C#中的this参考。 3、创建类 # Filename: simplestclass.py class Person:     pass # An empty block p = Person() print p 输出 $ pyt

2015-01-13 15:56:16 303

转载 数据结构

1、列表 list是处理一组有序项目的数据结构,即可以在一个列表中存储一个 序列 的项目。 列表中的项目应该包括在方括号中,在每个项目之间用逗号分割,这样Python就知道是在指明一个列表。一旦创建了一个列表,可以添加、删除或是搜索列表中的项目。由于可以增加或删除项目,我们说列表是 可变的 数据类型,即这种类型是可以被改变的。 # Filename: using_list.p

2015-01-13 09:55:28 319

转载 dir函数

1、使用内建的dir函数来列出模块定义的标识符。标识符有函数、类和变量。 当为dir()提供一个模块名的时候,它返回模块定义的名称列表。如果不提供参数,它返回当前模块中定义的名称列表。 $ python >>> import sys >>> dir(sys) # get list of attributes for sys module ['__displayhook__

2015-01-13 09:45:03 1186

转载 模块

1、模块基本上就是一个包含了所有定义的函数和变量的文件。为了在其他程序中重用模块,模块的文件名必须以.py为扩展名。模块可以从其他程序 输入 以便利用它的功能。 # Filename: using_sys.py import sys print 'The command line arguments are:' for i in sys.argv:     print i

2015-01-12 20:31:11 288

转载 DocStrings

Python有一个很奇妙的特性,称为 文档字符串 ,它通常被简称为 docstrings 。DocStrings是一个重要的工具,由于它帮助程序文档更加简单易懂,应该尽量使用它。甚至可以在程序运行的时候,从函数恢复文档字符串! # Filename: func_doc.py def printMax(x, y):     '''Prints the maximum of tw

2015-01-12 20:12:50 724

转载 函数

1、函数通过def关键字定义。def关键字后跟一个函数的 标识符 名称,然后跟一对圆括号。圆括号之中可以包括一些变量名,该行以冒号结尾。接下来是一块语句,它们是函数体。 # Filename: function1.py def sayHello():     print 'Hello World!' # block belonging to the function s

2015-01-12 19:39:58 387

原创 python控制流

1、if语句 如: # Filename: if.py  number = 23 guess = int(raw_input('Enter an integer : ')) if guess == number:     print 'Congratulations, you guessed it.' # New block starts here     p

2015-01-12 17:16:33 338

转载 运算符

运算符 名称 说明 例子 + 加 两个对象相加 3 + 5得到8。'a' + 'b'得到'ab'。 - 减 得到负数或是一个数减去另一个数 -5.2得到一个负数。50 - 24得到26。 * 乘 两个数相乘或是返回一个被重复若干次的字符串 2 * 3得到6。'la' * 3得到'lalala'。 ** 幂 返回x的y次幂

2015-01-12 16:29:56 271

转载 字符串

字符串是 字符的序列 。 使用单引号(') 使用单引号指示字符串,如:'Quote me on this'。所有的空白,即空格和制表符都照原样保留。 使用双引号(") 在双引号中的字符串与单引号中的字符串的使用完全相同,如:"What's your name?"。 使用三引号('''或""") 利用三引号,可以指示一个多行的字符串。可以在三引号中自由的使用单引号和双引号。例如:

2015-01-12 16:00:48 294

原创 python原生类型

在Python中有4种类型的数——整数、长整数、浮点数和复数。 2是一个整数的例子。长整数不过是大一些的整数。3.23和52.3E-4是浮点数的例子。E标记表示10的幂。在这里,52.3E-4表示52.3 * 10-4。(-5+4j)和(2.3-4.6j)是复数的例子。

2015-01-12 15:52:05 504

原创 C++ 视频学习笔记

1、C++与C有什么不同? 【解答】 C++与C语言最大的不同在于解决问题时思维方式的不同,C++采用面向对象思维,而C语言则采用面向结构思维。 面向结构思维的宗旨就是将一个大程序拆成一个个很小的结构,结构(或叫方法)就是实现一个或多个功能的代码块。面向结构思维就是要将一个大程序划分为若干个很小的结构,每个结构都完成一个或多个功能,所有结构集合起来就可以完成一个大功能。 面向结构编程思维有

2014-12-21 20:49:34 345

原创 C++ primer习题笔记

1、解释下面每个函数模板的定义并指出是否有非法的,改正所发现的错误。 (e)typedef char Ctype;           template Ctype f5(Ctype a); 【解答】 (e)合法,定义了一个模板函数f5,该函数的返回类型与形参类型相同,均可绑定到任何类型(而不一定是char类型)。 2、何时必须使用typename? 【解答】 如果要在函数模

2014-12-21 09:53:50 493

空空如也

空空如也

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

TA关注的人

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