Runner

python接口自动化(二十一)--unittest简介(详解)

半世苍凉 提交于 2021-02-18 15:29:42
简介   前边的随笔主要介绍的requests模块的有关知识个内容,接下来看一下python的单元测试框架unittest。熟悉 或者了解java 的小伙伴应该都清楚常见的单元测试框架 Junit 和 TestNG,这个招聘的需求上也是经常见到的。python 里面也有单元 测试框架-unittest,相当于是一个 python 版的 junit。python 里面的单元测试框架除了 unittest,还有一个 pytest 框架,这个实际上用的比较少,后面有空再继续介绍和分享。unittest单元测试框架不仅可以适用于单元测试,还可以适用WEB自动化测 试用例的开发与执行,该测试框架可组织执行测试用例,并且提供了丰富的断言方法,判断测试用例是否通过,最终生成测试结果。 学习和了解unittest 1、查看其中文官网: https://docs.python.org/zh-cn/3/library/unittest.html 英文官网: https://docs.python.org/3/library/unittest.html 2、先导入 unittest用 help 函数查看源码解析查看描述: Python unit testing framework, based on Erich Gamma's JUnit and Kent Beck's Smalltalk

杨玲 201771010133《面向对象程序设计(java)》第十六周学习总结

ぃ、小莉子 提交于 2021-02-17 22:23:51
《面向对象程序设计( java )》第十六周学习总结 第一部分:理论知识学习部分 1、程序是一段静态的代码,它是应用程序执行的蓝本。进程是程序的一次动态执行,它对应了从代码加载、执行至执行完毕的一个完整过程。操作系统为每个进程分配一段独立的内存空间和系统资源,包括:代码数据以及堆栈等资源。每一个进程的内部数据和状态都是完全独立的。多任务操作系统中,进程切换对CPU资源消耗较大。 2、多线程是进程执行过程中产生的多条执行线索。线程是比进程执行更小的单位。线程不能独立存在,必须存在于进程中,同一进程的各线程间共享进程空间的数据。每个线程有它自身的产生、存在和消亡的过程,是一个动态的概念。多线程意味着一个程序的多行语句可以看上去几乎在同一时间内同时运行。线程创建、销毁和切换的负荷远小于进程,又称为轻量级进程。 3、Java实现多线程有两种途径:创建Thread类的子类;在程序中定义实现Runnable接口的类。 4、用Thread类的子类创建线程:首先需从Thread类派生出一个子类,在该子类中重写run()方法。然后用创建该子类的对象Lefthand left=new Lefthand(); Righthand right=new Righthand();最后用start()方法启动线程 left.start(); right.start(); 5

java基础学习总结——线程(一)

跟風遠走 提交于 2021-02-17 13:15:18
原文出处 一、线程的基本概念    线程理解:线程是一个程序里面不同的执行路径   每一个分支都叫做一个线程,main()叫做主分支,也叫主线程。   程只是一个静态的概念,机器上的一个.class文件,机器上的一个.exe文件,这个叫做一个进程。程序的执行过程都是这样的:首先把程序的代码放到内存的代码区里面,代码放到代码区后并没有马上开始执行,但这时候说明了一个进程准备开始,进程已经产生了,但还没有开始执行,这就是进程,所以进程其实是一个静态的概念,它本身就不能动。平常所说的进程的执行指的是进程里面主线程开始执行了,也就是main()方法开始执行了。进程是一个静态的概念,在我们机器里面实际上运行的都是线程。   Windows操作系统是支持多线程的,它可以同时执行很多个线程,也支持多进程,因此Windows操作系统是支持多线程多进程的操作系统。Linux和Uinux也是支持多线程和多进程的操作系统。DOS就不是支持多线程和多进程了,它只支持单进程, 在同一个时间点只能有一个进程在执行,这就叫单线程 。   CPU难道真的很神通广大,能够同时执行那么多程序吗?不是的,CPU的执行是这样的:CPU的速度很快,一秒钟可以算好几亿次,因此CPU把自己的时间分成一个个小时间片,我这个时间片执行你一会,下一个时间片执行他一会,再下一个时间片又执行其他人一会,虽然有几十个线程

常用端口号

[亡魂溺海] 提交于 2021-02-16 09:12:53
常用端口号: IIS(HTTP):80 SQLServer:1433 Oracle:1521 MySQL:3306 FTP:21 SSH:22 Tomcat:8080 常用和不常用端口一览表 端口:0 服务:Reserved 说明:通常用于分析操作系统。这一方法能够工作是因为在一些系统中“0”是无效端口,当你试图使用通常的闭合端口连接它时将产生不同的结果。一种典型的扫描,使用IP地址为0.0.0.0,设置ACK位并在以太网层广播。 端口:1 服务:tcpmux 说明:这显示有人在寻找SGI Irix机器。Irix是实现tcpmux的主要提供者,默认情况下tcpmux在这种系统中被打开。Irix机器在发布是含有几个默认的无密码的帐户,如:IP、GUEST UUCP、NUUCP、DEMOS 、TUTOR、DIAG、OUTOFBOX等。许多管理员在安装后忘记删除这些帐户。因此HACKER在INTERNET上搜索tcpmux并利用这些帐户。 端口:7 服务:Echo 说明:能看到许多人搜索Fraggle放大器时,发送到X.X.X.0和X.X.X.255的信息。 端口:19 服务:Character Generator 说明:这是一种仅仅发送字符的服务。UDP版本将会在收到UDP包后回应含有垃圾字符的包。TCP连接时会发送含有垃圾字符的数据流直到连接关闭

解决VS Code使用code runner开发Python乱码问题

空扰寡人 提交于 2021-02-14 12:06:31
微软开发的VS Code是一个跨平台的文本编辑器,通过各种插件,可以把自己武装成无所不能的IDE。 刚刚安装完VS Code时,迫不急待地安装了C/C++、Python以及Code Runner插件,本想体验一下进行Python开发,结果刚上手就遭遇了Code Runner和Python显示中文出现乱码的问题,研究了两天,解决方法整理如下。 随手写了一句测试代码: 1. 使用VS Code的“调试”功能不存在中文乱码的问题,编写好代码之后,设置Python路径,在界面最下面。    按下F5,调试显示正常   2. 通过Code Runner插件进行代码编译时(右上角三角符号或快捷键ctrl + shift + N),结果输出中文乱码,而且无论是输出什么,乱码都一样,猜测是哪里配置问题。   通过阅读Code Runner文档,发现是自己没有为其配置Python的路径。    在环境变量里加上了Python安装路径并 重新打开VS Code 之后,再进行编译,输出变了,目测是输出的中文内容是乱码,之前的提示没有了。下面再解决输出乱码问题   解决输出乱码问题:   方法一:通过Code Runner输出到“OUTPUT”里面是乱码,但是VS Code自己输出到“终端”里不是乱码,可以修改Code Runner的配置,使其输出到内嵌的终端中,可解决输出乱码问题。 修改为  

Postman + newman + jenkins 的API自动化测试应用

回眸只為那壹抹淺笑 提交于 2021-02-13 20:57:03
一、环境配置 Postman postman 的具体使用可以参考另外一篇文章: postman 做接口测试之学习笔记 Newman 第一步,安装nodejs。 第二步,在nodejs命令行安装newman,即命令行输入如下命令: npm install -g newman jenkins 去官网( https://jenkins.io/index.html )下载jenkins 二、Postman + Newman + jenkins 的使用 1. 在postman中导出testcase 文件夹(即存各个接口的collection文件夹)和设置的环境变量文件。 如下所示,导出来的是个json 格式的文件 2. jenkins配置 注意:如果是安装在本地的Jenkins,要将jenkins开启,切换到jenkins.war 的路径下, 执行 java -jar jenkins.war 则可以开启了。 在jenkins上配置如下图,这个路径就是上面通过postman导出文件的路径。 剩下的就是jenkins的常规操作了,比如设置好邮箱后点击立即构建或者设置多久构建一次,这样自动化就跑起来了,等待自动化测试结束后我们就可以收到测试成功或者失败的测试报告邮件了(依赖于设置)。 通过上面这些步骤即可完成基于postman和Jenkins的自动化接口测试。 Newman的使用: 可以参考:

python:unittest之discover()方法批量执行用例

纵然是瞬间 提交于 2021-02-12 05:50:12
自动化测试过程中,自动化覆盖的功能点和对应测试用例之间的关系基本都是1 VS N,如果每次将测试用例一个个单独执行,不仅效率很低, 无法快速反馈测试结果,而且维护起来很麻烦。在python的单元测试框架unittest中,提供了批量执行的测试用例的方法。 这篇博客,介绍下unittest框架的常用类和方法,以及利用discover()方法批量执行测试用例的方法。。。 官方文档: unittest单元测试框架 一、unittest框架 首先介绍一下unittest框架和执行测试用例相关的几个模块: 1、TestCase()类 TestCase类的实例表示unittest中的逻辑测试单元,此类旨在用作基类,具体测试由具体的子类实现。该类实现了测试运行器所需的接口,以允许它驱动测试, 以及测试代码可用于检查和报告各种故障的方法。每个实例都将运行unittest的一个名为methodName的基本方法。 2、setUp()方法 该方法的主要作用是用来初始化测试环境,它在测试用例执行之前立即调用,除了AssertionError或SkipTest,通过该方法产生的任何异常都将被认为是错误的。 只有测试成功执行,才会被调用,默认什么都不做。 3、tearDown()方法 该方法的主要作用是在测试用例执行完毕后记录测试结果并恢复测试环境,即使出现异常,也会调用此方法。 4、run()方法

测试工具

断了今生、忘了曾经 提交于 2021-02-12 04:52:57
概述 使用 idea 自带的 code coverage 工具 背景 了解 白盒测试用例设计 和 测试覆盖率 之后, 大概就需要 实践 了 实践的话, 还是需要 工具 来检验效果 工具选取 选项 JaCoCo IDEA Code Coverage 结果 两个都想试试 先看看 IDEA CC, 这个比较简单 JaCoCo 感觉更加复杂 指标 使用的场景都更加复杂 先讲 IDEA Code Coverage 简单 Idea 自带, 集成方便 1. 准备 理论基础 白盒测试用例设计 测试覆盖率 环境 os win 10 ide idea 2018.2 组件 java jdk8 testng 6.14.3 maven 3.6.0 代码 maven architecture quickstart 其他 idea 插件 coverage 这个一定要有 有了, 一定要打开 idea 添加插件, 我就不讲了 testng 的配置文件 这个我也不细讲了 自动生成配置文件的插件, 我之前讲过 配置文件里一些主要的配置, 我也讲过 2. 触发 概述 通过 执行测试, 触发 Coverage 插件 步骤 执行测试 进入某个测试类 比如 maven 工程自带的 AppTest 类 执行测试 在 类 中右键 选择 'Run Apptest with Coverage' 当然, 执行方式有很多 方法 类

《一头扎进》系列之Python+Selenium自动化测试框架实战篇6

拜拜、爱过 提交于 2021-02-11 01:46:20
1. 简介   本文开始介绍如何通过unittest来管理和执行测试用例,这一篇主要是介绍unittest下addTest()方法来加载测试用例到测试套件中去、用addTest()方法来加载我们测试用例到suite中去和利用discover()方法去加载一个路径下所有的测试用例。 2. addTest()方法   这里首先介绍unittest下addTest()方法来加载测试用例到测试套件中去。为了演示效果,我在前面文章的脚本基础上,新建了一个测试脚本,这个测试脚本有一个测试用例,加上前面的测试脚本,一共就是三个测试用例,前面那个测试类里面包括两个测试用例。 新建的测试脚本,test_get_page_title.py代码如下: 2.1 代码实现: 2.2 参考代码: # -*- coding:utf-8 -*- # 1.先设置编码,utf-8可支持中英文,如上,一般放在第一行 # 2.注释:包括记录创建时间,创建人,项目名称。 ''' Created on 2019-12-24 @author: 北京-宏哥 QQ交流群:705269076 Project: 《《一头扎进》系列之Python+Selenium框架设计篇5- 价值好几K的框架,呦!这个框架还真牛叉哦!!! ''' # 3.导入模块 import unittest from automation_framework

saltstack的salt-api介绍

泪湿孤枕 提交于 2021-02-02 15:30:34
一、salt-api安装 yum install salt-api pyOpenSSL -y #pyOpenSSL 生成自签证书时使用 二、生成自签名证书(ssl使用) [root@master certs]# salt- call tls.create_self_signed_cert local: Created Private Key: " /etc/pki/tls/certs/localhost.key. " Created Certificate: " /etc/pki/tls/certs/localhost.crt. " [root@master certs]# ls localhost.crt localhost.key 三、创建基于pam认证的系统用户 [root@master certs]# useradd -M -s /sbin/nologin salt-api [root@master certs]# echo "salt-api" | passwd salt-api -- stdin Changing password for user salt- api. passwd : all authentication tokens updated successfully. [root@master certs]# 四、在master节点新增配置文件 [root