Witch

I Witches are hostile humainoid mobs that drink and throw potions.

Natural generation
A single witch can spawn anywhere in the Overworld at a light level of 7 or less.

Witch huts
Every witch hut spawns a witch and a black cat inside during world generation, which never despawns. Otherwise, only witches (which may despawn) spawn in the 7×9×7 area that is the witch hut. This is the size of the roof and one block over the porch, from one level below the floor of the hut to two blocks above the roof.

Witch huts generated before 1.8.1 have a spawn zone of only 7×9×5. Witch huts spawned on high ground also have a reduced or eliminated spawn zone height.[1]

Villagers
When lightning strikes within 4 blocks of a villager, the baby or adult villager despawns and a witch spawns in its place, giving the effect of it turning into a witch.

Raids
Witches are able to spawn starting at wave 3 as part of raids. They cannot spawn in easy difficulty.