diff --git a/src/core_plugins/kibana/public/home/components/synopsis.js b/src/core_plugins/kibana/public/home/components/synopsis.js
index 56a0fb7145e61..a336d777860e0 100644
--- a/src/core_plugins/kibana/public/home/components/synopsis.js
+++ b/src/core_plugins/kibana/public/home/components/synopsis.js
@@ -19,7 +19,11 @@ export function Synopsis({ description, iconUrl, title, url }) {
}
return (
-
+
{img}
diff --git a/src/ui/public/chrome/directives/global_nav/global_nav.html b/src/ui/public/chrome/directives/global_nav/global_nav.html
index 828ccd9d7a191..156fe572d7bc7 100644
--- a/src/ui/public/chrome/directives/global_nav/global_nav.html
+++ b/src/ui/public/chrome/directives/global_nav/global_nav.html
@@ -6,7 +6,7 @@
-
+
{
+ await PageObjects.common.navigateToApp('settings');
+ await PageObjects.home.clickKibanaIcon();
+ const url = await remote.getCurrentUrl();
+ expect(url.includes('/app/kibana#/home')).to.be(true);
+ });
+
+ it('clicking on console on homepage should take you to console app', async ()=> {
+ await PageObjects.home.clickSynopsis('console');
+ const url = await remote.getCurrentUrl();
+ expect(url.includes('/app/kibana#/dev_tools/console?_g=()')).to.be(true);
+ });
+
+ });
+}
diff --git a/test/functional/apps/home/index.js b/test/functional/apps/home/index.js
new file mode 100644
index 0000000000000..cad5e2b98f62f
--- /dev/null
+++ b/test/functional/apps/home/index.js
@@ -0,0 +1,11 @@
+export default function ({ getService, loadTestFile }) {
+ const remote = getService('remote');
+
+ describe('homepage app', function () {
+ before(function () {
+ return remote.setWindowSize(1200, 800);
+ });
+
+ loadTestFile(require.resolve('./_home'));
+ });
+}
diff --git a/test/functional/config.js b/test/functional/config.js
index 32159400cc0e5..2de12e9b3079e 100644
--- a/test/functional/config.js
+++ b/test/functional/config.js
@@ -5,6 +5,7 @@ import {
ContextPageProvider,
DiscoverPageProvider,
HeaderPageProvider,
+ HomePageProvider,
DashboardPageProvider,
VisualizePageProvider,
SettingsPageProvider,
@@ -35,6 +36,7 @@ export default async function ({ readConfigFile }) {
require.resolve('./apps/context'),
require.resolve('./apps/dashboard'),
require.resolve('./apps/discover'),
+ require.resolve('./apps/home'),
require.resolve('./apps/management'),
require.resolve('./apps/status_page'),
require.resolve('./apps/timelion'),
@@ -48,6 +50,7 @@ export default async function ({ readConfigFile }) {
context: ContextPageProvider,
discover: DiscoverPageProvider,
header: HeaderPageProvider,
+ home: HomePageProvider,
dashboard: DashboardPageProvider,
visualize: VisualizePageProvider,
settings: SettingsPageProvider,
diff --git a/test/functional/page_objects/home_page.js b/test/functional/page_objects/home_page.js
new file mode 100644
index 0000000000000..7f8b0605d3c30
--- /dev/null
+++ b/test/functional/page_objects/home_page.js
@@ -0,0 +1,19 @@
+
+export function HomePageProvider({ getService }) {
+ const testSubjects = getService('testSubjects');
+ //const PageObjects = getPageObjects(['common', 'header']);
+ class HomePage {
+
+ async clickKibanaIcon() {
+ await testSubjects.click('kibanaLogo');
+ }
+
+ async clickSynopsis(title) {
+ await testSubjects.click(`homeSynopsisLink${title}`);
+ }
+
+
+ }
+
+ return new HomePage();
+}
diff --git a/test/functional/page_objects/index.js b/test/functional/page_objects/index.js
index 495b977e13ae4..eff68acc8e505 100644
--- a/test/functional/page_objects/index.js
+++ b/test/functional/page_objects/index.js
@@ -4,6 +4,7 @@ export { ShieldPageProvider } from './shield_page';
export { ContextPageProvider } from './context_page';
export { DiscoverPageProvider } from './discover_page';
export { HeaderPageProvider } from './header_page';
+export { HomePageProvider } from './home_page';
export { DashboardPageProvider } from './dashboard_page';
export { VisualizePageProvider } from './visualize_page';
export { SettingsPageProvider } from './settings_page';