用VBS代碼實現簡單的場景恢復實例

Dim ErrTag
ErrTag = false 

Dim RecoveredTag
RecoveredTag = false

Function DemoComponent1
	print "Enter component"

	If not ErrTag Then
		print "Start recovery"
		'call recovery
		Recovery "DemoComponent1"
		RecoveredTag = true
		print "Recovery successfully"
		RecoveredTag = false
	else
		print "Start Component body" 
		
	End If
End Function

Function DemoComponent2
	print "Enter component"

	If not ErrTag Then
		print "Start recovery"
		'call recovery
		Recovery "DemoComponent2"
		RecoveredTag = true
		print "Recovery successfully"
		RecoveredTag = false
	else
		print "Start Component body" 
		'RecoveredTag = false
	End If
End Function


Function Recovery(ComponentName)
	If not RecoveredTag Then
		print "Implement recovery"
		'recover
		If ComponentName =  "DemoComponent1" Then
				ErrTag = true
		End If	
		RecoveredTag = true
		set ReCallComponent = getref(ComponentName) 
		ReCallComponent
	else
		'log error
		print "Recovery failed, log error."
		'reset recovery
		RecoveredTag = false
		'raise the error
		err.raise 888,"Stop Execution","Stop Current Test Scenario"
	End If 
End Function


On error resume next
print "1st============================"
DemoComponent1
print err.description
print "2nd============================"
ErrTag = false
DemoComponent2
print err.description




發佈了49 篇原創文章 · 獲贊 12 · 訪問量 24萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章