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

【测试】商城系统---测试报告

🌻个人主页:路飞雪吖~

       🌠专栏:测试


目录

一、报告简述

1、项目背景

2、测试目的

(1)功能验证

(2)用户体验优化

(3)系统稳定性保障

(4)安全性加固

(5)兼容性确认

二、测试用例

三、手动测试

1、用户注册

2、用户登录

3、商城首页

4、商品详情页

5、商品全部分类

6、个人中心

7、购物车

8、我的订单

四、兼容性测试

五、自动化测试

1. 项目结构

2. 项目的各个具体实现代码

(1)Utils.py

(2)SS_RegisterTest.py

(3)SS_LoginTest.py

(4)SS_HomePageTest.py

(5)SS_ProductDetailTest.py

(6)SS_AllProductListTest.py

(7)SS_UserCenterTest.py

(8)SS_ShoppingCarTest.py

(9)SS_MyOrdersTest.py

六、性能测试

1、单一接口测试

(1)搜索事务

(2)商城首页事务

(3)分类栏事务

(4)商品详情信息事务

(5)个人中心事务

(6)购物车和购买事务

(7)收藏事务

2、聚合报告

3、TPS曲线分析

4、响应时间统计与可视化

5、活跃线程数趋势

6、性能测试报告

七、Bug描述

1、商城首页页面

2、全部分类功能页面

3、商品详情页

4、购物车页面

5、支付页面

6、个人中心页面

7、我的地址页面

八、测试总结


一、报告简述

1、项目背景

本项目为电商商城系统,旨在为用户提供便捷的在线购物体验。系统包含商品展示、用户管理、购物车、订单处理、支付集成、后台管理等核心功能模块,支持多用户并发访问和交易处理。

2、测试目的

(1)功能验证

核心业务功能验证

  • 用户注册、登录、个人信息管理功能完整性;

  • 商品浏览、搜索、分类展示功能准确性;

  • 购物车添加、修改、删除商品功能正确性;

  • 订单创建、支付流程验证;

  • 系统设置:界面风格、安全设置;

(2)用户体验优化

界面交互体验

  • 页面加载速度和响应时间优化;

  • 操作流程简洁性和直观性评估;

  • 移动端适配和触控操作友好性;

用户操作便利性

  • 关键功能操作步骤简化;

  • 错误提示信息明确性和指导性;

  • 导航结构和信息架构合理性;

(3)系统稳定性保障

性能稳定性

  • 系统在高并发访问下的稳定性表现;

  • 长时间运行的内存泄漏和资源释放;

  • 数据库连接池管理和事务处理可靠性;

容错能力

  • 服务异常时的降级和恢复机制;

  • 网络中断后的数据同步和状态恢复;

  • 第三方服务不可用时的应对策略;

(4)安全性加固

数据安全保护

  • 用户敏感信息加密存储和传输;

  • SQL注入、XSS跨站脚本等Web安全防护;

  • 支付环节的数据加密和防篡改机制;

权限控制

  • 用户角色权限划分和访问控制;

  • 越权操作检测和防护;

  • 会话管理和超时处理安全性;

(5)兼容性确认

浏览器兼容性

  • Chrome、Firefox、Edge等主流浏览器兼容;

  • 不同浏览器版本的功能一致性;

设备兼容性

  • 桌面端不同分辨率显示适配;

  • 移动端iOS和Android系统兼容;

  • 平板设备横竖屏显示优化;

环境兼容性

  • 不同操作系统(Windows、macOS、Linux)兼容;

  • 网络环境(WiFi、4G/5G)下的功能稳定性;

二、测试用例

商城系统测试用例脑图链接:商城系统测试用例脑图

三、手动测试

1、用户注册

测试场景一:点击首页的“注册”,跳转到注册页面,填写相应的注册信息:用户名、登录密码、验证码,勾选阅读并同意,点击“注册”。

预测结果:注册成功,直接跳转到刚注册的用户页面上。

测试场景二:点击首页的“注册”,跳转到注册页面,未填写:用户名

预测结果:提示:请使用字母、数字、下划线2~18个字符

测试场景三:点击首页的“注册”,跳转到注册页面,未填写:登录密码

预测结果:提示:密码格式6~18个字符之间

测试场景四:点击首页的“注册”,跳转到注册页面,未填写:验证码

预测结果:提示:请输入有效的图形验证码

测试场景五:点击首页的“注册”,跳转到注册页面,输入的用户名:<2 个字符

预测结果:提示:请使用字母、数字、下划线2~18个字符

测试场景六:点击首页的“注册”,跳转到注册页面,输入的登录密码: <6 个字符

预测结果:提示:密码格式6~18个字符之间

测试场景七:点击首页的“注册”,跳转到注册页面,输入错误的验证码

预测结果:提示:请输入有效的图形验证码

2、用户登录

测试场景一:点击首页的“登录”,跳转到登录页面,登录信息:登录账号、登录密码、验证码,点击“登录”

预测结果:提示:登录成功,页面跳转到登录成功的商城首页面。

测试场景二:点击首页的“登录”,跳转到登录页面,未输入:登录账号

预测结果:提示:请输入登录账号。

测试场景三:点击首页的“登录”,跳转到登录页面,未输入:登录密码

预测结果:提示:密码格式6~18个字符之间

测试场景四:点击首页的“登录”,跳转到登录页面,未输入:验证码

预测结果:提示:请输入有效的图形验证码

测试场景五:点击首页的“登录”,跳转到登录页面,输入错误的登录账号

预测结果:提示:账号不存在

测试场景六:点击首页的“登录”,跳转到登录页面,输入错误的登录密码

预测结果:提示:密码错误

测试场景七:点击首页的“登录”,跳转到登录页面,输入错误的验证码

预测结果:提示:验证码错误

3、商城首页

测试场景一:未登录的首页,点击“个人中心”

预测结果:跳出弹窗,提示进行登录

测试场景二:未登录的首页,点击”我的商城“,点击“我的订单”

预测结果:跳转到登录页面

测试场景三:未登录的首页,点击“我的收藏”,点击商品收藏

预测结果:跳转到登录页面

测试场景四:未登录的首页,点击“更多入口”,点击“订单”

预测结果:跳转到登录页面

测试场景五:未登录的首页,点击“购物车”

预测结果:跳转到登录页面

测试场景六:未登录的首页,点击“消息”

预测结果:跳转到登录页面

测试场景七:未登录的首页,点击任意一个商品,点击“收藏”

预测结果:跳转到登录页面

测试场景八:未登录的首页,点击任意一个商品,点击“加入购物车”

预测结果:跳转到登录页面

测试场景九:已登录的首页,点击“个人中心”

预测结果:跳转到“个人中心页面”

测试场景十:已登录的首页,点击“我的商城”,点击“订单”

预测结果:跳转到“订单管理页面”

测试场景十一:已登录的首页,点击“我的收藏”

预测结果:跳转到我的收藏页面

测试场景十二:已登录的首页,点击“消息”

预测结果:跳转到消息页面

测试场景十三:首页搜索栏,在搜索框输入:包包,点击“搜索”按钮

预测结果:页面显示出符合的商品

4、商品详情页

测试场景一:点击任意一个商品,跳转到商品详情页,点击数量“-” / “+”

预测结果:数量相应的减少/增加

测试场景二:点击任意一个商品,跳转到商品详情页,点击“立即购买”

预测结果:跳转到“订单确认页面”

测试场景三:点击任意一个商品,跳转到商品详情页,点击“加入购物车”

预测结果:跳出弹窗,提示:商品已成功加入购物车!并显示购物车里商品的数量

测试场景四:点击任意一个商品,跳转到商品详情页,点击“收藏”

预测结果:提示:收藏成功,图标变红

测试场景五:点击任意一个商品,跳转到商品详情页,点击“详情”

预测结果:显示:商品的详情信息

测试场景六:点击任意一个商品,跳转到商品详情页,点击“评价”

预测结果:显示:该商品的评价信息

5、商品全部分类

测试场景一:在首页:点击 数码办公

(1)选择全部,预测结果:展示该类型所有的商品

(2)点击“手机通讯”,预测结果:筛选出相应的商品

(3)点击“电脑整机”,预测结果:筛选出相应的商品

测试场景二:在首页:点击 时尚服饰

(1)选择全部,预测结果:展示该类型所有的商品

(2)点击“女装”,预测结果:筛选出相应的商品

(3)点击“男装”,预测结果:筛选出相应的商品

测试场景三:在首页:点击 名品潮包

(1)选择全部,预测结果:展示该类型所有的商品

(2)点击”潮流女包”,预测结果:筛选出相应的商品

测试场景四:将商品添加到购物车,点击”购物车“图标,跳出弹窗,点击套餐中的”套餐二“,点击颜色中的”金色“,点击容量中的”128G“,选择数量,点击”加入购物车“

预测结果:提示:加入成功

6、个人中心

测试场景一:点击“个人中心”,点击“修改头像”,点击“选择图片”,点击“确认上传”

预测结果:提示:上传成功

测试场景二:点击“个人中心”,点击“修改资料”,点击“编辑”,填写:昵称(必填项)、生日、所在省、所在市、所在区/县、详细地址、性别,点击“保存”

预测结果:提示:修改成功

测试场景三:点击“个人中心”,点击“我的地址”,点击“新增”,填写必填项:姓名、电话、省市区、详细地址,点击“保存”

预测结果:提示:操作成功

测试场景四:点击“个人中心”,点击“我的地址”,点击”编辑“跳出弹窗,修改内容,点击”保存“

预测结果:提示:操作成功

测试场景五:点击“个人中心”,点击“我的地址”,点击”删除“,跳出弹窗,点击”确认“

预测结果:提示:删除成功

测试场景六:点击“个人中心”,点击“我的地址”,在地址栏上,直接点击”设为默认“,跳出弹窗,点击”确认“

预测结果:提示:设置成功

测试场景六·:点击“个人中心”,点击“我的足迹”,跳转到“我的足迹”页面,显示我浏览过的商品,点击“详情”

预测结果:出现浏览过的商品详情信息

测试场景七·:点击“个人中心”,点击“我的足迹”,跳转到“我的足迹”页面,显示我浏览过的商品,点击“删除”,跳出弹窗,点击“确认”

预测结果:提示:删除成功

测试场景八·:点击“个人中心”,在业务管理中,点击“商品收藏”,页面跳转到我收藏的所有商品,查找收藏的商品,输入正确且存在的商品信息:销售价格、原价、创建时间

预测结果:预期结果:查找成功

测试场景九:点击“个人中心”,在业务管理中,点击“商品收藏”,页面跳转到我收藏的所有商品,查找收藏的商品,输入正确且存在的商品信息:销售价格、原价、创建时间,点击“清除搜索条件”

预测结果:清除成功,页面显示全部收藏的商品

测试场景十:点击“个人中心”,在业务管理中,点击“商品收藏”,点击“详情“

预测结果:跳出弹窗,点击”商品信息“框

测试场景十一:点击“个人中心”,在业务管理中,点击“商品收藏”,点击”删除“,跳出弹窗,点击“确认”

预测结果:提示:删除成功

测试场景十二:点击“个人中心”,点击”安全退出“

预测结果:登录退出,并跳转到商城首页

7、购物车

测试场景一:点击“购物车”,跳转到购物车页面,选择要结算的商品,点击“结算”

预测结果:跳转到”订单确认“页面

测试场景二:点击“购物车”,跳转到购物车页面,点击“删除”,跳出弹窗,点击“确认”

预测结果:提示:删除成功

测试场景三:点击“购物车”,跳转到购物车页面,点击“收藏”

预测结果:提示:收藏成功

测试场景四:点击“购物车”,跳转到购物车页面,点击 数量“-” / “+”,数量相应的减少/增加,合计金额也相应的减少/增加

预测结果:提示:更新成功

8、我的订单

测试场景一:点击商品里面的“立即购买”按钮 / 点击购物车里的“结算”按钮,跳转到“订单确认”页面,选择取货方式,点击“快递”,

预测结果:选择成功

四、兼容性测试

测试场景一:在Chrome浏览器下进入商城系统
预期结果:无异常且一切布局显示功能等与其一致

测试场景二:在Edge浏览器下进入商城系统
预期结果:无异常且一切布局显示功能等与其一致

测试场景三:在Firefox浏览器下进入商城系统
预期结果:无异常且一切布局显示功能等与其一致

五、自动化测试

1. 项目结构

2. 项目的各个具体实现代码

(1)Utils.py

# 生成测试文件中需要用到的配置内容
# 创建浏览器对象,请求url访问应的页面
import datetime
import os
import sysfrom selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import Byclass Driver:driver = ""def __init__(self):driver_path = r"E:\apply\driver\chromedriver-win64\chromedriver.exe" # 驱动路径options = webdriver.ChromeOptions()self.driver = webdriver.Chrome(service=Service(driver_path), options=options)# 隐式等待self.driver.implicitly_wait(10)# 设置窗口最大化self.driver.maximize_window()def getScreenshot(self):# 创建屏幕截图# 图片路径:../images/日期/图片名称.pngdirname = datetime.datetime.now().strftime("%Y-%m-%d") # 获取当前时间,并将日期时间格式化为指定格式字符串if not os.path.exists("../images/" + dirname):os.mkdir("../images/" + dirname)# 图片名称:方法名-日期-时分秒.pngfilename = sys._getframe().f_back.f_code.co_name + "-" + datetime.datetime.now().strftime("%Y-%m-%d-%H%M%S") + ".png"self.driver.save_screenshot("../images/" + dirname + "/" + filename)SS_Driver = Driver()

(2)SS_RegisterTest.py

# 用户注册 测试用例
import timeimport ddddocr
from selenium.webdriver import Keys
from selenium.webdriver.common.by import Byfrom common.Utils import SS_Driverclass RegisterTest:url = ""driver = ""def __init__(self):self.url = "http://8.155.1.153/?s=user/regInfo.html" # 注册页面的urlself.driver = SS_Driver.driverself.driver.get(self.url)def captcha(self):ele = self.driver.find_element(By.XPATH, '//*[@id="form-verify-img"]')ele.screenshot('code.png')ele_bytes = ele.screenshot_as_pngocr = ddddocr.DdddOcr()text = ocr.classification(ele_bytes)self.driver.find_element(By.XPATH, '//*[@type="text" and @name="verify"]').send_keys(text)####################################################################################################################################################################### 检查注册页面元素def CheckEle(self):# 检查 “欢迎注册”self.driver.find_element(By.CSS_SELECTOR, "body > div.body-content-container > div.body-content-formal-container > div.nav-seasrch.header-nav-simple > div > p.login-title.am-fl.am-vertical-align-middle.am-margin-left-main")# 检查 “账号注册”self.driver.find_element(By.CSS_SELECTOR, "body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > ul > li.am-active > a")# 检查 “用户名输入框”self.driver.find_element(By.CSS_SELECTOR, "body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input")# 检查 “登录密码用户框”self.driver.find_element(By.CSS_SELECTOR, "body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input")# 检查 “验证码输入框”self.driver.find_element(By.CSS_SELECTOR, "body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(3) > input")# 检查 “注册按钮”self.driver.find_element(By.CSS_SELECTOR, "body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.am-form-group.am-margin-top-main.am-padding-0 > button")# 检查 “立即登录”self.driver.find_element(By.CSS_SELECTOR, "body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.bottom-container.am-padding-horizontal-lg.am-padding-top-xs.am-padding-bottom-sm.am-nbfc > div.am-padding-horizontal-sm.am-padding-vertical-xs.am-margin-bottom-sm.am-nbfc > div > a")# 添加屏幕截图SS_Driver.getScreenshot()####################################################################################################################################################################### 注册失败测试用例一:未输入:用户名,其他全部输入def RegFailTest(self):# 清空输入框self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(3) > input").clear()# 用户名输入:不输入self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").send_keys("")# 登录密码:123456self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").send_keys("123456")self.captcha()# 点击“阅读并同意”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.agreement.am-margin-top-main > label").click()# time.sleep(3)# 点击“注册”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.am-form-group.am-margin-top-main.am-padding-0 > button").click()# time.sleep(1)# 添加屏幕截图SS_Driver.getScreenshot()# time.sleep(2)####################################################################################################################################################################### 注册失败测试用例二:未输入:登录密码,其他全部输入# 清空输入框self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(3) > input").clear()# 用户名输入:输入self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").send_keys("xiaolufei")# 登录密码:不输入self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").send_keys("")self.captcha()# 点击“阅读并同意”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.agreement.am-margin-top-main > label").click()# time.sleep(3)# 点击“注册”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.am-form-group.am-margin-top-main.am-padding-0 > button").click()# time.sleep(1)# 添加屏幕截图SS_Driver.getScreenshot()# time.sleep(2)####################################################################################################################################################################### 注册失败测试用例三:未输入:验证码,其他全部输入# 清空输入框self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(3) > input").clear()# 用户名输入:输入self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").send_keys("xiaolufei")# 登录密码:输入self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").send_keys("")# 点击“阅读并同意”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.agreement.am-margin-top-main > label").click()# time.sleep(3)# 点击“注册”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.am-form-group.am-margin-top-main.am-padding-0 > button").click()# time.sleep(1)# 添加屏幕截图SS_Driver.getScreenshot()# time.sleep(2)####################################################################################################################################################################### 注册失败测试用例四:未输入:用户名、登录密码,其他全部输入# 清空输入框self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(3) > input").clear()# 用户名输入:未输入self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").send_keys("")# 登录密码:未输入self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").send_keys("")self.captcha()# 点击“阅读并同意”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.agreement.am-margin-top-main > label").click()# time.sleep(3)# 点击“注册”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.am-form-group.am-margin-top-main.am-padding-0 > button").click()# time.sleep(1)# 添加屏幕截图SS_Driver.getScreenshot()# time.sleep(2)####################################################################################################################################################################### 注册失败测试用例五:未输入:用户名、验证码,其他全部输入# 清空输入框self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(3) > input").clear()# 用户名输入:未输入self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").send_keys("")# 登录密码:未输入self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").send_keys("123456")# 点击“阅读并同意”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.agreement.am-margin-top-main > label").click()# time.sleep(3)# 点击“注册”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.am-form-group.am-margin-top-main.am-padding-0 > button").click()# time.sleep(1)# 添加屏幕截图SS_Driver.getScreenshot()# time.sleep(2)####################################################################################################################################################################### 注册失败测试用例六:未输入:登录密码、验证码,其他全部输入# 清空输入框self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(3) > input").clear()# 用户名输入:未输入self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").send_keys("xiaolufei")# 登录密码:未输入self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").send_keys("")# 点击“阅读并同意”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.agreement.am-margin-top-main > label").click()# time.sleep(3)# 点击“注册”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.am-form-group.am-margin-top-main.am-padding-0 > button").click()# time.sleep(1)# 添加屏幕截图SS_Driver.getScreenshot()# time.sleep(2)####################################################################################################################################################################### 注册失败测试用例七:输入的用户名:<2 个字符,其他全部输入# 清空输入框self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(3) > input").clear()# 用户名输入:输入的用户名:<2self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").send_keys("1")# 登录密码:输入:123456self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").send_keys("123456")self.captcha()# 点击“阅读并同意”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.agreement.am-margin-top-main > label").click()# time.sleep(3)# 点击“注册”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.am-form-group.am-margin-top-main.am-padding-0 > button").click()# time.sleep(1)# 添加屏幕截图SS_Driver.getScreenshot()# time.sleep(2)####################################################################################################################################################################### 注册失败测试用例八:输入的登录密码: <6 个字符,其他全部输入# 清空输入框self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(3) > input").clear()# 用户名输入:输入self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").send_keys("xiaolufei")# 登录密码:输入的登录密码: <6 个字符self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").send_keys("12345")self.captcha()# 点击“阅读并同意”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.agreement.am-margin-top-main > label").click()# time.sleep(3)# 点击“注册”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.am-form-group.am-margin-top-main.am-padding-0 > button").click()# time.sleep(1)# 添加屏幕截图SS_Driver.getScreenshot()# time.sleep(2)####################################################################################################################################################################### 注册成功测试用例:# 输入:用户名:xiaolufei2, 登录密码:123456, 验证码:3526,点击“勾选”验证并同意def RegSucTest(self):# 清空输入框self.driver.find_element(By.CSS_SELECTOR, "body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").clear()self.driver.find_element(By.CSS_SELECTOR, "body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").clear()self.driver.find_element(By.CSS_SELECTOR, "body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(3) > input").clear()# 用户名输入:xiaolufei2self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").send_keys("iaolufei2")# 登录密码:123456self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").send_keys("123456")self.captcha()# 点击“阅读并同意”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.agreement.am-margin-top-main > label").click()# time.sleep(3)# 点击“注册”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-register-container.theme-data-edit-event > div > div > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.am-form-group.am-margin-top-main.am-padding-0 > button").click()# time.sleep(1)# 添加屏幕截图SS_Driver.getScreenshot()# time.sleep(2)# # 测试
# Register = RegisterTest() # 创建对象
# Register.CheckEle()
# Register.RegFailTest() # 调用失败方法
# Register.RegSucTest() # 调用成功方法
# Register.driver.quit()

(3)SS_LoginTest.py

# 用户登录测试用例
import ddddocr
from selenium.webdriver.common.by import Byfrom common.Utils import SS_Driverclass LoginTest():url = ""driver = ""def __init__(self):self.url = "http://8.155.1.153/?s=user/loginInfo.html"self.driver = SS_Driver.driverself.driver.get(self.url)def captcha(self):ele = self.driver.find_element(By.XPATH, '//*[@id="form-verify-img"]')ele.screenshot('code.png')ele_bytes = ele.screenshot_as_pngocr = ddddocr.DdddOcr()text = ocr.classification(ele_bytes)self.driver.find_element(By.XPATH, '//*[@type="text" and @name="verify"]').send_keys(text)########################################################################################################################################################## 检查登录页面元素def CheckEle(self):# 检查 “欢迎登录”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.nav-seasrch.header-nav-simple > div > p.login-title.am-fl.am-vertical-align-middle.am-margin-left-main")# 检查 “账号密码”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > ul > li.am-active > a")# 检查 “登录账号输入框”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input")# 检查 “登录密码输入框”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input")# 检查 “验证码输入框”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(3) > input")# 检查 “登录按钮”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.am-form-group.am-form-group-refreshing.am-margin-top-lg.am-padding-0 > button")# 检查 “找回密码”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.bottom-container.am-padding-horizontal-lg.am-padding-top-xs.am-margipaddingn-bottom-sm.am-nbfc > div:nth-child(1) > div > a")# 添加屏幕截图SS_Driver.getScreenshot()########################################################################################################################################################################################## 登录失败测试用例一:输入错误的登录账号def LoginFailTest(self):# 清除self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(3) > input").clear()# 登录账号:输入错误self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").send_keys("xiao")# 密码:输入 123456self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").send_keys("123456")# 验证码self.captcha()# 点击 “登录”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.am-form-group.am-form-group-refreshing.am-margin-top-lg.am-padding-0 > button").click()# time.sleep(1)# 添加屏幕截图SS_Driver.getScreenshot()########################################################################################################################################################################################## 登录失败测试用例二:输入错误的登录密码# 清除self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(3) > input").clear()# 登录账号:输入正确self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").send_keys("xiaolufei")# 密码:输入错误 123455self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").send_keys("123455")# 验证码self.captcha()# time.sleep(3)# 点击 “登录”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.am-form-group.am-form-group-refreshing.am-margin-top-lg.am-padding-0 > button").click()# time.sleep(1)# 添加屏幕截图SS_Driver.getScreenshot()# time.sleep(1)########################################################################################################################################################################################## 登录失败测试用例三:未输入登录账号# 清除self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(3) > input").clear()# 登录账号:未输入self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").send_keys("")# 密码:输入错误 123455self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").send_keys("123455")# 验证码self.captcha()# time.sleep(3)# 点击 “登录”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.am-form-group.am-form-group-refreshing.am-margin-top-lg.am-padding-0 > button").click()# time.sleep(1)# 添加屏幕截图SS_Driver.getScreenshot()# time.sleep(1)########################################################################################################################################################################################## 登录失败测试用例四:未输入登录密码# 清除self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(3) > input").clear()# 登录账号:xiaolufeiself.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").send_keys("xiaolufei")# 密码:未输入self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").send_keys("")# 验证码self.captcha()# time.sleep(3)# 点击 “登录”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.am-form-group.am-form-group-refreshing.am-margin-top-lg.am-padding-0 > button").click()# time.sleep(1)# 添加屏幕截图SS_Driver.getScreenshot()# time.sleep(1)########################################################################################################################################################################################## 登录失败测试用例五:未输入验证码# 清除self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(3) > input").clear()# 登录账号:xiaolufeiself.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").send_keys("xiaolufei")# 密码:123456self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").send_keys("123456")# time.sleep(3)# 点击 “登录”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.am-form-group.am-form-group-refreshing.am-margin-top-lg.am-padding-0 > button").click()# time.sleep(1)# 添加屏幕截图SS_Driver.getScreenshot()# time.sleep(1)########################################################################################################################################################################################## 登录成功测试用例:def LoginSucTest(self):# 清除self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(3) > input").clear()# 登录账号:xiaolufeiself.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(1) > input").send_keys("xiaolufei")# 密码:输入 123456self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div:nth-child(2) > input").send_keys("123456")# 验证码self.captcha()# 点击 “登录”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-g.user-login-container.am-padding-top-0.am-padding-bottom-0.theme-data-edit-event > div > div.am-container > div.am-u-sm-12.am-u-md-6.am-u-lg-4.user-right-container > div.am-radius-lg.am-background-white > div > div.am-tabs-bd.am-border-0 > div.am-tab-panel.am-active > form > div.am-form-group.am-form-group-refreshing.am-margin-top-lg.am-padding-0 > button").click()# time.sleep(1)# 添加屏幕截图SS_Driver.getScreenshot()# # 测试
# Login = LoginTest()
# Login.CheckEle()
# Login.LoginFailTest()
# Login.LoginSucTest()

(4)SS_HomePageTest.py

# 商城首页测试用例
import timefrom tests import SS_LoginTest
from selenium.webdriver.common.by import Byfrom common.Utils import SS_Driverclass HomePageTest:url = ""driver = ""def __init__(self):self.url = "http://8.155.1.153/"self.driver = SS_Driver.driver # 实例化出driver对象self.driver.get(self.url)def CheckEle(self):# 检查 “个人中心”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.header-top > div > ul.top-nav-right > div.top-nav-items.top-nav-items-center > div > a > span")# 检查 “我的商城”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.header-top > div > ul.top-nav-right > div.top-nav-items.top-nav-items-myself > div > a > span")# 检查 “我的收藏”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.header-top > div > ul.top-nav-right > div.top-nav-items.top-nav-items-favor > div > a > span")# 检查 “购物车”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.header-top > div > ul.top-nav-right > div.top-nav-items.top-nav-items-cart > div > a > span")# 检查 “搜索栏”self.driver.find_element(By.CSS_SELECTOR,"#search-input")# 检查 “搜索按钮”self.driver.find_element(By.CSS_SELECTOR,"#ai-topsearch")# 检查 “全部分类”self.driver.find_element(By.CSS_SELECTOR,"#goods-category > div > a > div")# 检查 “首页”self.driver.find_element(By.CSS_SELECTOR,"#doc-topbar-collapse > ul > li:nth-child(1) > a")# 检查 “运动健康”self.driver.find_element(By.CSS_SELECTOR,"#doc-topbar-collapse > ul > li:nth-child(2) > a")# 检查 “汽车用品”self.driver.find_element(By.CSS_SELECTOR,"#doc-topbar-collapse > ul > li:nth-child(3) > a")# 检查 “商品分类”self.driver.find_element(By.CSS_SELECTOR,"#doc-topbar-collapse > ul > li.am-dropdown > a")################################################################################################################################################################################################### 未登录时的首页测试用例:def NoLoginHomePageTest(self):# 点击“个人中心”,跳出弹窗,提示进行登录self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.header-top > div > ul.top-nav-right > div.top-nav-items.top-nav-items-center > div > a > span").click()time.sleep(1)# 添加屏幕截图SS_Driver.getScreenshot()self.driver.back()self.driver.forward()#点击”我的商城“,点击“我的订单”,跳转到登录页面self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.header-top > div > ul.top-nav-right > div.top-nav-items.top-nav-items-myself > div > a > span").click()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.header-top > div > ul.top-nav-right > div.top-nav-items.top-nav-items-myself > div > ul > li > a > p").click()time.sleep(1)# 添加屏幕截图SS_Driver.getScreenshot()self.driver.back()self.driver.forward()# 点击“我的收藏”,点击商品收藏,跳转到登录页面self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.header-top > div > ul.top-nav-right > div.top-nav-items.top-nav-items-favor > div > a > span").click()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.header-top > div > ul.top-nav-right > div.top-nav-items.top-nav-items-favor > div > ul > li > a > p").click()# 添加屏幕截图SS_Driver.getScreenshot()self.driver.back()self.driver.forward()# 点击“更多入口”,点击“订单”,跳转到登录页面self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.header-top > div > ul.top-nav-right > div.top-nav-items.top-nav-items-quick > div > a > span").click()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.header-top > div > ul.top-nav-right > div.top-nav-items.top-nav-items-quick > div > ul > li:nth-child(3) > a > p.am-text-truncate").click()# 添加屏幕截图SS_Driver.getScreenshot()self.driver.back()# 点击“购物车”,跳转到登录页面self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.header-top > div > ul.top-nav-right > div.top-nav-items.top-nav-items-cart > div > a > span").click()# 添加屏幕截图SS_Driver.getScreenshot()self.driver.back()self.driver.forward()# 点击“消息”,跳转到登录页面self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.header-top > div > ul.top-nav-right > div.top-nav-items.top-nav-items-message > div > a > span").click()# 添加屏幕截图SS_Driver.getScreenshot()self.driver.back()self.driver.forward()# 点击任意一个商品,点击“收藏”,跳转到登录页面self.driver.find_element(By.CSS_SELECTOR,"#floor1 > div.am-g.am-container.floor.floor-flex > div.goods-list > div > ul > li:nth-child(1) > div > a > img").click()# 获取当前页面的句柄---第一个标签页curHandle = self.driver.current_window_handle# 获取所有句柄allHandles = self.driver.window_handles# 遍历所有句柄,切换到新的页面for handle in allHandles:if handle != curHandle:# 切换句柄self.driver.switch_to.window(handle)# 点击“收藏”self.driver.find_element(By.CSS_SELECTOR,"#clearcontent > div.photo-bottom.am-cf > span > em").click()# 添加屏幕截图SS_Driver.getScreenshot()self.driver.close() # 关闭 页面二time.sleep(1)self.driver.switch_to.window(curHandle) # 切换到 页面一# 点击任意一个商品,点击“加入购物车”,跳转到登录页面self.driver.find_element(By.CSS_SELECTOR,"#floor1 > div.am-g.am-container.floor.floor-flex > div.goods-list > div > ul > li:nth-child(1) > div > a > img").click()# 获取当前页面的句柄---第一个标签页curHandle = self.driver.current_window_handle# 获取所有句柄allHandles = self.driver.window_handles# 遍历所有句柄,切换到新的页面for handle in allHandles:if handle != curHandle:# 切换句柄self.driver.switch_to.window(handle)# 点击“购物车”self.driver.find_element(By.CSS_SELECTOR, "body > div.body-content-container > div.body-content-formal-container > div.system-goods-detail > div.item-inform.am-container.am-radius.theme-data-edit-event > div.clearfix-right > div > div.buy-nav > div.buy-submit-container.buy-submit-container-number-2 > button.am-radius.am-btn.am-btn-secondary.cart-submit.buy-event.login-event").click()# 添加屏幕截图SS_Driver.getScreenshot()self.driver.close()time.sleep(1)###################################################################################################################################################################################### 已登录的首页测试用例:def LoginHomePageTest(self):# SS_LoginTest.LoginTest().LoginSucTest() # 在首页面进行登录# 点击“个人中心”,跳转到“个人中心页面”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.header-top > div > ul.top-nav-right > div.top-nav-items.top-nav-items-center > div > a > span").click()# 检查是否跳转到"个人中心"页面的元素----"修改头像"self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-container.user-main.user-center > div.user-content > div > div.user-base.am-radius > div.user-base-left > div.items > a:nth-child(1) > span")# 添加屏幕截图SS_Driver.getScreenshot()self.driver.back()# 点击“我的商城”,点击“订单”,跳转到“订单管理页面”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.header-top > div > ul.top-nav-right > div.top-nav-items.top-nav-items-myself > div > a > span").click()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.header-top > div > ul.top-nav-right > div.top-nav-items.top-nav-items-myself > div > ul > li > a > p").click()# 检查 “订单页面的元素” --- “批量支付”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-form-table-data-container.am-container.user-main > div.user-content > div > div.form-table-content > form > div.form-table-operate-top.am-cf > button")# 添加屏幕截图SS_Driver.getScreenshot()self.driver.back()# 点击“我的收藏”,点击“商品收藏”,跳转到我的收藏页面self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.header-top > div > ul.top-nav-right > div.top-nav-items.top-nav-items-favor > div > a > span").click()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.header-top > div > ul.top-nav-right > div.top-nav-items.top-nav-items-favor > div > ul > li > a > p").click()# 检查 “我的收藏”页面元素 --- 商品收藏self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-form-table-data-container.am-container.user-main > div.user-content > div > div.am-flex.am-flex-items-center.am-margin-bottom-main > h1")# 添加屏幕截图SS_Driver.getScreenshot()self.driver.back()# 点击“消息”,跳转到消息页面self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.header-top > div > ul.top-nav-right > div.top-nav-items.top-nav-items-message > div > a > span").click()# 检查 消息页面 元素 -- 我的消息self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-form-table-data-container.am-container.user-main > div.user-content > div > div.am-flex.am-flex-items-center.am-margin-bottom-main > h1")# 添加屏幕截图SS_Driver.getScreenshot()self.driver.back()def SearchBar(self):# 在搜索框输入:包包self.driver.find_element(By.CSS_SELECTOR,"#search-input").send_keys("包包")# 点击“搜索”按钮self.driver.find_element(By.CSS_SELECTOR,"#ai-topsearch").click()# 页面显示出符合的商品actual = self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div:nth-child(6) > div > div.module-goods-container.module-goods-grid-container.module-goods-grid-base > ul > li:nth-child(1) > div > div > p.am-text-truncate-2-md.goods-title > a").textassert  actual == "CohnimKevin轻奢品牌女士包包女包单肩斜挎手提七夕情人节生日礼物送女友老婆 【时尚轻奢】c02054米白色"# 添加屏幕截图SS_Driver.getScreenshot()self.driver.back()# # 测试
# HomePage = HomePageTest()
# HomePage.CheckEle()
# HomePage.NoLoginHomePageTest()
# HomePage.LoginHomePageTest()
# HomePage.SearchBar()
# HomePage.driver.quit()

(5)SS_ProductDetailTest.py

# 商品详情页测试用例
import timefrom selenium.webdriver.common.by import Byfrom common.Utils import SS_Driver
from tests import SS_HomePageTestclass ProductDetailTest():url = ""driver = ""# 声明实例属性,用于保存全局句柄(无需赋值,在__init__中初始化)curHandle = None  # 页面一(首页)的句柄def __init__(self):self.url = "http://8.155.1.153"self.driver = SS_Driver.driverself.driver.get(self.url)# 保存点击商品前的句柄(页面一:首页)self.curHandle = self.driver.current_window_handle# 点击 任意一个商品self.driver.find_element(By.CSS_SELECTOR,"#floor1 > div.am-g.am-container.floor.floor-flex > div.goods-list > div > ul > li:nth-child(1) > div > a > img").click()# 获取所有句柄allHandles = self.driver.window_handles# 遍历所有句柄,切换到新的页面for handle in allHandles:if handle != self.curHandle:# 切换句柄self.driver.switch_to.window(handle)def CheckEle(self):# 检查 商品标题 元素self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.system-goods-detail > div.item-inform.am-container.am-radius.theme-data-edit-event > div.clearfix-right > div > div.tb-detail-hd.am-margin-bottom-xs > h1")# 检查 原价 元素self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.system-goods-detail > div.item-inform.am-container.am-radius.theme-data-edit-event > div.clearfix-right > div > div.tb-detail-list > div > div > div.tb-detail-price-content > div.items.goods-price.goods-original-price > dt")# 检查 售价 元素self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.system-goods-detail > div.item-inform.am-container.am-radius.theme-data-edit-event > div.clearfix-right > div > div.tb-detail-list > div > div > div.tb-detail-price-content > div.items.goods-price.goods-sale-price > dt")# 检查 立即购买 元素self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.system-goods-detail > div.item-inform.am-container.am-radius.theme-data-edit-event > div.clearfix-right > div > div.buy-nav > div.buy-submit-container.buy-submit-container-number-2 > button.am-radius.am-btn.am-btn-primary.buy-submit.buy-event.login-event")# 检查 加入购物车 元素self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.system-goods-detail > div.item-inform.am-container.am-radius.theme-data-edit-event > div.clearfix-right > div > div.buy-nav > div.buy-submit-container.buy-submit-container-number-2 > button.am-radius.am-btn.am-btn-secondary.cart-submit.buy-event.login-event")# 检查 手机购买 元素self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.system-goods-detail > div.item-inform.am-container.am-radius.theme-data-edit-event > div.clearfix-right > div > div.tb-detail-list > div > div > div.goods-qrcode > div > a")# 检查 详情 元素self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.system-goods-detail > div.introduce.am-container.am-radius.am-margin-top-main > div.introduce-main.no-left-goods > div > div.am-sticky-placeholder > ul > li.am-active.goods-middle-nav-detail > a")# 检查 评价 元素self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.system-goods-detail > div.introduce.am-container.am-radius.am-margin-top-main > div.introduce-main.no-left-goods > div > div.am-sticky-placeholder > ul > li.goods-middle-nav-comments > a")# 添加截图SS_Driver.getScreenshot()#####################################################################################################################################################################################def DetailPageTest(self):# 点击“立即购买”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.system-goods-detail > div.item-inform.am-container.am-radius.theme-data-edit-event > div.clearfix-right > div > div.buy-nav > div.buy-submit-container.buy-submit-container-number-2 > button.am-radius.am-btn.am-btn-primary.buy-submit.buy-event.login-event").click()# 跳转到“订单确认页面”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div:nth-child(5) > div > div.buy-items.am-background-white.am-radius.am-padding-main.am-margin-top-main > h3")# 添加截图SS_Driver.getScreenshot()self.driver.back()# 点击“加入购物车”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.system-goods-detail > div.item-inform.am-container.am-radius.theme-data-edit-event > div.clearfix-right > div > div.buy-nav > div.buy-submit-container.buy-submit-container-number-2 > button.am-radius.am-btn.am-btn-secondary.cart-submit.buy-event.login-event").click()# 添加截图SS_Driver.getScreenshot()# 跳出弹窗,提示:商品已成功加入购物车!并显示购物车里商品的数量self.driver.find_element(By.CSS_SELECTOR,"#common-user-cart-success-modal > div > div.am-modal-bd > div:nth-child(3) > button").click()# time.sleep(2)# 点击“收藏”self.driver.find_element(By.CSS_SELECTOR,"#clearcontent > div.photo-bottom.am-cf > span > em").click()time.sleep(1)# 添加截图  提示信息:收藏成功SS_Driver.getScreenshot()self.driver.close()self.driver.switch_to.window(self.curHandle)  # 切换到 页面一time.sleep(1)# 确认是否回到 页面一actual = self.driver.find_element(By.CSS_SELECTOR,"#ai-topsearch > span").textprint(actual)assert actual == "搜索"# 添加截图SS_Driver.getScreenshot()# ProductDetail = ProductDetailTest()
# ProductDetail.CheckEle()
# ProductDetail.DetailPageTest()

(6)SS_AllProductListTest.py

# 全部商品分类测试
from selenium.webdriver.common.by import Byfrom common.Utils import SS_Driverclass AllProductListTest():url = ""driver = ""def __init__(self):self.url = "http://8.155.1.153/"self.driver = SS_Driver.driverself.driver.get(self.url)def CheckProductListUseTest(self): # 查看商品分类栏的使用# 测试数码办公# 点击“全部分类”self.driver.find_element(By.CSS_SELECTOR,"#goods-category > div > a > div > span").click()# 点击 “数码办公”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-container.category-list-container.category-list-level-0-container.am-radius > div > div.zero-search-top > div > div > div > div > ul > li.am-text-truncate.active > div > a").click()# 点击 “全部”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-container.category-list-container.category-list-level-0-container.am-radius > div > div.zero-search-left > div > div > ul > li.am-text-break.active").click()# 检查元素actual = self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-container.category-list-container.category-list-level-0-container.am-radius > div > div.zero-search-right > div > div.zero-right-item > div > ul > li:nth-child(1) > div > div > div.base-content > p.am-text-truncate-2.goods-title > a").textassert actual == "华为笔记本电脑MateBook 14 2023 13代酷睿版 i5 16G 1T 14英寸轻薄办公本/2K触控全面屏/手机互联 深空灰"# 添加截图SS_Driver.getScreenshot()# 点击“手机通讯”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-container.category-list-container.category-list-level-0-container.am-radius > div > div.zero-search-left > div > div > ul > li:nth-child(2)").click()# 测试self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-container.category-list-container.category-list-level-0-container.am-radius > div > div.zero-search-right > div > div.zero-right-item > div > ul > li:nth-child(1) > div > div > div.bottom-content.am-text-truncate > div > strong")# 添加截图SS_Driver.getScreenshot()# 点击“电脑整机”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-container.category-list-container.category-list-level-0-container.am-radius > div > div.zero-search-left > div > div > ul > li:nth-child(6)").click()# 测试self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-container.category-list-container.category-list-level-0-container.am-radius > div > div.zero-search-right > div > div.zero-right-item > div > ul > li:nth-child(1) > div > div > div.bottom-content.am-text-truncate > div > strong")# 添加截图SS_Driver.getScreenshot()# 测试时尚服饰# 点击“时尚服饰”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-container.category-list-container.category-list-level-0-container.am-radius > div > div.zero-search-top > div > div > div > div > ul > li:nth-child(2) > div > p").click()# 点击“选择全部”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-container.category-list-container.category-list-level-0-container.am-radius > div > div.zero-search-left > div > div > ul > li.am-text-break.active").click()# 测试self.driver.find_element(By.CSS_SELECTOR, "body > div.body-content-container > div.body-content-formal-container > div.am-container.category-list-container.category-list-level-0-container.am-radius > div > div.zero-search-right > div > div.zero-right-item > div > ul > li:nth-child(1) > div > div > div.bottom-content.am-text-truncate > div > strong")# 添加截图SS_Driver.getScreenshot()# 点击“女装”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-container.category-list-container.category-list-level-0-container.am-radius > div > div.zero-search-left > div > div > ul > li:nth-child(2)").click()# 测试self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-container.category-list-container.category-list-level-0-container.am-radius > div > div.zero-search-right > div > div.zero-right-item > div > ul > li:nth-child(2) > div > div > div.bottom-content.am-text-truncate > div > strong")# 添加截图SS_Driver.getScreenshot()# 点击“男装”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-container.category-list-container.category-list-level-0-container.am-radius > div > div.zero-search-left > div > div > ul > li:nth-child(3)").click()# 测试self.driver.find_element(By.CSS_SELECTOR, "body > div.body-content-container > div.body-content-formal-container > div.am-container.category-list-container.category-list-level-0-container.am-radius > div > div.zero-search-right > div > div.zero-right-item > div > ul > li:nth-child(1) > div > div > div.bottom-content.am-text-truncate > div > strong")# 添加截图SS_Driver.getScreenshot()# 测试 名品潮包# 点击 “名品潮包”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-container.category-list-container.category-list-level-0-container.am-radius > div > div.zero-search-top > div > div > div > div > ul > li:nth-child(3) > div > p").click()# 点击“选择全部”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-container.category-list-container.category-list-level-0-container.am-radius > div > div.zero-search-left > div > div > ul > li.am-text-break.active").click()# 测试self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-container.category-list-container.category-list-level-0-container.am-radius > div > div.zero-search-right > div > div.zero-right-item > div > ul > li:nth-child(1) > div > a > img")# 添加截图SS_Driver.getScreenshot()# 点击”潮流女包”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-container.category-list-container.category-list-level-0-container.am-radius > div > div.zero-search-left > div > div > ul > li.am-text-break.active").click()# 测试self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-container.category-list-container.category-list-level-0-container.am-radius > div > div.zero-search-right > div > div.zero-right-item > div > ul > li > div > a > img")# 添加截图SS_Driver.getScreenshot()

(7)SS_UserCenterTest.py

# 个人中心测试用例
import timefrom selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import Select
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as ECfrom common.Utils import SS_Driverclass UserCenterTest():url = ""driver = ""def __init__(self):self.url = "http://8.155.1.153/?s=user/index.html"self.driver = SS_Driver.driverself.driver.get(self.url)def UserCenter(self):# 修改资料# 点击“个人中心”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.header-top > div > ul.top-nav-right > div.top-nav-items.top-nav-items-center > div > a > span").click()# 点击“修改资料”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-container.user-main.user-center > div.user-content > div > div.user-base.am-radius > div.user-base-left > div.items > a:nth-child(2) > span").click()# 添加截图SS_Driver.getScreenshot()# 点击 “编辑”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-container.user-main > div.user-content > div > div > a > span").click()# 填写:昵称(必填项)self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-container.user-main > div.user-content > div > form > div.am-form-popup-content > div:nth-child(1) > input").clear()self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-container.user-main > div.user-content > div > form > div.am-form-popup-content > div:nth-child(1) > input").send_keys("xiaolufei")# 点击“保存”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-container.user-main > div.user-content > div > form > div.am-form-popup-submit > button > span").click()time.sleep(5)# 添加截图SS_Driver.getScreenshot()######################################################################################################################################################################################################################## 新增地址# 点击 “个人中心”self.driver.find_element(By.CSS_SELECTOR,"#user-offcanvas > div > ul > li:nth-child(1) > a").click()# 点击 “我的地址”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-container.user-main.user-center > div.user-content > div > div.user-base.am-radius > div.user-base-left > div.items > a:nth-child(3) > span").click()# 点击“新增”self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-container.user-main > div.user-content > div > div.control > button > span").click()# 切换到弹窗 frameiframe = self.driver.find_element(By.XPATH, "//iframe[contains(@src, 'http://8.155.1.153/?s=useraddress/saveinfo&system_type=default')]")self.driver.switch_to.frame(iframe)# 填写必填项:姓名、电话、省市区、详细地址time.sleep(1)self.driver.find_element(By.CSS_SELECTOR, "input[name='name']").send_keys("xiaoluxue")self.driver.find_element(By.CSS_SELECTOR, "input[name='alias']").send_keys("xxxxxx")self.driver.find_element(By.CSS_SELECTOR, "input[name='tel']").send_keys("19807777605")# 这一步会展开下拉框self.driver.find_element(By.CSS_SELECTOR, "div.am-input-inner.input-model").click()# 下拉框 :选择 省市区self.driver.find_element(By.CSS_SELECTOR, "li[data-value='2']").click()self.driver.find_element(By.CSS_SELECTOR, "li[data-value='37']").click()self.driver.find_element(By.CSS_SELECTOR, "li[data-value='473']").click()# 填写详细地址self.driver.find_element(By.CSS_SELECTOR, "input[name='address']").send_keys("xxxxxxxxxxx")SS_Driver.getScreenshot()# 点击“保存”按钮self.driver.find_element(By.CSS_SELECTOR, "body > div.body-content-container > div.body-content-formal-container > div > form > div.am-form-popup-submit > button.am-btn.am-btn-primary.am-radius.am-btn-xs.btn-loading-example > span").click()# 切回主文档self.driver.switch_to.default_content()############################################################################################################################################################################### 点击“我的足迹”self.driver.refresh()self.driver.find_element(By.CSS_SELECTOR,"#collapse-nav-base > li:nth-child(5) > a").click()# 跳转到“我的足迹”页面,显示我浏览过的商品actual = self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-form-table-data-container.am-container.user-main > div.user-content > div > div.am-flex.am-flex-items-center.am-margin-bottom-main > h1").textprint(actual)assert actual == "我的足迹"SS_Driver.getScreenshot()self.driver.back()############################################################################################################################################################################### 点击“我的积分”self.driver.find_element(By.CSS_SELECTOR,"#collapse-nav-property > li > a").click()# 跳转到“我的积分”页面actual = self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-form-table-data-container.am-container.user-main > div.user-content > div > div.am-flex.am-flex-items-center.am-margin-bottom-main > h1").textprint(actual)assert actual == "我的积分"############################################################################################################################################################################### 点击“商品收藏”self.driver.find_element(By.CSS_SELECTOR,"#collapse-nav-business > li:nth-child(3) > a").click()actual = self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-form-table-data-container.am-container.user-main > div.user-content > div > div.am-flex.am-flex-items-center.am-margin-bottom-main > h1").textprint(actual)assert actual == "商品收藏"# 查找收藏的商品self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-form-table-data-container.am-container.user-main > div.user-content > div > div.form-table-content > form > div.am-form-table-data-list-container.am-scrollable-horizontal.am-table-scrollable-horizontal.am-radius > table > thead > tr > th.form-table-search-item-head-title-goods.form-table-search-item-head-value-goods.am-text-top.am-grid-lg > div > input").send_keys("vivo")self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-form-table-data-container.am-container.user-main > div.user-content > div > div.form-table-content > form > div.form-table-operate-top.am-cf > div > div > button.am-btn.am-radius.btn-loading-example.form-table-operate-top-search-submit").click()actual = self.driver.find_element(By.CSS_SELECTOR,"#data-list-6216 > td.am-nowrap-initial.am-text-middle.am-grid-lg > div > a.am-nowrap-initial").textprint(actual)assert actual == "vivo iQOO Neo8 12GB+256GB 冲浪 第一代骁龙8+ 自研芯片V1+ 120W超快闪充 144Hz高刷 5G游戏电竞性能手机"SS_Driver.getScreenshot()# 清除搜索条件self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.am-form-table-data-container.am-container.user-main > div.user-content > div > div.form-table-content > form > div.form-table-operate-top.am-cf > div > div > button.am-btn.am-radius.btn-loading-example.form-table-operate-top-search-submit").click()SS_Driver.getScreenshot()time.sleep(1)# 点击“详情"self.driver.find_element(By.CSS_SELECTOR,"#data-list-6216 > td.am-nowrap-initial.am-text-middle.am-text-center.am-grid-fixed-right.am-operate-grid.am-grid-fixed-right-shadow > button.am-btn.am-btn-default.am-btn-xs.am-radius.am-btn-block.submit-popup > span").click()# 切换到弹窗iframe = self.driver.find_element(By.XPATH,"//iframe[contains(@src, 'http://8.155.1.153/?s=usergoodsfavor/detail/id/6216&system_type=default')]")self.driver.switch_to.frame(iframe)# 查看商品信息actual = self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div > dl > dt:nth-child(1) > strong").textprint(actual)assert actual == "商品信息"SS_Driver.getScreenshot()self.driver.switch_to.default_content()

(8)SS_ShoppingCarTest.py

# 我的购物车测试用例
import timefrom selenium.webdriver.common.by import Byfrom common.Utils import SS_Driverclass ShoppingCarTest:url = ""driver = ""def __init__(self):self.url = "http://8.155.1.153/?s=cart/index.html"self.driver = SS_Driver.driverself.driver.get(self.url)def ShoppingCarTest(self):# 点击“购物车”图标self.driver.find_element(By.CSS_SELECTOR, "body > div.body-content-container > div.body-content-formal-container > div.header-top > div > ul.top-nav-right > div.top-nav-items.top-nav-items-cart > div > a").click()SS_Driver.getScreenshot()# 结算# 任选一个商品self.driver.find_element(By.CSS_SELECTOR,"#data-list-192 > td.base > label > span > i.am-icon-checked").click()# 点击“结算”按钮self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div.cart-content > div.cart-nav.am-box-shadow-top.am-background-white > div > div.nav-right.am-fr.am-padding-right > form > button").click()# 跳转到“订单确认”页面actual = self.driver.find_element(By.CSS_SELECTOR,"body > div.body-content-container > div.body-content-formal-container > div:nth-child(5) > div > div.buy-items.am-background-white.am-radius.am-padding-main.am-margin-top-main > h3").textprint(actual)assert actual == "订单信息"SS_Driver.getScreenshot()self.driver.back()# 删除测试# 点击“删除”self.driver.find_element(By.CSS_SELECTOR,"#data-list-192 > td.operation > div > a.am-color-grey-dark.submit-delete").click()time.sleep(1)# 点击“取消”self.driver.find_element(By.CSS_SELECTOR, "span.am-modal-btn.am-text-danger[data-am-modal-cancel]").click()time.sleep(1)# 收藏测试# 点击“收藏/已收藏”self.driver.find_element(By.CSS_SELECTOR,"#data-list-192 > td.operation > div > a.am-color-grey-dark.submit-ajax").click()# 提示:"收藏成功/取消成功"SS_Driver.getScreenshot()

(9)SS_MyOrdersTest.py

# 我的订单页面 测试
from selenium.webdriver.common.by import Byfrom common.Utils import SS_Driverclass MyOrdersTest():url = ""driver = ""def __init__(self):self.url = "http://8.155.1.153/?s=buy/index.html"self.driver = SS_Driver.driverself.driver.get(self.url)def MyOrdersTest(self):# 点击“快递”self.driver.find_element(By.CSS_SELECTOR, "#buy-items-tabs > ul > li.am-active > a").click()# 点击要选择的地址self.driver.find_element(By.CSS_SELECTOR,"#data-list-157 > div").click()SS_Driver.getScreenshot()# 点击“同城”self.driver.find_element(By.CSS_SELECTOR,"#buy-items-tabs > ul > li:nth-child(2) > a").click()# 点击要选择的地址self.driver.find_element(By.CSS_SELECTOR,"#data-list-157 > div").click()SS_Driver.getScreenshot()# 点击 “自提”self.driver.find_element(By.CSS_SELECTOR,"#buy-items-tabs > ul > li.am-active > a").click()SS_Driver.getScreenshot()

六、性能测试

1、单一接口测试

(1)搜索事务

(2)商城首页事务

(3)分类栏事务

(4)商品详情信息事务

(5)个人中心事务

(6)购物车和购买事务

(7)收藏事务

2、聚合报告

3、TPS曲线分析

TPS :每秒处理事务数,⽤于衡量系统在⼀定时间内能够处理的事务数

4、响应时间统计与可视化

用来验证系统处理速度快不快

5、活跃线程数趋势

6、性能测试报告

七、Bug描述

1、商城首页页面

首页搜索框搜索出与条件不符的商品。

2、全部分类功能页面

点击“长款连衣裙”符合条件的有两件商品,但是只显示一件商品。

筛选出不符合逻辑的商品。

 筛选出来的商品与筛选条件不符。

点击“电脑包”筛选不出电脑包的商品。

3、商品详情页

  该商品的颜色分类有“粉色”和“白色”,但是商品图片的参考只有“黑色”

 商品的详情信息与展示的商品图不符。

点击商品时出现了不符合功能要求的按钮。

4、购物车页面

在购物车增减商品数时,右上角购物车不能同步更新

5、支付页面

 提交订单时没有支付方式

6、个人中心页面

修改资料中的 昵称后,还是没有更改。

获取验证码失败。

7、我的地址页面

编写地址时,电话格式错误也能编写成功。

八、测试总结

1、报告分析

总请求总数:140,所有请求失败数为0,错误率0%;

测试过程中没有接口报错,功能层面暂时稳定;

2、主要问题

总体接口响应普遍较慢,整体平均响应时间偏高。

http://www.dtcms.com/a/439015.html

相关文章:

  • 集团网站设计开发排名优化seo
  • 智能体互联系列国标草案的理解(1):总体架构设计
  • 网站网络架构申请做网站
  • Effective Modern C++ 条款31:避免使用默认捕获模式
  • 找人做效果图去什么网站我想网站建设多少钱
  • Python 虚拟环境:venv 与 conda 该如何选择?
  • 公司名称大全好听宁波seo推荐
  • Windows逆向工程入门之整数类型
  • 怎么用wordpress做网盘google seo 营销网站
  • c2c网站类型可以翻外墙的浏览器
  • 1.HTTPS协议原理
  • 中山网站制作建设深圳网站设计 深圳市利
  • FontViewOK(字体管理软件) 多语便携版
  • Day90 基本情报技术者 单词表26 ソフトウェア品質管理
  • 腾讯开源啦,源码地址+部署脚本,工业级原生多模态
  • 参与网站网站建设连云港北京网站建设
  • 如何建设自己的网站 知乎wordpress 无广告视频插件
  • 算法 - FOC开环速度控制
  • 企业建设网站费用福建省建设厅网站信用评分
  • 北京私人做网站请seo的人帮做网站排名
  • 网站建设基础策划书网站做跳转会有什么影响
  • 网站建设怎么销售数据库网站
  • 做企业网站安装什么系统好google 网站优化工具
  • 网站内容分析阿里云备案网站建设方案书
  • 一键免费生成网页的网站wordpress做的外贸网站6
  • 域名注册网站那个好wordpress文字幻灯片
  • MySQL 8.0 InnoDB ReplicaSet 完整配置指南与切换
  • PCB学习——STM32F103VET6-STM32接口部分
  • [光学原理与应用-480]:《国产检测设备对比表》
  • 再谈Linux多进程——进程处理与守护进程