diff --git a/openecomp-ui/test-utils/factories/onboard/OnboardFactories.js b/openecomp-ui/test-utils/factories/onboard/OnboardFactories.js
new file mode 100644
index 0000000..3228694
--- /dev/null
+++ b/openecomp-ui/test-utils/factories/onboard/OnboardFactories.js
@@ -0,0 +1,23 @@
+/*!
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+import {Factory} from 'rosie';
+import {storeCreator} from 'sdc-app/AppStore.js';
+
+const store = storeCreator();
+const defaultStore = store.getState();
+
+export const OnboardStoreFactory = new Factory()
+	.attrs(defaultStore.onboard);
diff --git a/openecomp-ui/test-utils/factories/onboard/OnboardingCatalogFactories.js b/openecomp-ui/test-utils/factories/onboard/OnboardingCatalogFactories.js
new file mode 100644
index 0000000..ff926ac
--- /dev/null
+++ b/openecomp-ui/test-utils/factories/onboard/OnboardingCatalogFactories.js
@@ -0,0 +1,26 @@
+/*!
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+import {Factory} from 'rosie';
+import {storeCreator} from 'sdc-app/AppStore.js';
+
+const store = storeCreator();
+const defaultStore = store.getState();
+
+export const OnboardingCatalogStoreFactory = new Factory()
+	.attrs(defaultStore.onboard.onboardingCatalog);
+
+export const defaultStoreFactory = new Factory()
+	.attrs(defaultStore);
