2013-09-03 1 views
2

숫자 속성에서 0이 아닌 값으로 모든 테스트 객체를 일치시키는 방법 - 반복하지 않고, 즉 .ChildObjects을 사용하여 어떻게 할 수 있습니까?0이 아닌 속성 TO 찾기 : 설명을 숫자 속성과 일치시킬 수 있지만 정규식 일치를 사용할 수 있습니까?

포함 된 질문 : 내가 정규식 일치 정규식 일치를 사용하여 number (이 속성의 getROProperty 값 즉 VarType 반환 3 (vbLong))를 포함하는 속성 값을 사용하여 일치 할 수 있습니까? 나는 그렇게 생각하지 않는다. 예를 들어

:

Dim Descr: Descr=Description.Create 
Descr ("micclass").Value="WebElement" 
Descr ("height").Value=11 

, 즉 Page.ChildObjects (Descr).Count > 0 내 웹 응용 프로그램에서 일부 컨트롤을 일치합니다.

이에 높이 라인 변경 즉 문자열로 11 할당 :

Descr ("height").Value="11" 

일치 제어 제로.

결과적으로 나는 height이 0이 아닌 테스트 개체를 찾을 수 없으므로 상당히 나쁩니다. 정확히 내가 필요한 것이었을 것입니다.

나는 문자열 검색이 일치하지 않기 때문에, 정규식 일치 이뤄져 작업이 너무

Descr ("height").Value="^[1-9][0-9]*$" 
Descr ("height").RegularExpression=true 

가 0 height 값으로 모든 인스턴스를 검색하는 데 사용하지만 것입니다. (사실, 실제로는 그렇지 않습니다.)

+1

문자열로 높이를 지정하면 잘 작동하고 관련 요소가 나와 일치하므로 뭔가 이상한 일이 있습니다. – Xiaofu

+0

어떤 UFT 버전과 브라우저 유형 및 버전을 사용하고 계십니까? 나는 그것이 왜 당신을 위해서가 아니라 저를 위해서 일하는 것인지 생각하려고 노력하고 있습니다. – Xiaofu

+0

QTP 11.00 빌드 1018, IE 9.0.8112.16421 – TheBlastOne

답변

2

It is known 정수 형식은 설명에서 정수로 전달되어야하며 불행히도 정규 표현식을 쓸모 없게 만듭니다.

내가 지금 손에 QTP 설치를 필요는 없지만, 그것을 더 조사하기 위해, 무엇을 당신이 사용하는 경우 발생

Print Browser("myBrowser").WebElement("height:=11").ChildObjects.Count 

"myBrowser" 물론 브라우저 정의입니다

Print Browser("myBrowser").WebElement("height:=^[1-9][0-9]*$").ChildObjects.Count 

.

+0

확인합니다. 좋은 생각. 그게 작동한다면, 나는 "10"이 버그와 일치하지 않는다는 사실을 고려할 것이다 ... – TheBlastOne

+0

OK. 적어도 일관성이 있습니다. "높이 : = 11"은 잘 작동합니다. "height : = "은 작동하지 않으며 "와 함께해도 아무 것도 찾지 않습니다.* "를 정규 표현식으로 사용하면 설명적인 프로그래밍 설명이 Description.Create로 작성된 설명과 정확히 동일하게 작동합니다. 문자열이 아닌 속성 값은 정규식과 일치 할 수 없습니다. – TheBlastOne

+0

그리고 링크 +1은 – TheBlastOne

관련 문제