依赖测试框架

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

-[]支持生成器测试功能

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java构造函数SimpleCommandBus()不可见   Java字符串和返回   java不能在类中使用上下文?   使用Java为SOAP定制DataHandler   java“访问被拒绝”在编译servlet时   java嵌入Jetty,在给定时间后终止请求   java如何使用预先指定的URL限制AWS S3 bucket中对象的上传大小?   java理解Azure文件存储:未知hostException   java将对象作为参数传递是否会产生与将其存储在字段中相同级别的耦合?   https告诉java客户端代码接受自签名证书   Java中的简单*权威DNS服务器*   Java解压缩字节数组错误数据检查   当我用SpringDoc和接口描述API规范时,java Spring控制器验证似乎不起作用   在Java中使用PHash(OpenCV)   Kotlin中的java简单继承示例   java Infinispan:ISPN004016:服务器不再位于群集中(127.0.0.1:11222),正在从池中删除   2行滑动菜单安卓本机JAVA   使用日期选择器时Android Studio中的java 4错误   java在<之间删除内容!和/>