我試圖在MSTest測試代理上運行一些與數據庫相關的集成測試。我們使用c#和帶有devart dotconnect的oracle數據庫。在MSTest代理上運行時缺少Oracle oci.dll
由於我們需要使用間接模式,我在測試代理上安裝了devart和一個oracle客戶端。
當我在本地機器上執行測試時,測試運行順利。但是,當在遠程測試代理上執行時,它無法找到客戶端的oci.dll,它是某處的依賴項:
System.IO.FileNotFoundException:無法從家中加載Oracle客戶端庫oci.dll ..
現在,我不知道爲什麼會發生這種情況。我已經檢查了PATH環境變量,但它們看起來很好。任何想法,爲什麼這可以在我的機器上運行,但不是在部署到測試代理時?
編輯:devart中添加的堆棧跟蹤:
Devart.Data.Oracle.OracleHome.get_ClientVersion()
Devart.Data.Oracle.aw.a(Boolean A_0, Boolean A_1, OracleHome A_2, Boolean A_3)
Devart.Data.Oracle.OracleInternalConnection..ctor(aa connectionOptions, OracleInternalConnection proxyConnection)
Devart.Data.Oracle.cs.a(k A_0, Object A_1, DbConnectionBase A_2)
Devart.Common.DbConnectionFactory.a(DbConnectionPool A_0, k A_1, DbConnectionBase A_2)
Devart.Common.DbConnectionPool.a(DbConnectionBase A_0)
Devart.Common.DbConnectionPool.GetObject(DbConnectionBase owningConnection)
Devart.Common.DbConnectionFactory.a(DbConnectionBase A_0)
Devart.Common.DbConnectionClosed.Open(DbConnectionBase outerConnection)
Devart.Common.DbConnectionBase.Open()
Devart.Data.Oracle.OracleConnection.Open()
執行單元測試的用戶是否擁有Oracle主目錄的權限? http://forums.devart.com/viewtopic.php?t=15271 – 2012-07-24 12:19:55
它可能是像基因S說的權限。您還可以檢查註冊表中Oracle Home的差異。如果你只有一個家,HKEY_LOCAL_MACHINE \ SOFTWARE \ ORACLE \ HOME。檢查是否有指向右側的目錄。 –
2012-07-24 12:41:16
Als checkout - http://forums.devart.com/viewtopic.php?t=22700 - 與本地相比,您的遠程測試代理是否以不同的模式運行? – 2012-07-24 12:51:49