首页 > 编程语言 >测试工程师常用的python库

测试工程师常用的python库

时间:2024-02-25 15:55:24浏览次数:37  
标签:测试 工程师 python sys Python 应用 自动化

大家好,今天给各位小伙伴带来的是测试工程师常用的10个python库,相信有些小伙伴肯定知道一些库,也使用过一些库。下面我们就来聊聊这常用的10个python库,我们主要介绍这些库和这些库的一些应用场景,方便没有接触过的小伙伴知道这些库的作用。

个人认为以下10个库是测试工程师最常用的库。

  1. os
  2. sys
  3. time
  4. selenium
  5. unittest
  6. pytest
  7. pymsql
  8. email
  9. appium
  10. requests
  11. numpy

一、os库

1、介绍:

os 库是Python标准库,包含几百个函数,常用的有路径

操作、进程管理、环境参数等。

2、应用:

我们说一个使用场景,在进行web自动化测试的时候,前期网页是没有部署到服务器的,这个时候我们没有办法访问服务器,只能通过本地的html页面来进行测试,这个时候就要使用os库来访问我们的本地页面,如:dr.get("file:///"+os.path.abspath('HTML/下列列表.html'))

还有,os库中有对文件的修改,删除等功能,对于办公自动化方面很有帮助

二、sys库

1、介绍:

sys库提供了许多函数和变量来处理python运行时环境的不同部分

2、应用:

在我们通过命令行运行python脚本时,需要传递一些参数给到脚本中,这个时候就可以使用sys库中

sys.argv: 返回一个list,其中包含在命令行中传给脚本的参数。这常用于处理命令行参数。例如,如果运行命令为python myscript.py arg1 arg2,那么sys.argv为['myscript.py', 'arg1', 'arg2']。
sys.exit(): 使Python程序终止运行。可以在明确程序无法继续运行,或完成了其工作时调用。
sys.path: Python模块的搜寻路径。它是个字符串列表,在每次导入模块时都会检查这些路径。
sys.stdin, sys.stdout 和 sys.stderr: 绑定到Python运行时的标准输入、输出和错误流。这些可能对文件I/O和错误处理很有用。
sys.version: 包含了关于当前Python解释器的版权和版本信息
sys.getsizeof(object): 返回对象的大小(以字节为单位)
sys.maxsize:返回Python整数的最大值。
sys.platform:返回操作系统平台名称。
sys.exc_info():返回一个包含三个值的元组(type, value, traceback),它们为异常类型、异常值及追溯信息。
sys.modules:已加载模块的字典,{module_name: module}

 

三、time库

1、介绍:

Time库包含三类函数

时间获取:time() ctime() gmtime()
时间格式化:strftime() strptime()
程序计时:sleep(),perf_counter()

2、应用:

经常用到的地方就是在自动化测试的时候,需要休眠代码,为了能更好的定位到元素,你是不是常常time.sleep(2)一下呢?

四、selenium库

用它可以定位我们页面的元素,然后在操控页面元素,当然也可以操控浏览器和移动端app,八大定位元素的方法可还记得?

五、unittest库

unittest单元测试框架不仅可以适用于单元测试,还可以适用WEB自动化测试用例的开发与执行,该测试框架可组织执行测试用例,并且提供了丰富的断言方法,判断测试用例是否通过,最终生成测试结果。

2、应用:

可以使用在批量运行自动化测试用例,用例之间数据交互,自动生成测试报告等

六、pytest库

1、介绍:

这个库和上面的uinttest类似也是自动化测试框架,里面有一系列的函数可以让我们进行断言,生成测试报告等

2、应用:

pytest的使用和unittest类似,不同的地方在于pytest有很多插件,可以用例出错重跑等

七、email库

1、介绍:

该库常和smtplib库一起使用,你在写代码进行邮件自动化发送的时候必不可少

2、应用:

该库的使用需要配合邮箱的设置,邮箱要开启一些服务,然后你才可以登录smtp服务器

八、appium库

1、介绍:

Appium是一个开源的,适用于原生或混合移动应用( hybrid mobile apps )的自动化测试工具,Appium应用WebDriver: JSON wire protocol驱动安卓和iOS移动应用

2、应用:

在进行移动端自动化测试时,你的代码必须引入appium库,你才能调用appium软件,然后再控制移动端的app

九、pymsql库

1、介绍:

pymsql是python来连接操作mysql数据的一个python专用库

2、应用:

在编写自动化测试时,有些数据我们需要从mysql数据库中获取,这个时候这个库就很有作用了

十、requests库

1、介绍:

Requests 是用Python语言编写,基于 urllib,采用 Apache2 Licensed 开源协议的 HTTP 库。它比 urllib 更加方便,可以节约我们大量的工作,完全满足 HTTP 测试需求。Requests 的哲学是以 PEP 20 的习语为中心开发的,所以它比 urllib 更加 Pythoner。

2、应用:

主要应用于接口自动化测试,可以用来发送get和post等等一些请求。

 

十一、 numpy 库

除此之外,还会用到 numpy,进行随机数之类的工具调用

import numpy as np

pop_list = np.random.randint(100,size=6)

 

标签:测试,工程师,python,sys,Python,应用,自动化
From: https://www.cnblogs.com/chenxiaomeng/p/18032497

相关文章

  • 常用的Python代码片段(绘图)
    Proplot绘制具有经纬网的地图importproplotasppltimportcartopyfig,ax=pplt.subplots(proj=['cyl'],ncols=1,nrows=1)ax.add_feature(cartopy.feature.COASTLINE)ax.add_feature(cartopy.feature.BORDERS,linestyle=':',linewidth=0.5)ax.add_featu......
  • Python 相关知识-1
    1.Python内存泄漏和内存溢出是两种不同的问题,但它们都与内存管理有关.内存泄漏是指在使用动态分配的内存时,由于某些原因导致某些已分配的内存块无法被释放,从而使得程序占用的内存不断增加,最终导致内存耗尽。在Python中,内存泄漏可能由多种原因引起,例如全局变量、闭包、循环......
  • 3代 I3 3220 对比12代 G6900 测试
    3代I33220对比12代G6900测试I33220的CPU-Z,和cinebenchr23跑分。G6900的CPU-Z,和cinebenchr23跑分。 I33220 CPU-Z单核:300,多核心:827.R23 单核:639,多核心:1557. G6900CPU-Z单核:541,多核心:1057.R23 单核:1271,多核心:2444. END ......
  • Python中生成器和迭代器的概念及两者区别
    本文详细介绍Python中生成器和迭代器的概念及两者区别。并通过一个案例分析两者在实际应用中的性能差异。 生成器生成器是一种特殊类型的迭代器,它使用函数和yield关键字定义,可以像普通函数一样调用和执行。生成器在每次迭代时产生一个值,并在下一次迭代时恢复执行。 在......
  • 【Python】 回文数的四种解法
    回文数就是指整数倒过来和原整数相等。1234Example1:  Input:121Output:true12345Example2:  Input:-121Output:falseExplanation:Fromlefttoright,itreads-121.Fromrighttoleft,itbecomes121-.Therefore......
  • python——面向对象——知识汇总
    面向对象技术简介类(Class): 用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。方法:类中定义的函数。类变量:类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外。类变量通常不作为实例变量使用。......
  • Python函数每日一讲1 - 一文让你彻底掌握Python中的frozenset函数
    引言在Python中,frozenset()函数是一个重要的工具,用于创建不可变的集合对象。本文将介绍frozenset()函数的语法、用法示例以及实际应用场景,帮助大家更好地理解和应用这个函数。语句概览frozenset()函数的语法如下:frozenset(iterable)其中,iterable是一个可迭代对象,例如......
  • Python 字符串格式化输出
    数字n:int=1000000000print(f'{n:_}')#1_000_000_000print(f'{n:,}')#1,000,000,000对齐var:str='var'#右对齐,使用_填充print(f'{var:_>20}')#_________________var#左对齐,使用#填充print(f'{var:#<20}�......
  • 关闭Windows网络连接状态指示器的活动测试 注册表 REG
    REG文件来关闭Windows网络连接状态指示器的活动测试:CopyCodeWindowsRegistryEditorVersion5.00[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NlaSvc\Parameters\Internet]"EnableActiveProbing"=dword:00000000该文件将向注册表添加一个名为"EnableActivePr......
  • Big-Yellow的算法工程师进阶之路
    Big-Yellow的算法工程师进阶之路一、基础算法二、基础数据结构2.1链表三、......