SilkTest 技術情報(FAQ)


データドリブン形式の.NETスクリプトを作成する

XLS、TXT、CSV形式で定義した外部ファイルをアクティブデータと呼びます。アクティブデータと関連付けた.NETスクリプトを作成することによって、データドリブン形式のテストを作成することができます。
データドリブン形式のテストでは、外部のデータを1行ずつ読み込みながら、同じ手順のテストを繰り返し実行させることができます。


キャプチャー直後の.NETスクリプト

Public Sub Main()
With _desktop.BrowserWindow("/BrowserApplication//BrowserWindow")
    .DomTextField("@id='txtFirstName'").SetText("太郎")
    .DomTextField("@id='txtLastName'").SetText("山田")
    .DomTextField("@id='txtPhoneNumber'").SetText("03-5121-3434")
    .DomButton("@id='btnAdd'").Select()
End With
End Sub

アクティブデータを使用するように修正した.NETスクリプト

作成されたアクティブデータを読み込むには、LoadActiveDataメソッドを使用します。
下記のスクリプトは上のスクリプトにアクティブデータの読み込みを加えて編集したものです。

Public Sub Main()
  AddAllToPhoneBook()			'Reads all records in order
End Sub

Public Sub AddAllToPhoneBook()
  Dim data As ActiveData = Workbench.LoadActiveData( "PhoneBookData" )
  Dim row As ActiveDataRow
		
  With _desktop.BrowserWindow("/BrowserApplication//BrowserWindow")

    For Each row In data

    Dim FirstName As String = row.GetString("fname")
    Dim LastName As String = row.GetString("lname")
    Dim PhoneNumber As String = row.GetString("phonenumber")

    .DomTextField("@id='txtFirstName'").SetText(FirstName)
    .DomTextField("@id='txtLastName'").SetText(LastName)
    .DomTextField("@id='txtPhoneNumber'").SetText(PhoneNumber)

    .DomButton("@id='btnAdd'").Select()
    Next
  End With
End Sub