python运行结果怎么截图_python UI自动化生成BeautifulReport测试报告并保存截图

前面已经写过利用BeautifulReport生成测试报告,那么接下来讲讲如何在测试报告里面保存截图

首先需要在测试用例中定义一个截图的方法:

# 截图方法

"""

os.path.abspath:返回当前目录的绝对路径

传入一个img_name,并存储到指定路径下

"""

def save_img(self, img_name):

self.driver.get_screenshot_as_file('{}/{}.png'.format(os.path.abspath('F:\\before\\lds\\img'), img_name))

然后在测试用例中挂载一个装饰器,在用例里面调用save_img方法

# -*- coding:utf-8 -*-

from selenium import webdriver

import unittest

import os

from pages.login_page import LoginPage

from BeautifulReport import BeautifulReport

url = '........'

class LoginPageCase(unittest.TestCase):

# 截图方法

"""

os.path.abspath:返回当前目录的绝对路径

传入一个img_name,并存储到指定路径下

"""

def save_img(self, img_name):

self.driver.get_screenshot_as_file('{}/{}.png'.format(os.path.abspath('F:\\before\\lds\\img'), img_name))

@classmethod

def setUpClass(cls):

cls.driver = webdriver.Chrome()

# 定义LoginPage的实例

cls.login_p = LoginPage(cls.driver)

def setUp(self):

self.driver.maximize_window()

self.driver.get(url)

# 退出登录 清除cookie

self.driver.delete_all_cookies()

self.driver.refresh()

# 截图需用到的装饰器,在用例里面调用前面定义的save_img方法

@BeautifulReport.add_test_img('测试报告')

def test_01(self):

"""调用login_page里面定义的每个步骤的方法"""

self.login_p.send_user("用户名")

self.login_p.send_pwd("12345678")

self.login_p.click_btn()

# 断言

result = self.login_p.text_is_in()

self.save_img('测试报告')

self.assertTrue(result == '测试用例失败截图')

def test_02(self):

"""调用login_page里面定义的每个步骤的方法"""

self.login_p.send_user("")

self.login_p.send_pwd("123456")

self.login_p.click_btn()

# 断言

result = self.login_p.text_is_in()

self.assertTrue(result == '用户名或密码错误,请检查拼写')

@classmethod

def tearDownClass(cls):

cls.driver.quit()

if __name__ == '__main__':

unittest.main()

运行以上用例,用例失败就会将截图存放在测试报告中。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值