本UI 自动化框架主要的实验的目的是:完成了登录页面的自动化登录与打开会员中心的页面这一自动化的过程。

废话不多说,直接上代码截图:

我们首先来看看整个工程的目录结构,这样以便于了解项目的调用关系:

comwork  # 公共包目录

-- OpenBrower.py 这个是全局打开浏览器的文件config   #这里是配置包

-- configDict.py 具体配置了请求的url 和选择使用什么浏览器

log  #存放日志的目录

pagework  # 这里是存放了页面的元素及操作的页面文件

--BasePage.py 这个文件是封装了webdriver 的查找元素方法的文件

--LoginPage.py 这个文件是登录页面文件

--BackendUserCenterPage.py 这个文件是打开会员中心的页面文件

srceenshop  #存放报错页面截图的目录

testcase  # 这里存放了具体要执行自动化的执行文件

--BasetestCase.py 这个文件是一个基类文件,用于做开始前与结束后的初始化工作的文件

--LoginCase.py 这个文件是一个入口执行文件

tools  #存放报告的目录

--log.py 这个文件是对日志输出做格式处理的文件

Step1、代码运行入口

执行含有main的主文件,LoginCase 这个类继承了三个类,分别是BasetestCase,LoginPage,BackendUCPage, 其中的LoginPage 文件里面封装了Login()的方法,用于页面登录操作,BackendUCPage 文件里面封装了UCInfo()的方法,用于打开会员中心的页面操作。

Step2、 BasetestCase.py文件内容如下,

这个类文件被LoginCase 类文件继承后,会去执行这一行关键的操作,打开浏览器,并传入了浏览器的类型和网址url 二个变量及已执行完成后的浏览器退出操作。

OpenBrowse.py 文件如下:

Step3、 LoginPage.py 对登录页面元素进定位并有方法封装操作

Step4、 BackendUCPage.py 对会员页面元素进行定位和方法封装操作

Step5、BasePage.py 这是一个封装webdriver 查找页面元素的通用方法类文件

总结:UI自动化测试是测试工程师必备技能之一,努力打造自我的核心竞争力,我们仍然是一直在路上不断的学习和进步,与君共勉。如有想要源码的可以给我邮件,我的邮箱是loadkernel@126.com.

备注:我的个人公众号已正式开通,致力于测试技术的分享,包含:大数据测试、功能测试,测试开发,API接口自动化、测试运维、UI自动化测试等,微信搜索公众号:“无量测试之道”,或扫描下方二维码:

 添加关注,一起共同成长吧。

Python UI自动化测试实操的更多相关文章

  1. Python API自动化测试实操

    废话不多说,直接上代码截图: 我们首先来看看整个工程的目录结构,这样以便于了解项目的调用关系:config   #这里是配置包 -- base_url.py 具体配置了被测系统的url and pat ...

  2. python UI自动化测试

    为了减小维护成本: 1.UI自动化测试需要有较为稳定的环境 2.代码设计合理,那么我们就需要面向对象的设计一个框架,将重复的代码模块化 一.首先总结一下 UI自动化大概要哪些模块 1.config(配 ...

  3. 关于去哪儿网的UI自动化测试脚本(Python实现)

    UI自动化测试Qunar机票搜索场景访问Qunar机票首页http://flight.qunar.com,选择“单程”,输入出发.到达城市,选择today+7日后的日期,点“搜索”,跳转到机票单程搜索 ...

  4. Python关于类的实操

    实操一:总结 1.什么是绑定到对象的方法,如何定义,如何调用,给谁用?有什么特性? 2.什么是绑定到类的方法,如何定义,如何调用,给谁用?有什么特性? 3.什么是解除绑定的函数,如何定义,如何调用,给 ...

  5. 动手实操:如何用 Python 实现人脸识别,证明这个杨幂是那个杨幂?

    当前,人脸识别应用于许多领域,如支付宝的用户认证,许多的能识别人心情的 AI,也就是人的面部表情,还有能分析人的年龄等等,而这里面有着许多的难度,在这里我想要分享的是一个利用七牛 SDK 简单的实现人 ...

  6. Python相关分析—一个金融场景的案例实操

    哲学告诉我们:世界是一个普遍联系的有机整体,现象之间客观上存在着某种有机联系,一种现象的发展变化,必然受与之关联的其他现象发展变化的制约与影响,在统计学中,这种依存关系可以分为相关关系和回归函数关系两 ...

  7. Python+appium+unittest UI自动化测试

    什么是UI自动化 自动化分层 单元自动化测试,指对软件中最小可测试单元进行检查和验证,一般需要借助单元测试框架,如java的JUnit,python的unittest等 接口自动化测试,主要检查验证模 ...

  8. 如何练习python?有这五个游戏,实操经验就已经够了

    现在学习python的人越来越多了,但仅仅只是学习理论怎么够呢,如何练习python?已经是python初学者比较要学会的技巧了! 其实,最好的实操练习,就是玩游戏. 也许你不会信,但这五个小游戏足够 ...

  9. UI自动化测试框架(项目实战)python、Selenium(日志、邮件、pageobject)

    其实百度UI自动化测试框架,会出来很多相关的信息,不过就没有找到纯项目的,无法拿来使用的:所以我最近就写了一个简单,不过可以拿来在真正项目中可以使用的测试框架. 项目的地址:https://githu ...

随机推荐

  1. js Date对象日期格式化

    dateFormat(d, fmt) { var o = { 'M+': d.getMonth() + 1, 'd+': d.getDate(), 'h+': d.getHours(), 'm+': ...

  2. 【漫画】CAS原理分析!无锁原子类也能解决并发问题!

    本文来源于微信公众号[胖滚猪学编程].转载请注明出处 在漫画并发编程系统博文中,我们讲了N篇关于锁的知识,确实,锁是解决并发问题的万能钥匙,可是并发问题只有锁能解决吗?今天要出场一个大BOSS:CAS ...

  3. LSTM的备胎,用卷积处理时间序列——TCN与因果卷积(理论+Python实践)

    什么是TCN TCN全称Temporal Convolutional Network,时序卷积网络,是在2018年提出的一个卷积模型,但是可以用来处理时间序列. 卷积如何处理时间序列 时间序列预测,最 ...

  4. 8.2 Go 锁

    8.2 Go 锁 案例(坑):多个goroutine操作同一个map. go提供了一种叫map的数据结构,可以翻译成映射,对应于其他语言的字典.哈希表.借助map,可以定义一个键和值,然后可以从map ...

  5. javaWeb普通类获取ApplicationContext

    网上看了很多关于获取ApplicationContext的方法,五大方法,但是我用web服务使用成功的就这一个,自己记忆下. import javax.servlet.ServletContextEv ...

  6. jsp 判断时间大小

    jsp 判断时间大小 <% SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date ...

  7. oracle的操作-表空间

    查询以创建的表空间 select dbms_metadata.get_ddl('TABLESPACE','你的表空间名称') from dual; --查询空间创建的位置 select t1.name ...

  8. HDU3746 Cyclic Nacklace

    题目链接:https://vjudge.net/problem/HDU-3746 知识点: KMP 解题思路: 论如何用 \(Next[]\) 数组求循环节. AC代码: #include <b ...

  9. SPOJ687 Repeats

    本篇是罗穗骞<后缀数组——处理字符串的有力工具>的读书笔记. 知识点: 后缀数组.RMQ 解题思路: 枚举长度 \(L\),然后检查长度为 \(L\) 的子串最多能连续重复几次. 对于给定 ...

  10. 【Java】面试官灵魂拷问:if语句执行完else语句真的不会再执行吗?

    写在前面 最近跳槽找工作的朋友确实不少,遇到的面试题也是千奇百怪,这不,一名读者朋友面试时,被面试官问到了一个直击灵魂的问题:if 语句执行完else语句真的不会再执行吗?这个奇葩的问题把这名读者问倒 ...