假设环境已经搭建好了.这里用RIDE( Robot Framework Test Data Editor)工具来编写用例.下面我们对Robot Framework简称rf. 我们先考虑下一个最基本的登录功能的测试用例. 一.自动化测试 与 人工测试 在开始编写用例之前,我们先来思考下自动化测试和人工测试的区别.对于web页面的人工测试,我们想下,如果去测试,怎么操作呢?不外乎如下的基本动作: 1)打开浏览器 2)输入url (前提web服务器要正常启动运行着) 3)等待页面显示出来 4)用眼睛看…
在rf中,利用selinum2的关键字进行用例编写时,很多关键字的参数是html元素的定位标识. 最简单的方式,是通过id 或name来描述元素定位信息,如 click  button    id=loginBtn  //表示点击id值为loginBtn的按钮元素 利用id和name来定位元素,前提是要求元素设置了id或name属性,并且是唯一的.但实际的web页面中,很多元素是没有id或name的,这时可通过html元素在页面中的路径来判断. 我们拿找人这个来比喻,利用id就好比通过身份证号(…
单选按钮是个常见的html元素,在网页中往往提供一组单选按钮来做选项. 这样在自动化测试用例中需要判断当前选中的按钮是否与预期的一直. 可以这样来操作: ${value}    Get Element Attribute    xpath=//form[@id='xxx']/*/input[@value='yyy']@checked 上面的关键字Get Element Attribute是获取html元素的指定属性的属性值.该关键的字的参数是 元素定位符后加上@要获取的属性名 上面例子是获取 c…
在页面操作中,有时会需要打开新的窗口(新的网页不在当前窗口显示,而是在新的tab页显示), 比如利用  window.open("newurl") 或者  <a href="newurl" target="_blank">新窗口</a> 这时候新的页面都会在新窗口打开. 这样我们可能就需要对新页面中的内容进行检查和定位. 但这样前提是我们需要定位到该新的窗口. 比如我们用例中有这样一个语句: click button   …
假设环境已经搭建好了.这里用RIDE( Robot Framework Test Data Editor)工具来编写用例.下面我们对Robot Framework简称rf. 我们先考虑下一个最基本的登录功能的测试用例. 一.自动化测试 与 人工测试 在开始编写用例之前,我们先来思考下自动化测试和人工测试的区别.对于web页面的人工测试,我们想下,如果去测试,怎么操作呢?不外乎如下的基本动作: 1)打开浏览器 2)输入url (前提web服务器要正常启动运行着) 3)等待页面显示出来 4)用眼睛看…
转载请注明出处,谢谢: chrome浏览器: 1.从如下地址下载与本地浏览器版本号一致的chromedriver.exe驱动文件: http://chromedriver.storage.googleapis.com/index.html 2.将驱动文件放置在python根路径下即可,例如D:\Python27: ie浏览器: 1.从如下地址下载和本地selenium版本号及操作系统一致的iedriver: http://selenium-release.storage.googleapis.c…
#!/usr/bin/env python# -*- coding:utf-8 -*-'''Selenium3+webdriver学习笔记8(单选.复选框.弹窗处理)''' from selenium import webdriverfrom selenium.webdriver.common.action_chains import ActionChainsfrom selenium.webdriver.support.select import Selectfrom selenium.web…
貌似我以前说过不少界面自动化测试的坏话,哈哈.最近接触了phantomjs,发现用它进行web界面测试也挺有意思的,下面举几个我使用过程中发现的注意点. 1.需要指定phantomjs位置,否则使用时会报错 driver = webdriver.PhantomJS(executable_path=r'D:\phantomjs-2.1.1-windows\bin\phantomjs.exe')#在windows中使用phatomjs,需要在这里指定可执行文件的位置,或者修改系统宏也行 2.需要指定…
一,浏览器引擎    浏览器的内核引擎,基本上是四分天下: Trident: IE 以Trident 作为内核引擎; Gecko: Firefox 是基于 Gecko 开发; WebKit: Safari, Google Chrome,傲游3,猎豹浏览器,百度浏览器 opera浏览器 基于 Webkit 开发. Presto: Opera的内核,但由于市场选择问题,主要应用在手机平台--Opera mini 注:2013年2月Opera宣布转向WebKit引擎 注:2013年4月Opera宣布放…
学习html最重要的是坚持.细心.多动手.慕课网<HTML+CSS基础课程>的笔记. 1.<h1>网站标题</h1> 如:<h1>腾讯网</h1> 2.<em><strong><span><p>标签的用法:    <span><em>狗狗</em></span>    <strong>狗狗</strong><span>…
接上一篇SQL注入的学习笔记,上一篇我通过报错信息得知后台数据库是MySQL(这个信息非常重要~),然后通过SQL注入拿到了用户表的所有行,其实我们还可以通过MySQL的特性来拿更多的信息. 1. 获取当前数据库名称 输入:2' union select 1,database() ' 输出:数据库名称为dvwa database()是Mysql自带函数,用来获取当前数据库名称. 2.获取当前数据库所有表名 输入:1' union select 1,table_name from informat…
有时要根据主表的审批状态来控制子表上的按钮要不要显示,比如我们有一个需求审批通过后就不能再上传文件了. 首先打开Visual Ribbon Editor, 如下图,我们可以利用Enable Rules –> CustomRule 用js来控制按钮是否显示:   js function: 首先用odata取出主表的状态,然后根据主表的状态来判断是否显示: var approvalStatus = null; function controlUpload(){ var marketingPlan =…
作者:张博出处:http://yilin.cnblogs.com Entity Framework支持Database First.Model First和Code Only三种开发模式,各模式的开发流程大相径庭,开发体验完全不一样.三种开发模式各有优缺点,对于程序员没有哪种模式最好,只有哪种模式更适合.接下来我将分别使用这三种开发模式实现同一数据库模型的数据持久化功能.希望通过实践能帮助你找到更适合你的开发模式. Database First Database First开发模式指以数据库设计…
学习地址为: http://www.yiibook.com/book/agile_web_application_development_with_yii1.1_and_php5   1.建立应用程序:     YiiRoot/framework/yiic webapp demo   2.添加链接:      <a href="/demo/index.php?r=message/goodbye">Goodbye!</a>    <?php echo CHt…
原文地址:http://www.cnblogs.com/Bulid-For-NET/archive/2013/01/11/2856632.html 一直都对web.config不太清楚.这几天趁着项目不紧赶紧再恶补下,发现确实是有很多原来不明白的地方.特意记录下来,希望能与各位看官共同进步. 小弟自学笔记,有不对的地方还请大神指出来. 学习之前,我是抱着一个完全不知道的态度开始的.我想这个方法适用于很多地方,不是有个故事吗:杯子里的水倒掉才能装进去更多的水.所以有很多地方记录的都是挺基础的知识,…
EF中基于方法的查询方式不同于LINQ和以往的ADO.NET,正因为如此,有必要深入学习一下啦.闲话不多说,现在开始一个MVC项目,在项目中临床学习. 创建MVC项目 1.“文件”--“新建项目”--“模板”--“Web”--“ASP.NET MVC4应用程序”,创建一个项目名称为 GuestBook 的MVC4项目 2.在文件目录的中Models目录中新建两个Model类 Book.cs: using System; using System.Collections.Generic; usin…
一.为何要了解Web安全 最近加入新公司后,公司的官网突然被Google标记为了不安全的诈骗网站,一时间我们信息技术部门成为了众矢之的,虽然老官网并不是我们开发的(因为开发老官网的前辈们全都跑路了).我们花了很多时间做Web安全扫描以及修复,在检查和修复过程中,发现老系统的代码的不可维护性(再次说明整洁代码之道Clean Code的重要性)及安全性(同时也说明了Web安全的重要性). 修复之后,向Google提出了申诉,漫长的等待(1~2天对于公司的官网来说就是Money啊!)后Google放开…
今年有一个很重要的职业目标,就是好好学习活字格这个神器,争取在这两个月拿到活字格初级工程师的认证证书.给自己加个油,今天开始好好学习,好好做笔记. 第一步,下载安装 先去活字格官网:http://www.grapecity.com.cn/solutions/huozige 点上面那个下载按钮,就可以下到最新的安装包了,是个Zip文件,很快就下到本地了. 然后解压缩,装活字格设计器.还有个安装文件是服务器,那个是发布产品才需要的.我这新手才学呢,先不用装那个. 安装,界面很简洁,UI不错,我喜欢…
上一次学习了os模块,sys模块,json模块,random模块,string模块,time模块,hashlib模块,今天继续学习以下的常用模块: 1.datetime模块 2.pymysql模块(3.0以上版本) 3.Redis模块 4.flask模块 datetime模块 datetime中包含三个类date ,time,datetime datetime.date:表示日期的类.常用的属性有year, month, day: datetime.time:表示时间的类.常用的属性有hour,…
一.什么是自动化 自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程.直白的就是为了节省人力.时间或硬件资源,提高测试效率,便引入了通过软件或程序自动化执行测试用例进行测试: 二.python简介 Python是一种解释型.面向对象.动态数据类型的高级程序设计语言. 我们先来看一各种编程语言的类型. 机器语言:是指一台计算机全部的指令集合,计算机所使用的是由"0"和"1"组成的二进制数,二进制是计算 计算机语言机的语言的基础. 编译型语言:将源代码编译生成机…
DVWA(Damn Vulnerable Web Application),是一个用PHP编写的,作为Web安全测试练习平台的合法环境(毕竟咱不能为了练习就随便找个网站去攻击...),也就是俗称的靶场. DVWA提供了常见的多种练习场景,包括SQL注入,XSS,暴力破解,命令行注入,CSRF等,对刚开始学习的童鞋来说完全够用.DVWA还很贴心的提供了从易到难的四种安全级别:Low,Medium,High,Impossible. 本文主要记录DVWA的搭建过程. 安装Wampserver 运行DV…
一.环境搭建 1.概述 由于项目需要进行UDS诊断测试,所以对这方面进行了研究学习,网上很少能查询到相关资料,故记录一下UDS自动化测试开发过程,由于保密原则,案例都是Demo,希望能帮到感兴趣的朋友. 2.硬件环境 上位机:PCAN PCAN-USB驱动:https://www.peak-system.com/fileadmin/media/files/pcan-basic.zip 下位机:ECM(发动机控制模块) 3.Python环境 下载地址:https://www.python.org/…
本文转载自haiziguo Asp.net mvc中的模型绑定,或许大家经常用,但是具体说他是怎么一回事,可能还是会有些陌生,那么,本文就带你理解模型绑定.为了理解模型绑定,本文会先给出其定义,然后对通过比,来得出使用模型绑定的方便.最后简单的模拟一下自定义模型绑定,让大家对模型绑定有进一步的认识. 一.模型绑定的概念 mvc framework中有一种技术,他就是模型绑定:使用 被浏览器发送的http请求里面数据 来创建.net对象的过程.接下来就让我们来看看模型绑定的好处. 二.模型绑定好处…
最近由于工作需要开始学习基于python的web应用框架web.py.为了方便学习,将学习心得逐日记下以便日后复习. URL 模板: web.py提供了一套url处理的模板,在python工程中,只需要将网页结构配置为一个元组(tuple)即可.该元组在web.py中的解析模式为:url路径,对应处理url的类名.这里,类名必须和service代码中对应的类名一致.例如, urls = ( "/tasks/?", "signin", "/tasks/lis…
公司web项目终于要启动了,本以为django学习可以在实战中进行,结果最终使用了Drupal框架,好吧,那我们就PHP走起,买了本<细说PHP>,先跟着过一遍Web开发入门. HTTP协议 HTTP协议:所有的WWW文件都必须遵守HTTP协议,HTTP是客户端浏览器或者其他程序与Web服务器之间的应用层通信协议.HTTP协议建立在TCP/IP协议,也就是说,是一种可靠的传输协议,意味着两台设备在传输之前必须先建立可靠连接(握手),由客户端发起到服务器端的指定端口(默认为80)HTTP请求,并…
从这周开始学习自动化测试,采用selenium2,目标是在本月学习到appium,并测试公司的真实APP项目. 系统环境:win10 语言:python3.6.4 工具:selenium2 IDE:python IDLE 浏览器(需下载相对应的webdriver): IE11 Chrome65.0.3325.146 Firefox58 Windows下载安装python 基础书籍是虫师的selenium2自动化测试实战(基于python语言). 下载了python3.6.4,https://ww…
第一部分 Flask简介 前言:想熟练掌握一门web框架,为以后即将诞生的测试工具集做准备.为什么选择flask要做熟练掌握的一门框架,而不是其他的,最主要的原因是可以随意定制. 特别提醒:这本书的代码会提交在github,有基础的人可以直接看github的代码来学习flask.基础差还是建议买书来学习,书中会有对“为什么这么用?”的解答,可以增加对软件架构的深入理解 时间:阅读并操作完第一部分,做的总结 建议:文章中有不对的地方,希望你可以告诉我 一.梳理 第一部分是Flask框架的基础应用,…
了几天,今天上活字格网站一看,他们获奖了,好厉害 荣膺盘古奖!活字格引领企业信息化建设新潮流 好吧,我继续学习,希望早点拿到认证证书. 今天要学的是编辑删除记录.目标: 还是接续之前的工程.做好后是这样的: 看到在上次生成的文件基础上,后面增加了编辑和删除的两个超链接. 点编辑,跳转到编辑页面: 点删除的话,需要确认一下: 工程文件界面长这样. 其实学一节课也没有那么久,还是我自己懒了,没有抽时间出来. 希望能鞭策自己加快学习进度.…
今天继续学习活字格基础教程,目标是创建一个页面,增加记录. 开始之前,系统会自动把上一次的工程文件加载进来. 这是做好后的样子. 我点添加员工的超链接: 先后加了2条员工的信息进来. 不错,设计界面是这样的: 目前看还行,就是在页面里把表做好,然后加个超链接,链接到添加信息的页面,然后两个页面关联起来就可以了. 就是UI太丑了,要是有模板就好了,分分钟搞出来一个系统.✌~~~…
0x00 概要 负载均衡(Load Balance)是集群技术(Cluster)的一种应用.负载均衡可以将工作任务分摊到多个处理单元,从而提高并发处理能力.目前最常见的负载均衡应用是Web负载均衡.根据实现的原理不同,常见的web负载均衡技术包括:DNS轮询.IP负载均衡和CDN.其中IP负载均衡可以使用硬件设备或软件方式来实现. 0x01什么是web负载均衡 服务器集群(Cluster)使得多个服务器节点能够协同工作,根据目的的不同,服务器集群可以分为: 高性能集群:将单个重负载的请求分散到多…