簡體   English   中英

當你在嵌入式JRuby中執行Ruby腳本時,你能使用gems嗎?

[英]Can you use gems, when you execute a Ruby script in embedded JRuby?

碰巧我需要對這個Ruby腳本進行單元測試。 這是一個基於Sinatra的Web應用程序,它使用了幾個寶石。

我在Java方面比在Ruby方面有更多的經驗,時間非常重要(優雅不是),所以我認為我可能會更快,如果我在JUnit類中執行該腳本並模擬它所依賴的所有子系統(Web服務器) ,數據庫)。 這樣我就可以使用我的Java技能來測試Ruby系統。 看起來您可以將Ruby嵌入Java程序中。

問題:我可以在嵌入式Ruby中使用gems,即創建一個可以在任何機器(Windows,Linux,Mac)上執行測試的Java程序,並且不需要我手動在其上安裝幾個寶石嗎? 如果有,怎么樣?

注意:它們需要是真正的寶石,嘲笑都很好。

更新1(25.01.2017 13:14):一個明顯的解決方案是將該腳本的邏輯提取到一個沒有依賴項的單獨的Ruby文件中。 這可能是代碼的80%。 然后,即使沒有寶石,我也可以測試該邏輯文件。

我假設你正在使用JRuby。 檢查這個這個 有了這個,你可以做相反的事情並在Jruby內部使用Junit。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM