软测—直播教学—真题实战3,selenium自动化测试1

2023-11-05 11:50

本文主要是介绍软测—直播教学—真题实战3,selenium自动化测试1,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

试题单

1)场地设备要求
(1)预装 Windows 10 且内存 8 G 以上的PC机一台
(2)Selenium IDE 3.17 及以上
(3)Python 3.6 及以上
(4)虚拟机:电子商城系统
(5)PyCharm Community Edition 2020.3.4 x64 及以上
(6)素材:脚本设计说明

2)工作任务
现在,您作为测试员需要完成【素材】文件夹【脚本设计说明】中的脚本设计工作,需要按要求完成如下任务:
(1)安装和配置所需的自动化测试工具;
(2)利用自动化测试工具创建测试项目,录制测试脚本;
(3)增加指定的验证操作,确认系统功能正常;
(4)利用 PyCharm 编辑自动化测试工具录制的脚本,从指定的外部文件获取数据,运行 Pytest 测试。

最终的结果保存在如下目录:
(1)将Selenium IDE项目保存到考生文件夹的题号内,保存为 3.1.1.side。
(2)导出之后调整的 Python 脚本保存到考生文件夹的题号内,命名为 3.1.1.py。
(3)Python 运行结果截图保存为 3.1.1.jpg,保存到考生文件夹。

3)技能要求
(1)能按照测试计划安装和配置自动化测试管理工具
(2)能使用自动化测试工具进行脚本录制与回放
(3)能使用自动化测试工具进行检查点、同步点的设置
(4)能编写简单的自动化测试脚本程序

4)质量指标
(1)按照测试计划安装和配置自动化测试管理工具正确
(2)使用自动化测试工具进行脚本录制与回放正确
(3)使用自动化测试工具进行检查点、同步点的设置正确
(4)编写简单的自动化测试脚本程序正确

登录模块测试说明

A 公司正在开发的网上交易系统部署在Demo 服务器上,从素材文件夹的 WebDemo-master\demoapp 目录下的 server.py 可以打开需要测试的服务器。无论增加什么功能,都需要确保拥有合法登录 ID 和密码的用户能登录系统。因为该功能频繁被测试,所以需要使用自动化测试工具 Selenium IDE来录制登录的测试脚本。
首先,按照自动化测试工具并录制测试脚本,具体内容包括:
(1)在 Microsoft Edge 中安装和配置 Selenium IDE 进行录制测试
(2)新建自动测试的项目ServerLogin,以 Demo 服务器的 URL 作为测试目标,录制登录过程,其中用户名为demo,密码为mode1,测试模块命名为 invalidLogin
(3)增加一个验证操作,确认错误登录后会显示 Error Page 消息

接着,利用 PyCharm 编辑录制的脚本,利用数据驱动脚本,重复运行测试:
(1)将 Selenium IDE 项目中的 invalidLogin 模块导出为 Python 脚本,脚本中包含上面要测试的所有内容。
(2)适当调整 Python 脚本,使之能正确运行上述测试。
(3)在该 Python 脚本中,从素材文件夹的用户和密码列表文件 users.csv 导入数据,重复验证登录功能。该 csv 文件分为两列,第一列是用户名,第二列为密码,如下所示:
demo mode
John Public
Mary Smith
Henry Rogers
Thomas Bach

素材下载

步骤
1,把素材文件夹复制到虚拟机中,打开然后运行server文件
在这里插入图片描述
2,浏览器输入localhost:7272 就可以登录了
3,创建任务
在这里插入图片描述
在这里插入图片描述
3,开始录制
在这里插入图片描述
4,输入用户名密码 点击登录后结束录制
![在这里插入图片描述](https://img-blog.csdnimg.cn/01afc94d2876416890ca7dd5992da4ea.png
5,输入名称在这里插入图片描述
6,自己添加一步断言
在这里插入图片描述
7,导出
在这里插入图片描述
8,导出python文件在这里插入图片描述
在这里插入图片描述
等待加载第三方库加载完就可以运行了
在这里插入图片描述
在这里插入图片描述
1,用python 读取usr.csv

f=open(r'aaa.csv')
for line in f:testlin=line.strip().split(',')name=testlin[0]password=testlin[1]

2,加入到导出代码中
完整代码

注意缩进


# Generated by Selenium IDEimport time
import json
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.support import expected_conditions
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.desired_capabilities import DesiredCapabilitiesclass TestProject1():def setup_method(self, method):self.driver = webdriver.Chrome()self.vars = {}def teardown_method(self, method):self.driver.quit()def test_project1(self):path = 'usr.csv'f=open(r'aaa.csv')for line in f:testlin=line.strip().split(',')name=testlin[0]password=testlin[1]self.driver = webdriver.Chrome()self.driver.get("http://127.0.0.1:7272/")self.driver.set_window_size(1050, 840)self.driver.find_element(By.ID, "username_field").click()self.driver.find_element(By.ID, "username_field").send_keys(user)self.driver.find_element(By.ID, "password_field").click()self.driver.find_element(By.ID, "password_field").send_keys(password)self.driver.find_element(By.ID, "login_button").click()

这篇关于软测—直播教学—真题实战3,selenium自动化测试1的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/349667

相关文章

MyBatis分页查询实战案例完整流程

《MyBatis分页查询实战案例完整流程》MyBatis是一个强大的Java持久层框架,支持自定义SQL和高级映射,本案例以员工工资信息管理为例,详细讲解如何在IDEA中使用MyBatis结合Page... 目录1. MyBATis框架简介2. 分页查询原理与应用场景2.1 分页查询的基本原理2.1.1 分

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解

《使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解》本文详细介绍了如何使用Python通过ncmdump工具批量将.ncm音频转换为.mp3的步骤,包括安装、配置ffmpeg环... 目录1. 前言2. 安装 ncmdump3. 实现 .ncm 转 .mp34. 执行过程5. 执行结

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

使用Python实现Word文档的自动化对比方案

《使用Python实现Word文档的自动化对比方案》我们经常需要比较两个Word文档的版本差异,无论是合同修订、论文修改还是代码文档更新,人工比对不仅效率低下,还容易遗漏关键改动,下面通过一个实际案例... 目录引言一、使用python-docx库解析文档结构二、使用difflib进行差异比对三、高级对比方

Three.js构建一个 3D 商品展示空间完整实战项目

《Three.js构建一个3D商品展示空间完整实战项目》Three.js是一个强大的JavaScript库,专用于在Web浏览器中创建3D图形,:本文主要介绍Three.js构建一个3D商品展... 目录引言项目核心技术1. 项目架构与资源组织2. 多模型切换、交互热点绑定3. 移动端适配与帧率优化4. 可

从原理到实战解析Java Stream 的并行流性能优化

《从原理到实战解析JavaStream的并行流性能优化》本文给大家介绍JavaStream的并行流性能优化:从原理到实战的全攻略,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的... 目录一、并行流的核心原理与适用场景二、性能优化的核心策略1. 合理设置并行度:打破默认阈值2. 避免装箱

Python自动化处理PDF文档的操作完整指南

《Python自动化处理PDF文档的操作完整指南》在办公自动化中,PDF文档处理是一项常见需求,本文将介绍如何使用Python实现PDF文档的自动化处理,感兴趣的小伙伴可以跟随小编一起学习一下... 目录使用pymupdf读写PDF文件基本概念安装pymupdf提取文本内容提取图像添加水印使用pdfplum

Maven中生命周期深度解析与实战指南

《Maven中生命周期深度解析与实战指南》这篇文章主要为大家详细介绍了Maven生命周期实战指南,包含核心概念、阶段详解、SpringBoot特化场景及企业级实践建议,希望对大家有一定的帮助... 目录一、Maven 生命周期哲学二、default生命周期核心阶段详解(高频使用)三、clean生命周期核心阶

基于Python实现自动化邮件发送系统的完整指南

《基于Python实现自动化邮件发送系统的完整指南》在现代软件开发和自动化流程中,邮件通知是一个常见且实用的功能,无论是用于发送报告、告警信息还是用户提醒,通过Python实现自动化的邮件发送功能都能... 目录一、前言:二、项目概述三、配置文件 `.env` 解析四、代码结构解析1. 导入模块2. 加载环