2012-06-07 32 views
0

我在「我的電腦」中顯示了一個名稱空間擴展實現。我想編寫自動測試用例來瀏覽相同的測試用例。我可以打開資源管理器窗口,直到命名空間擴展。 as -在Windows資源管理器中選擇名稱空間擴展名中的文件/文件夾c#/ vb .net

Process.Start("explorer.exe", "shell:::{CLSID of my namespace }") 

接下來我想在打開的窗口中搜索特定的文件夾名稱。例如,如果我將輸入作爲「temp」輸入,那麼我的鼠標應移動到名稱空間資源管理器窗口中的「temp」文件夾中。然後我雙擊鼠標的當前位置並輸入該文件夾。接下來我給出的輸入爲「doc1.doc」,那麼我的鼠標應該能夠找到&移動到「doc1.doc」文件。 也getDirectory或GetFile等API不會工作,因爲我沒有與我的命名空間&相關的標準驅動器也沒有相對路徑。

請幫助。

+0

這聽起來像是你正在編寫你的測試來運行'explorer.exe',而不是寫你的代碼測試。你爲什麼不試圖以編程方式運行你的代碼? –

+0

我的每個文件夾名稱都與唯一的ID(在運行時從服務器返回並存儲在客戶端的哈希映射中)相關聯。所以無論何時我雙擊文件夾名稱,內部都會傳遞唯一的ID,我不會意識到這一點,因爲它可以動態更改。因此我無法直接在這裏使用我的代碼。 – Aparna

回答

0

我能夠通過使用sendkeys命令實現我的namesapce擴展的瀏覽部分。我用它先打開資源管理器窗口(Win + E)。接下來,我嘗試模擬按鍵,如果我必須雙擊名爲'temp'的文件夾,我發送'temp'作爲按鍵,然後按'Enter'。 'Input Simulator'被證明對實現這一目標非常有幫助。

做一個鼠標模擬似乎非常棘手和風險,從大量的帖子中讀取,所以避免了這一點。

我不想直接執行我的代碼(因爲我已經寫了單元測試),但我想模擬用戶的工作方式,並且會在內部激發我的代碼。

相關問題