(一)自动化测试的实例(以浏览器为例)
# -*- coding: UTF-8 -*-__author__ = 'xxy'# 将所需要的包导入import timeimport unittestfrom appium import webdriver# 配置设备信息desired_caps = { 'platformName': 'Android', 'deviceName': '0123456789ABCDEF', 'platformVersion': '4.4.2', 'appPackage': 'com.android.launcher3', 'appActivity': 'com.android.launcher3.Launcher', 'unicodeKeyboard':True, 'resetKeyboard':True }# 1.定义测试类,父类为unittest.TestCasseclass AppTest(unittest.TestCase):# 2.定义setup()方法,用于执行测试用例前的初始化工作# 注意,所有类中方法的入参为self,定义方法的变量也要“self.变量 def setUp(self): self.driver=webdriver.Remote('http://127.0.0.1:4723/wd/hub',desired_caps)# 3.定义tearDown方法,用于测试用例结束后的善后工作(关闭服务器,关闭数据库之类的) def tearDown(self): self.driver.quit() #滑动屏幕的方法 def getSize(self): x=self.driver.get_window_size()['width'] y=self.driver.get_window_size()['height'] return (x,y) #向上滑 def swipeTop(self,ti): #先获取屏幕的高度和宽度,ti代表滑动的时间,以毫秒为单位1000毫秒=1秒 z=self.getSize() x1=int(z[0]*0.5) # 获取x坐标 y1=int(z[1]*0.75) # 起始y坐标 y2=int(z[1]*0.25) # 终点y坐标 self.driver.swipe(x1,y1,x1,y2,ti) #向下滑 def swipeDown(self,ti): z=self.getSize() x1=int(z[0]*0.5) y1=int(z[1]*0.25) y2=int(z[1]*0.75) self.driver.swipe(x1,y1,x1,y2,ti) #向右滑 def swipeRight(self,ti): z=self.getSize() x1=int(z[0]*0.25) y1=int(z[1]*0.5) x2=int(z[0]*0.75) self.driver.swipe(x1,y1,x2,y1,ti) #向左滑 def swipeLeft(self,ti): z=self.getSize() x1=int(z[0]*0.95) y1=int(z[1]*0.5) x2=int(z[1]*0.1) self.driver.swipe(x1,y1,x2,y1,ti)#4.写测试用例,测试用例的方法名必须要以test_开头#浏览器 def test_Browser(self): self.driver.start_activity('com.android.browser','com.android.browser.BrowserActivity') # 1.定位到搜索框 url=self.driver.find_element_by_id('com.android.browser:id/url') # 清空地址栏内容 url.clear() # 2.在输入框中输入网址:www.baidu.com url.send_keys('www.baidu.com') time.sleep(10) #搜索键的键值为66 self.driver.keyevent(66) time.sleep(20) #上下滑动(我将上下左右都写成了方法,直接调用就可以) AppTest.swipeTop(self,10000) time.sleep(5) AppTest.swipeDown(self,10000) time.sleep(5) #点击更多按钮 more=self.driver.find_element_by_accessibility_id('更多选项') more.click() time.sleep(5) #点击刷新按钮 fresh=self.driver.find_element_by_id('android:id/title') fresh.click() time.sleep(5) #按Home键 self.driver.keyevent(3)if __name__=='__main__': #实例化测试套件 suit=unittest.TestSuite() #将测试用例加到测试套件中 suit.addTest(AppTest('test_Browser')) #实例化TextTestRunner类,要使用这个类下面的run()方法来执行用例 testrun=unittest.TextTestRunner() #使用run()方法执行套件里面的用例 testrun.run(suit)***以上的浏览器只做了一些简单的操作,仅作简单参考作用
来源:博客园
作者:xxy会飞的鱼
链接:https://www.cnblogs.com/xiongxiaoyan/p/11412374.html