我目前是Hadoop應用程序團隊的一員,其中的一部分將使用Spark,其中一部分將使用Java或Python(例如,我們無法使用Sqoop或Hadoop附帶的任何其他攝入工具並將實施我們自己的版本)。我只是一名數據科學家,所以我只是對Spark部分非常熟悉,所以對於缺乏細節或者如果這個問題通常很糟糕我表示歉意 - 我只知道工程團隊需要Java和Python支持。我被要求考慮使用Cucumber(或任何其他BDD框架)來接受測試我們的應用程序前後一旦我們進一步。我找不到任何博客,代碼庫或其他參考文獻,其中在多語言應用程序中使用黃瓜,並且幾乎沒有使用Hadoop的地方。是否有可能使用Cucumber或任何其他現有的BDD框架來測試我們的應用程序?我們已經計劃通過JUnit/PyUnit /等進行單元和集成測試。我可以使用Cucumber測試使用多種語言的應用程序嗎?
回答
答案是肯定的,如果你使用一種語言來測試兩個。
Cucumber-JS可以用來測試Javascript和PHP - 或者至少是這些腳本在網頁上的結果。
如果您的意思是在一個功能文件集中使用兩個不同的黃瓜變種,我不會推薦它。
如果需要,我會用Java和Python創建兩個不同的套件,以測試所需語言的腳本。但是,如果您只使用黃瓜框架來測試圖形用戶界面,爲什麼有兩種語言爲它提供動力?
這就是您需要從那些將要使用它的人那裏得到想法,從Python和Java中最熟悉哪種語言,並找到合適的軟件來集成它的地方。對於基於網絡的,Selenium使用的最多,但對於桌面應用程序,我不知道(因爲我只在基於Web的應用程序上使用過黃瓜)。
如果您需要運行Python腳本進行設置,您可以這樣做from Java。你也可以運行Java from Python
基本上,選擇最符合你需要的語言 - 這兩者都有優勢(順便說一句,Cucumber JVM比Python + Lettuce或Jython更好支持)。
功能文件將使用小黃瓜寫入。如果您使用Java或Python,則小黃瓜看起來一樣。所以從理論上講,您可以從兩個Java端Python執行相同的規範。但是,這樣做沒有任何意義。這只是一種用兩種不同語言實現相同行爲的方式,因此也是兩種不同的地方。唯一的結果將是重複和悲慘的開發人員。
您可以做的是使用BDD和小黃瓜來驅動實施。但在不同語言中有不同的行爲。這將導致您使用兩套不同的功能。鑑於您所描述的背景,這可能是一個好主意。
要使用黃瓜來測試桌面應用程序,您可以使用specflow,它在Visual Studio中使用一個名爲teststack.white的框架。只需谷歌黃瓜specflow,teststack.white等,你應該能夠走上正軌
- 1. 我可以在Heroku應用程序中使用兩種語言嗎?
- 2. 我可以使用多種語言的基於Linux的ORM嗎?
- 3. 我可以同時使用多種語言的OpenGL嗎?
- 4. 讓我的應用程序使用多種語言
- 5. 我可以使用Fit/Fitnesse來測試.NET應用程序嗎?
- 6. 我可以使用硒webdriver測試iphone應用程序嗎?
- 7. 多種語言的Android應用程序
- 8. Phonegap應用程序的多種語言
- 9. 多種語言的應用程序
- 10. 多種語言的應用程序
- 11. 多種語言的MVC3應用程序
- 12. 想要以多種語言使用應用程序印地語和英語
- 13. 我可以使用這種語法嗎?
- 14. UWP應用程序在多種語言
- 15. phonegap應用程序多種語言
- 16. 您可以使用JMeter測試Siebel應用程序嗎?
- 17. 我可以使用.Net語言進行iPhone應用程序開發嗎?
- 18. 我可以使用.NET語言編寫Eclipse RCP應用程序嗎?
- 19. 我可以更改android應用程序的語言嗎?
- 20. 使用多種語言創建Android應用程序
- 21. 使用多種語言編寫應用程序
- 22. 如何讓spring-mvc應用程序使用多種語言?
- 23. 使用普通的JRE Junit測試可以測試Android應用程序嗎?
- 24. 多語言Sitecore 6網頁可以爲每種語言使用別名嗎?
- 25. 使用cucumber/capybara在bundler應用程序中測試動態URL
- 26. 集成使用Cucumber和Capybara測試Backbone.js應用程序
- 27. 我可以使用Xamarin.Android單元測試應用程序中的新NUnit API嗎?
- 28. 我們可以使用selenium htmlunit-driver **來測試AngularJS應用程序的GUI嗎?
- 29. 多種語言的UWP應用程序 - 檢查所有語言
- 30. 使多語言Android應用程序