2024年最新Python UI自动化框架(1)

文章描述了一个使用Python和SeleniumWebDriver进行Android应用自动化测试的示例,包括窗口管理、截图、滑动操作以及登录、添加任务等测试方法。
摘要由CSDN通过智能技术生成
    windows=self.driver.window_handles
    #切换新的窗口
    self.driver.switch_to.window(windows[-1])

def base_Washing_GetImage(self):
    logging.error("正在截图:")
    image_path=Imagepath
    self.driver.get_screenshot_as_file(image_path)

#获取手机的宽度和高度,进行滑动
def base_swipe():
	windowSize=slef.driver.get_window_size()
	x1=windowSize['width']*0.5
	y1=windowSize['height'].0.75
	x2=windowSize['width']*0.5
	y2=windowSize['height']*0.2
	slef.driver.swipe(x1,y1,x2,y2)

class Page_hun(Base_hu):
#点击我 table的方法
def Page_my_click(self):
self.base_click(MySelf)

#点击我的头像的方法
def Page_myImage(self):
    self.base_click(MyImage)
#输入用户名的方法
def Page_username(self,result):
    self.base_inputElement(userName,result)

#输入密码的方法
def Page_password(self,result):
    self.base_inputElement(passWord,result)


#点击登录的方法
def Page_login(self):
    self.base_click(Login)

#总的方法
def Page_login_total(self,username,password):
    self.Page_my_click()
    self.Page_myImage()
    self.Page_username(username)
    self.Page_password(password)
    self.Page_login()

“”"
config配置文件
“”"
from selenium.webdriver.common.by import By
#截图的存放路径
Imagepath=os.path.dirname(file)+os.sep+‘Image’+os.sep+‘{}.png’.format(time.strftime(‘%Y-%m-%d_%H-%M-%S’))

MySelf=(By.ID,‘com.tal.hu:id/mainactivity_button_mysefl’)

#我的头像
MyImage=(By.ID,‘com.tal.hu:id/activity_usercenter_userheader’)
#输入用户名
userName=(By.ID,‘com.tal.hu:id/login_email_edittext’)
#输入密码
passWord=(By.ID,‘com.tal.hu:id/login_password_edittext’)

#登录按钮
Login=(By.ID,‘com.tal.hu:id/login_login_btn’)

#添加任务
page_sk=(By.ID,‘com.tal.hu:id/task_no_task’)

“”“utils配置文件”“”

class GetDriverUtils:
#使用静态方法
@classmethod
def get_App_driver(cls):
des_cap = {}
des_cap[‘platformName’] = ‘Android’
des_cap[‘platformVersion’] = ‘9’
des_cap[‘deviceName’] = ‘QACNW18C21010050’
des_cap[‘appPackage’] = ‘com.tal.hun’
des_cap[‘appActivity’] = ‘com.tal.hu.ui.activity.SplashActivity’
des_cap[‘noReset’] = True
driver = webdriver.Remote(“http://localhost:4723/wd/hub”, des_cap)
return driver

from appium import webdriver
class Getutiles_Url:
web_driver=None
@classmethod
def geturl_Washing(self):
if self.web_driver is None:
self.driver=webdriver.Chrome()
self.driver.get(Host)
self.driver.maximize_window()

    return self.driver

“”“这里编写的是测试用例”“”
class Test_hu:
def setup(self):
self.driver=GetDriverUtils.get_App_driver()
#创建我们登录层
login=Page_hu(self.driver)
self.login=login

    #创
    self.sk=Page_Sk(self.driver)

#创建我们登录方法
def test_login(self):
    logging.error(traceback.print_exc())#直接在控制台打印错误信息

    self.login.Page_login_total('ppppp','looooo88')

#创建我们的添加任务的方法
def test02_sk(self):
    self.sk.Page_sk_total()


def teardown(self):
    print("结束方法")

“”"
##pytest.int
[pytest]
addopts = -vs --alluredir …/temp
log_cli=true
log_cli_level=error
log_cli_format=%(asctime)s %(filename)s:%(lineno)s [%(levelname)s]: %(message)s
log_cli_date_format=%Y-%m-%d %H:%M:%S

log_file=D:Python_Script\Wing\log\ctest.log
log_file_level=error
log_file_format=%(asctime)s %(filename)s:%(lineno)s [%(levelname)s]: %(message)s
log_file_date_format=%Y-%m-%d %H:%M:%S

“”"

#创建一个main函数
if name == ‘main’:
pytest.main([‘-vs’])
#os.system(“allure generate --alluredir …/temp -o …/report --clean”)

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、学习软件

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

三、全套PDF电子书

书籍的好处就在于权威和体系健全,刚开始学习的时候你可以只看视频或者听某个人讲课,但等你学完之后,你觉得你掌握了,这时候建议还是得去看一下书籍,看权威技术书籍也是每个程序员必经之路。

四、入门学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

五、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

六、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里无偿获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 18
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python UI自动化框架是一种使用Python编写的测试框架,主要用于实现Web UI自动化测试。该框架采用了Python的unittest库作为基础,并结合了PO模式和数据驱动的思想。通过使用Selenium来实现对Web界面的自动化操作,使用Request库来实现接口的自动化测试。此外,该框架还可以扩展到移动终端的自动化测试。\[1\] 该框架的目录结构示例可以参考\[2\],它可以帮助团队快速构建自动化测试框架,提高测试效率和质量。 Python是一种容易掌握的语言,且拥有丰富的库,因此大多数自动化测试框架选择使用Python来实现。对于UI自动化测试,常用的驱动工具是Selenium,而对于接口自动化测试,可以使用Python的Request库。数据驱动方面,由于unittest库没有直接可用的dataprovider,可以使用ddt库来实现。至于手机自动化测试,该框架暂未实现,但可以考虑使用Appium来实现。测试数据方面,可以使用Excel进行管理,对于大型系统,建议直接使用数据库进行管理。总的来说,这个框架并没有引入新的思想或技术,只是将一些常用的技术按照一定的思路组织起来并驱动起来。\[3\] 综上所述,Python UI自动化框架是一个基于Python和unittest的框架,通过使用Selenium和Request等工具来实现Web UI自动化和接口自动化测试。它的设计思路是将常用的技术组织起来,以提高测试效率和质量。 #### 引用[.reference_title] - *1* *3* [从零搭建完整python自动化测试框架UI自动化和接口自动化 )——持续更新](https://blog.csdn.net/sunjice/article/details/114790746)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v12^insert_chatgpt"}} ] [.reference_item] - *2* [Python Selenium搭建UI自动化测试框架](https://blog.csdn.net/WsXOM853BD45Fm92B0L/article/details/130376805)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v12^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值