51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2772|回复: 5
打印 上一主题 下一主题

[原创] 使用LR8.1的Microsoft.net协议录制c/s结果的程序

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2009-3-3 11:28:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
各位大侠,我在使用LR8.1中的Microsoft.net协议录制C/S结构的程序后,对登录用户名、登录用户对应的usernumber值分别进行参数化,当只参数化用户名时,lr的脚本能正常回放,但是一旦我参数化了usernumber时就出现报错:
Microsoft.net是v2.0的,请知道的多多指导,感激不尽!!!
Error: Failed to compile virtual user.
Notify: __________________________________________________
Notify: Project "E:\G\client\0303_1\Script.sln" (Build target(s)):
Notify:
Notify: __________________________________________________
Notify: Project "E:\G\client\0303_1\Script.sln" is building "E:\G\client\0303_1\Script.csproj" (default targets):
Notify:
Error: Action.cs(56,59): error CS1026: ) expected
Error: Action.cs(56,71): error CS1002: ; expected
Error: Action.cs(56,75): error CS1002: ; expected
Error: Action.cs(56,75): error CS1525: Invalid expression term ')'
Error: Action.cs(57,44): error CS1002: ; expected
Notify: Done building project "Script.csproj" -- FAILED.
Warning: Extension DotnetExtensionReplay.dll reports error -1 on call to function ExtPerProcessInitialize        [MsgId: MWAR-10485]
Error: Thread Context: Call to service of the driver failed, reason - thread context wasn't initialized on this thread.        [MsgId: MERR-10176 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2009-3-3 11:36:59 | 只看该作者

使用LR8.1的Microsoft.net协议录制c/s结果的程序

我的代码如下:

namespace Script {
    using LoadRunner;
    using Mercury.LoadRunner.DotNetProtocol.Replay;
    using System;
    using System.Collections.Generic;
    using System.Data;
    using System.Globalization;
    using YnTravelSky.RAMSystem.Entities.Order;
    using YnTravelSky.RAMSystem.Entities.Payment;
    using YnTravelSky.RAMSystem.Server.Booking;
    using YnTravelSky.RAMSystem.Server.EasyFare;
    using YnTravelSky.RAMSystem.Server.Framework;
    using YnTravelSky.RAMSystem.Server.Management;
   
   
    public partial class VuserClass {
        
        public virtual int Action() {

                        lr.log("Event 1: ((Crew)(Activator.GetObject(typeof(YnTravelSky.RAMSystem.Server.Manageme" +
                          "nt.Crew), \"tcp://192.17.25.2:8080/Crew\", null)));");
                        Crew_1 = ((Crew)(Activator.GetObject(typeof(YnTravelSky.RAMSystem.Server.Management.Crew), "tcp://192.17.25.2:8080/Crew", null)));

                        String url_1;
                        url_1 = "tcp://192.17.25.2:8080/PublicMethodForBasicData";
                        lr.log("Event 2: ((PublicMethodForBasicData)(Activator.GetObject(typeof(YnTravelSky.RAMSy" +
                          "stem.Server.Framework.PublicMethodForBasicData), url_1, null)));");
                        PublicMethodForBasicData_1 = ((PublicMethodForBasicData)(Activator.GetObject(typeof(YnTravelSky.RAMSystem.Server.Framework.PublicMethodForBasicData), url_1, null)));

                        lr.think_time(11);

                        lr.log("Event 3: Crew_1.StaffLogin(\" + lr.eval_string("{username}") + "\", \"123456\", \"HKG01\");");
                        StringArray_1 = Crew_1.StaffLogin("" + lr.eval_string("{username}") + " "", "123456", "HKG01");
                           红色部分是我的登录名=staff015

                        lr.log("Event 4: PublicMethodForBasicData_1.GetRouteRecnoByDefaultPort(\"HKG\");");
                        Int32RetVal = PublicMethodForBasicData_1.GetRouteRecnoByDefaultPort("HKG");

                        lr.log("Event 5: ((UserLogin)(Activator.GetObject(typeof(YnTravelSky.RAMSystem.Server.Fra" +
                          "mework.UserLogin), \"tcp://192.17.25.2:8080/UserLogin\", null)));");
                        UserLogin_1 = ((UserLogin)(Activator.GetObject(typeof(YnTravelSky.RAMSystem.Server.Framework.UserLogin), "tcp://192.17.25.2:8080/UserLogin", null)));

                        lr.log("Event 6: UserLogin_1.GetServiveDateTime();");
                        DateTimeRetVal = UserLogin_1.GetServiveDateTime();

                        lr.log("Event 7: UserLogin_1.GetControlRefundOrAmendForPrintTicket();");
                        BooleanRetVal = UserLogin_1.GetControlRefundOrAmendForPrintTicket();

                        lr.log("Event 8: UserLogin_1.GetUserPower(209);//这里的209就是staff015对应的usernumber
                        DataTable_1 = UserLogin_1.GetUserPower(209) ;//这里的209就是staff015对应的usernumber
                  ……
请大家不吝赐教,小女子感激不尽!!!!!

[ 本帖最后由 lsl20032 于 2009-3-3 12:47 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2009-3-4 08:43:36 | 只看该作者
呵呵,问题已经解决了!
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2010-4-22 08:47:04 | 只看该作者
怎么解决的?
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2010-4-22 08:51:14 | 只看该作者
直接参数化就行了吧,不用再去字符串
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2010-5-14 09:37:13 | 只看该作者

回复 1# 的帖子

录制C/S架构的系统不是用window sockets协议吗?楼主是在什么情况下选择了Microsoft.net协议??
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-9-20 21:31 , Processed in 0.080502 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表