pytest 代码示例
时间: 2023-11-23 09:54:03 浏览: 175
这些引用提供了关于使用pytest编写测试用例的示例。pytest是一个Python测试框架,它提供了许多有用的功能,例如自动发现测试用例,断言测试结果,以及使用装饰器标记测试用例等。在这些示例中,我们可以看到如何编写测试用例,如何使用装饰器标记测试用例,以及如何使用-m标记执行指定的测试用例。这些示例可以帮助开发人员更好地理解如何使用pytest编写高质量的测试用例。
相关问题
pytest断言示例
当使用 pytest 进行测试时,可以使用断言来验证代码的预期行为。下面是一个简单的 pytest 断言示例:
```python
def add_numbers(x, y):
return x + y
def test_add_numbers():
assert add_numbers(2, 3) == 5
assert add_numbers(0, 0) == 0
assert add_numbers(-1, 1) ==0
```
在这个示例中,我们定义了一个名为 `add_numbers` 的函数,该函数将两个数字相加并返回结果。然后,我们使用 pytest 定义了一个名为 `test_add_numbers` 的测试函数,并在其中使用断言进行多个验证。
每个断言语句都包含 `assert` 关键字,它用于判断条件是否为真。如果条件为假,则断言失败,pytest 将会抛出 AssertionError。如果条件为真,则测试通过。
在上述示例中,我们使用了三个断言来验证 `add_numbers` 函数的不同输入和输出。如果所有断言都通过,说明函数按预期工作;如果有任何一个断言失败,说明函数存在问题。
希望这个示例能帮助你理解如何使用 pytest 进行断言。如果你有其他问题,请随时提问!
pytest代码演示
当使用pytest进行代码测试时,可以通过编写测试函数和使用pytest提供的装饰器来定义测试用例。下面是一个简单的pytest代码演示:
```python
# test_calc.py
def add(x, y):
return x + y
def subtract(x, y):
return x - y
def multiply(x, y):
return x * y
def divide(x, y):
if y == 0:
raise ValueError("Cannot divide by zero!")
return x / y
def test_add():
assert add(2, 3) == 5
assert add(5, -2) == 3
def test_subtract():
assert subtract(5, 3) == 2
assert subtract(10, 5) == 5
def test_multiply():
assert multiply(2, 3) == 6
assert multiply(4, -2) == -8
def test_divide():
assert divide(10, 2) == 5
assert divide(8, 4) == 2
def test_divide_by_zero():
try:
divide(10, 0)
except ValueError as e:
assert str(e) == "Cannot divide by zero!"
```
在上面的示例中,我们定义了一些简单的数学运算函数(add、subtract、multiply、divide),并编写了对应的测试函数(test_add、test_subtract、test_multiply、test_divide)。每个测试函数使用了pytest提供的assert语句来断言函数的返回值是否符合预期。
要运行这些测试用例,只需在命令行中执行`pytest`命令,pytest会自动查找并执行以`test_`开头的函数。
阅读全文