自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 使用Homebrew在OS X平台上进行包管理

因为没有mac机器,所以只能做一个虚拟机了,操作步骤参考:http://bbs.feng.com/forum.php?mod=viewthread&tid=8788239&page=1&mobile=2,我下载得是osX10.10版本,并且不是iso文件,所以经过层层解压后得到BaseSystem.dmg,然后用dmg2img将dmg文件转为iso文件(http://vu1tur.eu.org/t

2015-06-30 10:14:56 1079

原创 Scoop在windows平台上进行环境快速部署

转至元数据结尾Created by 李功文, last modified 大约1分钟以前转至元数据起始    scoop是windows上个一个包管理工具,通过scoop能快速在机器上安装所需要的标准工具、自定义工具。    scoop的安装需要power Shell3,如果是win7环境,则需要先将如下环境安装好后重启计算机:安

2015-06-29 14:23:18 12627 4

原创 使用Protostuff序列化及反序列化优化调试

在写自动化工具的时候经常遇到一个问题,工具前面历经坎坷做完了很多事情,但是在最后一步出错了,修改完之后要进行验证,你可能需要又重走一遍之前的步骤来拿到出现问题的场景,不得不说,这时候感觉很坑爹……    然后福利来了,我们知道java提供了序列化和反序列化机制,而另外还有很多此类序列化和反序列化框架,而protostuff则是在protobuff基础上改进的一个优秀代表。 那我们怎么用这个

2015-06-26 20:22:10 8628

原创 使用Apache Velocity生成HTML报表

pom.xml中加入jar依赖    org.apache.velocity    velocity    1.7velocity语法规则见:https://github.com/putaoshu/jdf/blob/master/doc/core_vm.md定义自己的

2015-06-19 18:14:09 2115

原创 使用ireport+jasperReport报表生成

一、报表样式设计       1、使用ireport Design进行报表可视化设计[下载地址:http://community.jaspersoft.com/project/ireport-designer]        2、打开ireport Design并新建一个blank A4的模板,如下所示,默认定义了页面的不同结构                3、我

2015-06-12 13:52:48 2360

原创 fastjson使用实例

Fastjson是一个阿里开源出来的一个Java语言编写的高性能功JSON库,基本使用介绍如下:POM:    com.alibaba    fastjson    1.1.41  以崩溃后台的查询为例:1、崩溃后台查询的返回如下:

2015-06-10 12:42:37 892

原创 使用Retrace还原被ProGuard混淆后的崩溃堆栈

AndroidSDK的tools中提供了混淆和还原的jar文件,当然也可以直接下载ProGuard相关的jar:http://sourceforge.net/projects/proguard/命令行使用比较简单,参照提示即可,但是如何在通过代码调用呢?如下所示,需要注意的是execute()执行后,需要通过如下方式将标准输出写到文件中。import java.io.File;imp

2015-06-08 21:00:29 3662 1

原创 不一样的No mapping found for HTTP request with URI

在刚开始使用SpringMVC开发网站时,可能最常见的问题就是形如“No mapping found for HTTP request with URI [/SpringTest/hello] in DispatcherServlet with name 'spring'“的错误了,按照网络上的方法,无非就是requestMapping注解所设置的url、jsp中打开的链接url、Internal

2015-04-08 01:33:17 6376 1

原创 Mockito常用方法及示例

Mockit是一个开源mock框架,官网:http://mockito.org/,源码:https://github.com/mockito/mockito要使用Mockit,首先需要在我们工程中引入对应的jar包,对于maven工程而言,需要添加如下依赖项即可: org.mockito mockito-core 2.0.5-beta 而在我们实际使用时,为了组织

2015-03-19 09:59:02 37395 3

原创 通过sendevnet和input模拟android设备屏幕点击

android adb有两个方法可以模拟在触摸屏上点击或者划动,sendevent和input。sendevent的方法网上有非常多,但是实际上方法并不是通用的,在不同型号的手机设备上需要模拟的event也不尽相同,查了一圈资料也实在没找到一个通用的方法,所以对于批量设备,这种方法其实不适用。具体的方法是:找到触摸屏的event id后,“getevent /dev/input/eve

2015-03-17 21:35:33 2477

原创 Android SendEvent如何获取不同型号手机的触摸屏输入设备

在某些情况下我们可能需要自己来模拟键盘、鼠标设备输入,而对于通过sendevent方式模拟触摸屏事件遇到一个比较大的问题:当设备非常多的情况下,你无法逐个确认哪个才是触摸屏对应的设备,经过在多台不同品牌手机上验证,发现其实是有规律的。1、 在adb shell环境下获取所有event输入设备信息“cat /proc/bus/input/devices”,如下所示:2、接下来主要通过

2015-03-17 00:45:14 1948 1

原创 使用chimpchat和ddmlib写基于java的MonkeyRunner程序

AndroidSDK下的monkeyrunner可以通过python脚本调用api的方式控制设备,实在不想各种语言横插一杠,所以想着用java还写monkeyrunner脚本,不折腾不知道,其实也比较简单。      MonkeyRunner源码分析已经有同学做过了,可以参考:http://blog.csdn.net/zhubaitian/article/category/2598287

2015-03-12 23:00:38 3276

原创 FileOutputStream、BufferedOutputStream、FileWriter三种文件写入的对比

因为需要把在线的apk文件下载到本地,一上来就使用了FileWriter的方式进行文件写入,结果发现下载到本地的apk会提示安装包损坏,经过排查,原来FileWriter是使用的字符写入的方式,而可执行的apk实际是二进制文件,这样在字节读取,字符写入的时候文件显然也发生了变化,明显的差异就是文件大小变成了两倍……官方解释是: FileOutputStream is meant for w

2015-03-06 16:29:52 10140

原创 SLF4J库管理java程序日志输出

很久以前准备用log4j进行日志输出的,但是瞄了一眼感觉好复杂的赶脚,所以就放弃了,自己写了一个简化的日志输出模块,今天正好被东西卡住了,所以又把它给翻出来了,不过这次使用的是slf4j并采用log4j的日志输出形式,其实如果进行简单的日志输出,并不复杂(但是要里面涉及东西的确挺多的)。   1、 以maven工程为例,我们只需要在pom中加入依赖即可: org.slf4j

2015-03-06 00:48:57 1016

原创 使用jython和ScriptEngineManager在java中执行python

方法一:使用java内置的ScriptEngineManager进行python脚本调用,只要是在java6及以上即可。1、 直接运行python语句: /** * 使用ScriptEngine执行python语句 */ public void runPythonScript() { ScriptEngineManager manager = new ScriptEng

2015-03-05 19:32:50 6658 1

原创 maven有关resource资源的管理和访问

这里所说的resource主要说的是pom里面build下的设置项。可以参考maven官网文档:http://maven.apache.org/pom.html#Resources,有好心人把它给翻译了一遍http://blog.csdn.net/tomato__/article/details/13625497 我这里主要的设置如下: package D

2015-03-04 19:53:30 11736

原创 Dashboard-view自定义jenkins任务集视图

源码:https://github.com/jenkinsci/dashboard-view-plugin使用方法:安装插件后新建视图,可以看到如下所示视图类型:该视图设置项主要包括三类:job筛选规则设置,job list列设置,图表及位置设置。job筛选规则设置包括job list中直接勾选选择和正则匹配两种方式,后者在job命名没有规范或者job较少的情况下没什么实际的使用意

2015-03-02 21:21:33 17187

原创 非标准maven工程的resource资源提交

标准的Maven工程,目录结构如下,资源都是放在"src/main/resources"下的,所以在打包成jar的时候无须特别处理。src/main/javaApplication/Library sourcessrc/main/resourcesApplication/Library resourcess

2015-01-13 18:31:57 3140

原创 dumpsys使用详解

Dumpsys结构图: 实现方式:dumpsys的代码在mydroid/frameworks/base/cmds/dumpsys/dumpsys.cpp,所有的dump信息都是由重载了Binder中的dump函数的类来完成:        @Override        protected void dump(FileDescriptor fd, PrintW

2014-08-15 12:24:36 29379

原创 Android系统/proc目录详解

/proc是一个虚拟文件系统,其下面的文件不是真实存在的,不占用实际存储空间。 /proc/cmdline:显示内核启动的命令行。示例:  /proc/cpuinfo:显示系统cpu的信息。示例:  /proc/filesystems,显示当前注册了的文件系统列表,nodev表示为虚拟文件系统。示例: 

2014-07-31 14:56:55 19623

原创 Centos下jenkins安装

java环境配置 下载jdk包:wget http://download.oracle.com/otn-pub/java/jdk/7u65-b17/jdk-7u65-linux-x64.rpm?AuthParam=1406282562_372f3e5c16906b3667dc87971c6b3e9e]安装jdk: sudo rpm -ivh  jdk-7u65-linux-x6

2014-07-28 18:38:02 4540

原创 Jenkins slave远程运行windows exe无窗口问题解决方法

在使用jenkinsslave下发并执行exe的时候遇到一个很奇怪的问题,之前实验过程中能够正常执行的exe在实际部署的环境下运行后无法显示程序窗口,这样导致有界面行为的一些测试程序无法正常得到结果。         经过一系列排查,基本确认该问题和jenkins的权限控制有关,尝试安装一个新的帐号及权限设置插件role-strategy后,重新在slave机器上运行,exe窗口能正常显示且程

2014-04-22 22:10:33 11254 1

原创 jenkins集群测试环境原理、部署及常见问题解决

Jenkins是一个开源项目,它提供了一个容易使用的持续集成系统,并且提供了大量的plugin满足各式的集成需求。         因为手里项目所用到的稳定性和性能测试工具每天手动部署到各台windows机器上比较浪费时间,所以这里使用jenkins用于部署测试工具到各个测试机上运行。整套环境需要一个中心服务器和若干测试机器组成的slave,这就是jenkins的Master/Slave结构,

2014-04-19 00:52:07 29839 2

原创 Android内存管理、监测剖析

Android内存管理机制:Android内存管理主要有:LowMemory Killer机制,Ashmem,PMEM/ION及Native内存和Dalvik内存管理管理和JVM垃圾回收机制。 LowMemory Killer机制:         源码位置drivers/staging/Android/lowmemorykiller.cAndroid是一个多任务系统,也就是说

2014-04-11 00:35:32 8690 1

原创 Android性能测试小工具Emmagee

Emmagee是网易杭州QA团队开发的用于测试指定android应用性能的小工具。该工具的优势在于如同windows系统性能监视器类似,它提供的是数据采集的功能,而行为则基于用户真实的应用操作。在使用上几乎近似不用任何教材即可上手,我们以360手机卫士为例,查看启动,扫描、清理过程中资源消耗的变化。首先启动Emmagee,设置采集频率为1秒,从列表中选择360安全卫士,开始测试操作

2014-04-03 21:17:33 18513 6

原创 使用maven对jsp进行预编译

尽管很多servlet容器例如tomcat、jetty等为了提升jsp第一次访问的性能,都提供了jsp的预编译功能:                           来源:http://www.jz123.cn/text/1228321.html 但是对于上线前验证或者持续集成的需求来说,很有必要提供一个能够手动或者命令行对jsp文件进行编译检查的方法,考虑到持续集成的便利

2014-04-02 23:26:14 4566 1

原创 VisualCodeGrepper实现廉价的代码基本安全问题排查

虽然对安全测试的原理和黑盒检测方法有所了解,但是白盒的方法去发现软件安全隐患确实让人倒吸一口凉气,但是,总有人了解我们的痛苦,这不VisualCodeGrepper就是这其中的一个便宜工具。         VCG是一个支持C++, C#,VB, PHP, Java and PL/SQL的自动化代码安全审查工具,如上所说,他能够在资源有限的情况下廉价快速地帮助我们快速找出工程代码中可能的安全问

2014-03-28 22:11:24 5501

原创 urlopen时1006x错误解决方法

下面这一段最简单不过的代码,你会觉得有什么问题?import urllib2import osdef test():    print urllib2.urlopen("http://www.so.com").read()if __name__ == '__main__':test()          事实是,的确抛出了下面的异常,当看到网络上对这种基本的问题连解

2014-03-27 20:39:35 1302

原创 使用Nightwatch.js做基于浏览器的web应用自动测试

1        安装1.1   安装node.js在http://nodejs.org/ 上下载适合本机系统的安装包运行安装,注意安装选项中选择npm tool以用于后续依赖包的安装。1.2   通过npm工具安装Nightwatch命令行运行“npm install nightwatch”,如下的提示表明安装成功。1.3   Npm相关目录结构所

2014-03-25 23:48:43 8509

原创 Web目录安全测试

<br />         <br />1.    起由:<br />以前没有接触过安全测试相关的内容,前几天一个朋友问到Web目录安全测试相关的问题,就做了一些了解,尽管不深入,但是感觉自己收获还是挺大的。<br />2.    原因分析:<br />                  在apache接收到一条映射到目录的请求,检查对应的作用域下DirectoryIndex指令是否设置当收到一个请求目录的索引时,服务器需要寻找的资源列表,如果有进行设置,那么按照设置的顺序优先返回前面

2010-10-12 19:32:00 1942

原创 使用AutoIt通过桌面图标点击的方式运行程序

<br />  操作时需要注意:<br />  1. 在win7系统上,因为左面图标有阴影效果,所以使用取得的x,y值去操作时可能并不能真正的点击到对象上,所以在下面的例子中x、y值都加了10像素。<br />  2. ControlListView() 的第三个参数可以参照帮助文档,其多种候选值提供了各种丰富的功能。<br />  3. 因为需要使用_GUICtrlListView_GetItemPositionX()等函数,所以需要在程序开始添加“#Include <GuiListView.au3>”。

2010-07-29 01:11:00 5530

原创 如何彻底删除旧版QTP

<br /> 在从QTP9.5升级到QTP10的安装过程中,遇到一系列的DLL文件无法注册,并且安装进程崩溃,卸载后也无法正常安装的情况。<br /> 在网上找了一些列的解决方法也没有彻底解决该问题,并且操作过程相当复杂,实际上要解决该问题,只需要将之前的旧版卸载干净重新安装新版即可。<br /> 那么,彻底卸载旧版qtp实际很简单,在360安全卫士的软件管家中提供了一个专门的卸载渠道,从这里卸载qtp并且执行其提供的强力清除功能后,再进行新版安装,一切就都正常了。

2010-07-29 00:20:00 2746 1

原创 QTP中的Description对象详解

<br /><br />         在QTP中,description对象的用途基于这样一个基础:QTP是建立在对象识别基础上的自动化测试工具,当需要操作一个对象时有三种方式:1,使用对象库中已经记录的控件名;2,使用描述性编程;3,使用description对象。<br />         其实对于2和3的理解是类似的,也就是说,当QTP在执行过程中需要给他一个描述,即“我要操作谁”,对于第二种方式,是告诉QTP“你给我找一个控件对象,找到它可能需要经过几层查找,但是我已经给定了每层查找的查找条件

2010-07-23 09:56:00 3615 1

原创 DeviceReplay的某些方法运行时出现General run error的问题解决

<br /> <br />     Mercury.DeviceReplay对象用于模拟鼠标单击和移动,还有键盘输入等操作。使用方式一般是:                          <br />            Set deviceReplay =CreateObject( "Mercury.DeviceReplay" )<br />            deviceReplay.MouseDown100,200,1       <br />   但是在QTP中实际使用的时候,当执

2010-07-14 19:15:00 2205

转载 Wscript对象详解

<br />15.6  Windows脚本宿主的内建对象<br />每个编程环境都提供了自己的对象模型,开发人员 可以使用这些对象模型实现各种解决方案,WSH也不例外。WSH包含了一组核心对象,分别包含了属性和方法,可以用于访问网络中的其他计算机、导入外部的 可脚本化对象以供应用程序使用,或者连接到Windows或Windows Shell。<br />15.6.1  WScript对象<br />WSH对象模型的基础就是WScript对象。这个对象提供了使开发人员能够访问各种信息的属性和方法,如:<br

2010-07-13 01:23:00 23382 2

原创 用Wscript的Arguments属性实现vbs的命令行参数形式启动

<br />Wscript对象的Arguments属性返回一个参数的集合,即WshArgument对象,我们可以根据该对象的一些特性实现脚本的命令行参数形式启动。<br />Set objArgs = WScript. ArgumentsIf objArgs.count =0 Then MsgBox "请输入启动参数!"ElseIf objArgs(0).count =1 Then If objArgs(0)="Start" Then Call startSE() ElseIf

2010-07-13 01:12:00 11264

转载 VBS中FileSystemObject对象详解

<br />   本来想整理一下FileSystemObject对象中的一些有用属性和方法的,但是一查,已经有人做了这样的事情,因而将该文直接转过来以便以后查阅。<br />   平时使用到的主要是一些文件目录的创建、删除函数,以及文本的读取、写入函数,另外使用FileSystemObject的一些属性例如AtEndOfLine、AtEndOfStream来进行读取过程中的一些判断。<br />   具体详情可以参考MSDN中关于FileSystemObject的介绍: http://msdn.micros

2010-07-09 01:39:00 6179

原创 VBS中运行应用程序的两种方式及WshShell对像浅析

         在vbs中有两种方法运行一个指定的应用程序:1.       使用wshShell对象提供的run()方法执行:Set wshell=CreateObject("WScript.Shell")wshell.Run  """C:/Program Files/360/360se3/360se.exe""",0,True Set wshell = Nothing2.       使用wshShell对象提供的exec()方法执行:Dim WshShell, oExecSet WshShell =

2010-07-08 19:35:00 2677

原创 VBS中解决路径带空格的三种方法

<br />在vbs中,如果需要运行的程序中带有空格,按照通常的方式往往会提示错误,其实有两种形式不同的解决方法:<br />1.       在应用程序前后分别加三个双引号,代码如下:<br /> <br />Set wshell=CreateObject("WScript.Shell")wshell.Run """C:/Program Files/360/360se/360se.exe""",5,True Set wshell = Nothing<br /><br />2.       使

2010-07-08 19:15:00 7893

原创 解决QTP在某些windows应用程序中对edit控件的set失败问题

<br />     因为所做的测试基于浏览器平台,当在浏览器地址栏中输入地址进行浏览时,经常遇到各种问题(页面加载时元素抢占焦点等),导致输入操作失败,进而影响脚本执行,尝试了winedit所提供的几种方法,click(),DbClick(),以及SetCarePos(),其中SetCarePos()的效果最好,但是当执行很多脚本时,问题又出现了,经过哦尝试终于发现QTP的某项设置可以解决这种问题。 <br />     “Tools”---”Options”---“Windows Application

2010-06-29 18:41:00 2524

软件破解资料

比较简单的软件破解资料

2007-09-10

Addison Wesley - Advanced JAVA Networking

Addison Wesley - Advanced JAVA Networking

2007-09-10

空空如也

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

TA关注的人

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