06-一个Python文件的初始化、清除

  • 一个Python文件的初始化清除
  1 from time import sleep
  2 from lib.webui import *
  3 
  4 
  5 def suite_setup():
  6     INFO('suite_setup')
  7     open_browser()
  8     mgr_login()
  9 
 10 
 11 def suite_teardown():
 12     INFO('suite_teardown')
 13     wd = GSTORE['wd']
 14     wd.quit()
 15 
 16 
 17 class UI_0101:
 18     name = '检查操作菜单 UI_0101'
 19 
 20     # 初始化方法
 21     def setup(self):
 22         INFO('UI_0101 setup')
 23 
 24     # 清除方法
 25     def teardown(self):
 26         INFO('UI_0101 teardown')
 27 
 28     def teststeps(self):
 29         STEP(1, '获取左边菜单栏')
 30         wd = GSTORE['wd']
 31         eles = wd.find_elements(By.CSS_SELECTOR, '.sidebar-menu span')
 32         menuText = [ele.text for ele in eles]
 33         INFO(menuText)
 34         STEP(2, '检查左边菜单栏')
 35         CHECK_POINT('检查菜单是否正确', ['客户', '药品', '订单'] == menuText[:3])
 36 
 37 
 38 class UI_0102:
 39     name = '添加客户 UI_0102'
 40 
 41     # 初始化方法
 42     def setup(self):
 43         INFO('UI_0102 setup')
 44 
 45     # 清除方法
 46     def teardown(self):
 47         INFO('UI_0102 teardown')
 48 
 49     def teststeps(self):
 50         STEP(1, '点击左侧客户菜单')
 51         wd = GSTORE['wd']
 52         # 先找到上层节点,缩小查找范围
 53         sidebarMenu = wd.find_element(By.CLASS_NAME, 'sidebar-menu')
 54 
 55         # 再找到内部元素
 56         elements = sidebarMenu.find_elements(By.TAG_NAME, 'span')
 57 
 58         # 第一个span对应的菜单是 客户,点击它
 59         elements[0].click()
 60 
 61         STEP(2, '添加客户')
 62 
 63         # 点击添加客户按钮
 64         wd.find_element(By.CLASS_NAME, 'glyphicon-plus').click()
 65 
 66         # form-contorl 对应3个输入框
 67         inputs = wd.find_elements(By.CSS_SELECTOR, '.add-one-area .form-control')
 68 
 69         # 输入客户姓名
 70         inputs[0].send_keys('南京中医院')
 71         # 输入联系电话
 72         inputs[1].send_keys('2551867858')
 73         # 输入客户描述
 74         inputs[2].send_keys('江苏省-南京市-秦淮区-汉中路-16栋504')
 75 
 76         # 第1个 btn-xs 就是创建按钮, 点击创建按钮
 77         wd.find_element(By.CSS_SELECTOR, '.add-one-area .btn-xs').click()
 78 
 79         # 等待1秒
 80         sleep(1)
 81 
 82         STEP(3, '检查添加信息')
 83 
 84         # 找到 列表最上面的一栏
 85         item = wd.find_elements(By.CLASS_NAME, 'search-result-item')[0]
 86 
 87         fields = item.find_elements(By.TAG_NAME, 'span')[:6]
 88 
 89         texts = [field.text for field in fields]
 90         INFO(texts)
 91 
 92         # 预期内容为
 93         expected = [
 94             '客户名:',
 95             '南京中医院',
 96             '联系电话:',
 97             '2551867858',
 98             '地址:',
 99             '江苏省-南京市-秦淮区-汉中路-16栋504'
100         ]
101 
102         CHECK_POINT('客户信息和添加内容一致 ',
103                     texts == expected)
  • 执行顺序依次是suite_setup>用例1的初始化、步骤、清除>用例2的初始化、步骤、清除>suite_teardown
  • 我们这里用例1、用例2的初始化清除只是做了打印,并未做任何其他操作,让大家理解一下单个Python文件的初始化清除执行顺序

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/877905.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

DeepSeekV3+Roo Code,智能编码好助手

前言 硅基流动最近上线了deepseek-ai/DeepSeek-R1与deepseek-ai/DeepSeek-V3,感兴趣快来试试吧! 邀请注册得14元不过期额度:https://cloud.siliconflow.cn/i/Ia3zOSCU。实践 最近VS Code中的自动编程插件Cline很火爆,Roo Code也是Cline的一个fork版本。 Cline 自主编码代理…

Cisco Catalyst 8000V Edge Software, IOS XE Release 17.16.1a ED - 思科虚拟路由器系统软件

Cisco Catalyst 8000V Edge Software, IOS XE Release 17.16.1a ED - 思科虚拟路由器系统软件Cisco Catalyst 8000V Edge Software, IOS XE Release 17.16.1a ED 思科 Catalyst 8000V 边缘软件 - 虚拟路由器 请访问原文链接:https://sysin.org/blog/cisco-catalyst-8000v/ 查看…

Cisco Catalyst 8000 Series Edge Platforms, IOS XE Release 17.16.1a ED - 思科路由器系统软件

Cisco Catalyst 8000 Series Edge Platforms, IOS XE Release 17.16.1a ED - 思科路由器系统软件Cisco Catalyst 8000 Series Edge Platforms, IOS XE Release 17.16.1a ED 思科 Catalyst 8000 边缘平台系列 IOS XE 系统软件 请访问原文链接:https://sysin.org/blog/cisco-cat…

Easysearch 集群通过 API 进行用户密码重置

在日常使用 Easysearch 中,难免会遇到集群密码需要重置的情况(如密码遗失、安全审计要求等)。 通过查看 Easysearch 用户接口文档,创建用户使用如下接口: PUT _security/user/<username> {"password": "adminpass","roles": ["m…

Elasticvue:一款轻量级的Elasticsearch可视化管理工具

Elasticvue是一款免费开源的Elasticsearch GUI工具,你可以使用它来管理ES里的数据, Elasticvue具有多种安装形式,我们这里采用最简单的Docker安装方式,其他版本如Winodws、MacOS、Linux和浏览器插件。 Elasticvue相比Kibana的优势主要体现在以下几个方面: 1、 轻量级与易用…

【攻防3.0 】信任攻击

Author: sm0nk@深蓝攻防实验室 上周在一个技术沙龙我分享了一个攻防相关议题——进击的白巨人,在此归档。一、进攻场景思考 无论是端侧产品还是流量侧产品、亦或是原生安全还是外挂式,主模式还是鉴黑和鉴白; 随着防守方强化的安全建设,安全产品越来越强,进攻的难度在增加;…

[2025.2.1 MySQL学习] MVCC

MVCC 基本概念当前读(直接读取数据页最新版本):读取的是记录的最新版本,读取时还要保证其他并发事务不能修改当前记录,会对读取的记录进行加锁。对于一些日常操作,如:select...lock in share mode、select ... for update、update、isnert、delete都是一种当前读快照读:…

母婴app

您好!这是一个非常全面的母婴健康管理APP构想。让我帮您从技术角度分析并提供一个基础的项目结构建议。 技术架构建议 1. 前端技术栈:- iOS: Swift/SwiftUI - Android: Kotlin - 跨平台选项: Flutter/React Native2. 后端技术栈:- 主服务框架: Spring Boot - 数据库: - MySQL …

毕设学习第六天SSM框架之Spring5

虽然目前spring已经出现了6但是现如今大多数应用的还是spring5,因此毕设学习选择Spring5而非6 spring简介Spring 是一个开源的 Java 企业级应用开发框架,旨在简化企业级 Java 应用的开发过程。它通过控制反转(IOC)和面向切面编程(AOP)等核心技术,帮助开发人员构建松耦合…

心态急躁,什么事都做不成

春节这几天,心态有些急躁。也许是突如其来的放松让大脑不适应,最近做事(尤其是打游戏)不顺。 比如体现在炉石酒馆,农,围棋这三者上。这三个是2/1号我从外面回来之后进行的三项娱乐活动。 首先先打了几把炉石,一把速七,两把速八,再加上之前的两把速七速八,让我直接从8…

【风控】风控测试的质效提升之路

# 货拉拉 随着货拉拉业务的迅猛发展,平台每时每刻都面临着黑产的攻击和挑战。为了保障业务安全和稳健地发展,风控作为抗击黑产的前线,负责各项业务的风险识别和阻断工作。同时,各类业务的接入以及风控策略的高强度迭代,也给风控的质量保障和交付效率带来了挑战。如何在保障…

Windows环境变量列表变成老式的横行封号分割PATH路径不方便

前言全局说明win11上环境变量的增、删、改有了专用的列表框,每行一个的环境变量,观察也非常方便。 但有的时候设置完变量,再次打开PATH环境变量,就变成以前win7那样的所有环境变量都在一行,用封号分割了,非常不方便。一、说明 1.1 环境: Windows 11 家庭版 23H2 22631.37…