At the most fundamental level, a teacher is expected to be a fount of knowledge: an expert in their field with a thorough understanding of the subjects they instruct. The required depth of knowledge within a particular field differs depending on the subject and grade level you instruct. Typically, a Bachelor’s degree generally suffices to teach elementary school students because at this level you will most likely be covering a variety of subjects. However, if you teach high school, you are more likely to be instructing a single subject and should therefore have a much deeper understanding of that field. Furthermore, many high schools require their teachers to have a Bachelor’s degree in the subject they teach, meaning a biology teacher should major in biology, a history teacher in history, etc. Many teacher examinations test you on these individual subjects. You can also become certified to teach in a specific subject, which will make you more appealing to potential employers --- especially if you’re certified in a high needs subject. In essence, before you even enter the classroom and learn how to interact with and care for your students, it’s of the utmost importance that you know what you’re teaching.
Regardless of the specific subject you instruct, teachers should also have foundational knowledge in education. They should be familiar with different pedagogies and teaching methods. You can learn these things by majoring in education, taking education classes or enrolling in master's level teacher education, but that’s not the only way. Teachers who didn’t major in education in college can study pedagogy and teaching methods on their path to licensure or even on the job from the more experienced educators they work with.
The most important thing to know is that every student is different, and you should be adaptable enough to acknowledge this and teach in a way that is conducive to the education of all students. Learn more about teaching specific subjects by browsing the links below: