当前位置: 首页 > news >正文

wordpress 文章 标题seo免费课程视频

wordpress 文章 标题,seo免费课程视频,wordpress成品图,竭诚网络网站建设开发我们知道,Pytest是Python技术栈下进行自动化测试的主流测试框架。支持灵活的测试发现、执行策略,强大的Fixture夹具和丰富的插件支持。 除了通过pytest的parametrize标签进行参数化外,我们通过fixture的param参数也可以比较方便地实现参数化…

我们知道,Pytest是Python技术栈下进行自动化测试的主流测试框架。支持灵活的测试发现、执行策略,强大的Fixture夹具和丰富的插件支持。

除了通过pytest的parametrize标签进行参数化外,我们通过fixture的param参数也可以比较方便地实现参数化测试的功能

fixture参数化实现

假设我们有如下一段待测代码,根据传入参数的不同类型得到不同的输出

def deal_params(p):  if type(p) is int:  return p*10  if type(p) is str:  return f"输入了:{p}"  if type(p) in (tuple, list):  return "_".join(p)  else:  raise TypeError

然后我们编写对应的测试代码,首先定义fixture,设定params参数列表, 再通过fixture本身的request获取param. 比如这里定义几个参数。当然此外我们还定义了fixture的前置和后置动作。测试方法就是调用被测函数执行。

@pytest.fixture(params=[10, "城下秋草", "软件测试", ("示例", "代码")])  
def fix_env(request):  yield request.param  def test_params(fix_env):  print(deal_params(fix_env))

运行得到如下输出:
在这里插入图片描述

可以看到,虽然参数化成功运行,但这里有个问题,就是输出的结果中,用例ID这里,显示的是乱码.
根据pytest的ID生成规则,如果是字符或数字,会显示传入的参数本身(当然也可以利用ids参数重新指定参数的对应ID),如果是元组、列表或字典,则会显示fixture的name+参数序号,比如这里的fix_env3

那这里的字符是中文,显示成了unicode转义前的编码,所以还是中文转换有问题。也就是Pytest对于fixture参数的处理,默认会使用Ascii编码来进行显示,而对于中文,我们是希望用unicode编码显示。

中文乱码解决方案一

所以,这里解决这个问题的第一个方法是可以利用Pytest的fixture集中配置文件conftest.py, 在其中利用Pytest的hook机制,修改用例收集方法中生成用例ID的部分. 对应代码:

用例文件的同级conftest.py中定义:

def pytest_collection_modifyitems(items):  # item表示收集到的测试用例,对他进行重新编码处理for item in items:  item.name = item.name.encode("utf-8").decode("unicode-escape")  item._nodeid = item._nodeid.encode("utf-8").decode("unicode-escape")

再次执行,可以看到已经正常显示了中文
在这里插入图片描述

中文乱码解决方案二

除了通过修改hook来对用例ID进行重新编码处理外,其实Pytest本身也提供了一个配置参数。只是这个配置并不是官方推荐的解决方法。在某些操作系统上的特定情形下,使用这个配置,可能会导致一些异常bug。但笔者在windows和Ubuntu上测试是没有问题的。

这里对应的配置是:

disable_test_id_escaping_and_forfeit_all_rights_to_community_support = True

从这个超长的配置名称也可以看出,就是禁用testID的转义但同时放弃了社区支持 😂😂

在pytest.ini中加上这个配置,不使用上面hook的话,也能得到中文正常显示的效果。


以上就是关于Pytest中参数化中文显示时,可能遇到的乱码问题的解决方案。


http://www.rdtb.cn/news/21630.html

相关文章:

  • 把网站做进微信公众号哪里可以接广告
  • 如何做淘宝直播教学视频网站百度网盘官方下载
  • 网站设计公司青岛windows优化大师有哪些功能
  • 广东网站设计公司价格以下哪个单词表示搜索引擎优化
  • 自己做b2b平台网站建设网站设计规划
  • 西宁做网站制作的公司seo排名点击软件推荐
  • bbs建站广州seo网络推广员
  • 红河州建设局门户网站百度开户推广多少钱
  • 和狗做网站如何推广公司
  • 楼市房价最新消息网站服务器速度对seo有什么影响
  • 营销型网站建设菲凡网seoul是什么意思
  • 网站300m是什么意思电脑培训网上培训班
  • wordpress凌风教程seo单词优化
  • 软考证书有用吗张雪峰网站快速排名优化
  • 2023中国互联网公司排行榜seo是什么单位
  • 博客和网站有什么不同今日新闻联播主要内容摘抄
  • 出名的网站有哪些舆情网站直接打开
  • 做动态网站需要什么软件seo系统源码
  • 能被百度收录的建站网站百度广告联盟一个月能赚多少
  • 做网站找那个公司2023搜索最多的关键词
  • 手机怎样建立网站站长网站seo查询
  • 响应式网站和普通网站网页优化建议
  • 广州哪个区最繁华重庆seo网站管理
  • 唐山做网站多少钱疫情最新数据消息地图
  • 衡水网站建设浩森宇特南昌seo数据监控
  • 网站开发评分标准淘宝流量助手平台
  • 网站建设服务ysaigo企业网站快速排名
  • 网站开发用了什么平台网站制作费用一览表
  • 三维家是在网站上做还是在app上网络营销模式下品牌推广研究
  • 淘宝做网站费用深圳货拉拉