Web自动化测试项目搭建(一) 需求与设计 Web自动化测试项目(二)BasePage实现 Web自动化测试项目(三)用例的组织与运行 Web自动化测试项目(四)测试报告 Web自动化测试项目(五)测试结果通知 Web自动化测试项目(六)多环境执行 Web自动化测试项目(七)日志 未完待续…
测试报告生成 使用HTMLTestRunner 生成测试报告 本文使用的 HTMLTestRunner 来源于github: https://github.com/githublitao/HTMLTestRunner_Chart 参考链接: http://tungwaiyip.info/software/HTMLTestRunner.html https://github.com/GoverSky/HTMLTestRunner_cn 把下载下来的HTMLTestRunner_Chart.py存放…
一.BasePage介绍 创建一个BasePage类,对Selenium Api进行二次封装 为了快速创建项目并投产,用到的Selenium Api才进行封装,没用到的则不封装 优先封装最重要的几个方法: 初始化webdriver 元素定位(不封装元素操作方法,例如send_keys) 浏览器加载页面 二.Selenium Api 二次封装 ├── pages │   ├── __init__.py │   └── base_page.py └── utils └── __init__.py b…
一.日志作用 调试程序 了解系统程序运行的情况,是否正常 系统程序运行故障分析与问题定位 用来做用户行为分析和数据统计 二.为项目添加日志 └── utils ├── log_utils.py └── se_utils.py log_utils.py import logging.handlers import time class GetLogger(): logger = None @classmethod def get_logger(cls): if cls.logger == None…
一.邮件通知 使用第三方邮件发送库yagmail github地址:https://github.com/kootenpv/yagmail 安装 pip3 install yagmail demo.py import yagmail # password为登陆密码或者授权码,yagmail SSL默认开启 yag = yagmail.SMTP(user='xxxxxx@163.com', password='xxxxxxx', host='smtp.163.com') to = 'xxxxxx@…
一.项目需求 测试/生产环境更新后,自动化回归测试 项目易于维护和运行 支持多种测试策略 支持可视化测试报告 运行结果,支持多种方式通知相关人员 可定时/触发的方式运行自动化测试用例 二.设计 2.1 需要的技能 Python基础(面向对象) 熟悉Python引包机制 了解Html,Css,异步请求 熟练使用Selenium API(最好有读过源码) 熟练使用Python Uittest/Pytest 测试框架 了解PO设计模式 2.2 项目目录划分 ├── config │   └── __i…
上一篇我们讲了CukeTest+Puppeteer的相关理论知识,带大家认识熟悉了CukeTest如何运行与如何编写剧本,Puppeteer大体的理论体系与如何结合使用,但一直没有给大家进行上手实战操作.这一篇,我就带大家一起来实战燥起来~~~ 测试页面以百度首页为例,我们用CukeTest+Puppeteer编写功能测试Demo,将上篇讲的相关知识点结合起来练手. CukeTest官方文档:http://www.cuketest.com/zh-cn/ Puppeteer官方文档:https:/…
学习目的: 掌握自动化框架中需要的一些基础web操作 正式步骤: 使用title_contains检查页面是否正确 # -*- coding:utf-8 -*- import time from selenium import webdriver from selenium.webdriver.support import expected_conditions as EC dr = webdriver.Chrome() url = "https://www.baidu.com" dr…
需求 使用命令行运行脚本,可以指定测试/预发布/生产环境的url,如果找不到该环境变量则默认为测试环境 python3 xxxxxx.py test 修改constants.py # DOMAIN = 'https://www.tapd.cn/' LOGIN_URL = '/cloud_logins/login' TIMEOUT = 5 POLL_FREQUENCY = 0.5 DOMAIN = { 'test':'https://www.tapd.cn/', 'product':'https:…
一.Unittest用例组织 在test_case目录下创建test*.py,组织测试用例 ├── test_case │   ├── __init__.py │   └── test_login.py test_login.py import unittest from pages.login_page import LoginPageAction from utils.constants import LOGIN_URL class TestLoginCase(unittest.TestCa…
前言 前面已经把环境搭建好了,现在开始使用 Selenium 中的 Webdriver 框架编写自动化代码脚本,我们常见的在浏览器中的操作都会有相对应的类方法,这些方法需要定位才能操作元素,不同网页的元素也不同,可以根据自己情况选择使用类方法.下面开始学习元素定位: New一个后缀为.py的Python文件写一段代码,先感受一下代码吧!写完以后Ctrl+Shift+F10运行代码. # -*- coding:utf-8 -*- from selenium import webdriver # 从…
Selenium Web 自动化 - 项目实战(二) 2016-08-08 什么是数据驱动?简答的理解就是测试数据决定了测试结果,这就是所谓数据驱动.数据驱动包含了数据,他就是测试数据,在自动化领域里,提倡数据分离,也就是说,测试用例和测试数据是分开(存储)的. 在本框架设计中,采用的是Excel存储测试数据. 1 框架更改总览 源代码:autotestDataDriver.zip 在原来的框架下更改,如下图所示 2 框架更改详解 2.1 更改用例类:LoginPage_001_LoginSuc…
1.什么是Web自动化测试?概念:让程序代替人为自动验证Web项目功能的过程 2.什么Web项目适合做自动化测试 1.需求变动不频繁 2.项目周期长 3.项目需要回归测试 3.如阿进行Web自动化测试?(主流测试-工具)1.QTP(收费) QTP是商业的功能测试工具,收费,支持web,桌面自动化测试.2.Selenium(开源)[本阶段学习] Selenium是开源的web自动测试工具,免费,主要做功能试.3.Jmeter(开源.Web.接口.性能) Jmeter是由Apache公司使用Java…
上一篇: [WEB API项目实战干货系列]- Web API 2入门(一) 这一篇我们主要介绍如何做API帮助文档,给API的调用人员介绍各个 API的功能, 输入参数,输出参数, 以及在线测试 API功能(这个也是方便我们自己开发调试) 我们先来看看我们的API最终帮助文档及在线测试最终达到的效果: 概要图   GET API 添加产品API: 删除产品 API 接下来我们动手来实现上面的功能 给所有API添加注释信息 代码如下 [RoutePrefix("api/products"…
使用HibernateTemplate进行增删改查操作 观前提示:本系列文章有关服务器以及后端程序这些概念,我写的全是自己的理解,并不一定正确,希望不要误人子弟.欢迎各位大佬来评论区提出问题或者是指出错误,分享宝贵经验.先谢谢了( ̄▽ ̄)"! 这次的废话留在文章末尾吧,断更了好久,直接进入正题! 本篇中主要用到的代码我都会在文章里贴出来 如果博主玩明白GitHub了的话,源码会上传到Github,贴出链接方便各位使用.不过我觉得各位还是找更有参考价值的文章吧,这个系列纯粹是我一个人写日记( ̄_ ̄…
前言 很多的测试同学懂得使用selenium进行Web自动化测试, 但是不知道如何去写一个测试框架,或者说是一个容易维护的web自动化项目. 自己写一个最基本的web自动化测试框架需要会什么? 1. 语言基础,学到面向对象 2. 熟练使用selenium API (操作浏览器的方法) 3. 会使用基本的工具库,os,sys等 4. 一个测试框架 例如:unittest 5. page object设计模式 6. 熟悉html.css 目录结构 --pages --__init__.py --ba…
转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ TestNG+Selenium+Ant TestNG这个测试框架可以很好的和基于Selenium的web自动化测试结合在一起,实现把我们写好的自动化测试用例以自定义顺序执行.下面分为十二步来对TestNG测试框架进行总结,包括环境的部署,从TestNG框架的几种常用方法,到与Ant结合来实现自动化测试. 第一步:创建项目 新建一个名为forTestNg的java project,然后创建一个li…
项目开源: https://github.com/tonglei100/sweetest 文章转载:https://segmentfault.com/a/1190000011612061 介绍 sweetest 是一款 Web 自动化测试框架,或者说是解决方案,名字取 Selenium, Web UI, Excel, Element, Test 含义.特点: 简单快速,轻松上手 无需编码能力 在 Excel 中以文本编写测试用例 维护成本低 支持千.万级别的用例规模 拥抱变化,支持敏捷 背景 目…
前言 Robot Framework是一款python编写的功能自动化测试框架.具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端或者接口,可以进行分布式测试执行.主要用于轮次很多的验收测试和验收测试驱动开发(ATDD),支持python,java等编程语言(百度百科).功欲善其事必先利其器,在学习RF之前同样需要搭建开发环境,包括运行环境的搭建,web自动化测试环境的搭建,所以今天会讲解3种RF测试环境的搭建--RIDE,Pycharm及Eclipse,你可以根据自己的喜好选择使…
引言 自动化金字塔-灵魂手绘版 关于Web自动化测试,投入产出比是一个绕不开的话题,对于走到2017年的测试人,这时候可能已经有很多人会想到著名的自动化测试金字塔.它形象地展示了Mike Cohn对自动化分层中各层所应该投入比重的看法,可以作为我们Web自动化实施策略的重要参考. 我最初开始接触Web自动化测试的时候,没有直接的领路人,测试行业知识也远不及如今这么丰富和易获取,当时我对于自动化测试的分层几乎没有什么了解,更不知道什么金字塔,就如很多同行一样,我一开始先入的是UI自动化的坑,那时候…
Python Web自动化测试入门与实战 购买地址 · 京东:https://item.jd.com/69239480564.html   天猫:https://detail.tmall.com/item.htm?spm=a220m.1000858.1000725.81.7d717628N0mje4&id=618358182656&skuId=4611686636785570560&user_id=2780997294&cat_id=2&is_b=1&rn=…
CukeTest+Puppeteer的Web自动化测试 一.初识BDD.Cucumber(黄瓜).CukeTest 行为驱动开发(Behavior Driven Development,BDD).行为驱动开发能够保持文档和测试脚本的一致性,便于维护.也便于业务人员和技术人员沟通,始终保持应用软件的技术实现反映业务的需求. Cucumber是行为驱动开发最流行的一个框架,它使用自然语言描述的行为来驱动测试代码,也支持多种语言,如Ruby.Python.JavaScript.Java等. Cucum…
Selenium 名字的来源 在这里,我还想说一下关于 Selenium 名字的来源,很有意思的 : > : Selenium 的中文名为 “ 硒 ” ,是一种化学元素的名字,它 对 汞 ( Mercury )有天然的解毒作用,实验表明汞暴露水平越高,硒对汞毒性的拮抗作用越明显,所以说硒是汞的克星.大家应该知道 Mercury 测试工具系 列吧( QTP , QC , LR , WR... ),他们功能强大,但却价格不菲,大家对此又爱又恨!故 thoughtworks 特意把他们的 Web 开源…
Selenium Web 自动化 - 项目实战(三) 2016-08-10 目录 1 关键字驱动概述2 框架更改总览3 框架更改详解  3.1 解析新增页面目录  3.2 解析新增测试用例目录  3.3 解析自动生成代码  3.4 读取用例excel数据,定位元素,并进行操作  3.5 更改SeleniumUtil.java 源代码:autotestKeywordDrive.zip 1 关键字驱动概述 返回 关键字驱动测试(Keyword-driven testing),也叫做表格驱动测试或者基…
在今天移动互联网的时代,作为攻城师的我们,谁不想着只写一套API就可以让我们的Web, Android APP, IOS APP, iPad APP, Hybired APP, H5 Web共用共同的逻辑呢? [WEB API项目实战干货系列]教你一步步教你解决方案. 这个系列的目的是想把最近两年在WEB API的实践方面积累的干货倒出来, 分享给大家. 同时也欢迎正在使用WEB API或者即将OR打算在项目中使用WEB API的朋友探讨交流,以让我有足够的热情完成这个系列. 这个实战适用于哪些…
上一篇: [WEB API项目实战干货系列]- 接口文档与在线测试(二) 这篇我们主要来介绍我们如何在API项目中完成API的登录及身份认证. 所以这篇会分为两部分, 登录API, API身份验证. 这一篇的主要原理是: API会提供一个单独的登录API, 通过用户名,密码来产生一个SessionKey, SessionKey具有过期时间的特点, 系统会记录这个SessionKey, 在后续的每次的API返回的时候,客户端需带上这个Sessionkey, API端会验证这个SessionKey.…
Sahi 是 Tyto Software 旗下的一个基于业务的开源 Web 应用自动化测试工具.Sahi 运行为一个代理服务器,并通过注入 JavaScript 来访问 Web 页面中的元素.Sahi 支持 HTTPS 并且独立于 Web 站点,简单小巧却功能强大.它相对于 Selenium 等自动化测试工具,在动态 ID 元素查找和隐式页面等待处理等方面具有一定的优势.选择 Sahi 工具来实现具体 Web 项目的自动化测试是一个很不错的选择. Web 测试背景 随着 Web 技术和互联网的发…
在开始之前先自学两个工具商业web自动化测试工具请自学QTP:QTP的学习可以跳过,我是跳过了的.开源web自动化测试工具请自学Selenium:我当年是先学watir(耗时1周),再学selenium(也耗时1周). 这里主要讲一些能让读者和普通菜鸟区别开来的东西,这些请和上面的两个工具穿插地学: 基础:1.浏览器前端相关的简单技术基础:就是那些什么html.xml.css.javascript.等等,详见w3c教程网站http://www.w3schools.com/2.学习使用一个单元测试…
Appium移动自动化测试(二)--安装Android开发环境 2015-06-04 17:30 by 虫师, 35299 阅读, 23 评论, 收藏, 编辑 继续Appium环境的搭建. 第二节  安装Android开发环境 如果你的环境是MAC那么可以直接跳过这一节.就像我们在用Selenium进行web自动化测试的时候一样,我们需要一个浏览器来执行测试脚本.那么移动端自动化测试,我们同样需要一部Android手机(手机需要链接电脑)或者Android模拟器. 安装java 环境 众所周知,…
Windows环境搭建Web自动化测试框架Watir 一.前言     Web自动化测试一直是一个比较迫切的问题,对于现在web开发的敏捷开发,却没有相对应的敏捷测试,故开此主题,一边研究,一边将Web自动化测试应用于工作中,进而形成能够独立成章的博文,希望能够为国内web自动化测试的发展做一点绵薄的贡献吧,笑~ 二.Watir搭建流程 图1-1 需要安装的工具     下载地址:http://railsinstaller.org/     因为安装Ruby还需要用到其他的一些开发工具集,所以建…