依赖测试框架
deptest的Python项目详细描述
#deptest是一个测试框架,用于在需要控制测试单元的执行顺序时处理各种情况。说真的,deptest不遵循单元测试的规则,换句话说,使用这个工具意味着你在重新考虑单元测试的原理:
“隔离程序的每个部分并显示各个部分是正确的”。
编程需要多样性,测试方法也是如此。
如果情况真的存在,我们应该做一些事情,
这就是为什么创建DePtEt,它可以被认为是一种不同的
方法来组织你的测试。如果你一直在进行单元测试,那么试试这个方法,
也许会有帮助:)
` depend\u on`说明只有当测试函数的依赖函数为'ok'时,才应运行该函数。如果依赖项为“failed”,则不会执行
测试函数,状态将设置为“unmet”。
1。案例1,deptest import中的简单依赖项python
取决于a'
def test-b():
打印“b”
```
这将确保“test-a”在“test-b”之后运行,即使“test-a”是在“test-b”之前定义的。
2.案例2,从deptest import depend嫒on嫒br/>
``python
@depend嫒on('test嫒b',with嫒return=true)
def test嫒a(name):
打印'a,depend',name
def test嫒b():
打印'b'
返回'b'
`````
“test_b”的返回值
将传递到“test_a”。默认情况下,不会传递依赖项
的返回值。案例3,deptest import中的复杂依赖项姓名2
返回“a”
@depend-on('test'u d')
defetest'u b():
打印“b”
@depend-on('test'd')
defetest'u c():
打印“c”
返回“d”
图表这四个函数中的一个是:
```
d
````
b c
/
a
````
好的,简单的测试。好的
c
→简单的测试。测试…好的
a,取决于b c
→简单的检验。检验…OK
______________________________________________________________________
Ran 4 tests, OK 4, FAILED 0, UNMET 0
```
You can see some practical examples in [`examples/`](examples) folder,
It's worth mentioning that [`http_api_test.py`](examples/http_api_test.py)
simulates an HTTP API testing case, 这就是我开发这个工具的主要原因。
>;注意:要运行“http_api_test.py”,需要安装[httpretty](http s://github.com/gabrielfalcao/httpretty)。
``
用法:deptest[-h][-s][-nologcapture][-dry][-debug][path[path…]
positional参数:
path要扫描的文件或目录
optional参数:
-h,--help显示此帮助消息并退出
-S,NoSc俘获不捕获STDUT(任何STDUT输出都将立即打印
)
NORCOMPION不捕获日志记录BR/>干式运行,只显示匹配的文件
--调试设置要调试的deptest日志记录级别[正常模式](_images/normal.png)
带“--nologcapture”参数:
![使用-s stdout](_images/withstdout.png)
\todo
-[]支持生成器测试功能
“隔离程序的每个部分并显示各个部分是正确的”。
编程需要多样性,测试方法也是如此。
如果情况真的存在,我们应该做一些事情,
这就是为什么创建DePtEt,它可以被认为是一种不同的
方法来组织你的测试。如果你一直在进行单元测试,那么试试这个方法,
也许会有帮助:)
` depend\u on`说明只有当测试函数的依赖函数为'ok'时,才应运行该函数。如果依赖项为“failed”,则不会执行
测试函数,状态将设置为“unmet”。
1。案例1,deptest import中的简单依赖项python
取决于a'
def test-b():
打印“b”
```
这将确保“test-a”在“test-b”之后运行,即使“test-a”是在“test-b”之前定义的。
2.案例2,从deptest import depend嫒on嫒br/>
``python
@depend嫒on('test嫒b',with嫒return=true)
def test嫒a(name):
打印'a,depend',name
def test嫒b():
打印'b'
返回'b'
`````
“test_b”的返回值
将传递到“test_a”。默认情况下,不会传递依赖项
的返回值。案例3,deptest import中的复杂依赖项姓名2
返回“a”
@depend-on('test'u d')
defetest'u b():
打印“b”
@depend-on('test'd')
defetest'u c():
打印“c”
返回“d”
图表这四个函数中的一个是:
```
d
````
b c
/
a
````
好的,简单的测试。好的
c
→简单的测试。测试…好的
a,取决于b c
→简单的检验。检验…OK
______________________________________________________________________
Ran 4 tests, OK 4, FAILED 0, UNMET 0
```
You can see some practical examples in [`examples/`](examples) folder,
It's worth mentioning that [`http_api_test.py`](examples/http_api_test.py)
simulates an HTTP API testing case, 这就是我开发这个工具的主要原因。
>;注意:要运行“http_api_test.py”,需要安装[httpretty](http s://github.com/gabrielfalcao/httpretty)。
``
用法:deptest[-h][-s][-nologcapture][-dry][-debug][path[path…]
positional参数:
path要扫描的文件或目录
optional参数:
-h,--help显示此帮助消息并退出
-S,NoSc俘获不捕获STDUT(任何STDUT输出都将立即打印
)
NORCOMPION不捕获日志记录BR/>干式运行,只显示匹配的文件
--调试设置要调试的deptest日志记录级别[正常模式](_images/normal.png)
带“--nologcapture”参数:
![使用-s stdout](_images/withstdout.png)
\todo
-[]支持生成器测试功能