pytest用例信息收集并展示到工具上

这里写自定义目录标题

背景

做了一个GUI工具,其中一个功能是把pytest用例展示在上面,并且可以执行,当中遇到了很多问题,其中一个就是如何收集pytest用例信息

思路

大家都知道pytest 收集用例规则未:搜索所有以test_开头的测试文件,以Test开头的测试类,以test_开头的测试函数。pytest --collect-only会展示给定配置下哪些测试用例会被运行,展示如下:

用例信息
那我获得这些后,就可以从中提取信息,组合成用例了。

思路挖掘

  1. subprocess.Popen可以用subprocess这个模块来产生子进程,并连接到子进程的标准输入/输出/错误中去
  2. 怎么产生这个可以pytest的进程,可以使用pytest.main()方法传入–collect-only 和 工作目录
  3. 后面执行pytest的用例就需要打包pytest编写的程序了
  4. 输出的信息过滤Module,Class,Function,再组合起来就可以得到了

问题

  1. pytest参数化用例这样用有没有影响
  2. 中文windows命令行默认编码格式是GBK,显示多国语言怎么编码解码
  3. 用例执行时日志怎么同步输出出来
  4. pytest自带的日志中有很多颜色的代码,怎么过滤
  5. 收集的数据里面可能有多种编码格式,怎么解码

后面的文章会详细解释怎么解决这些问题

猜你喜欢

转载自blog.csdn.net/seuroger/article/details/129849726