随笔分类 -  python

摘要:一、Python的对象存储有2种方式: 1)小整数池:-5到256的数字都存在这里,当我们定义一个对象时,不会重新分配内存地址,而是指向到小整数池的一个位置; 栗子: a=25 b=25 c=288 d=288 其中:a 和 b 的内存地址是一个;c 和 d 指向2个内存地址; 2)intern机制 阅读全文
posted @ 2020-12-30 17:39 Winnie~ 阅读(354) 评论(0) 推荐(0)
摘要:setattr():表示你可以通过该方法,给对象添加或者修改指定的属性。 delattr():删除某个属性值。 class Info(object): def __init__(self,name,age): self.name=name self.age=age def __setattr__(s 阅读全文
posted @ 2020-12-28 16:30 Winnie~ 阅读(224) 评论(0) 推荐(0)
摘要:__getattr__ __getattr__方法的自动执行,需要满足两个条件:一是通过实例访问属性;二是触发了AttributeError异常(属性不存在)。 上图中,调用不存在的job属性,会首先调用__getattribute__方法,触发AttributeError异常并自动捕获,然后才调用 阅读全文
posted @ 2020-12-28 14:27 Winnie~ 阅读(275) 评论(0) 推荐(0)
摘要:本文参考博客:https://www.cnblogs.com/huchong/p/7274073.html Python中提供的生成器: 1.生成器函数:yield. yield语句一次返回一个结果,不会终止函数的运行。 2.生成器表达式。 一、生成器Generator: 本质:迭代器(自带了__i 阅读全文
posted @ 2020-12-26 14:30 Winnie~ 阅读(167) 评论(0) 推荐(0)
摘要:本文参考博客https://www.cnblogs.com/huchong/p/7274073.html 1. 在讲迭代器之前,我们先来讲一下迭代,什么是迭代呢? 可以将某个数据集内的数据“一个挨着一个的取出来”,就叫做迭代。比如我们平时用的的for循环···· 2. 可以满足迭代要求的就叫做可迭代 阅读全文
posted @ 2020-12-25 17:14 Winnie~ 阅读(153) 评论(0) 推荐(0)
摘要:最近研究了Python的BeautifulSoup库,用起来还挺好玩的一、安装:使用pip命令在线安装;在cmd窗口中输入:pip install beautilfulsoup4 二、代码思路:1.使用request获取相关网页的返回值,即HTML对象; 方法一2.通过BeautifulSoup库对 阅读全文
posted @ 2019-08-20 11:45 Winnie~ 阅读(630) 评论(0) 推荐(0)
摘要:aapt dump badging f:\resign\ListenerApk.apk #查看apk的包名和活动页(package&Acvitity) aapt dump bading xxxx.apk > out.txt #将内容打印到文件中 需要安装有aapt,并配置环境变量; 阅读全文
posted @ 2019-08-14 15:32 Winnie~ 阅读(180) 评论(0) 推荐(0)
摘要:想要完成APP的自动化测试,首先需要在本机安装好环境,需要以下几个软件: 1.node.js(安装appium时依赖,官网可以下载) 2.appium-desktop:Appium Server的图形界面。类似于web自动化时的chromdriver,不过这个需要每次都启动一下; like this 阅读全文
posted @ 2019-08-14 10:36 Winnie~ 阅读(675) 评论(0) 推荐(0)
摘要:类的3个方法: 1.实例方法,有self,必须实例调用; 2.类方法:@cls装饰,不能调用属性值; 可以实例调用,也可以不需要实例调用; 类方法和静态方法的区别:类方法需要传递一个默认参数cls,其他无不同 3.静态方法:@staticmethod装饰,普通函数,不能调用属性值; 可以实例调用,也 阅读全文
posted @ 2019-06-06 15:17 Winnie~ 阅读(128) 评论(0) 推荐(0)
摘要:第一阶段: excel读取数据时,设置一个mode参数,默认值为all,读取所有用例;用例值传入一个列表,执行对应的用例; 进阶:通过配置文件来决定执行的用例 1.新建文件,文件名:config结尾; 2.由3个部分组成,section(片区,必须中括号括起来),option(选项,等号左侧),va 阅读全文
posted @ 2019-06-05 18:03 Winnie~ 阅读(195) 评论(0) 推荐(0)
摘要:测试数据的参数化有2种方式,超继承 和 ddt。ddt 的使用更加方便,简单。下面总结ddt。 @ddt 装饰器,用来装饰测试用例 @data(*test_data) 脱外套 执行用例,用loader加载 阅读全文
posted @ 2019-06-05 17:04 Winnie~ 阅读(355) 评论(0) 推荐(0)
摘要:当2个接口直接有关联性,第二个请求需要使用第一个请求的返回值,如何实现??? 1.全局变量 2.反射 3.setUp()初始化函数 阅读全文
posted @ 2019-06-04 18:10 Winnie~ 阅读(268) 评论(0) 推荐(0)
摘要:一、介绍: Lambda函数,是一个匿名函数,创建语法: lambda parameters:express parameters:可选,如果提供,通常是逗号分隔的变量表达式形式,即位置参数。 expression:不能包含分支或循环(但允许条件表达式),也不能包含return(或yield)函数。 阅读全文
posted @ 2019-03-29 17:56 Winnie~ 阅读(7653) 评论(0) 推荐(0)
摘要:在上一篇中讲述了re.seach()会返回一个对象格式的数据,如下:<_sre.SRE_Match object; span=(16, 24), match='${phone}'> 那么问题来了,我们如何获得并使用我们想要的值呢???再来补充一下啦~~~~~~~~·· 实例一 group()和gro 阅读全文
posted @ 2019-03-28 16:37 Winnie~ 阅读(21606) 评论(0) 推荐(1)
摘要:以前一直觉得正则很难,不会用,今天试验了几个方法,整理总结了一下,简洁明了。 简单来讲,正则就是 提取一段特征数据,用(.*?)代替。 自己总结的特点&区别: (.*) 贪婪匹配,会尽可能的往后匹配 (.*?) 非贪婪匹配,会尽可能少的匹配,是否加?影响匹配结果的长度,常用该匹配规则 下图为具体的实 阅读全文
posted @ 2019-03-27 16:58 Winnie~ 阅读(4330) 评论(0) 推荐(0)
摘要:最近在学习web自动化,所以在这里总结一下pytest框架。 其实pytest 和 unittest 都是自动化测试框架,但是pytest更好用一些,有以下几个优点:1)可以根据标签执行用例;2)??? 一、首先需要安装pytest ,使用pip命令就可以; 二、pytest的标签功能:在用例前可以 阅读全文
posted @ 2019-03-27 09:43 Winnie~ 阅读(2709) 评论(0) 推荐(0)
摘要:一直对爬虫感兴趣,学了python后正好看到某篇关于爬取的文章,就心血来潮实战一把吧。 实现目标:抓取豆瓣电影top250,并输出到文件中 1.找到对应的url:https://movie.douban.com/top250 2.进行页面元素的抓取: 3.编写代码思路: 第一步:实现抓取第一个页面; 阅读全文
posted @ 2019-03-27 09:42 Winnie~ 阅读(828) 评论(0) 推荐(0)
摘要:一、用例编写规则 1.unittest提供了test cases、test suites、test fixtures、test runner相关的类,让测试更加明确、方便、可控。使用unittest编写用例,必须遵守以下规则: (1)测试文件必须先import unittest (2)测试类必须继承 阅读全文
posted @ 2019-03-19 18:00 Winnie~ 阅读(1880) 评论(0) 推荐(0)
摘要:写在前面,参考文章链接: 1.博客园(https://www.cnblogs.com/everzin/p/8594707.html) 2.公众号文章 装饰器是什么,什么时候会用到装饰器呢? 写代码要遵循开放封闭原则,虽然在这个原则是用的面向对象开发,但是也适用于函数式编程,简单来说,它规定已经实现的 阅读全文
posted @ 2019-03-19 16:49 Winnie~ 阅读(279) 评论(1) 推荐(0)
摘要:有了前一篇文章的介绍,再输出目录,也不过是多写一个函数的事情了,我把它封装成了类~~ 发现walk()真的是一个超级方便好用的函数。这种情况下用listdir()是搞定不了的啦 结果: 阅读全文
posted @ 2018-12-11 16:51 Winnie~ 阅读(1909) 评论(0) 推荐(0)