First, please read https://ww.wp.xz.cn/support/topic/the-plugin-does-not-have-a-valid-header-68?replies=4#post-6278474.
Second, I’m really sorry about the trouble. Please understand, there’s less than 5 reports of this issue out of 500,000 downloads and oftentimes, if the plugin activation attempt is tried a second time, it works. The other couple of times, there was a plugin conflict, but not the same.
If you dig into what “The plugin does not have a valid header” means, you’ll find that it relates to a misread readme.txt or testimonials-widget.php files. In this case, https://raw.githubusercontent.com/michael-cannon/testimonials-widget/master/readme.txt or https://raw.githubusercontent.com/michael-cannon/testimonials-widget/master/testimonials-widget.php.
Per the WordPress Readme Validator, Testimonials Widget’s readme.txt returns “Your readme.txt rocks. Seriously. Flying colors.”. Some of the suggested fixes for the PHP file include revising the header to eliminate blank lines between the opening <?php and the WordPress plugin header. testimonials-widget.php is compliant.
Because of these conditions, it’s quite hard to replicate the issue to determine the fix.
Now, one thing to point out is that this error does come up if the end user like yourself hasn’t installed the plugin properly from the start. Did you install it within the WordPress Admin > Plugins > New interface? If not, please try that and then follow-up on the original support ticket.
So while, I don’t mind the 1-star review, it would be polite of you try and work through the support ticket till conclusion than “dev told me read FAQ, it didn’t work, I gave up, and now I’m complaining how sucky his plugin is.”. It’s just rude.