• 【转】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"登录"))

  • 相关阅读:
    [crontab]修改默认编辑器
    [mysql]忘记用户密码或者误删用户账号
    [vim]多行注释和多行删除
    [mysql]my.cnf在哪里
    [python]有中文字符程序异常的解决方案
    [Linux]虚拟机无法安装deepin15.9的解决方案
    Elasticsearch5.X IN Windows 10 系列文章(2)
    Elasticsearch5.X IN Windows 10 系列文章(1)
    HTTP Error 502.5
    centos7 yum install redis
  • 原文地址:https://www.cnblogs.com/xiyuan2016/p/7448252.html
Copyright © 2020-2023  润新知