我的Groovy Script
测试步骤名为Copying_Bulk_File_To_BulkPayment_Folder
。
def rawRequest = context.expand('${SOAP#request}')
def file1 = new File('C:/Actimize/4.23.0.30/Instances/actimize_server_1/QA/BulkPayment/NACHA/Input/RegularNachaPPD.ACH')
file1.write (rawRequest)
之后我还有其他一些应该调用10次的groovy,但它没有按预期进行,下面是相应的代码。
if( context.loopIndex2 == null )
context.loopIndex2 = 0
if( ++context.loopIndex2 < 10 )
testRunner.gotoStepByName( "Copying_Bulk_File_To_BulkPayment_Folder" )
答案 0 :(得分:1)
我确实有类似的经历。 gotoStepByName
似乎无法正常工作或无法正确使用它。
为了让它发挥作用,请进行以下更改。
发件人:强>
testRunner.gotoStepByName("Copying_Bulk_File_To_BulkPayment_Folder")
要强>
testRunner.runTestStepByName('Copying_Bulk_File_To_BulkPayment_Folder')
编辑:OP提到他仍然有问题而没有提供详细信息。添加另一种方法来运行测试步骤。
或尝试使用以下代码而不是gotoStepByName
语句。
def step = context.testCase.testSteps['Copying_Bulk_File_To_BulkPayment_Folder']
step.run(testRunner, context)
答案 1 :(得分:0)
您的脚本中有3个问题。
1)gotoStepByName, 将其更改为runTestStepByName
2)if(++ context.loopIndex2&lt; 10) 因为你想要一个循环更好地使用for循环而不是if条件
for(int i=0; i< 10 ; i++ )
3)文件名一直是相同的,即RegularNachaPPD.ACH,即使你复制1000次也不会看到这个,因为文件名是相同的,所以你应该带一个逻辑,每次都是文件的名称是不同的
int ok= (new Random().nextInt(100000))
print ok
def FileName='C:/Actimize/4.23.0.30/Instances/actimize_server_1/QA/BulkPayment/NACHA/Input/RegularNachaPPD_' + ok + '.ACH'
以下是我使用的代码,我能够创建10个文件
TestStepName : - 测试
if( context.loopIndex2 == null )
context.loopIndex2 = 0
for(int i=0; i< 10 ; i++ )
{
testRunner.runTestStepByName( "Copying_Bulk_File_To_BulkPayment_Folder" )
}
TestStepName : - Copying_Bulk_File_To_BulkPayment_Folder
int ok= (new Random().nextInt(100000))
print ok
def FileName='C:/Actimize/4.23.0.30/Instances/actimize_server_1/QA/BulkPayment/NACHA/Input/RegularNachaPPD_' + ok + '.ACH'
def rawRequest = context.expand('${First Step#request}')
def file1 = new File(FileName)
file1.write (rawRequest)
其中SOAP是另一个测试步骤的名称。
上述逻辑创建一个随机数,该数字附加在名称RegularNachaPPD
中希望它有所帮助。我能够用上面的代码创建10个文件