如何在python中获取测试方法的开始行号和结束行号?

泰坦弗莱克斯

我目前正在尝试获取 python 文件中所有测试方法的第一个和最后一个行号。

例如:

文件 test_lift.py 测试文件lift.py。

test_lift.py

1 import random
2
3 from src.lift import Lift
4 from flaky import flaky
5
6
7 def test_upwards():
8         tester = Lift()
9         tester.upwards()
10        assert 1 == tester.curr_floor
11
12 def test_downwards():
13        tester = Lift()
14        tester.curr_floor = 1
15        tester.downwards()
16        assert 0 == tester.curr_floor
17        tester.downwards()
18        assert 0 == tester.curr_floor
19
...

我现在想获取 test_lift.py 中每个测试方法的第一个和最后一个行号,在这种情况下,例如:

test_upwards, 7, 10

test_downwards, 12, 18

我已经尝试过使用 conftest.py,但没有任何成功。也许我忽略了什么?解决方案不一定必须在 python 中。如果有人知道如何通过解析文件来解决这个问题,我就可以了。

乔兰·比斯利

您可以inspect为此使用该模块

import inspect
lines,line_start = inspect.getsourcelines(test_downwards)

print("Lines:",line_start,line_start+len(lines) - 1 )

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何从源映射中获取原始行号和符号

如何获取带有子例程的开始和结束行号的perl子例程列表?

如何在Python的起始行和结束行中获取类的范围?

给定起始行和结束行号,使用Java读取文件

如何基于cygwin中的开始和结束行号来裁剪(剪切)文本文件?

perl匹配的开始和结束行号

如何在Python中打开的文件中获取行号

如何在xargs中获取行号?

如何在Visual Studio中获取行号

如何从python中的行号获取短语?

如何在R中没有起始行号的情况下打印文本?

删除公用行后如何在awk中显示原始行号

yacc中获取行号的方法

如何在Go测试输出中确定行号?

如何在python中获取数据序列的开始和结束日期时间段?

如何在Eclipse中的活动中获取行号

我如何在使用RubyXL的迭代中获取行号?

如何在PL / SQL Developer中获取行号?

如何在vbs中获取当前代码行号?

如何在Elixir的控制台输出中获取行号

如何在源代码中获取常规ASTNode的行号?

我如何在Android Studio中获取行号

如何从输入的数据(SQL和PHP)中获取行号

如何在python中解析循环语句的开始和结束

如何在 Python 中检索矩阵中与某个值匹配的元素的行号和列号?

如何基于Python Pandas中的查找数据集获取行号和列号?

如何在Access中添加行号和GROUP BY?

如何在Python中记录源文件名和行号

如何从python中的exec或execfile获取错误的行号