自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(119)
  • 资源 (2)
  • 收藏
  • 关注

原创 PC端远程连接手机端,看手机端的log

具体见下图

2020-02-25 10:16:47 201

原创 常见的几种手机传感器

传感器Sensor就是手机里那些可以被测量并且能按照一定的规律转换成可用输出信号的器件或装置,一般这类传感器都是由敏感元件以及转换元件组成。手机上的那些能够通过芯片来感应的元器件,如反应距离值、光线值、温度值、亮度值和压力值等。那手机常见的传感器总结如下:光线传感器根据光线的不同去调节屏幕的亮度,从而减低电量的消耗,增加手机的续航能力,有的还可以控制呼吸灯的明暗状态。距离传感器位置...

2019-09-30 10:32:31 445

原创 Eclipse+python+Monkeyrunner搭建自动化测试环境以及问题总结

简单介绍下背景:准备搭建Eclipse+python+Monkeyrunner自动化测试环境,然后用python写脚本实现对Android手机简单功能点得自动化测试,在搭建环境过程中以及拿一个现有脚本进行测试时出现了很多问题。下面就开始介绍:环境搭建:1.安装jdk(1)去该网址http://www.oracle.com/technetwork/java/javase/downloa...

2019-09-09 10:44:36 297

原创 解决SDK Manager无法显示以及Connection to http://dl-ssl.google.com refused报错问题

先简单介绍一下我的背景:win10系统,在Eclipse中安装Android-sdk+ADT,在安装好ADT之后,把Android-sdk路径添加进去后打开SDK-Manager时,一直出现界面显示不出来可以安装的内容,如下图(图来源于网络,因为我是解决完问题之后写的博客)同时,还出现报错"Connection to http://dl-ssl.google.com refused"“Ht...

2019-09-06 19:39:13 549 2

转载 adb server version (32) doesn't match this client (41); killing...报错解决办法

在利用eclipse+python+SDK跑android自动化测试脚本时,遇到了该问题,看到一篇博客传送门,总结了该问题的几种情况。我遇到的就是第一种情况,简单来讲就是电脑client的adb的版本与连接的手机server不能适配,无法执行。解决办法如下:(1)去cmd执行“adb version”命令查看当前adb的版本是1.0.41;(2)去网上下载1.0.32版本的adb.zi...

2019-08-31 17:31:20 4828

原创 常见的WindowsErrors错误及原因

WindowsError:[Error 2] //不存在这个文件WindowsError:[Error 3] //没有这个路径WindowsError:[Error 5] //权限问题WindowsError:[Error 13] //该文档被其它程序占用,处理不了 WindowsError:[Error 12...

2019-08-29 20:25:59 226

原创 解决“Unresolved import:pyExcelerator,xlwt,xlrd”报错问题 && pyExcelerator,xlwt,xlrd的简单介绍

我是在自己搭建完Eclipse+Python+Android SDK的Android自动化测试环境之后,在调试一个自动化测试脚本时,发现的该问题。在引入pyExcelerator,xlwt,xlrd时报错,但是此时我已经安装了python模块,等我去安装路径下查看,发现库文件夹里没有这三种库,所以解决这个问题的办法就是去安装pyExcelerator,xlwt,xlrd即可。安装这三个库很简单...

2019-08-29 11:17:30 717

原创 解决python安装模块时的“No module named setuptools“报错问题

在利用python安装模块时利用python setup.py install语句执行时,出现一下报错问题:简单来讲,该问题出现的原因就是:python默认是没有安装setuptools这个模块的,这也是一个第三方模块,所以在利用setup.py时会报错。解决办法如下:windows环境下(1)去http://pypi.python.org/packages/source/s/...

2019-08-29 10:23:54 15008 11

原创 解决Eclipse创建Android项目时出现No resource found that matches the given name ‘Theme.AppCompat.Light’的问题

首先,对于该问题的详细分析大家可以查看Theme.AppCompat.Light问题的深入分析一文,里面详细介绍了该问题出现的原因。简单来讲,就是新的eclipse默认模版主题UI需要使用比较高版本api,如果需要支持低版本,需要导入appCompact库来支持。网上有许多解决办法,但是我这里只介绍一种方法,因为其他我看到的方法都需要手动去项目里改东西,也就是说你没建一个新项目都需要去操作,这...

2019-08-27 14:25:52 9657 9

原创 安装完jdk后,cmd中输入java和java -version都正常显示,javac显示不了

简单记录一下,我在安装完jdk后去cmd中测试jdk是否安装好,分别输入java,java -version命令都得到对应结果,但javac命令显示不是内部或外部命令等。最后百度看了很多文章,全都是讲说配置环境变量的时候有问题。所以检查了很多遍,配置环境变量的文章有很多,大家可以去找一找(大家也可以参照这篇博客https://blog.csdn.net/qq_40871466/article/...

2019-08-27 09:23:35 2107 1

转载 Android手机FOTA升级的大概流程介绍

本文内容转载自FOTA升级流程以及FOTA相关知识总结两篇文章,有需要可去原文查看。Android设备的系统升级有两种方式:(1)下载更新包到手机后,手动安装,即所谓“卡刷包”的形式更新;(2) 通过 Over-the-air(OTA)的方式更新系统,简称为FOTA(Firmware Over The Air)。FOTA升级有两种方式,一种是Full update,即将整个IMG置于升...

2019-08-22 09:46:58 1626

原创 需求评审&SPEC评审&用例评审&归档用例

本文部分内容借鉴于博客需求评审的关注点需求评审、SPEC评审1、评审前期准备评审是要在写代码前发现问题,不要吝啬将时间花在前期上,因为这会大大减少我们中后期的意外,避免做很多的无用功。在评审之前,我们要仔细阅读相关的评审资料,了解每个点是干什么的。2、评审中需要关注的点(1)文笔描述是否存在错别字,特别是界面上的文案。例如,登陆->登录描述是否清楚,是否存在歧义...

2019-08-13 17:15:38 297

原创 实现自主shell

本文将编写一个程序,当程序跑起来时,可以输入linux下的相关命令,然后程序也会返回相应命令的结果。具体实现代码如下:#include <stdio.h>#include <unistd.h>#include <string.h>#include <ctype.h> //isspaceint main(){ char ...

2019-08-09 15:45:12 79

原创 练习使用linux下env,set,export等环境变量相关的函数及命令

1、env功能:显示所有环境变量2、echo $NAME(NAME为环境变量名)功能:查看环境变量内容3、测试PATH(放系统搜索可执行程序的路径)创建一个简单的C程序:编译执行:注意:这里可执行文件名不能用test,因为在后面实现不加路径执行时,会与系统中的命令冲突,从而执行不了。我们可以知道,ls不仅是命令也是程序。./test与ls同样为二进制命令,但...

2019-08-09 14:29:17 97

原创 测试用例设计——判定表驱动分析法、场景分析法、流程分析法、状态迁移分析法、错误推测法

1.判定表驱动分析法在之前介绍的因果图分析法也用到了判定表,但是没有详细介绍。判定表又称决策表,它是分析和表达多逻辑条件下执行不同操作的情况的工具。在黑盒测试中,基于判定表的测试是最具有逻辑性、最严格的测试。判定表可以将复杂的问题按照各种可能的情况列举出来,简单明了且避免疏漏。测试思想:根据逻辑条件取值的组合所构成的多种情况,分别执行不同的操作,构造相应的测试用例。决策表分类:(1...

2019-08-06 15:45:06 756

原创 测试用例设计——正交实验设计法

两个概念:因素:在一次试验中,我们把影响试验结果的量称为试验因素,简称因素。我们可以把因素看作是自变量,把试验结果看作是因素的函数。水平:在试验中,每一个因素都可能处于不同的状态或状况,我们把因素的状态或状况叫做因素的水平,简称水平。两个特点:(1)“均匀分散”:该特点使得测试点均匀的分布在测试范围内,让每个测试点都具有充分的代表性(2)以三因素三水平为例。三因素是A,B,C则...

2019-08-06 11:14:14 137

原创 测试用例设计——因果图法

之前介绍的等价类划分法和边界值分析法着重考虑的是输入条件,但是没有考虑输入条件之间的组合、输入条件之间相互制约的关系,这样就有可能忽略了输入条件组合在出错的情况。所以这时,就要用到本文将要介绍的因果图分析法,它就是一种适合于描述多种条件的组合、 相应产生多个动作的形式来设计测试用例的方法。思想:因果图常与判定表结合起来使用,一些程序的功能可用判定表(又称决策表)表示出来,并根据不同的组合执行相...

2019-08-05 16:36:52 196

原创 测试用例设计——等价划分法

等价类即将所有有可能的输入数据(程序的输入域)划分为若干个子集,这些子集具有完备性、无冗余的特点。然后从每一个子集里,选取少数具有代表性的数据作为测试用例值。在设计测试用例的时候,我们要考虑有效等价类、无效等价类两类。因为软件不仅要能接受正确的数据,还要能够接受住错误数据的考验,这样才能保证软件的可靠性。有效等价类是指对于程序的规格说明来说是合理的、有意义的输入数据构成的集合,它能检验程序是否...

2019-08-05 15:24:05 92

原创 测试用例设计——边界值分析法

我们在进行软件测试之前,为了能够逻辑清晰的、更好的没有重复的去执行测试,所以会编写测试用例。在测试用例编写好之后,可以直接按照测试用例来进行测试。那我们用来设计测试用例的方法有很多种,边界值分析法就是里面最常见的一种。因为我们发现大部分的错误是发生在输入输出数据范围的边界上,所以我们采用边界值分析法设计用例可以发现更多的错误,它也是等价类划分法的一种补充 。简单介绍边界值分析法就是对输入或输出...

2019-08-05 10:14:02 923

原创 monkey常用命令介绍

首先,简单介绍一下monkey。它是Android SDK提供的一个命令行工具, 可以简单,方便地运行在任何版本的Android模拟器和实体设备上。Monkey会发送伪随机的用户事件流,适合对app做压力测试。基本参数介绍:-p //用于指定测试的一个或多个包adb shell monkey -p package num //对指定的包package进行monkey测试num...

2019-07-26 15:55:18 221

原创 adb常用命令的简单介绍

首先,adb工具即Android Debug Bridge(安卓调试桥)tools。它就是一个命令行窗口,用于通过电脑端与模拟器或者真实设备交互。在某些特殊的情况下进入不了系统,adb就会派上用场。简单来讲,adb就是Android手机与PC端的连接的一个l桥梁,让用户可以在电脑上对手机进行全面的操作。下面简单介绍一些常用的adb命令:设置:-a //命令adb监听所...

2019-07-25 18:41:05 168

原创 软件测试成熟度模型TCMM

简单来讲,TCMM是可以用来评测一个公司的研发和管理能力等级的一个模型,它主要可以划分为五种等级。下面主要介绍一下这五种等级以及各自的特点。1.初始级(initail) 测试与调试分不开;测试在编码完成后进行;测试目的是表明程序没有错;软件产品发布后无质量保证;测试资源不够完善;测试人员不够专业。2.阶段定义级(Phase Definition) 测...

2019-07-22 14:02:50 415

原创 解决GridView控件的居中问题

先简单介绍一下GridView控件,它被称为列表视图控件,用于在一个列表中显示数据源的值。其中每列表示一个字段,每行表示一条记录。简单来讲,就是一个列表,可以将数据源绑定到该列表控件上,在浏览器上显示出来就是存放着数据的列表。 我在VS2013中用C#写东西的时候,用到了该控件。但是在显示数据源的值时,在浏览器中显示的表格不能居中,后来我发现在该控件的属性中加上“marg...

2019-05-13 10:08:44 3249

原创 求表达式的后缀表达式

今天笔试时遇到一个求后缀表达式的题,之前不太了解,所以在这写一下举个例子吧,比如对下列表达式求其后缀表达式:(a+b)*c*(d-e/f)(1)首先,我们按照运算符的优先级给它加上括号 (((a+b)*c)*((d-(e/f))))(2)将每个运算符移到离它最近的右括号外,即 (((ab)+c)*((d(ef)/)-))*(3)去掉括号后,得到原表达式的后缀表达式即 ab+c*de...

2018-09-06 15:08:17 1265 1

原创 IP协议——NAT技术

在之前介绍网络层时,我们有提到过对于IPv4协议来讲,IP地址不够的问题。NAT(网络地址转)技术则是当前解决IP地址不够用的重要手段,它是路由器的一个重要功能。1.NAT技术的作用(1)NAT可以将私有IP对外通信时转化为全局IP,即NAT就是将私有IP与全局IP相互转化的技术(2)很多家庭,学校,公司内部采用每个终端设置私有IP,而在路由器或必要的服务器设置全局IP(3)全局I...

2018-08-09 17:04:52 527

原创 网络层——ICMP协议

举例来讲,一个新搭建好的网络,往往需要先进行一个简单的测试,来验证网络是否通畅;但是IP协议并不提供可靠传输,所以IP协议并不会通知传输层是否丢包及丢包的原因。所以才有了ICMP协议的存在。ICMP协议即Internet控制报文协议。它是TCP/IP协议簇的一个子协议,用于在IP主机与路由器间传递控制消息。这里的控制消息指的是:网络是否通畅、主机是否可达、路由是否可用等网络本身的消息。1....

2018-08-09 15:50:38 772

原创 应用层——DNS域名解析协议

TCP/IP中我们使用IP地址+端口号来确定网络上的某一主机的某一程序,但是IP地址不方便记忆。所以产生了一个叫做主机名的东西,它是一个字符串。我们使用hosts文件来描述主机名与IP地址的对应关系,这样只要我们知道主机名就可以找到网络上对应的主机。 但是,我们也知道,在局域网中的主机的IP地址会随着网络变化而变化,同一主机在不同时间连不同的局域网,被分配到的IP地址...

2018-08-09 11:41:40 562

原创 ARP协议——地址解析协议

zhi先要强调的是ARP协议不是一个单纯的数据链路层协议,而是介于数据链路层与网络层间的协议。1.ARP协议的作用ARP协议建立了主机的IP地址到MAC地址的映射关系。(1)在网络通信时,源主机知道目的主机的IP地址与端口号,但是不知道目的主机的硬件地址(2)而数据包是要先被网卡接收才会去处理上层协议。当主机的硬件地址与接数据包的目的主机的硬件地址不符合,则数据包会被直接丢弃(...

2018-08-09 11:09:46 317

原创 TCP/IP五层模型——数据链路层

数据链路层主要功能是:两个设备(同一数据链路节点)之间的数据帧的传送与识别。一.认识以太网1.相关概念(1)"以太网" 不是一种具体的网络,而是一种技术标准。它既包含了数据链路层的内容,也包含一部分物理层的内容。(2)以太网是当前应用最广泛的局域网技术,与之并列的还有令牌环网,无线LAN等。(3)以太网中的网线必须使用双绞线,传输速率有10M,100M,1000M等。2.以...

2018-08-09 09:43:06 496

转载 C++——STL的迭代器失效问题

本文转载自:https://blog.csdn.net/coderCong/article/details/52065130之前看《C++ Primier》的时候,也解到在顺序型窗口里insert/erase会涉及到迭代器失效的问题,并没有深究。今天写程序的时候遇到了这个问题。1 莫名其妙的Erase    最初我的程序是酱紫的,别说话,我知道这样是有问题的,可这样是最直观的想法...

2018-08-02 12:18:28 137

原创 TCP/IP五层模型——网络层

网络层的主要功能就是在复杂的网络环境中确定一个合适的路径。一. IP协议1.基本概念(1)主机:配有IP地址,但是不进行路由控制的设备;(2)路由器:配有IP地址,又能进行路由控制;(3)节点:是主机和路由器的统称。      这里的路由控制指的是路由控制器根据控制表转发数据包,它根据要转发的数据包中的目的IP地址与控制表对比得出下一个要转发去的路由器。2.协议头格式...

2018-07-27 19:21:16 208

原创 TCP的面向字节流&粘包问题&异常情况

一. TCP面向字节流      创建一个TCP的socket,要同时在内核中创建一个发送缓冲区和接收缓冲区。1.调用write时,数据会先写入发送缓冲区;2.如果发送的数据字节数太长,就会被拆分成多个TCP的数据包发出;如若发送的字节数太短,就会在缓冲区等待,等到缓冲区长度差不多了,或者其他合适的时机才会发送出去;3.接收数据时,数据也是从网卡驱动程序到达内核的接收缓冲区;4...

2018-07-27 12:03:26 310

原创 TCP提高可靠性&性能的一些机制

一. 确认应答(ACK)机制

2018-07-27 11:23:50 390

原创 C++实现双向带头结点的循环链表(list相关操作的简单实现)

直接贴代码://带头带环的双向链表 //-》无死角#include &lt;iostream&gt;using name...

2018-07-19 15:22:03 207

原创 C++实现顺序表(vector相关操作的简单实现)

#include &lt;iostream&gt;#include &lt;string.h&gt;#include &lt;assert.h&gt;using namespace std;#define DEFAULT_CAPACITY 3typedef int DataType;class Vector{ public: Vector()//构造函数...

2018-07-19 15:19:15 250

原创 斐波那契数列扩展——青蛙跳台阶问题

斐波那契数列: 问题:假设一只青蛙一次可以跳上一级台阶,一次也可以跳上两级台阶。求一只青蛙跳上一个n级的台阶,有多少种跳法? 分析: 当n=1时,只有1种跳法; 当n=2时,有2种跳法; n=3时,有3种跳法; n=4时,有5种跳法; n=5时,有6种跳法; ………….. ...

2018-07-17 21:46:09 289

原创 C++——写时拷贝

在深浅拷贝中提到的深浅拷贝也有自己的缺陷。我们知道浅拷贝可能造成重新出错,深拷贝又会浪费空间。因为并不是每个要拷贝的对象都会修改数据,如果并不准备修改数据,浅拷贝进行读也是可以的。所以就有了写时拷贝。它具体实现思想是:先对原始对象进行浅拷贝,若是要修改数据就再调用深拷贝,让它修改自己的数据,不会造成原始对象受到影响的情况。 我们将写时拷贝认为是使用引用计数实现的浅拷贝。我们在开辟...

2018-07-17 09:34:51 230

原创 C++——浅拷贝和深拷贝

浅拷贝:可以理解为没有真正的开辟内存拷贝数据,而是与原对象指向同一块内存,所以在修改当前对象的时候原始对象也会随之改变。且若原始对象中有动态成员时,因为析构时两个对象各自析构一次,但析构同一块内存,所以会出错。 深拷贝:它会开辟一块新的与原始对象一样大的内存空间,将原始对象的字段全部拷贝过来。这样各自拥有自己的数据块,在析构时不会出问题。 具体实现代码如下:#include &amp;lt;i...

2018-07-17 09:21:52 202

原创 TCP/IP五层模型——传输层(TCP的连接管理机制——三次握手、四次挥手)

        在上一篇博客中,我们介绍了TCP协议的协议端格式以及特点。。我们知道TCP是具有可靠性的,其中本文要介绍的TCP的连接管理机制就是保证可靠的一个机制。        在正常情况下,TCP要经过三次握手建立连接、四次挥手断开连接。1. 连接管理机制的具体过程        下图则是TCP三次握手、四次挥手的具体实现过程:2. 为什么要进行三次握手建立连接?为什么不是两次?四次?更多次...

2018-07-15 11:08:02 1056

原创 每日练习——输入一个整数,返回该二进制中1的个数,其中负数用补码表示

第一种方法:-&gt;效率不够高int count_one_bits(unsigned int value){ int i = 0; int count = 0; for (i = 0; i &lt; 32; i++) { if ((value&gt;&gt;i) &amp; 1 == 1) count++; } return count;} 第二种方法:-...

2018-07-10 16:44:29 167

001_fly_mode.py

本代码利用python实现,在eclipse+python+androidsdk自动化测试环境下,跑通可以实现android手机飞行模式测试自动化

2019-09-06

三子棋小游戏源代码

利用C语言实现的三子棋简单小游戏,单机版本的。利用到了数组、指针等C语言知识

2018-06-20

空空如也

空空如也

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

TA关注的人 TA的粉丝

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