allure在自动化测试的用法

Posted on 2021-08-17 14:22  天堂炼狱  阅读(160)  评论(0编辑  收藏  举报
import os
import allure
import pytest
from PageLocator.FirstPage import FirstPage as fp
from PageLocator.LoginPage import LoginPage as lp
from common.test_base_ui_key import HttpClient

"""
    feature 特性名称
    story 用户场景/故事
    title 对应用例标题
    testcase 对应禅道系统的bug用例url地址,关联起来
    issue 如果这个用例有bug ,应该关联对应的bug地址
    step  用例步骤描述
    功能用例整体描述: 卸载用例方法的注释里面
"""



@allure.story("输入正确账号密码登录shopxo系统")
@allure.title("登录shopxo商城系统")
@allure.issue("http://zd.pamodata.com:8082/index.php?m=bug&f=edit&bugID=1108")
@allure.testcase("http://zd.pamodata.com:8082/index.php?m=testcase&f=view&caseID=14&version=2")
def test_login_normal(browser):
    """
    1, 访问url
    2,点击登录按钮
    3,输入账号
    4,输入密码
    5,点击登录进行登录商城系统
    :param browser:
    :return:
    """
    driver = browser
    with allure.step('输入账号'):
        driver.input(lp.username, "plz_123456")
    with allure.step('输入密码'):
        driver.input(lp.password, "123456")
    with allure.step('点击登录按钮'):
        driver.click(lp.login_button)
        driver.quit()

@allure.story("输入正确账号错误密码登录shopxo系统")
@allure.title("登录shopxo商城系统")
@allure.issue("http://zd.pamodata.com:8082/index.php?m=bug&f=edit&bugID=1108")
@allure.testcase("http://zd.pamodata.com:8082/index.php?m=testcase&f=view&caseID=14&version=2")
def test_login_error_01():
    """
    1, 访问url
    2,点击登录按钮
    3,输入账号
    4,输入错误密码
    5,点击登录进行登录商城系统
    :param browser:
    :return:
    """
    print("test_login_error_01")


@allure.story("输入错误账号正确密码登录shopxo系统")
@allure.title("登录shopxo商城系统")
@allure.issue("http://zd.pamodata.com:8082/index.php?m=bug&f=edit&bugID=1108")
@allure.testcase("http://zd.pamodata.com:8082/index.php?m=testcase&f=view&caseID=14&version=2")
def test_login_error_02():
    """
    1, 访问url
    2,点击登录按钮
    3,输入账号
    4,输入错误密码
    5,点击登录进行登录商城系统
    :param :
    :return:
    """
    print("test_login_error_02")


@allure.story("输入空账号正确密码登录shopxo系统")
@allure.title("登录shopxo商城系统")
@allure.issue("http://zd.pamodata.com:8082/index.php?m=bug&f=edit&bugID=1108")
@allure.testcase("http://zd.pamodata.com:8082/index.php?m=testcase&f=view&caseID=14&version=2")
def test_login_error_03():
    """
    1, 访问url
    2,点击登录按钮
    3,输入空账号
    4,输入密码
    5,点击登录进行登录商城系统
    :param :
    :return:
    """
    print("test_login_error_03")


@allure.story("输入正确账号空密码登录shopxo系统")
@allure.title("登录shopxo商城系统")
@allure.issue("http://zd.pamodata.com:8082/index.php?m=bug&f=edit&bugID=1108")
@allure.testcase("http://zd.pamodata.com:8082/index.php?m=testcase&f=view&caseID=14&version=2")
def test_login_error_04():
    """
    1, 访问url
    2,点击登录按钮
    3,输入账号
    4,输入空密码
    5,点击登录进行登录商城系统
    :param :
    :return:
    """
    print("test_login_error_04")

if __name__ == '__main__':
    pytest.main(['-s', 'test_002.py', '--alluredir', './result'])
    os.system('allure serve result')

用例级别的设置:

import os
import allure
import pytest

"""
allure 对用例划分为5个等级
blocker 阻塞缺陷(功能未实现无法进行下一步)
critical 严重缺陷(功能点缺失)
normal 一般缺陷(边界情况,格式错误)
minor   次要缺陷(界面错误与ui需求不符)
trivial  轻微缺陷(必须项无提示,或者提示不规范)
"""


@allure.severity("normal")
def test_case_01():
    """
        修改个人姓名-置空
    """
    print("test-case_1111")
@allure.severity("critical")
def test_case_02():
    """
    修改个人姓名-设置为系统已有人员的身份证信息

    """
    print("test case 2222")
@allure.severity("blocker")
def test_case_03():
    """
    修改个人姓名-生日必填项置空保存

    """
    print("test case 3333333")

@allure.severity("minor")
def test_case_04():
    """
        修改个人姓名-点击保存,修改成功
    """
    print("test case 4444444")
@allure.severity("trivial")
def test_case_5():
    """
        没标记等级的默认为normal
    """
    print("test case 5555555")


if __name__ == '__main__':
    # pytest.main(['-s','test_case_01.py','--alluredir','./result'])
    pytest.main(['-s', 'test_003.py', '--alluredir', './result',
                 '--allure-severities','blocker,critical','--clean-alluredir'])
    os.system('allure serve result')

 

Copyright © 2024 天堂炼狱
Powered by .NET 9.0 on Kubernetes