基于python自动化测试平台与虚拟化技术结合的思考
- 背景:
自动化测试行业内,个人觉得主力语言是python、java。这里讨论下基于python自动化框架设计与case开发,用过python的都知道它的好处,但是根据实际项目需要有了很多迎面而来的困难--主机迁移、第三方软件包与python版本、环境杂乱、外界影响等。这些问题都是很糟糕的,给开发人员带来了很大困扰,导致无法实现自动化测试的作用最大化。
- 解决方案
基于以上背景我们有了两个解决方案:(这里讨论一下解决方案不涉及具体框架设计)
1.基于docker容器化自动化平台。docker可以实现物理上的独立,不受外界人为和部分物理因素影响,最多可能存在docker将一些业务镜像日志或者配置文件挂载在本地主机磁盘。但是要想容器化开发代价是庞大的,对于技术设计能力要求比较高。
2.基于虚拟化技术使自动化平台独立。VMware、Xen、HyperV、KVM等业内推崇的虚拟中间件都是广受好评的,而且实现虚拟需求相比docker方便、节能很多。
- 总结
这里是不是会说“原来这就是虚拟化技术啊”,其实这就算是,但只是冰山一角。往往那些阳春白雪都是我们熟知的~
基于python自动化测试平台与虚拟化技术结合的思考的更多相关文章
- KVM基于X86硬件辅助的虚拟化技术实现机制【转】
内存虚拟化 Shadow Paging 作者 Shawn 在其中文博客中很详尽地介绍了 KVM 在只支持一级分页的 x86 平台上用 “Shadow Paging”进行 MMU 虚拟化的实现,由于目前 ...
- 虚拟化技术KVM
1>虚拟化技术: 计算机虚拟化技术是多种技术的综合实现,它包括硬件平台,操作系统,存储以及网络等,简单地说,虚拟化技术就是在单台主机上可以虚拟多个虚假主机,并可以在这些虚拟主机上运行不同的操作系 ...
- 虚拟化技术原理(CPU、内存、IO)
本文来自:http://www.ywnds.com/?p=5856 虚拟化 云计算现在已经非常成熟了,而虚拟化是构建云计算基础架构不可或缺的关键技术之一. 云计算的云端系统, 其实质上就是一个大型的分 ...
- 基于python的互联网软件测试开发(自动化测试)-全集合
基于python的互联网软件测试开发(自动化测试)-全集合 1 关键字 为了便于搜索引擎收录本文,特别将本文的关键字给强调一下: python,互联网,自动化测试,测试开发,接口测试,服务测试,a ...
- selenium2自动化测试实战--基于Python语言
自动化测试基础 一. 软件测试分类 1.1 根据项目流程阶段划分软件测试 1.1.1 单元测试 单元测试(或模块测试)是对程序中的单个子程序或具有独立功能的代码段进行测试的过程. 1.1.2 集成测试 ...
- 基于Python+Django的Kubernetes集群管理平台
➠更多技术干货请戳:听云博客 时至今日,接触kubernetes也有一段时间了,而我们的大部分业务也已经稳定地运行在不同规模的kubernetes集群上,不得不说,无论是从应用部署.迭代,还是从资源调 ...
- python自动化测试(4)-使用第三方python库技术实现
python自动化测试(4)-使用第三方python库技术实现 1 概述 关于测试的方法论,都是建立在之前的文章里面提到的观点: 功能测试不建议做自动化 接口测试性价比最高 接口测试可以做自动化 ...
- 搭建基于python +opencv+Beautifulsoup+Neurolab机器学习平台
搭建基于python +opencv+Beautifulsoup+Neurolab机器学习平台 By 子敬叔叔 最近在学习麦好的<机器学习实践指南案例应用解析第二版>,在安装学习环境的时候 ...
- 《Selenium2自动化测试实战--基于Python语言》 --即将面市
发展历程: <selenium_webdriver(python)第一版> 将本博客中的这个系列整理为pdf文档,免费. <selenium_webdriver(python)第 ...
随机推荐
- JavaScript数据迭代方法差别
js有很多总接待方法,ES6之后又新增了几个: 这里主要讨论数组迭代遍历的方法所以不会细讲for...in... ES5.ES6数组迭代方法有: forEach map filter some eve ...
- jquery序列化serialize()方法空格变为+问题解决参考方法
$("#sendNoticeData-form").serialize();会在value中存在空格的地方转化为+符合.比如:name:tiwax aaa序列化后为tiwax+aa ...
- FastDFS + Nginx 安装
1.安装FastDFS依赖lib包 cd /usr/local/src/ git clone https://github.com/happyfish100/libfastcommon.git cd ...
- 使用nodejs搭建api的mock服务
1. 介绍 公司的业务开发都是静态页面,开发前期总是避免不了获取api的问题.在vue中有一些mockjs的方案,方案都是注入性质的,和最终部署总是有差别,而且业务大部分还在zepto下,很难找到合适 ...
- Maven json包找不到解决办法
在Maven中央仓库找到Maven的jar <dependency> <groupId>net.sf.json-lib</groupId> <artifact ...
- 如何使用 OpenCV 打开摄像头获取图像数据?
OpenCV 如何打开摄像头获取图像数据? 代码运行环境:Qt 5.9.1 msvc2015 32bit OpenCV 3.3.0 #include "include/opencv2/ope ...
- React Native填坑之旅 -- FlatList
在React Native里有很多种方法来创建可滚动的list.比如,ScrollView和ListView.他们都各有优缺点.但是在React Native 0.43里增加了两种行的list vie ...
- 【mysql】phpMyadmin上传文件限制
在使用phpMyadmin导入数据库的时候,因为脚本在上传的时候响应时间过长,导致大于2M的数据偶尔会导入失败.而且大多数默认设置,只能导入2M的数据. 遇到这种情况, 我们可以修改php.ini以及 ...
- C#扩展方法类库StringExtensions
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- 小白进阶之Scrapy(基于Scrapy-Redis的分布式以及cookies池)
首先我们更新一下scrapy版本.最新版为1.3 再说一遍Windows的小伙伴儿 pip是装不上Scrapy的.推荐使用anaconda .不然还是老老实实用Linux吧. conda instal ...