类似quickcheck的python测试框架

pyqc的Python项目详细描述


pyqcy[pyksi:]是python的自动测试框架 灵感来自haskell的奇妙的quickcheck库。

怎么了?

而不是编写成熟的测试用例,使用pyqcy 您只需定义逻辑properties 希望能满足。基于此,pyqcy将 自动为您生成测试用例-数百个, 事实上!

看起来怎么样?

首先,试试这个:

from pyqcy import qc, int_, main

@qc
def addition_actually_works(
    x=int_(min=0), y=int_(min=0)
):
    the_sum = x + y
    assert the_sum >= x and the_sum >= y

if __name__ == '__main__':
    main()
$ pip install pyqcy
$ python test.py
addition_actually_works: passed 100 tests.

pyqcy生成100个测试用例并检查 他们都通过了。对于几行代码来说,这很好, 不是吗?:)

当然,你不局限于整数 对所有标准类型的内置支持,包括列表 还有字典。也可以使用自定义类: 只需指定如何生成@任意对象 你的课,你已经准备好了。

嘿,我喜欢!

然后查看这些链接以了解更多信息:

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

推荐PyPI第三方库


热门话题
java不支持org。阿帕奇。平民数学3。分配二元分布(1,p)`会带来很多性能开销吗?   java Android开发人员新手无法在模拟器中启动代码   显示不同版本的java版本和javac版本   java在这种情况下如何使用Spring和Hibernate正确更新对象?   java改变了我整个安卓 studio应用程序的主题   java在LIBGDX中生成可执行Jar文件   mysql对sql结果进行排序,并在java中通过循环在表中显示所有结果   swing如何在java中的textArea中新添加的文本末尾自动显示插入符号?   java需要验证时间,但会不断遇到问题   java像字符串一样拆分“数组”   java Apache Camel:具有属性和属性占位符的RecipientList不起作用   java中的文件子目录和主目录监视   java这样使用Spring规范谓词安全吗?   带Eclipselink的java Oracle 12c标识列   java为什么我在socket inputstream中遇到奇怪的字符   java Hibernate+swing检查登录/密码   java Log4j如何仅禁用致命条目   会话失效后找到的java数据   MySql查询:如何使用MySql和java同时执行两个查询?