diff --git a/include/caosdb/exceptions.h b/include/caosdb/exceptions.h
index 304216679200329660c5068362fa9e089f089235..415d0722580e1199f014358f524caf75f9d68b32 100644
--- a/include/caosdb/exceptions.h
+++ b/include/caosdb/exceptions.h
@@ -101,12 +101,12 @@ public:
 };
 
 /**
- * @brief The connection isn't known to the ConnectionManager under this name.
+ * @brief Exception for errors during the configuration of the connection.
  */
-class UnknownConnectionError : public Exception {
+class ConnectionConfigurationError : public Exception {
 public:
-  explicit UnknownConnectionError(const std::string &what_arg)
-    : Exception(StatusCode::UNKNOWN_CONNECTION_ERROR, what_arg) {}
+  explicit ConnectionConfigurationError(const std::string &what_arg)
+    : Exception(StatusCode::CONNECTION_CONFIGURATION_ERROR, what_arg) {}
 };
 
 } // namespace caosdb::exceptions
diff --git a/include/caosdb/logging.h b/include/caosdb/logging.h
index 7b5a605044521ba33ab1327e96889be3aef6345e..0fa4da51c5de7727e8d882d9679b04a4d1bdaa38 100644
--- a/include/caosdb/logging.h
+++ b/include/caosdb/logging.h
@@ -39,24 +39,24 @@ const std::string logger_name = "caosdb::logging";
 
 typedef boost::log::sources::severity_channel_logger_mt<int, std::string> boost_logger_class;
 
-class _logger {
+class logger {
 public:
-  static boost_logger_class &get() { return *_logger::GetInstance()._logger_instance; }
+  static boost_logger_class &get() { return *logger::GetInstance()._logger_instance; }
   static void destroy() {
-    auto &instance = _logger::GetInstance();
+    auto &instance = logger::GetInstance();
     delete instance._logger_instance;
   }
 
 private:
-  _logger() { this->_logger_instance = new boost_logger_class(); };
-  static _logger &GetInstance() {
-    static _logger instance;
+  logger() { this->_logger_instance = new boost_logger_class(); };
+  static logger &GetInstance() {
+    static logger instance;
     return instance;
   }
   boost_logger_class *_logger_instance;
 };
 
-auto inline get_logger() -> boost_logger_class & { return _logger::get(); }
+auto inline get_logger() -> boost_logger_class & { return logger::get(); }
 
 /**
  * This class stores the integer log level.
diff --git a/include/caosdb/status_code.h b/include/caosdb/status_code.h
index e458b1727af51720451cbc057d4e40cee35a4a4e..e1a382191b5bd4559c554e2fc3e084103c27c3cc 100644
--- a/include/caosdb/status_code.h
+++ b/include/caosdb/status_code.h
@@ -62,7 +62,7 @@ enum StatusCode {
   GENERIC_ERROR = 21,
   GENERIC_TRANSACTION_ERROR = 22,
   CONFIGURATION_ERROR = 23,
-  UNKNOWN_CONNECTION_ERROR = 24,
+  CONNECTION_CONFIGURATION_ERROR = 24,
   TRANSACTION_STATUS_ERROR = 25,
   TRANSACTION_TYPE_ERROR = 26,
   UNSUPPORTED_FEATURE = 27,
diff --git a/src/caosdb/connection.cpp b/src/caosdb/connection.cpp
index 8420d8ffe6459f3431ead22ab660ab6fcd6a50f3..fcf4b119f5dcf4dacf268fd3d6c19f9b036b93fe 100644
--- a/src/caosdb/connection.cpp
+++ b/src/caosdb/connection.cpp
@@ -113,8 +113,8 @@ auto ConnectionManager::mGetConnection(const std::string &name) const
       auto connection = ConfigurationManager::GetConnectionConfiguration(name);
       connections[name] = std::make_shared<Connection>(*connection.release());
     } catch (const caosdb::exceptions::ConfigurationError &exc) {
-      throw caosdb::exceptions::UnknownConnectionError("No connection named '" + name +
-                                                       "' present.");
+      throw caosdb::exceptions::ConnectionConfigurationError("Error with the connection named '" +
+                                                             name + "': " + exc.what());
     }
   }
   return this->connections.at(name);
diff --git a/src/caosdb/logging.cpp b/src/caosdb/logging.cpp
index 906bd7989d3b7b80ea4159bab1ae577c022abfe3..c684862d17291c328e3a8d7856b82df1eb507001 100644
--- a/src/caosdb/logging.cpp
+++ b/src/caosdb/logging.cpp
@@ -45,13 +45,11 @@
 #include <vector>
 
 void __attribute__((constructor)) startup() {
-  std::cout << "LOADING CAOSDB 1" << std::endl;
-  boost::log::core::get()->set_logging_enabled(false);
-  std::cout << "LOADING CAOSDB 2" << std::endl;
+  std::cout << "LOADING CAOSDB" << std::endl;
 }
 void __attribute__((destructor)) shutdown() {
-  std::cout << "UNLOADING CAOSDB 1" << std::endl;
-  caosdb::logging::_logger::destroy();
+  std::cout << "UNLOADING CAOSDB" << std::endl;
+  caosdb::logging::logger::destroy();
 }
 
 namespace caosdb::logging {
diff --git a/src/caosdb/status_code_description.cpp b/src/caosdb/status_code_description.cpp
index d5e08e7820ca0f7380723087570f838465a9c261..5823943cfd7f79416cabb61662f778bac5de9bf8 100644
--- a/src/caosdb/status_code_description.cpp
+++ b/src/caosdb/status_code_description.cpp
@@ -131,8 +131,9 @@ auto get_status_description(int code) -> const std::string & {
      "The transaction terminated unsuccessfully with transaction errors."},
     {StatusCode::CONFIGURATION_ERROR,
      "An error occurred during the configuration of the ConfigurationManager."},
-    {StatusCode::UNKNOWN_CONNECTION_ERROR,
-     "The ConnectionManager does not know any connection of this name."},
+    {StatusCode::CONNECTION_CONFIGURATION_ERROR,
+     "Wither there is no connection of the given name or the given connection has a faulty "
+     "configuration"},
     {StatusCode::TRANSACTION_STATUS_ERROR,
      "The Transaction is in a wrong state for the attempted action."},
     {StatusCode::TRANSACTION_TYPE_ERROR,
diff --git a/test/test_connection.cpp b/test/test_connection.cpp
index 97a86df3938fd047161523e36470f90fa5f7248f..00c3bcf58e605e112a404fdfe6ece62e829562ea 100644
--- a/test/test_connection.cpp
+++ b/test/test_connection.cpp
@@ -22,7 +22,7 @@
 #include "caosdb/certificate_provider.h" // for PemCertificateProvider
 #include "caosdb/configuration.h"        // for InsecureConnectionConfigura...
 #include "caosdb/connection.h"           // for ConnectionManager
-#include "caosdb/exceptions.h"           // for UnknownConnectionError
+#include "caosdb/exceptions.h"           // for ConnectionConfigurationError
 #include "caosdb_test_utility.h"         // for EXPECT_THROW_MESSAGE, TEST_...
 #include <gtest/gtest-message.h>         // for Message
 #include <gtest/gtest-test-part.h>       // for SuiteApiResolver, TestPartR...
@@ -65,9 +65,16 @@ TEST_F(test_connection, configure_ssl_localhost_8080) {
 }
 
 TEST_F(test_connection, connection_manager_unknown_connection) {
-  EXPECT_THROW_MESSAGE(ConnectionManager::GetConnection("test"),
-                       caosdb::exceptions::UnknownConnectionError,
-                       "No connection named 'test' present.");
+  EXPECT_THROW_MESSAGE(
+    ConnectionManager::GetConnection("test"), caosdb::exceptions::ConnectionConfigurationError,
+    "Error with the connection named 'test': The connection 'test' has not been defined.");
+}
+
+TEST_F(test_connection, connection_missing_certificate) {
+  EXPECT_THROW_MESSAGE(ConnectionManager::GetConnection("missing"),
+                       caosdb::exceptions::ConnectionConfigurationError,
+                       std::string("Error with the connection named 'missing': ") +
+                         "File does not exist (server_certificate_path): /missing");
 }
 
 TEST_F(test_connection, connection_manager_get_default_connection) {
diff --git a/test/test_data/test_caosdb_client.json b/test/test_data/test_caosdb_client.json
index 2007413021b332c3bd32686363e241804a8d62ab..276c542f75353090b28918ab0ef9b33f9f0815e1 100644
--- a/test/test_data/test_caosdb_client.json
+++ b/test/test_data/test_caosdb_client.json
@@ -13,6 +13,16 @@
     "local-caosdb": {
       "host": "localhost",
       "port": 8443,
+      "authentication": {
+        "type": "plain",
+        "username": "me",
+          "password": "secret!"
+      }
+    },
+    "missing": {
+      "host": "localhost",
+      "port": 8443,
+      "server_certificate_path": "/missing",
       "authentication": {
         "type": "plain",
         "username": "me",
diff --git a/test/test_misc.cpp b/test/test_misc.cpp
deleted file mode 100644
index dccaaa817a8a926772502723a231f379d04764dc..0000000000000000000000000000000000000000
--- a/test/test_misc.cpp
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- *
- * This file is a part of the CaosDB Project.
- *
- * Copyright (C) 2021 Timm Fitschen <t.fitschen@indiscale.com>
- * Copyright (C) 2021 IndiScale GmbH <info@indiscale.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <https://www.gnu.org/licenses/>.
- *
- */
-#include <gtest/gtest-message.h>   // for Message
-#include <gtest/gtest-test-part.h> // for SuiteApiResolver, TestFactoryImpl
-#include <gtest/gtest_pred_impl.h> // for Test, TestInfo, EXPECT_EQ, TEST
-#include <iostream>                // for cout, <<
-#include <string>                  // for string
-#include <utility>                 // for move
-
-namespace caosdb {
-
-class TestClass {
-public:
-  ~TestClass() = default;
-  TestClass(TestClass &&other) = default;
-  TestClass(const TestClass &other);
-  TestClass();
-  explicit TestClass(std::string member);
-
-  auto operator=(const TestClass &other) -> TestClass &;
-  auto operator=(TestClass &&other) -> TestClass & = default;
-
-  [[nodiscard]] auto ToString() const -> std::string;
-  std::string member;
-};
-
-TestClass::TestClass() { std::cout << "Constructor TestClass(): " << ToString() << "\n"; }
-
-TestClass::TestClass(std::string member) : member(std::move(member)) {
-  std::cout << "Constructor TestClass(const std:string &): " << ToString() << "\n";
-}
-
-TestClass::TestClass(const TestClass &other) : member(other.member) {
-  std::cout << "Copy Constructor TestClass(const TestClass &): " << ToString() << "\n";
-}
-
-auto TestClass::operator=(const TestClass &other) -> TestClass & {
-  std::cout << "Copy assignment (" << ToString() << "->";
-  if (this != &other) {
-    this->member = other.member;
-  }
-  std::cout << ToString() << ")\n";
-  return *this;
-}
-
-auto TestClass::ToString() const -> std::string { return "TestClass(" + member + ")"; }
-
-TEST(test_misc, test_move) {
-  TestClass test_class1;
-  std::cout << "test_class1: " << test_class1.ToString() << "\n";
-
-  TestClass test_class2 = test_class1;
-  std::cout << "test_class2: " << test_class2.ToString() << "\n";
-
-  const TestClass test_class3("member3");
-  std::cout << "test_class3: " << test_class3.ToString() << "\n";
-
-  TestClass test_class4 = test_class3;
-  std::cout << "test_class4: " << test_class4.ToString() << "\n";
-}
-
-} // namespace caosdb