python +appium实现原理_Appium+python自动化(四十)-Appium自动化测试框架综合实践 - 代码实现(超详解)...
#coding=utf-8#1.先设置编码,utf-8可支持中英文,如上,通常放在第一行
#2.注释:包括记录建立时间,建立人,项目名称。
'''Created on 2019-11-18
@author: 北京-宏哥 QQ交流群:707699217
Project:Appium自动化测试框架综合实践 - 代码实现'''
#3.导入模块
importlogging,randomfrom kyb_testProject.common.desired_caps importappium_desiredfrom kyb_testProject.common.common_fun importCommon,By,NoSuchElementExceptionclassRegisterView(Common):
register_text=(By.ID,'com.tal.kaoyan:id/login_register_text')#头像设置相关元素
userheader=(By.ID,'com.tal.kaoyan:id/activity_register_userheader')
item_image=(By.ID,'com.tal.kaoyan:id/item_image')
save=(By.ID,'com.tal.kaoyan:id/save')#用户名密码邮箱相关元素
register_username= (By.ID, 'com.tal.kaoyan:id/activity_register_username_edittext')
register_password= (By.ID, 'com.tal.kaoyan:id/activity_register_password_edittext')
register_email= (By.ID, 'com.tal.kaoyan:id/activity_register_email_edittext')
register_btn= (By.ID, 'com.tal.kaoyan:id/activity_register_register_btn')#完善资料界面元素
perfectinfomation_school = (By.ID, 'com.tal.kaoyan:id/perfectinfomation_edit_school_name')
perfectinfomation_major= (By.ID, 'com.tal.kaoyan:id/activity_perfectinfomation_major')
perfectinfomation_goBtn= (By.ID, 'com.tal.kaoyan:id/activity_perfectinfomation_goBtn')#院校相关元素
forum_title = (By.ID, 'com.tal.kaoyan:id/more_forum_title')
university= (By.ID, 'com.tal.kaoyan:id/university_search_item_name')#专业相关元素
major_subject_title = (By.ID, 'com.tal.kaoyan:id/major_subject_title')
major_group_title= (By.ID, 'com.tal.kaoyan:id/major_group_title')
major_search_item_name= (By.ID, 'com.tal.kaoyan:id/major_search_item_name')#用户中心相关元素
button_mysefl = (By.ID, 'com.tal.kaoyan:id/mainactivity_button_mysefl')
username= (By.ID, 'com.tal.kaoyan:id/activity_usercenter_username')defregister_action(self,register_username,register_password,register_email):
self.check_cancelBtn()
self.check_skipBtn()
logging.info('======register_action======')
self.driver.find_element(*self.register_text).click()
logging.info('set userhead')
self.driver.find_element(*self.userheader).click()
self.driver.find_elements(*self.item_image)[10].click()
self.driver.find_element(*self.save).click()
logging.info('username is %s'%register_username)
self.driver.find_element(*self.register_username).send_keys(register_username)
logging.info('password is %s' %register_password)
self.driver.find_element(*self.register_password).send_keys(register_password)
logging.info('email is %s' %register_email)
self.driver.find_element(*self.register_email).send_keys(register_email)
self.driver.find_element(*self.register_btn).click()try:
self.driver.find_element(*self.perfectinfomation_school)exceptNoSuchElementException:
logging.error('register fail !')
self.getScreenShot('register fail')returnFalseelse:
self.add_register_info()ifself.check_register_status():returnTrueelse:returnFalsedefadd_register_info(self):
logging.info('======add_register_info=====')
logging.info('select school...')
self.driver.find_element(*self.perfectinfomation_school).click()
self.find_elements(*self.forum_title)[1].click()
self.find_elements(*self.university)[1].click()
logging.info('select major...')
self.driver.find_element(*self.perfectinfomation_major).click()
self.driver.find_elements(*self.major_subject_title)[1].click()
self.driver.find_elements(*self.major_group_title)[2].click()
self.driver.find_elements(*self.major_search_item_name)[1].click()
self.driver.find_element(*self.perfectinfomation_goBtn).click()defcheck_register_status(self):
logging.info('=====check_register_status=====')
self.check_market_ad()try:
self.driver.find_element(*self.button_mysefl).click()
self.driver.find_element(*self.username)exceptNoSuchElementException:
logging.error('register fail!')
self.getScreenShot('register fail')returnFalseelse:
logging.info('register success!')returnTrueif __name__ == '__main__':
driver=appium_desired()
register=RegisterView(driver)
username= 'bjhg2019' + 'fly' + str(random.randint(1000, 9000))
password= 'bjhg2019' + str(random.randint(1000, 9000))
email= 'bjhg' + str(random.randint(1000, 9000)) + '@163.com'register.register_action(username,password,email)
python +appium实现原理_Appium+python自动化(四十)-Appium自动化测试框架综合实践 - 代码实现(超详解)...相关推荐
- pythonappium自动化框架_Appium+python自动化(三十九)-Appium自动化测试框架综合实践 - 代码实现(超详解)...
简介 前边一直在分享testng的相关文章,看了点赞量和阅读数不是很高,宏哥猜测估计是大家确实是用不到或者不喜欢吧!不过宏哥经过一段时间的准备,appium的自动化测试框架完善的差不多了,那么接下来宏 ...
- Appium+python自动化(四十一)-Appium自动化测试框架综合实践 - 即将落下帷幕(超详解)
1.简介 今天我们紧接着上一篇继续分享Appium自动化测试框架综合实践 - 代码实现.到今天为止,大功即将告成:框架所需要的代码实现都基本完成. 2.data数据封装 2.1使用背景 在实际项目过程 ...
- Appium+python自动化(三十八) - Appium自动化测试框架综合实践 - 框架简介-助你冲击高薪,迎娶白富美(超详解)...
简介 好久没有更新博客了,博友们是不是有点等不及了.不好意思啊,中秋节过后太忙了,这篇是好不容易抽点零碎时间写的.从这一篇开始小伙伴或者童鞋们,就跟随宏哥的脚步,一步步的从无到有,从0到1的搭建一个完 ...
- Python Appium自动化测试框架 综合实践案例(中)
Time will tell. 本篇章紧接上一篇继续来分享关于 Appium 自动化测试框架综合实践案例代码.框架所需要的代码实现都已基本完成. data数据封装 1.使用背景 在实际项目过程中,我们 ...
- python控制手机模拟器_Appium+python自动化之连接模拟器并启动淘宝APP(超详解)...
简介 上一篇讲解完模拟器的安装.配置好以后,就好比我们手机已经买好,并且系统已经做好了,就差我们用数据线和电脑连接开始实战了,这篇宏哥就带着小伙伴们和童鞋们趁热打铁,讲解和分享一下如何连接模拟器(电脑 ...
- java接口自动化测试的搭建_java接口自动化(一) - 接口自动化测试整体认知 - 开山篇(超详解)...
简介 了解什么是接口和为什么要做接口测试.并且知道接口自动化测试应该学习哪些技术以及接口自动化测试的落地过程.其实这些基本上在python接口自动化的文章中已经详细的介绍过了,不清楚的可以过去看看.了 ...
- java接口自动化(一) - 接口自动化测试整体认知 - 开山篇(超详解)
简介 了解什么是接口和为什么要做接口测试.并且知道接口自动化测试应该学习哪些技术以及接口自动化测试的落地过程.其实这些基本上在python接口自动化的文章中已经详细的介绍过了,不清楚的可以过去看看.了 ...
- python接口自动化(十六)--参数关联接口后传(详解)
简介 大家对前边的自动化新建任务之后,接着对这个新建任务操作了解之后,希望带小伙伴进一步巩固胜利的果实,夯实基础.因此再在沙场实例演练一下博客园的相关接口.我们用自动化发随笔之后,要想接着对这篇随笔操 ...
- python接口自动化(十二)--https请求(SSL)(详解)
简介 本来最新的requests库V2.13.0是支持https请求的,但是一般写脚本时候,我们会用抓包工具fiddler,这时候会 报:requests.exceptions.SSLError: [ ...
最新文章
- PHP关联数组和哈希表(hash table) 未指定
- c#_winform_选择文件保存路径
- SAP-CO.创建成本中心,作业类型,内部订单
- ob服务器维修视频,教你如何使用OB系统 还在看转播?你OUT了!
- ubuntu16.04输入密码后返回登录界面(反复登录问题+.Xauthority无法删除无法改权限问题)
- 用python将word文档导入数据库_python读取word文档,插入mysql数据库的示例代码
- leetcode 好的博客汇总
- Windows Server 2012系列之三提升域功能级别与降低域功能级别
- python os读取文件
- 中国园林设备行业市场供需与战略研究报告
- docker初学记录--运行应用程序
- 微信大数据解析不一样的人生,你被戳中了吗……
- HP光影精灵3 TPN-Q193显卡驱动安装不上,鲁大师检测不到显卡
- 以开发之名|线上家装新美学——梦想之家,由你来定
- explorer.exe 应用程序错误 应用程序发生异常 未知软件异常 (0xc0000417),位置为 0x100170e9
- docker容器状态Exited(1)第一篇
- 为什么说C++太复杂?复杂的必要性是为什么?
- Python识别条码内容
- 转载:130 个相见恨晚的超实用网站,一次性分享出来,十倍提高工作效率
- Centos7 使用 kubeadm 安装Kubernetes 1.13.3
热门文章
- dlt645协议电表数据采集接入PLC或scada等组态软件系统(转modbus)实现内网监控技术方案
- 服务器U盘安装安装centos
- 图像细化 A fast parallel algorithm for thinning digital patterns
- iwanna用哪个计算机语言,IwannabetheCreator电脑版
- Android 11 功能和 API 概览
- C++ 定时每天十二点做某事
- GYM MaratonIME plays Chess 模拟
- od机考题目-机器人走迷宫
- 数据库设计 - 01外卖配送系统
- 大话云时代rac_“音乐隐士”沈以诚:他在网易云音乐为什么这么火?