Unittest 与 selenium结合

代码实现

import unittest
from time import sleep
from selenium import webdriver

class YouJiuyeTest(unittest.TestCase):
    def setUp(self):
        self.chrome = webdriver.Chrome()
        self.chrome.get("http://xue.ujiuye.com/foreuser/login/")
    def test_login_password(self):
        username_d1 = self.chrome.find_element_by_id("username_dl")
        password_dl = self.chrome.find_element_by_id("password_dl")
        button = self.chrome.find_elements_by_class_name("loginbutton1")

        username_d1.send_keys("13331153361")
        password_dl.send_keys("123")
        button[0].click()

        text = self.chrome.find_element_by_id("J_usernameTip").text
        self.assertEqual("密码应该为6-20位之间!",text,"密码太短提示内容有误")
    def test_login_username(self):
        username_d1 = self.chrome.find_element_by_id("username_dl")
        password_dl = self.chrome.find_element_by_id("password_dl")
        button = self.chrome.find_elements_by_class_name("loginbutton1")

        username_d1.send_keys("13331153361")
        password_dl.send_keys("123456789")
        button[0].click()

        text = self.chrome.find_element_by_id("J_usernameTip").text
        self.assertEqual("账号不存在", text, "提示内容有误")

    def tearDown(self):
        sleep(10)
        self.chrome.close()



if __name__ == '__main__':
    unittest.main()

结构优化:


import unittest
from time import sleep
from selenium import webdriver

class YouJiuyeTest(unittest.TestCase):
    def setUp(self):
        self.chrome = webdriver.Chrome()
        self.chrome.get("http://xue.ujiuye.com/foreuser/login/")

    def login(self,username,pasword):
        username_d1 = self.chrome.find_element_by_id("username_dl")
        password_dl = self.chrome.find_element_by_id("password_dl")
        button = self.chrome.find_elements_by_class_name("loginbutton1")
        username_d1.send_keys(username)
        password_dl.send_keys(pasword)
        button[0].click()
        text = self.chrome.find_element_by_id("J_usernameTip").text
        return text

    def test_login_password(self):
        text = self.login("13331153361","123")
        self.assertEqual("密码应该为6-20位之间!",text,"密码太短提示内容有误")
    def test_login_username(self):
        text = self.login("13331153361","12345678")
        self.assertEqual("账号不存在", text, "提示内容有误")

    def tearDown(self):
        sleep(10)
        self.chrome.close()

if __name__ == '__main__':
    unittest.main()

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python unittestPython标准库中的一个模块,用于编写和执行单元测试。它提供了一组用于测试代码的工具和方法。Selenium是一个用于自动化浏览器操作的工具,可以模拟用户在浏览器中的行为。通过结合使用Python unittestSelenium,可以编写自动化测试脚本来测试网页应用程序的功能和交互。\[1\] 在给出的测试用例参考中,使用了Python unittestSelenium来进行百度搜索的自动化测试。首先,通过继承TestBase类,可以在setUp方法中进行测试环境的准备,包括启动浏览器、设置隐式等待和最大化浏览器窗口。然后,在test_baidu_search方法中,使用Cloud类来操作百度搜索页面,输入关键字并点击搜索按钮。接着,使用time.sleep方法等待页面加载完成,并调用get_windows_img方法进行截图。最后,使用断言来验证搜索结果是否符合预期。如果断言通过,则打印"Test Pass.",否则打印"Test Fail."。\[2\] 在testsuite部分,每个测试用例执行前的准备和清理工作可以在test_base文件中的setUp和tearDown方法中进行设置。setUp方法中启动浏览器、设置隐式等待和最大化浏览器窗口,tearDown方法中关闭浏览器。通过继承TestBase类,并在if __name__=='__main__'中调用unittest.main()方法,可以执行测试用例。\[3\] 综上所述,Python unittestSelenium可以结合使用来进行自动化测试,通过编写测试用例和设置测试环境,可以对网页应用程序进行功能和交互的测试。 #### 引用[.reference_title] - *1* *2* *3* [python+selenium+unittest自动化测试框架](https://blog.csdn.net/Wuli_SmBug/article/details/86617212)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值