#!usr/bin/env python #-*- coding:utf-8 -*- """ ab @author: sleeping_cat @Contact : zwy24zwy@163.com """ #浏览器中新开标签页(Tab) import unittest from selenium import webdriver import time import win32api,win32con VK_CODE={'ctrl':0x11,'t':0x54,'tab':0x09} def keyDown(keyName): win32api.keybd_event(VK_CODE[keyName],0,0,0) def keyUp(keyName): win32api.keybd_event(VK_CODE[keyName],0,win32con.KEYEVENTF_KEYUP,0) def simulateKey(firstKey,secondKey): keyDown(firstKey) keyDown(secondKey) keyUp(secondKey) keyUp(firstKey) class TestDemo(unittest.TestCase): def setUp(self): self.driver = webdriver.Firefox() def test_newTab(self): time.sleep(3) #使用for循环,再新开两个新的标签页 for i in range(2): simulateKey('ctrl','t') #使用Ctrl+tab组合件,将当前页面切换为默认页面,也就是最先打开的标签页 simulateKey('ctrl','tab') self.driver.get('http://sogou.com') self.driver.find_element_by_id('query').send_keys('光荣之路') self.driver.find_element_by_id('stb').click() time.sleep(3) self.assertTrue('乔什·卢卡斯'in self.driver.page_source) all_handles = self.driver.window_handles print(len(all_handles)) #将当前窗口句柄切换至第二个标签页 self.driver.switch_to.window(all_handles[1]) self.driver.get('http://www.baidu.com') self.driver.find_element_by_id('kw').send_keys('WebDriver实战宝典') self.driver.find_element_by_id('su').click() time.sleep(3) self.assertTrue('吴晓华' in self.driver.page_source) self.driver.switch_to.window(all_handles[2]) self.driver.get('http://www.baidu.com') self.driver.find_element_by_id('kw').send_keys('selenium') self.driver.find_element_by_id('su').click() time.sleep(3) self.assertTrue('www.seleniumhq.org' in self.driver.page_source) def tearDown(self): self.driver.quit() if __name__ == '__main__': unittest.main()
转载于:https://www.cnblogs.com/sleeping-cat/p/8278576.html