allure.tag用法
时间: 2023-07-17 14:59:48 浏览: 50
在测试框架pytest中,allure提供了一个装饰器`@allure.tag`,用于给测试用例添加标签(tag)。标签可以帮助我们对测试用例进行分类、过滤和分组,以便更好地组织和管理测试。
`@allure.tag`的使用方法如下:
1. 导入allure模块:
```python
import allure
```
2. 在测试用例函数上添加`@allure.tag`装饰器,并传入标签名作为参数:
```python
@allure.tag("标签名")
def test_example():
# 测试用例的代码
...
```
3. 运行测试时,可以使用`-m`参数指定要运行的标签,例如:
```shell
pytest -m 标签名
```
通过使用`@allure.tag`装饰器,可以给测试用例添加多个标签,并且可以在运行测试时根据标签进行过滤和选择运行。这样就可以更灵活地组织和管理测试用例。
相关问题
@pytest.mark.parametrize 或者 @pytest.mark.allure.step用法
`@pytest.mark.parametrize` 是 pytest 提供的一个装饰器,可以用于参数化测试用例。它可以让我们在测试用例中使用多组参数来执行同一个测试用例,从而减少测试用例的编写量,提高效率。
示例代码:
```python
import pytest
@pytest.mark.parametrize("input, expected_output", [
(1, 2),
(2, 3),
(3, 4),
(4, 5),
])
def test_increment(input, expected_output):
assert input+1 == expected_output
```
`@pytest.mark.allure.step` 也是 pytest 提供的一个装饰器,用于生成测试报告。它可以将测试用例中的每个步骤作为报告的一个单独的步骤展示,从而更直观地展示测试用例的执行情况。
示例代码:
```python
import pytest
import allure
@allure.step("输入用户名和密码")
def input_username_and_password(username, password):
pass
@allure.step("点击登录按钮")
def click_login_button():
pass
@allure.step("验证登录成功")
def verify_login_success():
pass
def test_login():
input_username_and_password("testuser", "testpass")
click_login_button()
verify_login_success()
```
以上是 `@pytest.mark.parametrize` 和 `@pytest.mark.allure.step` 的基本用法。需要注意的是,`@pytest.mark.allure.step` 需要安装 `pytest-allure-adaptor` 才能正常使用。
@allure.severity(allure.severity_level.TRIVIAL)
@allure.severity是一个装饰器,用于设置测试用例的严重程度。它需要传入一个allure.severity_level枚举类型的参数,包括以下几个选项:
- BLOCKER:阻塞缺陷,影响系统无法继续进行
- CRITICAL:严重缺陷,影响系统主要功能
- NORMAL:普通缺陷,影响系统次要功能
- MINOR:次要缺陷,影响系统辅助功能
- TRIVIAL:轻微缺陷,不影响系统功能
示例如下:
```python
import allure
@allure.severity(allure.severity_level.CRITICAL)
def test_login():
assert login() == "success"
```
在这个示例中,我们使用@allure.severity装饰器将test_login测试用例设置为CRITICAL级别的严重程度,代表这个测试用例是一个严重缺陷,影响系统主要功能。如果这个测试用例在测试过程中失败了,测试报告中会将其标记为一个CRITICAL级别的缺陷,帮助测试人员更加快速、准确地定位问题。