一次完整的自动化登录测试-2017-7-4


本文摘自php中文网,作者PHP中文网,侵删。

1

<span style="color: #577999; font-style: italic">#coding=utf-8<br><span style="color: #577999; font-style: italic"><br><span style="color: #161b99; font-style: italic">'''<br><span style="color: #161b99; font-style: italic">   Created on 2017-7-4<br><span style="color: #161b99; font-style: italic">   @auther:Qigege<br><span style="color: #161b99; font-style: italic">   project:<span style="color: #161b99; font-style: italic; font-family: "宋体"">登录测试用例<span style="color: #161b99; font-style: italic"><br><span style="color: #161b99; font-style: italic">'''<br><span style="color: #161b99; font-style: italic"><br><span style="color: #4038e3">import unittest<br><span style="color: #4038e3">from selenium <span style="color: #4038e3">import webdriver<br><span style="color: #4038e3">from selenium.webdriver.firefox.firefox_binary <span style="color: #4038e3">import  FirefoxBinary<br><span style="color: #4038e3">import time<br><br><span style="color: #4038e3">class <span style="color: #dd2eee">LoginCase(unittest.TestCase):<br><span style="color: #4038e3">def <span style="color: #990000; font-weight: bold">setUp(<span style="color: #94558d">self):<br>        binary=FirefoxBinary(<span style="color: #ef3142">'F:<span style="color: #000080; font-weight: bold">\\<span style="color: #ef3142">ff<span style="color: #000080; font-weight: bold">\\<span style="color: #ef3142">MozillaFirefox50.1.0<span style="color: #000080; font-weight: bold">\\<span style="color: #ef3142">firefox.exe')<br><span style="color: #94558d">self.driver=webdriver.Firefox(<span style="color: #660099">firefox_binary=binary)<br><span style="color: #94558d">self.url=<span style="color: #ef3142">'https://passport.cnblogs.com/user/signin?ReturnUrl=https%3A%2F%2Fwww.cnblogs.com%2F'<br><span style="color: #ef3142"><br><span style="color: #ef3142">    <span style="color: #577999; font-style: italic">#<span style="color: #577999; font-style: italic; font-family: "宋体"">定义登录的方法<br><span style="color: #577999; font-style: italic; font-family: "宋体"">    <span style="color: #4038e3">def <span style="color: #990000; font-weight: bold">login(<span style="color: #94558d">self,<span style="font-style: italic">username,<span style="font-style: italic">password):<br>        driver=<span style="color: #94558d">self.driver<br>        url=<span style="color: #94558d">self.url<br>        driver.get(url)<br>        driver.find_element_by_id(<span style="color: #ef3142">'input1').send_keys(<span style="font-style: italic">username)<br>        driver.find_element_by_id(<span style="color: #ef3142">'input2').send_keys(<span style="font-style: italic">password)<br>        driver.find_element_by_id(<span style="color: #ef3142">'signin').click()<br><br><span style="color: #577999; font-style: italic">#@unittest.skip(u'<span style="color: #577999; font-style: italic; font-family: "宋体"">条件均正确暂时跳过<span style="color: #577999; font-style: italic">')<br><span style="color: #577999; font-style: italic">    <span style="color: #4038e3">def <span style="color: #990000; font-weight: bold">test_login_success(<span style="color: #94558d">self):<br><span style="color: #161b99; font-style: italic">'''username and password right'''<br><span style="color: #161b99; font-style: italic">        <span style="color: #94558d">self.login(<span style="color: #ef3142">'Qigege',<span style="color: #ef3142">'******')<br>        time.sleep(<span style="color: #549937">2)<br>        link=<span style="color: #94558d">self.driver.find_element_by_link_text(<span style="color: #ef3142">'Qigege')<br><span style="color: #94558d">self.assertTrue(<span style="color: #ef3142">'Qigege' <span style="color: #4038e3">in link.text)<br><span style="color: #577999; font-style: italic">#<span style="color: #577999; font-style: italic; font-family: "宋体"">截图<br><span style="color: #577999; font-style: italic; font-family: "宋体"">        <span style="color: #94558d">self.driver.get_screenshot_as_file(<span style="color: #ef3142">'E:<span style="color: #000080; font-weight: bold">\\<span style="color: #ef3142">py-sql<span style="color: #000080; font-weight: bold">\\<span style="color: #ef3142">example<span style="color: #000080; font-weight: bold">\\<span style="color: #ef3142">pro5_note<span style="color: #000080; font-weight: bold">\\<span style="color: #ef3142">user_pwd.jpg')<br><span style="color: #4038e3">print <span style="color: #008080; font-weight: bold">u'<span style="color: #008080; font-weight: bold; font-family: "宋体"">条件均正确<span style="color: #008080; font-weight: bold">——<span style="color: #008080; font-weight: bold; font-family: "宋体"">测试用例<span style="color: #008080; font-weight: bold">'<br><span style="color: #008080; font-weight: bold"><br><span style="color: #008080; font-weight: bold">    <span style="color: #577999; font-style: italic">#@unittest.skip(u'<span style="color: #577999; font-style: italic; font-family: "宋体"">密码错误暂时跳过<span style="color: #577999; font-style: italic">')<br><span style="color: #577999; font-style: italic">    <span style="color: #4038e3">def <span style="color: #990000; font-weight: bold">test_login_pwd_error(<span style="color: #94558d">self):<br><span style="color: #161b99; font-style: italic">'''username right and password error'''<br><span style="color: #161b99; font-style: italic">        <span style="color: #94558d">self.login(<span style="color: #ef3142">'Qigege',<span style="color: #ef3142">'123123')<br>        time.sleep(<span style="color: #549937">2)<br>        link=<span style="color: #94558d">self.driver.find_element_by_id(<span style="color: #ef3142">'tip_btn')<br><span style="color: #94558d">self.assertTrue(<span style="color: #008080; font-weight: bold">u'<span style="color: #008080; font-weight: bold; font-family: "宋体"">用户名或密码错误<span style="color: #008080; font-weight: bold">',link.text)<br><span style="color: #94558d">self.driver.get_screenshot_as_file(<span style="color: #ef3142">'E:<span style="color: #000080; font-weight: bold">\\<span style="color: #ef3142">py-sql<span style="color: #000080; font-weight: bold">\\<span style="color: #ef3142">example<span style="color: #000080; font-weight: bold">\\<span style="color: #ef3142">pro5_note<span style="color: #000080; font-weight: bold">\\<span style="color: #ef3142">err_pwd.jpg')<br><span style="color: #4038e3">print <span style="color: #008080; font-weight: bold">u'<span style="color: #008080; font-weight: bold; font-family: "宋体"">密码错误<span style="color: #008080; font-weight: bold">——<span style="color: #008080; font-weight: bold; font-family: "宋体"">测试用例<span style="color: #008080; font-weight: bold">'<br><span style="color: #008080; font-weight: bold"><br><span style="color: #008080; font-weight: bold">    <span style="color: #577999; font-style: italic">#@unittest.skip(u'<span style="color: #577999; font-style: italic; font-family: "宋体"">密码为空暂时跳过<span style="color: #577999; font-style: italic">')<br><span style="color: #577999; font-style: italic">    <span style="color: #4038e3">def <span style="color: #990000; font-weight: bold">test_login_pwd_null(<span style="color: #94558d">self):<br><span style="color: #161b99; font-style: italic">'''username right and password null'''<br><span style="color: #161b99; font-style: italic">        <span style="color: #94558d">self.login(<span style="color: #ef3142">'Qigege',<span style="color: #ef3142">'')<br>        time.sleep(<span style="color: #549937">2)<br>        link=<span style="color: #94558d">self.driver.find_element_by_id(<span style="color: #ef3142">'tip_input2')<br><span style="color: #94558d">self.assertTrue(<span style="color: #008080; font-weight: bold">u'<span style="color: #008080; font-weight: bold; font-family: "宋体"">请输入密码<span style="color: #008080; font-weight: bold">' <span style="color: #4038e3">in link.text)<br><span style="color: #94558d">self.driver.get_screenshot_as_file(<span style="color: #ef3142">'E:<span style="color: #000080; font-weight: bold">\\<span style="color: #ef3142">py-sql<span style="color: #000080; font-weight: bold">\\<span style="color: #ef3142">example<span style="color: #000080; font-weight: bold">\\<span style="color: #ef3142">pro5_note<span style="color: #000080; font-weight: bold">\\<span style="color: #ef3142">null_pwd.jpg')<br><span style="color: #4038e3">print <span style="color: #008080; font-weight: bold">u'<span style="color: #008080; font-weight: bold; font-family: "宋体"">密码为空<span style="color: #008080; font-weight: bold">——<span style="color: #008080; font-weight: bold; font-family: "宋体"">测试用例<span style="color: #008080; font-weight: bold">'<br><span style="color: #008080; font-weight: bold"><br><span style="color: #008080; font-weight: bold">    <span style="color: #4038e3">def <span style="color: #990000; font-weight: bold">test_login_user_err(<span style="color: #94558d">self):<br><span style="color: #161b99; font-style: italic">'''username error and password right'''<br><span style="color: #161b99; font-style: italic">        <span style="color: #94558d">self.login(<span style="color: #ef3142">'gege',<span style="color: #ef3142">'******')<br>        time.sleep(<span style="color: #549937">2)<br>        link=<span style="color: #94558d">self.driver.find_element_by_id(<span style="color: #ef3142">'tip_input2')<br><span style="color: #94558d">self.assertTrue(<span style="color: #008080; font-weight: bold">u'<span style="color: #008080; font-weight: bold; font-family: "宋体"">用户名或密码错误<span style="color: #008080; font-weight: bold">',link.text)<br><span style="color: #94558d">self.driver.get_screenshot_as_file(<span style="color: #ef3142">'E:<span style="color: #000080; font-weight: bold">\\<span style="color: #ef3142">py-sql<span style="color: #000080; font-weight: bold">\\<span style="color: #ef3142">example<span style="color: #000080; font-weight: bold">\\<span style="color: #ef3142">pro5_note<span style="color: #000080; font-weight: bold">\\<span style="color: #ef3142">err_user.jpg')<br><span style="color: #4038e3">print <span style="color: #008080; font-weight: bold">u'<span style="color: #008080; font-weight: bold; font-family: "宋体"">用户名错误<span style="color: #008080; font-weight: bold">——<span style="color: #008080; font-weight: bold; font-family: "宋体"">测试用例<span style="color: #008080; font-weight: bold">'<br><span style="color: #008080; font-weight: bold"><br><span style="color: #008080; font-weight: bold">    <span style="color: #4038e3">def <span style="color: #990000; font-weight: bold">test_login_user_null(<span style="color: #94558d">self):        '''username null and password right'''        self.login('','******')        link=self.driver.find_element_by_id('tip_input1')        self.assertTrue(u'请输入登录用户名' in link.text)        self.driver.get_screenshot_as_file('E:\\py-sql\\example\\pro5_note\\null_user.jpg')        print u'用户名为空——测试用例'    def tearDown(self):        time.sleep(2)        print u'测试完毕!'        self.driver.quit()if __name__=='__main__':    unittest.main()</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span>

以上就是一次完整的自动化登录测试-2017-7-4的详细内容,更多文章请关注木庄网络博客!!

相关阅读 >>

基于类的视图

Python 2.7输出中文字符串出现错误如何解决?

浅谈numpy数组的几种排序方式_Python

Python中返回矩阵的行列方法

引用库使用的保留字是什么

Python爬虫可以赚钱吗

怎么用Python建数学模型

Python 元类实例解析_Python

win10怎么装Python

Python中如何用django连接数据库(图文)

更多相关阅读请进入《Python》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...