当前位置: 首页 > 编程日记 > 正文

Ruby: Ruby脚本在测试中的使用

如果存在以下的场景:
1. 放置在公司的读报机服务器,每天都是开启的;
2. 读报机每天下载报纸,一旦成功/失败,就会有相应的记录生成在某个xml文件中;
3. 现在有过去一年的读报机下载xml,大约有200多份,每份xml中存储了记录如下:

现在你的经理想从测试人员你那儿获取一些知识:
过去一年,我们的读报机功能,哪些报纸一直能够给客户下载?哪些报纸我们告诉客户是可以下载的,但是实际上是下载失败的?
如果去找开发,也许通过连接数据库,运行一下SQL查询,记录就出来了,但是如果服务器不允许你访问,需要你统计结果,那怎么办?
 
如果你会Ruby脚本,一切都非常简单:

path = "C:\\Users\\chenpassion\\Desktop\\20130806.xml"def get_downloaded(path)path = path.gsub('\\', '\\\\')#把文件所有的内容都读取出来file = File.read(path)#把每个报纸所在的段扫描出来newspapers = file.gsub("\n", " ").scan(/\<NewspaperReport.*?\/\>/)#定义一个数组,存放所有下载完成的报纸newspaper_names = []#获取所有下载完成的报纸信息    for newspaper in newspapersif newspaper.include?("下载完成")chinese_name = newspaper.scan(/ChineseName=".*"/)[-1].gsub(/[(ChineseName=)\"]/, "")pinyin_name = newspaper.scan(/NewspaperName=\"\w+\"/)[-1].gsub(/(NewspaperName=)?(\")?/, "")newspaper_names << "#{chinese_name}\t#{pinyin_name}"endendputs "总报纸数:#{newspapers.size}"puts "下载完成的报纸数:#{newspaper_names.uniq.size}"puts newspaper_names.uniq
endget_downloaded(path)

转载于:https://www.cnblogs.com/autotest/p/3262537.html

相关文章:

cocos2d-xna for win8源代码轻松移植cocos-xna for wp游戏

无意间看到杨哥弄了一个cocos2d-xna for win8出来可惜没有放出源代码&#xff0c;我试着要了一下结果他没理我&#xff0c;各种画圈圈。 那我只好自己弄一个了&#xff0c;源代码放出大家供交流学习使用&#xff0c;像杨哥说的一样就是一点小bug很容易该成把wp改成win8版的&…

Oct 2018

Tasks motion planning code in Autonomous DrivingUdacity RoboticsNDCoursera RoboticsMotion PlanningEstimationF1/10 racecarProject Overview 1. Mooc Udacity RoboticsND: project 3 Coursera Robotics Motion Planning HomeworkNote --> Post  2. Leetcode ☆☆ …

Springboot+mybatisplus搭建新闻管理系统

模块化实现&#xff0c;一周轻松搭建 前端 后端 项目源码及其教程回复已三连备注邮箱领取

SQL Server存储过程输入参数使用表值

在2008之前如果我们想要将表作为输入参数传递给SQL Server存储过程使比较困难的&#xff0c;可能需要很多的逻辑处理将这些表数据作为字符串或者XML传入。 在2008中提供了表值参数。使用表值参数&#xff0c;可以不必创建临时表或许多参数&#xff0c;即可向 Transact-SQL 语句…

ef core mysql 字符集,EF Core 基础知识

数据库连接字符串在 ASP.NET Core 添加配置片段&#xff1a;{"ConnectionStrings": {"BloggingDatabase": "Server(localdb)\\mssqllocaldb;DatabaseEFGetStarted.ConsoleApp.NewDb;Trusted_ConnectionTrue;"}}然后&#xff0c;配置对应的DbCont…

模板特化,全特化,偏特化,全部特化,部分特化的含义

模板特化&#xff0c;任何针对模板参数进一步进行条件限制设计的特化版本。《泛型思维》 全特化就是全部特化&#xff0c;即针对所有的模板参数进行特化。《c primer》偏特化就是部分特化&#xff0c;即针对部分模板参数进行特化。《c primer》全特化和偏特化的定义不是很严格&…

PHP中单例模式:三私一公是什么?

PHP中单例模式&#xff1a;三私一公是什么&#xff1f; 三私一公 私有化静态属性 私有化构造方法 私有化克隆方法 公有化静态方法 ​​​​ 转载于:https://www.cnblogs.com/phpisfirst/p/9792545.html

php 缓存模块,PHP缓存之模块缓存(APC)_PHP教程

PHP缓存之模块缓存(APC)APC是Alternative PHP Cache的简称&#xff0c;是 PHP 的一个免费公开的优化代码缓存。它用来提供免费&#xff0c;公开并且强健的架构来缓存和优化 PHP 的中间代码。1、PHP配置APC开启APC模块&#xff0c;需要将 extensionphp_apc.dll 前面的注释去掉即…

pta 考试座位

L1-005 考试座位号 (15 分) 每个 PAT 考生在参加考试时都会被分配两个座位号&#xff0c;一个是试机座位&#xff0c;一个是考试座位。正常情况下&#xff0c;考生在入场时先得到试机座位号码&#xff0c;入座进入试机状态后&#xff0c;系统会显示该考生的考试座位号码&#…

JSDoc那些事

几天工作上需要文档化一些Javascript东西&#xff0c;所以在找一些JS文档化工具&#xff0c;以下分析几种工具。 1.JSDoc-toolkit 一开始还想用这个工具&#xff0c;但后来在解析生成文档时候&#xff0c;出现了很严重的错误&#xff0c;还存在其他问题。 问题1&#xff1a;闭包…

WindowType 属性

WindowType 属性 指定一个表单集或表单在显示或用DO FORM来运行时的行为.在设计和运行时可供使用. Object.WindowType[ nType] 返回值 nType对于表单集&#xff0c;WindowType 属性的设置如下&#xff1a; 设置说明 0 无模式。 1 模式。其它表单(非该表单集中的)不能变为活动…

Excel VBA附合导线平差自动计算表

这是6,7年前做的一个excel vba自动计算附合导线平差的表格。 对于做测绘的朋友来说&#xff0c;附合导线平差是最基础的技能&#xff0c;目前来说&#xff0c;能平差的软件和工具也很多&#xff0c;像南方的平差易&#xff0c;科傻平差、清华三维平差等&#xff0c;但这些软件操…

结构体解决念数字问题

L1-007 念数字 (10 分) 输入一个整数&#xff0c;输出每个数字对应的拼音。当整数为负数时&#xff0c;先输出fu字。十个数字对应的拼音如下&#xff1a; 0: ling 1: yi 2: er 3: san 4: si 5: wu 6: liu 7: qi 8: ba 9: jiu输入格式&#xff1a; 输入在一行中给出一个整数&…

Eclipse NDK 配置,无需安装Cygwin

Eclipse NDK 配置&#xff0c;无需安装Cygwin Eclipse NDK 配置&#xff0c;不用安装Cygwin 文章转自http://www.cnblogs.com/chenjiajin/archive/2012/04/12/2444188.html一、关于NDK: NDK全称&#xff1a;Native Development Kit。 1、NDK是一系列工具的集合。 NDK提供了一系…

php裁剪图片白边,php生成缩略图填充白边(等比缩略图方案)

网站上传图片后生成缩略图应该是非常常用的功能了&#xff0c;通常来讲为了网站显示美观&#xff0c;缩略图会是同样尺寸&#xff0c;比如最近笔者做的一个站点&#xff0c;缩略图规格要求都是160120。但是如果上传的图片比例和缩略图不一致&#xff0c;直接缩放的话就会导致图…

PHP 平分数组

1 <?php2 /**3 *一个整数数组&#xff0c;长度为n&#xff0c;将其分为m 份&#xff0c;使各份的和相等&#xff0c;求m 的最大值4 *比如{3&#xff0c;2&#xff0c;4&#xff0c;3&#xff0c;6} 可以分成{3&#xff0c;2&#xff0c;4&#xff0c;3&#xf…

Shoot the Bullet(ZOJ3229)(有源汇上下界最大流)

描述 ensokyo is a world which exists quietly beside ours, separated by a mystical border. It is a utopia where humans and other beings such as fairies, youkai(phantoms), and gods live peacefully together. Shameimaru Aya is a crow tengu with the ability to …

深入理解jQuery插件开发【转】

如果你看到这篇文章&#xff0c;我确信你毫无疑问会认为jQuery是一个使用简便的库。jQuery可能使用起来很简单&#xff0c;但是它仍然有一些奇怪的地方&#xff0c;对它基本功能和概念不熟悉的人可能会难以掌握。但是不用担心&#xff0c;我下面已经把代码划分成小部分&#xf…

L1-008 求整数段和 (C++)

给定两个整数A和B&#xff0c;输出从A到B的所有整数以及这些数的和。 输入格式&#xff1a; 输入在一行中给出2个整数A和B&#xff0c;其中−100≤A≤B≤100&#xff0c;其间以空格分隔。 输出格式&#xff1a; 首先顺序输出从A到B的所有整数&#xff0c;每5个数字占一行&a…

matlab 迭代 混沌与分形实验报告,实验四 函数的迭代混沌与分形.doc

实验四 函数的迭代混沌与分形.doc 实验四函数的迭代、混沌与分形实验目的1认识函数的迭代&#xff1b;2了解混沌和分形迭代在数值计算中占有很重要的地位,了解和掌握它是很有必要的本实验将讨论用NEWTON迭代求方程根的问题,以及迭代本身一些有趣的现象1基本理论11迭代的概念给定…

小霸王双核/四核手机最新参数曝光

2019独角兽企业重金招聘Python工程师标准>>> 此前爆料出小霸王出手机&#xff0c;今天又有新消息啦。 现在又有消息人士给出了小霸王手机最新的参数情况&#xff0c;其厚度为9.8mm&#xff0c;配备的是4.5寸夏普IPS材质触摸屏&#xff0c;分辨率为960x540像素&#…

聊一聊跨域,Vue向Django请求数据的一些问题

1.做前后端分离 前端使用Vue程序&#xff0c;后端使用Django配合rest-framework。 那么前端Vue通过API接口拿到数据会出现跨域的问题&#xff0c;JSONP只是在get中会用到的&#xff0c;所以这里使用cors来解决一下。 一个Vue程序通过ajax或者axios发送一个请求过来&#xff0c;…

php配置控制器和视图位置,视图控制器

视图控制器视图控制器是连接控制器和模板的桥梁, 更是对模板的强大扩展基本用法视图控制器文件夹位于 app\web\views 目录下&#xff0c; 视图控制器的名称是和控制器的名称相对应的, 并在结尾加上View, Main控制器的默认的视图控制器类名为MainView&#xff0c;内容如下:names…

L1-016 查验身份证 (15 分)

一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。校验码的计算规则如下&#xff1a; 首先对前17位数字加权求和&#xff0c;权重分配为&#xff1a;{7&#xff0c;9&#xff0c;10&#xff0c;5&#xff0c;8&#xff0c;4&#xff0c;2&#xff0c;1&am…

中国互联网的十一种盈利模式

盈利模式一&#xff1a;在线广告 最主要最常见的网络在线盈利模式&#xff0c;国内比较好的是各大门户网站(新浪&#xff0c;搜狐等)&#xff0c;也包括行业门户&#xff0c;而且大多数个人网站的盈利模式也是这样&#xff0c;靠挂别人的广告生存。 新新兴的在线短视频网站…

grid布局初试

/*这是HTML*/<!DOCTYPE html> <html><head><meta charset"utf-8" /><title>main</title><link rel"stylesheet" href"css/header.css" /><link rel"stylesheet" href"css/aside.cs…

matlab文件启动位置,matlab中uigetfile()设置默认路径

每次使用uigetfile()函数选择文件路径&#xff0c;默认都是从current folder中选择数据文件&#xff0c;而current folder路径又不是数据文件&#xff0c;那么每次都需要选择径路好几步&#xff0c;繁琐的很。想通过设置current folder路径&#xff0c;使每次运行时uigetfile直…

thinkphp5框架一小时搭建一个php后端(1)

开发环境使用phpstudy 编辑器用sublime 数据库navicat 需要下载composer 先配置好本地域名&#xff0c;然后需要我们将资源引入到项目里面 下载地址www.layui.com. layui框架有很多我们后台开发需要的控件&#xff0c;帮助我们高效完成后台搭建。 先创建我们的入口文件ad…

usb调试模式已打开,adb devices显示List of devices attached 解决办法!纽维K333一键ROOT,获取ROOT权限!...

usb调试模式已打开&#xff0c;adb devices显示老显示List of devices attached 。刚开始以为USB线问题&#xff0c;跟朋友借了一根&#xff0c;未果。 更换其他的机子测试就可以显示设备&#xff0c;但是这部纽维K333 &#xff08;国产机/android 4.1.1&#xff09;却显示不出…

记录每个登陆用户的操作记录

在linux系统的环境下&#xff0c;不管是root用户还是其它的用户只有登陆系统后用进入操作我们都可以通过命令history来查看历史记录&#xff0c;可是假如一台服务器多人登陆&#xff0c;一天因为某人误操作了删除了重要的数据。这时候通过查看历史记录&#xff08;命令&#xf…