suntu 发表于 2005-10-11 13:16:23

这次真的搞不懂了,大家帮帮忙吧!!

###取得一列中前三行的字段值并判断其范围
for(i=0;i<3;i++)
{
aaa=db_get_field_value("query1",i,"#0");
print("cell="&aaa);
if(aaa>=20050301&&aaa<=20050310)
   tl_step("cell",0,"cell is correct");
else
   tl_step("cell",1,"cell is incorrect");
}
为什么我写成
aaa=db_get_field_value("query1",“#0”,"#0");
print("cell="&aaa);
if(aaa>=20050301&&aaa<=20050310)
   tl_step("cell",0,"cell is correct");
else
   tl_step("cell",1,"cell is incorrect");
的时候运行就完全没有问题,可是写成循环的时候无法取得单个字段的值,所以下面的判断也无法进行。
是不是变量设置有什么问题?
我试了半天还是无法解决。。
请大家指点一下。。不胜感激!!

zhenhaiou 发表于 2005-10-11 13:42:56

for(i=0;i<3;i++)
{
a="#"&i
aaa=db_get_field_value("query1",a,"#0");
print("cell="&aaa);
if(aaa>=20050301&&aaa<=20050310)
   tl_step("cell",0,"cell is correct");
else
   tl_step("cell",1,"cell is incorrect");
}

suntu 发表于 2005-10-11 14:14:56

问题1:db_get_field_value ( session_name, row_index, column );
这个函数的参数说明里说row_index是行的数字索引,column是列名或列的数字索引,是不是指这两个参数都应该是地址,所以才需要把a="#"&i?
还有"#"是什么意思?
问题2:如果我想测试数据库中的存贮过程该怎么办。。我通常都是在plsql下直接对某功能点的存贮过程右键点击test打开来输入数据看结果的。如果用winrunner来做该怎么做?
多谢多谢!

zhenhaiou 发表于 2005-10-11 14:19:54

1、#i代表数据表中的第i行,wr中就是这么表示的,如果你不用#i而只用i他就认不出来
2、没看懂

aswoon911 发表于 2005-10-11 14:31:55

再仔细看看参数说明啦
db_get_field_value ( session_name, row_index, column );

session_name The logical name or description of the database session.

row_index        The index of the row written as a string: "# followed by the numeric index. (The first row is always numbered "#0".)

column         Either the name of the field in the column, or the index of the column within the database written as a string: "# followed by the numeric
index. (The first column is always numbered "#0".)

aswoon911 发表于 2005-10-11 14:34:06

关于第二个测试 scenario,最好能分解为具体测试需求便于理解

suntu 发表于 2005-10-11 15:00:02

呵呵,看的是中文版,上面没写。。看来还是英文原版的好啊,可惜英文太差,没敢看。
假设一个很简单的存储过程,定义了两个变量,一个字符型,一个整型。
写sql语句:
integer uit;
call p_winrunner_test('0',uit);
然后查看输出是不是预期值。。

suntu 发表于 2005-10-11 16:48:15

db_execute_query这个函数中的sql语句只能是一句吗?如果我想把这段sql语句嵌到此函数中,应该怎么写呢?

suntu 发表于 2005-10-11 16:50:07

就是上面那段
integer uit;
call p_winrunner_test('0',uit);
嵌到db_execute_query函数中该怎么写?
或者不通过这个函数winrunner可以执行这两条sql语句么?

suntu 发表于 2005-10-11 17:32:26

因为uit是一个输出参数,故我最后需要取到uit的值来与预期值进行比较。该怎么做呢?
页: [1]
查看完整版本: 这次真的搞不懂了,大家帮帮忙吧!!