unittest module is part of Python’s standard library for a long time. So in most cases, there’s no need to install it using something like
pip install unittest. Simply run
import unittest in your Python code and it works without installation.
In your Python code:
If you try to
pip install it, you’ll get the following error
Could not find a version that satisfies the requirement unittest that you can fix by not installing it in the first place (it already is)!
PS C:\Users\xcent> pip install unittest ERROR: Could not find a version that satisfies the requirement unittest (from versions: none) ERROR: No matching distribution found for unittest
👉 Recommended Tutorial: How to Check ‘
unittest‘ Package Version in Python?
Feel free to also check out our full guide on the PyTest framework which is great for testing purposes too!
Python 2 Backport UnitTest2
If you’re using Python 2, you can try installing the
unittest2 package that is a backport for unit testing in Python 2.7. Then
pip install unittest2
Then add the following line to your Python code instead of
Legacy Solutions to Install UnitTest Module
For some very old Python versions, you may want to try this approach:
Quick Fix: Python raises the
ImportError: No module named 'unittest' when it cannot find the library
unittest. The most frequent source of this error is that you haven’t installed
unittest explicitly with
pip install unittest. Alternatively, you may have different Python versions on your computer, and
unittest is not installed for the particular version you’re using.
To fix this error, you can run the following command in your Windows shell:
$ pip install unittest
This simple command installs
unittest in your virtual environment on Windows, Linux, and MacOS. It assumes that your
pip version is updated. If it isn’t, use the following two commands in your terminal, command line, or shell (there’s no harm in doing it anyways):
$ python -m pip install --upgrade pip $ pip install pandas
💡 Note: Don’t copy and paste the
$ symbol. This is just to illustrate that you run it in your shell/terminal/command line.
The error might persist even after you have installed the
unittest library. This likely happens because
pip is installed but doesn’t reside in the path you can use. Although
pip may be installed on your system the script is unable to locate it. Therefore, it is unable to install the library using
pip in the correct path.
To fix the problem with the path in Windows follow the steps given next.
Step 1: Open the folder where you installed Python by opening the command prompt and typing
Step 2: Once you have opened the
Python folder, browse and open the
Scripts folder and copy its location. Also verify that the folder contains the
Step 3: Now open the
Scripts directory in the command prompt using the
cd command and the location that you copied previously.
Step 4: Now install the library using
pip install unittest command. Here’s an analogous example:
After having followed the above steps, execute our script once again. And you should get the desired output.
Other Solution Ideas
ModuleNotFoundErrormay appear due to relative imports. You can learn everything about relative imports and how to create your own module in this article.
- You may have mixed up Python and pip versions on your machine. In this case, to install
unittestfor Python 3, you may want to try
python3 -m pip install unittestor even
pip3 install unittestinstead of
pip install unittest
- If you face this issue server-side, you may want to try the command
pip install --user unittest
- If you’re using Ubuntu, you may want to try this command:
sudo apt install unittest
- You can check out our in-depth guide on installing
- You can also check out this article to learn more about possible problems that may lead to an error when importing a library.
Understanding the “import” Statement
In Python, the
import statement serves two main purposes:
- Search the module by its name, load it, and initialize it.
- Define a name in the local namespace within the scope of the
importstatement. This local name is then used to reference the accessed module throughout the code.
What’s the Difference Between ImportError and ModuleNotFoundError?
What’s the difference between
Python defines an error hierarchy, so some error classes inherit from other error classes. In our case, the
ModuleNotFoundError is a subclass of the
You can see this in this screenshot from the docs:
You can also check this relationship using the
issubclass() built-in function:
>>> issubclass(ModuleNotFoundError, ImportError) True
Specifically, Python raises the
ModuleNotFoundError if the module (e.g.,
unittest) cannot be found. If it can be found, there may be a problem loading the module or some specific files within the module. In those cases, Python would raise an
If an import statement cannot import a module, it raises an
ImportError. This may occur because of a faulty installation or an invalid path. In Python 3.6 or newer, this will usually raise a
The following video shows you how to resolve the
The following video shows you how to import a function from another folder—doing it the wrong way often results in the
Here’s a full guide on how to install a library on PyCharm.
While working as a researcher in distributed systems, Dr. Christian Mayer found his love for teaching computer science students.
To help students reach higher levels of Python success, he founded the programming education website Finxter.com that has taught exponential skills to millions of coders worldwide. He’s the author of the best-selling programming books Python One-Liners (NoStarch 2020), The Art of Clean Code (NoStarch 2022), and The Book of Dash (NoStarch 2022). Chris also coauthored the Coffee Break Python series of self-published books. He’s a computer science enthusiast, freelancer, and owner of one of the top 10 largest Python blogs worldwide.
His passions are writing, reading, and coding. But his greatest passion is to serve aspiring coders through Finxter and help them to boost their skills. You can join his free email academy here.