lanxn 发表于 2004-10-27 09:46:37

我想得到测试用例的路径,用函数getvar()怎么不可以呢?

语句:static test_Path = getvar("user_record");

提示:d:\b\Mercury Interactive\WinRunner\dat\user_record(6);
   getvar()-Unknown variable
   test_Path = getvar("user_record");

user_record 是程序的名称.

[ Last edited by lanxn on 2004-10-27 at 09:54 ]

生如火花 发表于 2004-10-27 10:19:00

In the following example, the values of the timeout and delay test options are set for the duration of a batch test run. After the run, the previous values are restored.


static old_t,old_d;

# Saves the original timeout values in the "old_t" variable.

old_t = getvar ("timeout");

# Saves the original delay values in the "old_d" variable.

old_d = getvar ("delay");

# Set the values of timeout and delay for a batch test.

setvar ("timeout", 30);
setvar ("delay", 3);
call batch();

# At the end of the test return the values.

setvar ("timeout", old_t);
setvar ("delay", old_d);

lanxn 发表于 2004-10-27 10:33:19

我看过这个例子了,它和我的不太一样.我想得到程序运行的路径用getvar()是否能实现呢,如果不能实现应该用什么函数?你在加载GUI Map文件的时候,写的路径是直接写d:\\b\\..吗?

生如火花 发表于 2004-10-27 10:38:47

Originally posted by lanxn at 2004-10-27 10:33 AM:
我看过这个例子了,它和我的不太一样.我想得到程序运行的路径用getvar()是否能实现呢,如果不能实现应该用什么函数?你在加载GUI Map文件的时候,写的路径是直接写d:\\b\\..吗?
示例:GUI_load("D:\\1\\test\\安装实体按钮.gui");

QA_BAY 发表于 2004-10-27 12:48:56

在WinRunner所用的TSL语言中,有一个运行应用程序的函数(invoke_application),其语法为:

   invoke_application(file,command_option,working_dir,show);
       
file: 应用程序的文件名(绝对路径);

command_option: 应用程序的参数;

working_dir: 应用程序的工作路径;

file: 应用程序的显示模式;;

更具体的内容可以在帮助“TSL Online Reference”的invoke_application主题。

我们可以通过在WinRunner测试脚本的开头加上以下语句,达到让脚本自动运行应用程序的效果:

        static app_name="C:\\XXXX\\wpsview.exe";
        if(invoke_application(app_name,"","",SW_SHOW)!=0) # 如果程序不存在则退出测试
        {
                report_msg("要测试的程序不存在,测试退出.");# 返回一个提示信息
                texit;
        }

生如火花 发表于 2004-10-27 13:06:02

static app_name="C:\\XXXX\\wpsview.exe";
      if(invoke_application(app_name,"","",SW_SHOW)!=0)
把这个改成
if(invoke_application("C:\\XXXX\\wpsview.exe“,"","",SW_SHOW)!=0)

lanxn 发表于 2004-10-27 13:14:33

多谢两位了
为什么要加if(invoke_application("C:\\XXXX\\wpsview.exe“,"","",SW_SHOW)!=0)这个判断呢? 一般的测试程序不是都存在的 吗?我觉得没有太大的用处. 我看帮助上说if(invoke_application()..)主要是判断调用window应用程序用的.

生如火花 发表于 2004-10-27 13:23:31

要测试的程序都不存在,当然要texit;(退出测试)

QA_BAY 发表于 2004-10-28 23:17:17

不是这样的,如果你把程序给删除了,或者拿到别的地方去了,就可以这样啦,他的用途有很多,只是加一个判断吧了!!!
页: [1]
查看完整版本: 我想得到测试用例的路径,用函数getvar()怎么不可以呢?