无法让Selenium IDE嵌套循环工作

问题描述 投票:1回答:1

我正在尝试使用Selenium IDE中的嵌套while循环创建一个非常简单的脚本,该脚本最终将用于打印矩阵中的所有元素。

我首先将两个变量'i'和'j'初始化为0,然后我开始第一个循环运行,而i <3,然后我开始另一个循环运行,而j <3在这个循环内,并在每个结束时递增每个循环。

打印的数字应该是; 0 0,0 1,0 2,0,11,1,1,2,2,2,2 2,2 2

但是我似乎只能完成一次内循环,所以我只得到:0 0,0 0,0 2

我正在使用的代码在这里;

<tr>
    <td>store</td>
    <td>0</td>
    <td>i</td>
</tr>
<tr>
    <td>store</td>
    <td>0</td>
    <td>j</td>
</tr>
<tr>
    <td>while</td>
    <td>${i} &lt; 3</td>
    <td></td>
</tr>
<tr>
    <td>while</td>
    <td>${j} &lt; 3</td>
    <td></td>
</tr>
<tr>
    <td>echo</td>
    <td>${i} ${j}</td>
    <td></td>
</tr>
<tr>
    <td>storeEval</td>
    <td>new Number(storedVars['j'])+1</td>
    <td>j</td>
</tr>
<tr>
    <td>endWhile</td>
    <td></td>
    <td></td>
</tr>
<tr>
    <td>storeEval</td>
    <td>new Number(storedVars['i'])+1</td>
    <td>i</td>
</tr>
<tr>
    <td>endWhile</td>
    <td></td>
    <td></td>
</tr>

有谁知道如何解决这个问题或有解决方法?我假设问题来自于在循环结束时丢失变量但是我不确定,这在C中会如此简单!

谢谢,J

selenium while-loop selenium-ide
1个回答
0
投票

您可以使用嵌套的gotoIf / label尝试解决方法

"Command": "label",
"Target": "Loop1",

(increase count1)
   
	"Command": "label",
	"Target": "Loop2",
	
		"Command": "echo",
		"Target": " ${count1}, ${count2}",
		 
		(increase count2) 
	"Command": "gotoIf",
	"Target": "${count2} < 3",
	"Value": "Loop2"  
	
(reset count2) 
	
"Command": "gotoIf",
"Target": "${count1} < 4",
"Value": "Loop1" 
© www.soinside.com 2019 - 2024. All rights reserved.