diff --git a/doc/requirements.txt b/doc/requirements.txt
new file mode 100644
index 0000000..8d56e6a
--- /dev/null
+++ b/doc/requirements.txt
@@ -0,0 +1,5 @@
+sphinx>=2.0.0,!=2.1.0 # BSD
+openstackdocstheme>=2.2.1 # Apache-2.0
+
+# releasenotes
+reno>=3.1.0 # Apache-2.0
diff --git a/doc/source/conf.py b/doc/source/conf.py
index 1221df1..d5616e7 100755
--- a/doc/source/conf.py
+++ b/doc/source/conf.py
@@ -75,6 +75,6 @@
 #intersphinx_mapping = {'http://docs.python.org/': None}
 
 # openstackdocstheme options
-repository_name = 'openstack/keystone-tempest-plugin'
-bug_project = 'keystone'
-bug_tag = 'docs'
+openstackdocs_repo_name = 'openstack/keystone-tempest-plugin'
+openstackdocs_bug_project = 'keystone'
+openstackdocs_bug_tag = 'docs'
diff --git a/keystone_tempest_plugin/tests/api/identity/v3/test_service_providers.py b/keystone_tempest_plugin/tests/api/identity/v3/test_service_providers.py
index 47a1c09..26110f8 100644
--- a/keystone_tempest_plugin/tests/api/identity/v3/test_service_providers.py
+++ b/keystone_tempest_plugin/tests/api/identity/v3/test_service_providers.py
@@ -48,10 +48,6 @@
                 self.assertEqual(
                     sp_ref['relay_state_prefix'], sp['relay_state_prefix'])
 
-    def _add_cleanup(self, sp_id):
-        self.addCleanup(
-            self.sps_client.delete_service_provider, sp_id)
-
     def _create_sp(self, sp_id, sp_ref):
         sp = self.sps_client.create_service_provider(
             sp_id, **sp_ref)['service_provider']
diff --git a/keystone_tempest_plugin/tests/scenario/test_federated_authentication.py b/keystone_tempest_plugin/tests/scenario/test_federated_authentication.py
index b152116..6853ab2 100644
--- a/keystone_tempest_plugin/tests/scenario/test_federated_authentication.py
+++ b/keystone_tempest_plugin/tests/scenario/test_federated_authentication.py
@@ -222,10 +222,17 @@
     def setUp(self):
         super(TestK2KFederatedAuthentication, self).setUp()
         self._setup_sp()
-        user_id = self.keystone_manager.identity_providers_client.user_id
+        self.auth = {'password': data_utils.rand_password()}
+        user_id = self.keystone_manager.users_v3_client.create_user(
+            name=data_utils.rand_name('user'),
+            password=self.auth['password'])['user']['id']
+        self.addCleanup(
+            self.keystone_manager.users_v3_client.delete_user, user_id)
+        self.auth['user_id'] = user_id
         idp_info = self.idps_client.show_identity_provider(self.idp_id)
         domain_id = idp_info['identity_provider']['domain_id']
         project_id = self.keystone_manager.identity_providers_client.tenant_id
+        self.auth['project_id'] = project_id
         group = self.keystone_manager.groups_client.create_group(
             name=data_utils.rand_uuid_hex(), domain_id=domain_id)
         role = self.keystone_manager.roles_v3_client.create_role(
@@ -295,12 +302,16 @@
         self.addCleanup(self.sps_client.delete_service_provider, self.sp_id)
 
     def _get_sp_authn_request(self):
+        token = self.tokens_client.get_token(
+            user_id=self.auth['user_id'],
+            password=self.auth['password'],
+            project_id=self.auth['project_id'])
         body = {
             'auth': {
                 'identity': {
                     'methods': ['token'],
                     'token': {
-                        'id': self.auth_client.token
+                        'id': token
                     }
                 },
                 'scope': {
diff --git a/releasenotes/source/conf.py b/releasenotes/source/conf.py
index 215098f..d7ff864 100644
--- a/releasenotes/source/conf.py
+++ b/releasenotes/source/conf.py
@@ -147,10 +147,6 @@
 # directly to the root of the documentation.
 # html_extra_path = []
 
-# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
-# using the given strftime format.
-# html_last_updated_fmt = '%b %d, %Y'
-
 # If true, SmartyPants will be used to convert quotes and dashes to
 # typographically correct entities.
 # html_use_smartypants = True
@@ -275,6 +271,7 @@
 locale_dirs = ['locale/']
 
 # openstackdocstheme options
-repository_name = 'openstack/keystone-tempest-plugin'
-bug_project = 'keystone'
-bug_tag = 'releasenotes'
+openstackdocs_repo_name = 'openstack/keystone-tempest-plugin'
+openstackdocs_bug_project = 'keystone'
+openstackdocs_bug_tag = 'releasenotes'
+openstackdocs_auto_name = False
diff --git a/setup.cfg b/setup.cfg
index 82246c6..58f75a1 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -21,29 +21,6 @@
 packages =
     keystone_tempest_plugin
 
-[build_sphinx]
-all-files = 1
-warning-is-error = 1
-source-dir = doc/source
-build-dir = doc/build
-
-[upload_sphinx]
-upload-dir = doc/build/html
-
-[compile_catalog]
-directory = keystone_tempest_plugin/locale
-domain = keystone_tempest_plugin
-
-[update_catalog]
-domain = keystone_tempest_plugin
-output_dir = keystone_tempest_plugin/locale
-input_file = keystone_tempest_plugin/locale/keystone_tempest_plugin.pot
-
-[extract_messages]
-keywords = _ gettext ngettext l_ lazy_gettext
-mapping_file = babel.cfg
-output_file = keystone_tempest_plugin/locale/keystone_tempest_plugin.pot
-
 [entry_points]
 tempest.test_plugins =
     keystone_tests = keystone_tempest_plugin.plugin:KeystoneTempestPlugin
diff --git a/test-requirements.txt b/test-requirements.txt
index 16165e0..9c7d865 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -3,9 +3,3 @@
 # process, which may cause wedges in the gate later.
 
 hacking>=3.0,<3.1.0;python_version>='3.5' # Apache-2.0
-
-sphinx!=1.6.6,!=1.6.7,>=1.6.2  # BSD
-openstackdocstheme>=1.18.1 # Apache-2.0
-
-# releasenotes
-reno>=2.5.0 # Apache-2.0
diff --git a/tox.ini b/tox.ini
index ecc7ddf..8b4a058 100644
--- a/tox.ini
+++ b/tox.ini
@@ -6,11 +6,12 @@
 
 [testenv]
 usedevelop = True
-install_command = pip install -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} {opts} {packages}
 setenv =
    VIRTUAL_ENV={envdir}
    PYTHONWARNINGS=default::DeprecationWarning
-deps = -r{toxinidir}/test-requirements.txt
+deps =
+  -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
+  -r{toxinidir}/test-requirements.txt
 commands = python setup.py test --slowest --testr-args='{posargs}'
 basepython = python3
 
@@ -24,9 +25,13 @@
 commands = python setup.py test --coverage --testr-args='{posargs}'
 
 [testenv:docs]
+deps =
+  -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
+  -r{toxinidir}/doc/requirements.txt
 commands = sphinx-build -W -b html -d doc/buld/doctrees doc/source doc/build/html
 
 [testenv:releasenotes]
+deps = {[testenv:docs]deps}
 commands =
   sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
 
