Welcome to the forums. If your battery is good and you've already replaced the solenoid, then your starter is probably bad. Make sure all the cables on the battery, solenoid, and starter are clean and tight.
The next time the starter doesn't turn, tap it with a hammer and see if it turns. If it does, the starter is bad.
Connect your volt meter to the starter electrical terminal and a good ground. Try starting. You should read battery voltage when you press the start button. If you DO have battery voltage, your starter is the problem. One last check you can do is a direct feed to the starter terminal. Hook a jumper cable to the battery positive and touch the starter terminal. If the starter does not turn you have a starter problem.
I just had a starter problem. I replaced the starter brushes and I am back in business.