2012-06-07 30 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'被证明对实现这一目标非常有帮助。

做一个鼠标模拟似乎非常棘手和风险,从大量的帖子中读取,所以避免了这一点。

我不想直接执行我的代码(因为我已经写了单元测试),但我想模拟用户的工作方式,并且会在内部激发我的代码。

相关问题