Selenium + Java 做 WEB GUI 自动化测试中提升代码质量的方法

1. 概念模型化和分层降低代码复杂度 : 定位器/页面/模块

1. 定位器 Element Locator : 从DOM中定位到目标元素

1.可以通过 xpath , byClass, byName 等方法定位到目标元素
2.通常还要配合wait-until机制在合适的时机去找目标元素

2. 页面 Page : 对应一个完整的WEB页面

尽量采用和开发团队对等的页面Page概念,方便沟通。

某些WEB页面虽然主功能不同,但采用同样的布局,所以很可能这些页面中的某些部分在这些页面中通用,这样的通用部分也可以抽象出来做成通用的模型来使用,比如叫做 PageFragment。

3. 模块 Module : 尽量和被测系统的模块划分相对应

通过将模块和页面采用和开发团队一致的概念,当系统功能或者界面发生变化时,测试团队会很容易识别变化所发生的区域从而最快速度赶上变化。

2. 充分利用 Java 代码的重构能力不断演进代码

Java代码在主流的IDE,比如IDEA 或者 Eclipse都有很好的重构支持,当变化发生时,充分利用重构不断演化自动化测试的代码很重要,这样有至少两个很重要的

目的 :

  1. 代码总是能跟得上最新的设计和实现
  2. 该废弃掉的代码抓紧时间废弃掉,留下来会使代码变肥,难以理解或者导致误解

3. 代码的变化规模要和导致该变化的产品功能变化规模保持线性

线性的变化,定量的或者定性的,给人的感觉都是事情可以预期和估计的。

非线性的规模变化,会导致自动化代码的复杂度变化不可预期,进而导致工作量和项目时间无法控制,这绝对不是你想看到的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
管理员模块已更新 使用说明 1 电脑上装JDK 2 电脑上装mysql数据库 3 在dos下打开mysql后,把mysql.txt里的代码(包括insert代码)复制到dos下运行,记得最后再按一下回车键,让最后一行也运行。 4 在eclipse或myeclipse下新建java项目(注意不是jsp项目)后,复制src文件夹到替换项目里的src。然后在复制train.pro,右击项目名粘贴(即把train.pro 加到项目 目录里) 5 把mysql-connector-java-5.1.13-bin.jar 添加到项目里。右键项目,点击Build Path 后再点击add External Archives 后找到mysql-connector-java-5.1.13-bin.jar文件打开即可。 6 在eclipse里打开wed包下MySqlH.java 设置mysql root用户的密码,String password="mysql"; 我的密码是mysql,这里改成你自己的密码。 7 运行client包下的Administrator.java ,若没有错如则OK。 8 运行后点击工具条里的‘工具’,后再点击‘生成所有列车表’,若成功,此时可看见列车表里增加了很多数据。可能有点慢,稍等一会。 9 若8 成功,则点击工具条里的‘工具’,后再点击‘生成所有车票表’,若成功,此时可看见车票表里增加了很多数据。可能有点慢,稍等一会。 关于工具条理的‘生成所有列车表’ ‘生成所有车票表’ "生成列车表" "生成车票表" "设置天数" 的介绍 1 ‘生成所有列车表’ 是根据车次表和车站表的全部数据自动生成 列车表 里的数据, 仅限于第一次时使用。 2 ‘生成所有车票表’ 是根据 列车表 里的全部数据自动生成 车票表 里的数据, 仅限于第一次时使用。 3 "生成列车表" 是根据你输入的某一列车次(必须是车次表里的车次和车站表里有与之相关的数据时才能使用)自动生成 列车表 里的数据 4 "生成车票表" 是根据你输入的某一ID(必须是列车表里的ID)自动生成 车票表 里的数据 5 "设置天数" 是设置能够预订和销售的最多天数,默认是3 天,即能预订和销售3天内的车票 注意: 1 订票记录表,销售记录表,退票记录表里的时间是系统自动生成,在任何情况下都不需填写 也不能修改 2 在管理员模块里添加,删除和修改后需更新一下才能显示,只需点一下别的表,在点刚修改的表即可,数据完全正确 3 退票员和销售员登录时分别查询对应表的记录,因此需要在管理员模块里增加相应记录后才能登录 4 此系统暂时已知还有多个缺陷,如如退票是可一张票可退多次,一个订票id可买多张车票。由于时间因素,就不在修补了。 5 train.pro 是个配置文件,可用记事本打开,尽量在train下的Main_Config.java里修改其配置信息

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值