2014-04-07 5 views
0

매우 기본적인 코딩 된 UI 테스트가 무엇인지에 대한 개념 증명을 실행하는 중입니다.코딩 된 UI 테스트가 내 컨트롤을 올바르게 찾지 못했습니다.

내 응용 프로그램은 Winforms이고 응용 프로그램에 로그인 할 수있는 양식이 있습니다.

여기에 각각 _textUsername 및 _textPassword라는 2 개의 컨트롤이 있습니다.

모든 것을 단순화하기 위해 재생시 사용자 이름 텍스트 필드 (_textUsername)를 두 번 클릭 할 수있게하려고합니다.

그러나 재생 중에 _textPassword가 선택됩니다.

컨트롤 이름을 포함하도록 검색 조건을 조정하려고했지만 컨트롤을 찾지 못하고 실패합니다.

내 질문에 간단합니다 : 내 양식에 _textUsername 및 _textPassword, UI 코딩 된 테스트를 항상 _textPassword 찾을 것, 내 양식에 2 개의 컨트롤이 있습니다. 대신 어떻게 다른 텍스트 상자를 찾을 수 있습니까?

답변

0

이것은 DevExpress에서 클라이언트 응용 프로그램과 테스트 러너 코드 사이의 잘못된 버전으로 밝혀졌습니다.

2

컨트롤을 수동으로 코딩 해보십시오. UI 테스트 빌더를 사용하여 검색 속성을 찾을 수 있습니다. inspect.exe도 유용합니다. 때로는 속성이 예상 한 것과 다를 수 있습니다.

  // Controls 
     WinWindow logonWindow = new WinWindow(); 
     WinEdit _textPassword = new WinEdit(logonWindow); 
     WinEdit _textUsername = new WinEdit(logonWindow); 

     // Add search properties and configurations 
     logonWindow.SearchProperties[WinWindow.PropertyNames.Name] = "Main Window Name"; 
     logonWindow.SearchConfigurations.Add(SearchConfiguration.AlwaysSearch); 

     _textPassword.SearchProperties[WinEdit.PropertyNames.Name] = "Password"; 
     _textPassword.SearchConfigurations.Add(SearchConfiguration.AlwaysSearch); 

     _textUsername.SearchProperties[WinEdit.PropertyNames.Name] = "Username"; 
     _textUsername.SearchConfigurations.Add(SearchConfiguration.AlwaysSearch); 

     // Identify each control 
     logonWindow.DrawHighlight(); 
     _textPassword.DrawHighlight(); 
     _textUsername.DrawHighlight(); 
관련 문제