前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一个中文冒号引发的“血案”

一个中文冒号引发的“血案”

作者头像
测试开发囤货
发布2021-09-08 10:23:07
5170
发布2021-09-08 10:23:07
举报
文章被收录于专栏:测试开发囤货
背景

美好的七夕刚刚过了一半,突然收到了同事的 询问,我们线上运行的脚步转换工具突然不能用了,紧急求助。

接下来 我们排查一下问题,随即我打开网址 执行一切正常;那么好办了,可能是文件格式的问题,要来源文件,进行debug.

美好的七夕刚刚过了一半,突然收到了同事的 询问,我们线上运行的脚步转换工具突然不能用了,紧急求助。

接下来 我们排查一下问题,随即我打开网址 执行一切正常;那么好办了,可能是文件格式的问题,要来源文件,进行debug.

解决步骤

用同事发来的文件 进行执行 果然报错了,报错如图:

代码语言:javascript
复制
TypeError: The view function for 'convert_file' did not return a valid response. The function either returned None or ended without a return statement.
  1. 先搜索一下这个问题,看看有没有前辈踩过坑

找到一个,好像对咱们解决问题,没有什么帮助

  1. 接下来,我们打断点一步一步定位,最终走到这一步时,灵光一下

这一步是写文件的操作,结合报错返回的信息【None】猜想是不是最后谢文件的时候报错了!!

  1. 接着,我们排查一下原文件,有没有什么特殊的地方

问题找到了,这里有个中文的冒号,我们写文件操作时,文件名称取的是title,然后windows文件名称是不允许中文冒号存在的

备注

代码语言:javascript
复制
windows文件名中不能有下列符号:“?”、“、”、“╲”、“/”、“*”、““”、“”“、“<”、“>”、“|”。

详细命名规则如下:

1、允许文件或者文件夹名称不得超过255个字符;

2、 文件名除了开头之外任何地方都可以使用空格;

3、文件名中不能有下列符号:“?”、“、”、“╲”、“/”、“*”、““”、“”“、“<”、“>”、“|”;

4、 Windows 98文件名不区分大小写,但在显示时可以保留大小写格式;

5、 文件名中可以包含多个间隔符。

解决

  • 保存文件时,去除特殊符号,操作如下:
代码语言:javascript
复制
rstr = r"[\/\\\:\*\?\"\<\>\|]" # '/ \ : * ? " < > |'
tree.write('{}/jmeter-'.format(ST.report_path) + re.sub(rstr, "-", file_name)  + '.jmx', pretty_print=True, xml_declaration=True,
           encoding='utf-8')

  • 问题解决
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-08-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 测试开发囤货 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 解决步骤
  • 备注
  • 解决
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档