from appium import webdriver
from Uiframe0test.public.faxian import FaXian
import unittest
import time
import os
class AndroidTests(unittest.TestCase):def setUp(self):desired_caps = {} # 定义了一个字典,下面是字典里面的值desired_caps['platformName'] = 'android' # 平台名称,如果是苹果,则写ios(小写)desired_caps['platformVersion'] = '8.0' # 手机系统版本号,与测试手机版本一致desired_caps['deviceName'] = 'Android Emulator' # 设备名,appium不强制检查此参数值,只要有值即可desired_caps['noReset'] = 'True' # 退出APP时,不重置APP的数据desired_caps['appPackage'] = 'cn.xiaochuankeji.tieba' # 包名,每个APP就是通过包名来唯一区分desired_caps['appActivity'] = '.ui.base.SplashActivity' # 首个界面的activitydesired_caps['unicodeKeyboard'] = 'True' # 给手机安装一个appium的输入法desired_caps['resetKeyboard'] = 'True' # 重置键盘,使appium输入法为默认输入法#desired_caps['fullReset'] = 'True' #在初始化时添加这个参数后,每次跑完之后就会把APP卸载掉#desired_caps['app'] = 'D:BaiduNetdiskDownloadzuiyou518.apk' #每次开始时会先安装APPdesired_caps['automationName'] = 'Uiautomator2'self.driver = webdriver.Remote('localhost:4723/wd/hub', desired_caps) # 初始化driverprint("starttime:" + time.strftime('%Y-%m-%d-%H-%M-%S', time.localtime(time.time())))
def tearDown(self):filedir = 'D:/test/screenshot/'TIME = time.strftime('%Y-%m-%d-%H-%M-%S', time.localtime(time.time()))if not ists(filedir):os.makedirs(os.path.join('D:/', 'test', 'screenshot'))print('endTime:' + TIME)screen_name = filedir + TIME + '.png'_screenshot_as_file(screen_name)self.driver.quit()
def testfaxian02_01(self):'''验证发现页面跳转功能'''self.driver.implicitly_wait(60)ele1 = self.driver.find_element_by_xpath("//android.widget.TextView[@text='发现']") # 发现ele1.click() #点击发现self.driver.implicitly_wait(10)ele2 = self.driver.find_element_by_xpath("//android.widget.TextView[@text='扩列']")self.assertEqual("扩列",)
def testfaxian02_02(self):'''进入发现-右友页面'''FaXian(self.driver).faxian()self.driver.implicitly_wait(10)yy = self.driver.find_element_by_xpath("//android.widget.ImageView[@resource-id='cn.xiaochuankeji.tieba:id/ivWeb_cover']")yy.click() #进入右友页面self.driver.implicitly_wait(10)ele1= self.driver.find_element_by_xpath("//android.widget.TextView[@text='好友']")ele2 = self.driver.find_element_by_xpath("//android.widget.TextView[@text='推荐']")ele3 = self.driver.find_element_by_xpath("//android.widget.TextView[@text='最新']")self.assertEqual("好友", )self.assertEqual("推荐", )self.assertEqual("最新", )
def testfaxian02_03(self):'''在右友里面选择帖子并点赞'''FaXian(self.driver).faxian()self.driver.implicitly_wait(10)self.driver.find_element_by_xpath("//android.widget.ImageView[@resource-id='cn.xiaochuankeji.tieba:id/ivWeb_cover']").click() # 进入右友页面self.driver.implicitly_wait(10)aa = self.driver.find_element_by_id("cn.xiaochuankeji.tieba:id/like_num") #记录初始点赞数bb= aa.textself.driver.find_element_by_id("cn.xiaochuankeji.tieba:id/like_icon").click() #点赞cc = aa.text #点赞后点赞数self.assertEqual(int(bb)+1,int(cc)) #点赞后数目加1
from appium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import unittest
import time
import os
def testshouye01_01(self):'''验证首页导航栏文案显示是否正常'''self.driver.implicitly_wait(60)ele1 = self.driver.find_element_by_xpath("//android.widget.TextView[@text='关注']") # 关注ele2 = self.driver.find_element_by_xpath("//android.widget.TextView[@text='话题']") # 话题ele3 = self.driver.find_element_by_xpath("//android.widget.TextView[@text='推荐']") # 推荐ele4 = self.driver.find_element_by_xpath("//android.widget.TextView[@text='视频']") # 视频ele5 = self.driver.find_element_by_xpath("//android.widget.TextView[@text='图文']") # 图文ele6 = self.driver.find_element_by_xpath("//android.widget.TextView[@text='生活']") # 生活self.assertEqual("关注", )self.assertEqual("话题", )self.assertEqual("推荐", )self.assertEqual("视频", )self.assertEqual("图文", )self.assertEqual("生活", )time.sleep(5)self.driver.swipe(900,150,400,150,3000) #将生活左滑到推荐,生活:[801,116][924,173] 推荐:[342,109][465,180]time.sleep(10)ele7 = self.driver.find_element_by_xpath("//android.widget.TextView[@text='语玩']") # 语玩ele8 = self.driver.find_element_by_xpath("//android.widget.TextView[@text='游戏']") # 游戏ele9 = self.driver.find_element_by_xpath("//android.widget.TextView[@text='三坑']") # 三坑self.assertEqual("语玩", )self.assertEqual("游戏", )self.assertEqual("三坑", )
def testshouye01_02(self):'''验证首页功能模块文案显示是否正常'''self.driver.implicitly_wait(60)ele1 = self.driver.find_element_by_xpath("//android.widget.TextView[@text='最右']") # 最右ele2 = self.driver.find_element_by_xpath("//android.widget.TextView[@text='发现']") # 发现ele3 = self.driver.find_element_by_xpath("//android.widget.TextView[@text='消息']") # 消息ele4 = self.driver.find_element_by_xpath("//android.widget.TextView[@text='我的']") # 我的self.assertEqual("最右", )self.assertEqual("发现", )self.assertEqual("消息", )self.assertEqual("我的", )
def testshouye01_03(self):'''验证发布帖子功能'''self.driver.implicitly_wait(60)ele1 = self.driver.find_elements_by_id("cn.xiaochuankeji.tieba:id/iconTabItem")[2] #新建帖子入口ele1.click() # 点击self.driver.implicitly_wait(10)ele2 = self.driver.find_element_by_xpath("//android.widget.EditText[@text='我的快乐源泉']") # 输入框text = "我的快乐源泉最右APP" + time.strftime('%Y-%m-%d-%H-%M-%S', time.localtime(time.time()))ele2.send_keys(text) # 输入内容self.driver.find_elements_by_id("cn.xiaochuankeji.tieba:id/tvTopicName")[0].click() #选择推荐的第一个话题self.driver.find_element_by_xpath("//android.widget.TextView[@text='发布']").click() # 点击发布#断言sendContent = self.driver.find_elements_by_id("cn.xiaochuankeji.tieba:id/expand_content_view")List = [] #定义列表for i in range(0,len(sendContent)):List.append(sendContent[i].text) #将控件上的文本信息全部追加到列表中List = "".join(List) #将列表转换成字符串self.assertIn(text,List) #如果发帖内容在列表中,说明发帖成功
def testshouye01_04(self):'''验证关注功能'''time.sleep(10)while True:try:self.driver.find_element_by_id("cn.xiaochuankeji.tieba:id/v_epaulet_follow").click()breakexcept:height = _window_size()['height']width = _window_size()['width']self.driver.swipe(width * 0.5, height * 0.8, width * 0.5, height * 0.2, 1000) # 当关注没有显示时,上滑#断言toast = ("xpath", '//*[contains(@text,"关注成功")]')# 最大等待时间10秒,每隔0.1秒检测1次,直到当前界面存在了关注成功提示ele = WebDriverWait(self.driver, 10, 0.1).until(EC.presence_of_element_located(toast))self.assertEqual("关注成功",)
def testshouye01_05(self):'''验证页面刷新功能'''self.driver.implicitly_wait(60)name = self.driver.find_elements_by_id("cn.xiaochuankeji.tieba:id/simple_member_tv_name")[0]aa = #第一条帖子的用户名称self.driver.implicitly_wait(10)self.driver.find_element_by_xpath("//android.widget.ImageView[@resource-id='cn.xiaochuankeji.tieba:id/home_refresh_view']").click() # 刷新当前界面self.driver.implicitly_wait(10)#断言bb = self.driver.find_elements_by_id("cn.xiaochuankeji.tieba:id/simple_member_tv_name")[0]self.assertNotEqual()
def testshouye01_06(self):'''验证帖子屏蔽功能'''self.driver.implicitly_wait(60)ele1 = self.driver.find_element_by_xpath("//android.widget.ImageView[@resource-id='cn.xiaochuankeji.tieba:id/simple_decorator_delete']")ele1.click() # 屏蔽用户self.driver.find_element_by_xpath("//android.widget.TextView[@text='不喜欢该用户']").click() # 选择屏蔽原因toast = ("xpath", '//*[contains(@text,"将减少类似内容推荐")]')# 最大等待时间20秒,每隔0.1秒检测1次,直到当前界面存在了关注成功提示ele2 = WebDriverWait(self.driver, 10, 0.1).until(EC.presence_of_element_located(toast))self.assertEqual("将减少类似内容推荐", )
def testshouye01_07(self):'''验证搜索功能'''self.driver.implicitly_wait(60)ele = self.driver.find_element_by_id("cn.xiaochuankeji.tieba:id/ic_search_b") .click() # 点击首页-搜索self.driver.implicitly_wait(10)search = self.driver.find_element_by_class_name("android.widget.EditText") # 搜索-输入框search.send_keys('圣诞节')time.sleep(5)self.driver.keyevent(84) # 搜索aa= self.driver.find_element_by_xpath("//android.widget.EditText[@resource-id='cn.xiaochuankeji.tieba:id/container_search_input']")bb = aa.text #获取搜索框中的内容title = self.driver.find_elements_by_id("cn.xiaochuankeji.tieba:id/title") #搜索内容title列表List = []for i in range(0,len(title)):List.append(title[i].text)List = "".join(List)self.assertIn("圣诞节",List)
from appium import webdriver
from Uiframe0test.public.xiaoxi import XiaoXi
import unittest
import time
import os
def testxiaoxi03_01(self):'''验证消息页面跳转功能'''self.driver.implicitly_wait(60)ele = self.driver.find_element_by_xpath("//android.widget.TextView[@text='消息']") # 消息ele.click()self.driver.implicitly_wait(10)ele1 = self.driver.find_element_by_xpath("//android.widget.TextView[@text='提醒']") # 提醒ele2 = self.driver.find_element_by_xpath("//android.widget.TextView[@text='私信']") # 私信self.assertEqual("提醒", )self.assertEqual("私信", )
def testxiaoxi03_02(self):'''私信列表底部显示'''XiaoXi(self.driver).xiaoxi()self.driver.implicitly_wait(10)self.driver.find_element_by_xpath("//android.widget.TextView[@text='私信']").click() # 点击私信while True:try:ele = self.driver.find_element_by_xpath("//android.widget.TextView[@text='没有更多啦~']")self.assertEqual("没有更多啦~", )breakexcept:height = _window_size()['height']width = _window_size()['width']self.driver.swipe(width * 0.5, height * 0.8, width * 0.5, height * 0.2, 1000) # 上滑
def testxiaoxi03_03(self):'''删除一条私信功能'''XiaoXi(self.driver).xiaoxi()self.driver.implicitly_wait(10)self.driver.find_element_by_xpath("//android.widget.TextView[@text='私信']").click() # 点击私信name1 = self.driver.find_elements_by_id("cn.xiaochuankeji.tieba:id/name")aa = name1[0].text #删除前第一条私信用户名self.driver.find_element_by_id("cn.xiaochuankeji.tieba:id/ivBtn_delete_batch").click() #点击删除按钮self.driver.implicitly_wait(10)self.driver.find_elements_by_id("cn.xiaochuankeji.tieba:id/ivBtn_select")[0].click() # 选择第一条私信self.driver.implicitly_wait(10)self.driver.find_element_by_id("cn.xiaochuankeji.tieba:id/vBtn_delete").click() #点击删除self.driver.implicitly_wait(10)self.driver.find_element_by_id("cn.xiaochuankeji.tieba:id/ZYDialog_positive_btn").click() #点击确认self.driver.implicitly_wait(10)name2 = self.driver.find_elements_by_id("cn.xiaochuankeji.tieba:id/name")bb = name2[0].text #删除后第一条私信用户名self.assertNotEqual(aa,bb)
def testxiaoxi03_04(self):'''消息-提醒页面显示'''XiaoXi(self.driver).xiaoxi()self.driver.find_element_by_xpath("//android.widget.TextView[@text='提醒']").click()self.driver.implicitly_wait(10)ele1 = self.driver.find_element_by_xpath("//android.widget.TextView[@text='小右通知']")ele2 = self.driver.find_element_by_xpath("//android.widget.TextView[@text='收到的@']")ele3 = self.driver.find_element_by_xpath("//android.widget.TextView[@text='新增粉丝']")ele4 = self.driver.find_element_by_xpath("//android.widget.TextView[@text='好友请求']")self.assertEqual("小右通知",)self.assertEqual("收到的@", )self.assertEqual("新增粉丝", )self.assertEqual("好友请求", )
def testxiaoxi03_05(self):'''消息-提醒页面为空时界面显示'''XiaoXi(self.driver).xiaoxi()self.driver.find_element_by_xpath("//android.widget.TextView[@text='提醒']").click()self.driver.implicitly_wait(10)ele = self.driver.find_element_by_xpath("//android.widget.TextView[@text='网络一线牵,主动才有缘~']")self.assertEqual("网络一线牵,主动才有缘~", )
class FaXian(object):def __init__(self, driver):self.driver = driverdef faxian(self):self.driver.implicitly_wait(60)ele1 = self.driver.find_element_by_xpath("//android.widget.TextView[@text='发现']") # 发现ele1.click() # 点击发现
import time
class createlog(object):def __init__(self, driver): #封装了一个init方法self.driver = driver #将driver赋值给self.driverdef log(self):time.sleep(3)self.driver.find_element_by_xpath("//div[@class='container']/ul/a[5]/li").click() # 点击日志time.sleep(3)self.driver.find_element_by_xpath("//main[@class='el-main']/div/div/button/span").click() # 写日志time.sleep(3)
import timeclass Mylogin(object):def __init__(self, driver):self.driver = driverdef login(self):self.driver.implicitly_wait(60)self.driver.find_element_by_id("cn.xiaochuankeji.tieba:id/me_item").click()time.sleep(2)self.driver.find_element_by_id("cn.xiaochuankeji.tieba:id/tv_notLogin_goLogin").click()time.sleep(1)self.driver.find_element_by_id("cn.xiaochuankeji.tieba:id/login_mode").click()self.driver.find_element_by_id("cn.xiaochuankeji.tieba:id/phone_num_edit").send_keys("15127409611")self.driver.find_element_by_id("cn.xiaochuankeji.tieba:id/code_edit").send_keys("a123456")self.driver.find_element_by_id("cn.xiaochuankeji.tieba:id/login").click()time.sleep(5)
import timeclass XiaoXi(object):def __init__(self, driver):self.driver = driverdef xiaoxi(self):self.driver.implicitly_wait(60)self.driver.find_element_by_xpath("//android.widget.TextView[@text='消息']").click() # 消息time.sleep(5)
本文发布于:2024-02-01 20:22:10,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170679012939209.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |