介绍
测试的系统:白月黑羽网站的测试系统(白月SMS系统)
测试的功能:登录,退出登录。
测试用例
用例编号 测试模块 前置条件 测试步骤 预期结果 实际结果 Login_01 登录功能 已注册 1.输入正确的用户名,输入错误的密码。2.点击登录 登录不成功 登录不成功,并且有相应的提示 Login_02 登录功能 已注册 1.输入错误的用户名,输入正确的密码。2.点击登录 登录不成功 登录不成功,并且有相应的提示 Login_03 登录功能 已注册 1.输入错误的用户名和错误的密码。2.点击登录 登录不成功 登录不成功,并且有相应的提示 Login_04 登录功能 已注册 1.输入正确的用户名和正确的密码。2.点击登录 登录成功 登录成功 LogOut-01 退出登录 已登录 1.点击退出登录按钮 退出登录 退出登录成功 由于【白月SMS系统】是做练习的系统,所以登录功能比较简单,如果平常写自动化程序,要根据实际的系统去写相应的测试用例,进行自动化测试。
安装 selenium
pip install selenium自动化测试程序
fromseleniumimportwebdriverfromtimeimportsleepfromselenium.webdriver.common.byimportByfromselenium.webdriver.common.keysimportKeysfromselenium.common.exceptionsimportNoAlertPresentExceptionfromselenium.webdriver.supportimportexpected_conditionsasECfromselenium.webdriver.support.uiimportWebDriverWaitfromselenium.common.exceptionsimportTimeoutExceptionclassLoginTest:def__init__(self):self.driver=webdriver.Chrome()defOpenChrome(self):self.driver.get('http://127.0.0.1/mgr/sign.html')sleep(2)defLoginTest(self):try:userNameList=['byhy','byh','byh','byhy']PassWordList=['8888888','88888888','99999999','88888888']number=0whilenumber<=4:foru,pinzip(userNameList,PassWordList):# 最多等 10 秒,直到元素出现在 DOMuserNameElement=WebDriverWait(self.driver,10).until(EC.presence_of_element_located((By.ID,'username')))# userNameElement = self.driver.find_element(By.ID, 'username')userNameElement.send_keys(Keys.CONTROL+"a")# 全选userNameElement.send_keys(f'{u}')# 覆盖新内容sleep(2)PassWordElement=WebDriverWait(self.driver,10).until(EC.presence_of_element_located((By.ID,'password')))# PassWordElement = self.driver.find_element(By.ID, 'password')PassWordElement.send_keys(Keys.CONTROL+"a")PassWordElement.send_keys(f'{p}')sleep(2)# 点击登录按钮SubmitElement=self.driver.find_element(By.XPATH,"//div[@class='col-xs-12']/button")SubmitElement.click()sleep(3)# Confirm 弹窗try:Confirm=self.driver.switch_to.alertprint('登录失败提示语 ——> ',Confirm.text)Confirm.accept()sleep(3)exceptNoAlertPresentException:print("当前没有 alert,跳过处理")continueexceptExceptionase:print('error:',e)defLogOutTest(self):try:# 例:退出按钮、用户昵称、头像……userAvatarElement=self.driver.find_element(By.XPATH,'//div[@class="navbar-custom-menu"]/ul/li[2]/a')userAvatarElement.click()sleep(2)logOutElement=self.driver.find_element(By.XPATH,'//div[@class="pull-right"]/a')logOutElement.click()sleep(2)print('退出登录成功!!!!!')exceptTimeoutException:print('退出登录失败')defcloseChrome(self):print("登录页面自动化测试完毕~")self.driver.close()if__name__=='__main__':lt=LoginTest()lt.OpenChrome()lt.LoginTest()lt.LogOutTest()lt.closeChrome()
selenium自动化测试工具实战项目(登录页面)
张小明
前端开发工程师
AI版“马后炮”?大模型的「因果注意力」到底是啥?
AI版“马后炮”?大模型的「因果注意力」到底是啥? 目录 AI版“马后炮”?大模型的「因果注意力」到底是啥? 这一切的根源,都指向大模型天生自带的**「因果注意力」机制**。 🔍 什么是「因果注意力」?用“写日记”打比方 📝 生活化举例 🧠 底层原理:Transformer里的…
越疆科技转化应用调研考察解读-万祥军| 国研智库·中国国政研究
越疆科技转化应用调研考察解读-万祥军| 国研智库中国国政研究“近年来,随着全球新一轮科技革命和产业变革深入发展,机器人技术作为智能制造的核心装备,正加速向各行业渗透融合。”调研考察中国际科学院组织代表兼国际科学院委员会执委万祥军解…
基于STM32 的老人跌倒监测系统设计与实现
目录 STM32 老人跌倒监测系统概述硬件设计软件设计关键代码示例(STM32 HAL库)系统优化方向应用场景 源码文档获取/同行可拿货,招校园代理 :文章底部获取博主联系方式! STM32 老人跌倒监测系统概述 该系统利用STM32微控制器作为核…
网络运维与网络安全 阶段一 基础篇十七
弹性交换网络2026.1.251、Trunk原理与配置2、Eth-Trunk原理3、手工模式 Eth-trunk一、vlan接口类型1、access接口复习之前学过的知识案例一pc1和pc2加入vlan10,pc3和pc4加入vlan20命令查看vlan表access接口的应用场景?一般是交换机接口连接主机或者终端服…
ppo可以不需要提取特征,直接训练ac吗。ppo不知道自己现在在第几步吗
ppo可以不需要提取特征,直接训练ac吗Qwen3-MaxPPO(Proximal Policy Optimization)是一种策略梯度方法,属于Actor-Critic(AC)架构的一种实现。关于你的问题:“PPO可以不需要提取特征,…
LangChain、LangFlow、LangGraph:大模型应用开发框架全解析
本文详细解析了LangChain生态中的三大框架:LangChain作为LLM应用的基础框架,提供系统化组织能力;LangFlow是基于LangChain的可视化低代码工具,降低使用门槛;LangGraph则为复杂Agent提供状态机控制。三者定位不同&#…