- 博客(77)
- 资源 (3)
- 收藏
- 关注
原创 10年测试工作总结
写总结源于最近看到一本书《纳瓦尔宝典》,思考之后,觉得自己这些年的测试工作经验对大家或者有所帮助,自己在写的过程中也能反思。目前想到的内容有:需求测试、专项测试、灰度测试、自动化测试、冒烟测试、市场退维FFR、NPS调研、埋点监控系统、众包测试、试用用户及各类测试环境,后续会分开来写,敬请期待。2015年毕业,到现在2026年,利用春节这段时间好好总结,每天更新一点内容,希望过完春节依然能坚持写下去,像跑步一样,已坚持2个半月!
2026-02-06 22:44:22
256
原创 C++内存泄露测试
最近在分析bug的时候发现有个内存泄露的问题,正好借此机会分享下内存泄露的知识。相信学习过C或C++的同学都对指针变量不陌生,书上往往会强调指针变量使用需要非常小心,很容易发生内存泄露。说简单点就是分配了动态内存后不释放,程序继续运行,直到某一时刻,操作系统分配给该进程的内存耗尽,程序挂掉。学习工科重要的是实践,那么我们写一段代码来进行测试。 如下面这段代码,我们声明一个C++类,里面定义三个私有数组,数组元素1万个,分别是double,float和int型,在64位的...
2021-08-19 20:17:33
353
原创 【激励自己】牛人职场分享汇总
1、在华为工作是怎样一番体验?https://www.zhihu.com/question/21630492/answer/3682140772万赞回答,华为19年员工,如今的部门主管,最令我印象深刻的一段话:2、字节张一鸣--不对工作设定边界3、雷军--《西点BBS:程序人生路》,《顺势而为雷军传》4、为什么你有10年经验,却成不了专家?----不要用战术上的勤奋掩盖你战术上的懒惰,跨出舒适圈,才能成长提升...
2021-07-24 15:31:11
349
原创 带着疑问学习C++ Primer第三版PDF
http://blog.csdn.net/laoze4987/article/details/66126479http://blog.csdn.net/duzai7927/article/details/66126493http://blog.csdn.net/laoze4987/article/details/66126512http://blog.csdn.net/duzai792
2021-07-17 16:15:22
356
原创 通信IT行业,工作四年,我获得了什么
年近30,回望这些走过的不少弯路,总结下,希望能帮到同学们。 读书晚,再加上读研究生混日子,没做出什么有成绩的工作,自己也没有明确的目标,到30岁才工作四年,还是半屌丝状态。看了下同事,到30岁基本都有7到9年的工作经验,让我还是非常有压力的,轻易不敢透露自己的年龄,大多数人还以为我才27岁左右。 刚毕业那会,大家找工作都是冲着互联网的开发岗位,工资高...
2019-08-23 20:54:10
1067
1
原创 蚂蚁金服高级测试开发工程师面经【2018与2021两次面试】
通过前同事内推简历,等了半个月左右,期间一直在刷leetcode,把一些常见的题刷了一遍。第一面2018.8.17,很突然,在公司加班,8点半左右,接到从杭州打过来的电话,隐约感觉是阿里的,一听果然是,说是否方便现在面试,随即开始。还好有所准备。。。一、自我介绍 先讲目前在做的工作,由于项目很大,个人做的工作比较乱,那就从每天的任务,在项目中的角色出发,尽量说细点...
2018-08-26 16:16:28
4721
原创 java中调用adb shell 命令启动android应用程序
实现方法:一、把下面的adb shell命令做成bat文件,然后在java程序中调用即可, 例子中为启动美团appadb shell am start -n com.sankuai.meituan/com.sankuai.meituan.activity.Welcomeexit二、代码示例(下面代码在手机上测试通过)/** 启动应用程序*/
2017-04-04 21:22:54
8098
1
原创 tomcat中解析url中的参数或者post中的请求内容
package javax.servlet.http;import javax.servlet.ServletInputStream;import java.util.Hashtable;import java.util.ResourceBundle;import java.util.StringTokenizer;import java.io.IOException;/** *
2015-01-15 11:32:45
4265
1
原创 MINA源码分析---学习mina中整数和网络字节的转换处理
主要学习网络字节和计算机上表示的整数之间相互转换以及和小端字节序的转换package org.apache.mina.proxy.utils;import java.io.UnsupportedEncodingException;/** * ByteUtilities.java - Byte manipulation functions. * @since MINA 2.0.0
2014-12-15 20:28:28
1452
原创 MINA源码分析---可移植的操作系统分界符(换行符)
package org.apache.mina.filter.codec.textline;import java.io.ByteArrayOutputStream;import java.io.PrintWriter;/** * A delimiter分界符 which is appended to the end of a text line, such as * CR/LF.
2014-12-10 15:58:25
1355
原创 MINA源码分析---协议编码解码器工厂ProtocolCodecFactory接口
1、具体的解码器,编码器需要自己根据协议实现2、实现协议编码解码器工厂ProtocolCodecFactory接口,在里面主要的工作就是创建解码器,编码器实例,并且返回实例下面贴出三个接口的源码,读者只需要实现这三个接口即可package org.apache.mina.filter.codec;import org.apache.mina.core.session.IoSess
2014-12-07 16:52:50
4371
原创 MINA源码分析---协议编码解码过滤器ProtocolCodecFilter
协议数据 1、对输出的数据进行编码,把消息对象转换成二进制字节流 2、对收到的数据进行解码 过滤器ProtocolCodecFilter,对应的两个最重要的方法分别是1、先对数据进行编码,再发送 filterWrite(NextFilter nextFilter, IoSession session, WriteRequest writeRequest
2014-12-07 16:40:31
7190
原创 MINA源码分析---协议编码输出接口ProtocolEncoderOutput及其实现
下面是协议编码输出接口ProtocolEncoderOutput,所有编码后的数据需要通过接口ProtocolEncoderOutput来写到会话中package org.apache.mina.filter.codec;import org.apache.mina.core.buffer.IoBuffer;import org.apache.mina.core.file.FileR
2014-12-07 16:06:39
2454
原创 MINA源码分析---协议解码输出接口ProtocolDecoderOutput及其实现
接口 ProtocolDecoderOutput/* */package org.apache.mina.filter.codec;import org.apache.mina.core.filterchain.IoFilter.NextFilter;import org.apache.mina.core.session.IoSession;/** * Callback for
2014-12-07 15:54:30
3216
原创 MINA源码分析---CumulativeProtocolDecoder协议解码器
一般用户写解码器直接继承 CumulativeProtocolDecoder 类就行啦,实现里面的doDecode方法更详细的解释在源码中在/* */package org.apache.mina.filter.codec;import org.apache.mina.core.buffer.IoBuffer;import org.apache.mina.core.s
2014-12-06 20:41:14
7231
1
原创 MINA源码分析---协议编码器 ProtocolEncoder
里面主要涉及 ProtocolEncoder接口,ProtocolEncoderOutput接口,AbstractProtocolEncoderOutput抽象类下面的源码应该是比较容易理解的package org.apache.mina.filter.codec;import org.apache.mina.core.buffer.IoBuffer;import org.apac
2014-12-06 12:54:01
2282
原创 MINA源码分析---ExecutorFilter线程池过滤器
源码中都加注释啦/* */package org.apache.mina.filter.executor;import java.util.EnumSet;import java.util.concurrent.Executor;import java.util.concurrent.ExecutorService;import java.util.concurrent.Exec
2014-12-05 20:12:39
3097
原创 mina源码分析---IoEvent和IoFilterEvent类及其联系和区别
IoEvent是MINA提供的IO事件或IO请求的类package org.apache.mina.core.session;import org.apache.mina.core.write.WriteRequest;/** * An I/O event or an I/O request that MINA provides. * Most users won't need
2014-12-05 20:06:04
1776
原创 MINA源码分析---处理时间分析过滤器
源码上非常清楚,不懂英语的好好学习package org.apache.mina.filter.statistic;import java.util.HashSet;import java.util.Set;import java.util.concurrent.TimeUnit;import java.util.concurrent.atomic.AtomicLong;
2014-12-04 11:06:34
794
原创 MINA源码分析---心跳包过滤器KeepAliveFilter
1、源码中都加了注释了,用户所要做的就是定义自己的心跳包信息,以及判断拉收的信息是否是心跳包,封装心跳包信息2、实现KeepAliveMessageFactory接口,必要时可以继承KeepAliveFilter类,扩展功能都是可以的,也可以定义自己的心跳过滤器3、接口KeepAliveRequestTimeoutHandler中定义了几个处理获取心跳响应超时的处理,当然也可自己写处理函数
2014-12-04 10:44:37
5331
原创 MINA源码分析---对客户端设置连接间隔时间的过滤器
如果这个IP此次发起连接距离上次发起连接的时间少于规定的时间,则关闭会话,否则建立会话,可以避免同一个远程主机在短时间内发起多个连接下面是源代码,比较简单明了,不作解释了厅/* * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreem
2014-12-03 22:31:12
1577
原创 MINA源码分析----日志过滤器 LoggingFilter
该类继承自IoFilterAdapter,主要完成两件事1、记录事件2、再把会话事件传递到下一个过滤器中处理,最后交给IoHandler处理/* */package org.apache.mina.filter.logging;import org.apache.mina.core.filterchain.IoFilter;import org.apache.mina.c
2014-12-03 17:24:20
2535
原创 MINA源码分析----怎么设置IP限制的(防火墙)
主要涉及到以下两个类 一个是IP子网类 (IPV4)package org.apache.mina.filter.firewall;import java.net.Inet4Address;import java.net.InetAddress;/** * A IP subnet using the CIDR notation符号. 无类域内路由选择(Cla
2014-12-03 17:19:20
1629
原创 MINA源码学习---mina怎么把字符转换为16进制的
源代码如下,介个就不解释啦package org.apache.mina.core.buffer;/** * Provides utility methods to dump an {@link IoBuffer} into a hex formatted string. * * @author Apache MINA Project */class IoBufferHe
2014-12-03 17:14:21
2378
原创 MINA框架 中JAVA NIO处理主要逻辑的processor线程
/** * The main loop. This is the place in charge to poll负责轮询 the Selector, and to * process the active sessions. It's done in * - handle the newly created sessions * - */
2014-12-01 20:09:32
1578
原创 tomcat中简单线程池
public class ThreadPool{ /** * A very simple thread pool class. The pool size is set at * construction time and remains fixed. Threads are cycled * through a FIFO idle queue.
2014-10-15 16:34:37
754
原创 面试中最后一问该问什么
“最后一问”该问什么 一般来说,围绕公司、职位提问会让面试官觉得你确实是关心这份工作的。虽然常规的公司介绍、职位描述会在面试里完成,但你不妨就此问题深入下去。以下几个问题,供你参考: 1.公司对这个岗位的期望是什么样的?其中,哪些部分是我需要特别努力的? 2.公司是否有正式或非正式培训? 3.公司的升迁渠道如何? 4.公司是否有外派或轮调的机会?
2014-09-15 12:11:49
1167
原创 char *p=“world“ 這個里面的world為什么不能改变呢
假设char*p1="world";char*p2="world";编译器为了节省空间,常量区中只有一份"world",所以p1、p2指向同一份的字符串如果允许改变,这会造成无意中改变其他指针指向的字符串,操作系统中的copy-on-write机制就是为了解决这个问题,可惜C语言中没有改机制,Delphi中也有
2014-09-07 12:31:11
820
原创 最长公共子串问题
LCS问题就是求两个字符串最长公共子串的问题。解法就是用一个矩阵来记录两个字符串中所有位置的两个字符之间的匹配情况,若是匹配则为1,否则为0。然后求出对角线最长的1序列,其对应的位置就是最长匹配子串的位置.下面是字符串21232523311324和字符串312123223445的匹配矩阵,前者为X方向的,后者为Y方向的。不难找到,红色部分是最长的匹配子串。通过查找位置我们得到最长的匹配子串
2014-09-03 16:04:14
813
原创 字符串处理转换(2013华为机试题)
/*2 字符串处理转换问题描述: 在给定字符串中找出单词( “单词”由大写字母和小写字母字符构成,其他非字母字符视为单词的间隔,如空格、问号、数字等等;另外单个字母不算单词);找到单词后,按照长度进行降序排序,(排序时如果长度相同,则按出现的顺序进行排列),然后输出到一个新的字符串中;如果某个单词重复出现多次,则只输出一次;如果整个输入的字符串中没有找到单词,请输出空串。
2014-08-26 18:36:01
971
原创 字符串的前后顺序移动
/*4、编写字符串处理函数,将字符串中的字符'*'移到串的前部分,前面的非'*'字符后移,但不能改变非'*'字符的先后顺序,函数返回串中字符'*'的数量。如原始串为:ab**cd**e*12,处理后为*****abcde12,函数并返回值为5。(要求使用尽量少的时间和辅助空间)*//*对一个字符串重新排列,字母排在前面,数字排在后面,并不改变原来字母之间以及数字之间的字
2014-08-25 17:25:40
1782
原创 谷歌笔试题(最长公共子串)
/*给定字符串A和B,输出A和B中的共有最大子串。比如A="aocdfe" B="pmcdfa" 则输出"cdf"*/#include#includeusing namespace std;char * findSubStr(const string &str, string &subStr);void bigSubStr(const char *str1,
2014-08-25 15:29:02
782
原创 C/C++——strcmp函数实现
函数原型:int strcmp(const char *dest, const char *source) ;返回值:返回整数值,如果dest > source,则返回值大于0,如果dest = source,则返回值等于0,如果dest 参数说明:都是以''/0''为结束符的字符串实现; int strcmp(const char *dest, c
2014-08-22 09:39:26
1475
原创 百度地图坐标转换新接口
百度官方资料文档 http://developer.baidu.com/map/changeposition.htm值得高兴的是,此接口一uqw
2014-07-31 15:58:24
1412
原创 easyui 中的 form 提交 后获得 后台 的 json数据 与 jquery .ajax的不同之处
jquery ajax接收后台传送过来的数据通过定义 dataType :'json' , 可以保证接收到的数据就是json类型的 ,不需要再用eval()函数进行转换,应用起来相当方便举例如下[javascript] view plaincopyfunction getTracks(terId,startTime,endTime){ $.aja
2014-07-04 15:57:01
5546
1
原创 Struts2接收参数的方法有3种分别是:
Struts2接收参数的方法有3种分别是: 1.用Action的属性接收参数 2.用DomainModel接收参数 3.用ModelDriven接收参数 一:用Action的属性接收参数的例子如下: UI页面代码如下:使用action属性接收参数添加用户 Action代码如下:package org.credo.struts2.
2014-07-04 14:20:42
627
原创 线程任务的结果获取Future接口源代码
* Written by Doug Lea with assistance from members of JCP JSR-166 * Expert Group and released to the public domain, as explained at * http://creativecommons.org/publicdomain/zero/1.0/ */package j
2014-06-26 10:55:02
717
原创 线程工厂源代码
/** * The default thread factory */ static class DefaultThreadFactory implements ThreadFactory { private static final AtomicInteger poolNumber = new AtomicInteger(1); pri
2014-06-26 10:45:47
652
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅