I always prefer it when randomness is used to create variety in outcomes beyond simply a you-die/you-don't-die coin flip.
For example; a fire attack that does a random amount of extra damage is not that interesting to me. A fire attack that does a similar amount of damage to normal attacks but has a % chance of burning up a carried scroll or of setting fire to your clothes, forcing you to run to water to put yourself out, is more interesting because it requires the player to adjust their tactics both before and during a fight.
The key thing is that there should be ways of circumventing those unwanted outcomes that don't boil down to 'have a ring of X resistance' - for example avoiding hanging on to valuable scrolls for too long before using them, fighting fire-breathing enemies while standing in water and so on.
For this reason I tend to enjoy fire and corrosion effects (well, not enjoy, but you know what I mean) but find things like poison a bit of a bore, since there's not often a way of dealing with it if you lack the required resistance (although I did put one in Rogue's Eye; eating too much too quickly can cause you to vomit, which helps to purge your body of poison).
The deeper design consideration is whether those systems stay interesting. The first couple of times you fight a corrosive monster in nothing but your boxer shorts can be thrilling. After that though it can become something of a solved problem and if you're just reflexively stripping off like a bored call girl every time you see an Acid Mound then it stops being an interesting situation. This is where I think resistances have a role. They can prevent the player from having to demonstrate over and over again on the same playthrough that they have understood the mechanic (and similarly, can prevent a failure to understand it from being a game-ruiner). It might mean that those monster types become trivial in the short-term, but helps to keep them fresh in the long run. (I also think that 'how you like me now, bitch?'-style catharsis can be valuable in its own right, but only if the monster provided a decent challenge in the first place.)
TLDR version: Don't punish players because the RNG hasn't given them what they need. Punish them because the RNG hasn't given them what they need and they were unable to come up with an alternate solution.