先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新软件测试全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip1024b (备注软件测试)
正文
#执行用例
runner=HTMLTestRunner_cn.HTMLTestRunner(title=“自动化测试报告”,
description=“测试结果”,
stream=open(“result.html”,“wb”),
)
runner.run(testunit)
代码编写完成后,直接进行执行程序,执行完成后,就会发现我们测试报告已经生成了,直接打开就可以看到自动化测试结果,失败的存在截图信息。
Pytest
Pytest是一个使创建简单及可扩展性测试用例变得非常方便的框架,测试用例清晰、易读而无需大量的繁琐代码。
只要几分钟你就可以对你的应用程序或者库展开一个小型的单元测试或者复杂的功能测试。Pytest支持第三方插件,灵活性较高。
这里小编通过Pytest生成的Allure报告中添加测试报告内容。其中Allure属于一种开源的测试框架,可以基于多种语言进行使用,如Java的JUnit、Python的Pytest。
alluer生成的报告内容比较美观,目前测试中常用的测试报告。Allure的环境是基于Java环境的,前提条件需要将Java的环境安装完成(下载JDK,配置环境变量)。
下载地址:https://github.com/allure-framework/allure2(具体安装不在过多介绍)。
我们需要在conftest.py文件中去收集Pytest测试用例中失败的结果,小编这里选择用pytest_runtest_makereport函数来帮忙实现。
#conftest.py
from selenium import webdriver
import pytest
import time
import allure
te=time.strftime(“%Y-%m-%d%H:%M:%S”,time.localtime())
@pytest.hookimpl(tryfirst=True,hookwrapper=True)
def pytest_runtest_makereport(item,call):
#获取钩子方法的调用结果
outcome=yield
rep=outcome.get_result()
#仅仅获取用例call执行结果是失败的情况
if rep.when=="call"and rep.failed:
#添加allure报告截图
with allure.step(‘失败截图:’):
#将截图添加到报告中,图片名称已当前时间。
allure.attach(d.get_screenshot_as_png(),name=te,
attachment_type=allure.attachment_type.PNG)
#配置浏览器驱动,不显示浏览器执行过程
@pytest.fixture(scope=“session”)
def driver():
global d
options=webdriver.ChromeOptions()
options.add_argument(“–headless”)
d=webdriver.Chrome(options=options)
yield d
d.quit()
编写两个简单的测试用例,一个测试用例失败,一个测试用例成功。
#coding:utf-8
def test_01(driver):
#失败案例
driver.get(‘https://www.baidu.com/’)
driver.find_element_by_id(‘kw’).send_keys(‘51testing软件测试网’)
t=driver.title
assert t==‘51testing软件测试网’
def test_02(driver):
#成功案例
driver.get(‘https://www.baidu.com/’)
driver.find_element_by_id(‘kw’).send_keys(‘安静’)
t=driver.title
assert t==‘百度一下,你就知道’
然后运行Pytest并且生成Allure报告,查看到Allure报告中,已经将对应的失败截图已经添加到其中了。
总结
小编分别通过UnitTest和Pytest在测试用例中增加对应的失败截图功能,其中关于UnitTest比较简单,直接在网上查找对应的Htmltestrunner报告就可以了。
但是在Allure报告中添加失败截图,需要在conftest.py中进行对现有的函数进行二次开发,不过开发比较简单,主要在于孰能生巧。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注软件测试)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
,那么很难做到真正的技术提升。**
需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注软件测试)
[外链图片转存中…(img-xnA5lsSm-1713356194791)]
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!