51Testing软件测试论坛

标题: 用file形式参数化多个参数的时候如何设置? [打印本页]

作者: haiyugg    时间: 2007-7-19 11:50
标题: 用file形式参数化多个参数的时候如何设置?
现在想用file形式进行参数化,一共需要两个参数,其一是登陆用户名,其二是登陆密码,
每个用户对应一个密码,现在想要把两个参数放在一个文件中,该如何设置能保证两个参数对应使用,
也就是说如下所示
[attach]29501[/attach]
第一列为用户名,第二列为密码(不同用户可能密码不同),
当大量用户使用的时候,需要两个参数对应起来。
该如何设置?最好详细说明!
作者: Zee    时间: 2007-7-19 11:55
这两个已经在一个参数文件里,你怎么设置取值,都是对应的呀。
作者: haiyugg    时间: 2007-7-19 12:39
那就是说直接将另外一个参数也设置成同一个参数名即可吗?
当有大量数据的时候,如何判断那个参数用的哪个值?
是否要每个变量都设置一下选择哪个列才行?

另外,如果两个变量用不同的参数的话。是不是只需要设置顺序读取,就可以保证对应着取值了?
就是说针对同一个虚拟用户,设置两个参数,设置顺序取值,这样的话当用户名取第一个的时候,密码也能取第一个?
作者: haiyugg    时间: 2007-7-19 13:13
另外再问个问题:使用file形式参数化以后,如果一个脚本中有多个相同的变量的时候,是否在一个虚拟用户的一次执行期间使用同一个参数呢?

也就是说,如果一个脚本中多次出现用户名,如果使用参数将其替换,是否在一次执行中,一个用户只使用一个变量。   假设用户名为ABC,那么在一个脚本里的多个用户名是否同时被替换成ABC了?(同一个用户,一次迭代中)
作者: qiguojie    时间: 2007-7-19 13:58
如果你设置了更新值是每次迭代,而不是每次出现。。那么就是唯一的。。
如果设置了每次出现,那么在同一个用户,一次迭代中,多个引用就是多个不同的值

另外,对于用户名和密码的一一对应。。你在设置完了用户名,然后设置密码时【选择下一行】时选择与user同行即可,应该是same line as user
作者: spartan    时间: 2007-7-20 09:20
原帖由 qiguojie 于 2007-7-19 13:58 发表
如果你设置了更新值是每次迭代,而不是每次出现。。那么就是唯一的。。
如果设置了每次出现,那么在同一个用户,一次迭代中,多个引用就是多个不同的值

另外,对于用户名和密码的一一对应。。你在设置完了用 ...


对的。qiguojie说的很正确!!!
假如你的代码是这样的:
             web_submit_form("reservations.pl",
                "Name=depart", "Value={depart_city}", ENDITEM,
                "Name=departDate", "Value=06/20/2007", ENDITEM,
                LAST);

        web_submit_form("reservations.pl_2",
                     "Name=depart", "Value={depart_city}", ENDITEM,
                "Name=reserveFlights.x", "Value=81", ENDITEM,
                LAST);
再假设参数列表中这个参数depart_city的值是:上海
                                                                北京
                                                                重庆
                      西安
                      合肥

这段代码中两个地方都用到了{depart_city}, 关于这个参数的调用是如何的呢?关键取决于你自己在参数列表中对于这个参数的设置。
假如你的设置是:
  A. update value on=each occurrence
      在第一个循环中,第一段代码web_submit_form("reservations.pl"....... depart_city="上海"
          第二段代码web_submit_form("reservations.pl_2".....depart_city="北京"

      在第二个循环中,第一段代码web_submit_form("reservations.pl"....... depart_city="重庆"
          第二段代码web_submit_form("reservations.pl_2".....depart_city="西安"
     
      在第三个循环中,第一段代码web_submit_form("reservations.pl"....... depart_city="合肥"
      ........................................................................
      如果参数不够用的时候,怎么办呢?那就看你参数列表中另外一个设置when out of value怎么设置呢? 这里先不谈。

  B. update value on=each iteration
      在第一个循环中,第一段代码web_submit_form("reservations.pl"....... depart_city="上海"
          第二段代码web_submit_form("reservations.pl_2".....depart_city="上海"

      在第二个循环中,第一段代码web_submit_form("reservations.pl"....... depart_city="北京"
          第二段代码web_submit_form("reservations.pl_2".....depart_city="北京"
     
      在第三个循环中,第一段代码web_submit_form("reservations.pl"....... depart_city="重庆"
      ..............................................................................

  C. update value on=once
      在第一个循环中,第一段代码web_submit_form("reservations.pl"....... depart_city="上海"
          第二段代码web_submit_form("reservations.pl_2".....depart_city="上海"

      在第二个循环中,第一段代码web_submit_form("reservations.pl"....... depart_city="上海"
          第二段代码web_submit_form("reservations.pl_2".....depart_city="上海"
     
      在第三个循环中,第一段代码web_submit_form("reservations.pl"....... depart_city="上海"
      ..............................................................................

不知道你清楚了吗?
作者: spartan    时间: 2007-7-20 09:38
原帖由 qiguojie 于 2007-7-19 13:58 发表
如果你设置了更新值是每次迭代,而不是每次出现。。那么就是唯一的。。
如果设置了每次出现,那么在同一个用户,一次迭代中,多个引用就是多个不同的值

另外,对于用户名和密码的一一对应。。你在设置完了用 ...



至于用户名称和密码的对应问题。 我完全支持qiguojie的说法。
你把login_id,login_pwd放在一个参数文件login_info中。  具体的值如下:
                                  login_id, login_pwd
                                                                                                         jojo        bean
                                                                                                         tom        belt
对于login_pwd在参数列表中的设置,请勾选:select next row=same line as login_id。详细请见附件描述。
按照附件中的设置的话,每次循环或者每次参数出现也好, login_id和login_pwd总是选择同一行的数据,即login_id=jojo时,login_pwd=bean.  login_id=tom时,login_pwd=belt;


附件一: lgoin_id设置方法 [attach]29564[/attach]
附件二:login_pwd设置方法[attach]29565[/attach]
作者: jiris    时间: 2007-7-20 09:59
好详细啊~~
。。
你的头像...sdlkfj8
作者: nienie    时间: 2007-7-20 16:11
spartan 是对的呀
而且他写的好详细哟!
试试吧,应该能行的。
作者: luoriddr    时间: 2007-11-5 21:19
好贴啊。说的很清楚。支持
作者: crystalpear    时间: 2007-11-30 14:31
明白意思了.
作者: aaabbbcccddd    时间: 2008-6-13 10:31
UP
作者: happylynn    时间: 2010-5-7 09:06
好帖永远都有人顶~
顶!顶!顶!
作者: 随风而动    时间: 2011-5-25 18:49
顶。。。。。。。。。。。。。。。。
作者: 757948562    时间: 2011-10-31 14:41
顶你。。。。。。。。。。。。。。。。。。
作者: p42    时间: 2011-10-31 15:04
学习了,,,好帖
作者: chenxihua00    时间: 2011-10-31 15:20
初学者的福音
作者: p42    时间: 2011-10-31 15:37
学习了,,,好帖
作者: qqwenbo1987    时间: 2011-11-24 12:25
顶 ,,,,好贴
作者: xiaozhi87097721    时间: 2012-3-9 22:47
学到了,好帖子。谢谢。




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