Repository: matchms/matchms
Pull request #690 (2024-06-27 16:10:09)

Fix/refactor spectrums to spectra
This addresses #687.

## Possible Breaking changes:
### Pipeline Class
* [`import_spectrums()`](https://github.com/matchms/matchms/commit/974b1fd38f73821f062b572fccc237f0c6cc685d#diff-ef3107e80df1f26995450bd937d52e61847c248e1e52ce9a353525df78c9c94dL301) function renamed to `import_spectra()`
* [`_spectra_queries`](https://github.com/matchms/matchms/commit/974b1fd38f73821f062b572fccc237f0c6cc685d#diff-ef3107e80df1f26995450bd937d52e61847c248e1e52ce9a353525df78c9c94dL358) and [`_spectra_references`](https://github.com/matchms/matchms/commit/974b1fd38f73821f062b572fccc237f0c6cc685d#diff-ef3107e80df1f26995450bd937d52e61847c248e1e52ce9a353525df78c9c94dL362) properties renamed

### SpectrumProcessor
* `process_spectrums()` renamed to [`process_spectra()`](https://github.com/matchms/matchms/commit/974b1fd38f73821f062b572fccc237f0c6cc685d#diff-d1f3b01ca38d2d685d0cbc394d294083377236bde0900ae7441ec9eff5921c79L163)

### ProcessingReport
* `counter_removed_spectra` property renamed to [`counter_removed_spectra`](https://github.com/matchms/matchms/commit/974b1fd38f73821f062b572fccc237f0c6cc685d#diff-d1f3b01ca38d2d685d0cbc394d294083377236bde0900ae7441ec9eff5921c79L287)

### Exporting
* [`export_metadata_as_json()`](https://github.com/matchms/matchms/commit/974b1fd38f73821f062b572fccc237f0c6cc685d#diff-4697a33fa31d407e756dcae9417b02f280ca6600c025b3a5509e89902400f4a7L29) updated method signature
* [`save_as_json()`](https://github.com/matchms/matchms/commit/974b1fd38f73821f062b572fccc237f0c6cc685d#diff-4ea8613a2975d6e87d05aac640d8fa6f0143d8e75de5cf8b8875db6cc8b91041L7) updated method signature
* [`save_as_mgf`](https://github.com/matchms/matchms/commit/974b1fd38f73821f062b572fccc237f0c6cc685d#diff-29cbf05736ec051e2e9c0f42ac1e92065abe45a63b757e49f45330751bc85f34L7) updated method signature
* [`save_as_msp`](https://github.com/matchms/matchms/commit/974b1fd38f73821f062b572fccc237f0c6cc685d#diff-ede3a19f5f80159169d140da8f729c73ed6bf002d5a8cc3d0e7835a09143a5bdL15) updated method signature
* [`save_spectra`](https://github.com/matchms/matchms/commit/974b1fd38f73821f062b572fccc237f0c6cc685d#diff-51b2fad7bf3ceb75b0b2161ac4126359b4eff128f07b830acc8ed1ef93896b2dL13) updated method signature

### SpectrumPlots
* [`plot_spectra_array()`](https://github.com/matchms/matchms/commit/974b1fd38f73821f062b572fccc237f0c6cc685d#diff-88d20fdeb912441aead27e341fa8418e43c43ae651f1ae80fd74225e7b726350L203) updated method signature

Tests and docstrings are updated accordingly, documentation and notebooks are pending.


Patch:
diff --git a/.zenodo.json b/.zenodo.json
index 98468a9c..73554ec1 100644
--- a/.zenodo.json
+++ b/.zenodo.json
@@ -88,6 +88,10 @@
          "affiliation": "Institute of Molecular Systems Biology, ETH Zürich",
          "name": "Rutz, Adriano",
          "orcid": "0000-0003-0443-9902"
+      },
+       {
+         "affiliation": "HSD, University of Applied Sciences Düsseldorf",
+         "name": "Pollmann, Julian"
       }
    ],
    "description": "Python library for processing (tandem) mass spectrometry data and for computing spectral similarities.",
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 387c4cc4..377767e0 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -12,6 +12,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
 - Losses will no longer be stored as part of a `Spectrum` object, but will be computed on the fly (using `spectrum.losses` or `spectrum.compute_losses(loss_mz_from, loss_mz_to)`)[#681](https://github.com/matchms/matchms/pull/681)
 - Jaccard/Tanimoto `@njit`/numba-based similarity functions were replaced by 10-50x faster numpy matrix multiplications [#638](https://github.com/matchms/matchms/pull/638).
 - Dependencies were updated to allow newer numpy and numba versions [691](https://github.com/matchms/matchms/pull/691).
+- Renamed method names and parameters to align `spectrums` -> `spectra`
 
 ### Removed
 - `add_losses()` filter was removed. Losses will no longer be stored as part of a `Spectrum` object, but will be computed on the fly [#681](https://github.com/matchms/matchms/pull/681).
diff --git a/CITATION.cff b/CITATION.cff
index 11dddeb6..9804827d 100644
--- a/CITATION.cff
+++ b/CITATION.cff
@@ -80,6 +80,9 @@ authors:
     family-names: Rutz
     given-names: Adriano
     orcid: 'https://orcid.org/0000-0003-0443-9902'
+  - affiliation: 'HSD, University of Applied Sciences Düsseldorf'
+    family-names: Pollmann
+    given-names: Julian
 repository-code: 'https://github.com/matchms/matchms'
 abstract: >-
   Python library for fuzzy comparison of mass spectrum data
@@ -149,6 +152,10 @@ preferred-citation:
       orcid: 'https://orcid.org/0000-0002-7064-4069'
       affiliation: Netherlands eScience Center
       address: 'Science Park 140, 1098XG Amsterdam, The Netherlands'
+    - family-names: Pollmann
+      given-names: Julian
+      affiliation: 'HSD, University of Applied Sciences Düsseldorf'
+      address: 'Münsterstraße 156, 40476 Düsseldorf, Germany'
   title: matchms - processing and similarity evaluation of mass spectrometry data.
   journal: Journal of Open Source Software
   year: 2020
diff --git a/README.rst b/README.rst
index efdaac13..f1566fc7 100644
--- a/README.rst
+++ b/README.rst
@@ -165,7 +165,7 @@ Introduction
 To get started with matchms, we recommend following our `matchms introduction tutorial <https://blog.esciencecenter.nl/build-your-own-mass-spectrometry-analysis-pipeline-in-python-using-matchms-part-i-d96c718c68ee>`_.
 
 Below is an example of using default filter steps for cleaning spectra, 
-followed by calculating the Cosine score between mass Spectrums in the `tests/testdata/pesticides.mgf <https://github.com/matchms/matchms/blob/master/tests/testdata/pesticides.mgf>`_ file.
+followed by calculating the Cosine score between mass Spectra in the `tests/testdata/pesticides.mgf <https://github.com/matchms/matchms/blob/master/tests/testdata/pesticides.mgf>`_ file.
 
 .. code-block:: python
 
@@ -216,27 +216,27 @@ Alternatively, in particular, if you need more room to add custom functions and
     from matchms import calculate_scores
     from matchms.similarity import CosineGreedy
 
-    # Read spectrums from a MGF formatted file, for other formats see https://matchms.readthedocs.io/en/latest/api/matchms.importing.html 
+    # Read spectra from a MGF formatted file, for other formats see https://matchms.readthedocs.io/en/latest/api/matchms.importing.html 
     file = load_from_mgf("tests/testdata/pesticides.mgf")
 
     # Apply filters to clean and enhance each spectrum
-    spectrums = []
+    spectra = []
     for spectrum in file:
         # Apply default filter to standardize ion mode, correct charge and more.
         # Default filter is fully explained at https://matchms.readthedocs.io/en/latest/api/matchms.filtering.html .
         spectrum = default_filters(spectrum)
         # Scale peak intensities to maximum of 1
         spectrum = normalize_intensities(spectrum)
-        spectrums.append(spectrum)
+        spectra.append(spectrum)
 
-    # Calculate Cosine similarity scores between all spectrums
+    # Calculate Cosine similarity scores between all spectra
     # For other similarity score methods see https://matchms.readthedocs.io/en/latest/api/matchms.similarity.html .
-    scores = calculate_scores(references=spectrums,
-                              queries=spectrums,
+    scores = calculate_scores(references=spectra,
+                              queries=spectra,
                               similarity_function=CosineGreedy())
 
     # Matchms allows to get the best matches for any query using scores_by_query
-    query = spectrums[15]  # just an example
+    query = spectra[15]  # just an example
     best_matches = scores.scores_by_query(query, 'CosineGreedy_score', sort=True)
 
     # Print the calculated scores for each spectrum pair
@@ -351,7 +351,7 @@ Flowchart
   :width: 400
   :alt: Flowchart
   
-  Flowchart of matchms workflow. Reference and query spectrums are filtered using the same
+  Flowchart of matchms workflow. Reference and query spectra are filtered using the same
   set of set filters (here: filter A and filter B). Once filtered, every reference spectrum is compared to
   every query spectrum using the matchms.Scores object.
 
diff --git a/matchms/Pipeline.py b/matchms/Pipeline.py
index ef6d6553..6691ee63 100644
--- a/matchms/Pipeline.py
+++ b/matchms/Pipeline.py
@@ -3,6 +3,7 @@ import os
 from collections import OrderedDict
 from datetime import datetime
 from typing import Callable, Iterable, List, Optional, Union
+from deprecated import deprecated
 import matchms.similarity as mssimilarity
 from matchms import calculate_scores
 from matchms.filtering.filter_order import ALL_FILTERS
@@ -82,7 +83,7 @@ class Pipeline:
         pipeline.logging_file = "my_pipeline.log"
         pipeline.logging_level = "ERROR"
 
-        pipeline.run("my_spectrums.mgf")
+        pipeline.run("my_spectra.mgf")
 
     The second way to define a pipeline is via a Python script. The following code is an
     example of how this works:
@@ -139,8 +140,8 @@ class Pipeline:
         progress_bar:
             Default is True. Set to False if no progress bar should be displayed.
         """
-        self._spectrums_queries = None
-        self._spectrums_references = None
+        self._spectra_queries = None
+        self._spectra_references = None
         self.is_symmetric = False
         self.scores = None
 
@@ -184,7 +185,7 @@ class Pipeline:
         """Execute the defined Pipeline workflow.
 
         This method will execute all steps of the workflow.
-        1) Initializing the log file and importing the spectrums
+        1) Initializing the log file and importing the spectra
         2) Spectrum processing (using matchms filters)
         3) Score Computations
         """
@@ -198,24 +199,24 @@ class Pipeline:
         self.set_logging()
         self.write_to_logfile("--- Start running matchms pipeline. ---")
         self.write_to_logfile(f"Start time: {str(datetime.now())}")
-        self.import_spectrums(query_files, reference_files)
+        self.import_spectra(query_files, reference_files)
 
         # Processing
         self.write_to_logfile("--- Processing spectra ---")
         self.write_to_logfile(f"Time: {str(datetime.now())}")
         # Process query spectra
-        spectrums, report = self.processing_queries.process_spectrums(self._spectrums_queries,
-                                                                      progress_bar=self.progress_bar,
-                                                                      cleaned_spectra_file=cleaned_query_file)
-        self._spectrums_queries = spectrums
+        spectra, report = self.processing_queries.process_spectra(self._spectra_queries,
+                                                                    progress_bar=self.progress_bar,
+                                                                    cleaned_spectra_file=cleaned_query_file)
+        self._spectra_queries = spectra
         self.write_to_logfile(str(report))
         # Process reference spectra (if necessary)
         if self.is_symmetric is False:
-            self._spectrums_references, report = self.processing_references.process_spectrums(
-                self._spectrums_references, progress_bar=self.progress_bar, cleaned_spectra_file=cleaned_reference_file)
+            self._spectra_references, report = self.processing_references.process_spectra(
+                self._spectra_references, progress_bar=self.progress_bar, cleaned_spectra_file=cleaned_reference_file)
             self.write_to_logfile(str(report))
         else:
-            self._spectrums_references = self._spectrums_queries
+            self._spectra_references = self._spectra_queries
 
         # Score computation and masking
         self.write_to_logfile("--- Computing scores ---")
@@ -262,14 +263,14 @@ class Pipeline:
         similarity_measure = get_similarity_measure(computation)
         # If this is the first score computation:
         if i == 0:
-            self.scores = calculate_scores(self._spectrums_references,
-                                           self._spectrums_queries,
+            self.scores = calculate_scores(self._spectra_references,
+                                           self._spectra_queries,
                                            similarity_measure,
                                            array_type="sparse",
                                            is_symmetric=self.is_symmetric)
         else:
-            new_scores = similarity_measure.sparse_array(references=self._spectrums_references,
-                                                         queries=self._spectrums_queries,
+            new_scores = similarity_measure.sparse_array(references=self._spectra_references,
+                                                         queries=self._spectra_queries,
                                                          idx_row=self.scores.scores.row,
                                                          idx_col=self.scores.scores.col,
                                                          is_symmetric=self.is_symmetric)
@@ -298,9 +299,26 @@ class Pipeline:
             with open(self.logging_file, "a", encoding="utf-8") as f:
                 f.write(line + '\n')
 
+    @deprecated(version="0.26.5",
+                reason="This method is deprecated and will be removed in the future. Use import_spectra() instead.")
     def import_spectrums(self,
                          query_files: Union[List[str], str],
                          reference_files: Optional[Union[List[str], str]] = None):
+        """Wrapper method for import_spectra()
+
+        Parameters
+        ----------
+        query_files
+            List of files, or single filename, containing the query spectra.
+        reference_files
+            List of files, or single filename, containing the reference spectra.
+            If set to None (default) then all query spectra will be compared to each other.
+        """
+        return self.import_spectra(query_files, reference_files)
+
+    def import_spectra(self,
+                       query_files: Union[List[str], str],
+                       reference_files: Optional[Union[List[str], str]] = None):
         """Import spectra from file(s).
 
         Parameters
@@ -313,17 +331,17 @@ class Pipeline:
         """
         # import query spectra
         self.write_to_logfile("--- Importing data ---")
-        self._spectrums_queries = load_list_of_spectrum_files(query_files)
+        self._spectra_queries = load_list_of_spectrum_files(query_files)
 
         self.write_to_logfile(f"Loaded query spectra from {query_files}")
 
         # import reference spectra
         if reference_files is None:
             self.is_symmetric = True
-            self._spectrums_references = self._spectrums_queries
+            self._spectra_references = self._spectra_queries
             self.write_to_logfile("Reference spectra are equal to the query spectra (is_symmetric = True)")
         else:
-            self._spectrums_references = load_list_of_spectrum_files(reference_files)
+            self._spectra_references = load_list_of_spectrum_files(reference_files)
             self.write_to_logfile(f"Loaded reference spectra from {reference_files}")
 
     # Getter & Setters
@@ -355,12 +373,24 @@ class Pipeline:
         self._initialize_spectrum_processor_references()
 
     @property
+    @deprecated(version="0.26.5",
+                reason="This property is deprecated and will be removed in the future. Use spectra_queries instead.")
     def spectrums_queries(self) -> List[SpectrumType]:
-        return self._spectrums_queries
+        return self._spectra_queries
 
     @property
+    def spectra_queries(self) -> List[SpectrumType]:
+        return self._spectra_queries
+
+    @property
+    @deprecated(version="0.26.5",
+                reason="This property is deprecated and will be removed in the future. Use spectra_references instead.")
     def spectrums_references(self) -> List[SpectrumType]:
-        return self._spectrums_references
+        return self._spectra_references
+
+    @property
+    def spectra_references(self) -> List[SpectrumType]:
+        return self._spectra_references
 
 
 def get_unused_filters(yaml_file):
diff --git a/matchms/Scores.py b/matchms/Scores.py
index 6c84e44e..7c2183db 100644
--- a/matchms/Scores.py
+++ b/matchms/Scores.py
@@ -13,12 +13,12 @@ from matchms.typing import QueriesType, ReferencesType
 
 
 class Scores:
-    """Contains reference and query spectrums and the scores between them.
+    """Contains reference and query spectra and the scores between them.
 
     The scores can be retrieved as a matrix with the :py:attr:`Scores.scores` attribute.
     The reference spectrum, query spectrum, score pairs can also be iterated over in query then reference order.
 
-    Example to calculate scores between 2 spectrums and iterate over the scores
+    Example to calculate scores between 2 spectra and iterate over the scores
 
     .. testcode::
 
@@ -369,9 +369,9 @@ class Scores:
                                   intensities=np.array([0.7, 0.2, 0.1]))
             spectrum_2 = Spectrum(mz=np.array([100, 140, 190.]),
                                   intensities=np.array([0.4, 0.2, 0.1]))
-            spectrums = [spectrum_1, spectrum_2]
+            spectra = [spectrum_1, spectrum_2]
 
-            scores = calculate_scores(spectrums, spectrums, IntersectMz()).to_array()
+            scores = calculate_scores(spectra, spectra, IntersectMz()).to_array()
 
             print(scores.shape)
             print(scores)
diff --git a/matchms/calculate_scores.py b/matchms/calculate_scores.py
index 12bb1dc1..409a6c8b 100644
--- a/matchms/calculate_scores.py
+++ b/matchms/calculate_scores.py
@@ -9,7 +9,7 @@ def calculate_scores(references: ReferencesType, queries: QueriesType,
                      is_symmetric: bool = False) -> Scores:
     """Calculate the similarity between all reference objects versus all query objects.
 
-    Example to calculate scores between 2 spectrums and iterate over the scores
+    Example to calculate scores between 2 spectra and iterate over the scores
 
     .. testcode::
 
@@ -23,9 +23,9 @@ def calculate_scores(references: ReferencesType, queries: QueriesType,
         spectrum_2 = Spectrum(mz=np.array([100, 140, 190.]),
                               intensities=np.array([0.4, 0.2, 0.1]),
                               metadata={'id': 'spectrum2'})
-        spectrums = [spectrum_1, spectrum_2]
+        spectra = [spectrum_1, spectrum_2]
 
-        scores = calculate_scores(spectrums, spectrums, CosineGreedy())
+        scores = calculate_scores(spectra, spectra, CosineGreedy())
 
         for (reference, query, score) in scores:
             print(f"Cosine score between {reference.get('id')} and {query.get('id')}" +
diff --git a/matchms/exporting/metadata_export.py b/matchms/exporting/metadata_export.py
index 262aee3b..dfbcfb42 100644
--- a/matchms/exporting/metadata_export.py
+++ b/matchms/exporting/metadata_export.py
@@ -3,7 +3,7 @@ import json
 from typing import Any, Dict, List, Optional, Set, Tuple
 import numpy as np
 from ..Spectrum import Spectrum
-from ..utils import filter_empty_spectra
+from ..utils import filter_empty_spectra, rename_deprecated_params
 
 
 def _get_metadata_dict(spectrum: Spectrum, include_fields: Optional[List[str]] = None) -> Dict[str, Any]:
@@ -26,20 +26,21 @@ def _get_metadata_dict(spectrum: Spectrum, include_fields: Optional[List[str]] =
             & include_fields}
 
 
-def export_metadata_as_json(spectrums: List[Spectrum], filename: str,
+@rename_deprecated_params(param_mapping={"spectrums": "spectra"}, version="0.26.5")
+def export_metadata_as_json(spectra: List[Spectrum], filename: str,
                             include_fields: Optional[List[str]] = None):
     """Export metadata to json file.
 
     Parameters
     ----------
-    spectrums:
+    spectra:
         Expected input is a list of  :py:class:`~matchms.Spectrum.Spectrum` objects.
     filename:
         Provide filename to save metadata of spectrum(s) as json file.
     identifier:
         Identifier used for naming each spectrum in the output file.
     """
-    spectra = filter_empty_spectra(spectrums)
+    spectra = filter_empty_spectra(spectra)
     metadata_dicts = []
     for spec in spectra:
         metadata_dict = _get_metadata_dict(spec, include_fields)
diff --git a/matchms/exporting/save_as_json.py b/matchms/exporting/save_as_json.py
index c1045823..d8baf2ba 100644
--- a/matchms/exporting/save_as_json.py
+++ b/matchms/exporting/save_as_json.py
@@ -1,10 +1,12 @@
 import json
 from typing import List
 from ..Spectrum import Spectrum
-from ..utils import filter_empty_spectra, fingerprint_export_warning
+from ..utils import (filter_empty_spectra, fingerprint_export_warning,
+                     rename_deprecated_params)
 
 
-def save_as_json(spectrums: List[Spectrum],
+@rename_deprecated_params(param_mapping={"spectrums": "spectra"}, version="0.26.5")
+def save_as_json(spectra: List[Spectrum],
                  filename: str,
                  export_style: str = "matchms"):
     """Save spectrum(s) as json file.
@@ -29,7 +31,7 @@ def save_as_json(spectrums: List[Spectrum],
 
     Parameters
     ----------
-    spectrums:
+    spectra:
         Expected input is a list of  :py:class:`~matchms.Spectrum.Spectrum` objects.
     filename:
         Provide filename to save spectrum(s).
@@ -37,11 +39,11 @@ def save_as_json(spectrums: List[Spectrum],
         Converts the keys to the required export style. One of ["matchms", "massbank", "nist", "riken", "gnps"].
         Default is "matchms"
     """
-    if not isinstance(spectrums, list):
+    if not isinstance(spectra, list):
         # Assume that input was single Spectrum
-        spectrums = [spectrums]
+        spectra = [spectra]
 
-    spectra = filter_empty_spectra(spectrums)
+    spectra = filter_empty_spectra(spectra)
     fingerprint_export_warning(spectra)
 
     # Write to json file
diff --git a/matchms/exporting/save_as_mgf.py b/matchms/exporting/save_as_mgf.py
index e7c5544c..366f3e8d 100644
--- a/matchms/exporting/save_as_mgf.py
+++ b/matchms/exporting/save_as_mgf.py
@@ -1,10 +1,12 @@
 from typing import List, Union
 import pyteomics.mgf as py_mgf
 from ..Spectrum import Spectrum
-from ..utils import filter_empty_spectra, fingerprint_export_warning
+from ..utils import (filter_empty_spectra, fingerprint_export_warning,
+                     rename_deprecated_params)
 
 
-def save_as_mgf(spectrums: Union[List[Spectrum], Spectrum],
+@rename_deprecated_params(param_mapping={"spectrums": "spectra"}, version="0.26.5")
+def save_as_mgf(spectra: Union[List[Spectrum], Spectrum],
                 filename: str,
                 export_style: str = "matchms"):
     """Save spectrum(s) as mgf file.
@@ -29,7 +31,7 @@ def save_as_mgf(spectrums: Union[List[Spectrum], Spectrum],
 
     Parameters
     ----------
-    spectrums:
+    spectra:
         Expected input are match.Spectrum.Spectrum() objects.
     filename:
         Provide filename to save spectrum(s).
@@ -37,16 +39,16 @@ def save_as_mgf(spectrums: Union[List[Spectrum], Spectrum],
         Converts the keys to the required export style. One of ["matchms", "massbank", "nist", "riken", "gnps"].
         Default is "matchms"
     """
-    if not isinstance(spectrums, list):
+    if not isinstance(spectra, list):
         # Assume that input was single Spectrum
-        spectrums = [spectrums]
+        spectra = [spectra]
 
-    spectra = filter_empty_spectra(spectrums)
+    spectra = filter_empty_spectra(spectra)
     fingerprint_export_warning(spectra)
 
-    def spectrum_dict_generator(matchms_spectrums):
+    def spectrum_dict_generator(matchms_spectra):
         """Generates dictionaries in the format expected by py_mgf"""
-        for spectrum in matchms_spectrums:
+        for spectrum in matchms_spectra:
             spectrum_dict = {"m/z array": spectrum.peaks.mz,
                              "intensity array": spectrum.peaks.intensities,
                              "params": spectrum.metadata_dict(export_style)}
diff --git a/matchms/exporting/save_as_msp.py b/matchms/exporting/save_as_msp.py
index 305c0891..af58b4b5 100644
--- a/matchms/exporting/save_as_msp.py
+++ b/matchms/exporting/save_as_msp.py
@@ -3,7 +3,8 @@ import os
 from typing import IO, Dict, List, Union
 from ..Fragments import Fragments
 from ..Spectrum import Spectrum
-from ..utils import filter_empty_spectra, fingerprint_export_warning
+from ..utils import (filter_empty_spectra, fingerprint_export_warning,
+                     rename_deprecated_params)
 
 
 logger = logging.getLogger("matchms")
@@ -12,7 +13,8 @@ logger = logging.getLogger("matchms")
 _extentions_not_allowed = ["mzml", "mzxml", "json", "mgf"]
 
 
-def save_as_msp(spectrums: List[Spectrum], filename: str,
+@rename_deprecated_params(param_mapping={"spectrums": "spectra"}, version="0.26.5")
+def save_as_msp(spectra: List[Spectrum], filename: str,
                 write_peak_comments: bool = True,
                 mode: str = "a", style: str = "matchms"):
     """Save spectrum(s) as msp file.
@@ -37,7 +39,7 @@ def save_as_msp(spectrums: List[Spectrum], filename: str,
 
     Parameters
     ----------
-    spectrums:
+    spectra:
         Expected input are match.Spectrum.Spectrum() objects.
     filename:
         Provide filename to save spectrum(s).
@@ -56,7 +58,7 @@ def save_as_msp(spectrums: List[Spectrum], filename: str,
     if not filename.endswith(".msp"):
         logger.warning("Spectrum(s) will be stored as msp file with extension .%s",
                        filename.split(".")[-1])
-    spectra = _ensure_list(spectrums)
+    spectra = _ensure_list(spectra)
     spectra = filter_empty_spectra(spectra)
 
     fingerprint_export_warning(spectra)
@@ -113,8 +115,8 @@ def _is_fingerprint(key: str) -> bool:
     return key.lower().startswith("fingerprint")
 
 
-def _ensure_list(spectrums) -> List[Spectrum]:
-    if not isinstance(spectrums, list):
+def _ensure_list(spectra) -> List[Spectrum]:
+    if not isinstance(spectra, list):
         # Assume that input was single Spectrum
-        spectrums = [spectrums]
-    return spectrums
+        spectra = [spectra]
+    return spectra
diff --git a/matchms/exporting/save_spectra.py b/matchms/exporting/save_spectra.py
index 5e2df631..67d6e183 100644
--- a/matchms/exporting/save_spectra.py
+++ b/matchms/exporting/save_spectra.py
@@ -4,13 +4,14 @@ import pickle
 from typing import List
 from matchms.exporting import save_as_json, save_as_mgf, save_as_msp
 from matchms.Spectrum import Spectrum
-from matchms.utils import filter_empty_spectra
+from matchms.utils import filter_empty_spectra, rename_deprecated_params
 
 
 logger = logging.getLogger("matchms")
 
 
-def save_spectra(spectrums: List[Spectrum],
+@rename_deprecated_params(param_mapping={"spectrums": "spectra"}, version="0.26.5")
+def save_spectra(spectra: List[Spectrum],
                  file: str,
                  export_style: str = "matchms",
                  append: bool = False,
@@ -22,7 +23,7 @@ def save_spectra(spectrums: List[Spectrum],
 
     Args:
     -----
-    spectrums:
+    spectra:
         The spectra that are saved.
     file:
         Path to file containing spectra, with file extension ".json", ".mgf", ".msp"
@@ -41,25 +42,25 @@ def save_spectra(spectrums: List[Spectrum],
         raise ValueError(f"{ftype} isn't supported for when `append` is True")
 
     if ftype == "json":
-        save_as_json(spectrums, file, export_style)
+        save_as_json(spectra, file, export_style)
     elif ftype == "mgf":
-        save_as_mgf(spectrums, file, export_style)
+        save_as_mgf(spectra, file, export_style)
     elif ftype == "msp":
-        save_as_msp(spectrums, file, style=export_style, mode='a')
+        save_as_msp(spectra, file, style=export_style, mode='a')
     elif ftype == "pickle":
         if export_style != "matchms":
             logger.error("The only available export style for pickle is 'matchms', your export style %s", export_style)
-        save_as_pickled_file(spectrums, file)
+        save_as_pickled_file(spectra, file)
     else:
         raise TypeError(f"File extension of file: {file} is not recognized")
 
 
-def save_as_pickled_file(spectrums, filename: str) -> None:
+def save_as_pickled_file(spectra, filename: str) -> None:
     """Stores spectra as a pickled object
 
     Args:
     -----
-    spectrums:
+    spectra:
         The spectra that are saved.
     filename:
         Path to file containing spectra, with file extension "json", "mgf", "msp"
@@ -67,12 +68,12 @@ def save_as_pickled_file(spectrums, filename: str) -> None:
     if os.path.exists(filename):
         raise FileExistsError(f"The file '{filename}' already exists.")
 
-    if not isinstance(spectrums, list):
+    if not isinstance(spectra, list):
         raise TypeError("Expected list of spectra")
-    if not isinstance(spectrums[0], Spectrum):
+    if not isinstance(spectra[0], Spectrum):
         raise TypeError("Expected list of spectra")
 
-    spectrums = filter_empty_spectra(spectrums)
+    spectra = filter_empty_spectra(spectra)
 
     with open(filename, "wb") as f:
-        pickle.dump(spectrums, f)
+        pickle.dump(spectra, f)
diff --git a/matchms/filtering/SpectrumProcessor.py b/matchms/filtering/SpectrumProcessor.py
index affea0e8..c3958154 100644
--- a/matchms/filtering/SpectrumProcessor.py
+++ b/matchms/filtering/SpectrumProcessor.py
@@ -6,6 +6,7 @@ from functools import partial
 from typing import Callable, Dict, Iterable, List, Optional, Tuple, Union
 import numpy as np
 import pandas as pd
+from deprecated import deprecated
 from tqdm import tqdm
 from matchms import Spectrum
 from matchms.exporting import save_spectra
@@ -160,17 +161,19 @@ class SpectrumProcessor:
             spectrum = spectrum_out
         return spectrum
 
-    def process_spectrums(self, spectrums: list,
+    @deprecated(version="0.26.5",
+                reason="This method is deprecated and will be removed in the future. Use 'process_spectra()' instead.")
+    def process_spectrums(self, spectra: list,
                           progress_bar: bool = True,
                           cleaned_spectra_file=None
                           ):
         """
-        Process a list of spectrums with all filters in the processing pipeline.
+        Wrapper method for process_spectra()
 
         Parameters
         ----------
-        spectrums : list[Spectrum]
-            The spectrums to process.
+        spectra : list[Spectrum]
+            The spectra to process.
         create_report: bool, optional
             Creates and outputs a report of the main changes during processing.
             The report will be returned as pandas DataFrame. Default is set to False.
@@ -180,8 +183,35 @@ class SpectrumProcessor:
             Path to where the cleaned spectra should be saved.
         Returns
         -------
-        Spectrums
-            List containing the processed spectrums.
+        spectra
+            List containing the processed spectra.
+        processing_report
+            A ProcessingReport containing the effect of the filters.
+        """
+        return self.process_spectra(spectra, progress_bar, cleaned_spectra_file)
+
+    def process_spectra(self, spectra: list,
+                          progress_bar: bool = True,
+                          cleaned_spectra_file=None
+                          ):
+        """
+        Process a list of spectra with all filters in the processing pipeline.
+
+        Parameters
+        ----------
+        spectra : list[Spectrum]
+            The spectra to process.
+        create_report: bool, optional
+            Creates and outputs a report of the main changes during processing.
+            The report will be returned as pandas DataFrame. Default is set to False.
+        progress_bar : bool, optional
+            Displays progress bar if set to True. Default is True.
+        cleaned_spectra_file:
+            Path to where the cleaned spectra should be saved.
+        Returns
+        -------
+        spectra
+            List containing the processed spectra.
         processing_report
             A ProcessingReport containing the effect of the filters.
         """
@@ -195,21 +225,21 @@ class SpectrumProcessor:
             logger.warning("No filters have been specified, so spectra were not filtered")
         processing_report = ProcessingReport(self.filters)
 
-        processed_spectrums = []
-        for s in tqdm(spectrums, disable=(not progress_bar), desc="Processing spectrums"):
+        processed_spectra = []
+        for s in tqdm(spectra, disable=(not progress_bar), desc="Processing spectra"):
             if s is None:
                 continue  # empty spectra will be discarded
             processed_spectrum = self.process_spectrum(s, processing_report)
             if processed_spectrum is not None:
-                processed_spectrums.append(processed_spectrum)
+                processed_spectra.append(processed_spectrum)
 
                 if cleaned_spectra_file is not None and incremental_save:
                     save_spectra(processed_spectrum, cleaned_spectra_file, append=True)
 
         if cleaned_spectra_file is not None and not incremental_save:
-            save_spectra(processed_spectrums, cleaned_spectra_file)
+            save_spectra(processed_spectra, cleaned_spectra_file)
 
-        return processed_spectrums, processing_report
+        return processed_spectra, processing_report
 
     @property
     def processing_steps(self):
@@ -284,7 +314,7 @@ class ProcessingReport:
         else:
             self.filter_names = []
         self.counter_changed_metadata = defaultdict(int)
-        self.counter_removed_spectrums = defaultdict(int)
+        self.counter_removed_spectra = defaultdict(int)
         self.counter_changed_peaks = defaultdict(int)
         self.counter_number_processed = 0
 
@@ -293,7 +323,7 @@ class ProcessingReport:
         """Add changes between spectrum_old and spectrum_new to the report.
         """
         if spectrum_new is None:
-            self.counter_removed_spectrums[filter_function_name] += 1
+            self.counter_removed_spectra[filter_function_name] += 1
         else:
             # Add metadata changes
             if spectrum_new.metadata != spectrum_old.metadata:
@@ -306,7 +336,7 @@ class ProcessingReport:
         """Create Pandas DataFrame Report of counted spectrum changes."""
         metadata_changed = pd.DataFrame(self.counter_changed_metadata.items(),
                                         columns=["filter", "changed metadata"])
-        removed = pd.DataFrame(self.counter_removed_spectrums.items(),
+        removed = pd.DataFrame(self.counter_removed_spectra.items(),
                                columns=["filter", "removed spectra"])
         peaks_changed = pd.DataFrame(self.counter_changed_peaks.items(),
                                      columns=["filter", "changed mass spectrum"])
@@ -325,16 +355,16 @@ class ProcessingReport:
         pd.set_option('display.max_columns', 4)
         pd.set_option('display.width', 1000)
         report_str = ("----- Spectrum Processing Report -----\n"
-                      f"Number of spectrums processed: {self.counter_number_processed}\n"
-                      f"Number of spectrums removed: {sum(self.counter_removed_spectrums.values())}\n"
+                      f"Number of spectra processed: {self.counter_number_processed}\n"
+                      f"Number of spectra removed: {sum(self.counter_removed_spectra.values())}\n"
                       "Changes during processing:\n"
                       f"{str(self.to_dataframe())}")
         return report_str
 
     def __repr__(self):
         return f"Report({self.counter_number_processed},\
-        {self.counter_removed_spectrums},\
-        {dict(self.counter_removed_spectrums)},\
+        {self.counter_removed_spectra},\
+        {dict(self.counter_removed_spectra)},\
         {dict(self.counter_changed_metadata)},\
         {dict(self.counter_changed_peaks)})"
 
diff --git a/matchms/filtering/metadata_processing/correct_charge.py b/matchms/filtering/metadata_processing/correct_charge.py
index bc8d60b1..6c108fb9 100644
--- a/matchms/filtering/metadata_processing/correct_charge.py
+++ b/matchms/filtering/metadata_processing/correct_charge.py
@@ -9,7 +9,7 @@ logger = logging.getLogger("matchms")
 def correct_charge(spectrum_in: SpectrumType) -> SpectrumType:
     """Correct charge values based on given ionmode.
 
-    For some spectrums, the charge value is either undefined or inconsistent with its
+    For some spectra, the charge value is either undefined or inconsistent with its
     ionmode, which is corrected by this filter.
 
     Parameters
diff --git a/matchms/importing/load_from_json.py b/matchms/importing/load_from_json.py
index e34ed021..88977161 100644
--- a/matchms/importing/load_from_json.py
+++ b/matchms/importing/load_from_json.py
@@ -15,7 +15,7 @@ def load_from_json(filename: str,
     """Load spectrum(s) from json file.
 
     JSON document formatted like the `GNPS Spectra library <https://gnps-external.ucsd.edu/gnpslibrary>`_.
-    Spectrums with zero peaks will be skipped.
+    Spectra with zero peaks will be skipped.
 
     Example:
 
@@ -24,7 +24,7 @@ def load_from_json(filename: str,
         from matchms.importing import load_from_json
 
         file_json = "gnps_testdata.json"
-        spectrums = load_from_json(file_json)
+        spectra = load_from_json(file_json)
 
     Parameters
     ----------
@@ -35,13 +35,13 @@ def load_from_json(filename: str,
         The default is True.
     """
     with open(filename, 'rb') as fin:
-        spectrums = []
+        spectra = []
         for spectrum_dict in json.load(fin):
             spectrum = as_spectrum(spectrum_dict, metadata_harmonization=metadata_harmonization)
             if spectrum is not None:
-                spectrums.append(spectrum)
+                spectra.append(spectrum)
 
-    return spectrums
+    return spectra
 
 
 def as_spectrum(dct: dict,
@@ -70,7 +70,7 @@ def dict2spectrum(spectrum_dict: dict,
     Parameters
     ----------
     spectrum_dict
-        Dictionary shaped like a single JSON object from the 
+        Dictionary shaped like a single JSON object from the
         `GNPS Spectra library <https://gnps-external.ucsd.edu/gnpslibrary>`_
 
     Returns
diff --git a/matchms/importing/load_from_msp.py b/matchms/importing/load_from_msp.py
index 205c6429..a7bf0b80 100644
--- a/matchms/importing/load_from_msp.py
+++ b/matchms/importing/load_from_msp.py
@@ -33,7 +33,7 @@ def load_from_msp(filename: str,
 
         # Download msp file from MassBank of North America repository at https://mona.fiehnlab.ucdavis.edu/
         file_msp = "MoNA-export-GC-MS-first10.msp"
-        spectrums = list(load_from_msp(file_msp))
+        spectra = list(load_from_msp(file_msp))
     """
     for spectrum in parse_msp_file(filename):
         yield parse_spectrum_dict(
diff --git a/matchms/importing/load_from_mzml.py b/matchms/importing/load_from_mzml.py
index adc971c6..f7540177 100644
--- a/matchms/importing/load_from_mzml.py
+++ b/matchms/importing/load_from_mzml.py
@@ -21,7 +21,7 @@ def load_from_mzml(filename: str, ms_level: int = 2,
         from matchms.importing import load_from_mzml
 
         file_mzml = "testdata.mzml"
-        spectrums = list(load_from_mzml(file_mzml))
+        spectra = list(load_from_mzml(file_mzml))
 
     Parameters
     ----------
diff --git a/matchms/importing/load_from_mzxml.py b/matchms/importing/load_from_mzxml.py
index fc28e48e..06bee882 100644
--- a/matchms/importing/load_from_mzxml.py
+++ b/matchms/importing/load_from_mzxml.py
@@ -21,7 +21,7 @@ def load_from_mzxml(filename: str, ms_level: int = 2,
         from matchms.importing import load_from_mzxml
 
         file_mzxml = "testdata.mzxml"
-        spectrums = list(load_from_mzml(file_mzxml))
+        spectra = list(load_from_mzml(file_mzxml))
 
     Parameters
     ----------
@@ -35,7 +35,7 @@ def load_from_mzxml(filename: str, ms_level: int = 2,
     """
     with read(filename, dtype=dict) as reader:
         for pyteomics_spectrum in reader:
-            if ("ms level" in pyteomics_spectrum and pyteomics_spectrum["ms level"] == ms_level 
+            if ("ms level" in pyteomics_spectrum and pyteomics_spectrum["ms level"] == ms_level
                     or "msLevel" in pyteomics_spectrum and pyteomics_spectrum["msLevel"] == ms_level):
                 metadata = parse_mzml_mzxml_metadata(pyteomics_spectrum)
                 mz = np.asarray(pyteomics_spectrum["m/z array"], dtype="float")
diff --git a/matchms/networking/SimilarityNetwork.py b/matchms/networking/SimilarityNetwork.py
index 8bc98852..3dfb8c63 100644
--- a/matchms/networking/SimilarityNetwork.py
+++ b/matchms/networking/SimilarityNetwork.py
@@ -29,8 +29,8 @@ class SimilarityNetwork:
 
         # Use factory to construct a similarity function
         modified_cosine = ModifiedCosine(tolerance=0.2)
-        spectrums = [spectrum_1, spectrum_2]
-        scores = calculate_scores(spectrums, spectrums, modified_cosine)
+        spectra = [spectrum_1, spectrum_2]
+        scores = calculate_scores(spectra, spectra, modified_cosine)
         ms_network = SimilarityNetwork(identifier_key="test_id")
         ms_network.create_network(scores, score_name="ModifiedCosine_score")
 
@@ -65,7 +65,7 @@ class SimilarityNetwork:
         max_links
             Maximum number of links to add per node. Default = 10.
             Due to incoming links, total number of links per node can be higher.
-            The links are populated by looping over the query spectrums.
+            The links are populated by looping over the query spectra.
             Important side note: The max_links restriction is strict which means that
             if scores around max_links are equal still only max_links will be added
             which can results in some random variations (sorting spectra with equal
@@ -101,7 +101,7 @@ class SimilarityNetwork:
         Parameters
         ----------
         scores
-            Matchms Scores object containing all spectrums and pair similarities for
+            Matchms Scores object containing all spectra and pair similarities for
             generating a network.
         """
         if score_name is None:
diff --git a/matchms/plotting/__init__.py b/matchms/plotting/__init__.py
index a35ef707..8ce7460b 100644
--- a/matchms/plotting/__init__.py
+++ b/matchms/plotting/__init__.py
@@ -24,11 +24,11 @@ Example of how to visually compare two spectra:
     from matchms.importing import load_from_msp
 
     module_root = os.getcwd()
-    spectrums_file = os.path.join(module_root, "matchms", "tests", "MoNA-export-GC-MS-first10.msp")
-    spectrums = list(load_from_msp(spectrums_file))
-    spectrums = [msfilters.default_filters(s) for s in spectrums]
+    spectra_file = os.path.join(module_root, "matchms", "tests", "MoNA-export-GC-MS-first10.msp")
+    spectra = list(load_from_msp(spectra_file))
+    spectra = [msfilters.default_filters(s) for s in spectra]
 
-    spectrums[1].plot()
+    spectra[1].plot()
     # plt.savefig("spectrum-plot-example_1.png", dpi=300)  # If you want to save a plot
 
 .. figure:: ../_static/spectrum-plot-example.png
@@ -41,7 +41,7 @@ Another example is to compare two spectra visually using a mirror plot:
 
 .. code-block:: python
 
-    spectrums[2].plot_against(spectrums[3])
+    spectra[2].plot_against(spectra[3])
     plt.xlim(0, 200)
 
 .. figure:: ../_static/spectrum-mirror-plot-example.png
@@ -55,7 +55,7 @@ Finally, it is also possible to plot many spectra at once using `plot_spectra_ar
 .. code-block:: python
 
     from matchms.plotting import plot_spectra_array
-    plot_spectra_array(spectrums[:4])
+    plot_spectra_array(spectra[:4])
 
 .. figure:: ../_static/spectra-array-plot-example.png
    :width: 700
diff --git a/matchms/plotting/spectrum_plots.py b/matchms/plotting/spectrum_plots.py
index a0a89658..9b565233 100644
--- a/matchms/plotting/spectrum_plots.py
+++ b/matchms/plotting/spectrum_plots.py
@@ -2,6 +2,7 @@ from typing import Optional, Union
 import matplotlib.pyplot as plt
 import matplotlib.ticker as mticker
 import numpy as np
+from matchms.utils import rename_deprecated_params
 
 
 _annotation_kws = {
@@ -151,7 +152,7 @@ def plot_spectra_mirror(spec_top,
 
     if 'peak_color' in spectrum_kws:
         raise ValueError("'peak_color' should not be set for `plot_spectra_mirror`. "
-                         "Use 'color_top' and 'color_bottom' instead.") 
+                         "Use 'color_top' and 'color_bottom' instead.")
 
     # Top spectrum.
     plot_spectrum(spec_top, mirror_intensity=False, ax=ax, peak_color=color_top, **spectrum_kws)
@@ -200,7 +201,8 @@ def plot_spectra_mirror(spec_top,
     return ax
 
 
-def plot_spectra_array(spectrums,
+@rename_deprecated_params(param_mapping={"spectrums": "spectra"}, version="0.26.5")
+def plot_spectra_array(spectra,
                        n_cols: int = 2,
                        peak_color="darkblue",
                        dpi: int = 200,
@@ -212,7 +214,7 @@ def plot_spectra_array(spectrums,
 
     Parameters
     ----------
-    spectrums: list of matchms.Spectrum.Spectrum
+    spectra: list of matchms.Spectrum.Spectrum
         List of spectra to be plotted in a single figure.
     n_cols:
         Number of spectra to be plotted per row. Default is 4.
@@ -221,8 +223,8 @@ def plot_spectra_array(spectrums,
 
     """
     # pylint: disable=too-many-locals
-    assert isinstance(spectrums, list), "Expected list of Spectrum objects as input."
-    n_spectra = len(spectrums)
+    assert isinstance(spectra, list), "Expected list of Spectrum objects as input."
+    n_spectra = len(spectra)
     n_rows = int(np.ceil(n_spectra / n_cols))
     fig, axes = plt.subplots(n_rows, n_cols, figsize=(7 * n_cols, 3 * n_rows), dpi=dpi, squeeze=False)
 
@@ -235,14 +237,14 @@ def plot_spectra_array(spectrums,
             if counter >= n_spectra:
                 break
 
-            plot_spectrum(spectrums[counter],
+            plot_spectrum(spectra[counter],
                           mirror_intensity=False, ax=axes[i, j],
                           peak_color=peak_color, **spectrum_kws)
             axes[i, j].set_title("")
-            if spectrums[counter].get("compound_name") is None:
+            if spectra[counter].get("compound_name") is None:
                 name = f"Spectrum {i * n_cols + j}"
             else:
-                name = spectrums[counter].get("compound_name")
+                name = spectra[counter].get("compound_name")
 
             y_max = axes[i, j].get_ylim()[1]
             x_min = axes[i, j].get_xlim()[0]
diff --git a/matchms/similarity/BaseSimilarity.py b/matchms/similarity/BaseSimilarity.py
index 9c4eb7b3..7b093943 100644
--- a/matchms/similarity/BaseSimilarity.py
+++ b/matchms/similarity/BaseSimilarity.py
@@ -13,7 +13,7 @@ class BaseSimilarity:
     Attributes
     ----------
     is_commutative
-       Whether similarity function is commutative, which means that the order of spectrums
+       Whether similarity function is commutative, which means that the order of spectra
        does not matter (similarity(A, B) == similarity(B, A)). Default is True.
     """
     # Set key characteristics as class attributes
@@ -42,7 +42,7 @@ class BaseSimilarity:
                array_type: str = "numpy",
                is_symmetric: bool = False) -> np.ndarray:
         """Optional: Provide optimized method to calculate an np.array of similarity scores
-        for given reference and query spectrums. If no method is added here, the following naive
+        for given reference and query spectra. If no method is added here, the following naive
         implementation (i.e. a double for-loop) is used.
 
         Parameters
@@ -62,10 +62,10 @@ class BaseSimilarity:
         #pylint: disable=too-many-locals
         n_rows = len(references)
         n_cols = len(queries)
-        
+
         if is_symmetric and n_rows != n_cols:
             raise ValueError(f"Found unequal number of spectra {n_rows} and {n_cols} in while `is_symmetric` is True.")
-        
+
         idx_row = []
         idx_col = []
         scores = []
@@ -103,7 +103,7 @@ class BaseSimilarity:
                      idx_row, idx_col, is_symmetric: bool = False):
         """Optional: Provide optimized method to calculate an sparse matrix of similarity scores.
 
-        Compute similarity scores for pairs of reference and query spectrums as given by the indices
+        Compute similarity scores for pairs of reference and query spectra as given by the indices
         idx_row (references) and idx_col (queries). If no method is added here, the following naive
         implementation (i.e. a for-loop) is used.
 
diff --git a/matchms/similarity/FingerprintSimilarity.py b/matchms/similarity/FingerprintSimilarity.py
index 09873c18..320c70f4 100644
--- a/matchms/similarity/FingerprintSimilarity.py
+++ b/matchms/similarity/FingerprintSimilarity.py
@@ -39,13 +39,13 @@ class FingerprintSimilarity(BaseSimilarity):
                               intensities=np.array([], dtype="float"),
                               metadata={"smiles": "C(C(=O)O)(NC(=O)O)S"})
 
-        spectrums = [spectrum_1, spectrum_2, spectrum_3]
+        spectra = [spectrum_1, spectrum_2, spectrum_3]
         # Add fingerprints
-        spectrums = [add_fingerprint(x, nbits=256) for x in spectrums]
+        spectra = [add_fingerprint(x, nbits=256) for x in spectra]
 
         # Specify type and calculate similarities
         similarity_measure = FingerprintSimilarity("jaccard")
-        scores = calculate_scores(spectrums, spectrums, similarity_measure)
+        scores = calculate_scores(spectra, spectra, similarity_measure)
         print(np.round(scores.scores.to_array(), 3))
 
     Should output
@@ -112,22 +112,22 @@ class FingerprintSimilarity(BaseSimilarity):
         Parameters
         ----------
         references:
-            List of reference spectrums.
+            List of reference spectra.
         queries:
-            List of query spectrums.
+            List of query spectra.
         array_type
             Specify the output array type. Can be "numpy" or "sparse".
             Default is "numpy" and will return a numpy array. "sparse" will return a COO-sparse array
         """
-        def get_fingerprints(spectrums):
-            for index, spectrum in enumerate(spectrums):
+        def get_fingerprints(spectra):
+            for index, spectrum in enumerate(spectra):
                 yield index, spectrum.get("fingerprint")
 
-        def collect_fingerprints(spectrums):
+        def collect_fingerprints(spectra):
             """Collect fingerprints and indices of spectrum with finterprints."""
             idx_fingerprints = []
             fingerprints = []
-            for index, fp in get_fingerprints(spectrums):
+            for index, fp in get_fingerprints(spectra):
                 if fp is not None:
                     idx_fingerprints.append(index)
                     fingerprints.append(fp)
diff --git a/matchms/similarity/IntersectMz.py b/matchms/similarity/IntersectMz.py
index e5d77d49..72f278a4 100644
--- a/matchms/similarity/IntersectMz.py
+++ b/matchms/similarity/IntersectMz.py
@@ -7,7 +7,7 @@ class IntersectMz(BaseSimilarity):
     """Example score for illustrating how to build custom spectra similarity score.
 
     IntersectMz will count all exact matches of peaks and divide it by all unique
-    peaks found in both spectrums.
+    peaks found in both spectra.
 
     Example of how matchms similarity functions can be used:
 
diff --git a/matchms/similarity/MetadataMatch.py b/matchms/similarity/MetadataMatch.py
index 7ab373ec..85d221ae 100644
--- a/matchms/similarity/MetadataMatch.py
+++ b/matchms/similarity/MetadataMatch.py
@@ -17,7 +17,7 @@ class MetadataMatch(BaseSimilarity):
     This is supposed to be used to compare a wide range of possible metadata entries and
     use this to later select related or similar spectra.
 
-    Example to calculate scores between 2 pairs of spectrums and iterate over the scores
+    Example to calculate scores between 2 pairs of spectra and iterate over the scores
 
     .. testcode::
 
@@ -120,9 +120,9 @@ class MetadataMatch(BaseSimilarity):
         Parameters
         ----------
         references
-            List/array of reference spectrums.
+            List/array of reference spectra.
         queries
-            List/array of Single query spectrums.
+            List/array of Single query spectra.
         array_type
             Specify the output array type. Can be "numpy" or "sparse".
             Default is "numpy" and will return a numpy array. "sparse" will return a COO-sparse array.
@@ -135,10 +135,10 @@ class MetadataMatch(BaseSimilarity):
         if array_type not in ["numpy", "sparse"]:
             raise ValueError("array_type must be 'numpy' or 'sparse'.")
 
-        def collect_entries(spectrums):
+        def collect_entries(spectra):
             """Collect metadata entries."""
             entries = []
-            for spectrum in spectrums:
+            for spectrum in spectra:
                 entry = spectrum.get(self.field)
                 if entry is None:
                     msg = f"No {self.field} entry found for spectrum."
diff --git a/matchms/similarity/ParentMassMatch.py b/matchms/similarity/ParentMassMatch.py
index 96ac47d1..e1927864 100644
--- a/matchms/similarity/ParentMassMatch.py
+++ b/matchms/similarity/ParentMassMatch.py
@@ -8,9 +8,9 @@ from .BaseSimilarity import BaseSimilarity
 
 
 class ParentMassMatch(BaseSimilarity):
-    """Return True if spectrums match in parent mass (within tolerance), and False otherwise.
+    """Return True if spectra match in parent mass (within tolerance), and False otherwise.
 
-    Example to calculate scores between 2 spectrums and iterate over the scores
+    Example to calculate scores between 2 spectra and iterate over the scores
 
     .. testcode::
 
@@ -88,9 +88,9 @@ class ParentMassMatch(BaseSimilarity):
         Parameters
         ----------
         references
-            List/array of reference spectrums.
+            List/array of reference spectra.
         queries
-            List/array of Single query spectrums.
+            List/array of Single query spectra.
         array_type
             Specify the output array type. Can be "numpy" or "sparse".
             Default is "numpy" and will return a numpy array. "sparse" will return a COO-sparse array.
@@ -99,10 +99,10 @@ class ParentMassMatch(BaseSimilarity):
             comparison). By using the fact that score[i,j] = score[j,i] the calculation will be about
             2x faster.
         """
-        def collect_parentmasses(spectrums):
+        def collect_parentmasses(spectra):
             """Collect parentmasses."""
             parentmasses = []
-            for spectrum in spectrums:
+            for spectrum in spectra:
                 parentmass = spectrum.get("parent_mass")
                 assert parentmass is not None, "Missing parent mass."
                 parentmasses.append(parentmass)
diff --git a/matchms/similarity/PrecursorMzMatch.py b/matchms/similarity/PrecursorMzMatch.py
index d24bd8f6..19126f1d 100644
--- a/matchms/similarity/PrecursorMzMatch.py
+++ b/matchms/similarity/PrecursorMzMatch.py
@@ -9,11 +9,11 @@ from .BaseSimilarity import BaseSimilarity
 
 
 class PrecursorMzMatch(BaseSimilarity):
-    """Return True if spectrums match in precursor m/z (within tolerance), and False otherwise.
+    """Return True if spectra match in precursor m/z (within tolerance), and False otherwise.
     The match within tolerance can be calculated based on an absolute m/z difference
     (tolerance_type="Dalton") or based on a relative difference in ppm (tolerance_type="ppm").
 
-    Example to calculate scores between 2 pairs of spectrums and iterate over the scores
+    Example to calculate scores between 2 pairs of spectra and iterate over the scores
 
     .. testcode::
 
@@ -99,9 +99,9 @@ class PrecursorMzMatch(BaseSimilarity):
         Parameters
         ----------
         references
-            List/array of reference spectrums.
+            List/array of reference spectra.
         queries
-            List/array of Single query spectrums.
+            List/array of Single query spectra.
         array_type
             Specify the output array type. Can be "numpy" or "sparse".
             Default is "numpy" and will return a numpy array. "sparse" will return a COO-sparse array.
@@ -110,10 +110,10 @@ class PrecursorMzMatch(BaseSimilarity):
             comparison). By using the fact that score[i,j] = score[j,i] the calculation will be about
             2x faster.
         """
-        def collect_precursormz(spectrums):
+        def collect_precursormz(spectra):
             """Collect precursors."""
             precursors = []
-            for spectrum in spectrums:
+            for spectrum in spectra:
                 precursormz = spectrum.get("precursor_mz")
                 assert precursormz is not None, "Missing precursor m/z."
                 precursors.append(precursormz)
diff --git a/matchms/utils.py b/matchms/utils.py
index 4b7cc228..e320c86a 100644
--- a/matchms/utils.py
+++ b/matchms/utils.py
@@ -2,7 +2,8 @@ import csv
 import logging
 import os
 from functools import lru_cache
-from typing import Iterable, List
+from typing import Callable, Iterable, List
+from warnings import warn
 from .typing import SpectrumType
 
 
@@ -70,10 +71,80 @@ def _load_key_conversions(file: str, source: str, target: str) -> dict:
     return key_conversions
 
 
-def fingerprint_export_warning(spectrums: List[SpectrumType]):
-    if any(x.get("fingerprint") is not None for x in spectrums):
+def fingerprint_export_warning(spectra: List[SpectrumType]):
+    if any(x.get("fingerprint") is not None for x in spectra):
         logger.warning("fingerprint found but will not be written to file.")
 
 
-def filter_empty_spectra(spectrums: List[SpectrumType]) -> List[SpectrumType]:
-    return [x for x in spectrums if x is not None]
+def filter_empty_spectra(spectra: List[SpectrumType]) -> List[SpectrumType]:
+    """Filter None values in spectra list.
+
+    Parameters
+    ----------
+    spectra
+        List of spectra to filter.
+    """
+    return [x for x in spectra if x is not None]
+
+
+def rename_deprecated_params(param_mapping: dict, version: str = None) -> Callable:
+    """Decorator for renaming old, deprecated parameters.
+
+    Usage example:
+    .. testcode::
+    @rename_deprecated_params({"spectrums": "spectra"}, version="0.1.0")
+    def example_func(spectra: List[Spectrum], another_param: str):
+        some function logic using spectra
+
+    example_func(spectrums: [...], another_param: "some string")
+
+    Parameters
+    ----------
+    param_mapping
+        Dict of mapping from old to new parameter names e.g., {"spectrums": "spectra"}
+    version
+        Version in which the parameters are marked as deprecated.
+
+    Returns:
+        Callable function.
+    """
+    def decorator(func: Callable) -> Callable:
+        def wrapper(*args, **kwargs):
+            # New args
+            new_args = list(args)
+            new_kwargs = kwargs.copy()
+
+            # Handle positional arguments
+            for i, (old_param, new_param) in enumerate(param_mapping.items()):
+                if i < len(new_args):
+                    new_kwargs[new_param] = new_args[i]
+            print(new_kwargs.keys())
+
+            # Handle keyword arguments
+            for old_param, new_param in param_mapping.items():
+                if old_param in kwargs:
+                    new_kwargs[new_param] = kwargs.pop(old_param)
+
+                    warning_msg = f"Parameter '{old_param}' is deprecated and will be removed in the future. Use '{new_param}' instead."
+                    if version is not None:
+                        warning_msg += f" -- Deprecated since version {version}."
+
+                    warn(warning_msg, DeprecationWarning, stacklevel=2)
+
+            # Remove old params in keyword arguments, if present
+            for old_param in param_mapping.keys():
+                new_kwargs.pop(old_param, None)
+
+            # Create final args based on new keyword arguments
+            final_args = []
+            for i, param in enumerate(func.__code__.co_varnames):
+                if param in new_kwargs:
+                    final_args.append(new_kwargs.pop(param))
+                elif i < len(new_args):
+                    final_args.append(new_args[i])
+                else:
+                    break
+
+            return func(*final_args, **new_kwargs)
+        return wrapper
+    return decorator
diff --git a/readthedocs/index.rst b/readthedocs/index.rst
index 2ea6361a..bd155e05 100644
--- a/readthedocs/index.rst
+++ b/readthedocs/index.rst
@@ -43,7 +43,7 @@ Install matchms from Anaconda Cloud with
 Example
 =======
 
-Below is a small example of using matchms to calculate the Cosine score between mass Spectrums in the `tests/testdata/pesticides.mgf <https://github.com/matchms/matchms/blob/master/tests/testdata/pesticides.mgf>`_ file.
+Below is a small example of using matchms to calculate the Cosine score between mass Spectra in the `tests/testdata/pesticides.mgf <https://github.com/matchms/matchms/blob/master/tests/testdata/pesticides.mgf>`_ file.
 
 .. testcode::
 
@@ -53,24 +53,24 @@ Below is a small example of using matchms to calculate the Cosine score between
     from matchms import calculate_scores
     from matchms.similarity import CosineGreedy
 
-    # Read spectrums from a MGF formatted file, for other formats see https://matchms.readthedocs.io/en/latest/api/matchms.importing.html
+    # Read spectra from a MGF formatted file, for other formats see https://matchms.readthedocs.io/en/latest/api/matchms.importing.html
     file = load_from_mgf("../tests/testdata/pesticides.mgf")
 
     # Apply filters to clean and enhance each spectrum
-    spectrums = []
+    spectra = []
     for spectrum in file:
         # Apply default filter to standardize ion mode, correct charge and more.
         # Default filter is fully explained at https://matchms.readthedocs.io/en/latest/api/matchms.filtering.html .
         spectrum = default_filters(spectrum)
         # Scale peak intensities to maximum of 1
         spectrum = normalize_intensities(spectrum)
-        spectrums.append(spectrum)
+        spectra.append(spectrum)
 
-    # Calculate Cosine similarity scores between all spectrums
+    # Calculate Cosine similarity scores between all spectra
     # For other similarity score methods see https://matchms.readthedocs.io/en/latest/api/matchms.similarity.html .
     # Because references and queries are here the same spectra, we can set is_symmetric=True
-    scores = calculate_scores(references=spectrums,
-                              queries=spectrums,
+    scores = calculate_scores(references=spectra,
+                              queries=spectra,
                               similarity_function=CosineGreedy(),
                               is_symmetric=True)
 
@@ -78,7 +78,7 @@ Below is a small example of using matchms to calculate the Cosine score between
     print(f"Size of matrix of computed similarities: {scores.scores.shape}")
 
     # Matchms allows to get the best matches for any query using scores_by_query
-    query = spectrums[15]  # just an example
+    query = spectra[15]  # just an example
     best_matches = scores.scores_by_query(query, 'CosineGreedy_score', sort=True)
 
     # Print the calculated scores for each spectrum pair


Test patch:
diff --git a/integration-tests/test_user_workflow.py b/integration-tests/test_user_workflow.py
index 70ad5830..2da7dc93 100644
--- a/integration-tests/test_user_workflow.py
+++ b/integration-tests/test_user_workflow.py
@@ -16,8 +16,8 @@ def test_user_workflow():
                                               ["require_minimum_number_of_peaks", {"n_required": 5}]],
                                score_computations=[["cosinegreedy", {"tolerance": 0.3}]])
     pipeline = Pipeline(workflow)
-    spectrums_file = os.path.join(module_root, "tests", "testdata", "pesticides.mgf")
-    pipeline.run(spectrums_file)
+    spectra_file = os.path.join(module_root, "tests", "testdata", "pesticides.mgf")
+    pipeline.run(spectra_file)
 
     scores = pipeline.scores
 
diff --git a/tests/exporting/test_save_as_json_load_from_json.py b/tests/exporting/test_save_as_json_load_from_json.py
index dec7ccac..d93df250 100644
--- a/tests/exporting/test_save_as_json_load_from_json.py
+++ b/tests/exporting/test_save_as_json_load_from_json.py
@@ -17,8 +17,8 @@ def builder() -> SpectrumBuilder:
 
 def load_test_spectra_file(test_filename):
     module_root = os.path.join(os.path.dirname(__file__), "..")
-    spectrums_file = os.path.join(module_root, "testdata", test_filename)
-    spectra = list(load_from_json(spectrums_file))
+    spectra_file = os.path.join(module_root, "testdata", test_filename)
+    spectra = list(load_from_json(spectra_file))
     return spectra
 
 def test_save_and_load_json_single_spectrum(tmp_path, builder):
diff --git a/tests/exporting/test_save_as_mgf.py b/tests/exporting/test_save_as_mgf.py
index 688ae9e3..7c3c4ee1 100644
--- a/tests/exporting/test_save_as_mgf.py
+++ b/tests/exporting/test_save_as_mgf.py
@@ -9,8 +9,8 @@ from ..builder_Spectrum import SpectrumBuilder
 
 def load_test_spectra_file(test_filename):
     module_root = os.path.join(os.path.dirname(__file__), "..")
-    spectrums_file = os.path.join(module_root, "testdata", test_filename)
-    spectra = list(load_from_mgf(spectrums_file))
+    spectra_file = os.path.join(module_root, "testdata", test_filename)
+    spectra = list(load_from_mgf(spectra_file))
     return spectra
 
 
diff --git a/tests/exporting/test_save_as_msp.py b/tests/exporting/test_save_as_msp.py
index d2914059..c22d54cf 100644
--- a/tests/exporting/test_save_as_msp.py
+++ b/tests/exporting/test_save_as_msp.py
@@ -28,8 +28,8 @@ def data(request):
 
 def load_test_spectra_file(test_filename):
     module_root = os.path.join(os.path.dirname(__file__), "..")
-    spectrums_file = os.path.join(module_root, "testdata", test_filename)
-    spectra = list(load_from_msp(spectrums_file))
+    spectra_file = os.path.join(module_root, "testdata", test_filename)
+    spectra = list(load_from_msp(spectra_file))
     return spectra
 
 
@@ -159,8 +159,8 @@ def test_save_as_msp_export_style(test_file, expected_file, style, filename):
     ["save_as_msp_from_mgf.mgf", "save_as_msp_from_mgf.msp"]])
 def test_save_as_msp_from_mgf(test_file, expected_file, filename):
     module_root = os.path.join(os.path.dirname(__file__), "..")
-    spectrums_file = os.path.join(module_root, "testdata", test_file)
-    actual = list(load_from_mgf(spectrums_file))
+    spectra_file = os.path.join(module_root, "testdata", test_file)
+    actual = list(load_from_mgf(spectra_file))
     expected = load_test_spectra_file(expected_file)
     save_as_msp(actual, filename, mode="w", write_peak_comments=True)
     actual = list(load_from_msp(filename))
diff --git a/tests/exporting/test_save_spectra.py b/tests/exporting/test_save_spectra.py
index 953076e1..4dba9bd2 100644
--- a/tests/exporting/test_save_spectra.py
+++ b/tests/exporting/test_save_spectra.py
@@ -7,8 +7,8 @@ from matchms.importing import load_from_mgf, load_spectra
 
 def load_test_spectra_file():
     module_root = os.path.join(os.path.dirname(__file__), "..")
-    spectrums_file = os.path.join(module_root, "testdata", "testdata.mgf")
-    spectra = list(load_from_mgf(spectrums_file))
+    spectra_file = os.path.join(module_root, "testdata", "testdata.mgf")
+    spectra = list(load_from_mgf(spectra_file))
     return spectra
 
 
@@ -45,7 +45,7 @@ def test_spectra(file_name):
 
 @pytest.mark.parametrize("file_name", ["spectra.pickle"])
 def test_save_as_pickled_file_none_spectra(file_name):
-    """ Tests only pickled file saving with filtered None valued Spectrums
+    """ Tests only pickled file saving with filtered None valued spectra
 
     Params:
     -------
diff --git a/tests/filtering/test_select_by_relative_intensity.py b/tests/filtering/test_select_by_relative_intensity.py
index 6da6c998..7cf17d12 100644
--- a/tests/filtering/test_select_by_relative_intensity.py
+++ b/tests/filtering/test_select_by_relative_intensity.py
@@ -38,7 +38,7 @@ def test_select_by_relative_intensity_with_to_parameter_too_large(spectrum_in: S
 
 
 def test_select_by_relative_intensity_with_empty_peaks():
-    """Within certain workflows it can happen that spectrums are passed which
+    """Within certain workflows it can happen that spectra are passed which
     have empty arrays as peaks. Functions shouldn't break in those cases."""
     spectrum_in = SpectrumBuilder().build()
 
diff --git a/tests/filtering/test_spectrum_processor.py b/tests/filtering/test_spectrum_processor.py
index 033fffbf..01ab5e8a 100644
--- a/tests/filtering/test_spectrum_processor.py
+++ b/tests/filtering/test_spectrum_processor.py
@@ -10,7 +10,7 @@ from ..builder_Spectrum import SpectrumBuilder
 
 
 @pytest.fixture
-def spectrums():
+def spectra():
     s1 = SpectrumBuilder(). \
         with_metadata({"charge": "+1", "pepmass": 100}). \
         with_mz([10, 20, 30]).with_intensities([0.1, 0.4, 10]).build()
@@ -89,30 +89,30 @@ def test_no_filters():
     assert spectrum_out == spectrum_in
 
 
-def test_filter_spectrums(spectrums):
+def test_filter_spectra(spectra):
     processor = SpectrumProcessor(filters=["make_charge_int",
                                            "interpret_pepmass",
                                            "derive_ionmode",
                                            "correct_charge",
                                            ])
-    spectrums, _ = processor.process_spectrums(spectrums)
+    spectra, _ = processor.process_spectra(spectra)
 
-    assert len(spectrums) == 3
-    actual_masses = [s.get("precursor_mz") for s in spectrums]
+    assert len(spectra) == 3
+    actual_masses = [s.get("precursor_mz") for s in spectra]
     expected_masses = [100, 102, 104]
     assert actual_masses == expected_masses
 
 
-def test_filter_spectrums_report(spectrums):
+def test_filter_spectra_report(spectra):
     processor = SpectrumProcessor(filters=["make_charge_int",
                                            "interpret_pepmass",
                                            "derive_ionmode",
                                            "correct_charge",
                                            ])
     processor.parse_and_add_filter(filter_description=("require_minimum_number_of_peaks", {"n_required": 2}))
-    spectrums, report = processor.process_spectrums(spectrums)
-    assert len(spectrums) == 2
-    actual_masses = [s.get("precursor_mz") for s in spectrums]
+    spectra, report = processor.process_spectra(spectra)
+    assert len(spectra) == 2
+    actual_masses = [s.get("precursor_mz") for s in spectra]
     expected_masses = [100, 102]
     assert actual_masses == expected_masses
     assert report.counter_number_processed == 3
@@ -125,18 +125,18 @@ def test_filter_spectrums_report(spectrums):
          [0, 0, 0]]))
 
 
-def test_processing_report_class(spectrums):
+def test_processing_report_class(spectra):
     processing_report = ProcessingReport()
-    for s in spectrums:
+    for s in spectra:
         spectrum_processed = s.clone()
         spectrum_processed.set("smiles", "test")
         processing_report.add_to_report(s, spectrum_processed, "test_filter")
 
-    assert not processing_report.counter_removed_spectrums
+    assert not processing_report.counter_removed_spectra
     assert processing_report.counter_changed_metadata == {"test_filter": 3}
 
 
-def test_adding_custom_filter(spectrums):
+def test_adding_custom_filter(spectra):
     def nonsense_inchikey(s):
         s_in = s.clone()
         s_in.set("inchikey", "NONSENSE")
@@ -150,14 +150,14 @@ def test_adding_custom_filter(spectrums):
     processor.parse_and_add_filter(nonsense_inchikey)
     filters = processor.filters
     assert filters[-1].__name__ == "nonsense_inchikey"
-    spectrums, report = processor.process_spectrums(spectrums)
+    spectra, report = processor.process_spectra(spectra)
     assert report.counter_number_processed == 3
     assert report.counter_changed_metadata == {'make_charge_int': 2, 'interpret_pepmass': 3,
                                                'derive_ionmode': 3, 'nonsense_inchikey': 3}
-    assert spectrums[0].get("inchikey") == "NONSENSE", "Custom filter not executed properly"
+    assert spectra[0].get("inchikey") == "NONSENSE", "Custom filter not executed properly"
 
 
-def test_adding_custom_filter_with_parameters(spectrums):
+def test_adding_custom_filter_with_parameters(spectra):
     def nonsense_inchikey_multiple(s, number):
         s_in = s.clone()
         s_in.set("inchikey", number * "NONSENSE")
@@ -171,11 +171,11 @@ def test_adding_custom_filter_with_parameters(spectrums):
     processor.parse_and_add_filter((nonsense_inchikey_multiple, {"number": 2}))
     filters = processor.filters
     assert filters[-1].__name__ == "nonsense_inchikey_multiple"
-    spectrums, report = processor.process_spectrums(spectrums)
+    spectra, report = processor.process_spectra(spectra)
     assert report.counter_number_processed == 3
     assert report.counter_changed_metadata == {'make_charge_int': 2, 'interpret_pepmass': 3,
                                                'derive_ionmode': 3, 'nonsense_inchikey_multiple': 3}
-    assert spectrums[0].get("inchikey") == "NONSENSENONSENSE", "Custom filter not executed properly"
+    assert spectra[0].get("inchikey") == "NONSENSENONSENSE", "Custom filter not executed properly"
 
 
 @pytest.mark.parametrize("filter_position, expected", [
@@ -220,7 +220,7 @@ def test_add_matchms_filter_in_position():
     assert len(filters) == 4
 
 
-def test_add_custom_filter_with_parameters(spectrums):
+def test_add_custom_filter_with_parameters(spectra):
     def nonsense_inchikey_multiple(s, number):
         s.set("inchikey", number * "NONSENSE")
         return s
@@ -234,8 +234,8 @@ def test_add_custom_filter_with_parameters(spectrums):
     filters = processor.filters
 
     assert filters[-1].__name__ == "nonsense_inchikey_multiple"
-    spectrums, _ = processor.process_spectrums(spectrums)
-    assert spectrums[0].get("inchikey") == "NONSENSENONSENSE", "Custom filter not executed properly"
+    spectra, _ = processor.process_spectra(spectra)
+    assert spectra[0].get("inchikey") == "NONSENSENONSENSE", "Custom filter not executed properly"
 
 
 @pytest.mark.parametrize("filter_description", [
@@ -243,7 +243,7 @@ def test_add_custom_filter_with_parameters(spectrums):
     (msfilters.require_correct_ionmode, {"ion_mode_to_keep": "negative"})
 
 ])
-def test_add_matchms_filter(filter_description, spectrums):
+def test_add_matchms_filter(filter_description, spectra):
     processor = SpectrumProcessor(filters=["make_charge_int",
                                            "interpret_pepmass",
                                            "derive_ionmode",
@@ -252,8 +252,8 @@ def test_add_matchms_filter(filter_description, spectrums):
     processor.parse_and_add_filter(filter_description)
     filters = processor.filters
     assert filters[-1].__name__ == "require_correct_ionmode"
-    spectrums, _ = processor.process_spectrums(spectrums)
-    assert len(spectrums) == 2
+    spectra, _ = processor.process_spectra(spectra)
+    assert len(spectra) == 2
 
 
 @pytest.mark.parametrize("filter_description", [
@@ -277,7 +277,7 @@ def test_add_filter_twice():
     assert processor.processing_steps == [("derive_adduct_from_name", {"remove_adduct_from_name": True})]
 
 
-def test_add_all_filter_types(spectrums):
+def test_add_all_filter_types(spectra):
     def nonsense_inchikey_multiple(s, number):
         s.set("inchikey", number * "NONSENSE")
         return s
@@ -300,33 +300,33 @@ def test_add_all_filter_types(spectrums):
                                                                  "nonsense_inchikey",
                                                                  "nonsense_inchikey_multiple",
                                                                  ]
-    processor.process_spectrums(spectrums)
-    spectrums, _ = processor.process_spectrums(spectrums)
-    assert spectrums[0].get("inchikey") == "NONSENSENONSENSE", "Custom filter not executed properly"
+    processor.process_spectra(spectra)
+    spectra, _ = processor.process_spectra(spectra)
+    assert spectra[0].get("inchikey") == "NONSENSENONSENSE", "Custom filter not executed properly"
 
 
-def test_save_spectra_spectrum_processor(spectrums, tmp_path):
+def test_save_spectra_spectrum_processor(spectra, tmp_path):
     processor = SpectrumProcessor(BASIC_FILTERS)
     filename = os.path.join(tmp_path, "spectra.msp")
 
-    _, _ = processor.process_spectrums(spectrums, cleaned_spectra_file=str(filename))
+    _, _ = processor.process_spectra(spectra, cleaned_spectra_file=str(filename))
     assert os.path.exists(filename)
 
     # Reload spectra and compare lengths
     reloaded_spectra = list(load_spectra(str(filename)))
-    assert len(reloaded_spectra) == len(spectrums)
+    assert len(reloaded_spectra) == len(spectra)
 
     # Check that the processed spectra are stored
     for spectrum in reloaded_spectra:
         assert spectrum.get("precursor_mz") is not None
 
 
-def test_save_spectra_spectrum_processor_none_spectra(spectrums, tmp_path):
+def test_save_spectra_spectrum_processor_none_spectra(spectra, tmp_path):
     processor = SpectrumProcessor(BASIC_FILTERS +
                                   [(msfilters.require_correct_ionmode, {"ion_mode_to_keep": "positive"})])
     filename = os.path.join(tmp_path, "spectra.msp")
 
-    _, _ = processor.process_spectrums(spectrums, cleaned_spectra_file=str(filename))
+    _, _ = processor.process_spectra(spectra, cleaned_spectra_file=str(filename))
     assert os.path.exists(filename)
 
     # Reload spectra and compare lengths
@@ -343,16 +343,16 @@ def test_save_spectra_spectrum_processor_none_spectra(spectrums, tmp_path):
     ['mgf', True],
     ['json', False],
 ])
-def test_save_partial_spectra_spectrum_processor(ftype, should_work, spectrums, tmp_path):
+def test_save_partial_spectra_spectrum_processor(ftype, should_work, spectra, tmp_path):
     processor = SpectrumProcessor(BASIC_FILTERS)
 
     # Deliberately introduce invalid spectrum
-    spectrums[-2] = "Lorem Ipsum"
+    spectra[-2] = "Lorem Ipsum"
 
     filename = os.path.join(tmp_path, f"spectra.{ftype}")
 
     with pytest.raises(Exception):
-        _, _ = processor.process_spectrums(spectrums, cleaned_spectra_file=str(filename))
+        _, _ = processor.process_spectra(spectra, cleaned_spectra_file=str(filename))
 
     if should_work:
         assert os.path.exists(filename)
@@ -361,7 +361,7 @@ def test_save_partial_spectra_spectrum_processor(ftype, should_work, spectrums,
         reloaded_spectra = list(load_spectra(str(filename)))
 
         # Make sure we are only missing last two "spectra"
-        assert len(reloaded_spectra) == len(spectrums) - 2
+        assert len(reloaded_spectra) == len(spectra) - 2
 
         # Check that the processed spectra are stored
         for spectrum in reloaded_spectra:
diff --git a/tests/importing/test_load_from_msp.py b/tests/importing/test_load_from_msp.py
index bf46edfc..95fdedc2 100644
--- a/tests/importing/test_load_from_msp.py
+++ b/tests/importing/test_load_from_msp.py
@@ -28,9 +28,9 @@ def test_load_from_msp_spaces_mona_1():
     """
 
     module_root = os.path.join(os.path.dirname(__file__), "..")
-    spectrums_file = os.path.join(
+    spectra_file = os.path.join(
         module_root, "testdata", "MoNA-export-GC-MS-first10.msp")
-    spectrum = list(load_from_msp(spectrums_file))
+    spectrum = list(load_from_msp(spectra_file))
 
     expected_inchikey = np.array([
         "ALRLPDGCPYIVHP-UHFFFAOYSA-N", "UFBJCMHMOXMLKC-UHFFFAOYSA-N", "WDNBURPWRNALGP-UHFFFAOYSA-N",
@@ -50,9 +50,9 @@ def test_load_from_msp_spaces_mona_2():
     Check if peak m/z and intensity are loaded correctly if separated by spaces.
     """
     module_root = os.path.join(os.path.dirname(__file__), "..")
-    spectrums_file = os.path.join(
+    spectra_file = os.path.join(
         module_root, "testdata", "MoNA-export-GC-MS-first10.msp")
-    spectrum = next(iter(load_from_msp(spectrums_file)))
+    spectrum = next(iter(load_from_msp(spectra_file)))
 
     expected_mz = np.array([
         51, 55, 57, 58, 59, 60, 61, 62, 63, 66, 68, 70, 72, 73, 74, 75, 76, 78,
@@ -83,9 +83,9 @@ def test_load_from_msp_spaces_massbank_1():
     """
 
     module_root = os.path.join(os.path.dirname(__file__), "..")
-    spectrums_file = os.path.join(
+    spectra_file = os.path.join(
         module_root, "testdata", "massbank_five_spectra.msp")
-    spectrum = list(load_from_msp(spectrums_file))
+    spectrum = list(load_from_msp(spectra_file))
 
     expected_inchikey = [
         "XTWYTFMLZFPYCI-UHFFFAOYSA-N",
@@ -111,9 +111,9 @@ def test_load_from_msp_tabs():
     """Test parse of msp file to spectrum objects with tabstop separator."""
 
     module_root = os.path.join(os.path.dirname(__file__), "..")
-    spectrums_file = os.path.join(
+    spectra_file = os.path.join(
         module_root, "testdata", "rcx_gc-ei_ms_20201028_perylene.msp")
-    spectra = list(load_from_msp(spectrums_file))
+    spectra = list(load_from_msp(spectra_file))
 
     expected_inchikey = np.array([
         "CSHWQDPOILHKBI-UHFFFAOYSA-N"
@@ -154,10 +154,10 @@ def test_load_from_msp_multiline():
     """Test parse of msp file to spectrum objects with ';' separator and multiple peaks in one line."""
 
     module_root = os.path.join(os.path.dirname(__file__), "..")
-    spectrums_file = os.path.join(
+    spectra_file = os.path.join(
         module_root, "testdata", "multiline_semicolon.msp")
 
-    actual = list(load_from_msp(spectrums_file))
+    actual = list(load_from_msp(spectra_file))
     expected = [
         Spectrum(
             mz=np.array([
@@ -194,9 +194,9 @@ def test_load_from_msp_diverse_spectrum_collection():
     """
 
     module_root = os.path.join(os.path.dirname(__file__), "..")
-    spectrums_file = os.path.join(
+    spectra_file = os.path.join(
         module_root, "testdata", "test_spectra_collection.msp")
-    spectrum = load_from_msp(spectrums_file)
+    spectrum = load_from_msp(spectra_file)
 
     expected_inchikey = np.array([
         "UDOOPSJCRMKSGL-ZHACJKMWSA-N", "QQVDJLLNRSOCEL-UHFFFAOYSA-N", "KPZYYKDXZKFBQU-UHFFFAOYSA-N"
@@ -219,8 +219,8 @@ def test_load_from_msp_diverse_spectrum_collection():
 
 def test_load_msl():
     module_root = os.path.join(os.path.dirname(__file__), "..")
-    spectrums_file = os.path.join(module_root, "testdata", "JL_2021_V2.msl")
-    actual = list(load_from_msp(spectrums_file))[0]
+    spectra_file = os.path.join(module_root, "testdata", "JL_2021_V2.msl")
+    actual = list(load_from_msp(spectra_file))[0]
 
     metadata = {
         "COMPOUND_NAME": "G3P",
@@ -241,8 +241,8 @@ def test_load_msl():
 
 def test_load_golm_style_msp():
     module_root = os.path.join(os.path.dirname(__file__), "..")
-    spectrums_file = os.path.join(module_root, "testdata", "golm.msp")
-    actual = list(load_from_msp(spectrums_file))
+    spectra_file = os.path.join(module_root, "testdata", "golm.msp")
+    actual = list(load_from_msp(spectra_file))
 
     assert len(actual) == 3
     assert len(actual[0].mz) == 50
@@ -250,8 +250,8 @@ def test_load_golm_style_msp():
 
 def test_load_msp_with_comments_including_quotes():
     module_root = os.path.join(os.path.dirname(__file__), "..")
-    spectrums_file = os.path.join(module_root, "testdata", "comments_with_quotes.msp")
-    actual = next(load_from_msp(spectrums_file))
+    spectra_file = os.path.join(module_root, "testdata", "comments_with_quotes.msp")
+    actual = next(load_from_msp(spectra_file))
 
     assert len(actual.mz) == 248
     assert actual.get("columntype") == "Semi-standard non-polar, TG-5SILMSwith10mGuard, 30mx0.25mmx0.25um"
@@ -261,8 +261,8 @@ def test_load_msp_with_comments_including_quotes():
 
 def test_load_msp_with_scientific_notation():
     module_root = os.path.join(os.path.dirname(__file__), "..")
-    spectrums_file = os.path.join(module_root, "testdata", "test_spectra_collection.msp")
-    actual = list(load_from_msp(spectrums_file))
+    spectra_file = os.path.join(module_root, "testdata", "test_spectra_collection.msp")
+    actual = list(load_from_msp(spectra_file))
 
     assert len(actual) == 3
 
diff --git a/tests/importing/test_load_from_mzml.py b/tests/importing/test_load_from_mzml.py
index 14926fe6..90ea07fe 100644
--- a/tests/importing/test_load_from_mzml.py
+++ b/tests/importing/test_load_from_mzml.py
@@ -7,9 +7,9 @@ def test_load_from_mzml():
 
     module_root = os.path.join(os.path.dirname(__file__), "..")
     mzml_file = os.path.join(module_root, "testdata", "testdata.mzml")
-    spectrums = list(load_from_mzml(mzml_file))
+    spectra = list(load_from_mzml(mzml_file))
 
-    assert len(spectrums) == 10, "Expected 10 spectrums."
-    assert int(spectrums[5].get("precursor_mz")) == 177, "Expected different precursor m/z"
-    assert float(spectrums[0].get("scan_start_time")[0]) == 0.616304, "Expected different time."
-    assert [len(x.peaks) for x in spectrums] == [30, 28, 21, 70, 28, 20, 22, 27, 11, 25]
+    assert len(spectra) == 10, "Expected 10 spectra."
+    assert int(spectra[5].get("precursor_mz")) == 177, "Expected different precursor m/z"
+    assert float(spectra[0].get("scan_start_time")[0]) == 0.616304, "Expected different time."
+    assert [len(x.peaks) for x in spectra] == [30, 28, 21, 70, 28, 20, 22, 27, 11, 25]
diff --git a/tests/importing/test_load_from_mzxml.py b/tests/importing/test_load_from_mzxml.py
index 07c0513e..0aae385e 100644
--- a/tests/importing/test_load_from_mzxml.py
+++ b/tests/importing/test_load_from_mzxml.py
@@ -24,6 +24,6 @@ def test_load_from_mzxml_ms_levels():
     expected_num_spectra = [1, 1, 3, 0]
     for i in range(4):
         ms_level = i + 1
-        spectrums = list(load_from_mzxml(mzxml_file, ms_level))
-        assert len(spectrums) == expected_num_spectra[i], (
-            f"Expected different number of spectrums for ms_level={ms_level}")
+        spectra = list(load_from_mzxml(mzxml_file, ms_level))
+        assert len(spectra) == expected_num_spectra[i], (
+            f"Expected different number of spectra for ms_level={ms_level}")
diff --git a/tests/networking/test_SimilarityNetwork.py b/tests/networking/test_SimilarityNetwork.py
index e3605a07..6cd2bad4 100644
--- a/tests/networking/test_SimilarityNetwork.py
+++ b/tests/networking/test_SimilarityNetwork.py
@@ -20,33 +20,33 @@ def filename(graph_format):
         yield filepath
 
 
-def create_dummy_spectrums():
-    """Create dummy spectrums"""
+def create_dummy_spectra():
+    """Create dummy spectra"""
     fingerprints1 = [[1, 0, 0], [0, 1, 0], [0, 0, 1], [1, 1, 0], [1, 0, 1]]
     fingerprints2 = [[1, 0, 1], [0, 1, 1], [1, 1, 1]]
-    spectrums = []
+    spectra = []
     for i, fp in enumerate(fingerprints1):
-        spectrums.append(Spectrum(mz=np.array([100, 200.]),
+        spectra.append(Spectrum(mz=np.array([100, 200.]),
                                   intensities=np.array([0.7, 0.1 * i]),
                                   metadata={"spectrum_id": 'ref_spec_'+str(i),
                                             "fingerprint": np.array(fp),
                                             "smiles": 'C1=CC=C2C(=C1)NC(=N2)C3=CC=CO3',
                                             "precursor_mz": 100+50*i}))
     for i, fp in enumerate(fingerprints2):
-        spectrums.append(Spectrum(mz=np.array([100, 200.]),
+        spectra.append(Spectrum(mz=np.array([100, 200.]),
                                   intensities=np.array([0.5, 0.1 * i]),
                                   metadata={"spectrum_id": 'query_spec_'+str(i),
                                             "fingerprint": np.array(fp),
                                             "smiles": 'CC1=C(C=C(C=C1)NC(=O)N(C)C)Cl',
                                             "precursor_mz": 110+50*i}))
-    return spectrums
+    return spectra
 
 
 def create_dummy_scores():
     """Creat asymmetric scores object (references != queries)"""
-    spectrums = create_dummy_spectrums()
-    references = spectrums[:5]
-    queries = spectrums[5:]
+    spectra = create_dummy_spectra()
+    references = spectra[:5]
+    queries = spectra[5:]
 
     # Create Scores object by calculating dice scores
     similarity_measure = FingerprintSimilarity("dice")
@@ -55,20 +55,20 @@ def create_dummy_scores():
 
 
 def create_dummy_scores_symmetric():
-    spectrums = create_dummy_spectrums()
+    spectra = create_dummy_spectra()
 
     # Create Scores object by calculating dice scores
     similarity_measure = FingerprintSimilarity("dice")
-    scores = calculate_scores(spectrums, spectrums, similarity_measure)
+    scores = calculate_scores(spectra, spectra, similarity_measure)
     return scores
 
 
 def create_dummy_scores_symmetric_modified_cosine():
-    spectrums = create_dummy_spectrums()
+    spectra = create_dummy_spectra()
 
     # Create Scores object by calculating dice scores
     similarity_measure = ModifiedCosine()
-    scores = calculate_scores(spectrums, spectrums, similarity_measure)
+    scores = calculate_scores(spectra, spectra, similarity_measure)
     return scores
 
 
diff --git a/tests/networking/test_networking_functions.py b/tests/networking/test_networking_functions.py
index 4d59aae6..d4e2df1f 100644
--- a/tests/networking/test_networking_functions.py
+++ b/tests/networking/test_networking_functions.py
@@ -2,13 +2,13 @@ import numpy as np
 from matchms import calculate_scores
 from matchms.networking.networking_functions import get_top_hits
 from matchms.similarity import FingerprintSimilarity
-from .test_SimilarityNetwork import create_dummy_spectrums
+from .test_SimilarityNetwork import create_dummy_spectra
 
 
 def create_dummy_scores():
-    spectrums = create_dummy_spectrums()
-    references = spectrums[:5]
-    queries = spectrums[5:]
+    spectra = create_dummy_spectra()
+    references = spectra[:5]
+    queries = spectra[5:]
 
     # Create Scores object by calculating dice scores
     similarity_measure = FingerprintSimilarity("dice")
diff --git a/tests/plotting/test_spectrum_plots.py b/tests/plotting/test_spectrum_plots.py
index 7c66614c..fe8389a6 100644
--- a/tests/plotting/test_spectrum_plots.py
+++ b/tests/plotting/test_spectrum_plots.py
@@ -25,7 +25,7 @@ def _assert_ax_ok(ax, n_lines, ylim, xlabel, ylabel):
 
 
 def test_plot_mirror_plot():
-    # Create two random spectrums
+    # Create two random spectra
     spec_a = Spectrum(mz=np.array([100, 200, 300, 400.2]),
                       intensities=np.array([0.5, 0.3, 0.1, 0.05]))
     spec_b = Spectrum(mz=np.array([10.2, 20.2, 30.2, 40.2, 78.2]),
@@ -37,7 +37,7 @@ def test_plot_mirror_plot():
     assert ax.get_xlim() == (min_mz, max_mz)
 
 def test_plot_mirror_colors():
-    # Create two random spectrums
+    # Create two random spectra
     spec_a = Spectrum(mz=np.array([100., 200.]),
                       intensities=np.array([0.5, 0.3]))
     spec_b = Spectrum(mz=np.array([10.2, 20.2, 30.2]),
@@ -45,13 +45,13 @@ def test_plot_mirror_colors():
 
     # Set specific colors to the top and bottom spectra
     ax = plot_spectra_mirror(spec_a, spec_b, color_top="red", color_bottom="blue")
-    # Get the color of the lines 
+    # Get the color of the lines
     all_colors = [line.get_color() for line in ax.get_lines()]
     assert "red" in all_colors
     assert "blue" in all_colors
 
     # Test that it gives proper error if the wrong color argument is given
-    with pytest.raises(ValueError, 
+    with pytest.raises(ValueError,
                        match="'peak_color' should not be set for `plot_spectra_mirror`. "):
         plot_spectra_mirror(spec_a, spec_b, peak_color="green")
 
@@ -105,7 +105,7 @@ def test_plot_spectra_array_default():
     n = 9
     n_peaks = 50
 
-    spectrums = []
+    spectra = []
     for i in range(n):
         mz = np.random.randint(0, 1000, n_peaks).astype("float")
         mz.sort()
@@ -113,9 +113,9 @@ def test_plot_spectra_array_default():
         spectrum = Spectrum(mz=mz,
                             intensities=np.random.random(n_peaks),
                             metadata={"compound_name": f"Spectrum name {i}"})
-        spectrums.append(spectrum)
+        spectra.append(spectrum)
 
-    fig, axes = plot_spectra_array(spectrums)
+    fig, axes = plot_spectra_array(spectra)
 
     assert axes.shape == (5, 2)
     _assert_fig_ok(fig, n_plots=10, dpi=200, height=15)
@@ -132,7 +132,7 @@ def test_plot_spectra_array():
     n = 10
     n_peaks = 50
 
-    spectrums = []
+    spectra = []
     for i in range(n):
         mz = np.random.randint(0, 1000, n_peaks).astype("float")
         mz.sort()
@@ -140,9 +140,9 @@ def test_plot_spectra_array():
         spectrum = Spectrum(mz=mz,
                             intensities=np.random.random(n_peaks),
                             metadata={"compound_name": f"Spectrum name {i}"})
-        spectrums.append(spectrum)
+        spectra.append(spectrum)
 
-    fig, axes = plot_spectra_array(spectrums,
+    fig, axes = plot_spectra_array(spectra,
                                    n_cols=4,
                                    peak_color="darkblue",
                                    dpi=150)
diff --git a/tests/similarity/test_cosine_greedy.py b/tests/similarity/test_cosine_greedy.py
index 35d9731d..7f3fe7ea 100644
--- a/tests/similarity/test_cosine_greedy.py
+++ b/tests/similarity/test_cosine_greedy.py
@@ -67,9 +67,9 @@ def test_cosine_greedy_matrix(symmetric):
     spectrum_2 = builder.with_mz(np.array([110, 190, 290], dtype="float")).with_intensities(
         np.array([0.5, 0.2, 1.0], dtype="float")).build()
 
-    spectrums = [spectrum_1, spectrum_2]
+    spectra = [spectrum_1, spectrum_2]
     cosine_greedy = CosineGreedy()
-    scores = cosine_greedy.matrix(spectrums, spectrums, is_symmetric=symmetric)
+    scores = cosine_greedy.matrix(spectra, spectra, is_symmetric=symmetric)
 
     assert scores[0][0][0] == pytest.approx(scores[1][1][0], 0.000001), "Expected different cosine score."
     assert scores[0][0]["score"] == pytest.approx(scores[1][1]["score"], 0.000001), \
@@ -85,6 +85,6 @@ def test_cosine_greedy_matrix_unsymmetric_error():
 
     spectrum_2 = builder.with_mz(np.array([110, 190, 290], dtype="float")).with_intensities(
         np.array([0.5, 0.2, 1.0], dtype="float")).build()
-    
+
     with pytest.raises(ValueError, match="unequal number of spectra"):
         CosineGreedy().matrix([spectrum_1, spectrum_2], [spectrum_2], is_symmetric=True)
diff --git a/tests/similarity/test_cosine_hungarian.py b/tests/similarity/test_cosine_hungarian.py
index 82c3802c..8623c87f 100644
--- a/tests/similarity/test_cosine_hungarian.py
+++ b/tests/similarity/test_cosine_hungarian.py
@@ -5,7 +5,7 @@ from matchms.similarity import CosineHungarian
 
 
 def test_cosine_hungarian_without_parameters():
-    """Compare output cosine score with own calculation on simple dummy spectrums."""
+    """Compare output cosine score with own calculation on simple dummy spectra."""
     spectrum_1 = Spectrum(mz=np.array([100, 200, 300, 500, 510], dtype="float"),
                           intensities=np.array([0.1, 0.2, 1.0, 0.3, 0.4], dtype="float"))
 
@@ -44,7 +44,7 @@ def test_cosine_hungarian_matrix_without_parameters():
 
 
 def test_cosine_hungarian_with_tolerance_0_2():
-    """Compare output cosine score for tolerance 0.2 with own calculation on simple dummy spectrums."""
+    """Compare output cosine score for tolerance 0.2 with own calculation on simple dummy spectra."""
     spectrum_1 = Spectrum(mz=np.array([100, 299, 300, 301, 510], dtype="float"),
                           intensities=np.array([0.1, 1.0, 0.2, 0.3, 0.4], dtype="float"))
 
@@ -66,7 +66,7 @@ def test_cosine_hungarian_with_tolerance_0_2():
 
 
 def test_cosine_hungarian_with_tolerance_2_0():
-    """Compare output cosine score for tolerance 2.0 with own calculation on simple dummy spectrums."""
+    """Compare output cosine score for tolerance 2.0 with own calculation on simple dummy spectra."""
     spectrum_1 = Spectrum(mz=np.array([100, 299, 300, 301, 510], dtype="float"),
                           intensities=np.array([0.1, 1.0, 0.2, 0.3, 0.4], dtype="float"))
 
@@ -122,7 +122,7 @@ def test_cosine_hungarian_case_where_greedy_would_fail():
 
 
 def test_cosine_hungarian_case_without_matches():
-    """Test case for spectrums without any matching peaks."""
+    """Test case for spectra without any matching peaks."""
     spectrum_1 = Spectrum(mz=np.array([100, 200], dtype="float"),
                           intensities=np.array([1.0, 0.1], dtype="float"),
                           metadata={})
@@ -138,7 +138,7 @@ def test_cosine_hungarian_case_without_matches():
 
 
 def test_cosine_hungarian_with_peak_powers():
-    """Compare output cosine score with own calculation on simple dummy spectrums.
+    """Compare output cosine score with own calculation on simple dummy spectra.
     Here testing the options to raise peak intensities to given powers.
     """
     mz_power = 0.5
diff --git a/tests/similarity/test_metadata_match.py b/tests/similarity/test_metadata_match.py
index 8ea53a39..4c89e8ab 100644
--- a/tests/similarity/test_metadata_match.py
+++ b/tests/similarity/test_metadata_match.py
@@ -6,7 +6,7 @@ from tests.builder_Spectrum import SpectrumBuilder
 
 
 @pytest.fixture
-def spectrums():
+def spectra():
     metadata1 = {"instrument_type": "orbitrap",
                  "retention_time": 100.}
     metadata2 = {"instrument_type": "qtof",
@@ -22,31 +22,31 @@ def spectrums():
     return [s1, s2, s3, s4]
 
 
-def test_metadata_match_strings(spectrums):
+def test_metadata_match_strings(spectra):
     """Test basic metadata matching between string entries."""
-    references = spectrums[:2]
-    queries = spectrums[2:]
+    references = spectra[:2]
+    queries = spectra[2:]
 
     similarity_score = MetadataMatch(field="instrument_type")
     scores = calculate_scores(references, queries, similarity_score)
     assert np.all(scores.scores.to_array() == [[1, 0], [0, 0]]), "Expected different scores."
 
 
-def test_metadata_match_strings_pair(spectrums):
+def test_metadata_match_strings_pair(spectra):
     """Test basic metadata matching between string entries."""
     similarity_score = MetadataMatch(field="instrument_type")
-    score = similarity_score.pair(spectrums[0], spectrums[1])
+    score = similarity_score.pair(spectra[0], spectra[1])
     assert score == np.array(False, dtype=bool), "Expected different score."
-    score = similarity_score.pair(spectrums[0], spectrums[3])
+    score = similarity_score.pair(spectra[0], spectra[3])
     assert score == np.array(False, dtype=bool), "Expected different score."
-    score = similarity_score.pair(spectrums[0], spectrums[2])
+    score = similarity_score.pair(spectra[0], spectra[2])
     assert score == np.array(True, dtype=bool), "Expected different score."
 
 
-def test_metadata_match_strings_wrong_method(spectrums, caplog):
+def test_metadata_match_strings_wrong_method(spectra, caplog):
     """Test basic metadata matching between string entries."""
-    references = spectrums[:2]
-    queries = spectrums[2:]
+    references = spectra[:2]
+    queries = spectra[2:]
 
     similarity_score = MetadataMatch(field="instrument_type", matching_type="difference")
     scores = calculate_scores(references, queries, similarity_score)
@@ -55,12 +55,12 @@ def test_metadata_match_strings_wrong_method(spectrums, caplog):
     assert msg in caplog.text
 
 
-def test_metadata_match_numerical_pair(spectrums):
+def test_metadata_match_numerical_pair(spectra):
     """Test basic metadata matching between string entries."""
     similarity_score = MetadataMatch(field="retention_time",
                                      matching_type="difference",
                                      tolerance=0.6)
-    score = similarity_score.pair(spectrums[0], spectrums[1])
+    score = similarity_score.pair(spectra[0], spectra[1])
     assert score == 1, "Expected different score."
 
 
@@ -70,10 +70,10 @@ def test_metadata_match_numerical_pair(spectrums):
     [10.0, [[1, 1], [1, 1]]],
     [0.1, [[0, 0], [0, 0]]]
 ])
-def test_metadata_match_numerical(spectrums, tolerance, expected):
+def test_metadata_match_numerical(spectra, tolerance, expected):
     """Test basic metadata matching between numerical entries."""
-    references = spectrums[:2]
-    queries = spectrums[2:]
+    references = spectra[:2]
+    queries = spectra[2:]
 
     similarity_score = MetadataMatch(field="retention_time",
                                      matching_type="difference", tolerance=tolerance)
@@ -81,10 +81,10 @@ def test_metadata_match_numerical(spectrums, tolerance, expected):
     assert np.all(scores.scores.to_array().tolist() == expected), "Expected different scores."
 
 
-def test_metadata_match_invalid_array_type(spectrums):
+def test_metadata_match_invalid_array_type(spectra):
     """Test value error if array_type is not 'numpy' or 'sparse' in metadata matching."""
-    references = spectrums[:2]
-    queries = spectrums[2:]
+    references = spectra[:2]
+    queries = spectra[2:]
 
     similarity_score = MetadataMatch(field="instrument_type")
 
diff --git a/tests/similarity/test_modified_cosine.py b/tests/similarity/test_modified_cosine.py
index b3c90d58..20a9568a 100644
--- a/tests/similarity/test_modified_cosine.py
+++ b/tests/similarity/test_modified_cosine.py
@@ -80,7 +80,7 @@ def test_modified_cosine_with_mass_shift(peaks, tolerance, masses, expected_matc
     assert score["matches"] == len(expected_matches), "Expected differnt number of matching peaks."
 
 
-def test_modified_cosine_order_of_input_spectrums():
+def test_modified_cosine_order_of_input_spectra():
     """Test modified cosine on two spectra in changing order."""
     spectrum_1 = Spectrum(mz=np.array([100, 150, 200, 300, 500, 510, 1100], dtype="float"),
                           intensities=np.array([700, 200, 100, 1000, 200, 5, 500], dtype="float"),
diff --git a/tests/similarity/test_neutral_losses_cosine.py b/tests/similarity/test_neutral_losses_cosine.py
index 61fb7dde..ac548898 100644
--- a/tests/similarity/test_neutral_losses_cosine.py
+++ b/tests/similarity/test_neutral_losses_cosine.py
@@ -88,7 +88,7 @@ def test_neutral_losses_cosine_with_mass_shift(peaks, tolerance, masses, expecte
     assert score["matches"] == len(expected_matches), "Expected differnt number of matching peaks."
 
 
-def test_neutral_losses_cosine_order_of_input_spectrums():
+def test_neutral_losses_cosine_order_of_input_spectra():
     """Test neutral losses cosine on two spectra in changing order."""
     spectrum_1 = Spectrum(mz=np.array([100, 150, 200, 300, 500, 510, 1100], dtype="float"),
                           intensities=np.array([700, 200, 100, 1000, 200, 5, 500], dtype="float"),
diff --git a/tests/similarity/test_parentmass_match.py b/tests/similarity/test_parentmass_match.py
index 3ba8e7b7..f659d760 100644
--- a/tests/similarity/test_parentmass_match.py
+++ b/tests/similarity/test_parentmass_match.py
@@ -49,10 +49,10 @@ def test_parentmass_match_array_symmetric():
     spectrum_3 = builder.with_metadata({"parent_mass": 99.95}).build()
     spectrum_4 = builder.with_metadata({"parent_mass": 98.0}).build()
 
-    spectrums = [spectrum_1, spectrum_2, spectrum_3, spectrum_4]
+    spectra = [spectrum_1, spectrum_2, spectrum_3, spectrum_4]
     similarity_score = ParentMassMatch()
-    scores = similarity_score.matrix(spectrums, spectrums, is_symmetric=True)
-    scores2 = similarity_score.matrix(spectrums, spectrums, is_symmetric=False)
+    scores = similarity_score.matrix(spectra, spectra, is_symmetric=True)
+    scores2 = similarity_score.matrix(spectra, spectra, is_symmetric=False)
 
     assert np.all(scores == scores2), "Expected identical scores"
     assert np.all(scores == np.array(
diff --git a/tests/similarity/test_precursormz_match.py b/tests/similarity/test_precursormz_match.py
index 84841dd8..ea2a42fb 100644
--- a/tests/similarity/test_precursormz_match.py
+++ b/tests/similarity/test_precursormz_match.py
@@ -50,10 +50,10 @@ def test_precursormz_match_array_parameterized(precursor_mz, tolerance, toleranc
      [[True, False, True, False], [False, True, False, False], [True, False, True, False], [False, False, False, True]]]
 ])
 def test_precursormz_match_array_symmetric_parameterized(precursor_mz, tolerance, tolerance_type, expected):
-    spectrums = spectra_factory('precursor_mz', precursor_mz)
+    spectra = spectra_factory('precursor_mz', precursor_mz)
     similarity_score = PrecursorMzMatch(tolerance=tolerance, tolerance_type=tolerance_type)
-    scores = similarity_score.matrix(spectrums, spectrums, is_symmetric=True)
-    scores2 = similarity_score.matrix(spectrums, spectrums, is_symmetric=False)
+    scores = similarity_score.matrix(spectra, spectra, is_symmetric=True)
+    scores2 = similarity_score.matrix(spectra, spectra, is_symmetric=False)
 
     assert np.all(scores == scores2), "Expected identical scores"
     assert np.all(scores == np.array(expected)), "Expected different scores"
diff --git a/tests/test_pipeline.py b/tests/test_pipeline.py
index b5e16c9e..b9afbf72 100644
--- a/tests/test_pipeline.py
+++ b/tests/test_pipeline.py
@@ -10,7 +10,7 @@ from matchms.yaml_file_functions import load_workflow_from_yaml_file
 
 
 module_root = os.path.join(os.path.dirname(__file__), "..")
-spectrums_file_msp = os.path.join(module_root, "tests", "testdata", "massbank_five_spectra.msp")
+spectra_file_msp = os.path.join(module_root, "tests", "testdata", "massbank_five_spectra.msp")
 
 
 def test_pipeline_initial_check_missing_file():
@@ -32,10 +32,10 @@ def test_pipeline_symmetric():
     workflow = create_workflow(score_computations=[["precursormzmatch", {"tolerance": 120.0}],
                                                    ["modifiedcosine", {"tolerance": 10.0}]])
     pipeline = Pipeline(workflow)
-    pipeline.run(spectrums_file_msp)
+    pipeline.run(spectra_file_msp)
 
-    assert len(pipeline.spectrums_queries) == 5
-    assert pipeline.spectrums_queries[0] == pipeline.spectrums_references[0]
+    assert len(pipeline.spectra_queries) == 5
+    assert pipeline.spectra_queries[0] == pipeline.spectra_references[0]
     assert pipeline.is_symmetric is True
     assert pipeline.scores.scores.shape == (5, 5, 3)
     assert pipeline.scores.score_names == ('PrecursorMzMatch', 'ModifiedCosine_score', 'ModifiedCosine_matches')
@@ -51,11 +51,11 @@ def test_pipeline_symmetric_filters():
                                score_computations=[["precursormzmatch", {"tolerance": 120.0}],
                                                    ["modifiedcosine", {"tolerance": 10.0}]])
     pipeline = Pipeline(workflow)
-    pipeline.run(spectrums_file_msp)
+    pipeline.run(spectra_file_msp)
 
-    assert len(pipeline.spectrums_queries) == 5
-    assert pipeline.spectrums_queries[0].metadata == pipeline.spectrums_references[0].metadata
-    assert pipeline.spectrums_queries[0] == pipeline.spectrums_references[0]
+    assert len(pipeline.spectra_queries) == 5
+    assert pipeline.spectra_queries[0].metadata == pipeline.spectra_references[0].metadata
+    assert pipeline.spectra_queries[0] == pipeline.spectra_references[0]
     assert pipeline.is_symmetric is True
     assert pipeline.scores.scores.shape == (5, 5, 3)
     assert pipeline.scores.score_names == ('PrecursorMzMatch', 'ModifiedCosine_score', 'ModifiedCosine_matches')
@@ -71,10 +71,10 @@ def test_pipeline_symmetric_masking():
                                                    ["modifiedcosine", {"tolerance": 10.0}],
                                                    ["filter_by_range", {"low": 0.3, "above_operator": '>='}]])
     pipeline = Pipeline(workflow)
-    pipeline.run(spectrums_file_msp)
+    pipeline.run(spectra_file_msp)
 
-    assert len(pipeline.spectrums_queries) == 5
-    assert pipeline.spectrums_queries[0] == pipeline.spectrums_references[0]
+    assert len(pipeline.spectra_queries) == 5
+    assert pipeline.spectra_queries[0] == pipeline.spectra_references[0]
     assert pipeline.is_symmetric is True
     assert pipeline.scores.scores.shape == (5, 5, 3)
     assert pipeline.scores.score_names == ('PrecursorMzMatch', 'ModifiedCosine_score', 'ModifiedCosine_matches')
@@ -89,10 +89,10 @@ def test_pipeline_symmetric_custom_score():
     workflow = create_workflow(score_computations=[["precursormzmatch", {"tolerance": 120.0}],
                                                    [ModifiedCosine, {"tolerance": 10.0}]])
     pipeline = Pipeline(workflow)
-    pipeline.run(spectrums_file_msp)
+    pipeline.run(spectra_file_msp)
 
-    assert len(pipeline.spectrums_queries) == 5
-    assert pipeline.spectrums_queries[0] == pipeline.spectrums_references[0]
+    assert len(pipeline.spectra_queries) == 5
+    assert pipeline.spectra_queries[0] == pipeline.spectra_references[0]
     assert pipeline.is_symmetric is True
     assert pipeline.scores.scores.shape == (5, 5, 3)
     assert pipeline.scores.score_names == ('PrecursorMzMatch', 'ModifiedCosine_score', 'ModifiedCosine_matches')
@@ -108,11 +108,11 @@ def test_pipeline_non_symmetric():
     workflow = create_workflow(score_computations=[["precursormzmatch", {"tolerance": 120.0}],
                                                    ["modifiedcosine", {"tolerance": 10.0}]])
     pipeline = Pipeline(workflow)
-    pipeline.run(spectrums_file_msp, [spectrums_file_msp, spectrums_file_msp])
+    pipeline.run(spectra_file_msp, [spectra_file_msp, spectra_file_msp])
 
-    assert len(pipeline.spectrums_queries) == 5
-    assert len(pipeline.spectrums_references) == 10
-    assert pipeline.spectrums_queries[0] == pipeline.spectrums_references[5]
+    assert len(pipeline.spectra_queries) == 5
+    assert len(pipeline.spectra_references) == 10
+    assert pipeline.spectra_queries[0] == pipeline.spectra_references[5]
     assert pipeline.is_symmetric is False
     assert pipeline.scores.scores.shape == (10, 5, 3)
     assert pipeline.scores.score_names == ('PrecursorMzMatch', 'ModifiedCosine_score', 'ModifiedCosine_matches')
@@ -128,9 +128,9 @@ def test_pipeline_from_yaml():
     config_file = os.path.join(module_root, "tests", "test_pipeline.yaml")
     workflow = load_workflow_from_yaml_file(config_file)
     pipeline = Pipeline(workflow)
-    pipeline.run(spectrums_file_msp)
-    assert len(pipeline.spectrums_queries) == 5
-    assert pipeline.spectrums_queries[0] == pipeline.spectrums_references[0]
+    pipeline.run(spectra_file_msp)
+    assert len(pipeline.spectra_queries) == 5
+    assert pipeline.spectra_queries[0] == pipeline.spectra_references[0]
     assert pipeline.is_symmetric is True
     assert pipeline.scores.scores.shape == (5, 5, 3)
     assert pipeline.scores.score_names == ('PrecursorMzMatch', 'ModifiedCosine_score', 'ModifiedCosine_matches')
@@ -149,13 +149,13 @@ def test_pipeline_to_and_from_yaml(tmp_path):
     assert os.path.exists(config_file)
 
     pipeline = Pipeline(workflow)
-    pipeline.run(spectrums_file_msp)
+    pipeline.run(spectra_file_msp)
     scores_run1 = pipeline.scores
 
     # Load again
     workflow = load_workflow_from_yaml_file(config_file)
     pipeline = Pipeline(workflow)
-    pipeline.run(spectrums_file_msp)
+    pipeline.run(spectra_file_msp)
     assert pipeline.scores.scores == scores_run1.scores
 
 
@@ -165,7 +165,7 @@ def test_pipeline_logging(tmp_path):
     pipeline = Pipeline(workflow)
     logfile = os.path.join(tmp_path, "testlog.log")
     pipeline.logging_file = logfile
-    pipeline.run(spectrums_file_msp)
+    pipeline.run(spectra_file_msp)
 
     assert os.path.exists(logfile)
     with open(logfile, "r", encoding="utf-8") as f:
@@ -181,8 +181,8 @@ def test_FingerprintSimilarity_pipeline():
                                     {"field": "precursor_mz", "matching_type": "difference", "tolerance": 50}],
                                    ["fingerprintsimilarity", {"similarity_measure": "jaccard"}]])
     pipeline = Pipeline(workflow)
-    pipeline.run(spectrums_file_msp, spectrums_file_msp)
-    assert len(pipeline.spectrums_queries[0].get("fingerprint")) == 2048
+    pipeline.run(spectra_file_msp, spectra_file_msp)
+    assert len(pipeline.spectra_queries[0].get("fingerprint")) == 2048
     assert pipeline.scores.scores.shape == (5, 5, 2)
     assert pipeline.scores.score_names == ('MetadataMatch', 'FingerprintSimilarity')
 
@@ -195,10 +195,10 @@ def test_pipeline_changing_workflow():
     pipeline.query_filters = ["add_fingerprint"]
     pipeline.reference_filters = ["add_fingerprint"]
     pipeline.score_computations = [["modifiedcosine", {"tolerance": 10.0}]]
-    pipeline.run(spectrums_file_msp, spectrums_file_msp)
-    assert len(pipeline.spectrums_queries[0].get("fingerprint")) == 2048, \
+    pipeline.run(spectra_file_msp, spectra_file_msp)
+    assert len(pipeline.spectra_queries[0].get("fingerprint")) == 2048, \
         "The query filters were not modified correctly"
-    assert len(pipeline.spectrums_references[0].get("fingerprint")) == 2048, \
+    assert len(pipeline.spectra_references[0].get("fingerprint")) == 2048, \
         "The reference filters were not modified correctly"
     assert pipeline.scores.score_names == ('ModifiedCosine_score', 'ModifiedCosine_matches')
     all_scores = pipeline.scores.to_array()
@@ -212,12 +212,12 @@ def test_save_spectra_spectrum_processor(tmp_path):
     pipeline = Pipeline(workflow)
     filename = os.path.join(tmp_path, "spectra.mgf")
 
-    pipeline.run(spectrums_file_msp, cleaned_query_file=str(filename))
+    pipeline.run(spectra_file_msp, cleaned_query_file=str(filename))
     assert os.path.exists(filename)
 
     # Reload spectra and compare lengths
     reloaded_spectra = list(load_spectra(str(filename)))
-    assert len(reloaded_spectra) == len(list(load_spectra(spectrums_file_msp)))
+    assert len(reloaded_spectra) == len(list(load_spectra(spectra_file_msp)))
 
 
 def test_add_custom_filter():
@@ -232,8 +232,8 @@ def test_add_custom_filter():
     pipeline = Pipeline(workflow)
     pipeline.processing_queries.parse_and_add_filter((select_spectra_containing_fragment,
                                                       {"fragment_of_interest": 103.05, "tolerance": 0.01}))
-    pipeline.run(spectrums_file_msp)
-    cleaned_spectra = pipeline.spectrums_queries
+    pipeline.run(spectra_file_msp)
+    cleaned_spectra = pipeline.spectra_queries
     assert len(cleaned_spectra) == 0
 
 
@@ -248,6 +248,6 @@ def test_add_custom_filter_to_query_filters():
         query_filters=[(select_spectra_containing_fragment,
                                                       {"fragment_of_interest": 103.05, "tolerance": 0.01})],)
     pipeline = Pipeline(workflow)
-    pipeline.run(spectrums_file_msp)
-    cleaned_spectra = pipeline.spectrums_queries
+    pipeline.run(spectra_file_msp)
+    cleaned_spectra = pipeline.spectra_queries
     assert len(cleaned_spectra) == 0
diff --git a/tests/test_scores.py b/tests/test_scores.py
index 91ef5c2b..3129123f 100644
--- a/tests/test_scores.py
+++ b/tests/test_scores.py
@@ -302,11 +302,11 @@ def test_sort_without_name_exception():
 def test_comparing_symmetric_scores(similarity_function_a, similarity_function_b):
     "Test comparing symmetric scores objects."
     spectrum_1, spectrum_2, spectrum_3, spectrum_4 = spectra()
-    spectrums = [spectrum_1, spectrum_2, spectrum_3, spectrum_4]
+    spectra_list = [spectrum_1, spectrum_2, spectrum_3, spectrum_4]
 
-    scores_similarity_a = calculate_scores(spectrums, spectrums, similarity_function_a)
-    scores_similarity_a_copy = calculate_scores(spectrums, spectrums, similarity_function_a)
-    scores_similarity_b = calculate_scores(spectrums, spectrums, similarity_function_b)
+    scores_similarity_a = calculate_scores(spectra_list, spectra_list, similarity_function_a)
+    scores_similarity_a_copy = calculate_scores(spectra_list, spectra_list, similarity_function_a)
+    scores_similarity_b = calculate_scores(spectra_list, spectra_list, similarity_function_b)
 
     assert scores_similarity_a == scores_similarity_a_copy
     assert scores_similarity_a != scores_similarity_b
@@ -318,11 +318,11 @@ def test_comparing_symmetric_scores(similarity_function_a, similarity_function_b
 def test_comparing_asymmetric_scores(similarity_function_a, similarity_function_b):
     "Test comparing asymmetric scores objects."
     spectrum_1, spectrum_2, spectrum_3, spectrum_4 = spectra()
-    spectrums = [spectrum_1, spectrum_2, spectrum_3, spectrum_4]
+    spectra_list = [spectrum_1, spectrum_2, spectrum_3, spectrum_4]
 
-    scores_similarity_a = calculate_scores(spectrums[0:3], spectrums, similarity_function_a)
-    scores_similarity_a_copy = calculate_scores(spectrums[0:3], spectrums, similarity_function_a)
-    scores_similarity_b = calculate_scores(spectrums, spectrums[0:3], similarity_function_b)
+    scores_similarity_a = calculate_scores(spectra_list[0:3], spectra_list, similarity_function_a)
+    scores_similarity_a_copy = calculate_scores(spectra_list[0:3], spectra_list, similarity_function_a)
+    scores_similarity_b = calculate_scores(spectra_list, spectra_list[0:3], similarity_function_b)
 
     assert scores_similarity_a == scores_similarity_a_copy
     assert scores_similarity_a != scores_similarity_b
@@ -335,9 +335,9 @@ def test_comparing_asymmetric_scores(similarity_function_a, similarity_function_
 def test_comparing_scores_with_same_shape_different_scores_values(similarity_function_a, similarity_function_b):
     "Test comparing scores objects with same similarity functions but different values of scores."
     spectrum_1, spectrum_2, spectrum_3, spectrum_4 = spectra()
-    spectrums = [spectrum_1, spectrum_2, spectrum_3, spectrum_4]
+    spectra_list = [spectrum_1, spectrum_2, spectrum_3, spectrum_4]
 
-    scores_parametrized = calculate_scores(spectrums, spectrums, similarity_function_a)
-    scores_parametrized_mirrored = calculate_scores(spectrums, spectrums, similarity_function_b)
+    scores_parametrized = calculate_scores(spectra_list, spectra_list, similarity_function_a)
+    scores_parametrized_mirrored = calculate_scores(spectra_list, spectra_list, similarity_function_b)
 
     assert scores_parametrized != scores_parametrized_mirrored
diff --git a/tests/test_scoring_method_consistency.py b/tests/test_scoring_method_consistency.py
index c0fe37f5..2d161598 100644
--- a/tests/test_scoring_method_consistency.py
+++ b/tests/test_scoring_method_consistency.py
@@ -29,46 +29,46 @@ _score_functions = {
 
 
 @pytest.fixture
-def spectrums():
-    """Import spectrums and apply basic filters."""
+def spectra():
+    """Import spectra and apply basic filters."""
     def processing(s):
         s = msfilter.default_filters(s)
         s = msfilter.add_parent_mass(s)
         s = msfilter.normalize_intensities(s)
         return s
 
-    spectrums = load_from_json(json_file)
-    spectrums = [processing(s) for s in spectrums]
-    spectrums = [s for s in spectrums if s is not None]
-    return spectrums
+    spectra = load_from_json(json_file)
+    spectra = [processing(s) for s in spectra]
+    spectra = [s for s in spectra if s is not None]
+    return spectra
 
 
 @pytest.mark.parametrize("similarity_measure", list(_score_functions.values()))
-def test_all_scores_and_methods(spectrums, similarity_measure):
-    """Compute similarites between all spectrums and compare across different method calls.
+def test_all_scores_and_methods(spectra, similarity_measure):
+    """Compute similarites between all spectra and compare across different method calls.
     .pair() will be compared to .matrix() results
     .matrix() results will be compared to .sparse_array() results
     """
     similarity_measure = similarity_measure[0](**similarity_measure[1])
 
     # Run pair() method
-    computed_scores_pair = np.zeros((len(spectrums), len(spectrums)))
-    for i, spec1 in enumerate(spectrums):
-        for j, spec2 in enumerate(spectrums):
+    computed_scores_pair = np.zeros((len(spectra), len(spectra)))
+    for i, spec1 in enumerate(spectra):
+        for j, spec2 in enumerate(spectra):
             score = similarity_measure.pair(spec1, spec2)
             if isinstance(score, np.ndarray) and score.dtype.names is not None:
                 score = score[score.dtype.names[0]]
             computed_scores_pair[i, j] = score
 
     # Run matrix() method
-    computed_scores_matrix = similarity_measure.matrix(spectrums, spectrums)
+    computed_scores_matrix = similarity_measure.matrix(spectra, spectra)
     if computed_scores_matrix.dtype.names is not None:
         computed_scores_matrix = computed_scores_matrix[computed_scores_matrix.dtype.names[0]]
     assert np.allclose(computed_scores_pair, computed_scores_matrix)
 
     # Run sparse_array() method
     idx_row, idx_col = np.where(computed_scores_matrix)
-    computed_scores_sparse = similarity_measure.sparse_array(spectrums, spectrums,
+    computed_scores_sparse = similarity_measure.sparse_array(spectra, spectra,
                                                              idx_row, idx_col)
     if computed_scores_sparse.dtype.names is None:
         assert np.allclose(computed_scores_sparse, computed_scores_matrix[idx_row, idx_col])
@@ -78,10 +78,10 @@ def test_all_scores_and_methods(spectrums, similarity_measure):
 
 
 @pytest.mark.parametrize("similarity_measure", list(_score_functions.values()))
-def test_consistency_scoring_and_pipeline(spectrums, similarity_measure):
+def test_consistency_scoring_and_pipeline(spectra, similarity_measure):
     scoring_method = similarity_measure[0](**similarity_measure[1])
     # Run matrix() method
-    computed_scores_matrix = scoring_method.matrix(spectrums, spectrums)
+    computed_scores_matrix = scoring_method.matrix(spectra, spectra)
 
     # Run pipeline
     workflow = create_workflow(query_filters=[["add_parent_mass"], ["normalize_intensities"]],
diff --git a/tests/test_utils.py b/tests/test_utils.py
new file mode 100644
index 00000000..3996a6b6
--- /dev/null
+++ b/tests/test_utils.py
@@ -0,0 +1,49 @@
+from warnings import catch_warnings, simplefilter
+from pytest import mark
+from matchms.utils import rename_deprecated_params
+
+
+@mark.filterwarnings("ignore::DeprecationWarning")
+def test_rename_deprecated_params():
+    #pylint: disable=no-value-for-parameter
+    @rename_deprecated_params({"old_param": "new_param"}, version="0.1.0")
+    def example_func(new_param, another_param):
+        return new_param, another_param
+
+    # Test positional arguments
+    result = example_func("some_value", "another_value")
+    assert result == ("some_value", "another_value")
+
+    # Test keyword arguments (old param)
+    result = example_func(old_param="some_value", another_param="another_value")
+    assert result == ("some_value", "another_value")
+
+    # Test keyword arguments (new param)
+    result = example_func(new_param="some_value", another_param="another_value")
+    assert result == ("some_value", "another_value")
+
+    # Test deprecation warnings
+    with catch_warnings(record=True) as w:
+        simplefilter("always")
+        example_func(old_param="some_value", another_param="another_value")
+        assert len(w) == 1
+        assert issubclass(w[-1].category, DeprecationWarning)
+        assert ("Parameter 'old_param' is deprecated and will be removed in the future. Use 'new_param' instead. -- "
+                "Deprecated since version 0.1.0") in str(w[-1].message)
+
+    # Test if old params got removed
+    @rename_deprecated_params({"old": "new"})
+    def test_func(new, another):
+        return new, another
+
+    test_func(old="some_value", another="another_value")
+    assert "old" not in test_func.__code__.co_varnames
+
+
+def test_no_deprecated_params():
+    @rename_deprecated_params({"old": "new"})
+    def test_func(new, another):
+        return new, another
+
+    result = test_func(new="some_value", another="another_value")
+    assert result == ("some_value", "another_value")