python - UI 自动化 Windows 用户登录

标签 python windows powershell ui-automation

我有一个测试用例,我必须在 Windows UI 上自动执行用户操作,

场景是 windows 密码已过期,当用户尝试登录到 系统,出现重置密码页面,用户输入新密码,登录成功。

现在我必须通过脚本来做到这一点,

好消息是我在机器上运行了一个 python 服务,如果需要的话,我可以在登录前将命令传递给它。

我用 Google 搜索了很多,但找不到类似的东西。

如果有人能指出我的问题的任何具体内容,我将非常高兴,

此 UI 自动化的引用点应该是什么?

最佳答案

如果您尝试自动化 Windows 登录 UI,我相信这是可能的,但它需要您使用 Windows 服务来运行您的测试代码。听起来您可能已经在这样做了,因为您提到了一个 Python 服务,您可以在没有用户登录 Windows 时使用它来运行命令。

无论如何,Windows 服务是我知道的唯一方法(无需禁用 UAC 或以其他方式修改默认的 Windows 安全配置)。

请参阅我对这个问题的回答以获取一些提示:

UAC and remote control

如果您的 Python 代码以 Windows 服务的权限运行,它应该能够与系统上的任何 UI 交互(或者至少启动可以与安全 UI 交互的其他进程),包括 Windows 登录桌面。

唯一令人头疼的可能是为了与 Winlogon 桌面交互,您的测试代码可能需要使用 CreateProcessAsUser 函数启动一个单独的程序(并将“Winsta0\Winlogon”作为桌面参数传递)。不过不确定。

这个答案看起来也可能对您的情况有所帮助:

Running a process at the Windows 7 Welcome Screen

关于python - UI 自动化 Windows 用户登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12209488/

相关文章:

python - 用漂亮的汤从html标签中提取字符串

python - Django Shell API KeyError

python - 如何在 web2py 中获取内部网应用程序的 Windows 用户 ID?

powershell - 了解哈希表数组的唯一性

powershell - PowerShell:获取两个字符串之间的数据

python - 区分具有相同名称的 html 表单 SELECT 项目

python - 从字符串中拆分并删除整行

python - 我在哪里保存 .py 文件,以便我可以从 python 解释器(从 powershell )导入它

windows - 在 Windows 机器上练习 Unix

azure - Powershell - 列出特定管理组的订阅