51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3034|回复: 0
打印 上一主题 下一主题

[转贴] Web自动化测试记录

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2017-11-2 11:26:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
. web自动化,想到以下三种自动化方式,各有优缺点。
1.基于UI的自动化
优点:简单,有很多可借鉴的材料。
缺点:非常不稳定;过于依赖界面,一旦界面发生变动,需要重新写;由于不稳定,受影响因素太多,维护成本大。
2.基于web接口的测试
优点:比基于UI的方式稳定很多。
缺点:可借鉴的材料不多,相对复杂;需要咨询开发对应的请求URL;请求结果不好解析,需要研究。
3.基于开发的代码
也就是在开发项目上直接建立测试代码,也就是白盒测试,类似于单元测试。
优点:非常稳定,可以深入开发代码逻辑进行测试。
缺点:需要看开发代码,难度较大;对后台代码逻辑进行了测试,但无法测试前台请求;直接在项目上写测试用例,领导貌似不太愿意
基于以上分析,暂决定采用第二种方式进行。也就是在功能测试任务完成的前提下,利用课余时间研究研究,加油!!!开始啦

二. 自动化测试需要解决的几大问题:
1)日志信息的完善、规范化,用例结果的定位就是通过日志,所以日志一定要规范化(通过打入日志可解决该问题);
2)生成测试结果报告;
3)所有的业务功能是否都适合使用发送http请求的方式,因为有的页面很复杂,请求报文参数很多;
4)结果分析,因为发送http请求,返回的结果是html页面,要想个办法如何分析结果,准确的判断执行是否成功(BeautifulSoup 解析html可解决该问题)。

三. 遇到问题,及解决方法
1.session的保持
s = requests.Session()
s.get('http://httpbin.org/cookies/set/sessioncookie/123456789')#cookie保留在s中
r = s.get("http://httpbin.org/cookies")#再次访问时会保留cookie
2.读取配置文件
配置文件server.con如下
[host]
settle_host = 192.168.2.15
settle_port = 5050
"""读取配置文件"""
cf = ConfigParser.ConfigParser()
cf.read("G:\PycharmProjects\jspt_test\conf\server.conf")
SettleIp = cf.get("host", "settle_host")
SettlePort = cf.get("host", "settle_port")
3.字符串去掉最后一个字符,例:
a = "abc"
b = [:-1]
结果:a:"abc"   b:"ab"
datetim类型转化为str
recvmertime = '2017-10-10 09:32:29' #日期格式
str= recvmertime.strftime("%m%d%H%M%S") #转化为了字符串
4.python字典是无序的。。。
6.执行sql insertdelete update后要执行submit,否则不生效


博为峰网校,入门提升进阶必备~http://www.atstudy.com/


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-9-21 05:33 , Processed in 0.066508 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表