- 博客(13)
- 资源 (13)
- 收藏
- 关注
原创 Java Spring redisTemplate Scan 坑
在此记录一下遇到的坑,原先代码里有使用keys, 后来使用scan。但发现redis CPU飙的很高。不得不切换回keys。开发环境切记不要用redis 模糊查询,
2019-02-14 22:56:54
3063
5
原创 sqlalchemy数据库连接池错误 sqlalchemy.exc.TimeoutError: QueuePool limit of size 100 overflow 0 reached,
线上环境突然大量报出这个错误,且导致其他sql语句都不能正常执行。加大 pool_size=200 无用。mysql 数据库执行show processlist;发现有很多delete 语句处于执行没被释放状态。已经把当前连接占满。经检查此delete语句在等待select释放。且等待时间过长。修改此处有delete的代码逻辑后再次执行show processlist; 已经...
2018-09-17 14:50:49
3076
原创 用java构建企业级自动化框架(多线程及结束语)
最后一章我们说下多线程,在前面我们已经说完如何分布式执行脚本,那在里面引入多线程并发执行case,也十分简单。第一,我们创建一个线程类,构造器中传入要执行的脚本和要输出目录。在run方法体内让执行这个脚本。public class BThread implements Runnable {public BThread(String outputDir, BertTestCase bte
2012-03-16 16:35:34
810
原创 用java构建企业级自动化框架(第四篇-构建框架分布式并发执行测试用例功能2)
上一节说的是有点古老的技术:rmi+jms。本期讲述的是另一个解决思路ActiveMQ,他是对jms的一个封装。更加容易操作。activeMQ的工作原理就是一个服务器端不断的发消息(消息可以是字符和对象,这里用对象),客户端不断接收消息并处理这个消息。首先我们来做个demo,说下activeMQ加Tomcat是怎么集群的。首先,下载apache-activemq-5.5.zip,解压,
2011-12-12 23:39:34
841
原创 用java构建企业级自动化框架(第四篇-构建框架分布式并发执行测试用例功能1)
对于一个自动化框架来说,它可以分为上下两层架构,上层关注用户如何使用,脚本语言是什么形式,报告以一种什么方式展出。底层关注的是大量测试用例如何并发式执行,多处理器如何配置等这些用户看不到的东西。这一章我们说下如何构建框架的底层,构建分布式并发执行测试脚本功能。 今天这一节我们先给出第一个解决方案。rmi+jms处理方式。首先说下rmi。它是搭建java分布式的基础,在java1.1中已经
2011-12-05 16:06:23
1139
原创 用java构建企业级自动化框架(第三篇-脚本的管理)
在前续篇中我们提到了junit suit是如何运行多个case的,那在自己搭建的框架中,你可以自己创建一个或多个×××.suite(xml or properties等类型均可)文件,然后把要运行的脚本路径写入里面,然后每次要大批量运行脚本时,只要读取相应的×××.suite文件然后把里面内容放入List中然后去运行就行了。你的测试用例可能分为好多种,比如功能性测试用例或者流程性测试用例,可以
2011-11-28 10:30:42
953
原创 用java构建企业级自动化框架(第二篇-测试报告的生成)
对于一个自动化框架来说,它的第二个实现重点是测试报告的生成。可以想象如果没测试报告,那我还跑自动化干什么呢?如果测试报告展示的测试结果不清晰不友好,那你希望谁去分析你的测试报告呢?所以对于一个自动化框架来说,测试报告功能也是它其中的一个重点。 测试报告包含的信息要有,1,自动化运行的每个步骤,自动化运行中失败的原因记录,自动化测试结果成功或失败的提示文件以及还有包含能分门别类存放测试报告的文
2011-11-27 00:08:48
1606
原创 用java构建企业级自动化框架(首篇-制定测试者使用语言3)
接下来对数据库的测试也提供一种编写思路,具体如何实现这个就不细说了。 testjingdongcom.productId">SELECT DISTINCT p.po_no FROM wff_po_line p, wff_line_item l WHERE p.co_order_no=[orderNo]AND l.order_no = p.co_order_no
2011-11-20 23:03:09
827
原创 用java构建企业级自动化框架(首篇-制定测试者使用语言2)
在上一篇中讲述如何读取xml然后执行相应的java类,用到了java反射的一些知识,在这一讲中,我们会继续提到反射,也许你可能会问为何反射在这里会使用那么多,就其原因,java不像ruby 或者python是一种动态脚本语言。所以在使用的有很多限制,这也是为什么读一个xml而频繁使用反射的原因。那我们先看下执行验证的脚本 我们在接着看第一章
2011-11-17 22:34:08
614
原创 用java构建企业级自动化框架(首篇-制定测试者使用语言1)
首先我们谈论下Automation语言组织管理,因为一个Automation 的框架要使用它,就得用语言去驱动它,在一些自动化的软件中,你会见到那种不需要写语言,直接录制回放就去执行你脚本的自动化软件,但其实在录制的过程中,它只是智能的代替你生成脚本化语言,而这语言很多时候是没有你手写的健壮(即不容易出错)。你要时不时去修改它,修改的时候你肯定必须懂得脚本语言。我们先看一种方法,用XML去写自
2011-11-11 15:33:32
975
原创 用java构建企业级自动化框架(前序篇)
谈到企业级自动化测试,大家肯定会想到QTP,Ration Robot等自动化测试软件,这些软件无论在成熟度还是在用户认可度上都比较高,但它们都有致命的缺点,1,都需要钱去买且价格不菲。2,并不是专门针对本企业产品所设计,所以会出现测试功能点不能完全涵盖的缺陷。也正是是这些缺点限制了它们你能大范围的使用。那如何能让自己企业的软件能应用上自动化测试且不受上述缺点的限制呢?一个答案,构建属于自己的企
2011-11-11 00:29:34
2959
原创 协同工作模式
如果让大家概括现今我们的工作模式是什么样的,可能一千个人会有一千种说法,但有一种概括大家肯定会同意的,那就是分工合作工作模式。分工合作工作模式起源于上世纪初亨利·福特创建的流水线生产模式,在如今的各项工作领域中,无论是一辆汽车的出厂,还是一幢大楼的竣工,或是代表人类智慧的一项软件
2011-08-19 00:12:50
1722
原创 Eclipse-ECF 感受奇妙的协同编程之旅
很久就对协同工作模式感兴趣,也是在前年,发现eclipse有个开源项目叫cola, 它可以提供令人感受奇妙的协同编程模式,但是当时这个项目还不成熟,处于试验阶段,想体验下协同编程需要很复杂的配置,如今这个项目已经成熟了,可以很轻松的让我们体验协同编程的奇妙之处。(若出现图
2011-08-19 00:07:40
3802
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人