导航

2012年8月11日

摘要: 在“利用Python和BeautifulSoup抓取网页内容”中谈到的方法在处理网页中含有JavaScript执行结果时会遇到问题,比如我想抓取去哪儿网上的机票搜索结果时,抓取到的结果是“请稍等,您查询的结果正在实时搜索中”。这并不是我想要的结果。我在stackoverflow上提出了这个问题,得到的回复是利用Python中urllib模块无法解决这个问题,因为这个网页中调用了JavaScript函数去执行搜索并载入搜索结果。该回复给出的解决方法是PyQt或Selenium。因为我还是想利用Python解决该问题,所以尝试了一下PyQt。 PyQt是一套为Nokia Qt应用框架开发... 阅读全文

posted @ 2012-08-11 21:06 SamWei 阅读(2152) 评论(2) 推荐(1) 编辑

2012年8月9日

摘要: Python 3中提供了url打开模块urllib.request和HTML的解析模块html.parser模块。但是html.parser模块的功能比较简单,很难满足现今解析网页内容的需求。Beautiful Soup 4是一个功能非常强大的HTML和XML文件解析Python库。而且它提供了非常完善的文档(http://www.crummy.com/software/BeautifulSoup/bs4/doc/)。Beautiful Soup 4的安装及相关问题 Beautiful Soup的最新版本是4.1.1可以在此获取(http://www.crummy.com/softw... 阅读全文

posted @ 2012-08-09 00:08 SamWei 阅读(10873) 评论(2) 推荐(2) 编辑

2012年6月14日

摘要: Apple提供的《iOS human interface guidelines》对于手势(gestures)的定义是:人们使用特定的手指动作来操作基于iOS设备的独特的多触点界面。当你把一个手指放在iPhone/iPad的屏幕上,一个触碰(touch)事件周期便开始了。每次一个手指触碰到屏幕,一个新的touchstart事件开始了。当手指离开屏幕的时候,一个touchend事件开始。当手指接触到屏幕后,如果在屏幕上移动手指,一个touchmove事件触发了。如果过多的手指同时接触屏幕或触碰被其他事件中断,如消息推送,那么touchcancel事件触发了。《iOS human interf... 阅读全文

posted @ 2012-06-14 00:25 SamWei 阅读(1082) 评论(0) 推荐(1) 编辑

2012年5月31日

摘要: 安全测试是我工作以后参加的第一个项目中接触到的。当时对安全测试作了一些调研,设计了一些测试用例,通过这些测试用例也确实发现了不少bug。安全测试是软件测试的一个分支,涵盖内容十分广泛,下面结合自己的项目经历,介绍一下自己对安全测试的感受。1.服务器端需要检查:用户密码等重要用户信息是否经过加密服务器端的一些重要文件,如配置文件,是否作了权限访问控制服务器端的一些无关文件是否移除服务器的一些无关服务是否已禁用向服务器端发送大量的用户请求(flood web server)2.客户端需要检查:尝试用错误的用户名密码登陆时的提示信息是否暴露重要信息属于特定组别的用户是否享有该组别以外的权限对不... 阅读全文

posted @ 2012-05-31 23:25 SamWei 阅读(537) 评论(0) 推荐(0) 编辑

2012年5月27日

摘要: 在产品发布之后,项目进入了v2阶段,这一阶段的项目开发和测试呈现出一些新的特点:1. 这一阶段代码不会有大的改动。2. 之前v1中defer的一些bug,根据其的严重程度,相对严重的,而且对用户使用影响较大的一些bug,会在v2阶段修掉。3. 因此这一阶段的测试多是围绕bug fix的测试,以及关于feature的整体retesting。 这些特点也令我思考两个问题:1. 这一阶段找到的bug,如果既发生在v1也发生在v2,而且bug不严重的话,这些bug基本上会被defer。我的疑问就是,作为QA,如果明知道这些bug报上去会被defer,还会或者说应该报这些bug吗?关于这个问题... 阅读全文

posted @ 2012-05-27 01:01 SamWei 阅读(437) 评论(0) 推荐(0) 编辑

2012年5月26日

摘要: 最近这段时间,我在尝试一种新的测试方式:每天根据拟定好的测试大纲(testing outline),先对每个测试点测试一遍,若遇到问题,先将该问题记下来,继续测试下一个测试点,而不象以前一样沿着这个问题一直探索下去直到找到bug。等到所有的测试点都过一遍,将遇到的问题整理好。这时候,可以稍事休息一下,一来放松一下,二来可以整理一下思绪,根据先前测试过程,再结合整理好的问题,可以构思一下接下来如何narrow down这些问题。接下来的工作就是一个一个的narrow down先前遇到的问题。相比以前的测试方式,这种测试方式的一个好处就是测试效率提高了。 这段时间的测试工作的有两个感受:... 阅读全文

posted @ 2012-05-26 00:57 SamWei 阅读(393) 评论(0) 推荐(0) 编辑

2012年4月12日

摘要: 最近产品发布了,随之而来的我接触到了一些用户报告的一些问题,有一些感触:1. 某些用户对产品的了解程度之深令人印象深刻。有些用户是我们的产品的老用户了,他们之中有些人从我们的第一代产品就开始使用,对于产品的了解程度比我都要深刻。2. 根据用户报告的问题,有时候可以直接复现bug,但是更多时候,用户提供的信息不准确或不完全,也许遗漏了对于复现bug关键的信息,这时候我会尝试将用户提供的信息看作一个测试用例,然后对其测试,试图narrow down出这个bug。并非总能复现用户报告的问题,不过在这过程中也许会发现其他的问题。3. 这次产品发布后,我看了一些用户的评论,有好评,也有差评。从这些评论中 阅读全文

posted @ 2012-04-12 00:03 SamWei 阅读(353) 评论(0) 推荐(0) 编辑

2012年4月11日

摘要: (陆续整理添加中...)http://www.python.org/http://www.ferg.org/index.htmlhttp://studio.zeuik.com/http://www.rmi.net/~lutz/about-pp4e.html 阅读全文

posted @ 2012-04-11 23:13 SamWei 阅读(566) 评论(0) 推荐(0) 编辑

2012年4月6日

摘要: 最近一段时间,我尝试将探索式测试应用到日常的工作中。下面是我的一些体会。 首先我会找出一张纸和一支笔,将要测试的功能点一一列出。然后我会从最近一段时间内的bug fix,例如说两周,找出影响这些功能点的bug fix。从dev给出的bug fix的comment中或release note中尽可能从代码层上去理解dev如何修这个bug,以及修正这个bug可能会带来的影响。根据以上的信息,去丰富和完善每个功能点具体要测试的内容,形成一份test outline。接下来根据这份test outline进行测试。测试过程中会得到一些反馈,例如根据反馈,你可能会知道test outline中... 阅读全文

posted @ 2012-04-06 00:11 SamWei 阅读(276) 评论(0) 推荐(0) 编辑

2012年3月19日

摘要: Python为进程间的通信(Interprocess Communication,IPC)提供了4种机制:匿名管道(Anonymous pipes),命名管道(Named pipes),套接字(Sockets)以及信号量(Signals)。 管道(Pipes)是一种跨程序的通信设备,由操作系统实现。管道是一个单向通道,类似于共享内存,在管道的两端提供搜集简单文件的接口。通常,一个程序向管道的一端写数据,另一个程序在管道的另一端读取数据。一个程序只能看到属于它自己的管道的那一端,并象处理普通的Python文件一样处理这些数据。 匿名管道(Anonymous pipes)通常与进程f... 阅读全文

posted @ 2012-03-19 00:35 SamWei 阅读(1347) 评论(0) 推荐(1) 编辑