Watin 杂谈】的更多相关文章

Web自动化测试(三)[弹出窗口处理] http://blog.csdn.net/cctv_hu/article/details/5984373 http://www.cyqdata.com/cnblogs/article-detail-36106 http://www.cnblogs.com/xiaosuo/archive/2010/06/14/1758210.html…
原文地址: PHP 杂谈<重构-改善既有代码的设计>之一 重新组织你的函数 思维导图   点击下图,可以看大图.    介绍   我把我比较喜欢的和比较关注的地方写下来和大家分享.上次我写了篇<php 跟老大的对话>.还是有很多疑问,这书帮了我不少的忙.   如果你比较繁忙,或者懒得看文字,建议你直接看截图,也会有很大的收获的.你可以通过比较截图中的代码就能知道孰优孰劣了.   代码部分我为什么用图呢?因为我经常用手机看代码,博客园的代码在手机里乱七八糟的,还是看图比较舒服.  …
通过WatiN.Core.Broswer.Frame()方法来获取iframe对象,之后的容器就是frame,然后进行操作. 下面的例子是登录QQ空间的: Frame frame = browser.Frame(Find.ById("login_frame")); Link otherLink = frame.Link(Find.ById("switcher_plogin")); TextField txtName = frame.TextField(Find.By…
Watin是一个UI自动化测试工具,支持ie/firefox,官方网站:http://watin.org/. 主要有以下特点: 支持主要的html元素,见:http://watin.org/documentation/element-class-mapping-table/ 可以通过多种属性查找html元素 支持ajax站点测试 支持对页面进行截图 支持frames和iframe 支持弹出对话框如alert, confirm, login以及模态对话框等 方便的集成到你的测试工具,如:VS的单元…
这次一反常态,没有场景设计,我想借此文普及一下PMP是什么? 但我不知道这样枯燥的话题能否能引起你的兴趣,我不得不套用“标题党”<爱情必胜术>来博你眼球. 我真没有说谎,此文是献给那些孤身奋斗在爱情第一线的朋友们. PMP是什么? 问得好. 它是一种人士资格认证.它是由美国项目管理协Project Management Institute(PMI)发起的,严格评估项目管理人员知识技能是否具有高品质的资格认证考试.其目的是为了给项目管理人员提供统一的行业标准. 我不是拽自己如何如何,只是行业需要…
我自认为这是自己写过博客中一篇比较优秀的文章,同时也是在深夜凌晨2点满怀着激情和愉悦之心完成的.首先通过这篇文章,你能学到以下几点:        1.可以了解Python简单爬取图片的一些思路和方法        2.学习Selenium自动.测试分析动态网页和正则表达式的区别和共同点        3.了解作者最近学习得比较多的搜索引擎和知识图谱的整体框架        4.同时作者最近找工作,里面的一些杂谈和建议也许对即将成为应届生的你有所帮助        5.当然,最重要的是你也可以尝…
Httpwatch是一款强大的网页数据分析工具,它可以在不改变浏览器和网络设置的基础上捕捉http和https数据.查看底层的http数据,包括headers, cookies, cache等,同时统计发送接收请求时间,并提供完备的日志记录系统.同时该工具具有完备的COM接口,用于给用户通过编程的方式操纵httpwatch. Httpwatch 自动化对象介绍: Controller 类:总是控制的起点,它用于创建httpwatch插件接口或读取log文件,通过IE属性和Firefox属性的ne…
以IE为例,WatiN处理弹出窗口: IE ie = new IE("string"); //打开指定web页 ie.Button(Find.ById("string")).Click(); //点击相应的按钮弹出需要测试的窗口TestSecondWindow IE newIE = IE.AttachTo<IE>(Find.ByTitle("TestSecondWindow")); // 查找新窗口TestSecondWindow并赋…
WatiN 是一个源于 Watir的工具,开源且用于web测试自动化的类库.Web Application Testing in .NET. WatiN 通过与浏览器的交互来实现自动化,使用起来具有轻便,简单的特点. WatiN.Core: WatiN的核心部分,与浏览器的交互都包含在此模块中. WatiN.Core.DialogHandlers: 该命名空间提供用于操作浏览器对话框的对象. WaitN.Core.Exceptions: 该命名空间里的对象用于处理各种异常. WatiN的原理和其…
译文来源:http://www.ido321.com/1126.html 原文:HTML5 Page Visibility API 译文:HTML 5的页面可视性API 译者:dwqs 在早期,浏览器并没有提供选项卡,但是现在基本所有浏览器都提供了这个功能.作为一个程序员,我一般会同时打开10到15个选项卡,甚至有些时候会在25到30. 为什么介绍Page Visibility API呢? 之前,是不可能确定哪个选项卡是激活的,哪个没有激活,但是在HTML 5 Visibility API的帮助…
承接上文 ObjectFactory与IFactoryObject的杂谈 .net篇(环境为vs2012+Spring.Core.dll v1.31) public class parent { public string Name { get; set; } public int Age { get; set; } } public class CustomFactory : Spring.Objects.Factory.IFactoryObject { public object GetOb…
Some WatiN ExamplesBelow are some examples of WatiN codes for testing:// find div by idvar div = browser.Div("divId"); // find div by classvar div = browser.Div(Find.ByClass("divClass")); // click a divbrowser.Div("divId").Cl…
基础知识(包括但不限于:二叉查找树是啥,SBT又是啥反正又不能吃,平衡树怎么旋转,等等)在这里就不(lan)予(de)赘(duo)述(xie)了. 先贴代码(数组模拟): int seed; int _rand() { +; } template <class T> struct SbtNode { T val; int lSize; int rSize; int lch; int rch; void assignVir() { lSize=rSize=lch=rch=; } void ass…
杂谈之SolrCloud这个坑货 看<Solr In Action>时候看到对Solr不足的介绍有这么一段话:“One final limitation of Solr worth mentioning is its elastic scalability: the ability to automatically add and remove servers and redistribute content to handle load. While Solr scales well acr…
杂谈之不同行业的Solr 前几天去一家互联网创业公司面试搜索引擎开发工程师,结果被pass了,仍不住想来吐槽下.尽管当时面试没啥准备,也没表现好,但是也学到了不少东西.现在就随便吐槽一下吧. 本人是在安防公司做大数据搜索引擎,搞Solr也一年多点了,自认为对Solr了解的也不少了,但是为什么在面试中碰壁呢,回想一下面试的情节,主要觉得跟行业不同造成对Solr的使用方式不同. 首先,我们公司使用的Solr是对应交通行业的大数据,交通行业的数据有个显著的特点就是: 1. 域多,存在几十个域: 2.…
  iOS APP安全杂谈 高小厨 · 2015/06/30 10:16 0x00 序 以前总是在这里看到各位大牛分享其安全渗透经验,而今我也很荣幸的收到了乌云的约稿,兴奋之情难以言表.由于IOS是一种闭源的操作系统,源码恐怕也只有几个人见过,其安全性究竟如何我们不得而知,突然想起一段话:恐惧来源于我们的无知.好在国内早有大牛团队—盘古团队总是走在世界的前沿给我们带来最新鲜的IOS安全详解,感谢沙梓社和吴航的<IOS应用逆向工程>让我对IOS逆向充满兴趣,感谢念茜的博客将我领入了IOS安全之门…
这俩年多来笔者一直在从事关于WPF的开发.虽然不能说是专家级别的.但是对于WPF的应用还是有一定的了解.论他的灵活性决对不在WinForm之下.WPF的出现更是引发一段热议.他的何去何从更是让很多人感到迷茫.因为那个时候可以说只有Winow 7才能跟WPF完美的接合.可惜他出不逢时,XP占了大部分的市场.所以WPF的出生动静很大,可惜后力不足,渐渐的淡淡化他的光芒.于至于网络上更是有对WPF的死亡产生了很大的争议.但是这并没有让他沉默下去,这几年来window 8和window 10的推广更是让…
Python 基础  四  面向对象杂谈 一.isinstance(obj,cls) 与issubcalss(sub,super) isinstance(obj,cls)检查是否obj是否是类 cls 的对象 class Foo: pass f1=Foo() print(isinstance(f1,Foo)) #True issubclass(sub, super)检查sub类是否是 super 类的派生类 class Foo: pass class Xoo(Foo): pass print(i…
现代C++新四大名著及C++学习杂谈 翻开自己的博客,在2012年8月我曾经写过如下一篇博客, <<C++学习的方法以及四大名著>> http://www.cnblogs.com/pugang/archive/2012/08/17/2643710.html 想想时间过得真快,转眼5年了,在这5年中C++也发生了翻天覆地的变化.2012年的时候C++11刚刚确定不久,很多技术资料也没有来得及更新,编译器也没有完全支持主流的C++11新特性,自然很多公司对于新版本的C++使用也是持有一…
GC杂谈之理论入门 JVM堆布局介绍 ​ JVM堆被划分成两个不同的区域:新生代 ( Young ).老年代 ( Old ).新生代 ( Young ) 又被划分为三个区域:Eden.From Survivor.To Survivor,其中两个Survivor区的大小一致. ​ \(堆新生代老年代老年代java堆 = 新生代(Young) + 老年代(Old) = 老年代(Old) + Eden + From Survivor + To Survivor\) ​ 特殊参数说明: JVM参数 默认…
现实生活中,有很多物体,每个物体的长相.行为都不同. 物体存在于不同的空间内,它只在这个空间内发生作用. 物体没用了,空间就把它剔除,不然既占地方,又需要花精力管理. 需要它的时候,就把它造出来,不需要它的时候,就把它销毁. 按照面向对象的设计思想,游戏里的物体,我们也把它定义为一个类. 一个类就定义了一种物体的属性.行为.类是对象的模板,对象是类的实例. 我们用一个集合,把所有的游戏物体都放在里面,对它们进行统一的管理. 随着游戏线程的运行,集合里的物体,它们的逻辑和绘制也不断被调用执行. 我…
在不同的阶段,游戏所运行的逻辑.所显示的界面,都是不同的. 以五子棋举例,游戏开始.游戏中.胜负已分,对应的界面和逻辑都不同. 在游戏中,又分为:自己下棋.对方下棋.游戏暂停.悔棋等多个状态. 再比如RPG游戏的人物,站立.行走.奔跑.攻击.死亡都是不同的动画, 发出一颗子弹,从出现,到往前运动.打到目标,或飞出屏幕,都是不同逻辑. 怎么实现这些效果呢? 程序里设定不同的状态,当前是什么状态,就执行什么逻辑. 这个就叫做:有限状态机! 是不是很简单,不要小瞧它,复杂的游戏功能都是靠它实现的. 接…
线程,让游戏拥有了动态变化的能力. java的图形界面,在启动的时候,就开始了一个线程. 这个线程负责处理:JFrame.JPanel等的绘制.事件处理. 它是由操作系统调用的,在程序启动时开启,程序关闭时消亡. 这个线程里执行的逻辑,支撑着图形框架的基础逻辑,我们无法控制它. 想一下,游戏里那些动画效果.呼啸而出的子弹.飘来飘去的云朵.. 这些行为都不是我们用按键和鼠标来控制的,是随着时间自己在动的. 它们在动,说明它们的坐标发生了变化,那么谁来控制这些坐标变化的呢? 答案是:另一个线程! 先…
经常玩游戏的同学,大家都知道,游戏都会有个主菜单,里面有多个菜单选项:开始游戏.游戏设置.关于游戏.退出游戏等等,这个菜单是怎么实现的呢. 有一定桌面软件开发基础的同学可能会想到,用JButton组件就可以实现,每个选项就是一个按钮嘛. 嗯,这样做是可以的.但是,系统自带的JButton按钮,样式是已经定义好的,虽然可以设置它的颜色.背景等属性,但终归是受限制的. 我们既然是学习游戏开发,那么时刻要记住台哥在之前的一个章节里所讲的,游戏里所有的东西都是计算机画出来的,程序员的工作就是,控制计算机…
大家都知道,游戏需要跟玩家交互,需要接收玩家的鼠标.键盘发出的命令,比如在地图上点击一下,人物就自动寻路走过去:键盘上按下某个键,就弹出一个背包界面. 这些逻辑是怎么处理的呢? 大家先不用深究太详细的,只需要知道,当我们按下键盘时,操作系统会接收到指令,然后把指令传递给java虚拟机,java虚拟机再把指令转发给当前的游戏程序. java定义了一些类来封装事件,比如KeyEvent对应按键事件,按下键盘,就会产生一个KeyEvent对象: 还有另外的一些接口,用来监听处理事件,比如KeyList…
在Eclipse里,编写如下两个类: package game2; import java.awt.Color; import java.awt.Graphics; import javax.swing.JPanel; /** * java游戏开发杂谈 * ---demo2:画布和画笔 * * @author 台哥 * @date 2019-04-02 */ public class GamePanel extends JPanel { /** 屏幕的宽和高 */ private int wid…
package game1; import javax.swing.JFrame; /** * java游戏开发杂谈 * ---demo1:创建一个窗体 * * @author 台哥 * @date 2019-04-02 */ public class GameFrame extends JFrame{ public GameFrame() { //设置窗体标题 this.setTitle("java游戏开发杂谈-台哥出品"); //设置窗体大小 this.setSize(600, 4…
每个游戏,你所看到的它的一切,都是计算机画出来的! 地图是画出来,人物是画出来的,树木建筑是画出来的,菜单按钮是画出来的,滚动的文字.闪烁的图标.云雾烟火,都是画出来的. 游戏编程,所要做的,就是控制程序,在什么时间,界面上画出什么东西! 大多数游戏,需要不断的重新绘制,以达到动态的效果.比如植物大战僵尸中的向日葵,它一直在动. 这类游戏,是隔很小一段时间,就会重绘.不断的重绘,每次绘制不同的帧,于是界面上显示出向日葵的摇摆动画.       还有些游戏,不需要不断的重绘,比如扫雷,这种没有动画…
死锁杂谈 当数据库死锁时,SqlServer会释放一个优先级较低的锁,让另一个事务运行:所以,即时去捕捉数据库死锁,是挺不容易的. 如果,数据库死锁比较长时间,那么死锁是可以被捕捉的. 可以用SqlServer活动监视器来查看,哪些进程锁了数据库. 首先打开SqlServer活动监视器,然后可以看到,界面里有进程,查看资源,数据文件I/O,最近消耗大量资源的查询四项. 四项显示内容如下: 进程:在进程里可以看到哪些进程被阻塞,查看属性[阻塞者]可以看到,[阻塞者]的会话ID. 等待资源:等待资源…
Linux资源分析工具杂谈 开篇之前请大家先思考一个问题:        磁盘的平均I/O响应时间是1 ms,这个指标是好,还是差? 众所周知,计算机科学是客观的,也就是说对于一个给定的问题,我们总是能给出明确的答案,比如我们网上购物买了两件100元的衣服,我们应该付款200元,但是系统给我们计算出的金额确是300元,我们可以明确的告诉商家,结果算错了.与此不同,性能却常常是主观的,甚至对性能问题的判断都可能是不准确的,比如我们刚刚提到的1ms,一定有人认为是好的,也有人认为是差的,要客观的回答…