【转】NO.2、Appium之IOS第一个demo
接第一篇:Appium之iOS环境搭建
http://blog.csdn.net/clean_water/article/details/52946191
这个实例继承了unittest,重写了它的setUp()、tearDown()
共四个方法,包含两个用例方法:
1.setUp():重写的unittest方法,每一条用例执行最初被调用,一般这里会写获得driver的方法,供用例使用。这里写了获得appium的driver的方法。
2.tearDown():重写的unittest方法,每一条用例执行最后被调用,一般这里写driver销毁的方法。这里写了pass,代表什么都不做,很多时候用例顺序执行,tearDown确实不需要做什么。
3.test_case1_1:第一个用例,实现登录功能。注意--注意--注意:它最初会调用setUp、最后会调用tearDown,这是unittest的潜规则。
4.test_case1_2:第二个用例,实现退出功能。注意--注意--注意:它最初会调用setUp、最后会调用tearDown,这是unittest的潜规则。
注意:用例执行顺序根据名称排序,此处先执行test_case1_1,再执行test_case1_2,每个用例执行最初会调用setUp(),执行最后会调用tearDown(),这是unittest的潜规则。
实例代码:
===================================================
# -*- coding: UTF-8 -*-
import unittest
from appium import webdriver
class LoginIOSTests(unittest.TestCase):
# 重写unittest的setUp方法,连接appium,包含了设备参数
def setUp(self):
self.driver = webdriver.Remote(
command_executor='http://127.0.0.1:4723/wd/hub',
desired_capabilities={
'deviceName': '',
'platformName': 'iOS',
'app': 'com.cmcc.hbb.iphone.teachers.test'
})
# 重写unittest的tearDown,里边什么都不做
def tearDown(self):
pass
def test_case1_1(self):
# 输入用户名
self.find_element('XPATH',"//UIAApplication[1]/UIAWindow[1]/UIATextField[1]").clear()
self.find_element('XPATH',"//UIAApplication[1]/UIAWindow[1]/UIATextField[1]").send_keys("17799999999")
# 输入密码
self.find_element('XPATH',"//UIAApplication[1]/UIAWindow[1]/UIASecureTextField[1]").clear()
self.find_element('XPATH',"//UIAApplication[1]/UIAWindow[1]/UIASecureTextField[1]").send_keys("999999")
# 点击登陆
self.find_element('NAME',u"登录").click()
# 如果能找到这个元素,则登陆成功
self.assertIsNotNone(self.find_element('NAME', u"班级圈"))
def test_case1_2(self):
# 点击退出
self.find_element('NAME', u"退出").click()
# 如果能找到登陆页面的'登陆'元素,则退出成功
self.assertIsNotNone(self.find_element('NAME', u"登录"))
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步