开放api的假设策略

schemathesis的Python项目详细描述


图式

schemathesis是一个为开放api/swagger模式生成测试用例的工具。

主要目标是验证是否正确处理了架构允许的所有值 根据申请。

具有Hypothesishypothesis_jsonschemapytest的能力。

注意:库是WIP,API是一个可更改的主题。

用法

要为您的模式生成测试用例,您需要:

  • 创建参数化器;
  • Parametrizer.parametrize方法包装测试
fromschemathesisimportParametrizerschema=Parametrizer.from_path("path/to/schema.yaml")@schema.parametrize()deftest_users_endpoint(client,case):response=client.request(case.method,case.formatted_path,params=case.query,json=case.body)assertresponse.status_code==200

每个包装的测试都有一个表示假设测试用例的casefixture。

案例包括:

  • method
  • formatted_path
  • query
  • body

此数据可用于验证应用程序是否以架构中描述的方式工作。 例如,可以通过requests针对运行的应用程序容器发送数据,并检查响应 用于预期的状态代码或错误消息。

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

推荐PyPI第三方库


热门话题
在Java中从本地文件系统导入文件   spring boot如何在Java SpringBoot项目中集成Olingo(Odata)   java查找连续数组中缺少的第k个元素(超过时间限制)   java为什么在mySql中插入1/2行时会得到2/4行   java不能在静态上下文中使用它   File Observer方法的java My onEvent()部分不起作用   java Netty NioSocketChannel在多线程写入时收到中断消息   java将文件夹与父文件夹一起复制   java我的TictaToe代码出了什么问题?如何检查已采取的措施?   java Swing JTable更新   java如何将cordinates查找为int   如何使用selenium和java在firefox中打开新的空选项卡   java Gradle构建输出Jar未运行   java没有GET/WEBINF/jsp/login的映射。jsp