Prior to WordPress 3.8, if we wanted custom icons to appear in the WordPress admin menu for custom post types, we would have to source or create our icons manually.
Enter Dashicons. These icons were introduced in WordPress 3.8 and are the official icon fonts used for the WordPress admin. We can now easily make use of around 200 vector based icons in the admin menu for our custom post types.
All you need to do to add an icon font to your custom post type is:
'menu_icon' => 'dashicons-smiley',
That’s all there is to it! The icon font for your custom post type should now appear in the admin menu