栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

软件测试电商平台之登录模块

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

软件测试电商平台之登录模块

适合软件测试的练手项目

文章目录

  • 登录用例
  • 自动化测试

前言

登录需求分析:

测试账号:13800138006密码:123456

手机号11位

密码6-16位大小写字母数字的组合

一、登录用例

二、自动化测试

代码目录

 base.py文件

#导包
import time
from selenium import webdriver
from selenium.webdriver.support.wait import WebDriverWait


class Base:
    # 初始化
    def __init__(self):
        self.driver = webdriver.Chrome()
        self.driver.maximize_window()
        self.driver.get('http://www.testingedu.com.cn:8000/Home/Index/index.html')

    # 查找元素方法
    def base_find_element(self, loc, t=30, p=0.5):
        return WebDriverWait(self.driver, timeout=t, poll_frequency=p).until(lambda x: x.find_element(*loc))

    # 点击方法
    def base_click(self, loc):
        self.base_find_element(loc).click()

    # 输入方法
    def base_input(self, loc, value):
        el = self.base_find_element(loc)
        # 清空
        el.clear()
        # 输入
        el.send_keys(value)

    # 获取文本
    def base_get_text(self, loc):
        return self.base_find_element(loc).text

    # 截图
    def base_image(self):
        self.driver.get_screenshot_as_file("../image/%s.png" % (time.strftime("%Y_%m_%d %H_%M_%S")))
page_login.py文件
from login import page
from login.base.base import Base

class Pagelogin(Base):

    # 点击登录链接
    def page_click_login_link(self):
        self.base_click(page.login_link)

    # 输入用户名
    def page_input_username(self, user):
        self.base_input(page.login_username, user)

    # 输入密码
    def page_input_password(self, pas):
        self.base_input(page.login_pwd, pas)

    # 输入验收码
    def page_input_verify_code(self, code):
        self.base_input(page.login_verify_code, code)

    # 点击登录按钮
    def page_click_login_btn(self):
        self.base_click(page.login_btn)

    # 点击提示框的确认按键
    def page_click_OK(self):
        self.base_click(page.login_ok)

    # 获取异常信息
    def page_get_error_info(self):
        return self.base_get_text(page.login_err_info)

    # 截图
    def page_get_img(self):
        self.base_image()

    # 组合业务方法
    def page_login(self, user, pas, code):
        self.page_input_username(user)
        self.page_input_password(pas)
        self.page_input_verify_code(code)
        self.page_click_login_btn()
        self.page_click_OK()

page文件夹中__init__配置文件

from selenium.webdriver.common.by import By

"""以下为登录页面元素配置信息"""
# 登录链接


login_link = By.PARTIAL_LINK_TEXT, "登录"
# 用户名
login_username = By.NAME, "username"
# 密码
login_pwd = By.NAME, "password"
# 验证码
login_verify_code = By.NAME, "verify_code"
# 登录按钮
login_btn = By.NAME, "sbtbutton"
# 获取异常文本信息
login_err_info = By.CLASS_NAME, "layui-layer-content"
#提示框确认按钮
login_ok=By.CSS_SELECtOR, ".layui-layer-btn0"
# 点击异常提示框 按钮
#login_err_btn_ok = By.CSS_SELECTOR, ".layui-layer-btn0"

test_login.py测试文件

# 导包
import unittest
from login.page.page_login import Pagelogin
from parameterized import parameterized

def get_data():
    return [("1380013800", "123456", "1234", "账号格式不匹配!"),
            ("", "123456", "1234", "用户名不能为空!"),
            ("1380013800a", "123456", "1234", "账号格式不匹配!"),
            ("13800138888 ", "123456", "1234", "账号不存在!"),
            ("13800138006", "123", "1234", "密码错误!"),
            ("13800138006", "123456891012345678910", "1234", "密码错误!"),
            ("1380013800!", "123456", "1234", "账号格式不匹配!"),
            ("13800138006", "", "1234", "密码不能为空!")]

class TestLogin(unittest.TestCase):
    login = None
    @classmethod
    def setUpClass(cls) -> None:
        # 实例化,获取页面对象
        cls.login = Pagelogin()
        # 点击登录
        cls.login.page_click_login_link()

    @classmethod
    def tearDownClass(cls) -> None:
        cls.login.driver.quit()

    # 登录测试方法
    @parameterized.expand(get_data())
    def test_login(self, username, password, code, expect):
        self.login.page_login(username, password, code)
        # 获取异常信息
        msg = self.login.page_get_error_info()
        print(msg)
        try:
            self.assertEqual(msg, expect)
        except AssertionError:
            self.login.page_get_img()

运行视频

DSTest – test_login.py

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1008217.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号