2016-01-21 52 views
0

我正在嘗試爲WPF應用程序設置一些自動化的UI測試,這些應用程序是爲了鍛鍊UI而工作的,但我似乎無法獲取應用程序甚至可以使用顯式路徑運行。因爲這些測試需要在包括我們的構建服務器的任何機器上運行,所以它需要是相對路徑,以便它可以在任何地方運行。我已經看了幾個不同的問題,C# Application.ExecutablePath on WPF Framework 3.5Getting the application's directory from a WPF application for examle,並且這些都沒有工作。不能從一個單獨的白色項目獲取App.exe

這裏是我的項目結構是什麼樣子

Solution 
AccepatanceTestProject 
    UITest.cs 
MainApp 
    MainApp 
    Bin 
    Debug 
    MainApp.Exe 

我試圖從AcceptanceTestProject \ UITest.cs

訪問MainApp.exe在MainApp \ BIN \調試\ MainApp.exe爲例

System.Reflection.Assembly.GetEntryAssembly()。位置似乎是建議最多的選項,但這會返回到UITest.cs可執行文件目錄的路徑。任何建議將不勝感激。謝謝!

+0

你提到了[Samples](https://github.com/TestStack/White/tree/master/src/Samples)嗎? –

+0

@JoshuaShearer Yep,遵循他們使用Path.GetDirectoryName(新的Uri(Assembly.GetExecutingAssembly()。CodeBase).AbsolutePath)的示例; Returns: 「C:\\ source \\ repo \\ project \\ UI.Tests \\ bin \\ Debug」 – CGideon

回答

0

如果您的MainApp.exe和您的測試總是處於相同的解決方案中,您可以使用下面的路徑訪問MainApp.exe。

string path = @"..\..\..\MainApp\Bin\Debug\MainApp.exe";