??????SpecExplore?????

????<!--[if !supportLists]-->1.  <!--[endif]-->???????????????????????????????????????????????????????α????????????????????????????????飬??????????????????á?

????<!--[if !supportLists]-->2.  <!--[endif]-->??????????????仯????????????????????????????λ??????????????????????????

????<!--[if !supportLists]-->3.  <!--[endif]-->????????????????????ж?????????????????????????????????????????????????

??????MTest?У??????????д????????????????£?????в?????????????????????????????????????????????????????????????????????????????????????????????·????????????????????????????κ??????????????У????????????????У???л?????????????????????????????????????????

????????????濴??????????????κ??????

????<!--[if !supportLists]-->1.  <!--[endif]-->Java????spring??????Щ????????????????????spring???????л??????????????????????????Ч???????????????????ú????????????

????<!--[if !supportLists]-->2.  <!--[endif]-->C#??Java?????C++???????????

?????????????????????Python?????????????????????????????Python???????????????????__getattribute__???????????????????????????????????????????????е????????????????????????Ρ???к???????????????????????????????£?

class A:
def __getattribute__(self?? name):
print("Here?? can return a delegate for function: %s?? not just itself" % name)
return object.__getattribute__(self?? name)
def bFun(self):
print('b Called')
A().bFun()

?????????

????Here?? can return a delegate for function: bFun?? not just itself

????b Called

????????????mtest???????????MTest?ж?bFun???????????????????????bFun???????????????????????DynamicResult??????Assert.AreEqual?У?飬??Assert.AreEqual?????????????У????????????????????????????????????????????????κ????????????????????????????????????????????????????????????????????δ????????????????????????????????????????????????Mock??

?????????MTest?????@Action?????????????Logger??Assert????????????????????????????Python???????????????????????????????????Java??C#??Ruby??JS??JMeter??????????????