关于python生成url测试用例的信息

关于python生成url测试用例的信息 基于属性的测试 会产生大量的、随机的参数,特别适合为单元测试和接口测试生成测试用例

本文目录一览:

用 Python 为接口测试自动生成用例

基于属性的测试 会产生大量的、随机的参数,特别适合为单元测试和接口测试生成测试用例

尽管早在2006年haskell语言就有了 QuickCheck 来进行”基于属性的测试“,但是目前来看这依然是一个比较小众的领域,参考资料有限,本文如有不足,欢迎指正。

在过去的测试实践中,执行测试时通常需要明确的内容(Value):

这些内容可以通过”判定树“或者”判断表“来表示,然后测试的执行过程变成了这样

可以称为 基于表的测试

在最初,这给了我们测试的方向,但是缺点也非常明显:

你要足够多的”X-Y” 才能可能覆盖到隐蔽的bug。

这里请大家回答几个问题:

如果以上问题的答案不是yes,那么 基于属性的测试 就是你需要掌握的东西!

基于属性的测试和基于表的测试,最大的区别可以这样描述:

vs

于是利用工具生成大量的X类数据,进行测试,并验证结果是否Y类。

值得注意的是:

在不同的语言中有不同的工具来实现,比如:

本文以python为例进行演示:

假设有add函数,接收两个类型整数参数,并返回它们的相加结果

首先写出一个简单的测试用例

正如前面所说,一个这样的用例,根本没信心覆盖全部的场景,例如:

所以接下来怎么办?

改为基于属性的测试

执行结果

由结果可知,工具根据 参数是整数 这一规范,自动生成、执行了大量的测试用例

接口测试和函数的单元测试非常相似:

此外接口文档作为前后端、甚至测试开发的对接窗口,对参数的要求约定的更加细致,

以OpenAPI为例,每个参数可以有以下属性:

于是为接口生成符合要求的参数就变得可行了,举个例子:

这是以unittest为例进行封装的结果,只需要在TestCase中指定openapi的内容(或路径),

启动测试框架时,会自动读取、解析接口文档,并生成测试用例

下面是部分执行日志,可以看到对接口发送了随机参数,并获得返回值

文章来自

关于python生成url测试用例的信息

python 根据规律生成url列表然后在下载 做一个爬虫

用爬虫跟踪下一页的方法是自己模拟点击下一页连接,然后发出新的请求;

参考例子如下:

item1 = Item()

yield item1

item2 = Item()

yield item2

req = Request(url=’下一页的链接’, callback=self.parse)

yield req

注意:使用yield时不要用return语句。

python 自动化,如何添加测试用例

1、单独添加一个或多个用例

……

2、添加某个类下的所有用例

2.1方法一:

如Class_name类下有多个用例,则直接括号里不写入任何用例名,即可测试该类下所有用例。

2.2方法二

使用unittest.makeSuite(类名),将该类下所有用例添加到套件中

2.3方法三

使用 unittest.TestLoader()这个类下的loadTestsFromTestCase(类名),将该类下的所有用例加入到套件中

3、将整个文件中的用例都加载到套件中,不管有几个用例类

使用 unittest.TestLoader()这个类下的loadTestsFromModule(文件名, pattern=None),moudle就是用例存放的文件名

python多线程探测url地址

建立一个名为url.txt的文件,将需要批量测试的url放此文件中,执行脚本就看可以了。Python提供了高效的高级数据结构,还能简单有效地面向对象编程。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/23163.html

(0)
上一篇 2023-12-01
下一篇 2023-12-01

相关推荐

  • 基于二进制文件的主从复制

    基于二进制文件的主从复制1.设置主服务器配置 必须在主服务器上启用二进制日志,因为二进制日志是将更改从主服务器复制到从服务器的基础,如果未启用log-bin,则无法进行复制 复制组内的每个服务器必须配置有唯一的id,此id用

    2022-12-29
    157
  • Python下使用os和pipe进行进程间通信

    Python下使用os和pipe进行进程间通信在Python中,我们有多种方法来进行进程间通信,其中最常用的就是使用os模块和pipe管道。这种方法可以用于在父子进程之间实现通信,让它们可以相互传递消息和数据。

    2024-01-07
    107
  • SQL语句实战学习 – 小小程序员「建议收藏」

    SQL语句实战学习 – 小小程序员「建议收藏」参考:https://zhuanlan.zhihu.com/p/38354000再次感谢作者的整理!! 1.数据已提前准备好了,已知有如下4张表:学生表:student 成绩表:score(学号,课程

    2023-05-27
    124
  • Postgresql执行计划概述「建议收藏」

    Postgresql执行计划概述「建议收藏」执行计划个人理解是一个“点”,“线”,“面”的问题,关系数据库中执行计划是一个同质化的对象,串联起来还是比较容易掌握的,对于一条复杂的sql,所谓的点就是其中单个表的访问方式,线是表之间的连接驱动顺

    2023-03-29
    157
  • 本地服务开启MySQL57提示本地计算机上MySQL服务启动后停止。。。。「建议收藏」

    本地服务开启MySQL57提示本地计算机上MySQL服务启动后停止。。。。「建议收藏」1、首先以管理员身份启动cmd,要不然服务禁止访问。 2、然后在cmd中输入 mysqld –remove mysql或者mysqld –remove mysql57来移除服务。 3、然后进入My

    2022-12-29
    261
  • Python实现cos/x函数的计算

    Python实现cos/x函数的计算Cosine函数是常见的数学函数之一,它表示一个角度的余弦值,由于余弦函数的定义域为实数,而实数上的除法定义需要特殊处理,因此我们需要使用一些数学方法来计算cos/x函数。Python语言作为一种强大的计算机语言, 具有强大的计算能力和广泛的应用领域,能够很好的实现cos/x函数的计算。

    2024-03-04
    84
  • Python Label Scale:用代码自动完成标签缩放

    Python Label Scale:用代码自动完成标签缩放在数据可视化中,经常需要对标签进行缩放处理,确保显示的标签不会重叠或者太小难以阅读。在传统的方法中,往往需要手动去计算每一个标签的大小和位置,然后进行调整。这个过程非常耗费时间和精力,而且结果常常并不如人意。

    2023-12-25
    116
  • sql server查询链接数据库_sqlserver查询死锁

    sql server查询链接数据库_sqlserver查询死锁在SQL Server中有几种方法可以找到活动的 SQL 连接。让我们看看一些使用 T-SQL 查询的简单快捷的方法。 SP_WHO SP_WHO 是 SQL Server 内置的系统存储过程, 其他

    2023-05-26
    133

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注