2010-06-14 89 views
4

我有一個約10,000個小VBScript程序(每個50-100行)和一個較大的小集合的集合,我正在尋找一種方法將它們轉換爲C#而不訴諸手動音譯。這些程序是爲HP/Mercury的QuickTest Pro編寫的Web應用程序的自動化測試用例,我試圖將它們轉換爲Selenium的測試用例。幸運的是,使用構建塊和成語庫(較大的程序),這些測試似乎寫得很好,所以測試用例實際上比VBScript更類似於特定於領域的語言,而且QTP性能很好,埋在圖書館裏面。如何將成千上萬的VBScript行轉換爲C#?

理想情況下,我正在尋找的是一個工具,可以將VBScript語法轉換爲C#用於dsl-ish測試用例以及更復雜的構建塊庫。這會讓我手動清理這些庫,並且可能對測試用例做很少的工作。如果我能找到一個VBScript-to-VB.NET翻譯器,我也會這樣做,因爲我懷疑我可以編譯VB.NET,然後使用.NET Relector或類似的東西解編譯爲C#。 B計劃是爲自己的測試用例編寫一個翻譯器,因爲它們是非常直線的樣式,但它對圖書館沒有任何幫助。

任何suyggestions?我至少15年沒有編寫過編譯器,雖然我沒有忘記如何,但我並不期待它 - 至少對於VBScript來說!

+0

最後,我手寫了一位翻譯員,因爲這些程序的內容受到嚴格限制。 ho1的VB6建議是我永遠不會想到的一個好主意,並且如果Visual Studio沒有讓我把文件*變成一個項目以便我可以轉換它們,我肯定會使用它。 – 2010-06-21 18:47:28

回答

2

大多數vbscript是有效的VB6代碼,因此一種選擇是將它們從.vbs重命名爲VB6使用的任何選項,然後將它們全部添加到VB6項目中,並查看VB6 - VB.Net升級嚮導是否附帶一些版本的Visual Studio可以幫助你。

+0

這是一個好主意 – Thomas 2010-06-14 15:42:26

1

GreatMigrations有一個工具,可以很好地將VB6轉換爲C#(和其他語言)。我知道公司願意與組織合作,根據他們的具體需求量身定製產品。