2010-05-20 2 views

답변

1

무엇을 캡처 하시겠습니까? HTML 인 경우 Page 테스트 개체에 체크 포인트를 만들고 HTML 소스 확인란을 HTML 확인 섹션에서 확인할 수 있습니다.

페이지의 이미지를 캡처하려는 경우 CaptureBitmap으로 표시된 부분 만 캡처 할 수 있습니다. 스크롤하지 않고 여러 캡처를 사용하지 않는 한 스크롤 한 부분의 이미지를 가져올 방법이 없습니다.

0

Browser("").Capturebitmap을 사용하십시오.

표시되는 브라우저의 스크린 샷을 사용합니다. sendkeys 메소드를 사용하여 페이지를 내린 다음 을 다시 사용하십시오!

-1

전체 페이지의 단일 스크린 샷을 원할 경우 SnagIt을 사용해보십시오.

은 다음과 같을 수 그것을 QTP에서 (http://download.techsmith.com/snagit/docs/comserver/enu/snagitcom.pdf)

대해 이동하는 방법에 대한 자세한 정보와 편리한 PDF있다 : 전체 스크린 샷 QTP의 실행을 전환하여 수행 할 수 있습니다

Sub Capture_Scroll_Image() 

Set objShell = CreateObject("WScript.Shell") 
Set oSnag = CreateObject("SNAGIT.ImageCapture") 

oSnag.IncludeCursor = False 
oSnag.OutputImageFile.FileType = 5 
oSnag.OutputImageFile.FileNamingMethod = 1 
oSnag.OutputImageFile.Directory = "C:\Screens\" 
oSnag.OutputImageFile.Filename = "Name" 
oSnag.EnablePreviewWindow = False 
oSnag.AutoScrollOptions.AutoScrollMethod= 1 
oSnag.Capture() 

Wait (1) 
objShell.SendKeys "{ENTER}" 
capDone = oSnag.IsCaptureDone 

Do Until oSnag.IsCaptureDone 
Loop 
Set oSnag=Nothing 
Set objShell=NothingEnd Sub 
End Sub 
+0

이 답변은 질문이 아니라 질문을 의미합니다. 주요 질문에 대한 대답을 물었다. 도! – TheBlastOne

0

은 설정보다는 CaptureBitmap을 사용하십시오. 우리는 항상 스크린 샷을 찍고 캡처하려는 페이지 (또는 객체)와 상호 작용하도록 (예 : .Exist (0) 호출) QTP에 결과를 스크린 샷으로 보냅니다.

코드

이 작업을 수행합니다 :
Dim App 'As Application 
Set App = CreateObject("QuickTest.Application") 
App.Options.Run.ImageCaptureForTestResults = "Always" 
Browser("index:=0").Page("index:=0").sync 
App.Options.Run.ImageCaptureForTestResults = "OnError" 

은 기술적으로이 HTML을 캡처 한 후 오히려 HTML의 브라우저의 프리젠 테이션의 실제 이미지보다, 실행 결과에 사용자에게이 제시 될 것으로 보인다. 하지만 여전히 페이지에 무엇이 있는지 볼 수는 있지만 보이지는 않습니다.

0

나는 서핑을 많이했으나 정답을 얻을 수 없거나 내 사무실에서 제 3 자 API 사용 제한으로 인해 찾은 것을 구현하지 못했습니다. 도트 넷 팩토리를 사용함으로써 도트 넷 라이브러리를 사용하여 스크린 샷을 취하여 병합 할 수 있습니다. 전체 코드의 다음 페이지를 참조

http://www.testbasket.com/2015/08/capture-whole-web-page-using-uftqtp.html

그러나 여기에 내가 페이지에서 내용을 붙여 넣기하고 도움이되기를 바랍니다있다.

전체 페이지의 스크린 샷을 수행하기 위해 DotNetFactory 및 System.Drawing 닷넷 라이브러리를 사용했습니다.

는 솔루션을 구현의 일환으로, 우리는 전체 페이지의 높이와 무게를 얻을 필요가

솔루션을 단계적으로 갈 수 있습니다. 그것을 얻기 위해서 .object 메소드를 사용하여 페이지의 DOM을 사용합니다.우리는 전체 페이지 크기를 발견하면

#Get the Full Height of Page 
FullHeight = Browser("Wikipedia, the free encycloped").Object.document.body.scrollheight 

#Get the Full width of Page 
Fullwidth = Browser("Wikipedia, the free encycloped").Object.document.body.scrollwidth 

, 우리는 (표시 할 수 있습니다 얼마나 많은 브라우저)

#Get the visible height - Viewable part of the page 
BrowserHeight = Browser("Wikipedia, the free encycloped").Object.document.body.clientHeight 

#Get the visible width - Viewable part of the page 
Browserwidth = Browser("Wikipedia, the free encycloped").Object.document.body.clientwidth 

다음으로 우리는 닷 넷 공장

를 사용하여 필요한 닷 넷 라이브러리를 가져와야 클라이언트 크기를 찾을 필요
Set oGraphics=DotNetFactory.CreateInstance("System.Drawing.Graphics") 

Set oPoint=DotNetFactory.CreateInstance("System.Drawing.Point") 

Set oImgFormat=DotNetFactory.CreateInstance("System.Drawing.Imaging.ImageFormat","System.Drawing", Nothing) 

Set oImageLib = DotNetFactory.CreateInstance("System.Drawing.Image") 

Set oPens=DotNetFactory.CreateInstance("System.Drawing.Pens","System.Drawing") 

최종 단계에서 우리는 페이지를 반복하여 화면 인쇄를해야합니다. 마지막으로 Dotnet 라이브러리를 사용하여 그래픽을 사용하여 이미지를 병합합니다. 그릴 방법. 구현하기 쉽습니다. 위의 언급 된 링크에서 참조 할 수있는 완전한 코드 집합을 사용할 수 있습니다.

관련 문제