2016-11-29 4 views
4

CodedUI & C#을 처음 사용합니다.코드화 된 UI - Wpfbrowser에서 HTML 컨트롤을 식별 할 수 없습니다.

WPF 브라우저가있는 wpf 응용 프로그램을 자동화하려고합니다. 기본적으로, 내부에 html 콘텐츠가 포함 된 WPF 컨테이너입니다. 유사한 샘플 작은 응용 프로그램을 만들어 여기에서 공유했습니다. 이 응용 프로그램은 wpfwindow 내의 amazon.in 웹 사이트를 엽니 다.

WPF Browser application

내 문제는 코딩 UI는 HTML을 제어합니다 '버튼'제대로 '텍스트 입력 필드'와 같은/요소를 식별 할 수 없습니다.

아래의 그림은 WPF 브라우저 앱 [내가 공유 한 링크]의 이미지입니다. 왼쪽 상단에 파란색 사각형 상자가 있습니다. 코딩 된 UI는 해당 영역에 검색 이동 버튼이 있음을 나타냅니다.

이미지의 맨 아래 부분은 IE 브라우저에서 amazon 웹 사이트의 코드화 된 UI가 올바르게 검색/검색 이동 버튼을 식별하는 곳입니다.

코드화 된 UI를 사용하여 WPFBrowser 앱을 자동화 할 수 없다는 뜻입니까?

사람이 코딩 UI에서 제대로 버튼을 식별하기 위해 무엇을 알려 주시기 바랍니다 수

당신은 이드 당신이 코딩 된 UI에 노출하려는 컨트롤 속성을 지정해야합니다 enter image description here

+0

공유 한 스크린 샷에서 추측하면 렌더링의 너비가 다른 것처럼 보입니다. 기본적으로 브라우저가 어떻게 표시할지 선택하는 방식에 따라 다릅니다. 머리글이 아래의 Image 배너 너비와 일치하도록 WPF 컨트롤 너비를 수동으로 줄이십시오. 그냥 추측, 그 이유는 확실하지 않습니다. 다른 한편, 테스트를 실행할 때 문제가 있습니까? –

+0

@PrageethSaravanan, 예 스크립트를 실행하는 중에도 동일한 문제가 있습니다. WPF 제어 폭을 줄이려면 응용 프로그램 소스 코드에서해야합니다. – user2048204

+0

당신은 여러 가지 방법으로 그것을 할 수 있습니다. 컨트롤 속성을 업데이트하는 인스턴스 (레이아웃 그룹 아래에서 찾을 수 있습니다.) http://stackoverflow.com/questions/21170316/resize-dialog-webbrowser-to-webpage-width .. 또한 일반적으로 이해합니다 WinForms 버전의 웹 브라우저 컨트롤은 WPF 웹 브라우저 컨트롤보다 더 많은 속성을 제공합니다.당신도 그것을 시도 할 수 있습니다 –

답변

1

.

+0

ID attirbute ID가 있지만 여전히 동일한 문제가 발생합니다. 게다가, 코드화 된 사용자 인터페이스는 컨트롤이 존재하는 장소를 정확하게 식별하지 못합니다. – user2048204

1

나에게 이것은 CodedUI가 컨트롤이 올바른 것보다는 비슷해 보이는 것 같습니다.

테스트를 기록하고 실행하거나 별도의 CodedUI 솔루션에서 필기를 사용하는 경우 언급하지 않았습니다.

것은 당신이 그들을 기록하는 경우 : 당신이 WPF 응용 프로그램

를 사용하여 테스트를 실행하려고 다음 그 내부에 WPF 응용 프로그램과 상호 작용을 사용하는 대신 브라우저를 사용하여 기록하고 기록하고 확인을해야합니다 직접 작성하는 경우 : 테스트를 작성할 때 상속의 트리를 올바르게 작성하고 있는지 확인하십시오. 예를 들어, 전통적인 CodedUI 시나리오에서 다른 모든 컨트롤이 상속하는 절대 최상위 객체는 웹 브라우저입니다. 시나리오에서 해당 개체는 WPF 개체 여야합니다. 아마도 다른 창이나 WPF 응용 프로그램의 자식 인 다양한 컨트롤이있을 것입니다. 그러면 WPF 응용 프로그램의 자식이 마침내 브라우저를 자식으로 갖게됩니다.

+0

녹음하지 않습니다. 직접 녹음합니다. 예, 상속을 올바르게 만들었습니다. 그리고 네, 최상위 개체는 WPFObject입니다. CodedUI Test 빌더를 통해이 트리를 볼 수 있습니다. – user2048204