【功能自动化】自动识别测试用例

1.创建unitWebtours.py

将unitWebtours.py放在test文件夹下

unitWebtours.py

代码实现

from selenium import webdriver
from selenium.webdriver.support.select import Select
from time import sleep
import unittestdriver = Noneclass Webtours(unittest.TestCase):@classmethoddef setUpClass(cls):global driverdriver = webdriver.Chrome()@classmethoddef tearDownClass(cls):driver.quit()def test1OpenWeb(self):u'''打开网站'''driver.get("http://127.0.0.1:1080/WebTours/")# 等待3秒sleep(3)driver.switch_to.default_content()driver.switch_to_frame("body")driver.switch_to_frame("info")actual = driver.find_element_by_tag_name("body").text# expect = 'Welcome to the Web Tours site.'# # 精确匹配用in 否则用in # if expect in actual:#     print("打开网站:成功")# else:#     print("打开网站:失败") def test2Loginin(self):u'''登录'''driver.switch_to.default_content()driver.switch_to_frame("body")driver.switch_to_frame("navbar")# 登录yhm = 'admin'mm = '123456'# 输入用户名driver.find_element_by_name("username").send_keys(yhm)# 输入密码driver.find_element_by_name("password").send_keys(mm)# 点击登录driver.find_element_by_name("login").click()sleep(3)# 切换框架driver.switch_to.default_content()driver.switch_to_frame("body")driver.switch_to_frame("info")expect = "Welcome, "+yhmactual = driver.find_element_by_tag_name("body").text# # 精确匹配用in 否则用in # if expect in actual:#     print("登录:成功")# else:#     print("登录:失败")def test3Search(self):u'''搜票'''driver.switch_to.default_content()driver.switch_to_frame("body")driver.switch_to_frame("navbar")driver.find_element_by_xpath('//img[@alt="Search Flights Button"]').click()sleep(3)def test4Book(self):u'''订票'''# 预定票driver.switch_to.default_content()driver.switch_to_frame("body")driver.switch_to_frame("info")Select(driver.find_element_by_name("depart")).select_by_visible_text="London"# select_by_value 值是看不见的Select(driver.find_element_by_name("arrive")).select_by_visible_text="Paris"driver.find_element_by_name("findFlights").click()sleep(1)# 查看预定的航班信息driver.find_elements_by_name("outboundFlight")[0].click()driver.find_element_by_name("reserveFlights").click()sleep(1)# 支付信息driver.find_element_by_name("buyFlights").click()sleep(1)# 切换框架expect = "Flight 240 leaves London for Paris"actual = driver.find_element_by_tag_name("body").text# 精确匹配用in 否则用in # if expect in actual:#     print("订票:成功")# else:#     print("订票:失败")#预定下一个driver.find_element_by_name("Book Another").click()sleep(1)def test5Logoff(self):u'''注销'''# 切换框架driver.switch_to.default_content()driver.switch_to_frame("body")driver.switch_to_frame("navbar")driver.find_element_by_xpath('//img[@alt="SignOff Button"]').click()sleep(1)# 切换框架driver.switch_to.default_content()driver.switch_to_frame("body")driver.switch_to_frame("info")expect = "sign up now"actual = driver.find_element_by_tag_name("body").text# 精确匹配用in 否则用in # if expect in actual:#     print("注销:成功")# else:#     print("注销:失败")if __name__=="__main__":# verbosity=2 显示详细信息,可以省略,测试信息不详细unittest.main(verbosity=2)

2.使用测试套件运行测试函数

代码实现

import unittestsuite = unittest.TestSuite()
tests = unittest.defaultTestLoader.discover('./test',pattern='unit*.py')
suite.addTests(tests)
runner = unittest.TextTestRunner(verbosity=2)
runner.run(suite)

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

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

相关文章

Ubuntu24.04 安装向日葵远程访问工具

目录 安装向日葵远程访问工具 解决方案: 1.下载软件包 2.远程Ubuntu桌面控制卡住 卸载向日葵远程访问工具 安装向日葵远程访问工具 安装命令:sudo dpkg -i 文件名.deb sudo dpkg -i SunloginClient_15.2.0.63064_amd64.deb 提示错误如下&#xf…

三级_网络技术_54_应用题

一、 请根据下图所示网络结构回答下列问题。 1.填写路由器RG的路由表项。 目的网络/掩码长度输出端口__________S0(直接连接)__________S1(直接连接)__________S0__________S1__________S0__________S1 2.如果将10.10.67.128/2…

在 CentOS 7 上安装 LNMP 环境:MySQL 8.0、PHP 8.3 和 ThinkPHP 8.0

在 CentOS 7 上安装 LNMP 环境,并配置 MySQL 8.0、PHP 8.3 以及 ThinkPHP 8.0,能够为你的 web 应用程序提供一个强大的开发和运行环境。下面是详细的安装步骤: --- ## 在 CentOS 7 上安装 LNMP 环境:MySQL 8.0、PHP 8.3 和 Thin…

基于Leaflet Legend的图例数据筛选实践-以某市教培时空分布为例

目录 前言 一、关于Leaflet.Legend组件 1、Legend组件的主要参数 2、相关参数 二、Legend图例可视化控制 1、违规教培信息的管理 2、违规培训信息时空可视化及图例渲染控制 3、成果展示 三、总结 前言 在很多的地理时空分析系统中,我们经常会遇到一些需求。…

第一次使用PyCharm写C++(失败)

前言: 由于我已经非常习惯使用PyCharm远程连接服务器了,我认为非常方便,所以希望C也能直接用Pycharm。于是尝试在PyCharm上部署C环境。 但是,我失败了。如果您知道问题所在,欢迎给我留言。我认为Pycharm并没有编译C/C…

Fedora koji构建系统详细教程之二 -- 构建

写在前面 本篇文章是上一篇文章的继续,由于koji里面的内容实在是太多,都塞进一篇文章里会显得很臃肿,于是我就拆成了两部分。在上一篇文章里,我们已经部署好了Fedora koji系统,此时kojihub已经运行、可以通过kojiweb或…

IOS开发 铃声制作(库乐队)

IOS开发,实现铃声制作功能。 在IOS端,要设置铃声都是通过库乐队来制作的。 先看一下库乐队中铃声的文件结构。下面是弄的一个示例的文件,文件信息如下: 我们右击文件,点击显示包内容如下: 能看到一个aiff格…

Clickhouse集群化(一)k8s集群搭建

环境准备: vm 17 pro 有些功能必须pro版本才会提供(https://download.csdn.net/download/weixin_40663313/89677277?spm1001.2014.3001.5501)夸克下载链接 centos 7.9 docker:1.26 k8s:1.21.14 1. 创建虚拟机 …

2022 年高教社杯全国大学生数学建模竞赛-C 题 古代玻璃制品的成分分析与鉴别详解+分类模型Python代码源码

前言 简单介绍一下我自己:博主专注建模四年,参与过大大小小数十来次数学建模,理解各类模型原理以及每种模型的建模流程和各类题目分析方法。参与过十余次数学建模大赛,三次美赛获得过二次M奖一次H奖,国赛二等奖。**提…

游戏引擎详解——图片

图片 图片的格式 图片文件格式pngjpg 纹理压缩格式ETC1/2PVRTCASTC 图片的属性 图片属性解释分辨率宽高像素值(pt),如:1024*1024位深度用来存储像素颜色的值,如RGBA8888,红黄蓝透明度4个维度每个8bit&…

深度解析HarmonyOS SDK实况窗服务源码,Get不同场景下的多种模板

HarmonyOS SDK实况窗服务(Live View Kit)作为一个实时呈现应用服务信息变化的小窗口,遍布于设备的各个使用界面,它的魅力在于将复杂的应用场景信息简洁提炼并实时刷新,在不影响当前其他应用操作的情况下,时…

脑波传感与认知计算的深入探讨

随着神经科学和计算机技术的不断发展,脑波传感与认知计算逐渐成为研究的前沿领域。脑波传感技术可以捕捉人类大脑的电活动,从而解读大脑的思维过程和认知状态;而认知计算则通过模拟人类的思维方式来进行信息处理和决策。这两个领域的结合&…

红蓝对抗,你懂得多少?

红蓝对抗,你懂得多少? “HW行动”是国家应对网络安全问题所做的重要布局之一。“HW行动”从2016年开始,随着我国对网络安全的重视,涉及单位不断扩大,越来越多的单位都加入到HW行动中。2024年HW行动就在眼前&#xff0…

【RPC基础知识】

定义 RPC(Remote Procedure Call) 即远程过程调用,通过名字我们就能看出 RPC 关注的是远程调用而非本地调用。 为什么要 RPC ? 因为,两个不同的服务器上的服务提供的方法不在一个内存空间,所以&#xff…

MVC与设计模式理解-lnmp学习之路

一、MVC 前言: MVC是一种应用架构模式,也可以说是一种业务架构或是一种应用设计思想,用于组织业务逻辑并分离代码的。 MVC组成结构是Model-View-Controller,Model是管控数据层,View是管控视图层,Controlle…

基于矢量光场的光学加工技术

欢迎关注GZH《光场视觉》 摘要:作为光的一个基本属性,偏振、振幅和相位提供的自由度对光场调控具有重要作用。具有空间结构偏振态、振幅和相位分布的矢量光场因其具有不同于传统光场的独特性质而被应用于诸多领域。近年来,时空分布特性更加丰…

合宙LuatOS开发板使用手册——Air700EAQ

EVB-Air700EL&700EY 开发板是合宙通信推出的基于 Air700EL&700EY 模组所开发的, 包含电源,SIM 卡,USB,PCB 天线等必要功能的最小硬件系统。 以方便用户在设计前期对 模块进 行性能评估,功能调试,软…

“面试宝典:高频算法题目详解与总结”

干货分享,感谢您的阅读! (暂存篇---后续会删除,完整版和持续更新见高频面试题基本总结回顾(含笔试高频算法整理)) 备注:引用请标注出处,同时存在的问题请在相关博客留言…

JavaScript 的进阶概念补充:V8 引擎的垃圾回收机制

JavaScript 的进阶概念补充:V8 引擎的垃圾回收机制 JavaScript 的垃圾回收机制在各大浏览器中实现有所不同,其中 V8 引擎(Google Chrome 和 Node.js 中使用的 JavaScript 引擎)尤为知名。理解 V8 引擎的垃圾回收机制,…

Linux_kernel简介01

--------------------------------------------------------- 力扣专题 --------------------------------------------------------- 一、嵌入式开发 1、ARM的历史 ARM原本含义(Acom RISC Machine)后来Acron公司独立出了ARM部门,成立了ARM公司(Advan…