It depends on your variety of English. In the US, we do not say sit an exam. As far as I can tell, sit for an exam is acceptable. The two common ways I can think of expressing this in AmE are with take and have:
- I took an exam yesterday.
- I had an exam yesterday.
This is what the Longman Dictionary has to say:
test
1 EXAM a set of questions, exercises, or practical activities to measure someone’s skill, ability, or knowledge
test on
- We have a test on irregular verbs tomorrow.
- Did you get a good mark in the test?
► You take or do a test. Don’t say ‘make a test’. To pass a test means to succeed in it, not simply to take it.
Personally, do an exam strikes me as odd. I wouldn't use it. But it's listed in the dictionary, so it certainly has currency.
As far as I can tell, sit an exam is BrE and perfectly acceptable among BrE users. Here's an entry from the Cambridge Dictionary:
sit verb (EXAM)
[ T ] UK to take an exam:
After I've sat my exams, I'm going on holiday.
AUSTRALIAN ENGLISH I sat for my exams today.
I don't know what BrE users (and other varieties) think of to do an exam. Just to confuse you more, there is also write an exam (= take an exam). That's not used in the US, but I believe it is used elsewhere. Let's see what others say!
As for the second part, I disagree. Perhaps you misunderstood, but when the teacher or the professor creates the test, we can say that they make the test, in my opinion. I believe the dictionary entry above means that students take the test, but they don't make the test. In other words, the entry is trying to clarify that take the test and make the test are not the same.
It's also possible to say that the teacher writes the test (= creates the test). That's my AmE perspective. Again, let's see what others say!