This is a tiny question with no serious short answer, it is also likely to start a flame war if you ask it in a public forum!
Both are high-level languages for writing testbenches. Specman e was created from scratch as a verification language, and has many advanced features that make data modelling and randomisation very easy. Specman is still very widely used and is actively developed by Cadence.
In contrast, Vera is a traditional object-oriented language, lacking some of the more advanced features that e has. It is also pretty much dead, having been widely replaced by Specman and SystemVerilog.
Specman code integrates tightly into Cadence's multi-language simulator kernel, whereas Vera runs as a PLI-based add-on.