python web selenium关于try except结合traceback使用(欢迎指正!)

traceback导入import traceback
测试用例写法如下:

class test_CameraT(unittest.TestCase):
    action=TimeSet()
    def setUp(self):
    #     测试固件的setUp()的代码,主要是测试的前提准备工作
        warnings.simplefilter('ignore',ResourceWarning)
        # self.imgs=[]
        # self.driver=eval(UserData.Driver)
    def tearDown(self):
    #     测试结束后的操作,这里基本上都是关闭浏览器
        driver=self.action.dr
        driver.quit()
        time.sleep(1)
        ProcessName=UserData.Driver
        if ("Firefox" in ProcessName):
            print(os.popen('taskkill /f /im firefox.exe').read())
        elif("Chrome" in ProcessName):
            print(os.popen('taskkill /f /im chrome.exe').read())
        else:
            print(os.popen('taskkill /f /im iexplore.exe').read())
# #测试单独修改时区
para_timezone=['GMT-12:00','GMT+12:00','GMT+03:00']
@parameterized.expand(para_timezone)
def test_027_TimeSetOnlyTimeZone(self,TimeZone):
    # try:
        result="self.action.SetTimeZoon("+'"'+TimeZone+'"'+")"
        print( result)
        eval(result)
    # except:
    #     result=[False,"test run error"]
    # finally:
        if result==True:
            self.assertTrue(result)
		else:
			self.assertTrue(result[0],result[1])

如图注释这里,如果按如图处理程序如果跑错,则直接处理了(而且如果按照我上述的处理指挥出来成功和失败,error的全部被处理为错误的了),后续看python报告里面的traceback根本看不出来跑出了什么问题,同时我希望跑错误和跑失败的时候均进行截图处理,采用的driver库里面的get_screenshot_as_base64()截图
所以修改上述代码为:

def test_027_TimeSetOnlyTimeZone(self,TimeZone):
        try:
            result="self.action.SetTimeZoon("+'"'+TimeZone+'"'+")"
            print( result)
            eval(result)
        except EXCEPTION:
        #     result=[False,"test run error"]
        	traceback.print_exc()
        	self.action.dr.get_screenshot_as_base64(self)
        	raise EXCEPTION
         finally:
            if result==True:
                self.assertTrue(result)
 			else:
 				self.assertTrue(result[0],result[1])
 				if result[0]==FALSE:
 					self.action.dr.get_screenshot_as_base64(self)

****其中raise EXCEPTION可能不用加,因为下面的result这里同样会触发error,如果测试用例出错的话,但是可能打印会屡有不同,后续我实践之后再来添加结果。

上述是我目前的处理方法,希望有其他方法的大神指正!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值