python+selenium自动化测试之登录
selenium_login.py import unittest
from selenium import webdriver class LoginTest(unittest.TestCase):
@classmethod
def setUpClass(cls):
cls.driver = webdriver.Chrome()
cls.driver.implicitly_wait(5)
cls.driver.maximize_window() cls.driver.get('http://pms.yuncesu12.cn/login')
# 用户名错误密码正确
def testlogin(self):
login_account = self.driver.find_element_by_name('account')
login_account.clear()
login_account.send_keys('墨')
# name = self.driver.find_element_by_xpath("//input[@class='layui-input']")
login_password = self.driver.find_element_by_name('password')
login_password.clear()
login_password.send_keys('')
login_button = self.driver.find_element_by_class_name('layui-btn')
login_button.click()
print('用户名或密码错误') @classmethod
def tearDownClass(cls):
# cls.driver.quit()
pass if __name__ == '__main__':
unittest.main(verbosity=2)
selenium_login1.py import unittest
from selenium import webdriver class LoginTest1(unittest.TestCase):
@classmethod
def setUpClass(cls):
cls.driver = webdriver.Chrome()
cls.driver.implicitly_wait(5)
cls.driver.maximize_window() cls.driver.get('http://pms.yuncesu12.cn/login') # 用户名正确密码错误
def testlogin1(self):
login_account = self.driver.find_element_by_name('account')
login_account.clear()
login_account.send_keys('墨子')
# name = self.driver.find_element_by_xpath("//input[@class='layui-input']")
login_password = self.driver.find_element_by_name('password')
login_password.clear()
login_password.send_keys('')
login_button = self.driver.find_element_by_class_name('layui-btn')
login_button.click()
print('用户名或密码错误') @classmethod
def tearDownClass(cls):
# cls.driver.quit()
pass if __name__ == '__main__':
unittest.main(verbosity=2)
selenium_login2.py import unittest
from selenium import webdriver class LoginTest2(unittest.TestCase):
@classmethod
def setUpClass(cls):
cls.driver = webdriver.Chrome()
cls.driver.implicitly_wait(5)
cls.driver.maximize_window() cls.driver.get('http://pms.yuncesu.cn/login') # 用户名密码都错误
def testlogin2(self):
login_account = self.driver.find_element_by_name('account')
login_account.clear()
login_account.send_keys('墨')
# name = self.driver.find_element_by_xpath("//input[@class='layui-input']")
login_password = self.driver.find_element_by_name('password')
login_password.clear()
login_password.send_keys('12346')
login_button = self.driver.find_element_by_class_name('layui-btn')
login_button.click()
print('用户名或密码错误') @classmethod
def tearDownClass(cls):
# cls.driver.quit()
pass if __name__ == '__main__':
unittest.main(verbosity=2)
selenium_login3.py import unittest
from selenium import webdriver class LoginTest3(unittest.TestCase):
@classmethod
def setUpClass(cls):
cls.driver = webdriver.Chrome()
cls.driver.implicitly_wait(5)
cls.driver.maximize_window() cls.driver.get('http://pms.yuncesu12.cn/login') # 用户名正确密码为空
def testlogin3(self):
login_account = self.driver.find_element_by_name('account')
login_account.clear()
login_account.send_keys('')
# name = self.driver.find_element_by_xpath("//input[@class='layui-input']")
login_password = self.driver.find_element_by_name('password')
login_password.clear()
login_password.send_keys('')
login_button = self.driver.find_element_by_class_name('layui-btn')
login_button.click()
print('用户名或密码不能为空') @classmethod
def tearDownClass(cls):
# cls.driver.quit()
pass if __name__ == '__main__':
unittest.main(verbosity=2)
selenium_login4.py import unittest
from selenium import webdriver class LoginTest4(unittest.TestCase):
@classmethod
def setUpClass(cls):
cls.driver = webdriver.Chrome()
cls.driver.implicitly_wait(5)
cls.driver.maximize_window() cls.driver.get('http://pms.yuncesu12.cn/login') # 用户名正确都正确
def testlogin4(self):
login_account = self.driver.find_element_by_name('account')
login_account.clear()
login_account.send_keys('墨子')
# name = self.driver.find_element_by_xpath("//input[@class='layui-input']")
login_password = self.driver.find_element_by_name('password')
login_password.clear()
login_password.send_keys('')
login_button = self.driver.find_element_by_class_name('layui-btn')
login_button.click()
print('登录成功!') @classmethod
def tearDownClass(cls):
# cls.driver.quit()
pass if __name__ == '__main__':
unittest.main(verbosity=2)
testloginsuites.py from selenium_login import LoginTest
from selenium_login1 import LoginTest1
from selenium_login2 import LoginTest2
from selenium_login3 import LoginTest3
from selenium_login4 import LoginTest4
import unittest login_test = unittest.TestLoader().loadTestsFromTestCase(LoginTest)
login_test1 = unittest.TestLoader().loadTestsFromTestCase(LoginTest1)
login_test2 = unittest.TestLoader().loadTestsFromTestCase(LoginTest2)
login_test3 = unittest.TestLoader().loadTestsFromTestCase(LoginTest3)
login_test4 = unittest.TestLoader().loadTestsFromTestCase(LoginTest4) smoke_test = unittest.TestSuite([login_test,login_test1,login_test2 ,login_test3,login_test4]) if __name__ == '__main__':
unittest.TextTestRunner(verbosity=2).run(smoke_test)
python+selenium自动化测试之登录的更多相关文章
- python selenium自动化测试之路(1)--分层测试概念、selenium工具介绍
1.分层自动化测试概念 传统的自动化市场更关注产品UI层的自动化测试,而分层的自动化测试倡导产品开发的不同阶段都需要自动化测试 大多公司与研发团队其实是忽略了单元测试与集成测试阶段的自动化测试工作,所 ...
- Python+selenium自动化测试之浏览器基础操作
**前言** 本文主要讲解webdriber框架,Selenium 就像真实用户所做的一样,Selenium 测试可以在 Windows.Linux 和 Macintosh上的 Internet ...
- Python&Selenium自动化测试之PO设计模式
一.摘要 Page Object模式,后面简称PO,他是一种设计思想,在上一章节中,曾经列举了一些在编写自动化测试过程中随着代码量的增加导致的大量代码难以维护.难以扩展.可读性极差等灾难性的事件:那么 ...
- python+selenium自动化登录dnf11周年活动界面领取奖励登录部分采坑总结[1]
背景: Dnf的周年庆活动之一,游戏在6月22日 06:00~6月23日 06:00之间登陆过游戏后可以于6月25日 16:00~7月04日 06:00领取奖励 目标:连续四天自动运行脚本,自动领取所 ...
- selenium自动化测试之整合测试报告
selenium自动化测试之整合测试报告 标签(空格分隔): 整合报告 如下截图我们添加一个文件叫做:latest_report.py文件, import time import os import ...
- python selenium自动化点击页面链接测试
python selenium自动化点击页面链接测试 需求:现在有一个网站的页面,我希望用python自动化的测试点击这个页面上所有的在本窗口跳转,并且是本站内的链接,前往到链接页面之后在通过后退返回 ...
- Selenium自动化测试之结果处理
Selenium自动化测试之结果处理 一.断言 断言相当于性能测试中的检查点,常用断言种类很多,具体可以查看断言API:判断预期结果和实际结果是否一致,断言成功,程序继续处理,失败则终止运行,示例如下 ...
- Selenium自动化测试之数据驱动及用例管理
Selenium自动化测试之数据驱动及用例管理 一.TestNg注解介绍 @Test:表示一个测试方法,在运行测试用例过程中,会自动运行@Test注解的方法. 例:
- Selenium自动化测试之基本控件使用
Selenium自动化测试之基本控件使用 1.输入框input: 在Html中样式: <input id="username" type="text"&g ...
随机推荐
- SpringCloud学习之大纲总略(大纲篇)
微服务架构的概念,现在对于大家应该都不陌生,无论使用 Apache Dubbo.还是 Spring Cloud,都可以去尝试微服务,把复杂而庞大的业务系统拆分成一些更小粒度且独立部署的 Rest 服务 ...
- UVALive 4794 Sharing Chocolate DP
这道题目的DP思想挺先进的,用状态DP来表示各个子巧克力块.原本是要 dp(S,x,y),S代表状态,x,y为边长,由于y可以用面积/x表示出来,就压缩到了只有两个变量,在转移过程也是很巧妙,枚举S的 ...
- Paper Review: Epigenetic Landscape, Cell Differentiation 02
I'll share another review paper about Epigenetic Landscape, it comes from Nature Review, published i ...
- Spring Cloud Alibaba 教程 | Nacos(二)
源码解析客户端注册过程 nacos作为注册中心,包含了nacos服务端(注册中心服务)和nacos客户端,nacos注册中心服务上面一讲已经介绍过了它是一个用Java语言编写开源web项目,并且拥有自 ...
- idea使用Maven创建的JavaWeb项目新建文件时没有打包到target目录报错
背景:在使用tomcat发布这个项目时,浏览网页,js没有效果. 问题:发现打包之后没有同步到target里 解决办法:点击最右侧的Maven栏->所建项目->Lifecycle-> ...
- c语言中多维数组和指针的关系
如图: 执行结果: 说明:由执行结果可知,三个输出的结果相等(可能在不同的平台执行结果不相同,但三个的结果是相等的),数组multi的地址与数组multi[0]的地址相同,都等于存储的第一个整数的地址 ...
- JavaSE--数字签名之校验签名
参考:http://blog.csdn.net/dotuian/article/details/51722300 关于keystore的简单介绍 Keytool是一个Java数据证书的管理工具 ,Ke ...
- JavaSE--【JAVA】unicode为12288字符
转载:http://blog.csdn.net/zfpigpig/article/details/8186470 今天做一个导入数据功能时发现一个问题,就是一个unicode为12288的字符显示为空 ...
- aop 实现原理
aop 底层采用代理机制实现 接口 + 实现类 :spring 采用 jdk 的 动态代理 只有实现类:spring 采用 cglib 字节码增强 aop专业术语 1.target(目标) 需要被代理 ...
- 注册服务和发现服务 Eureka
来自蚂蚁课堂: 注册服务和发现服务 1.原理如图: 注册中心负载均衡: 实践 注册中心 集群: