Repository: Qiskit/qiskit

Issue:
Incorrect Properties in FakeBackends
<!-- ⚠️ If you do not respect this template, your issue will be closed -->
<!-- ⚠️ Make sure to browse the opened and closed issues -->

### Information

- **Qiskit Terra version**: 0.11.1
- **Python version**: 3.6
- **Operating system**: Windows 10

### What is the current behavior?

All u2 and u3 gates in FakeYorktown have an error rate of 1.0 or 2.0. This leads to a complete depolarizing channel when used in basic_device_noise_model.

FakeTokyo has error rates for some cx gate, that are not defined in the coupling map (and vice versa).

FakeRueschlikon has no property file.
### Steps to reproduce the problem

Simulate with basic_device_noise_model() or have a look at the .json files in https://github.com/Qiskit/qiskit-terra/blob/master/qiskit/test/mock/backends


### What is the expected behavior?

FakeYorktown should not define a complete depolarization after each single-qubit gate. FakeTokyo should have missing cx gates and cx error rates added to the coupling map/property file and/or unused cx gates should be consistently removed from the .json file. FakeRueschlikon should have a property file.

### Suggested solutions

Regenerate the .json files.

For FakeYorktown, I assume either an unit error (0.0002 becoming 2.0 or similar) or a snapshot of an incorrect calibration. FakeTokyo might have been build from different snapshots for the coupling map and the gate errors, thereby setting error rates for cx gates that are not defined in the coupling map and setting cx gates in the coupling map that have no error rate set.

As a side note, historical calibration data for FakeBackends would be nice. :-)



Discussion:
> As a side note, historical calibration data for FakeBackends would be nice. :-)

How do you image this? Something like `FakeBackendMay2019`? In a different attribute?
I was thinking about something similar to https://github.com/luisg5/qiskit-ibmq-provider/blob/4e85e660ed3fb869b08242cc803bb5c7d4e10910/qiskit/providers/ibmq/api_v2/rest/backend.py#L40 where a datetime object can be passed to the properties function to filter the returned property data.

I see two options how this can be implemented for fake backends:
- A pair of {calibration date : backend property} could be a top-level object of the fake backend's property file that can be selected by passing a datetime object to the properties function
- Multiple JSON files could be created that each store the properties of a backend during a certain day. Passing a datetime object to the properties function selects one of the files.

One challenge is to get the historical property data in the first place. Should it be randomly generated or dumped from IBM Q backends?

Resolving patch:
diff --git a/qiskit/qobj/qasm_qobj.py b/qiskit/qobj/qasm_qobj.py
--- a/qiskit/qobj/qasm_qobj.py
+++ b/qiskit/qobj/qasm_qobj.py
@@ -363,6 +363,8 @@ def __init__(self, qobj_id=None, config=None, experiments=None,
         self.config = config or QasmQobjConfig()
         self.experiments = experiments or []
         self.qobj_id = qobj_id
+        self.type = 'QASM'
+        self.schema_version = '1.1.0'
 
     def to_dict(self, validate=False):
         """Return a dictionary format representation of the QASM Qobj.


Test patch:
diff --git a/qiskit/test/mock/backends/yorktown/props_yorktown.json b/qiskit/test/mock/backends/yorktown/props_yorktown.json
--- a/qiskit/test/mock/backends/yorktown/props_yorktown.json
+++ b/qiskit/test/mock/backends/yorktown/props_yorktown.json
@@ -1 +1 @@
-{"backend_version": "1.3.0", "general": [], "last_update_date": "2019-08-27T12:08:17+00:00", "backend_name": "ibmqx2", "qubits": [[{"date": "2019-08-27T02:57:11+00:00", "unit": "\u00b5s", "value": 46.56742052080564, "name": "T1"}, {"date": "2019-08-27T02:58:08+00:00", "unit": "\u00b5s", "value": 50.82263137546248, "name": "T2"}, {"date": "2019-08-27T12:08:17+00:00", "unit": "GHz", "value": 5.286307493964072, "name": "frequency"}, {"date": "2019-08-27T02:56:36+00:00", "unit": "", "value": 0.08645000000000003, "name": "readout_error"}, {"date": "2019-08-27T02:56:36+00:00", "unit": "", "value": 0.10880000000000001, "name": "prob_meas0_prep1"}, {"date": "2019-08-27T02:56:36+00:00", "unit": "", "value": 0.0641, "name": "prob_meas1_prep0"}], [{"date": "2019-08-27T02:57:11+00:00", "unit": "\u00b5s", "value": 55.96928837701522, "name": "T1"}, {"date": "2019-08-27T02:58:58+00:00", "unit": "\u00b5s", "value": 45.63271590635976, "name": "T2"}, {"date": "2019-08-27T12:08:17+00:00", "unit": "GHz", "value": 5.2378526142870685, "name": "frequency"}, {"date": "2019-08-27T02:56:36+00:00", "unit": "", "value": 0.04149999999999998, "name": "readout_error"}, {"date": "2019-08-27T02:56:36+00:00", "unit": "", "value": 0.0507, "name": "prob_meas0_prep1"}, {"date": "2019-08-27T02:56:36+00:00", "unit": "", "value": 0.032299999999999995, "name": "prob_meas1_prep0"}], [{"date": "2019-08-27T02:57:11+00:00", "unit": "\u00b5s", "value": 59.099655054478355, "name": "T1"}, {"date": "2019-08-27T02:59:49+00:00", "unit": "\u00b5s", "value": 63.66658719729211, "name": "T2"}, {"date": "2019-08-27T12:08:17+00:00", "unit": "GHz", "value": 5.030295621586882, "name": "frequency"}, {"date": "2019-08-27T02:56:36+00:00", "unit": "", "value": 0.026899999999999924, "name": "readout_error"}, {"date": "2019-08-27T02:56:36+00:00", "unit": "", "value": 0.048699999999999966, "name": "prob_meas0_prep1"}, {"date": "2019-08-27T02:56:36+00:00", "unit": "", "value": 0.0051, "name": "prob_meas1_prep0"}], [{"date": "2019-08-27T02:57:11+00:00", "unit": "\u00b5s", "value": 54.40840937009215, "name": "T1"}, {"date": "2019-08-27T02:58:08+00:00", "unit": "\u00b5s", "value": 27.92450139381814, "name": "T2"}, {"date": "2019-08-27T12:08:17+00:00", "unit": "GHz", "value": 5.296073260464525, "name": "frequency"}, {"date": "2019-08-27T02:56:36+00:00", "unit": "", "value": 0.06600000000000006, "name": "readout_error"}, {"date": "2019-08-27T02:56:36+00:00", "unit": "", "value": 0.09289999999999998, "name": "prob_meas0_prep1"}, {"date": "2019-08-27T02:56:36+00:00", "unit": "", "value": 0.0391, "name": "prob_meas1_prep0"}], [{"date": "2019-08-27T02:57:11+00:00", "unit": "\u00b5s", "value": 42.28189300974562, "name": "T1"}, {"date": "2019-08-27T02:58:58+00:00", "unit": "\u00b5s", "value": 40.179343798188306, "name": "T2"}, {"date": "2019-08-27T12:08:17+00:00", "unit": "GHz", "value": 5.084664672299471, "name": "frequency"}, {"date": "2019-08-27T02:56:36+00:00", "unit": "", "value": 0.03695000000000004, "name": "readout_error"}, {"date": "2019-08-27T02:56:36+00:00", "unit": "", "value": 0.0531, "name": "prob_meas0_prep1"}, {"date": "2019-08-27T02:56:36+00:00", "unit": "", "value": 0.02080000000000004, "name": "prob_meas1_prep0"}]], "gates": [{"parameters": [{"date": "2019-08-27T12:08:17+00:00", "unit": "", "value": 1.0, "name": "gate_error"}, {"date": "2019-08-27T12:08:17+00:00", "unit": "ns", "value": 158.33333333333334, "name": "gate_length"}], "qubits": [0], "gate": "id", "name": "id_0"}, {"parameters": [{"date": "2019-08-27T12:08:17+00:00", "unit": "", "value": 0.0, "name": "gate_error"}, {"date": "2019-08-27T12:08:17+00:00", "unit": "ns", "value": 0.0, "name": "gate_length"}], "qubits": [0], "gate": "u1", "name": "u1_0"}, {"parameters": [{"date": "2019-08-27T12:08:17+00:00", "unit": "", "value": 1.0, "name": "gate_error"}, {"date": "2019-08-27T12:08:17+00:00", "unit": "ns", "value": 158.33333333333334, "name": "gate_length"}], "qubits": [0], "gate": "u2", "name": "u2_0"}, {"parameters": [{"date": "2019-08-27T12:08:17+00:00", "unit": "", "value": 2.0, "name": "gate_error"}, {"date": "2019-08-27T12:08:17+00:00", "unit": "ns", "value": 316.6666666666667, "name": "gate_length"}], "qubits": [0], "gate": "u3", "name": "u3_0"}, {"parameters": [{"date": "2019-08-27T12:08:17+00:00", "unit": "", "value": 1.0, "name": "gate_error"}, {"date": "2019-08-27T12:08:17+00:00", "unit": "ns", "value": 158.33333333333334, "name": "gate_length"}], "qubits": [1], "gate": "id", "name": "id_1"}, {"parameters": [{"date": "2019-08-27T12:08:17+00:00", "unit": "", "value": 0.0, "name": "gate_error"}, {"date": "2019-08-27T12:08:17+00:00", "unit": "ns", "value": 0.0, "name": "gate_length"}], "qubits": [1], "gate": "u1", "name": "u1_1"}, {"parameters": [{"date": "2019-08-27T12:08:17+00:00", "unit": "", "value": 1.0, "name": "gate_error"}, {"date": "2019-08-27T12:08:17+00:00", "unit": "ns", "value": 158.33333333333334, "name": "gate_length"}], "qubits": [1], "gate": "u2", "name": "u2_1"}, {"parameters": [{"date": "2019-08-27T12:08:17+00:00", "unit": "", "value": 2.0, "name": "gate_error"}, {"date": "2019-08-27T12:08:17+00:00", "unit": "ns", "value": 316.6666666666667, "name": "gate_length"}], "qubits": [1], "gate": "u3", "name": "u3_1"}, {"parameters": [{"date": "2019-08-27T12:08:17+00:00", "unit": "", "value": 1.0, "name": "gate_error"}, {"date": "2019-08-27T12:08:17+00:00", "unit": "ns", "value": 158.33333333333334, "name": "gate_length"}], "qubits": [2], "gate": "id", "name": "id_2"}, {"parameters": [{"date": "2019-08-27T12:08:17+00:00", "unit": "", "value": 0.0, "name": "gate_error"}, {"date": "2019-08-27T12:08:17+00:00", "unit": "ns", "value": 0.0, "name": "gate_length"}], "qubits": [2], "gate": "u1", "name": "u1_2"}, {"parameters": [{"date": "2019-08-27T12:08:17+00:00", "unit": "", "value": 1.0, "name": "gate_error"}, {"date": "2019-08-27T12:08:17+00:00", "unit": "ns", "value": 158.33333333333334, "name": "gate_length"}], "qubits": [2], "gate": "u2", "name": "u2_2"}, {"parameters": [{"date": "2019-08-27T12:08:17+00:00", "unit": "", "value": 2.0, "name": "gate_error"}, {"date": "2019-08-27T12:08:17+00:00", "unit": "ns", "value": 316.6666666666667, "name": "gate_length"}], "qubits": [2], "gate": "u3", "name": "u3_2"}, {"parameters": [{"date": "2019-08-27T12:08:17+00:00", "unit": "", "value": 1.0, "name": "gate_error"}, {"date": "2019-08-27T12:08:17+00:00", "unit": "ns", "value": 158.33333333333334, "name": "gate_length"}], "qubits": [3], "gate": "id", "name": "id_3"}, {"parameters": [{"date": "2019-08-27T12:08:17+00:00", "unit": "", "value": 0.0, "name": "gate_error"}, {"date": "2019-08-27T12:08:17+00:00", "unit": "ns", "value": 0.0, "name": "gate_length"}], "qubits": [3], "gate": "u1", "name": "u1_3"}, {"parameters": [{"date": "2019-08-27T12:08:17+00:00", "unit": "", "value": 1.0, "name": "gate_error"}, {"date": "2019-08-27T12:08:17+00:00", "unit": "ns", "value": 158.33333333333334, "name": "gate_length"}], "qubits": [3], "gate": "u2", "name": "u2_3"}, {"parameters": [{"date": "2019-08-27T12:08:17+00:00", "unit": "", "value": 2.0, "name": "gate_error"}, {"date": "2019-08-27T12:08:17+00:00", "unit": "ns", "value": 316.6666666666667, "name": "gate_length"}], "qubits": [3], "gate": "u3", "name": "u3_3"}, {"parameters": [{"date": "2019-08-27T12:08:17+00:00", "unit": "", "value": 1.0, "name": "gate_error"}, {"date": "2019-08-27T12:08:17+00:00", "unit": "ns", "value": 158.33333333333334, "name": "gate_length"}], "qubits": [4], "gate": "id", "name": "id_4"}, {"parameters": [{"date": "2019-08-27T12:08:17+00:00", "unit": "", "value": 0.0, "name": "gate_error"}, {"date": "2019-08-27T12:08:17+00:00", "unit": "ns", "value": 0.0, "name": "gate_length"}], "qubits": [4], "gate": "u1", "name": "u1_4"}, {"parameters": [{"date": "2019-08-27T12:08:17+00:00", "unit": "", "value": 1.0, "name": "gate_error"}, {"date": "2019-08-27T12:08:17+00:00", "unit": "ns", "value": 158.33333333333334, "name": "gate_length"}], "qubits": [4], "gate": "u2", "name": "u2_4"}, {"parameters": [{"date": "2019-08-27T12:08:17+00:00", "unit": "", "value": 2.0, "name": "gate_error"}, {"date": "2019-08-27T12:08:17+00:00", "unit": "ns", "value": 316.6666666666667, "name": "gate_length"}], "qubits": [4], "gate": "u3", "name": "u3_4"}, {"parameters": [{"date": "2019-08-27T01:56:10+00:00", "unit": "", "value": 0.034110782443154825, "name": "gate_error"}], "qubits": [0, 1], "gate": "cx", "name": "cx0_1"}, {"parameters": [{"date": "2019-08-27T03:09:58+00:00", "unit": "", "value": 0.03999613656912579, "name": "gate_error"}], "qubits": [0, 2], "gate": "cx", "name": "cx0_2"}, {"parameters": [{"date": "2019-08-27T03:15:02+00:00", "unit": "", "value": 0.031773117339429696, "name": "gate_error"}], "qubits": [1, 2], "gate": "cx", "name": "cx1_2"}, {"parameters": [{"date": "2019-08-27T03:19:43+00:00", "unit": "", "value": 0.07365076080227159, "name": "gate_error"}], "qubits": [3, 2], "gate": "cx", "name": "cx3_2"}, {"parameters": [{"date": "2019-08-27T03:24:24+00:00", "unit": "", "value": 0.03732767086325206, "name": "gate_error"}], "qubits": [3, 4], "gate": "cx", "name": "cx3_4"}, {"parameters": [{"date": "2019-08-27T03:29:45+00:00", "unit": "", "value": 0.03699218435586163, "name": "gate_error"}], "qubits": [4, 2], "gate": "cx", "name": "cx4_2"}]}
\ No newline at end of file
+{"backend_version": "2.0.5", "last_update_date": "2020-03-25T09:32:38+00:00", "backend_name": "ibmqx2", "qubits": [[{"value": 77.10561145239281, "unit": "\u00b5s", "date": "2020-03-25T08:47:19+00:00", "name": "T1"}, {"value": 86.93145142225404, "unit": "\u00b5s", "date": "2020-03-25T08:49:38+00:00", "name": "T2"}, {"value": 5.2864124379834925, "unit": "GHz", "date": "2020-03-25T09:32:38+00:00", "name": "frequency"}, {"value": 0.011500000000000066, "unit": "", "date": "2020-03-25T08:45:45+00:00", "name": "readout_error"}, {"value": 0.014000000000000012, "unit": "", "date": "2020-03-25T08:45:45+00:00", "name": "prob_meas0_prep1"}, {"value": 0.009, "unit": "", "date": "2020-03-25T08:45:45+00:00", "name": "prob_meas1_prep0"}], [{"value": 72.95056735103854, "unit": "\u00b5s", "date": "2020-03-21T09:12:22+00:00", "name": "T1"}, {"value": 55.651069208317416, "unit": "\u00b5s", "date": "2020-03-25T08:50:35+00:00", "name": "T2"}, {"value": 5.238166375544237, "unit": "GHz", "date": "2020-03-25T09:32:38+00:00", "name": "frequency"}, {"value": 0.016000000000000014, "unit": "", "date": "2020-03-25T08:45:45+00:00", "name": "readout_error"}, {"value": 0.028000000000000025, "unit": "", "date": "2020-03-25T08:45:45+00:00", "name": "prob_meas0_prep1"}, {"value": 0.004, "unit": "", "date": "2020-03-25T08:45:45+00:00", "name": "prob_meas1_prep0"}], [{"value": 60.02609400185151, "unit": "\u00b5s", "date": "2020-03-24T11:27:18+00:00", "name": "T1"}, {"value": 56.5667302044574, "unit": "\u00b5s", "date": "2020-03-25T08:51:29+00:00", "name": "T2"}, {"value": 5.030447131480531, "unit": "GHz", "date": "2020-03-25T09:32:38+00:00", "name": "frequency"}, {"value": 0.02300000000000002, "unit": "", "date": "2020-03-25T08:45:45+00:00", "name": "readout_error"}, {"value": 0.03300000000000003, "unit": "", "date": "2020-03-25T08:45:45+00:00", "name": "prob_meas0_prep1"}, {"value": 0.013, "unit": "", "date": "2020-03-25T08:45:45+00:00", "name": "prob_meas1_prep0"}], [{"value": 40.191662096986555, "unit": "\u00b5s", "date": "2020-03-24T11:27:18+00:00", "name": "T1"}, {"value": 32.72605690370547, "unit": "\u00b5s", "date": "2020-03-25T08:49:38+00:00", "name": "T2"}, {"value": 5.295584526214501, "unit": "GHz", "date": "2020-03-25T09:32:38+00:00", "name": "frequency"}, {"value": 0.026499999999999968, "unit": "", "date": "2020-03-25T08:45:45+00:00", "name": "readout_error"}, {"value": 0.025000000000000022, "unit": "", "date": "2020-03-25T08:45:45+00:00", "name": "prob_meas0_prep1"}, {"value": 0.028, "unit": "", "date": "2020-03-25T08:45:45+00:00", "name": "prob_meas1_prep0"}], [{"value": 60.24936885074526, "unit": "\u00b5s", "date": "2020-03-17T08:29:41+00:00", "name": "T1"}, {"value": 56.49914535083519, "unit": "\u00b5s", "date": "2020-03-24T11:35:08+00:00", "name": "T2"}, {"value": 5.084380058931499, "unit": "GHz", "date": "2020-03-25T09:32:38+00:00", "name": "frequency"}, {"value": 0.01750000000000007, "unit": "", "date": "2020-03-25T08:45:45+00:00", "name": "readout_error"}, {"value": 0.029000000000000026, "unit": "", "date": "2020-03-25T08:45:45+00:00", "name": "prob_meas0_prep1"}, {"value": 0.006, "unit": "", "date": "2020-03-25T08:45:45+00:00", "name": "prob_meas1_prep0"}]], "gates": [{"qubits": [0], "parameters": [{"value": 0.0006986138539952269, "unit": "", "date": "2020-03-25T08:51:56+00:00", "name": "gate_error"}, {"value": 35.55555555555556, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "id", "name": "id_0"}, {"qubits": [0], "parameters": [{"value": 0.0, "unit": "", "date": "2020-03-25T08:51:56+00:00", "name": "gate_error"}, {"value": 0.0, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "u1", "name": "u1_0"}, {"qubits": [0], "parameters": [{"value": 0.0006986138539952269, "unit": "", "date": "2020-03-25T08:51:56+00:00", "name": "gate_error"}, {"value": 35.55555555555556, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "u2", "name": "u2_0"}, {"qubits": [0], "parameters": [{"value": 0.0013972277079904538, "unit": "", "date": "2020-03-25T08:51:56+00:00", "name": "gate_error"}, {"value": 71.11111111111111, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "u3", "name": "u3_0"}, {"qubits": [1], "parameters": [{"value": 0.0007083529565385592, "unit": "", "date": "2020-03-25T08:53:16+00:00", "name": "gate_error"}, {"value": 35.55555555555556, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "id", "name": "id_1"}, {"qubits": [1], "parameters": [{"value": 0.0, "unit": "", "date": "2020-03-25T08:53:16+00:00", "name": "gate_error"}, {"value": 0.0, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "u1", "name": "u1_1"}, {"qubits": [1], "parameters": [{"value": 0.0007083529565385592, "unit": "", "date": "2020-03-25T08:53:16+00:00", "name": "gate_error"}, {"value": 35.55555555555556, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "u2", "name": "u2_1"}, {"qubits": [1], "parameters": [{"value": 0.0014167059130771183, "unit": "", "date": "2020-03-25T08:53:16+00:00", "name": "gate_error"}, {"value": 71.11111111111111, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "u3", "name": "u3_1"}, {"qubits": [2], "parameters": [{"value": 0.0004982838007951425, "unit": "", "date": "2020-03-25T08:54:31+00:00", "name": "gate_error"}, {"value": 35.55555555555556, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "id", "name": "id_2"}, {"qubits": [2], "parameters": [{"value": 0.0, "unit": "", "date": "2020-03-25T08:54:31+00:00", "name": "gate_error"}, {"value": 0.0, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "u1", "name": "u1_2"}, {"qubits": [2], "parameters": [{"value": 0.0004982838007951425, "unit": "", "date": "2020-03-25T08:54:31+00:00", "name": "gate_error"}, {"value": 35.55555555555556, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "u2", "name": "u2_2"}, {"qubits": [2], "parameters": [{"value": 0.000996567601590285, "unit": "", "date": "2020-03-25T08:54:31+00:00", "name": "gate_error"}, {"value": 71.11111111111111, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "u3", "name": "u3_2"}, {"qubits": [3], "parameters": [{"value": 0.0006238286656963878, "unit": "", "date": "2020-03-25T08:55:56+00:00", "name": "gate_error"}, {"value": 35.55555555555556, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "id", "name": "id_3"}, {"qubits": [3], "parameters": [{"value": 0.0, "unit": "", "date": "2020-03-25T08:55:56+00:00", "name": "gate_error"}, {"value": 0.0, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "u1", "name": "u1_3"}, {"qubits": [3], "parameters": [{"value": 0.0006238286656963878, "unit": "", "date": "2020-03-25T08:55:56+00:00", "name": "gate_error"}, {"value": 35.55555555555556, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "u2", "name": "u2_3"}, {"qubits": [3], "parameters": [{"value": 0.0012476573313927755, "unit": "", "date": "2020-03-25T08:55:56+00:00", "name": "gate_error"}, {"value": 71.11111111111111, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "u3", "name": "u3_3"}, {"qubits": [4], "parameters": [{"value": 0.00047583704590554066, "unit": "", "date": "2020-03-25T08:57:10+00:00", "name": "gate_error"}, {"value": 35.55555555555556, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "id", "name": "id_4"}, {"qubits": [4], "parameters": [{"value": 0.0, "unit": "", "date": "2020-03-25T08:57:10+00:00", "name": "gate_error"}, {"value": 0.0, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "u1", "name": "u1_4"}, {"qubits": [4], "parameters": [{"value": 0.00047583704590554066, "unit": "", "date": "2020-03-25T08:57:10+00:00", "name": "gate_error"}, {"value": 35.55555555555556, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "u2", "name": "u2_4"}, {"qubits": [4], "parameters": [{"value": 0.0009516740918110813, "unit": "", "date": "2020-03-25T08:57:10+00:00", "name": "gate_error"}, {"value": 71.11111111111111, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "u3", "name": "u3_4"}, {"qubits": [0, 1], "parameters": [{"value": 0.017677719792474567, "unit": "", "date": "2020-03-25T09:01:26+00:00", "name": "gate_error"}, {"value": 369.77777777777777, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "cx", "name": "cx0_1"}, {"qubits": [0, 2], "parameters": [{"value": 0.017585034057078508, "unit": "", "date": "2020-03-25T09:06:34+00:00", "name": "gate_error"}, {"value": 448.0, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "cx", "name": "cx0_2"}, {"qubits": [1, 0], "parameters": [{"value": 0.017677719792474567, "unit": "", "date": "2020-03-25T09:01:26+00:00", "name": "gate_error"}, {"value": 405.3333333333333, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "cx", "name": "cx1_0"}, {"qubits": [1, 2], "parameters": [{"value": 0.02161004435601907, "unit": "", "date": "2020-03-25T09:12:34+00:00", "name": "gate_error"}, {"value": 512.0, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "cx", "name": "cx1_2"}, {"qubits": [2, 0], "parameters": [{"value": 0.017585034057078508, "unit": "", "date": "2020-03-25T09:06:34+00:00", "name": "gate_error"}, {"value": 483.55555555555554, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "cx", "name": "cx2_0"}, {"qubits": [2, 1], "parameters": [{"value": 0.02161004435601907, "unit": "", "date": "2020-03-25T09:12:34+00:00", "name": "gate_error"}, {"value": 547.5555555555555, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "cx", "name": "cx2_1"}, {"qubits": [2, 3], "parameters": [{"value": 0.013193869068253816, "unit": "", "date": "2020-03-25T09:17:56+00:00", "name": "gate_error"}, {"value": 462.2222222222222, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "cx", "name": "cx2_3"}, {"qubits": [2, 4], "parameters": [{"value": 0.011648984283101682, "unit": "", "date": "2020-03-25T09:32:38+00:00", "name": "gate_error"}, {"value": 391.1111111111111, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "cx", "name": "cx2_4"}, {"qubits": [3, 2], "parameters": [{"value": 0.013193869068253816, "unit": "", "date": "2020-03-25T09:17:56+00:00", "name": "gate_error"}, {"value": 426.66666666666663, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "cx", "name": "cx3_2"}, {"qubits": [3, 4], "parameters": [{"value": 0.020142829457313466, "unit": "", "date": "2020-03-25T09:24:24+00:00", "name": "gate_error"}, {"value": 412.4444444444444, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "cx", "name": "cx3_4"}, {"qubits": [4, 2], "parameters": [{"value": 0.011648984283101682, "unit": "", "date": "2020-03-25T09:32:38+00:00", "name": "gate_error"}, {"value": 355.55555555555554, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "cx", "name": "cx4_2"}, {"qubits": [4, 3], "parameters": [{"value": 0.020142829457313466, "unit": "", "date": "2020-03-25T09:24:24+00:00", "name": "gate_error"}, {"value": 448.0, "unit": "ns", "date": "2020-03-25T09:32:38+00:00", "name": "gate_length"}], "gate": "cx", "name": "cx4_3"}], "general": []}
\ No newline at end of file
diff --git a/qiskit/test/mock/fake_backend.py b/qiskit/test/mock/fake_backend.py
--- a/qiskit/test/mock/fake_backend.py
+++ b/qiskit/test/mock/fake_backend.py
@@ -123,9 +123,12 @@ def run(self, qobj):
                 job = sim.run(qobj, system_model)
             else:
                 sim = Aer.get_backend('qasm_simulator')
-                from qiskit.providers.aer.noise import NoiseModel
-                noise_model = NoiseModel.from_backend(self)
-                job = sim.run(qobj, noise_model=noise_model)
+                if self.properties():
+                    from qiskit.providers.aer.noise import NoiseModel
+                    noise_model = NoiseModel.from_backend(self)
+                    job = sim.run(qobj, noise_model=noise_model)
+                else:
+                    job = sim.run(qobj)
         else:
             if qobj.type == 'PULSE':
                 raise QiskitError("Unable to run pulse schedules without "
diff --git a/qiskit/test/mock/fake_openpulse_2q.py b/qiskit/test/mock/fake_openpulse_2q.py
--- a/qiskit/test/mock/fake_openpulse_2q.py
+++ b/qiskit/test/mock/fake_openpulse_2q.py
@@ -215,15 +215,15 @@ def __init__(self):
             gates=[
                 Gate(gate='u1', name='u1_0', qubits=[0],
                      parameters=[
-                         Nduv(date=mock_time, name='gate_error', unit='', value=1.0),
+                         Nduv(date=mock_time, name='gate_error', unit='', value=0.06),
                          Nduv(date=mock_time, name='gate_length', unit='ns', value=0.)]),
                 Gate(gate='u3', name='u3_0', qubits=[0],
                      parameters=[
-                         Nduv(date=mock_time, name='gate_error', unit='', value=1.0),
+                         Nduv(date=mock_time, name='gate_error', unit='', value=0.06),
                          Nduv(date=mock_time, name='gate_length', unit='ns', value=2 * dt)]),
                 Gate(gate='u3', name='u3_1', qubits=[1],
                      parameters=[
-                         Nduv(date=mock_time, name='gate_error', unit='', value=1.0),
+                         Nduv(date=mock_time, name='gate_error', unit='', value=0.06),
                          Nduv(date=mock_time, name='gate_length', unit='ns', value=4 * dt)]),
                 Gate(gate='cx', name='cx0_1', qubits=[0, 1],
                      parameters=[
diff --git a/qiskit/test/mock/fake_qasm_simulator.py b/qiskit/test/mock/fake_qasm_simulator.py
--- a/qiskit/test/mock/fake_qasm_simulator.py
+++ b/qiskit/test/mock/fake_qasm_simulator.py
@@ -28,9 +28,7 @@ def __init__(self):
             backend_name='fake_qasm_simulator',
             backend_version='0.0.0',
             n_qubits=5,
-            basis_gates=['u1', 'u2', 'u3', 'cx', 'cz', 'id', 'x', 'y', 'z',
-                         'h', 's', 'sdg', 't', 'tdg', 'ccx', 'swap',
-                         'snapshot', 'unitary'],
+            basis_gates=['u1', 'u2', 'u3', 'cx', 'id', 'unitary'],
             coupling_map=None,
             simulator=True,
             local=True,
@@ -42,3 +40,6 @@ def __init__(self):
         )
 
         super().__init__(configuration)
+
+    def properties(self):
+        return None
diff --git a/test/python/providers/test_fake_backends.py b/test/python/providers/test_fake_backends.py
new file mode 100644
--- /dev/null
+++ b/test/python/providers/test_fake_backends.py
@@ -0,0 +1,61 @@
+# -*- coding: utf-8 -*-
+
+# This code is part of Qiskit.
+#
+# (C) Copyright IBM 2020.
+#
+# This code is licensed under the Apache License, Version 2.0. You may
+# obtain a copy of this license in the LICENSE.txt file in the root directory
+# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
+#
+# Any modifications or derivative works of this code must retain this
+# copyright notice, and modified files need to carry a notice indicating
+# that they have been altered from the originals.
+
+# pylint: disable=missing-class-docstring,missing-function-docstring
+# pylint: disable=missing-module-docstring
+
+import operator
+
+from test import combine
+from ddt import ddt
+
+from qiskit.circuit import QuantumCircuit
+from qiskit.execute import execute
+from qiskit.test.base import QiskitTestCase
+from qiskit.test.mock import FakeProvider
+from qiskit.test.mock.fake_backend import HAS_AER
+
+
+FAKE_PROVIDER = FakeProvider()
+
+
+@ddt
+class TestFakeBackends(QiskitTestCase):
+
+    @classmethod
+    def setUpClass(cls):
+        super().setUpClass()
+        cls.circuit = QuantumCircuit(2)
+        cls.circuit.h(0)
+        cls.circuit.h(1)
+        cls.circuit.h(0)
+        cls.circuit.h(1)
+        cls.circuit.x(0)
+        cls.circuit.x(1)
+        cls.circuit.measure_all()
+
+    @combine(backend=FAKE_PROVIDER.backends(),
+             optimization_level=[0, 1, 2, 3])
+    def test_circuit_on_fake_backend(self, backend, optimization_level):
+        if not HAS_AER and backend.configuration().n_qubits > 20:
+            self.skipTest(
+                'Unable to run fake_backend %s without qiskit-aer' %
+                backend.configuration().backend_name)
+        job = execute(self.circuit, backend,
+                      optimization_level=optimization_level,
+                      seed_simulator=42, seed_transpiler=42)
+        result = job.result()
+        counts = result.get_counts()
+        max_count = max(counts.items(), key=operator.itemgetter(1))[0]
+        self.assertEqual(max_count, '11')