Optimize the execution time of karbor fullstack tests

Now the fullstack tests of karbor take too much time, this patch reduce
some repetitive actually resources(server, volume) backup and restore
tests.

Change-Id: Iaa38ff72d8d5acc7ee2ba10da23b8514278c70ff
This commit is contained in:
chenying 2017-08-10 17:48:08 +08:00
parent d87baa3063
commit 0677ee1294
5 changed files with 17 additions and 24 deletions

View File

@ -11,6 +11,8 @@
# under the License.
from functools import partial
from oslo_utils import uuidutils
from karbor.common import constants
from karbor.tests.fullstack import karbor_base as base
from karbor.tests.fullstack import utils
@ -423,7 +425,7 @@ class Network(object):
super(Network, self).__init__()
self.id = None
self.project_id = None
self._name = "private-net"
self._name = "private-net-%s" % uuidutils.generate_uuid()
self.neutron_client = base._get_neutron_client()
def _network_status(self, status=None):

View File

@ -72,12 +72,12 @@ class CheckpointsTest(karbor_base.KarborBaseTest):
volume = self.store(objects.Volume())
volume.create(1)
plan = self.store(objects.Plan())
plan.create(self.provider_id, [volume, ])
plan.create(self.provider_id_noop, [volume, ])
checkpoint = self.store(objects.Checkpoint())
checkpoint.create(self.provider_id, plan.id, timeout=2400)
checkpoint.create(self.provider_id_noop, plan.id, timeout=2400)
items = self.karbor_client.checkpoints.list(self.provider_id)
items = self.karbor_client.checkpoints.list(self.provider_id_noop)
ids = [item.id for item in items]
self.assertTrue(checkpoint.id in ids)
@ -110,18 +110,14 @@ class CheckpointsTest(karbor_base.KarborBaseTest):
server.attach_volume(volume.id)
plan = self.store(objects.Plan())
plan.create(self.provider_id, [server, ])
plan.create(self.provider_id_noop, [server, ])
checkpoint = self.store(objects.Checkpoint())
checkpoint.create(self.provider_id, plan.id, timeout=2400)
checkpoint.create(self.provider_id_noop, plan.id, timeout=2400)
items = self.karbor_client.checkpoints.list(self.provider_id)
items = self.karbor_client.checkpoints.list(self.provider_id_noop)
ids = [item.id for item in items]
self.assertTrue(checkpoint.id in ids)
search_opts = {"volume_id": volume.id}
backups = self.cinder_client.backups.list(search_opts=search_opts)
self.assertEqual(1, len(backups))
server.detach_volume(volume.id)
def test_server_attached_volume_protect_both(self):
"""Test checkpoint for server with attached volume
@ -136,18 +132,14 @@ class CheckpointsTest(karbor_base.KarborBaseTest):
server.attach_volume(volume.id)
plan = self.store(objects.Plan())
plan.create(self.provider_id, [server, volume])
plan.create(self.provider_id_noop, [server, volume])
checkpoint = self.store(objects.Checkpoint())
checkpoint.create(self.provider_id, plan.id, timeout=2400)
checkpoint.create(self.provider_id_noop, plan.id, timeout=2400)
items = self.karbor_client.checkpoints.list(self.provider_id)
items = self.karbor_client.checkpoints.list(self.provider_id_noop)
ids = [item.id for item in items]
self.assertTrue(checkpoint.id in ids)
search_opts = {"volume_id": volume.id}
backups = self.cinder_client.backups.list(search_opts=search_opts)
self.assertEqual(1, len(backups))
server.detach_volume(volume.id)
def test_server_boot_from_volume_with_attached_volume(self):
"""Test checkpoint for server with a bootable volume

View File

@ -88,6 +88,7 @@ class ProtectablesTest(karbor_base.KarborBaseTest):
ins_res.dependent_resources[0]["id"])
def test_share_protectables_list_instances(self):
self.skipTest('Waiting new manilaclient being merged.')
res_list = self.karbor_client.protectables.list_instances(
'OS::Manila::Share')
before_num = len(res_list)

View File

@ -193,17 +193,15 @@ class RestoresTest(karbor_base.KarborBaseTest):
volume = self.store(objects.Volume())
volume.create(1)
plan = self.store(objects.Plan())
plan.create(self.provider_id_fs_bank, [volume, ])
plan.create(self.provider_id_noop, [volume, ])
checkpoint = self.store(objects.Checkpoint())
checkpoint.create(self.provider_id_fs_bank, plan.id)
checkpoint.create(self.provider_id_noop, plan.id)
restore_target = self.get_restore_target(self.keystone_endpoint)
restore = self.store(objects.Restore())
restore.create(self.provider_id_fs_bank, checkpoint.id,
restore.create(self.provider_id_noop, checkpoint.id,
restore_target, self.parameters, self.restore_auth)
item = self.karbor_client.restores.get(restore.id)
self.assertEqual(constants.RESTORE_STATUS_SUCCESS,
item.status)
self.assertEqual(1, len(item.resources_status))
self._store(item.resources_status)

View File

@ -21,7 +21,7 @@ setenv = OS_TEST_PATH=./karbor/tests/fullstack
OS_TEST_TIMEOUT=3600
commands =
oslo-config-generator --config-file etc/oslo-config-generator/karbor.conf --output-file etc/karbor.conf
python setup.py test --slowest --testr-args="--concurrency=2 {posargs}"
python setup.py test --slowest --testr-args="--concurrency=4 {posargs}"
[testenv:pep8]
commands = flake8