Ranorex中怎樣使用User Code類型的Action

在Ranorex裏面建立一個recording module後, 如「Record1」,能夠添加不少action。其中一個action叫作「user code」。當Ranorex其餘一些action很差用的時候,好比從下拉框選擇,或者在table中選擇一個element,咱們能夠本身寫一些代碼,而後用這個action去調用。html

具體的使用方法是:web

1. 在這個Record1.UserCode.cs裏面,寫一個函數。編程

  
  
           
  
  
  1. public void Key_Sequence_SelectUser(string user) 
  2.   try { 
  3.     SelectTag someSelectTag="/dom[@path~'/fm/portal/app']//SELECT[#'login_select_user']"
  4.     OptionTag optTag=someSelectTag.FindSingle(".//OPTION[@innertext='"+ user +"']"); 
  5.     optTag.PerformClick(); 
  6.     optTag.Selected = true
  7.     Delay.Duration(500, false); 
  8.     WebDocument webDocument = "/dom[@path~'/fm/portal/app']";   
  9.                 webDocument.ExecuteScript("dropdown_update();"); 
  10.                 optTag.Selected = false
  11.                 Delay.Duration(500, false); 
  12.             } 
  13.             catch(Exception ex) { 
  14.                 Report.Info(ex.message); 
  15.             } 
  16.         } 

這段代碼是從下拉框中選擇user。app

2. 在Record1這個module中添加Action 「user code"dom

由於這個函數有一個參數,user, 在 user code 調用的時候,也要添加一個module級別的變量user.ide

3. 在test suite裏面,將module級別的變量user和外部的測試數據進行綁定。函數

說明:工具

Ranorex支持C#和VB.net,固然,這段示例代碼是C#,能夠很方便的使用代碼來完成Ranorex自己不能提供的,或者操做並很差的功能。能夠說,Ranorex裏面的action,均可以編寫成代碼來實現,但這樣,編程量比較大,沒有必要,因此,在這個測試工具裏面,只是對於Ranorex支持的不太好的地方,使用代碼來代替。測試

在寫代碼的時候,首先要將操做的element添加到repository裏面,仔細研究它的xpath。而後去google Ranorex 提供的類,聲明這個類型的對象,找到須要操做的element,而後調用這個對象的方法,實現對應的操做,好比click(),doubleclick()等等。ui

上面的這個例子,下拉框內容的update,是執行了Java Script。因此調用了webdocument.ExecuteScript()這個方法。這些都是仔細研究了根據頁面的html以後,寫出來的代碼。

相關文章
相關標籤/搜索