pytest自动化框架
文章平均质量分 85
只要名字够长就有猪跟着念
一直游吧 直到海水变蓝
展开
-
UI自动化框架搭建以及面试题详解(上)
是指把一个具体的页面转化为编程语言当中的一个对象,页面特性转化成对象属性,页面操作转化为对象方法。1)把每个页面当成一个对象,页面层写定位元素方法和页面操作方法2)用例层从页面层调用操作方法,写成用例3)可以做到定位元素与脚本的分离4)主要用来实现对页面操作和测试逻辑的一个分离。原创 2024-04-06 11:08:29 · 1180 阅读 · 0 评论 -
UI自动化测试重点思考(下)--装饰器/生成器/夹具的使用/描述符的作用/ddt驱动/多线程
装饰器是一个函数A,函数A的传参是函数B,且函数A内部还有一个函数C,且函数A返回一个函数C,函数C是包含函数B的。1.只要是实现了yield关键字的函数都是一个生成器2.生成器的特点是,当调用者执行到yield就会卡住,然后把yield后面的参数返回给调用者3.当接收到next()函数的命令的时候才会执行yield关键字下面的代码描述符是实现了特定协议的类,它至少包含get()、set() 和delete() 中的一个方法。原创 2024-04-05 21:06:53 · 912 阅读 · 0 评论 -
UI自动化测试重点思考(中)--失败用例重跑/多句柄跳转/文件上传/定位难点
经常会遇到如登录功能,其中会出现一个中间的跳转页面,如果你的代码在执行完登录之后直接进行登录成功页面的操作的时候,必然会出现定位不到元素的问题,这时候隐式和显示等待都不起作用,主要原因就是新的页面还是出现,只能使用强制等待(time.sleep(5)),才能跳过中间页面,等登录成功页面刷新出来之后再进行定位即可。在大多数的情况下,在页面的源代码中只能找到一个input的元素,如果是在界面中可以直接看到这个元素时,当你想要上传文件的话,可以通过 selenium 的。方法切换到目标 frame。原创 2024-04-05 16:30:35 · 1160 阅读 · 0 评论 -
UI自动化测试重点思考(上)--元素定位/验证码/测试框架
序号方法名描述1通过 ID 属性定位单个元素2通过名称属性定位单个元素3通过 XPath 表达式定位单个元素4通过链接文本定位单个元素5通过部分链接文本定位单个元素6通过标签名称定位单个元素7通过类名定位单个元素8通过 CSS 选择器定位单个元素9通过 ID 属性定位多个元素10通过名称属性定位多个元素11通过 XPath 表达式定位多个元素12通过链接文本定位多个元素13通过部分链接文本定位多个元素14通过标签名称定位多个元素15。原创 2024-04-05 11:35:34 · 1248 阅读 · 0 评论 -
pytest框架的封装以及用例管理框架
在大型项目中,自动化测试的比例通常会进一步增加,占总测试工作量的 50% 到 80% 或更多。因此,团队会投入更多的资源和精力来建立和维护自动化测试框架,并加强自动化测试的覆盖范围。在中型项目中,自动化测试的比例可能会增加,大约占总测试工作量的 30% 到 50%。因此,团队会倾向于增加自动化测试的覆盖范围,以提高测试效率和稳定性。这是因为在小型项目中,通常会有较少的功能和交互,因此自动化测试的需求相对较少。在小型项目中,自动化测试的比例可能较低,大约占总测试工作量的。1.元素是否加载完成。原创 2024-03-24 16:13:06 · 1095 阅读 · 0 评论 -
全面熟练Requests库以及底层方法调用逻辑
这是一个可变数量的关键字参数,允许你传递任意数量的其他参数给函数。表示接受任意数量的关键字参数,这些参数将被传递给底层的 HTTP 库,以便进行定制化的配置。表示接受任意数量的关键字参数,这些参数将被传递给底层的 HTTP 库,以便进行定制化的配置。,默认为 None,表示要作为 JSON 数据发送的内容,通常是一个字典或类似字典的对象。,默认为 None,表示要作为查询参数发送的数据,通常是一个字典或类似字典的对象。,默认为 None,表示要作为表单数据发送的内容,通常是一个字典或类似字典的对象。原创 2024-03-24 14:41:50 · 2445 阅读 · 0 评论 -
pytest之yaml格式测试用例读写封装
pytest.mark.parametrize(“参数名”,列表数据)参数名:用来接收每一项数据,并作为测试用例的参数。Map为字典,一对key:value键值对。列表数据:一组测试数据。使用‘-’表示列表。原创 2024-03-23 17:42:04 · 1000 阅读 · 0 评论 -
pytest之fixture结合conftest.py文件使用+断言实战
这种情况下如果我们把测试夹具定义在某一个模块中则无法实现共享,针对这种情况,我们可以把需要共享的测试夹具放入一个单独的 conftest.py 文件中 ,这样多个可以实现多个测试模块共享了。夹具定义可以通过参数 scope 指定夹具的级别,如果不指定夹具级别,scope 默认值为 function(用例级别)用例级别:scope = function。在一个项目的测试中,大多数情况下会有多个。模块级别:scope = module。文件的测试用例的规则去查找用例并执行,4查i间py文件中是含有。原创 2024-03-23 10:39:09 · 776 阅读 · 0 评论 -
pytest全局配置+前后只固件配置
pytest.ini是pytest单元测试框架的核心配置文件。使用@pytest.fixture装饰器实现部分用例的前后置。package/session:在整个项目会话之前和之后执行。scope:表示被装饰器标记的方法的作用域。autouse:自动执行,默认是false。function:在函数之前和之后执行。class:在类之前和之后执行。原创 2024-03-22 19:37:22 · 793 阅读 · 0 评论 -
pytest简介以及命令行执行
pytest有很多强大的插件(生成html格式的自动化测试报告)(测试用例分布式执行,多cpu分发)(用于改变测试用例的执行顺序)(用例失败后重跑)(用于生成美观的测试报告)原创 2024-03-22 11:21:58 · 1068 阅读 · 0 评论