一、数据库命令规范  所有数据库对象名称必须使用小写字母并用下划线分割  所有数据库对象名称禁止使用mysql保留关键字(如果表名中包含关键字查询时,需要将其用单引号括起来)  数据库对象的命名要能做到见名识意,并且最后不要超过32个字符  临时库表必须以tmp_为前缀并以日期为后缀,备份表必须以...
       本来笔者想对安卓Instrumentation和Uiautomator测试框架进行一番尝试,也百度了很多相关的博客,然后发现很多文章都是互相摘抄,某部分内容也没有及时更新,更不适用于现在最新的安卓开发环境。例如Instrumentation的ActivityInstrumrntatio...
       日前,一位名为 Jens Neuse 的开发者在改进其 graphql 解析库的过程中,发现词法分析器和解析器中存在很多的低效率,因此不得不重构完整的代码库(https://medium.com/@jens.neuse/want-to-write-good-unit-tests-in-...
       又到了辞旧迎新的时候,群里的红包也多起来了。  然而大佬们总是喜欢趁我不在的时候发红包,经常打开手机,发现红包已被抢完,感觉错过了一个亿。  安卓上有不少红包助手工具,但 iOS 似乎没有。而且就算有,这种需要很高权限的第三方插件工具总让人不那么放心。所以我还是自己来做一个好了。如果要...
       一直以来,多线程代码是服务器开发人员的毒药(问问Oracle的Java语言架构师和并行开发大师Brian Goetz)。Java的核心库不断加入各种复杂的用法来减少访问共享资源时的线程等待时间。其中之一就是经典的读写锁(ReadWriteLock),它让你把代码分成两部分:需要互斥的写...
Chatper 2 手工测试  测试是为了找bug的一系列过程.那么手工测试毫无疑问是主要活动  任何一个软件公司发布的产品都有缺陷  这个缺陷是一种特殊缺陷,比其他任何缺陷都重要:即逃过所有各种检测手段而最终存在于发布产品中的缺陷. 这些缺陷如何损害公司利益?用户在使用软件过程中找到这些缺陷。  ...
       webmagic有一个selenium模块,其中实现了一个SeleniumDownloader。但是感觉灵活性不大。所以我就自己参考实现了一个。  首先是WebDriverPool用来管理WebDriver池:   import java.util.ArrayList;  import...
       在爬取某网站时,网页的源代码出现了中文乱码问题。之前关于爬虫乱码有各式各样的问题,今天与大家一起总结下关于网络爬虫的乱码处理。注意,这里不仅是中文乱码,还包括一些如日文、韩文 、俄文、藏文之类的乱码处理,因为他们的解决方式 是一致的,故在此统一说明。  一、乱码问题的出现  就以爬取5...
      本文整理自阿里巴巴中间件技术专家彦林在中国开源年会上的分享,通过此文,您将了解到:  微服务给配置管理所带来的变化  配置管理演进过程中的设计思考  配置管理开源后的新探索  配置中心控制台设计实践  “为什么相对于传统的软件开发模式,微服务要强调配置中心,是出于什么样的诉求需要我们专门...
       背景  对于电商类型和内容服务类型的网站,经常会出现因为配置错误造成页面链接无法访问的情况(404)。  显然,要确保网站中的所有链接都具有可访问性,通过人工进行检测肯定是不现实的,常用的做法是使用爬虫技术定期对网站进行资源爬取,及时发现访问异常的链接。  对于网络爬虫,当前市面上已经...
     前言  做过自动化测试的人应该都会有这样一种体会,要写个自动化demo测试用例很容易,但是要真正将自动化测试落地,对成百上千的自动化测试用例实现较好的可复用性和可维护性就很难了。  基于这一痛点,我开发了AppiumBooster框架。顾名思义,AppiumBooster基于Appium实...
       本文主要介绍selenium在爬虫脚本的实际应用。适合刚接触python,没使用过selenium的童鞋。(如果你是老司机路过的话,帮忙点个star吧)  项目地址  https://github.com/Denon/sync...  selenium介绍  selenium官网. 直...
序  本文主要讨论Selenium不同webdriver的构造  Selenium 2.0  Selenium 2,又名 WebDriver,它的主要新功能是集成了 Selenium 1.0 以及 WebDriver(WebDriver 曾经是 Selenium 的竞争对手)。也就是说 Seleni...
 1 移动APP安全风险分析  1.1 安全威胁分析  安全威胁从三个不同环节进行划分,主要分为客户端威胁、数据传输端威胁和服务端的威胁。   1.2 面临的主要风险    1.3 Android测试思维导图   1.4 反编译工具  有两种反编译方式,dex2jar和apktool,两个工具反编译...
       传统的 cURL 无法执行页面中的浏览器脚本,并且在抓取一些对爬虫有限制的网页时,往往要设定详细的 http header 来突破限制,编写起来较为复杂。  Selenium简介:  Selenium 是一个用于Web应用程序测试的工具(用处也不仅仅是测试)。  Selenium 直接...
       本文是对Spring Boot、Dubbo项目进行Mock测试的总结与踩坑实录。  搜索了一圈,居然没发现类似的文章,莫非用Dubbo的朋友们都不Mock测试,或者有其他的办法测试吗?  简单总结了一下,希望对大家能有一定参考意义。如果有更好的测试方法,请联系我的邮箱eacdy0000...
       最近在为面试新工作做准备,所以想想整理一下软件测试的基本工作流程,大致梳理一遍,这样也便于自己在面试过程中可以沉着的面对面试管的测试工作如何进行的问题。  首先,作为测试人员需要学习并了解业务,分析需求点  为什么测试人员要参加需求分析?也就是进行测试需求分析的目的是什么?  第一、把...
       软件测试工程师是一个历史很悠久的职位,可以说从有软件开发这个行业以来,就开始有了软件测试工程师的角色。随着时代的发展,软件测试工程师的角色和职责也在悄然发生着变化,从一开始单纯的在瀑布式开发流程中担任测试阶段的执行者,到敏捷开发流程中QA(Quality Assurance)角色,为整...
       duic 配置中心  在软件开发中随着业务的需要, 需求的变更, 程序的灵活我们时常需要在项目中设置各种开关或者配置项. 在往常时一般会采用配置文件的方式, 但是在这分布式集群时代采用传统的配置管理方式显得有点力不从心. 同时在我们的 app/web 终端我们也时常需要各种配置, 在面...
Hadoop分布式文件系统(HDFS)是一种分布式文件系统。它与现有的分布式文件系统有许多相似之处。但是,与其他分布式文件系统的差异是值得我们注意的:  HDFS具有高度容错能力,旨在部署在低成本硬件上。(高容错)  HDFS提供对数据的高吞吐量访问,适用于具有海量数据集的应用程序。(高吞吐量)  ...