编程技术

自动化测试框架:用AOP为每一个操作写Log

在写这个自动化测试框架的时候,我一直在留意各方面的需求。毕竟,我本人并没有做过真正的自动化测试。管理测试方面的领导,提出一个需求,就是在用例运行失败的时候,应该将过程记录下来,并形成报告,Email给相关人员。个人认为这个需求是非常合理的。事实上,任何系统,如果没有输出,那么只能停留在程序员手里。有了报表,才叫真正解决了用户的目标需求。在分析这个需求的过程,我提出了针对每一个操作接口的每一个方法,进行Log。而完成这个工作的第一方法,就想到了AOP,也就是

系统 2019-08-29 23:23:00 2375

编程技术

zoj 1005 Jugs

本来以为今天中午这题不会写出来了,不过幸运AC了;先说一下,我知道这题好的方法是用搜索DFS(BFS貌似不爽吧);不过我还不会用DFS,确切说是不敢用没有大胆尝试,DFS,一定要试着写一写;说一下我的原理吧:小杯子往大杯子里pour,只要小杯子能装下,大的一定也能,所以我只让小的pour大的,并且只检验大的杯子里的数是否是目标值(应该迟早能达到目标值,只不过这种做法不是最优解而已);还有,分别用x,y来表示小大杯子里的实际水量很有助于理解哦

系统 2019-08-29 22:28:16 2375

编程技术

程序员能力矩阵 你属于哪一层?

注意:每个层次的知识都是渐增的,位于层次n,也蕴涵了你需了解所有低于层次n的知识。计算机科学ComputerScience软件工程SoftwareEngineering程序设计Programming经验Experience【CSDN编者按】上述图书中,第一级对应的英文为Unleashedseries,21daysseries,24hourseries,dummiesseries...其实也有很多不错的书,Unleashed即图灵所出揭秘系列,好书不少;即使

系统 2019-08-29 21:58:49 2375

编程技术

在BeagleBoard上运行QNX系统(二)

在BeagelBoard上成功运行QNX系统后,本以为可以很快开始进一步的学习,没想到遇到麻烦的问题。又经过几天的努力才把问题弄清楚,下面继续记录折腾过程。第一次成功地在BeagleBoard上运行QNX系统后首先注意到的问题是QNX系统不能够自动启动,需要在串口上运行装载ifs文件的命令才能启动。针对这个问题,需要研究一下u-boot如何自动装载系统影像文件。发现的第二个问题更严重一些,就是QNX系统在Beag

系统 2019-08-12 09:30:26 2375

编程技术

【第二章】 IoC 之 2.2 IoC 容器基本原理 ——

2.2.1IoC容器的概念IoC容器就是具有依赖注入功能的容器,IoC容器负责实例化、定位、配置应用程序中的对象及建立这些对象间的依赖。应用程序无需直接在代码中new相关的对象,应用程序由IoC容器进行组装。在Spring中BeanFactory是IoC容器的实际代表者。SpringIoC容器如何知道哪些是它管理的对象呢?这就需要配置文件,SpringIoC容器通过读取配置文件中的配置元数据,通过元数据对应用中的各个对象进行实例化及装配。一般使用基于xml

系统 2019-08-12 01:33:00 2375

编程技术

排序算法

先给出比较有意思的一些网址:可视化的数据结构和算法和一些有意思的算法代码以及排序算法的动画演示。后续主要对常见的几种算法进行研究和分析,在分析的同时并适当的配以简单的可视化教程,方便理解。1、插入排序2、选择排序3、冒泡排序4、快速排序5、堆排序6、归并排序7、计数排序,基数排序和桶排序常见几种算法的比较,详细可参考算法性能比较:排序算法

系统 2019-08-12 01:32:40 2375

Python

python批量获取文本中的邮箱,并写入文件增强版,全匹配版

百度贴吧爬虫之获取邮箱系列之增强版,应该是任意邮箱了功能:获取文本中的邮箱上个基础版支持的不大好,对有些邮箱不支持,还有些其他问题读文本,且获取文本中的各种电子邮箱对获得的邮箱去重每个邮箱独占一行写入新的文件#coding:utf-8"""Name:email.pyAuthor:GSContect:2903344135@qq.comTime:2019/7/820:23Desc:"""importref=open('test.txt','r',encodin

系统 2019-09-27 17:57:15 2374

Python

Appium+python自动化(十六)- ADB命令,知否知否,应是必知必会

简介Android调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器的状态。adb(AndroidDebugBridge)是一个通用命令行工具,其允许您与模拟器实例或连接的Android设备进行通信。它可为各种设备操作提供便利,如安装和调试应用。Tips:在android_sdk/platform-tools/中找到adb工具,然后根据其具体的路径配置好环境变量。然后启动cmd输入‘adb’即可查看是否配置成功。有小伙伴会问,为什么我需要

系统 2019-09-27 17:56:38 2374

Python

详解Python 多线程 Timer定时器/延迟执行、Event事件

Timer继承子Thread类,是Thread的子类,也是线程类,具有线程的能力和特征。这个类用来定义多久执行一个函数。它的实例是能够延迟执行目标函数的线程,在真正执行目标函数之前,都可以cancel它。Timer源码:classTimer(Thread):def__init__(self,interval,function,args=None,kwargs=None):Thread.__init__(self)self.interval=interval

系统 2019-09-27 17:54:46 2374

Python

Python基础(五) - 在Conda中更改源

简介介绍一下在Python安装包的时候怎么能更改源,让下载速度提升。这里介绍的是通过conda进行安装的更改源方法。环境介绍系统环境:Windows10Python版本:Python3.5必备环境:Anaconda已经安装进入Anaconda3中的AnacondaPrompt程序在Windows程序中搜索“AnacondaPrompt”,右键以管理员运行。查看现有源在窗口中输入下面命令,用来查看现有的源condaconfig--showchannels增加

系统 2019-09-27 17:54:38 2374

Python

python数据分析系列之——Numpy的使用

1.numpy的导入以及查看版本>>>importnumpyasnp>>>print(np.__version__)1.15.42.创建一维(或多维)数组#通过list初始化来创建>>>np.array([1,2,3,4,5])array([1,2,3,4,5])#通过arange方法生成>>>np.arange(10)array([0,1,2,3,4,5,6,7,8,9])#指定创建范围和步长>>>np.arange(3,10,2)array([3,5,

系统 2019-09-27 17:54:33 2374

Python

Python Web程序搭建简单的Web服务器

上一篇讲了《Python入门》Windows7下PythonWeb开发环境搭建笔记,接下来讲一下Python语言Web服务的具体实现:第一个PythonWeb程序――简单的Web服务器。与其它Web后端语言不同,Python语言需要自己编写Web服务器。如果你使用一些现有的框架的话,可以省略这一步;如果你使用PythonCGI编程的话,也可以省略这一步;用Python建立最简单的web服务器利用Python自带的包可以建立简单的web服务器。在DOS里cd

系统 2019-09-27 17:53:04 2374

Python

Python openpyxl 打开excel,修改某个参数值,读取到随着这个

记录一下这个历史性的时刻!纠结了好久的问题终于解决了。首先要感谢一下这个帖子:https://bbs.csdn.net/topics/392568534这个博主针对问题:openpyxl用data_only=True后,读取公式的值后save后,发现文件中公式都没了,请问有解决办法吗?提出,用win32打开再保存:defjust_open(filename):xlApp=Dispatch("Excel.Application")xlApp.Visible=

系统 2019-09-27 17:52:22 2374

Python

如何用Notepad++编写python程序(Python3)

MENU安装Python3(Windows操作系统环境)下载Python安装包安装Notepad++配置Notepad++的Python环境命令原理部分内容摘自百度经验安装Python3(Windows操作系统环境)下载Python安装包下载Python3.如图点击打开下载页面选择适合自己电脑版本的安装包一般就下载executableinstaller,x86表示是32位机子的,x86-64表示64位机子的。下载并打开安装包记得勾选AddPython3.6

系统 2019-09-27 17:50:55 2374

Python

干货 | Python之Docker配置redis主从哨兵

1.从docker仓库拉取redis镜像dockerpullredis2.在/home下分别创建redis-6379-data,redis-6380-data,redis-6381-data3.拷贝/etc/redis/redis.conf到/home下4.复制redis.conf为redis-6379.conf,redis-6380.conf,redis.6381.con并且分别修改其中的配置,logfile指定不同的文件port6380logfile"

系统 2019-09-27 17:50:32 2374