How To Install python3-testinfra on Fedora 36

In this tutorial we learn how to install python3-testinfra in Fedora 36. python3-testinfra is Unit testing for config-managed server state

Introduction

In this tutorial we learn how to install python3-testinfra on Fedora 36.

What is python3-testinfra

With Testinfra you can write unit tests in Python to test actual state of your servers configured by management tools like Salt, Ansible, Puppet, Chef and so on. Testinfra aims to be a Serverspec equivalent in python and is written as a plugin to the powerful Pytest test engine.

We can use yum or dnf to install python3-testinfra on Fedora 36. In this tutorial we discuss both methods but you only need to choose one of method to install python3-testinfra.

Install python3-testinfra on Fedora 36 Using dnf

Update yum database with dnf using the following command.

sudo dnf makecache --refresh

After updating yum database, We can install python3-testinfra using dnf by running the following command:

sudo dnf -y install python3-testinfra

Install python3-testinfra on Fedora 36 Using yum

Update yum database with yum using the following command.

sudo yum makecache --refresh

After updating yum database, We can install python3-testinfra using yum by running the following command:

sudo yum -y install python3-testinfra

How To Uninstall python3-testinfra on Fedora 36

To uninstall only the python3-testinfra package we can use the following command:

sudo dnf remove python3-testinfra

python3-testinfra Package Contents on Fedora 36

/usr/lib/python3.10/site-packages/testinfra
/usr/lib/python3.10/site-packages/testinfra-5.3.1-py3.10.egg-info
/usr/lib/python3.10/site-packages/testinfra-5.3.1-py3.10.egg-info/PKG-INFO
/usr/lib/python3.10/site-packages/testinfra-5.3.1-py3.10.egg-info/SOURCES.txt
/usr/lib/python3.10/site-packages/testinfra-5.3.1-py3.10.egg-info/dependency_links.txt
/usr/lib/python3.10/site-packages/testinfra-5.3.1-py3.10.egg-info/entry_points.txt
/usr/lib/python3.10/site-packages/testinfra-5.3.1-py3.10.egg-info/requires.txt
/usr/lib/python3.10/site-packages/testinfra-5.3.1-py3.10.egg-info/top_level.txt
/usr/lib/python3.10/site-packages/testinfra/__init__.py
/usr/lib/python3.10/site-packages/testinfra/__pycache__
/usr/lib/python3.10/site-packages/testinfra/__pycache__/__init__.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/__pycache__/__init__.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/__pycache__/host.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/__pycache__/host.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/__pycache__/main.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/__pycache__/main.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/__pycache__/plugin.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/__pycache__/plugin.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/backend
/usr/lib/python3.10/site-packages/testinfra/backend/__init__.py
/usr/lib/python3.10/site-packages/testinfra/backend/__pycache__
/usr/lib/python3.10/site-packages/testinfra/backend/__pycache__/__init__.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/backend/__pycache__/__init__.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/backend/__pycache__/ansible.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/backend/__pycache__/ansible.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/backend/__pycache__/base.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/backend/__pycache__/base.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/backend/__pycache__/docker.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/backend/__pycache__/docker.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/backend/__pycache__/kubectl.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/backend/__pycache__/kubectl.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/backend/__pycache__/local.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/backend/__pycache__/local.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/backend/__pycache__/lxc.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/backend/__pycache__/lxc.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/backend/__pycache__/openshift.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/backend/__pycache__/openshift.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/backend/__pycache__/paramiko.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/backend/__pycache__/paramiko.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/backend/__pycache__/podman.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/backend/__pycache__/podman.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/backend/__pycache__/ssh.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/backend/__pycache__/ssh.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/backend/__pycache__/winrm.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/backend/__pycache__/winrm.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/backend/ansible.py
/usr/lib/python3.10/site-packages/testinfra/backend/base.py
/usr/lib/python3.10/site-packages/testinfra/backend/docker.py
/usr/lib/python3.10/site-packages/testinfra/backend/kubectl.py
/usr/lib/python3.10/site-packages/testinfra/backend/local.py
/usr/lib/python3.10/site-packages/testinfra/backend/lxc.py
/usr/lib/python3.10/site-packages/testinfra/backend/openshift.py
/usr/lib/python3.10/site-packages/testinfra/backend/paramiko.py
/usr/lib/python3.10/site-packages/testinfra/backend/podman.py
/usr/lib/python3.10/site-packages/testinfra/backend/ssh.py
/usr/lib/python3.10/site-packages/testinfra/backend/winrm.py
/usr/lib/python3.10/site-packages/testinfra/host.py
/usr/lib/python3.10/site-packages/testinfra/main.py
/usr/lib/python3.10/site-packages/testinfra/modules
/usr/lib/python3.10/site-packages/testinfra/modules/__init__.py
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/__init__.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/__init__.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/addr.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/addr.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/ansible.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/ansible.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/base.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/base.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/blockdevice.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/blockdevice.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/command.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/command.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/docker.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/docker.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/environment.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/environment.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/file.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/file.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/group.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/group.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/interface.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/interface.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/iptables.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/iptables.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/mountpoint.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/mountpoint.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/package.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/package.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/pip.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/pip.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/podman.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/podman.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/process.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/process.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/puppet.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/puppet.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/salt.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/salt.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/service.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/service.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/socket.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/socket.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/sudo.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/sudo.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/supervisor.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/supervisor.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/sysctl.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/sysctl.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/systeminfo.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/systeminfo.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/user.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/__pycache__/user.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/modules/addr.py
/usr/lib/python3.10/site-packages/testinfra/modules/ansible.py
/usr/lib/python3.10/site-packages/testinfra/modules/base.py
/usr/lib/python3.10/site-packages/testinfra/modules/blockdevice.py
/usr/lib/python3.10/site-packages/testinfra/modules/command.py
/usr/lib/python3.10/site-packages/testinfra/modules/docker.py
/usr/lib/python3.10/site-packages/testinfra/modules/environment.py
/usr/lib/python3.10/site-packages/testinfra/modules/file.py
/usr/lib/python3.10/site-packages/testinfra/modules/group.py
/usr/lib/python3.10/site-packages/testinfra/modules/interface.py
/usr/lib/python3.10/site-packages/testinfra/modules/iptables.py
/usr/lib/python3.10/site-packages/testinfra/modules/mountpoint.py
/usr/lib/python3.10/site-packages/testinfra/modules/package.py
/usr/lib/python3.10/site-packages/testinfra/modules/pip.py
/usr/lib/python3.10/site-packages/testinfra/modules/podman.py
/usr/lib/python3.10/site-packages/testinfra/modules/process.py
/usr/lib/python3.10/site-packages/testinfra/modules/puppet.py
/usr/lib/python3.10/site-packages/testinfra/modules/salt.py
/usr/lib/python3.10/site-packages/testinfra/modules/service.py
/usr/lib/python3.10/site-packages/testinfra/modules/socket.py
/usr/lib/python3.10/site-packages/testinfra/modules/sudo.py
/usr/lib/python3.10/site-packages/testinfra/modules/supervisor.py
/usr/lib/python3.10/site-packages/testinfra/modules/sysctl.py
/usr/lib/python3.10/site-packages/testinfra/modules/systeminfo.py
/usr/lib/python3.10/site-packages/testinfra/modules/user.py
/usr/lib/python3.10/site-packages/testinfra/plugin.py
/usr/lib/python3.10/site-packages/testinfra/utils
/usr/lib/python3.10/site-packages/testinfra/utils/__init__.py
/usr/lib/python3.10/site-packages/testinfra/utils/__pycache__
/usr/lib/python3.10/site-packages/testinfra/utils/__pycache__/__init__.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/utils/__pycache__/__init__.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/utils/__pycache__/ansible_runner.cpython-310.opt-1.pyc
/usr/lib/python3.10/site-packages/testinfra/utils/__pycache__/ansible_runner.cpython-310.pyc
/usr/lib/python3.10/site-packages/testinfra/utils/ansible_runner.py
/usr/share/doc/python3-testinfra
/usr/share/doc/python3-testinfra/CHANGELOG.rst
/usr/share/doc/python3-testinfra/CONTRIBUTING.rst
/usr/share/doc/python3-testinfra/README.rst
/usr/share/doc/python3-testinfra/html
/usr/share/doc/python3-testinfra/html/_sources
/usr/share/doc/python3-testinfra/html/_sources/api.rst.txt
/usr/share/doc/python3-testinfra/html/_sources/backends.rst.txt
/usr/share/doc/python3-testinfra/html/_sources/changelog.rst.txt
/usr/share/doc/python3-testinfra/html/_sources/examples.rst.txt
/usr/share/doc/python3-testinfra/html/_sources/index.rst.txt
/usr/share/doc/python3-testinfra/html/_sources/invocation.rst.txt
/usr/share/doc/python3-testinfra/html/_sources/modules.rst.txt
/usr/share/doc/python3-testinfra/html/_sources/support.rst.txt
/usr/share/doc/python3-testinfra/html/_static
/usr/share/doc/python3-testinfra/html/_static/alabaster.css
/usr/share/doc/python3-testinfra/html/_static/basic.css
/usr/share/doc/python3-testinfra/html/_static/custom.css
/usr/share/doc/python3-testinfra/html/_static/doctools.js
/usr/share/doc/python3-testinfra/html/_static/documentation_options.js
/usr/share/doc/python3-testinfra/html/_static/file.png
/usr/share/doc/python3-testinfra/html/_static/jquery-3.5.1.js
/usr/share/doc/python3-testinfra/html/_static/jquery.js
/usr/share/doc/python3-testinfra/html/_static/language_data.js
/usr/share/doc/python3-testinfra/html/_static/logo.svg
/usr/share/doc/python3-testinfra/html/_static/minus.png
/usr/share/doc/python3-testinfra/html/_static/plus.png
/usr/share/doc/python3-testinfra/html/_static/pygments.css
/usr/share/doc/python3-testinfra/html/_static/searchtools.js
/usr/share/doc/python3-testinfra/html/_static/underscore-1.13.1.js
/usr/share/doc/python3-testinfra/html/_static/underscore.js
/usr/share/doc/python3-testinfra/html/api.html
/usr/share/doc/python3-testinfra/html/backends.html
/usr/share/doc/python3-testinfra/html/changelog.html
/usr/share/doc/python3-testinfra/html/examples.html
/usr/share/doc/python3-testinfra/html/genindex.html
/usr/share/doc/python3-testinfra/html/index.html
/usr/share/doc/python3-testinfra/html/invocation.html
/usr/share/doc/python3-testinfra/html/modules.html
/usr/share/doc/python3-testinfra/html/objects.inv
/usr/share/doc/python3-testinfra/html/search.html
/usr/share/doc/python3-testinfra/html/searchindex.js
/usr/share/doc/python3-testinfra/html/support.html
/usr/share/licenses/python3-testinfra
/usr/share/licenses/python3-testinfra/LICENSE

References

Summary

In this tutorial we learn how to install python3-testinfra on Fedora 36 using yum and [dnf]((/fedora/36/dnf/).