我定義的TestClass像如何從一個類
MyTest = Class(TTestCLass)
procedure DoMyTest_1 (...);
procedure DoAnontherTest (...);
function OnemoreTest : Boolean;
.....
end;
運行單元測試TestRunner的框架得到規定的程序列表中顯示定義testfunctions的名單,這是非常容易從GUI選擇單個測試/這個框架內的ListBox。我想在運行時從類中提取已定義函數的List,並且能夠動態調用此函數。
的想法是這樣的,但我不知道如何實現
procedure ExtractProcedureNamefromClass (aClass : TObject) : TStringlist ;
begin
?????
end;
procedure ClassaClassProcedureByName (aClass : TObject ; FunctionName : String);
begin
/// can you do it more flexible
if Functionname=DoMyTest_1 then
MyClass.DoMyTest_1(...);
end;
您可以通過使用RTTI做到這一點。 –
什麼是RTTL函數 – Franz
您可以使用['RTTI'](http://docwiki.embarcadero.com/RADStudio/XE3/en/Working_with_RTTI_Index)獲取所有方法名稱的列表。 –