自动化测试---unittest 与 selenium结合

测试58同城登录页面错误提示:
针对密码长度不够和账户不存在举例

试用版本:

import unittest
from time import sleep
from selenium import webdriver

class Tongcheng58(unittest.TestCase):
    def setUp(self):
        self.chrome = webdriver.Chrome()
        self.chrome.get("https://passport.58.com/login/")

    def test_login_one(self):
        user_pass = self.chrome.find_element_by_class_name("qrcode")
        user_pass.click()
        username_u1 = self.chrome.find_element_by_id("username")
        password_u1 = self.chrome.find_element_by_id("password")
        button = self.chrome.find_element_by_id("btn_account")

        username_u1.send_keys("13371054432")
        password_u1.send_keys("123")
        button.click()

        text = self.chrome.find_element_by_class_name("password_msgtext").text

        self.assertEqual("密码太短,最少6位",text,"密码太短,提示内容有误")

    def test_login_two(self):
        user_pass = self.chrome.find_element_by_class_name("qrcode")
        user_pass.click()
        username_u1 = self.chrome.find_element_by_id("username")
        password_u1 = self.chrome.find_element_by_id("password")
        button = self.chrome.find_element_by_id("btn_account")

        username_u1.send_keys("13371054432")
        password_u1.send_keys("1234567")
        button.click()

        text = self.chrome.find_element_by_class_name("password_msgtext").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
# 有一个注意点,unittest单元测试用例方法一般都是test开头
# 定义一个测试用例类,继承unittest.TestCase
class Tongcheng58(unittest.TestCase):
    def setUp(self):
    	‘’‘
		相当于init方法,初始化
		’‘’
        self.chrome = webdriver.Chrome() # 实例化浏览器驱动
        self.chrome.get("https://passport.58.com/login/") # 访问58登录页面

    def login(self,username,password): #定义登陆方法,获取页面指定元素,传递参数
        # 页面默认扫码登录,此举在跳到用户名密码登录界面
        user_pass = self.chrome.find_element_by_class_name("qrcode")
        user_pass.click()
        # 获取用户名输入框元素
        username_u1 = self.chrome.find_element_by_id("username")
        # 获取密码输入框元素
        password_u1 = self.chrome.find_element_by_id("password")
        # 获取“登录”按钮元素
        button = self.chrome.find_element_by_id("btn_account")
        # 传输用户名
        username_u1.send_keys(username)
        # 传输密码
        password_u1.send_keys(password)
        # 进行点击事件
        button.click()
		# 获取登录错误提示文本
        text = self.chrome.find_element_by_class_name("password_msgtext").text
		# 返回提示的文本内容
        return text
	#第一个测试用例
    def test_login_one(self):
        text = self.login("13371054432","123")
        #断言方法,判断结果是否和预期一致
        self.assertEqual("密码太短,最少6位",text,"密码太短,提示内容有误")
	#第二个测试用例
    def test_login_two(self):
        text = self.login("13371054432","123456")
        self.assertEqual("该用户不存在",text,"账户有误,提示内容有误")
    def tearDown(self):#相当于del方法,测试用例完成回收
        sleep(10)
        self.chrome.close()


if __name__ == '__main__':
    unittest.main()#程序主入口

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

孜孜孜孜不倦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值