自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 重构一份应用pytest框架的测试代码

项目中有份API测试的代码的结构大致如下 /api_test – test_device_api01_via_lan.py – test_device_api02_via_lan.py – test_device_api03_via_lan.p...

2018-05-11 23:26:41 649 0

原创 pytest测试框架中的setup和tearDown - 1

这次内容是阅读[pytest fixtures: explicit, modular, scalable](https://docs.pytest.org/en/latest/fixture.html )的一些总结,pytest fixture功能很丰富,功能远不止用来构建测试中传统的setup...

2018-05-09 21:48:31 1116 0

原创 pytest测试框架中的setup和tearDown - 0

最近对pytest比较感兴趣,看了pytest的文档classic xunit-style setup,这里做个小结,直接看代码。 # content of test_websites.py ''' Setup/teardown in pytest, see ht...

2018-05-08 21:51:19 2360 0

原创 不使用IDE的情况下,导入自定义Python module的最佳实践 - 1

CPyUG确实是个挺好的组织,Python方面的问题一般都会有热心又专业的小伙伴帮忙回答,针对上次导入自定义Python module的问题,目前有两个可行的办法。 方法1是针对应用了pytest框架的测试项目的,例如有如下项目结构。 项目中定义了一个包util,其中有模块global_v...

2018-05-06 22:20:31 196 0

原创 不使用IDE的情况下,导入自定义Python module的最佳实践 - 0

最近比较喜欢微软出的Visual Studio Code这个代码编辑器,和Sublime有点相似,但是用起来更方便一些。和PyCharm不一样,用VS code写自定义module的时候,会出现找不到module的报错,原因是VS code不会像IDE那样,帮用户把项目目录临时性加入到系统PATH...

2018-05-04 21:38:19 103 0

原创 【高质量Python代码】01 - 将常量放在同一个文件里并防止修改

最近在看《编写高质量代码-改善Python程序的91个建议》,里面建议了很多比较好,比较Pythonic的代码写法,打算边看边实践,挑选一些记录下,这算是第一篇吧。 常量也就是那些一般不会变的数据,建议的做法如下: ''' Best practice 01 Pu...

2018-04-19 20:31:30 1376 0

转载 转一篇关于Python类属性与实例属性的博文

链接见 https://segmentfault.com/a/1190000002671941 小结下我的理解,如下一个Person类 class Person(object): school_name = "ABC school" def __init_...

2018-04-17 23:47:00 66 0

原创 virtualenv的使用小记

virtualenv可以用来创建一套虚拟的、独立的、干净python环境,如果系统中安装有多个python版本,则还可以指定版本。 pip install virtualenv pip安装virtualenv。 virtualenv venv --python=python3.6 创建一个名...

2018-04-17 20:48:50 148 0

原创 解决上篇博文里提到的不能使用unittest.mock.patch()的问题

今天研究了下,问题解决了,关键还是一个查找module的问题。 小结一个import的基础用法 很多源代码里看到这样的用法,from flask import Flask,from models.item import ItemModel,然后当我自己创建了一个名字叫person的modu...

2018-04-16 20:49:56 532 0

原创 Python的单元测试unittest中的Mock使用小结

前面一篇博文简单说了使用unittest.mock对无返回值的函数做单元测试。这里是更多一些例子的总结。 被测函数中使用到了input需要自动化输入 #!/usr/bin/env python3 from unittest import TestCase from unittest....

2018-04-14 21:41:40 2491 0

原创 使用unittest做类似print这样无return返回值的函数的单元测试

在看Python里自带的一个单元测试库unittest,有个有意思的应用是可以对类似于print()这样无return返回值的函数做验证。见下面代码。 #!/usr/bin/env python3 from unittest import TestCase from unittest.mock...

2018-04-11 21:40:29 2117 2

原创 'Master Jenkins CI For DevOps and Developers'课程总结 - 2

CI/CD在Jenkins上的简易实现 Build job 在pipeline的最上游的Build job里的Configure里做如下设置,可使该job以1分钟1次的频率,去轮询Git repository里的代码,如果有更新,则即刻开始build。* * * * *表示轮询频率是每一天的每...

2018-04-05 21:42:24 114 0

原创 'Master Jenkins CI For DevOps and Developers'课程总结 - 1

在Maven项目里添加Java静态代码质量检查并发布报告 需要的插件: Maven Integration plugin Checkstyle Plug-in 具体步骤: 新建job,选择Freestyle project。 Source Code Management选择Git,填...

2018-04-05 18:10:25 79 0

原创 'Master Jenkins CI For DevOps and Developers'课程总结 - 0

这个课程的内容不算多,不到一个星期就看完了,赶紧来做个总结和笔记。 课程中的内容大致分为3部分。 普通的Jenkins pipeline的创建。从github(git)上pull代码,触发的时间设置(Poll SCM),配置JDK、Maven、Git,配置Maven项目,Maven项目中cl...

2018-04-04 00:07:35 201 0

原创 Enrolled 'Master Jenkins CI For DevOps and Developers'!

在Thoughtworks第一次接触pipeline等概念后,非常认同由Jenkins pipeline串联起来的开发-测试-部署这个工作模式,试听了下这个课程,instructor是James Lee,可能是位华裔,口音好听多了,而且课程设计可称的上是精致,确实是认真备课过的。目前已经完成了好几...

2018-04-01 23:56:21 62 0

原创 测试框架设计学习笔记 - 4

已经把课程基本看完,简单总结下Maven后面的内容: Ant的基本使用(build.xml)。这里作为小白,我有些困惑,既然Maven已经可以提供从命令行拉起所有的testng测试,那ant在此有什么用?我在Q&A上向讲师提出这个问题,表示不太明白为什么这里需要学习ant,似乎...

2018-04-01 22:07:20 153 0

原创 2018年的学习计划

2018年马上就要过完第一个季度了(1~3月),感觉还是需要计划一下今年的时间,集中一些注意力。 扯点闲话,以前学习了一点点王阳明心学的皮毛,知行合一4个字,本来是挂在博客的title上,后来才知道知行合一并不是最初那么字面的意思,其实大概是说3个瞬间,1人眼在看到事物后,2心(大脑)对看到的东...

2018-03-25 23:38:43 948 0

原创 Jenkins执行完构建后testng插件找不到testng-results.xml

昨天把Jenkins(ver. 2.107.1,此处注意,几乎是一个最新的Jenkins版本)安装在mac上,并建了一个简单的job,来体验下Jenkins+Maven+testng的效果,遇到这样一个有意思的问题,就是使用默认设置,也配置了testng的测试结果报告插件, 当Jenkins...

2018-03-23 20:33:32 2395 0

原创 测试框架设计学习笔记 - 3

学习到28节,testng部分结束了,开始学习Maven。主要内容是Maven的介绍,安装,配置,和几个主要Maven命令: mvn archetype:generate mvn eclipse:eclipse mvn test mvn test -Psanity //sanity 是POM...

2018-03-21 23:15:57 84 0

原创 小结WEB接口测试

最近在做一个接口测试的更新,往里面添加了很多新的测试,连续加班两周,这里做一些总结。 被测设备介绍: 这是一个针对某款智能设备的WEB API的测试,设备内运行OpenWRT系统,内部使用一套节点来记录很多设备信息和配置信息,设备也提供一个WEB GUI页面,可以通过打开其主页来做配置,也提供...

2018-03-16 22:20:07 1030 0

原创 测试框架设计学习笔记 - 2

学习到18节,完成了testNG的部分,其中包括了以下testNG的特性: group,例如加上tag @Test(groups={“smoke”}),就表示这个test属于smoke group,可以属于多个group,然后相应的在xml文件中,做如下定义,即可使用group,这里可以inc...

2018-02-12 15:38:55 83 0

原创 测试框架设计学习笔记 - 1

学习到第12节课程,了解到testNG的anotation有以下(and more): @BeforeSuite suite是testNG使用的xml文件中的一个概念,也许可以理解为最上层的一个测试用例套件,一个suite可以包含有多个test @BeforeTest test这里可以理解成一...

2018-01-29 23:01:49 85 0

原创 测试框架设计学习笔记 - 0

开始学习Udemy上的一个课程Design Selenium Test framework from scratch-Architect level,随手写一些笔记。 课程第一部分主要在讲testNG,在项目上目前一直接触的是JUnit,用起来还比较方便,小结一下,用到了JUnit里以下特性: ...

2018-01-28 08:11:23 156 0

原创 实现Selenium Webdriver自动化测试中对失败测试进行截图并发布到Jenkins

在基于Selenium Webdriver(Java) + Junit4 + Jenkins 的web 自动化测试中,进行失败test的截图,同时发布到Jenkins上。 这两天在研究这个问题,这是一点总结,首先需要版本够高的Jenkins,并安装Junit Attachments plugin...

2018-01-23 22:40:38 907 0

原创 让JUnit4里的test运行时动态决定执行或不执行(Skip)

其实还是上次的问题,在上一篇中提到解决办法是应用 JUnit4 里的 Rule 来实现,今天继续研究了下,觉得还是不够好,因为实际需求是,需要在运行测试的时候去动态skip 某些test,今天请教了下一位朋友,就有了如下代码: package com.junit4test; import or...

2018-01-16 17:34:55 586 0

原创 Junit框架中动态选择是否执行test

一组应用了junit的测试,需要增加一个动态判断,来决定是否跑test。我知道这组测试其实已经应用了junit的Category功能,来做测试组的初期分类,在跑这一整套测试的时候,执行环节会针对不同的被测产品给出一个custom参数,测试代码跑起来后会根据这个custom的值,来选择排除某些cat...

2018-01-11 20:37:32 206 0

原创 远程修改OpenWRT开发板中的文件

这两天收到一个任务,某接口测试的测试用例需要更新,需要在测试中修改开发板中的文件。 先白话下上层的一些东西,包括这套接口测试在内,可见的全部测试都挂在Jenkins上,测试对象是某刷了OpenWRT修改版的智能设备,Jenkins上游自然是自动编译生成build文件的各种job(有主线和针对不同...

2017-12-26 23:46:44 175 0

原创 用shell中用jq解析json遇到compile error

前几天接到任务,需要完善一段shell写的测试脚本,其中的问题最后归结成这样一个问题,已知如下json格式的字符串 { "up": true, "pending": false, "available":...

2017-12-05 23:18:12 589 0

原创 Python实战计划学习作业2-2

from bs4 import BeautifulSoup import requests import pymongo from string import whitespaceclient = pymongo.MongoClient('localhost', 27017) ...

2016-12-07 23:57:36 257 0

原创 用Shell精简log文件(shell的字符串和文件操作)

当前目录下有文件log,内容大致如下2015-11-29 54144a04ad4asd044a4s CSeq:1 INVITE sip:2112@sipserver.com:5060 SIP/2.0 2015-11-29 54144a04ad4asd045457 CSeq:1 INVITE SIP...

2016-11-29 16:31:15 379 0

原创 Python实战计划学习作业2-1

代码如下import pymongo from bs4 import BeautifulSoup import requestsclient = pymongo.MongoClient('localhost', 27017) xiaozhu = client['xia...

2016-11-26 00:09:01 336 0

原创 Python实战计划学习作业1-5

代码如下from bs4 import BeautifulSoup import requestssingle_url = "http://weheartit.com/inspirations/taylorswift?scrolling=true&page=" targ...

2016-11-22 23:18:12 1679 0

原创 Python实战计划学习作业1-4

代码如下from bs4 import BeautifulSoup import requests import time import os import urllib import randomsingle_url = "http://weheartit.com/inspiratio...

2016-11-16 22:29:12 880 0

原创 Python实战计划学习作业1-3

代码如下:from bs4 import BeautifulSoup import requestsurls = ["http://bj.xiaozhu.com/search-duanzufang-p{}-0/".format(str(i)) for i in range(2,...

2016-11-14 22:45:35 2989 0

原创 Python实战计划学习作业1-2

代码如下from bs4 import BeautifulSouphtml_path = "/Users/reed/Documents/dev/Plan-for-combating/week1/1_2/1_2answer_of_homework/index.html"with ...

2016-11-12 22:54:02 373 0

原创 Python实战计划学习作业1-1

不是学习Python的第一天,跟随教程做了如下网页,问题来了,为啥中央3个图片不是居中的,右侧有多余空白。代码如下<!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu...

2016-11-09 21:50:46 330 0

原创 比较时间字符串的问题

最近做Web UI方面的测试,遇到个问题: 某设备界面有一个开机时间显示 - “Uptime: 9minutes 21seconds”,这里添加一个测试需要比较刷新变动之后的Uptime比之前的Uptime多,比如之前是9minutes 21seconds,后来是9minutes 23seco...

2016-08-29 16:36:14 1111 0

原创 最近的总结

最近接触到不少新东西, 很想写博客记录下来,先写列表,晚上回去继续 1. Selenium WebDriver的企业应用 2. Jenkins自动化部署 3. Java的深拷贝 4. Selenium中,获取List列表后,页面刷新后导致原来的element引用失效的问题 5. ...

2016-04-08 11:50:38 222 0

原创 在Mac上用Eclipse + Maven配置Selenium WebDriver开发环境

Selenium官网上建议用Maven部署selenium webdriver开发环境,今天在Mac上照做了一遍,现记录一下。 Step 1. 去Eclipse官网下载Eclipse IDE for Java EE Developers的Mac 64位版本并解压到Mac的Applicatio...

2015-01-31 23:38:09 1728 0

原创 输出字符串出现频率最高的字母,用到了list中的排序和Iambda

看到老王Python上的一篇有关Iambda的文章http://www.cnpythoner.com/post/140.html,其中提到一题目 - 输出a字符串出现频率最高的字母,代码如下: a = "aAsmr3idd4bgs7Dlsf9eAF" l = ([(x,a...

2014-12-25 00:06:03 582 0

提示
确定要删除当前文章?
取消 删除