自动化测试

百度都有哪些开源项目呢?本文推荐一下。

为君一笑 提交于 2019-12-08 16:21:36
ECharts是一款由百度前端技术部开发的,基于Javascript的数据可视化图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表。   提供大量常用的数据可视化图表,底层基于ZRender(一个全新的轻量级canvas类库),创建了坐标系,图例,提示,工具箱等基础组件,并在此上构建出折线图(区域图)、柱状图(条状图)、散点图(气泡图)、饼图(环形图)、K线图、地图、力导向布局图以及和弦图,同时支持任意维度的堆积和多图表混合展现。   开源自动驾驶平台 ApolloAuto   Apollo (阿波罗)是一个开放的、完整的、安全的平台,将帮助汽车行业及自动驾驶领域的合作伙伴结合车辆和硬件系统,快速搭建一套属于自己的自动驾驶系统。   Apollo 是百度重点打造的 AI 开放平台之一,计划主要包含 4 个技术模块:定位/感知模块、车辆规划与运营(AI+大数据,精准控制车辆,适合不同路况)、软件运营框架(支持英特尔、英伟达等多种芯片)。   百度文件系统 BFS-Baidu   百度的核心数据库Tera将数据持久化在分布式文件系统上,分布式文件系统的性能、可用性和扩展性对整个上层搜索业务的稳定性与效果有着至关重要的影响。现有的分布式文件系统(如HDFS等)无法满足低延迟、高可用、跨地域扩展等方面的需求,所以我们从百度搜索的业务特点出发,开发了自己的分布式文件系统BFS。  

GUI自动化测试的前途在哪里?

天涯浪子 提交于 2019-12-08 01:29:40
降低自动化测试的门槛是很多自动化测试工具提供商努力的目标。尤其是对于图形界面的自动化测试,就更是这样。 于是,“录制与回放”就成了图形界面自动化测试的主流。不论是 Web 界面的,还是基于 Windows API 界面的,还是 Java GUI 界面的,“录制与回放”的工具,不论是商用的,还是开源的,都不少。在技术上,大家也在“录制”上下足了功夫。 录制就需要先识别。现在 Web 页面的显示技术在向基于客户端的软件的界面靠拢,于是工具要识别各种动态界面的不同组件,不同编程语言实现的动态效果。你能够适应 .NET 和 ASP 编写的界面,我可以使用动态的 Javascript, AJAX 。 Web 的动态显示技术层出不穷,先是基于服务器端的动态页面显示,再后来又可以把代码传送并放到客户端来由浏览器解释了再动态显示,现在又可以局部更新页面的部分信息,很多页面又开始使用 Flash , Flash 又逐渐被放弃 等等。 于是,如何自动识别这些动态的显示技术,并保证录制与回放的正确,就成了各个自动化测试工具厂商最求的目标。也就是基本上是在跟着动态显示技术发展的屁股后面跑。然而 “录制与回放”有一个大问题,就是“录制”下来的脚本的维护问题。 Web 界面的变化是非常频繁的。通常市场部门的一个反馈,界面就要做比较大的调整,而这个调整,会导致之前“录制”好的脚本的重用性变得很差。 需要维护。

GUI功能测试自动化模式

£可爱£侵袭症+ 提交于 2019-12-08 01:23:50
对于某个特定程序,为其开发自动化功能测试解决方案的过程,与创建该程序的过程,二者相较并没有很悬殊的差别。自动化测试是一个非常年轻的领域,它正在不断经历大量的进步、提升和标准化进程。在这个领域中,涌现了许多与“被测系统”(SUT,System Under Test)互动的新工具。 \ 现在,软件开发方面有大量可供选择的方法论和途径,例如:面向对象编程、函数式编程、 领域驱动设计 、 测试驱动设计 、 行为驱动设计 等等。它们拥有明确的声明性概念和理论,并简化了对初始系统架构的定义过程、对系统的理解以及开发者之间的知识交换等方面的工作。 \ 本文将主要针对GUI(图形用户界面)应用的测试自动化进行讨论——从自动化开发人员的角度看,在这种情况下被测系统(SUT)表现为一个黑箱(被测系统,是指一个正在测试是否能够正确操作的系统。对于桌面应用来说,它就是应用本身,而对浏览器系统来说——则代表了网站/Web项目等含义)。在公司的遗留系统占很高比例的环境里,或是在新开发的系统没有考虑可检测质量属性时,这一现象非常常见。 \ 对最佳实践的准备和定义,是开发自动化的测试的关键部分。下图展示了被测系统和测试者之间的传统交互: \ \ 测试者与SUT之间的交互 \ 位于该系统中心的,是一个扮演测试者角色的人类个体。测试者使用手动交互和应用的视觉化分析,以及特定的SUT非可视化界面访问工具

测试的Python、 Java语言之争

…衆ロ難τιáo~ 提交于 2019-12-06 22:05:31
现在测试行业如果不会开发语言的话是很难找到工作的,即使是一些功能测试的岗位也会要求代码语言作为技术储备,因为如果做自动化测试或者测试工具脚本开发或者接口测试等都离不开开发语言,那作为测试如果没有代码经验,如何选择一门语言呢?   市面上一些培训测试开发的机构一般都会选择Python作为测试的脚本语言,原因不外乎是作为小白的话,Python的语法更加简单,学起来更快,拿来上手也更快,那么对于测试来说真的是这样吗? Python语言特点   python语言语法简单,内置了许多丰富的函数可以处理各种操作,并且python也有很多第三方模块用来处理各类的问题。基本上如果你想解决一类的问题,都能搜到相应的模块,然后直接导入使用就可以,例如http请求的requests模块,处理图形的Pillow,爬虫相关Scrapy等等,包括如果想从事web开发,一个Django集成了ORM,admin,分页,权限管理等各种工具,可以十分快的构建出一个网站,这也是我一开始选择python作为主要语言的原因。   在测试行业的话,python也发挥了很大的作用,例如各个自动化测试框架基本都会有python-java两个版本,许多测试同学把python作为主要使用的开发语言去做脚本开发,工具开发,测试平台开发,慢慢的给新入行的同学或者一些培训机构也都使用python来培训。 Java语言特点  

《手把手教你》系列练习篇之5-python+ selenium自动化测试(详细教程)

左心房为你撑大大i 提交于 2019-12-06 12:14:07
1. 简介   今天我们继续前边的练习,学习和练习一下:如何使用webdriver方法获取操作复选框-CheckBox、测试不同的分辨率、如何断言title、如何获取某一个元素的text属性值等等,这些小练习,来巩固基础。 2.操作复选框-Checkbox 本小节介绍Selenium中,如何操作复选框-Checkbox,最终的方法还是click()。 本来想还是继续采用for语句来把所有的复选框勾选一遍,例如这样的场景:注册一个网站勾选身份或者职业的时候,由于没有找到合适的demo网站。这里还是以百度举例,登录时,勾选下次自动登录: (1)访问百度主页面,点击百度首页的“登录”,xpath定位如下: (2)点击“用户名登录”,xpath定位如下图: (3)点击下次自动登录点选按钮,xpath定位如下: 相关脚本代码如下: 2.1 代码实现: 2.2 参考代码: # coding=utf-8🔥 # 1.先设置编码,utf-8可支持中英文,如上,一般放在第一行 # 2.注释:包括记录创建时间,创建人,项目名称。 ''' Created on 2019-12-04 @author: 北京-宏哥 QQ交流群:705269076 Project: python+ selenium自动化测试练习篇5 ''' # 3.导入模块 import time from selenium import

Selenium WebDriver 原理

微笑、不失礼 提交于 2019-12-06 11:20:03
WebDriver 是按照server – client 的经典设计模式设计的。 server 端就是remote server,可以是任意的浏览器。当我们的脚本启动浏览器后,该浏览器就是remote server,它的职责就是等待client 发送请求并做出相应。 client 端简单说来就是我们的测试代码,我们测试代码中的一些行为,比如打开浏览器,转跳到特定 的url 等操作是以http 请求的方式发送给被测试浏览器,也就是remote server;remote server 接受请求, 并执行相应操作,并在response 中返回执行状态、返回值等信息 。 webdriver 的工作流程: 1. WebDriver 启动目标浏览器,并绑定到指定端口。该启动的浏览器实例,做为WebDriver 的remote server。 2. Client 端通过CommandExcuter 发送HTTPRequest 给remote server 的侦听端口(通信协议: the webriver wire protocol) 3. Remote server 需要依赖原生的浏览器组件(如:IEDriverServer.exe、chromedriver.exe),来转化转 化浏览器的native 调用。 总结: 对于碰到的一些常见功能,如何通过技巧来定位它们,

《手把手教你》系列练习篇之3-python+ selenium自动化测试(详细教程)

旧时模样 提交于 2019-12-06 08:04:26
1. 简介   前面介绍了,XPath, id , class , link text, partial link text, tag name, name 七大元素定位方法,本文介绍webdriver支持的最后一个方法:by_css。css和XPath类似,也需要掌握一些语法,才能写出正确的,完整的css选择表达式。相关w3c介绍,请点击这里。 2. by_css定位元素   以百度首页的“百度一下”按钮为例,我们通过by_css来定位到这个按钮。如图 2.1 代码实现: 2.2 参考代码: # coding=utf-8🔥 # 1.先设置编码,utf-8可支持中英文,如上,一般放在第一行 # 2.注释:包括记录创建时间,创建人,项目名称。 ''' Created on 2019-11-29 @author: 北京-宏哥 QQ交流群:705269076 Project: python+ selenium自动化测试练习篇3 ''' # 3.导入模块 from selenium import webdriver driver = webdriver.Chrome() driver.maximize_window() driver.implicitly_wait(6) driver.get("https://www.baidu.com") try: driver.find_element

(十)APP自动化测试的用例设计与实现

那年仲夏 提交于 2019-12-06 06:54:36
一 手工测试用例与自动化测试用例的对比 二自动化测试用例的实现 =========================================================================== 手工/自动化测试用例对比: 自动化测试用例注重点: 1.不是所有的手工用例都要转换成自动化测试用例 2.考虑到脚本开发成本,需要和人工测试用例成本做对比 3.最好是通过场景来设计测试用例,可抽出page模块,执行case,便于开发和维护 ========================================================================== 自动化测试用例的实现: PO设计模式回顾: 1.与web自动化的PO设计模式无太大差别 2.PO设计模式的优点:减少代码重复性、提高测试用例的可读性、提高测试用例的可维护性 回顾unittest框架: 1.unittest框架是python自带的单元测试框架 2.setUp方法用于测试用例执行前的初始化工作 3.tearDown方法用于释放驱动 4.在用例中使用断言方法判断用例是否执行成功 5.unittest.main方法,用于执行单元测试模块脚本 6.框架入口main.py文件中写入discover方法用于执行所有的测试用例脚本 导入unittest,测试类继承unittest

自动化测试基础--3自动化测试分类

放肆的年华 提交于 2019-12-06 06:48:26
首先从软件架构来分为B/S C/S APP 再根据软件架构选择相应的工具 B/S:selenium(java或python语言) C/S:QTP(目前市面上很少用这个工具了) APP:appium 其他的主流工具还有Freamwork等 介绍: QTP是HP公司开发的,自带一个飞机录票系统 Robot Freamword 是基于python语言写的自动化测试框架 ,很强的扩展性,可测客户端和接口 selenium 用于web的自动化测试工具,多平台,多语言, appium环境搭建稍难于selenium,是app自动化测试的工具,支持Android和ios,写法和selenium差距不大 来源: https://www.cnblogs.com/wx921308494/p/11966614.html

手机软件测试分类(测试分类)

独自空忆成欢 提交于 2019-12-06 06:32:45
1、兼容性测试 例如:测试一个文档使用word2003能打开,无法打开word 2007的现象。 一般兼容性测试的手机模块内容包括: SIM卡兼容性测试、BT、PC驱动、SD卡和WLAN。 2、自动化测试 解释:自动化测试其实就是测试软件的可靠性,可以叫做稳定性测试。 常见的自动化测试有 ATT稳定性测试 和 Monkey稳定测试。 3、外场测试 外场测试主要是测试一些手机在各种网络制式下打电话、上网的一些测试。通常主要是测试 手机网络和协议之间测试。 4、交互测试 例如: 我们在使用手机听音乐的过程中,突入来电话,手机如何处理? 这种现象 在我们日常使用手机过程中,非常常见。 在测试领域,这一块也是非常重要的,交互测试首先要保证手机软件的稳定性,在做交互测试的时候不会发生异常现象,导致手机死机、冻屏。 5、性能测试 性能测试 也可以理解为 手机的功能测试, 他主要是测试手机的功能性、可靠性、易用性、效率性、可维护性、可移植性。 6、压力测试 传统意义上来讲 就是 让手机处于一个最大负载,使系统达到或超过最大负荷的一个测试。 例如:我们手机的联系人上边可以存储将近1w多个联系人,这点我们以最大的存储来创建联系人,一直创建到系统提示存储空间不足,无法创建联系人。时系统达到最大负荷。 7、安全性测试 这个接触的比较少, 我理解的是 手机上边一些关于安全方面的都要考虑, 不如 SIM卡锁