51Testing软件测试论坛

标题: 如何获取服务器时间! [打印本页]

作者: devil_xxg    时间: 2008-1-24 11:37
标题: 如何获取服务器时间!
这是一个ERP系统 B/S架构,比如销售订单,销售订单上有单证号码、客户、单证创建日期、单证创建人等字段
浏览器端:,点击“新增”按钮就可以新增一个空白的销售订单,创建日期字段默认为web服务器时间。
我录制脚本的时候:脚本中:<EDT>2008-01-23T13:53:51.0000000+08:00</EDT>,这是关于创建日期这个字段的。
销售订单保存后,创建日期这个字段在数据库中显示为:2008-01-23 13:53:51.000。
问题是:我怎么样编辑脚本才能使“创建日期”这个字段每个VUser都能实时获取服务器时间
我的方法一
是:在新增销售订单之前,使用一个关联:
代码如下:
         web_reg_save_param("CreateDate",
                 "LB/IC=<EDT>",
                 "RB/IC=</EDT>",
                 "Ord=1",
                 "Search=Body",
                 "RelFrameId=1",
                 LAST);       

然后修改脚本<EDT>{CreateDate}</EDT>,这样并不能获取正确填写


方法二:不使用关联
直接进行参数化:CreateDate1:DateTime 类型、%Y-%m-%d %H:%M:%S.000 Format
然后修改脚本<EDT>{CreateDate1}</EDT>
这两种方法都不能得到结果
哪位达人指点迷津
作者: Zee    时间: 2008-1-24 11:59
在server response中是什么样的?
作者: devil_xxg    时间: 2008-1-24 12:16
标题: 回复 2# 的帖子
这是客户端发出新增单证时的请求语句
web_custom_request("Data.rtl_3",
                "URL=http://192.168.100.56/RTWebserver/Carrier/Data.rtl",
                "Method=POST",
                "Resource=0",
                "RecContentType=text/html",
                "Referer=http://192.168.100.56/RTWebserver/WUIPagesTemp/List_UdocItem_8da9f36bfb274f9a9ad2fe242602a216/SingleIndex.htm",
                "Snapshot=t73.inf",
                "Mode=HTML",
                "EncType=text/xml; charset=gb2312",
                "Body=<root><action>CreateNewData</action><funcId>8da9f36bfb274f9a9ad2fe242602a216</funcId><findModelStyle>ByID</findModelStyle></root>",
                LAST);
作者: devil_xxg    时间: 2008-1-24 12:25
获取系统时间的cs
using Common.Culture;
namespace ExpressionFunction
{
        /// <summary>
        /// 当前系统时间
        /// </summary>
        public class SystemDateTime : FunctionBase
        {
                public SystemDateTime() : base(string.Empty)
                {
                }
               
                protected override void SetCalculateValue()
                {
                        result.ResultValue.strValue = System.DateTime.Now.ToString("yyyy-MM-ddTHH:mm:ss");
                }

                public override string ToString()
                {
                        return Language.ExpreFunc_SystemDateTime;//"系统时间";
                }
        }
}
作者: zhufc    时间: 2008-1-24 13:36
标题: zhufc.cn 回答如下
方法二:如果获得的时间也是本地的时间,不是服务器的时间.

如果使用方法1,那就要在ERP程序中处理,将时间用包发过来!

我告诉你一个简单的办法:使用去取数据库的时间,直接访问数据库,使用时间函数(应用程序和数据库同机);
作者: devil_xxg    时间: 2008-1-24 14:12
标题: 回复 4# 的帖子
能否说得再明白一点,我怎么取数据库时间!怎么进行!大虾指点
作者: Zee    时间: 2008-1-24 14:22
我是说server response的格式,你可以直接关联下来,然后对字符串进行操作。
如果这个值是已知的,你直接做参数化应该也可以的。
作者: devil_xxg    时间: 2008-1-24 14:33
标题: 回复 7# 的帖子
这个时间时从服务器中进行取值,为web服务器的时间阿!
作者: superfang    时间: 2008-2-15 19:08
你感觉你可以这样: lr_save_string(lr_eval_string("{parea}"),"temp");
  <EDT>{temp}</EDT> 这样可以吧!?我试下了//
  
作者: devil_xxg    时间: 2008-3-25 18:54
用Zee的方法可以直接获得服务器时间,进行关联使用web_reg_save_gram()
作者: bossy    时间: 2008-3-26 10:34
原帖由 Zee 于 2008-1-24 14:22 发表
我是说server response的格式,你可以直接关联下来,然后对字符串进行操作。
如果这个值是已知的,你直接做参数化应该也可以的。

弱弱的问一下Zee,你说的Serrver response格式是什么意思?
作者: devil_xxg    时间: 2008-3-26 11:29
就是从服务器返回的值得方式




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2