51Testing软件测试论坛

标题: 怎么用Python来做网站自动化 [打印本页]

作者: wxtest    时间: 2015-1-22 11:18
标题: 怎么用Python来做网站自动化
我先来说说的目前的工作概况:
我们公司就我一个测试人员,我平时的工作全都是手动测试。由于每次公司的网站更新频繁,每次更新都需要我尽快的测试完,然后好顺利上线。
但是由于人手问题,我每次都得加班,自己默默的测测测。
于是头儿就提议说要不要来搞自动化测试。于是,我们就招来了两个大四的实习生,他们来写Python的脚本,然后慢慢进行自动化,这样每次更新就能缩短测试时间了。
但是我有疑问就是说,我们不用其他的自动化测试工具(QTP、Loadrunner..)我们就只是用pycharm 来写Python代码,然后调用浏览器,就可以跑了(浏览器会根据写的代码来跑流程)。
我总觉得这不是规范的自动测试,就我的那点知识告诉我,自动化必须用一个工具(QTP.....)不知道我的这个想法到底对不对。(但是看一些脚本语言啥的,就有Python语言,我彻底败了,搞不懂啊)
求大神赐教啊,我是真的搞不明白啊。
作者: wxtest    时间: 2015-1-22 11:19
希望知道这方面知识的牛人告诉我一下。多谢了
作者: jaychang1989    时间: 2015-1-22 12:59
selenium支持Python和java语言,QTP使用VBS语言,QTP入门简单,但selenium开源,且更新较快,支持多种浏览器
作者: jaychang1989    时间: 2015-1-22 13:02
selenium支持python、java等语言,且开源,支持多种浏览器,QTP入门简单,使用VBS语言
作者: jaychang1989    时间: 2015-1-22 13:02
selenium支持python、java等语言,且开源,支持多种浏览器,QTP入门简单,使用VBS语言
作者: wxtest    时间: 2015-1-22 14:20
jaychang1989 发表于 2015-1-22 12:59
selenium支持Python和java语言,QTP使用VBS语言,QTP入门简单,但selenium开源,且更新较快,支持多种浏览 ...

想知道,不用selenium的话,我们只是单纯的用pycharm写Python 脚本,这样算是自动化测试吗。
使用了selenium ,有什么不一样呢。
作者: wxtest    时间: 2015-1-22 14:23
jaychang1989 发表于 2015-1-22 12:59
selenium支持Python和java语言,QTP使用VBS语言,QTP入门简单,但selenium开源,且更新较快,支持多种浏览 ...

想问,那个必须用selenium吗。必须用一种测试工具才算是自动化测试吗
作者: jaychang1989    时间: 2015-1-22 17:55
wxtest 发表于 2015-1-22 14:23
想问,那个必须用selenium吗。必须用一种测试工具才算是自动化测试吗

所谓的自动化,就是使用机器代替人工来做,只要能够方便你的工作的,不管用没用工具,都算自动化
作者: ermine    时间: 2015-1-26 19:14
纯Python的话, 可以通过模拟http请求,解析返回的html来验证功能,但是一般效果不好,而且不方便截图
用selenium的话,因为启动浏览器操作,更贴近真实用户,而且截图很方便,很容易做记录。

自动化不一定依赖某一特定工具,只不过用了工具,更方便而已。

作者: wxtest    时间: 2015-1-28 15:52
ermine 发表于 2015-1-26 19:14
纯Python的话, 可以通过模拟http请求,解析返回的html来验证功能,但是一般效果不好,而且不方便截图
用s ...

这样啊,我现在开始用selenium录制,是最简单的了。用Python写脚本的话,估计还要继续学习了。
感觉很难的样子,我都搞了这么久了,还是没有什么成效
作者: cxwtomcat    时间: 2015-3-10 20:56
robot framework,关键字驱动的,内置了很多关键字,可以不写代码。
作者: zhuruize    时间: 2015-4-22 15:49
很多自动化用工具是由于测试人员不会写代码,才选工具的;你现在手边有帮忙写的,这肯定好了。工具只是帮忙做事情的,不要太纠结用不用工具。
我认为用python直接写挺好的。
作者: zhuruize    时间: 2015-4-22 15:49
很多自动化用工具是由于测试人员不会写代码,才选工具的;你现在手边有帮忙写的,这肯定好了。工具只是帮忙做事情的,不要太纠结用不用工具。
我认为用python直接写挺好的。
作者: wangzijia    时间: 2015-5-12 14:27
我觉得,我就是用python直接写的,我能用python开发软件,做网站什么的。现在写起脚本也是很简单的。就是用的webdriver。
但是我之前用过selenium,觉得录制回放很不错的,然后就自己写脚本,遇到有些对象不会获取,或者对对象的操作方法不会写,就可以录制回放一下,看看保存下来的脚本人家电脑是怎么写的。现在已经完全脱离selenium了。
作者: feiyuw    时间: 2015-6-23 17:15
用python + webdriver + xvfb + pyvirtualdisplay + linux,这样可以做到无人值守,无需图形。
至于robotframework,真不懂python还是算了吧,用不好的。
作者: alexzzz    时间: 2015-8-18 16:05
ruby+selenium+rspec+capybara 也不错的
作者: Wei测试    时间: 2015-8-23 23:59
楼主,这是涉及到自动化框架的设计了,这个需要考虑比较多。首先有关框架的开发语言选择,这个要参照产品是用什么开发的?你只懂python,但产品不是python开发的,你设计的框架,开发人员可能用不起来,也就是不感兴趣。开发对语言,一般有情节,先入为主,改个语言是非常困难的。其次你要考虑的是,开发的自动化框架谁使用?打算暴露给使用者是什么的东西,如果是python脚本的话,不一定合适。测试新手比较多,大多数对开发语言不太感兴趣,或者畏难,如果他们能够克服语言的难度,不早就去做开了吗?为了长治久安,你要考虑暴露给使用者,越傻瓜越好。第三个方面,你的自动化框架,预计使用多久,如果临时用用,到是无所谓。如果要用两三年,就得考虑框架的扩展性和维护性,所以选择自动化工具,要多想一想。自动化,有两个层面的东西,一个是自动化框架设计师,一个是自动化框架使用人员,两个层面的东西和诉求都不一样。有兴趣加我的订阅号“Wei测试”一起探讨。




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2