Selenium IDE 扩展函数: 日期计算与表现

简介:
 用 Selenium IDE做网页的 功能测试经常会碰到与日期有关的验证,本人结合实际 工作中遇到的应用,写了一个扩展,代码如下:
Selenium.prototype.doStoreDateByFormat = function(format,args){
// format of args: month,day,year
if(args.trim().length < 3)
throw new SeleniumError("arguments must contain ""Month"",""Date"",""Year"" variables!");
var formats = format.split(",");
var days = parseInt(formats[3]);
var sysDate = getSysDate(); //get the sysdate
var specDate = dateAfterDays(sysDate,parseFloat(days),1); //get specified date
var arrArgs = args.split(",");
var month = specDate.getMonth()+1;
var date = specDate.getDate();
var year = specDate.getFullYear();
// get Month string
switch(formats[0].toUpperCase()){
case "MM": // return 2 digits of month number, such as: 01
month = (month+"").length==1?"0"+month:month;
break;
case "MMM": //return the first 3 chars of the month word, such as: Jan
month = this.getMonthShortName(month);
break;
case "MMMM": //return the full word of the month word, such as: January
month = this.getMonthFullName(month);
break;
case "M":
default:
// return 1 digit when month is lower than 10.
// do nothing
}
//get Date string
switch(formats[1].toUpperCase()){
case "DD": //always return 2 digits of the month number, such as: 05
date = (date+"").length==1?"0"+date:date;
break;
case "D":
default:
// return 1 digit when Date is lower than 10.
// do nothing
}
//get Year string
switch(formats[2].toUpperCase()){
case "YY": // return last 2 digits of the year number, such as: 08 (2008)
year = (year+"").substr(2);
break;
case "YYYY":
default:
//return full year number, such: 2008.
}
storedVars[arrArgs[0]] = month;
storedVars[arrArgs[1]] = date;
storedVars[arrArgs[2]] = year;
}
Selenium.prototype.getMonthFullName = function(month){
var monthArr = new Array("January","February","March","April","May","June","July","August","September","October","November","December");
if(month == null){
throw new SeleniumError("you didn't specify a Month");
}
try{
month = parseInt(month);
}catch (e){
throw new SeleniumError("""Month"" is not a Integer!");
}
return monthArr[month-1];
}
/* return the date N days(N*24 hours) before/after some day.
* args   :   num - positive/negative integer/float number,default is "1";
*            type - 0 (second) or 1 (day), default is second.
* return :   Date
*/
function dateAfterDays(date, num, type){
date = (date == null?new Date():date);
num = (num == null?1:num);
if(typeof(num)!="number")
throw new SeleniumError("dateAfterDays(date, num, type),""num"" argument must be Number type.");
if(typeof(date)!="object")
throw new SeleniumError("dateAfterDays(date, num, type),""date"" argument must be Date type.");
var iType = (type == null?0:type);
var arr = [1000,86400000];
var dd = date.valueOf();
dd += num * arr[iType];
var d=new Date(dd);
return d;
}
function getSysDate(){
return new Date();
}
  使用方法如下,详见以上代码

01    


最新内容请见作者的GitHub页:http://qaseven.github.io/
   
目录
相关文章
|
6月前
|
IDE 开发工具
微信IDE开发过程,提示上传云函数 lbs_server 失败
微信IDE开发过程,提示上传云函数 lbs_server 失败
微信IDE开发过程,提示上传云函数 lbs_server 失败
|
Web App开发 自然语言处理 IDE
自动化测试之 selenium 的安装以及 selenium IDE 录制自动化脚本的用法
1. 什么是自动化测试 1)单元测试 2)接口自动化 3)UI 自动化 2. Selenium 介绍 1)Selenium IDE 2)Webdriver 3)Selenium Grid 3. 如何使用 Selenium IDE 录制脚本 4. 在 python 环境中安装 Selenium 框架
777 0
selenium 4.0学习(二)常用定位和函数方法
selenium 4.0学习(二)常用定位和函数方法
selenium 4.0学习(二)常用定位和函数方法
|
IDE Java 测试技术
记一次java命令执行IDE中java类的入口函数的坑
熟悉java的同学都知道,我们可以直接通过`java命令`执行Java类的`入口函数`,执行时还可以携带参数,参数是以`字符串数组`的形式传递给main入口函数的。 不过现在已经很少使用这种方式执行java代码了,都是通过IDE来执行。
|
IDE 程序员 编译器
VS2019正确创建C++步骤以及扩展插件美化你的VS2019的IDE开发环境
VS2019正确创建C++步骤以及扩展插件美化你的VS2019的IDE开发环境
VS2019正确创建C++步骤以及扩展插件美化你的VS2019的IDE开发环境
|
Web App开发 存储 IDE
5分钟学会制作自动化脚本——自动化脚本辅助开发IDE——Selenium IDE介绍(测试工程师必备)
本文介绍了自动化测试的辅助工具,Selenium IDE的基本使用,有助于自动化工程师辅助编辑自动化脚本,初步建立简单自动化脚本。
433 0
5分钟学会制作自动化脚本——自动化脚本辅助开发IDE——Selenium IDE介绍(测试工程师必备)
|
IDE 开发工具 C语言
RISC-V MCU IDE MRS(MounRiver Studio)开发之: 设置函数的优化等级
在嵌入式开发过程中,有时为了调试代码,我们需要对单个函数或多个函数设置单独的优化等级.
RISC-V MCU IDE MRS(MounRiver Studio)开发之: 设置函数的优化等级
|
Web App开发 JavaScript 前端开发
Chrome 扩展推荐:让你的 Chrome 变成 Python IDE
这是一款运行在Chrome上的 python shell ,可以让您不必安装python环境,即可运行python脚本。当然也不仅限于Python,这个二十几兆的扩展还支持Ruby,JavaScript等。
499 0
Chrome 扩展推荐:让你的 Chrome 变成 Python IDE
|
IDE 前端开发 JavaScript
KAITIAN IDE 是如何构建扩展能力极强的插件体系的?
本文简要阐述了 VS Code 插件模型,从实际场景出发在这套体系之上初步构建出开天特有的插件扩展能力。
KAITIAN IDE 是如何构建扩展能力极强的插件体系的?
|
Web App开发 IDE 测试技术
[python作业AI毕业设计博客]比Selenium IDE更好用的录制工具: Katalon Recorder
Selenium IDE(集成开发环境 Integrated Development Environment)是用于构建测试脚本的原型工具。 它是一个Firefox插件,提供了易于使用的界面,用于开发自动化测试。
下一篇
无影云桌面