Sunday, November 17, 2024
Google search engine
HomeLanguagesPytest – Starting With Basic Test

Pytest – Starting With Basic Test

PythonPytest is a framework based on Python. It is mainly used to write API test cases. It helps you write better programs. In the present days of REST services, Pytest is mainly used for API testing even though we can use Pytest to write simple to complex test cases, i.e., we can write codes to test API, UI, database, etc.

Advantages of Pytest

  • Pytest can run multiple test cases in parallel, which reduces the execution time of the test suite.
  • Pytest has its own way of detecting the test file and test functions automatically, if not mentioned explicitly.
  • It allows us to skip a subset of the tests during execution.
  • It is free and open source.

Pytest – Starting With Basic Test

It’s better to test your programs in Visual Studio code. Make sure Python has to be installed in your system and its extensions have to be installed in VS Code before testing your code.

Install Pytest in Visual Studio Code

  • Open the Visual Studio Code.
  • Go to terminal
  • write “pip install -U pytest

Write our Basic Test

In this example, we first imported the Pytest module. After that we have defined a function func(x). In this function, it adds 5 to x and returns the result. Then, we defined another function named test_method. It uses an assert statement to check whether the result of func(3) is equal to 8. The purpose of this test is to verify that when you pass 3 as an argument to func, it correctly adds 5 to it, resulting in 8. If this condition is true, the test passes; otherwise, it will raise an assertion error.

test_sample.py: Passed Test Case

Python3




# importing the module
import pytest
 
#defining a function with parameter x
def func(x):
    return x+5
 
#defining an another function 
def test_method():
#check whether 3+5 = 8 or not by passing 3 as an argument in function x
    assert func(3) == 8


Run the Program

Just type the following command to run the program to run the code:

pytest test_sample.py

Output

In the below output, the argument 3 adds to 5 resulting in 8. And the condition is true. So, the test has passed.

py1

Example 2: Failed Test Case

In the below example, the argument 3 adds to 5 and resulting in 8. The condition has failed and it raised an assertion error.

Python3




# importing the module
import pytest
 
#defining a function with parameter x
def func(x):
  return x+5
 
#defining an another function
def test_method():
 #check whether 3+5 = 5 or not by passing 3 as an argument in function x
  assert func(3) == 5


Output

py2

Multiple Tests at a Time

In this example, we firstly import the module pytest. Then, define a function named test_answer1. Inside this function, assign the values 5 and 10 to the variables a and b. And check whether a and b are equal or not. If the condition is true, the test will be passed. Otherwise, it will raise an assertion error. Define an another function named test_answer2. Inside this function, assign the 15 and (3*5) to the variables c and d. And check whether c and d are equal or not. If the condition is true, the test will be passed. Otherwise, it will raise an assertion error.

Python3




import pytest
 
def test_answer1():
  a = 5
  b = 10
  assert a==b
   
def test_answer2():
  c = 15
  d = 3*5
  assert c==d


Run the first function “test_answer1”. Just type the following in the terminal.

py.test -k answer1 -v 

Output

py4

In the first function i.e test_answer1, the variable a is not equal to the variable b. So, it raised an assertion error. Run the second function test_answer2. Just type the following in the terminal:

py.test -k answer2 -v

Output

py6

In this case, the variable c is eaual to the variable d. So, the test passed.

Dominic Rubhabha-Wardslaus
Dominic Rubhabha-Wardslaushttp://wardslaus.com
infosec,malicious & dos attacks generator, boot rom exploit philanthropist , wild hacker , game developer,
RELATED ARTICLES

Most Popular

Recent Comments