2017-03-07 4 views
-1

C# 엔지니어링은 한 번 명령을 다시 입력하지 않고 명령을 단축 할 수 있다는 것을 보여주었습니다. 이제는 자동화를 코딩하는 중입니다.자주 사용하는 코드를 단축하는 방법 C#

예를 들어, 난과 같이 driverIWebDriver 할당 :

IWebDriver driver = new ChromeDriver(); 

그리고 지금은, 때마다 찾아 웹 페이지에서 일을 클릭 할 때 나는 다음과 같은 코드에 있습니다

driver.FindElement(By.XPath**("//input[@id='ctl00_ctl00_ctl00_Main_Main_Main_SearchTextBox']")).SendKeys(templateID); 
driver.FindElement(By.Id**("ctl00_ctl00_ctl00_Main_Main_Main_SearchButton")).Click(); 
driver.FindElement(By.Id**("ctl00_ctl00_ctl00_Main_Main_Main_rptCampaignTemplates_ctl00_gi_lnkGalleryRequest")).Click(); 

actionId("ctl00_ctl00_ctl00_Main_Main_Main_SearchButton")).Click(); 
,536 :

어떻게 더 쉽게 다음과 같이 입력 뭔가에 driver.FindElement(By.Id 단축에 대해 갈 수 있습니다 IWebDriver 유형 :

+0

코드 스 니펫을 찾으십니까? Visual Studio에서이 작업을 수행하는 방법은 다음과 같습니다. https://msdn.microsoft.com/en-us/library/ms165394.aspx 또는 모든 텍스트 상자에서 수행 할 작업을 원하면 "텍스트 확장"을 검색하여 찾을 수 있습니다 당신이 원하는 것을 할 몇 가지 앱. –

+2

문자열 상수 또는 3을 정의하십시오. –

+0

코드를 올바르게 포맷하십시오. 코드는 인용 된 텍스트가 아닙니다. 코드는 코드입니다. – dandan78

답변

2

당신은 당신의 자신의 확장 메서드 (Extension Methods (C# Programming Guide) 참조) : 선언 할 수

public IWebElement ActionId(this IWebDriver driver, string id) 
{ 
     return driver.FindElement(By.Id(id)) 
} 

당신은 다음과 같이 사용할 수 있습니다 :

const string searchButtonId = "ctl00_ctl00_ctl00_Main_Main_Main_SearchButton"; 
driver.ActionId(searchButtonId).Click(); 

저는 개인적으로 더 설명하는 이름을 선호하는 것 "ActionId"대신 "FindElementById"를 사용하십시오.

관련 문제