I'm developing a custom WordPress theme. When I go to select themes in the Appearance menu, my theme does not have a preview image. Is there something I need to do to get a preview image to show up? I can't find any resources on the web that talk about this. Maybe I'm just searching the wrong thing though...?
There is no automatic preview. You need to create the screenshot yourself and place it in the theme/child theme folder named screenshot.png
The recommended image size (currently) is 1200px wide by 900px tall, however the screenshot will only be shown as 387x290. It is over-sized to allow for high-resolution viewing on HiDPI displays. Note that as of version 4.7.4, the bottom ~18% of this image will be cutoff so keep logos or other graphics centered.
For the latest info see: http://codex.wordpress.org/Theme_Development#Screenshot
For wordpress.org themes, the screenshot should be reasonable facsimile of the theme, and should be 880px wide and 660px in height (any 4:3 height:width) screenshot will be fine.
To add a screenshot, create screenshot.png file and add it to the root director of the theme. e.g wp-content/themes/theme-name/
How to create a screenshot of the theme.
You can use screengrab, awesome screenshot or any other firefox addon or chrome extension to take screenshot and set height and width in photoshop. You can also use built-in feature of firefox for this reason.
Click on alt button on your keyboard and you will see a menu at the top of the browser, Click on tools > web developer > responsive design view, now set custom height width and take screenshot