#coding:utf-8
from appium import webdriver
import time
import unittest
import os
import HTMLTestRunner
from selenium.webdriver.support.ui import WebDriverWait
class LoginTest(unittest.TestCase):
def setUp(self):
desired_caps={}
desired_caps['platformName'] = 'Android'
desired_caps['deviceName'] = 'D1CGAPE6C2902581'
desired_caps['platformVersion'] = '7.1.1'
desired_caps['appPackage'] = 'appPackage'
desired_caps['appActivity'] = 'appActivity'
desired_caps['noReset'] = True
desired_caps['resetKeyboard'] = True
desired_caps['unicodeKeyboard'] = True
self.driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub',desired_caps)
def test_login(self):
driver = self.driver
# 获得机器屏幕大小x,y
def getSize():
x = driver.get_window_size()['width']
y = driver.get_window_size()['height']
return (x, y)
# 屏幕向上滑动
def swipeUp(t):
l = getSize()
x1 = int(l[0] * 0.5) # x坐标
y1 = int(l[1] * 0.75) # 起始y坐标
y2 = int(l[1] * 0.25) # 终点y坐标
driver.swipe(x1, y1, x1, y2, t)
# 跳转到登录界面清空账号输入框并输入用户名
driver.find_element_by_id('et_account').clear()
driver.find_element_by_id('et_account').set_value('18912345678')
# 清空密码输入框并输入密码
driver.find_element_by_id('et_password').clear()
driver.find_element_by_id('et_password').set_value('123456')
ac1 = driver.current_activity
# 点击登录按钮
driver.find_element_by_id('bt_login').click()
time.sleep(5)
# 点击商品管理模块
driver.find_element_by_xpath("//*[@class='android.widget.RelativeLayout'][1]").click()
#点击添加新商品按钮
driver.find_element_by_id('tv_add_goods').click()
#填写商品相关信息
#添加商品图片
driver.find_element_by_id('item_add').click()
driver.find_element_by_id('checkmark').click()
driver.find_element_by_id('commit').click()
time.sleep(2)
# 添加商品名称
driver.find_element_by_id('et_add_new_goods_name').click()
driver.find_element_by_id('et_add_new_goods_name').set_value('goods')
time.sleep(2)
#添加商品描述文字
driver.find_element_by_id('tv_add_new_goods_desc').click()
driver.find_element_by_id('et_good_desc').set_value('description')
driver.hide_keyboard()
#添加商品描述图片
driver.find_element_by_id('tv_add_pic').click()
driver.find_element_by_id('checkmark').click()
driver.find_element_by_id('commit').click()
driver.find_element_by_id('tv_complete').click()
time.sleep(2)
#选择商品分类
driver.find_element_by_id('tv_add_new_goods_type').click()
driver.find_element_by_id('item_tv_name').click()
#输入商品型号
driver.find_element_by_id('item_model').set_value('size')
driver.hide_keyboard()
time.sleep(2)
driver.find_element_by_id('item_now').set_value('9.9')
driver.hide_keyboard()
time.sleep(2)
swipeUp(1000) #库存输入框没有显示,上滑界面将库存显示出来
driver.find_element_by_id('item_stock').click()
driver.find_element_by_id('item_stock').set_value(u'10')
#点击保存按钮
driver.find_element_by_id('tv_wait_set').click()
time.sleep(2)
def tearDown(self):
self.driver.quit()
if __name__ =='__main__':
unittest.main()
我的第二个Python+Appium脚本之APP添加商品

最新推荐文章于 2024-11-08 11:00:51 发布
