输入法问题: 如果输入某个东西, 卡在输入法上 : 可以设置输入法为英文输入法
# 切换为英文输入法
def shift_en(element):
flag = True
while flag:
user32 = ctypes.WinDLL('user32', use_last_error=True)
curr_window = user32.GetForegroundWindow()
thread_id = user32.GetWindowThreadProcessId(curr_window, 0)
klid = user32.GetKeyboardLayout(thread_id)
lid = klid & (2 ** 16 - 1)
lid_hex = hex(lid)
# print(lid_hex)
if lid_hex == '0x409':
# print('当前的输入法状态是英文输入模式\n')
flag = False
elif lid_hex == '0x804':
# print('当前的输入法是中文输入模式\n')
element.send_keys(Keys.META, Keys.SPACE)
# print('建议删除多余输入法,只保留两种输入法\n')
else:
element.send_keys(Keys.META, Keys.SPACE)
print('当前的输入法既不是英文输入也不是中文输入\n建议删除多余输入法,只保留两种输入法')
time.sleep(1)
一些 难以断言的 可以使用图片进行截图保存, 运行完后, 查看图片,图片命名最好带时间戳, 方便后续图片也能存储,不至于重名
@pytest.mark.run(order=700003)
@allure.title("查看截图、录屏默认快捷键")
def test_查看截图_录屏默认快捷键(self):
try:
# 上一次是为了避免, 滚轴在下方所以关闭,重新来第二次
# 点击头像
self.driver.find_element(By.XPATH, '//Pane[@Name="Hwork"]/Document[@Name="Hwork"]/Image').click()
self.driver.find_element(By.XPATH,
'//Pane[@Name="Hwork"]/Document[@Name="Hwork"]/ToolTip/Text[@Name="设置"]').click()
ActionChains(self.driver).move_to_element(self.driver.find_element(By.XPATH,
'//Pane[@Name="Hwork"]/Document[@Name="Hwork"]/ComboBox')).perform()
pyautogui.scroll(-400)
time.sleep(1)
pyautogui.scroll(-400)
time.sleep(1)
photo = self.driver.find_element(By.XPATH,
'//Pane[@Name="Hwork"]/Document[@Name="Hwork"]/Edit[@Name="点击设置快捷键"]').screenshot_as_png
time
filepath = get_photopath() + "\\test_WinPC\\photo\\" + "设置PC_查看截图_录屏默认快捷键"+time.strftime('%Y%m%d_%H%M%S')+".png"
print(filepath)
# 将二进制保存成图片形式
file = open(filepath, "wb")
file.write(photo)
self.driver.find_element(By.XPATH,
'//Pane[@Name="Hwork"]/Document[@Name="Hwork"]/Text[@Name="设置"]//following-sibling::Image').click()
finally:
self.driver.close()