我是UFT的新手。我正在为网页中的表单创建测试。我需要参数化一个字段,但我没有看到任何方法来完成它,因为该字段是西班牙官方文件的身份,并且是一个与字母连接的eitht数字。
我有一个vbscript函数来计算该字符串,但我不知道如何在字段中插入。我曾试过环境,但我不知道如何运作。
功能如下。
Function numNie(ByVal dni)
Dim tabla,pos
tabla = Array("T","R","W","A","G","M","Y","F","P","D","X","B","N","J","Z","S","Q","V","H","L","C","K","E")
pos = dni mod 23
sacaLetra = tabla(pos)
numNie=dni & sacaLetra
End Function
答案 0 :(得分:2)
您只需将网络编辑字段的值设置为您的函数的返回值:
Browser("yourWebsite").Page("yourWebPage").WebEdit("yourWebField").set numNie(dni)
这当然假设您的函数已定义(在脚本内或与您的测试相关联的函数库中),并且网站,网页和字段都存在,并且对象存储库与测试
答案 1 :(得分:1)
听起来你正试图在网页上的某个字段中输入某些内容(函数的字符串返回值)......我想。如果那是你想要做的,那么我就是这样做的。
首先,我假设您已经在浏览器中显示了该网页。我希望你已经走得那么远了。 (我将组成一个示例浏览器和页面名称...)另外,我假设您想要输入此数据的字段是WebEdit控件,而您只是尝试在其中键入值。 / p>
如果所有这些都是正确的,那么你想要的方法是.Set来让UFT在webedit中输入一个值。您的操作中的代码如下所示:
DocumentNumber = numNie(dni) 'call your function to get the document number
Browser("Website").Page("Page to enter data").WebEdit("name of field").Set DocumentNumber ' type the document number into the webpage
或只是
Browser("Website").Page("Page to enter data").WebEdit("name of field").set numNie(dni)
可能接着是
Browser("Website").Page("Page to enter data").WebButton("Submit").click
请注意,“网站”,“输入数据的页面”,“字段名称”和“提交”是您的操作可以看到的对象存储库中的浏览器,页面,webedit和Web按钮对象的名称。显然,这些应该是测试对象的名称,但它们也可以是描述。
答案 2 :(得分:-1)
您可以使用Datatable进行参数化(我认为这是最佳方式)
在某个本地文件夹中创建Excel文件(例如:C:\Tests\InputData\Test1.xls
)
填写下面的表格值
Ex:
IterationID | dniValue
1 | 21
2 | 15
然后在脚本中使用脚本
Datatable.import(ExcelsheetPath) 'C:\Tests\InputData\Test1.xls
For i = 1 to Datatable.GetSheet(1).GetRowCount
Datatable.setcurrentrow(i)
dni= Datatable.value("dniValue", 1) 'get dnivalue
objwebpage.WebEdit("name of field").set numNie(dni)
Next
或者如果您想要随机dni
值,请使用random
函数,如下所示
Function random(v1,v2)
Randomize
random=(Int((v2 - v1 + 1)* Rnd + v1))
End Function
然后调用该函数生成randow dni
值
dni =random(1,23)
objwebpage.WebEdit("name of field").set numNie(dni)