将QTP运行时的错误截图上传到QC测试集中

翻译 2011年01月21日 14:46:00

      如果在测试运行时,将每一步的截图都上传至QC,那么将大量耗费QC的系统资源。通常,我们只想查看那些发生错误时的截图。当调试和运行失败后,需要查找原因时,这些截图可以迅速帮助定位问题。

      通过下述步骤,可以很简单的实现上述需求。

  • 在公共函数库中创建一个类,并此类的一个实例
  • 在类的析构函数中判断是否发生错误并截图
  • 将截图作为附件上传到QC中当前测试集的实例中。

以下是这个类的完整代码:

' Class: QCImageErrorCapture
' WebSite:  http://KnowledgeInbox.com
' Author: Tarun Lalwani
' Description: This class captures the screen in case the current component fails or the current
'				test fails. This is for QC only
' Parameters:	N/A
 
Class QCImageErrorCapture
	Sub Class_Terminate()
		'Check if the current test has failed. If failed then only capture screenshot
		If Reporter.RunStatus = micFail Then
			CaptureAndAttachDesktop
		End If
	End Sub
 
	Private Sub CaptureAndAttachDesktop()
		'QC is not connected
		If QCUtil.IsConnected = False then Exit Sub
 
		'The test is not running from Test Lab
		If QcUtil.CurrentRun is Nothing Then Exit Sub
 
		On error resume next
		'Hide QTP to make sure we don't get QTP in snapshot
		Set qtpApp = CreateObject("QuickTest.Application")
 
		qtpApp.visible = False
		'GIve time for QTP to get hidden
		Wait 2
 
		'Capture the screenshot to the report folder
		Desktop.CaptureBitmap Reporter.ReportPath & "/Report/ErrorImage.png", True
		qtpApp.visible = True
 
		'Add the capture to QC
		Set oAttachments = QCutil.CurrentRun.Attachments
		Set oAttachment = oAttachments.AddItem(null)
		oAttachment.FileName = Reporter.ReportPath & "/Report/ErrorImage.png" 
		oAttachment.Type = 1 'File
 
		'Check if the current test is a QTP Test or Business Component
		Select Case LCase(qtpApp.CurrentDocumentType)
			Case "test"
					oAttachment.Description = "Name: " & qtpApp.Test.Name & vbNewLine & "Error: " & qtpApp.Test.LastRunResults.LastError
			Case "business component"
					oAttachment.Description = "Name: " & qtpApp.BusinessComponent.Name & vbNewLine & "Error: " & qtpApp.BusinessComponent.LastRunResults.LastError
 
					'We can also add the Business COmponent to a User Defined Field 
					'QCUtil.CurrentTestSetTest.Field("TC_USER_01") = qtpApp.BusinessComponent.Name
					'QCUtil.CurrentTestSetTest.Post
		End Select		
 
		'Add the attachment
		oAttachment.Post
	End Sub 
End Class
 
'Create the object in one of the attached libraries. When the Test or Business component ends 
'the screenshot will be captured
Set oErrorCapture = new QCImageErrorCapture
将上述代码直接复制到函数库中并关联当前QTP脚本,那么在运行过程中发生的错误截图就会自动上传至QC。

Selenium 测试 - 在遇到失败时截图保存

For the GlassFish Administration Console, we have quite a few tests (about 133 at last count). Given...
  • ynwso
  • ynwso
  • 2014年10月16日 17:06
  • 2131

QTP处理弹出框(对话框)信息---终…

本文为原创,转载请注明作者:Cheers.Lee 和网络来源。     关于QTP处理弹出信息(或者说对话框或pop-up信息),应该是个比较简单的问题,本来是个很简单的问题,但是网上说的确实五花八门...
  • achang21
  • achang21
  • 2013年09月15日 10:17
  • 1787

iOS app 上传到AppStore过程中遇到的问题汇总

1> 上传1024*1024的APP图标时,图标中不能包含alpha通道或者透明度; 2> LanchImage的图片格式只能是png格式,jpg格式xcode无法加载成功; 3> 开发者在填写...
  • u013915422
  • u013915422
  • 2016年05月13日 11:04
  • 6849

JS打开摄像头并截图上传

直入正题,JS打开摄像头并截图上传至后端的一个完整步骤     1. 打开摄像头主要用到getUserMedia方法,然后将获取到的媒体流置入video标签 2. 截取图片...
  • hsany330
  • hsany330
  • 2017年11月01日 18:38
  • 102

javaweb 项目 使用image cropper jquery插件 截图上传

image cropper 图片截取上传                 二、截取图片,创建canvas,上传到后台 function getImg(){ var $th...
  • shiyuqiong
  • shiyuqiong
  • 2015年12月01日 18:19
  • 6242

头像截图上传两种方式(SWFUpload、一个简单易用的flash插件)

SWFUpload是一个客户端文件上传工具,最初由Vinterwebb.se开发,它通过整合Flash与JavaScript技术为WEB开发者提供了一个具有丰富功能继而超越传统标签的文件上传模式。另一...
  • yafei450225664
  • yafei450225664
  • 2013年10月18日 16:48
  • 34064

Ajax+PHP+jQuery图片截图上传

一、功能分析 用户直接上传图片,点击"上传"按钮之后,在图片预览图内可预览图片,然后进行图片的裁剪前预览,当点击"裁剪"按钮时确定裁剪图片,并在"裁剪结果"区域显示裁剪后的效果。 (说明:...
  • dugulieyang
  • dugulieyang
  • 2012年05月22日 21:49
  • 1904

Ajax+PHP+jQuery图片截图上传

一、功能分析 用户直接上传图片,点击"上传"按钮之后,在图片预览图内可预览图片,然后进行图片的裁剪前预览,当点击"裁剪"按钮时确定裁剪图片,并在"裁剪结果"区域显示裁剪后的效果。 (说明:...
  • gavinyyb
  • gavinyyb
  • 2015年07月07日 09:42
  • 725

C/C++ For循环语句的效率测试优化及运行时错误:Stack Overflow的解决办法

C/C++ For循环语句的效率测试优化及运行时错误:Stack Overflow的解决办法 在多重循环中,如果有可能,应当将最长的循环放在最内层,最短的 循环放在最外层,以减少CPU跨切...
  • testcs_dn
  • testcs_dn
  • 2013年03月04日 14:45
  • 3852

web截图上传和邮发到邮箱

  • 2010年10月13日 22:12
  • 756KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:将QTP运行时的错误截图上传到QC测试集中
举报原因:
原因补充:

(最多只允许输入30个字)