문제

응용 프로그램에 쿼리가있어 HTML 태그가 많습니다. 개발 중에 요구 사항이 없기 때문에 많은 태그에 신분증이 부여되지 않았습니다. QA 팀은 QTP를 사용하여 테스트 케이스를 자동화하려고합니다. 대부분의 경우이 도구는 대부분의 HTML 태그에 대한 ID를 찾지 않기 때문에 인식하지 않습니다. 이 태그에 ID 속성을 추가하는 효과가 있는지 알고 싶습니다. 긍정적 인 영향조차 환영합니다

도움이 되었습니까?

해결책

나는 긍정적이거나 부정적인 영향이있을 것이라고 생각하지 않습니다. 아마도 HTML 페이지의 크기는 약간 증가 할 것이지만 아마도 그다지 많지 않을 것입니다.

그래도 페이지의 모든 HTML 태그에 "ID"속성을 넣어야합니까? 그 중 일부만 충분하지 않습니까? 양식 필드, 링크, 오류 메시지에; 그리고 아마 그것에 관한 것입니까?

그러나 당신이 돌봐야 할 한 가지는 "ID"에서와 같이 "ID", 특별해야 해 ; 예를 들어, "ID-Policy"를 정의하는 것이 좋을 수도 있습니다. 예를 들어, "그런 종류의 요소에 대한 ID는 그런 식으로 명명되어야한다"는 것을 의미합니다.

그리고 다음 프로젝트의 경우 : 개발자가 개발자가 개발할 때 추가를 추가하도록하십시오 ;-)
(물론 정책에 따라)


이제 생각하고 있습니다. 긍정적 인 효과는 HTML 문서와 상호 작용하는 JavaScript 코드를 작성하는 것이 더 쉬울 수 있습니다. 그러나 ID가있을 때 다음 프로젝트에 대한 다음 프로젝트 나 진화에 해당됩니다. 개발기가 JS 코드를 제자리에 두는 당시 HTML에 이미 존재합니다 ...

다른 팁

아직 QTP 관련 답변이 없기 때문에.

QTP의 GUI 인식은 객체 지향적입니다. 객체를 식별하려면 QTP는 객체 속성의 고유 한 조합이 필요하고 가능한 빨리 빠르게 확인하는 것이 필요합니다. 그래서 HTML ID가 이상적입니다.

이제 다른 고유 식별자가없는 객체의 경우 특히 중요합니다. 가장 일반적인 예 - HTML 테이블. 내용은 동적이며 페이지의 숫자는 다를 수 있습니다. HTML ID를 추가하면 인식 메커니즘이 오른쪽 테이블로 바로 도착할 수 있습니다.

다른 고유 한 특성을 가진 객체는 HTML ID없이 잘 인식 될 수 있습니다. 예를 들어, 페이지에 단일 "제출"링크가있는 경우 QTP가 내부 텍스트로 성공적으로 인식됩니다.

따라서 컨텍스트 별 답변 : 모든 단일 태그에 ID를 추가하지 마십시오. 자동화 담당자에게 문제가있는 객체 목록을 준비하도록 요청하십시오. 해당 객체에 ID를 추가하십시오.

추신. 또한 자동화 프로그래밍 기술에 따라 다릅니다. 설명 프로그래밍 및 동적 인식 방법이 있습니다. ID를 제공하지 않고도 올바른 개체를 검색 할 수 있습니다.

처럼 앨버트 QTP는 전적으로 요소에 의존하지 않습니다. id, 실제로 많은 웹 애플리케이션이 다르게 생성한다는 사실 때문에 id각 세션마다 s, (내가 기억하는 한) id 속성은 대부분의 웹 테스트 개체의 기본 설명의 일부가 아닙니다.

QTP는 대부분의 간단한 웹 컨트롤을 인식하는 데 능숙하며 문제에 직면 한 경우 웹 확장 성 프로젝트는 웹 애플리케이션의 의미와 생성 된 원시 HTML 사이의 간격을 연결하는 데 도움이됩니다. QTP에 의해 복잡한 컨트롤이 인식되는 경우 WebElement (실제로는 div 그것은 포함합니다 span 코드를 구동합니다.) 많은 것이 있기 때문에 객체 인식 문제가있을 것입니다. div페이지에 S이지만 아마도 적습니다 복잡한 컨트롤.

부작용에 대해 이야기하고 있다면 - 아니오. ID를 추가하면 아무런 문제가 발생하지 않습니다 (물론 추가 바이트를 차지하는 것 외에도)

실제로 ID를 추가 할 필요가 있다면 계속해서 추가하십시오.

http://www.w3.org/tr/html4/struct/links.html#anchors-with-id 말 :

ID 및 이름 속성은 동일한 이름 공간을 공유합니다. 이것은 동일한 문서에서 동일한 이름의 앵커를 정의 할 수 없음을 의미합니다. 다음 요소에 대해 요소의 고유 식별자를 지정하기 위해 두 속성을 사용하는 것이 허용됩니다 : A, 애플릿, 양식, 프레임, IFRAME, IMG 및 MAP. 두 속성이 단일 요소에서 사용되면 해당 값이 동일해야합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top