perl

软件测试自动化进阶之路遇见过的书籍(50本)

北慕城南 提交于 2020-08-12 20:59:07
不知觉间,就到了今年的520,这个特殊的日子。年纪大了,牙口不好,不要撒狗粮! 1.《Google软件测试之道 》 2.《持续交付》 3.《软件测试的艺术 》 4.《 代码整洁之道:程序员的职业素养》 5.《软件测试 》 6.《测试驱动开发 》 7.《软件测试经验与教训》 8.《探索式软件测试》 9.《捉虫日记》 10.《发布!软件的设计与部署》 11.《移动App测试实战》 12.《微软的软件测试之道》 13.《颠覆完美软件:软件测试必须知道的几件事》 14.《有效的单元测试 》 15.《敏捷软件测试测试人员与敏捷团队的实践指南》 16.《腾讯Android自动化测试实战》 17.《完美软件对软件测试的各种幻想》 18.《 Python Web开发:测试驱动方法》 19.《测试驱动开发的艺术》 20.《软件测试工程师面试指导》 21.《自动化测试最佳实践来自全球的经典自动化测试案例解析》 22.《Cucumber:行为驱动开发指南》 23.《Web安全测试 》 24.《大话移动APP测试:Android与 iOS应用测试指南》 25.《iOS测试指南》 26.《全程软件测试(第2版)》 27.《 JUnit实战》 28.《 xUnit测试模式 》 29.《测试驱动的面向对象软件开发》 30.《Java测试新技术TestNG和高级概念》 31.《测试之美》 32.

利用jsoncpp进行创建JSON

萝らか妹 提交于 2020-08-12 14:58:09
一、基本概念 1、定义 官方对JSON格式的定义: JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。 易于人阅读和编写。同时也易于机器解析和生成。 它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。 这些特性使JSON成为理想的数据交换语言。 JSON最初的来源于JavaScript这门语言,随着被广泛使用,几乎每门开发语言都有处理JSON的API。常常被用作数据交互的两种交互格式是json和xml,我之前也使用过一个叫mini-XML的库进行xml文件的解析,但是使用起来并没有jsoncpp这么容易上手。 json的官网: http://www.json.org/json-zh.html ,在官网有对json的基本介绍,并且提供了不同语言支持json的库的列表,可根据自己的实际情况进行调用。 2、语法规则 JSON有2种结构形式,以键值对形式或数组形式,官网关于这两种结构的描述如下: “名称/值”对的集合(A collection of name

PHP 正则表达式匹配中文字符

半城伤御伤魂 提交于 2020-08-12 07:28:01
例如在 MySQL 的 bin-log 文件中选取特定的数据库语句来恢复数据时,只要选出某个库的 INSERT INTO 操作(去掉了多余信息,只列出 SQL 语句) INSERT INTO `crm_member` (`id`,`name`) values ( 1 , ' 甄士隐 ' ) INSERT INTO `app_member` (`id`,`name`) values ( 2 , ' dee ' ) INSERT INTO `crm_member` (`id`,`name`) values ( 3 , ' emperor ' ) INSERT INTO `crm_member` (`id`,`name`) values ( 4 , ' 贾雨村 ' ) 只想选出 crm_member 表的 insert 操作时,可以使用 perg_match_all 函数 <? php header ('Content-type:text/html;charset=utf-8' ); $content = " INSERT INTO `crm_member` (`id`,`name`) values (1,'甄士隐') INSERT INTO `app_member` (`id`,`name`) values (2,'dee') INSERT INTO `crm_member` (`id

Python3的简介

那年仲夏 提交于 2020-08-11 20:55:38
Python3简介 Python3与Python2之间是不兼容的,而且其中的差异性比较大。其实Python是linux上最常用的软件之一,但是linux目前的版本大部分还是使用Python2的,而且,在linux上依赖Python2的程序更多一些,所以 Python3 要代替 Python2 成为主流还需要几年的时间。 我建议: 如果是你在企业中,需要用到Python而学习Python的话,那就要看企业的应用Python的版本进行学习; 如果想要更多的成熟解决方案,最少的bug,最稳定的应用那就用Python2 ; 如果你是在读大学的学生,那我建议你学习Python3,等到毕业的时候或许Python已经成为了主流。 Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。 Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。 Python 是一种解释型语言: 这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言。 Python 是交互式语言: 这意味着,您可以在一个 Python 提示符 >>> 后直接执行代码。 Python 是面向对象语言: 这意味着Python支持面向对象的风格或代码封装在对象的编程技术。 Python 是初学者的语言:Python 对初级程序员而言

Redis简介与部署

我与影子孤独终老i 提交于 2020-08-11 10:26:12
  一、简介   Redis是什么?redis是一款基于BSD协议,开源的非关系型数据库(nosql数据库),作者是意大利开发者Salvatore Sanfilippo在2009年发布,使用C语言编写;redis是基于内存存储,而且是目前比较流行的键值数据库(key-value database),它提供将内存通过网络远程共享的一种服务,提供类似功能的还有memcache,但相比 memcache,redis 还提供了易扩展、高性能、具备数据持久性等功能。主要的应用场景有session共享,常用于web集群中的tomcat或PHP中多web服务器的session共享;消息队列,ELK的日志缓存,部分业务的订阅发布系统;计数器,常用于访问排行榜,商品浏览数等和次数相关的数值统计场景;缓存,常用于数据查询、电商网站商品信息、新闻内容等;相对memcache,redis支持数据的持久化,可以将内存的数据保存在磁盘中,重启redis服务或者服务器之后可以从备份文件中恢复数据到内存继续使用;支持string(字符串)、hashes(关联数组)、list(列表)、set(集合)、sorted set(有序集合)、空间索引等数据结构的数据;支持数据的备份,可以实现类似于mysql中的主从模式的数据备份,支持使用快照和AOF(append only file)的数据持久化

OpenStack制作CentOS7.2.1511镜像

安稳与你 提交于 2020-08-11 08:16:09
1.下载镜像 直接访问官方镜像地址下载,注意选择中国的镜像源,相对国外镜像下载速率比较快,进入后选择版本为7.2.1511,在isos目录下下载x86_64的Minimal镜像. 2.创建虚拟机 首先需要创建一个qcow2格式镜像文件,用于作为虚拟机的磁盘,大小20G. root@UKVM-IMG:/var/lib/libvirt/p_w_picpaths# qemu-img create -f qcow2centos7.2.1511-L.qcow2 20G Formatting 'centos7.2.1511-L.qcow2', fmt=qcow2 size=21474836480encryption=off cluster_size=65536 lazy_refcounts=off refcount_bits=16 快速创建并启动虚拟机: NAME=centos7.2.1511-L ROOT_DISK=centos7.2.1511-L.qcow2 CDROM=/CentOS-7-x86_64-Minimal-1511.iso sudo virt-install --virt-type kvm --name $NAME --ram 1024 \ --disk $ROOT_DISK,format=qcow2 \ --network network=default \ -

Eleethub:使用 Rootkit 进行自我隐藏的加密货币挖矿僵尸网络

穿精又带淫゛_ 提交于 2020-08-11 07:11:56
原文: Eleethub: A Cryptocurrency Mining Botnet with Rootkit for Self-Hiding 译者:知道创宇404实验室翻译组 Unit 42研究人员发现了一个新的使用Perl Shellbot的僵尸网络活动,旨在挖掘比特币,同时使用专门制作的rootkit以避免检测。 该僵尸网络传播的方式是将一个恶意的shell脚本发送到一个受攻击的设备,然后该设备下载其他脚本。在受害者设备执行下载的脚本之后,它开始等待来自其命令和控制(C2)服务器的命令。尽管Perl编程语言因其广泛的兼容性而在恶意软件中流行,但这种僵尸网络不仅可能影响基于unix的系统,还可能影响使用Linux子系统的Windows 10系统。 本次发现的新活动使用了一个名为libprocesshider.so的共享库来隐藏挖掘过程,并且用一个专门制作的rootkit来避免检测。该恶意活动幕后者使用“Los Zetas”这个名字,暗指一个墨西哥犯罪组织,该组织被认为是该国最危险的贩毒集团之一。尽管如此,他们实际上不太可能是这个犯罪组织的一部分。此外,这个僵尸网络还连接到最大的IRC(Internet中继聊天)网络之一的UnderNet,讨论了包括恶意软件和网络犯罪在内的各种主题。 而且,僵尸网络在被发现时仍在开发中。但是,重要的是在攻击者危害更多设备之前阻止它。我们观察到

如何有效地在Vim中处理多个文件?

允我心安 提交于 2020-08-10 21:07:59
问题: I've started using Vim to develop Perl scripts and am starting to find it very powerful. 我已经开始使用Vim开发Perl脚本,并且开始发现它非常强大。 One thing I like is to be able to open multiple files at once with eg vi main.pl maintenance.pl and then hop between them with: 我喜欢的一件事是能够使用 vi main.pl maintenance.pl 例如一次打开多个文件,然后使用以下命令在它们之间跳转: :n :prev and see which file are open with 并查看打开哪个文件 :args And to add a file, I can say: 要添加文件,我可以说: :n test.pl which I expect would then be ADDED to my list of files, but instead it wipes out my current file list and when I type :args I only have test.pl open. 我希望它将添加到我的文件列表中

CentOS6.4 使用XAMPP搭建web项目环境

杀马特。学长 韩版系。学妹 提交于 2020-08-10 20:21:24
XAMPP (Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包。这个软件包原来的名字是 LAMPP ,非常容易安装和使用,下面简单介绍一下步骤: 1.xampp官网下载linux系统对应的xampp软件包,我下载的是 xampp-linux-5.5.35-0-installer.run 2. 使用远程文件上传工具(我用的是winscp)将xampp包上传 3.ls命令查看确认文件上传成功 4.给用户添加该文件的执行权限 5.执行xampp的安装 6.安装成功后,测试xampp环境 本机浏览器地址栏输入:localhost 或ip地址 此时外网是无法访问的,需要执行下一步 7.外网访问需关闭linux防火墙 来源: oschina 链接: https://my.oschina.net/u/2448151/blog/4446279

MySQL高可用篇之MHA集群

佐手、 提交于 2020-08-10 17:45:17
1 准备工作 1.1 修改主机名 vim /etc/ hosts # 添加对应主机 192.168 . 28.128 mha1 192.168 . 28.131 mha2 192.168 . 28.132 mha3 1.2 关闭防火墙及修改selinux # 关闭防火墙 systemctl stop firewalld systemctl disable firewalld # 关闭自启动 # 修改selinux vim /etc/sysconfig/ selinux SELINUX =disabled # 设置为disabled 1.3 部署一套1主2从的MySQL集群 创建主从可以参考 MySQL主从搭建 注意必须有如下参数 server- id = 1 # 每个节点不能相同 log -bin=/data/mysql3306/logs/mysql- bin relay -log=/data/mysql3306/logs/relay- log skip -name- resolve # 建议加上 非必须项 #read_only = ON # 从库开启,主库关闭只读 relay_log_purge = 0 # 关闭自动清理中继日志 log_slave_updates = 1 # 从库通过binlog更新的数据写进从库二进制日志中,必加,否则切换后可能丢失数据 创建mha管理账号 #