当前位置: 首页 > news >正文

W30-python03-pytest+selenium+allure访问百度网站实例

此篇文章为总结性,将pystest、selenium、allure结合起来

功能如下,web自动化,输入baidu网站,搜索“雷军”、打开网页中第一条内容

tools.webkeys 相关文件见附件。

pytestsel.py如下:

import time
import re
import allure
import pytest
from tools.webkeys import Web@allure.feature('#1 电商测试用例demo')
class Test_Obj:def setup_class(self):self.web = Web()self.web.open_browser()@allure.story('#1 打开百度')def test_baidu(self):allure.dynamic.title('登录')allure.dynamic.description('登录百度的描述')with allure.step('输入网址'):self.web.get_url('http://www.baidu.com')time.sleep(3)with allure.step('输入搜索关键字'):self.web.input('kw','雷军')time.sleep(3)with allure.step('点击搜索'):self.web.click('su')time.sleep(3)with allure.step('获取outerHTML'):str = self.web.get_attribute('content_left','outerHTML')allure.attach(self.web.driver.get_screenshot_as_png(), '执行成功', allure.attachment_type.PNG)with allure.step('跳转到第一个链接'):reg = r'mu="(.*?)"\s'url = re.findall(reg, str)self.web.get_url(url[0])allure.attach(self.web.driver.get_screenshot_as_png(), '执行成功', allure.attachment_type.PNG)time.sleep(10)self.web.driver.quit()

程序执行入口

import osimport pytestif __name__ == '__main__':#window下删除报告的命令os.system('rd /s/q result')os.system('rd /s/q result')# pytest.main(['-s', 'pytestallure.py', '--alluredir', './result'])pytest.main(['-s', 'pytestsel.py', '--alluredir', './result'])os.system('allure generate result -o report --clean')

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • SpringBoot中如何使用RabbitMq
  • NVIDIA Drivers、CUDA、Pytorch安装
  • linux--mount--挂载
  • Spring踩坑:抽象类作为父类,使用子类@Autowired属性进行填充,属性值为null
  • 【CI/CD】docker + Nginx自动化构建部署
  • c++线程传参
  • KCache-go本地缓存,支持本地缓存过期、缓存过期自维护机制。
  • Chrome谷歌浏览器Console(控制台)显示文件名及行数
  • Open3D 计算点云的占地面积
  • HarmonyOS NEXT零基础入门到实战-第四部分
  • 速盾:cdn能防御ddos吗?
  • Codeforces Round 874 (Div. 3)(A~D题)
  • 掌握AJAX技术:从基础到实战
  • reduceByKey 函数详解
  • 1-如何挑选Android编译服务器
  • hexo+github搭建个人博客
  • [nginx文档翻译系列] 控制nginx
  • 002-读书笔记-JavaScript高级程序设计 在HTML中使用JavaScript
  • 10个最佳ES6特性 ES7与ES8的特性
  • Docker下部署自己的LNMP工作环境
  • exif信息对照
  • Java 最常见的 200+ 面试题:面试必备
  • Javascript Math对象和Date对象常用方法详解
  • Linux快速配置 VIM 实现语法高亮 补全 缩进等功能
  • mac修复ab及siege安装
  • Otto开发初探——微服务依赖管理新利器
  • WePY 在小程序性能调优上做出的探究
  • 从零开始的webpack生活-0x009:FilesLoader装载文件
  • 大数据与云计算学习:数据分析(二)
  • 关于Android中设置闹钟的相对比较完善的解决方案
  • 基于axios的vue插件,让http请求更简单
  • 简单基于spring的redis配置(单机和集群模式)
  • 将 Measurements 和 Units 应用到物理学
  • 排序(1):冒泡排序
  • 提醒我喝水chrome插件开发指南
  • 体验javascript之美-第五课 匿名函数自执行和闭包是一回事儿吗?
  • 我看到的前端
  • 栈实现走出迷宫(C++)
  • #FPGA(基础知识)
  • #我与Java虚拟机的故事#连载10: 如何在阿里、腾讯、百度、及字节跳动等公司面试中脱颖而出...
  • #职场发展#其他
  • $refs 、$nextTic、动态组件、name的使用
  • (2.2w字)前端单元测试之Jest详解篇
  • (Qt) 默认QtWidget应用包含什么?
  • (第8天)保姆级 PL/SQL Developer 安装与配置
  • (附源码)springboot太原学院贫困生申请管理系统 毕业设计 101517
  • (黑客游戏)HackTheGame1.21 过关攻略
  • (三)c52学习之旅-点亮LED灯
  • (三)mysql_MYSQL(三)
  • (十八)SpringBoot之发送QQ邮件
  • (提供数据集下载)基于大语言模型LangChain与ChatGLM3-6B本地知识库调优:数据集优化、参数调整、Prompt提示词优化实战
  • (转)fock函数详解
  • (转)GCC在C语言中内嵌汇编 asm __volatile__
  • (自用)gtest单元测试
  • .Net core 6.0 升8.0