Unitest之Test Fixture
setup():相当于进行一些初始化操作,并且每个函数执行的时候都会调用一次testcase():相当于我们的函数teardown():相当于我们释放资源的操作,进行一些后续收尾的工作新建一个unitestdemo的python的file代码:#usr/bin/python#encoding:utf-8import timefrom appium import webdriverimpo
·
setup():相当于进行一些初始化操作,并且每个函数执行的时候都会调用一次
testcase():相当于我们的函数
teardown():相当于我们释放资源的操作,进行一些后续收尾的工作
新建一个unitestdemo的python的file
代码:
#usr/bin/python
#encoding:utf-8
import time
from appium import webdriver
import unittest
class MyTestCase(unittest.TestCase):
#这个相当于我们初始化的方法,或者类比web自动化的testNg中的beforeClass
def setUp(self):
desired_caps = {}
#操作的设备类型
desired_caps['platformName'] = 'Android'
#设备版本
desired_caps['platformVersion'] = '6.0'
#设备名称
desired_caps['deviceName'] = 'emulator-5554'
#操作设备App的包名
desired_caps['appPackage'] = 'com.ss.android.article.news'
#启动页activity
desired_caps['appActivity'] = '.activity.SplashBadgeActivity'
desired_caps["unicodeKeyboard"] = "True"
desired_caps["resetKeyboard"] = "True"
#appium配置
self.driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
#类比函数
def testLoginIsOk(self):
self.driver.find_element_by_id("b2d").click()
try:
if self.driver.find_element_by_id("b2d").is_displayed():
exist=True
except Exception, e:
# 如果这个按钮没有显示,那么我们代表上面的if判断失败,执行下面的语句
exist = False
#断言比较
self.assertEqual(False, False)
#类比函数
def testLoginIsFailure(self):
self.driver.find_element_by_id("b2").click()
try:
if self.driver.find_element_by_id("b2d").is_displayed():
exist=True
except Exception, e:
exist=False
self.assertEqual(True, True)
#类比afterclass一般是进行一些释放资源的操作
def tearDown(self):
# 释放资源
self.driver.quit()
if __name__ == '__main__':
unittest.main()
上述整体是进入今日头条并点击搜索框的操作
更多推荐
已为社区贡献4条内容
所有评论(0)