颜值爆表的 UI 测试报告 —— ptest

1138 篇文章 11 订阅
682 篇文章 3 订阅

起源

这是一场意外

话说笔者某天闲着没事,也正巧刚啃完 Python & Selenium ,于是漫无目的地在网上搜索着技术相关文章。搜着搜着搜到了一个开源的报告生成库,这时,一幅精美的报告映入了我的眼帘...

初识 ptest

精美报告在此:

 

当我看到这个报告的一瞬间,心中小鹿乱撞,没想到从没经历过的一见钟情 ( 脸 ) 竟会发生在我身上。

 

零距离接触

于是乎内心火热的我找到了此项目的开源地址,进行了一次零距离的接触......

安装

依然是万年不变的 pip install 大法:

pip install ptest==1.9.5
复制代码

最佳实践

这里我使用了自己开发的 violent-webdriver 库进行 selenium 二次封装,所以需要再来一次 pip install 大法:

pip install violent-webdriver==1.0.27
复制代码

然后我们可以开始撸代码拉~

首先我们新建一个 Python 文件,名为 uitest.py,并写入下列 核心代码~

核心代码

from ptest.decorator import TestClass, Test, BeforeClass, AfterClass
from ptest.assertion import assert_true
from ptest.plogger import preporter
# from selenium.webdriver.chrome.options import Options
from violent_webdriver import Chrome

# chrome驱动地址,请自行修改
CHROMEDRIVER_PATH = 'C://MyDownloads/Download/chrome-win32/chromedriver.exe'

# 还是按照惯例拿百度开测
TEST_URL = 'https://www.baidu.com'

@TestClass(run_mode="singleline")
class BaiduTest:

    # 初始化Chrome
    @BeforeClass(description='启动浏览器')
    def before(self):
        self.driver = Chrome.violent_chromedriver(CHROMEDRIVER_PATH)
        self.driver.set_window_size(1920, 1080)
        self.driver.implicitly_wait(10)
    
    # 测试执行
    @Test(tags=["regression", "smoke"], timeout=60, description="验证百度首页的title中是否包含「百度一下」字符串")
    def BaiduTest_001(self):
        self.driver.get(TEST_URL)
        title_text = self.driver.title
        preporter.info('已进入百度首页并获取页面title,title值为: 「%s」' % title_text, screenshot=True)
        assert_true('百度一下' in title_text)

    # 关闭资源
    @AfterClass(timeout=10, description='关闭浏览器')
    def after(self):
        self.driver.quit()
复制代码

代码讲解

没错,我们还是拿百度做实验 :) , 代码执行过程非常简单:

  • 初始化浏览器
  • 登录百度首页
  • 获取百度首页标题
  • 校验百度首页标题是否为 百度一下
  • 关闭浏览器

再介绍一下 ptest 框架中独有的装饰器~

  • @TestClass 代表测试类
  • @BeforeClass 代表在执行测试类中用例的前置步骤 ( 如:初始化浏览器等...... )
  • @Test 代表一个测试用例的具体执行过程 ( 如:访问测试地址、获取页面标题、断言等......)
  • @AfterClass 则常用于测试类运行完毕后的清理工作 ( 如:关闭浏览器等...... )

运行效果

代码撸完后在当前目录下直接运行:

ptest3 -t uitest
复制代码

代码运行完毕后将在当前目录下生成测试报告,打开后如下所示:

 

 

嗯,没错,是我喜欢的模样。

总结

一个好看的报告将会带来一天的好心情~

希望大家能从本篇文章有所收获~

END绵薄之力

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

软件测试面试小程序

被百万人刷爆的软件测试题库!!!谁用谁知道!!!全网最全面试刷题小程序,手机就可以刷题,地铁上公交上,卷起来!

涵盖以下这些面试题板块:

1、软件测试基础理论 ,2、web,app,接口功能测试 ,3、网络 ,4、数据库 ,5、linux

6、web,app,接口自动化 ,7、性能测试 ,8、编程基础,9、hr面试题 ,10、开放性测试题,11、安全测试,12、计算机基础

获取方式 :

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值