可我不爱喝茶~~~

发布新日志

  • VISTA下安装Lr 9.5的记录

    2009-04-03 15:23:26

     

    1,为了方便做有关软件的配置测试,一狠心就没有把预装的VISTA的操作系统格式化掉,还有一点,我个人比较喜欢vista操作系统,界面很美观,易用性相比XPWIN 2003先进了不少。界面虽然美观了,但是由于各种工具的兼容性,很难正常安装在vista上。我常用的loadrunner就是个例子。下面就是vista下安装loadrunner的记录。

     

    为了能在vista下安装loadrunner,我下载了最新破解的loadrunner9.5

    具体步骤如下:

    1)正常安装所下载的ISO文件,这一切都和其他软件相同。正常安装完毕之后。

    2)安装完成后,破解的时候出了问题。

    具体的破解方法参见lr9.0的破解。删除注册表信息,和覆盖2个关键文件。在删除注册表信息有2种方法,一种是手工删除原有lisence注册表信息,一种是通过别人写好的一个小工具来删除.我个人推崇第一种手动删除,不光删除了信息,还知道了lr具体的注册信息在什么地方存储。另外,对于工具删除 ,毕竟不知道别人写的程序具体实现了什么?会不会挂马等?(请允许我这么小器的猜度,做测试做久了就会有这个职业病阿!)

    3)删除完成后,导入lr的通用序列号,报错:“无效的序列号”,什么原因:返过头去看,发现没有完全删除掉注册表的信息。于是再次删除余孽。

    4)删完后,再次输入lr序列号,还是报错:“不能写入”。什么原因?说实话不知道。。。这个问题折腾了我很久。又对新装的vista操作系统不熟悉,怎么办呢? 在网上搜索无果的情况下,咱只有自己尝试。

    却始终提示的是不能写入。排除了进程占用的情况 ,再次审度一遍。实在没有办法,那咱就重新启动吧!

    5)全部都启动起来了,可还是提示 “不能写入”,有点想疯了,还有想换操作系统的冲动。。。冲动是魔鬼啊,一点都要不得。接下来又做了一大堆的事情检查注册信息,查看安装好的一干文件信息。

    6)转念一想,是不是去自己的用户的权限不足?进入用户帐号:赫然写着“管理员”、到底在什么地方?等等,在更改用户帐户的下方怎么比原来的XP模式下多了一个功能:打开或关闭“用户帐号控制”?这是什么点开看看。原来是对未经授权的操作进行保护 ,会不会是这个原因?先试试在说。去掉了UAC用户帐户控制后,系统要求重启。那么就重启呗。

    • 7)再次重新启动后,打开lr,输入序列号。点确定。。。wow thanks  God.成功了!满心欢喜的看着里面的信息写着10000用户的信息。开心的很。试着用了一个百度的脚本运行,调试,设置场景,到测试,一切OK.开心啊!终于搞定了一个。。。。整个安装折腾了我将近3个小时的时间。唉!最后一般124车都都没有了,只能打车回家了。
    • 8)由于关闭了UAC,所以在任务栏右下角多出来一个带大红叉的盾牌。我觉得很难看,打开看,发现是UAC关闭的缘故,所以我毫不犹豫的就把它又打开了。然后就关机回家。

    9)等到第二天,忽悠另外一个同事在vista下装lr9.5的时候,发现我自己的lisence信息神秘的失踪了?难道昨晚我做了个梦吗?不可能。重新导入,发现还是提示“不能写入”。哦,原来是UAC打开的缘故。再次将UAC关闭掉。呵呵,我的LRLISENCE信息又出现了。。。脚本运行,调试,设置场景,到测试.OK.这才是最终版的OK。。。。汗。。。但还是遇到一个问题,相同的VISTA 操作系统,在另外一个同事的机器上使用相同的方法,但没有破解成功,提示提示无效的序列号。。。。不知何故。。等有时间查查吧!

    今天就记录到这里吧!

  • 【20080911】 lr函数3

    2008-12-10 20:00:30

     
    【20080911】


    1.lr_exit()

    void lr_exit (int continuation_option, int exit_status);

    Example

    vuser_init() {
         int status = ftp_logon("FTP", "URL=ftp://user:pwd@ftp.merc-int.com",                "LocalAddr=ca_server:21", "ClientCert=/ca/pem/",
                   "ClientKey=/ca/pem/key/", "ClientPassword=@3#$8800cvd",
                   "CertificateAuthority=/ca/", "SSLVersion=SSL2", LAST);
         if (status == LR_FAIL) {
              lr_error_message ("ftp login failed");
              lr_exit(LR_EXIT_VUSER, LR_FAIL);
         }
         return(0);
    }
    This function does not return a value.


    2.
    char *lr_get_vuser_ip();
    The lr_get_vuser_ip function returns the IP address of a Vuser. When performing IP spoofing, each Vuser can use a different address. This function allows you to determine the current Vuser's IP address.
    char *ip;
    ip = lr_get_vuser_ip();
    if (ip)
         lr_output_message("The IP address is %s", ip);
    else
         lr_output_message("IP spoofing disabled");
    NOTE: 在CONTROLLER中才可以运行此函数操作,在编译环境下运行不会得到结果。
     
     
     
    【20080912】

    1、int lr_next_row ( const char *dat_file );

    return: if right return the value of specifiyed string
    else return “error”;

    Function:

    Advances to the next row in the parameter data file.

    example:
    int len;
    lr_message("%s=HARRIC",lr_eval_string("{ID}"));
    lr_next_row("ID.dat");
    lr_message("Next ROW DATA IS:%s",lr_eval_string("{ID}"));
    len=lr_paramarr_len("ID");
    lr_message("%d",len);
  • 【08-09-10 lr的存储参数的方法】

    2008-12-10 19:59:40

    因为存储的比较零乱,所以我的记录也很无序!一会儿是这方面的一会儿是另一方面的。呵呵!海涵!
    【08-09-10 lr的存储参数的方法】

    1、存日期
    void lr_save_datetime("Tomorrow is %y-%b-%d ", DATE_NOW+ONE_DAY, "next");
    //TO ADD ONE_MONTH OR ONE_YEAR;
    //TO CHANGE THE format of “%y-%B-%d”FREELY;

    2、存整型
    int lr_save_int ( int value, const char *param_name)
    function:
    The lr_save_int function converts an integer to a string and saves the string in a parameter. If the parameter does not exist, it is created.
    example:
    int num;
    num = 7;
    lr_save_int (num * 4, "harricAge");
    The value of param1 is now "10".
    NOTE:
    converts an integer to a string and saves the string in a parameter
    RETURN: 0-SUCCESS,1-FAIL


    3,存字符串
    int lr_save_string (const char *param_value, const char *param_name);
    RETURN: 0-SUCCESS,1-FAIL

    4,存变量
    int lr_save_var (const char *param_value, unsigned long const value_len, unsigned long const options, const char *param_name);

    5,取参数
    char *lr_eval_string (const char *instring );

    Example:
    Action(){
    #define MAX_LEN 6

    lr_save_string("HarricWang","NAME");

    lr_save_var(lr_eval_string("{NAME}"),MAX_LEN,0,"FIRSTNAME");

    lr_error_message("First name is %s",lr_eval_string("{FIRSTNAME}"));
    }
    Note:
    1,the 3rd parameters of lr_save_var() must be 0;

    我是长胖了,还是衣服变瘦了,还真是个问题!
  • loadrunner学习笔记---与公司的技术论坛同步更新

    2008-12-10 19:58:39

     
    之前,一直在做一些loaderrunner函数的学习,主要是因为时间的缘故,没有好好的整理,现在将一部分整理好的贴上来和大家共同学习下!
    为了练习En,所以偶尔有用E文做注解的习惯,希望大家能谅解,如果实在看不惯,就叫我假洋鬼子好了!

    【080905】
    1,lr_abort(); same function as the phrase "break" in C language;
    2,lr_output_message(); same as 'printf' in C language; write the message on the log, the message is black;
    3,lr_error_message(); same as "system.err.println" in java languae.after run the scrīpt having this function , you will see red message on the log;
    4,lr_save_string(); asign string to parameters

    Remmeber:
    TWO VAR IN LOADRUNNER scrīpt:
    LR_PASS means 0;
    LR_FAIL means 1;
    【08-09-06 LR处理XML】

    1、Lr_xml_extract();

    char * xml_input = // defined a char pointor;
    "<acme_org>"
    " <accounts_dept>"
    "<employee>"
    " <name>John Smith</name>"
    "<cubicle>227</cubicle>"
    "<extension>2145</extension>"
    "</employee>"
    "</accounts_dept>"
    "<engineering_dept>"
    "<employee level=\"manager\">"
    "<name>Sue Jones</name>"
    "<extension>2375</extension>"
    "</employee>"
    "</engineering_dept>"
    "</acme_org>";

    lr_save_string (xml_input,"xmlput");

    lr_xml_extract("XML={xmlput}",
    "XMLFragmentParam=Result1",
    "Query=/acme_org/accounts_dept/employee",LAST);
    lr_output_message(lr_eval_string("Extracted:{Result1}"));

    note: To store the value of XML String to parameter Result1;
  • 尝试翻译 Effective software test

    2007-03-15 09:44:49

    Effective software test

     

    Chapter 1. Requirements Phase

    The most effective testing programs start at the beginning of a project, long before

    any program code has been written. The requirements documentation is verified

    first; then, in the later stages of the project, testing can concentrate on ensuring the

    quality of the application code. Expensive reworking is minimized by eliminating

    requirements-related defects early in the project's life, prior to detailed design or

    coding work.

     

    The requirements specifications for a software application or system must

    ultimately describe its functionality in great detail. One of the most challenging

    aspects of requirements development is communicating with the people who are

    supplying the requirements. Each requirement should be stated precisely and

    clearly, so it can be understood in the same way by everyone who reads it.

     

    If there is a consistent way of documenting requirements, it is possible for the

    stakeholders responsible for requirements gathering to effectively participate in the

    requirements process.As soon as a requirement is made visible, it can be tested

    and clarified by asking the stakeholders detailed questions. A variety of

    requirement tests can be applied to ensure that each requirement is relevant, and

    that everyone has the same understanding of its meaning.

     

     

    [翻译如下]

     

    有效软件测试

    第一章  需求术语

    最有效的软件测试应该在项目的初期启动,在程序代码开始编写之前应该被完成。需求文档应当首先被确认;接着在以后的项目阶段中,测试能够集中保证在应用程序代码的质量上。在项目生命周期的早期,在详细设计和代码工作之前,通过消除与需求相关的缺陷可以最小化代价昂贵的代码重写工作

    一个应用软件或者系统的需求说明书必须详尽的描述软件最终的功能特性。一个最具挑战性的需求开发方面就是保持与需求提供者的交流。每一条需求应该陈述精准和清晰,如此才可以让任何读它的人能够明白。

    如果有一种一致的需求编写方法的话,将负责需求收集的利益关系人(甲方)有效的参与到需求的进程中来是可行的。一旦需求变得可见,它就可以被用来测试和通过询问利益关系人(甲方)被询问的详尽问题来澄清。对需求的多样性测试可以被用来确保每一个相关的需求,并且却确保每一个人对同一个需求有相同的理解。

     

     

    遇到的生词:

    Consistentadj.

    一致的, 调和的, 坚固的, [数、统]相容的

    Stakeholdern.

    赌金保管者 

     

    PS:什么东西不用,就会忘记。磕磕碰碰的翻译完一点点,发现好多不通的地方,都不好意思贴上来,不如去买本汉语的来看了.

     

  • LOGO TEST

    2007-01-04 11:49:18

    1.

    ITL(independent test lab)测试主要测试硬件装置与微软window mobile的兼容性,测试比较简单,但一定要细心。
    测试的案例都在LTK工具里,包括CETK是自动测试程序,都是免费的,微软网上应该有的。
    可以说每个案例都是重点,因为一个不过就得不到微软的LOGO,就没办法上市。


     

Open Toolbar