随笔分类 - Python
摘要:一、多窗口处理 在进行自动化测试的时候,经常会遇到点击一个连接或按钮后,会打开一个新的页面,需要我们在新的窗口进行操作,这个时候就需要使用Webdriver里的switch_to_window方法了 #!/usr/bin/python # -*- coding: UTF-8 -*- """ @aut
阅读全文
摘要:TouchAction,类似于ActionChains,ActionChains只是针对PC端程序鼠标模拟的一系列操作,对H5页面操作是无效的。TouchAction可以对H5页面操作,通过TouchAction可以实现点击、滑动、拖拽、多点触控,以及模拟手势等各种操作。 关于 ActionChai
阅读全文
摘要:Allure测试报告框架帮助你轻松实现”高大上”报告展示。本文通过示例演示如何从0到1集成Allure测试框架。重点展示了如何将Allure集成到已有的自动化测试工程中、以及如何实现报表的优化展示。Allure非常强大,支持多种语言多种测试框架,无论是Java/Python还是Junit/TestN
阅读全文
摘要:1、失败重跑 pytest-rerunfailures 安装:pip install pytest-rerunfailures 使用:pytest test_class.py --reruns 5 --reruns-delay 1 -vs (失败后重新运行5次,每次间隔1秒) @pytest.mar
阅读全文
摘要:pytest是一个非常成熟的全功能的Python测试框架,主要有以下几个特点: 简单灵活,容易上手 支持参数化 能够支持简单的单元测试和复杂的功能测试,还可以用来做selenium/appnium等自动化测试、接口自动化测试(pytest+requests) pytest具有很多第三方插件,并且可以
阅读全文
摘要:默认情况下 pip 使用的是国外的镜像,在下载的时候速度非常慢,本文介绍2中处理方法 一) 1、设置超时时间 pip --default-timeout=1000 install -U 模块名 例如pip --default-timeout=1000 install -U matplotlib来下载
阅读全文
摘要:很多人学Python,除了它功能强大,简单易学外,代码行数少、语法简洁也是很吸引人的地方。那么,Python的语法到底有多简洁呢?一行Python代码,能实现什么丧心病狂的功能呢? 1、一行代码,实现随机选彩票号码 走进熟悉的投注站,老板问你:“来了,还是机选是吗?”你嘴上说着:“嗯,还来一注。”但
阅读全文
摘要:在前面的章节我们已经了解了面向对象的入门知识,知道了如何定义类,如何创建对象以及如何给对象发消息。为了能够更好的使用面向对象编程思想进行程序开发,我们还需要对Python中的面向对象编程进行更为深入的了解。 @property装饰器 之前我们讨论过Python中属性和方法访问权限的问题,虽然我们不建
阅读全文
摘要:活在当下的程序员应该都听过“面向对象编程”一词,也经常有人问能不能用一句话解释下什么是“面向对象编程”,我们先来看看比较正式的说法。 把一组数据结构和处理它们的方法组成对象(object),把相同行为的对象归纳为类(class),通过类的封装(encapsulation)隐藏内部细节,通过继承(in
阅读全文
摘要:在统计python代码 执行速度时要使用到time包,在查找相关函数时有time.time()和time.clock()两个函数可供选择。而两者是有区别的: cpu 的运行机制:cpu是多任务的,例如在多进程的执行过程中,一段时间内会有对各进程被处理。一个进程从开始到结束其实是在这期间的一些列时间片
阅读全文
摘要:字符串是我们在编程的时候很常用的一种数据类型,检查会在字符串里面查找一些内容,对于比较简单的查找,字符串里面就有一些内置的方法可以处理,对于比较复杂的字符串查找,或者是有一些内容经常变化的字符串里面查找,那么字符串内置的查找方法已经不好使了,满足不了我们的要求,这个时候就得用正则表达式了,正则表达式
阅读全文
摘要:一、map()函数 map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把list 的每个元素依次作用在函数 f 上,得到一个新的 list 并返回。 例如,对于list [1, 2, 3, 4, 5, 6, 7, 8, 9] 如果希望把list的每个元素都作平方
阅读全文
摘要:什么是爬虫? 爬虫是什么呢,就是地上爬的小虫子,就是爬虫咯。呵呵,开个玩笑,一般说的爬虫都是网络爬虫。那什么是网络爬虫呢,百度百科的解释是这样子的: 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一
阅读全文
摘要:前言 现在很多网站的都大量使用JavaScript,或者使用了Ajax技术。这样在网页加载完成后,url虽然不改变但是网页的DOM元素内容却可以动态的变化。如果处理这种网页是还用requests库或者python自带的urllib库那么得到的网页内容和网页在浏览器中显示的内容是不一致的。 解决方案
阅读全文
摘要:通过appium-desktop定位元素 ClassName Android Android的class属性对应ClassName定位方式,ClassName一般都是会重复的,可以通过index来获取需要的元素。(从0开始查找dom树中的同名class属性) iOS iOS的type属性对应CLas
阅读全文
摘要:Switch 我们在UI自动化测试时,总会出现新建一个tab页面、弹出一个浏览器级别的弹框或者是出现一个iframe标签,这时我们用WebDriver提供的Api接口就无法处理这些情况了。需要用到Selenium单独提供的模块switch_to模块 引用路径 # 第一种方式可以通过直接导入Switc
阅读全文
摘要:首先,所需安装软件及推荐安装版本: Java 1.8版本 Android SDK Node js(>=10版本),npm(>=6版本) Python3 appium-desktop appium python client 友情提示:安装此环境较为复杂,请保持平和的心态安装~~~ 第一步 安装JDK
阅读全文
摘要:安装建议: Nodejs 12 Appium 建议1.15 Java 1.8 SDK build-tools/ 下对应的版本,需要使用<=29的版本 第一步:安装JDK 安装JDK,本机如果带有1.7及以上版本的,则可忽略此安装步骤。 JDK的安装包,百度下载即可。安装完成后配置环境变量。 cmd下
阅读全文
摘要:PyCharm是由JetBrains公司开发的提供给Python专业的开发者的一个集成开发环境,它最大的优点是能够大大提升Python开发者的工作效率,为开发者集成了很多用起来非常顺手的功能,包括代码调试、高亮语法、代码跳转、智能提示、自动补全、单元测试、版本控制等等。此外,PyCharm还提供了对
阅读全文
摘要:我们在写case的时候,如果用例的操作是一样的,就是参数不同,比如说要测一个登陆的接口,要测正常登陆的、黑名单用户登陆的、账号密码错误的等等,在unittest里面就要写多个case来测试。 这样的情况只是调用接口的时候参数不一样而已,再写多个case的话就有点多余了,那怎么办呢,就得把这些参数都写
阅读全文