Files
smart-management-auto-test/zhyy/test_case/TestCase/UI自动化/parent/vispark/pcenter.py

235 lines
13 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# -*- coding: utf-8 -*-
# __author__ = 'xinjiu.qiao'
import allure
from airtest.core.api import *
from ui_auto_lego.common import handle_driver
from ui_library.page.parent.vispark import login, p_center
from ui_library.common.read_config import readconfig
from ui_library.operation.parent.vispark.handle_swipe import hd_swipe
from ui_library.logic.parent.vispark.login_logic import logic_login
from ui_auto_lego.common.handle_action import HandleAction
handle_driver_obj = handle_driver.HandleDriver()
login_page = login.prLogin()
my_lists = p_center.my_lists_or_servers()
obj_handle_action = HandleAction()
rf_config = readconfig()
user_info = eval(rf_config.parent_user)
h_swipe = hd_swipe()
handle_login = logic_login()
@allure.feature('ViSpark home')
class TestPcenter(object):
poco_driver = handle_login.poco_driver
def setup(self):
# 启动被测试应用,并且进行登录到首页
handle_login.login()
def teardown(self):
# 退出被测试应用并清理数据
self.init_mobile_start_app.quit()
sleep(5)
self.init_mobile_start_app.clear_app()
@allure.story("[my_lists个人中心--00*]")
@allure.title("[my_lists检查个人中心的我的课时--00*]")
def test_my_lists_credits(self):
with allure.step("用户进入me"):
# 用户登录后点击me
allure.attach('点击me进入个人设置页面')
obj_handle_action.click_by_poco(self.poco_driver, login_page.get_me_button_by_poco())
# 点击我的课时按钮
allure.attach('点击我的课时,进入我的课时页面')
obj_handle_action.click_by_poco(self.poco_driver, my_lists.get_my_class_credit_by_poco())
# 检查我的课时页面是否正常
list_my = []
for i in self.poco_driver(textMatches="My.*?"):
list_my.append(i.get_text())
allure.attach('我的课时页面获取所有关于My*的元素text')
if "My Class Credits" in list_my:
assert True
else:
assert False, "我的课时页面获取标题失败"
# todo 检查课时是否正常
# 点击返回
obj_handle_action.click_by_poco(self.poco_driver, my_lists.get_back_by_poco())
@allure.story("[my_lists个人中心--00*]")
@allure.title("[my_lists检查个人中心的我的订阅--00*]")
def test_my_lists_subscribe(self):
# with allure.step("判断是否在me的这个界面如果不在则点击进入"):
# if not obj_handle_action.is_exists_by_poco(poco=self.poco_driver, ssion="Spark Student"):
# obj_handle_action.click_by_poco(self.poco_driver, my_lists.get_back_by_poco())
with allure.step("用户进入me"):
# 用户登录后点击me
allure.attach('点击me进入个人设置页面')
obj_handle_action.click_by_poco(self.poco_driver, login_page.get_me_button_by_poco())
# 点击我的课时按钮
allure.attach('点击我的订阅,进入我的订阅页面')
obj_handle_action.click_by_poco(self.poco_driver, my_lists.get_subscriptions_by_poco())
# 检查我的订阅信息页面是否正常
list_my = []
for i in self.poco_driver(textMatches="Subscription.*?"):
list_my.append(i.get_text())
allure.attach('我的订阅页面获取所有关于Subscription*的元素text')
if "Subscription" in list_my:
assert True
else:
assert False, "我的订阅页面获取标题失败"
# todo 检查课时是否正常
# 点击返回
obj_handle_action.click_by_poco(self.poco_driver, my_lists.get_back_by_poco())
@allure.story("[my_lists个人中心--00*]")
@allure.title("[my_lists检查个人中心的我的邮寄地址--00*]")
def test_my_lists_deliveries(self):
# with allure.step("判断是否在me的这个界面如果不在则点击进入"):
# if not obj_handle_action.is_exists_by_poco(poco=self.poco_driver, ssion="Spark Student"):
# obj_handle_action.click_by_poco(self.poco_driver, my_lists.get_back_by_poco())
with allure.step("用户进入me"):
# 用户登录后点击me
allure.attach('点击me进入个人设置页面')
obj_handle_action.click_by_poco(self.poco_driver, login_page.get_me_button_by_poco())
# 点击我的邮寄地址按钮
allure.attach('点击我的邮寄地址,进入我的邮寄地址页面')
obj_handle_action.click_by_poco(self.poco_driver, my_lists.get_delieveries_by_poco())
# 检查我的邮寄地址信息页面是否正常
list_my = []
for i in self.poco_driver(textMatches="My.*?"):
list_my.append(i.get_text())
allure.attach('我的邮寄地址页面获取所有关于My*的元素text')
if "My Delivery List" in list_my:
assert True
else:
assert False, "我的邮寄地址页面获取标题失败"
# todo 检查课时是否正常
# 点击返回
obj_handle_action.click_by_poco(self.poco_driver, my_lists.get_back_by_poco())
@allure.story("[my_lists个人中心--00*]")
@allure.title("[my_lists检查个人中心的我的优惠劵--00*]")
def test_my_lists_coupons(self):
# with allure.step("判断是否在me的这个界面如果不在则点击进入"):
# if not obj_handle_action.is_exists_by_poco(poco=self.poco_driver, ssion="Spark Student"):
# obj_handle_action.click_by_poco(self.poco_driver, my_lists.get_back_by_poco())
with allure.step("用户进入me"):
# 用户登录后点击me
allure.attach('点击me进入个人设置页面')
obj_handle_action.click_by_poco(self.poco_driver, login_page.get_me_button_by_poco())
# 点击我的邮寄地址按钮
allure.attach('点击我的优惠劵,进入我的优惠劵页面')
obj_handle_action.click_by_poco(self.poco_driver, my_lists.get_coupons_by_poco())
# 检查我的邮寄地址信息页面是否正常
list_my = []
for i in self.poco_driver(textMatches="My.*?"):
list_my.append(i.get_text())
allure.attach('我的优惠劵页面获取所有关于My*的元素text')
if "My Coupons" in list_my:
assert True
else:
assert False, "我的优惠劵页面获取标题失败"
allure.attach('在我的优惠劵界面分别点击不可用可用失效的优惠劵table')
obj_handle_action.click_by_poco(self.poco_driver, my_lists.get_unused_coupons_by_poco())
#todo 需要加入不可用优惠劵的检查点
obj_handle_action.click_by_poco(self.poco_driver, my_lists.get_used_coupons_by_poco())
#todo 需要加入可用的优惠劵的检查点
obj_handle_action.click_by_poco(self.poco_driver, my_lists.get_expired_coupons_by_poco())
#todo 需要加入失效优惠劵的检查点
# 点击返回
obj_handle_action.click_by_poco(self.poco_driver, my_lists.get_back_by_poco())
@allure.story("[my_lists个人中心--00*]")
@allure.title("[my_lists检查个人中心中我的服务的帮助中心--00*]")
def test_my_servers_help(self):
# with allure.step("判断是否在me的这个界面如果不在则点击进入"):
# if not obj_handle_action.is_exists_by_poco(poco=self.poco_driver, ssion="Spark Student"):
# obj_handle_action.click_by_poco(self.poco_driver, my_lists.get_back_by_poco())
with allure.step("在当前页面下方,所以需要往上滑动"):
handle_driver_obj.swipe_pos([my_lists.swipe_start_by_air()],poco_driver=self.poco_driver,vector=[0.0181, -0.3073])
with allure.step("用户进入me"):
# 用户登录后点击me
allure.attach('点击me进入个人设置页面')
obj_handle_action.click_by_poco(self.poco_driver, login_page.get_me_button_by_poco())
# 点击我的帮助中心按钮
allure.attach('点击我的帮助中心,进入帮助中心页面')
obj_handle_action.click_by_poco(self.poco_driver, my_lists.get_help_center_by_poco())
# 检查我的帮助中心信息页面是否正常
list_my = []
for i in self.poco_driver(textMatches="VISPARK.*?"):
list_my.append(i.get_text())
allure.attach('我的帮助中心页面获取所有关于VISPARK*的元素text')
if "VISPARK-April" in list_my:
assert True
else:
assert False, "我的帮助中心页面获取标题失败"
# 点击返回
obj_handle_action.click_by_poco(self.poco_driver, my_lists.get_close_help_center_by_poco())
@allure.story("[my_lists个人中心--00*]")
@allure.title("[my_lists检查个人中心中我的服务的意见反馈--00*]")
def test_my_servers_feedback(self):
# with allure.step("判断是否在me的这个界面如果不在则点击进入"):
# if not obj_handle_action.is_exists_by_poco(poco=self.poco_driver, ssion="Spark Student"):
# obj_handle_action.click_by_poco(self.poco_driver, my_lists.get_back_by_poco())
with allure.step("在当前页面下方,所以需要往上滑动"):
handle_driver_obj.swipe_pos([my_lists.swipe_start_by_air()], poco_driver=self.poco_driver,
vector=[0.0181, -0.3073])
with allure.step("用户进入me"):
# 用户登录后点击me
allure.attach('点击me进入个人设置页面')
obj_handle_action.click_by_poco(self.poco_driver, login_page.get_me_button_by_poco())
# 点击我的意见反馈按钮
allure.attach('点击我的意见反馈,进入意见反馈的页面')
obj_handle_action.click_by_poco(self.poco_driver, my_lists.get_feedback_by_poco())
# 检查我的意见反馈信息页面是否正常
list_my = []
for i in self.poco_driver(textMatches="History.*?"):
list_my.append(i.get_text())
allure.attach('我的意见反馈页面获取所有关于History*的元素text')
if "History" in list_my:
assert True
else:
assert False, "我的意见反馈页面获取标题失败"
# 提交意见反馈
allure.attach('意见反馈进行提交-1.选择表扬')
obj_handle_action.click_by_poco(self.poco_driver, my_lists.get_feedback_compliment_by_poco())
allure.attach('意见反馈进行提交-2.录入反馈信息')
obj_handle_action.set_text_by_poco(self.poco_driver, my_lists.get_feedback_detail_by_poco(),
"auto-feedback")
allure.attach('意见反馈进行提交-3.进行提交')
obj_handle_action.click_by_poco(self.poco_driver, my_lists.get_feedback_submit_by_poco())
allure.attach('意见反馈提交成功后-4.点击确定')
obj_handle_action.click_by_poco(self.poco_driver, my_lists.get_feedback_ok_by_poco())
# 提交成功后,需要返回到上级页面,无返回按钮,只能右滑进行返回
handle_driver_obj.swipe_pos([my_lists.swipe_feedback_right_by_air()], poco_driver=self.poco_driver,
vector=[0.8162, 0.068])
# 点击History,检查刚刚新增的数据是否存在
allure.attach('意见反馈提交成功后-5.查看历史记录,检查刚刚数据是否存在')
time.sleep(2)
obj_handle_action.click_by_poco(self.poco_driver, my_lists.get_feedback_history_by_poco())
list_feedback_history = []
for i in self.poco_driver(textMatches="auto-feedback.*?"):
list_feedback_history.append(i.get_text())
allure.attach('我的意见反馈页面获取所有关于History*的元素text')
if "auto-feedback" in list_feedback_history:
assert True
else:
assert False, "我的意见反馈页面未查询到相应新增数据失败"
# 点击返回
obj_handle_action.click_by_poco(self.poco_driver, my_lists.get_back_feedback_by_poco())
obj_handle_action.click_by_poco(self.poco_driver, my_lists.get_back_feedback_by_poco())
if __name__ == '__main__':
# TestLogin().teardown()
# TestLogin().setup()
# TestLogin().test_us_ap_trial()
# TestLogin().test_us_ap_subscribe()
# TestLogin().test_us_ap_subscribe_schedule()
TestPcenter().test_my_servers_feedback()