diff --git a/neutron/tests/tempest/api/test_auto_allocated_topology.py b/neutron/tests/tempest/api/test_auto_allocated_topology.py
index 2c2dfc6..afdfe8c 100644
--- a/neutron/tests/tempest/api/test_auto_allocated_topology.py
+++ b/neutron/tests/tempest/api/test_auto_allocated_topology.py
@@ -58,9 +58,10 @@
             return len([resource['id'] for resource in resources
                         if resource['name'].startswith('auto_allocated_')])
 
-        networks = _count(self.client.list_networks()['networks'])
-        subnets = _count(self.client.list_subnets()['subnets'])
-        routers = _count(self.client.list_routers()['routers'])
+        up = {'admin_state_up': True}
+        networks = _count(self.client.list_networks(**up)['networks'])
+        subnets = _count(self.client.list_subnets(**up)['subnets'])
+        routers = _count(self.client.list_routers(**up)['routers'])
         return networks, subnets, routers
 
     def _add_topology_cleanup(self, client):
diff --git a/neutron/tests/tempest/api/test_qos.py b/neutron/tests/tempest/api/test_qos.py
index 6c6a95a..313715d 100644
--- a/neutron/tests/tempest/api/test_qos.py
+++ b/neutron/tests/tempest/api/test_qos.py
@@ -737,7 +737,7 @@
         policy_rules = retrieved_policy['policy']['rules']
         self.assertEqual(1, len(policy_rules))
         self.assertEqual(rule['id'], policy_rules[0]['id'])
-        self.assertEqual(qos_consts.RULE_TYPE_DSCP_MARK,
+        self.assertEqual(qos_consts.RULE_TYPE_DSCP_MARKING,
                          policy_rules[0]['type'])
 
     @test.idempotent_id('08553ffe-030f-4037-b486-7e0b8fb9385a')
