选D,has been 句式。
下面是分析:
A不对,因为问的是how long,多久了,后面要跟一个持续性动词。been to Beijing 应改为been in Beijing。
B不对,同样因为become 不是持续性动词。可以将become a policeman改为 been a policeman。
C不对,也是因为joined 不是持续性动词。joined the art club 可以改为 participated in the art club。
D正确,study 是持续性动词。稍复杂一点也可以说How long has Robert been studying in this class. 意思不变。
(^-^)希望有帮助。