The correct option is B How long have you been teaching English?
Present perfect continuous tense is used to express that an action started in the past, continued to the present time and will / may continue in the future as well. The act of teaching started in the past, continued till the present, and may continue in the future. Hence, we will use the present perfect continuous tense here. The syntax for present perfect continuous tense is: has / have + been + verb + ing. Therefore, the correct answer is: How long have you been teaching English?