2013-04-02 2 views
2

QTP에서 데이터 테이블 작업은 로컬이며 그 값은 특정 작업 (Action1 스크립트에서만 액세스 할 수있는 작업 1 데이터 테이블의 값과 같은)의 코드에만 액세스 할 수 있다고합니다. 글로벌 시트를 사용해야하는 이유.작업 Datatable - QTP에서 값 가져 오기

하지만, 다른 작업 테이블에서 데이터를 걸릴 아래의 기능을 통해 온 같은 경우 액션 조치 1 데이터 테이블과 코드의 데이터 2.

이 가능하며 예 이유 인 경우 경우 누군가가 나를 calrify 수 그것은 행동 데이터 테이블의 값은 로컬이고 전역 데이터 시트의 값은 어디서나 액세스 될 수 있다고 일반화 했습니까?

DataTable.Getsheet("Action1").GetParameter(A).Value 

답변

0

하지만 그렇게 할 수있는 것처럼 보입니다. 하나의 스크립트를 만들고 그로부터 액션을 호출하는 것이 더 쉬울까요? 그런 식으로, 당신은 단지 당신이 사용하고자하는 액션 데이터 시트의 행을 참조 할 수 있습니다. 예를 들어

..

RunAction "조치 1 [조치 1]", "1-1"

RunAction "조치 2 [조치 2]", "1-1"

현저히 보인다 더 깔끔하고 테스트 스크립트에서 작업하려는 다른 사람에게 혼동을 덜어줍니다.

1

로컬 및 글로벌 데이터 시트는 현재 동작과 관련이 있습니다. 당신은 당신의 행동의 첫 번째 줄에 다음 명령을 실행할 수 있으며,이 값을 얻을 것이다 :

  • DataTable.GlobalSheet.Name

그러나

  • DataTable.LocalSheet.Name를, HP는하지 않습니다 ImportSheet 함수는 2 개의 테이블이 충분하지 않은 경우 외부 테이블을 사용할 수 있다는 사실을 강조합니다. 다른 작업의 시트를 사용하는 것은 가져온 Excel 파일의 시트를 사용하는 것과 다르지 않습니다.

    enter image description here

    당신은 지점을 가지고 있고 그것은 단지 그들을 정의 된 함수로 제한하는 방법을 지역 변수처럼 만 소유 액션 로컬 데이터 시트에 대한 액세스를 제한하는 것은 의미가 않습니다. 그러나 액션의 데이터 시트는 완전히 독립적 인 객체라는 것을 기억하십시오. 그것의 유일한 돌이킬 수없는 관계는 그것의 부모 엑셀 파일로이다. 이것이 HP가 그러한 제한을 두지 않은 이유입니다.

  • 0

    Datatable ("columnname", "tabname") anyware에서 액세스 할 수 있습니다.

    예 : 에는 strUser = 데이터 테이블 ("유저", "세계")을 에는 strUser = 같음 데이터 테이블 ("사용자"dtGlobalSheet)