'send_keys(Keys.CONTROL + "A") 的问题,仅适用于 Windows 或 Linux
Issues with 'send_keys(Keys.CONTROL + "A"), only works on Windows or Linux
我正在做一个自动化框架项目(Pytest 和 Selenium),我有几个流程需要在表单中编辑数据,所以我们一直使用的方法是 select 现有的使用 Send Keys
文本(来自文本框或下拉列表),然后只需“单击”CONTROL + A,然后我们也使用 Send Keys
来单击Backspace 删除文本并添加新文本。
这在 Windows 和 Linux 上完美运行,但显然它在 Mac 计算机上不起作用,我们在实施解决方案时考虑过,但我们没有有问题,因为每个人都在使用 Windows 台计算机(也是 CI 中的服务器)。
我一直在寻找解决方案,似乎有很多人遇到同样的问题,但大多数解决方案并不适用于所有人。我尝试了以下方法:
- 双击 select 文本 --> 无效
- 不要删除文本,只需向现有文本添加新文本 --> 仅适用于文本框,不适用于下拉菜单。
- 检测 OS 并使用
Command
如果它检测到 Mac 和 Control
如果它检测到 Windows 或 Linux - -> 但它没有用。
我认为主要问题是 Ctrl
确实存在于 Mac 上,但它不适用于 selecting 文本,因此它执行操作,但它不'做我们期望的事情。
有没有一种方法可以使 select 文本适用于所有 OS,或者有没有更简洁的方法来使用 Python?
在 config.py 文件中添加了以下 if 语句:
self.control_os = Keys.COMMAND if platform.system() == 'Darwin' else Keys.CONTROL
我正在做一个自动化框架项目(Pytest 和 Selenium),我有几个流程需要在表单中编辑数据,所以我们一直使用的方法是 select 现有的使用 Send Keys
文本(来自文本框或下拉列表),然后只需“单击”CONTROL + A,然后我们也使用 Send Keys
来单击Backspace 删除文本并添加新文本。
这在 Windows 和 Linux 上完美运行,但显然它在 Mac 计算机上不起作用,我们在实施解决方案时考虑过,但我们没有有问题,因为每个人都在使用 Windows 台计算机(也是 CI 中的服务器)。
我一直在寻找解决方案,似乎有很多人遇到同样的问题,但大多数解决方案并不适用于所有人。我尝试了以下方法:
- 双击 select 文本 --> 无效
- 不要删除文本,只需向现有文本添加新文本 --> 仅适用于文本框,不适用于下拉菜单。
- 检测 OS 并使用
Command
如果它检测到 Mac 和Control
如果它检测到 Windows 或 Linux - -> 但它没有用。
我认为主要问题是 Ctrl
确实存在于 Mac 上,但它不适用于 selecting 文本,因此它执行操作,但它不'做我们期望的事情。
有没有一种方法可以使 select 文本适用于所有 OS,或者有没有更简洁的方法来使用 Python?
在 config.py 文件中添加了以下 if 语句:
self.control_os = Keys.COMMAND if platform.system() == 'Darwin' else Keys.CONTROL