欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

初探自动化测试框架(python)第十一章——appnium一个小例子

程序员文章站 2022-03-22 13:11:38
...

运行APPIUM

  • 通过客户端
    初探自动化测试框架(python)第十一章——appnium一个小例子
  • 通过CMD

appium -a 127.0.0.1 -p 4727 -bp 4728 -Uxiaomi --session -override

-bp 是连接Android设备bootstrap的端口号,默认是4723(也可写成–bootstrap-port)
-U 是连接的设备名称,如"adb devices"获取的设备标识(也可写成–udid)
更多参数和执行方法

  • 写成方法
def appstop():
    pids = psutil.pids()
    for pid in pids:
        p = psutil.Process(pid)
        # print('pid-%s,pname-%s' % (pid, p.name()))
        if 'Appium.exe' in p.name():
            cmd = 'taskkill /F /IM Appium.exe'
            os.system(cmd)
            print('stop appium')

def appstart(devices = '7XBNW18C10005211'):
    cmd = 'start /b appium -a 127.0.0.1 -p 4723 -bp 4728 --chromedriver-port 9519 -U %s --session-override --no-reset' %devices
    os.system(cmd)
    print('start appium')

运行脚本

class ClockIn(unittest.TestCase):
    @classmethod
    def setUpClass(self):
        time.sleep(random.randint(1, 30))
        yang = YamlReader(USERINFO).get('name')
        for i,v in yang.items():
            self.username=i
            self.password=v
        desired_caps = {}
        desired_caps['platformName'] = 'Android'
        desired_caps['platformVersion'] = '9.1'
        desired_caps['deviceName'] = 'huawei'
        desired_caps['appPackage'] = 'com.seeyon.cmp'
        desired_caps['appActivity'] = '.ui.LoadActivity'
        self.dr = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)

    def test1_login(self):
        time.sleep(3)
        username = YamlReader(USERINFO).get('OAUSER')
        password = YamlReader(USERINFO).get('OAPSWD')
        M3OALogin(self.dr).uesernametext(username)
        M3OALogin(self.dr).pswdtext(password)
        M3OALogin(self.dr).surebtn()
        try:
            self.dr.find_element_by_xpath("//android.widget.Button[@text='跳过']")
            self.dr.find_element_by_xpath("//android.widget.Button[@text='跳过']").click()
            print('跳过势密码设置')
        except Exception:
            print('无手势密码设置')
        try:
            self.dr.find_element_by_name("提示")
            self.dr.find_element_by_name("我知道了").click()
            time.sleep(1)
            self.dr.keyevent(4)
            print('跳过弱密码修改')
        except Exception:
            print('无弱密码修改')
        print(username)

后续集成与WEB端大同小异就不做介绍了

相关标签: 自动化测试