這個需求說實話是有那麼些奇葩,因為正常的框架不會用到這個需求,要麼就純Python
來實現,要麼就純RobotFramework
來實現,用RobotFramework
的時候是可以正常調用Python
的,但是反過來就有點蛋疼了。
我們現在的框架就是基於RobotFramework
實現的,但是由於RobotFramework
在某些地方的擴展性太低,某些時候用Python
來實現更為高效,不過現有的RobotFramework
工程已經有非常多的沉澱了,要是把這部分全部重寫,工作量太大了,因此就有了這麼個奇葩的需求。在網上搜索了大半天後,終於還是放棄了,只能自己去看源代碼來實現了。
有一種非常簡單粗暴的實現方式,用RobotFramework
寫一個測試用例,然後這個用例調用對應的關鍵字,再用Python
來執行這條用例,就實現了調用關鍵字的功能,但是這樣有兩個弊端。
整個部分實現起來其實不難,只不過RobotFramework
的源代碼沒有什麼人去解讀,也沒有很好的翻譯文檔,其實在之前的解析文章中用到的robot.api
中就已經涉及到這個點了,實現代碼如下: