Expectation of students in Graduate vs. Undergraduate STEM classes I'm not sure if this question is okay to post here (I am only an undergrad), so please feel free to close/migrate if necessary. I won't be offended.

I am an undergraduate taking an undergraduate CS class right now. I feel the class is being taught like a graduate-level course, but we are being tested like undergraduates. I say this because I have taken graduate-level STEM classes in the past, and I think my professor is teaching the material as if we were graduate students.

The homework in this class emphasizes theoretical understanding and proof writing. When the midterm was upon us, we were given no practice problems to prepare for the test. There were no practice midterms either. Going into the midterm, I figured, well, the professor will probably test us on our understanding of the material. However, the midterm tested for speed and accuracy. There were several short answer questions that had little to do with the kind of understanding of the material we developed from the homework. In fact, there were questions for which we haven't yet had homework. I think he tried to make the test "easy," which totally threw me off.

I did very poorly on my midterm, and now I am trying to figure out whether I can judge what to expect in a graduate-level class vs. an undergraduate-level class so I may avoid such poor exam performance in the future. I have come up with the following qualities to expect from a graduate-level STEM class vs. an undergraduate-level STEM class.

Graduate-level STEM Class


Emphasis on depth of understanding.
Abstract material can sometimes be presented ad hoc: Less emphasis on linear presentation of material.
Theoretical presentation of material. Typically, we look at axioms/rules whenever we are presented new notation. We then derive everything from these axioms/rules.
Often the material covered has so much depth that we are expected to have minimal breadth of understanding; We are expected to take what we've learned and focus on a particular are in great depth.
Exams, projects, and papers test understanding of the material, not the speed in which we can solve arbitrary problems.


Undergraduate-level STEM Class


Emphasis on breadth of knowledge.
Material is presented in a linear fashion, often starting with some concrete examples and building from there.
There is often so much ground to cover that we are taught through rote memorization. We solve problems excessively.
Exams test for speed and accuracy of exact solutions to several problems. One often succeeds in such a class by performing many practice problems.


My questions are as follows:


Is this accurate? If not, why, and what kinds of differences can I expect between graduate vs. undergraduate-level courses?
Are there other/better ways to find correlations between teaching and testing styles? How can I know I am prepared for an exam given a professor's teaching style (rote memorization vs. emphasis on derivations, etc.)?
There is some truth in the differences you observe, but the distinctions are not very sharp. It's more of a continuum - as witnessed, for example, by the many textbooks that describe themselves as suitable for advanced undergraduate and early graduate levels.

From the point of view of the instructor, the differences in teaching style are explained by two things:


Graduate students are more experienced. It's not only a question of them knowing more about the subject, but also of their (presumed) greater ability to be responsible for their own learning. Related to that, people who've opted for graduate study are assumed to be motivated to work independently. So the instructor can be a bit more free to skip over material that's routine, or doesn't present much of a conceptual challenge. In computer science, say, beginning courses will teach you a programming language; advanced ones will assume that if you haven't used the language before, you can pick it up without much explicit guidance.
The topic is less well understood. At a more advanced level, we have less to rely on in how to teach the subject. For early undergraduate courses, there's probably a choice of textbooks and related resources, and a body of expertise about how to present the material. A course that's closer to current research may not have been taught many times before; the instructor won't have much of a pool of local experts to consult; and there may not be any existing textbooks at all. So the teaching might have some rough edges, in the choice and order of topics to present, how much time is spent on them, and so on.


I think this is what lies behind your observations, at least regarding the teaching. For assessment, I'd say there are other factors which dominate. Assessment is very sensitive to the precise nature of the course, the instructor, and the institution. I'm sure you can imagine being examined on your understanding of some algorithm by any of: answering multiple choice questions about it, proving something about it, writing an explanatory essay about it, implementing it on a computer, or doing any of these for some variant of the algorithm  that you hadn't seen before. And any of these could happen in a course at any level.

It sounds like you're somewhat aggrieved that the questions on your midterm were in a different style from your homework, and were less conceptual than the material presented in lectures. Now, it may be that your professor was (as you suggest) skewing the teaching towards the graduate end of the scale, and assuming that you would independently put the work in to make sure you could apply the theory correctly. In that case, the issue isn't that the exam was in "undergraduate" style, but that "graduate" teaching puts more of a burden on the students.

However, there are other factors in play that govern the style of examination. For example:


I want to know if you understand the theory, and I decide that asking you to apply it is a good way to find out.
I would be ashamed if somebody got an A in my course, but couldn't actually solve these applied problems.
I decide that routine problems will be quicker or easier to grade.
The homework already tested the students' broad understanding, and I decide the midterm should test something different.


I'm not saying that any of these are what happened, or that they are necessarily "good" ideas. But there are reasons why the midterm could focus on less conceptual material, that don't relate to an undergraduate-vs-graduate distinction.

Your final question is about how to know what to expect from a particular examination before you've taken it. Having thought about it at some length, I can't come up with any better suggestion than ask your professor. There are so many possibilities, even for the same course taught by the same person, for what the exam might be like.