zl程序教程

您现在的位置是:首页 >  其他

当前栏目

Web测试自动化

2023-09-11 14:20:31 时间

//打开网站

selenium.open("http://xxx.xxx.xxx/yyy");

//通过Xpath 找到页面中的某个DOM对象

selenium.select("xpath=//SELECT[@name=SBBUSYO]", "index=1");

//模拟点击、输入等页面动作

selenium.click("xpath=//input[@type=button]");

//等待页面加载

selenium.waitForPageToLoad("2000");

//断言验证是否正确转向标题为“welcome”的页面

assertEquals(selenium.getTitle(), "Welcome");

}

代码会启动IE或者firefox执行,这样就将单元测试可以覆盖到了开发的全部环节。我们公司现在使用的LoadRunner是协议级的测试,通过对get\post协议的分析进行测试。

Selenium 是DOM级的测试,通过Xpath 寻找页面标签,验证是否实现了希望的功能。Selenium支持js,和多浏览器,所以还可以用于测试浏览器兼容性。

百度进行web自动化测试的一些相关经验:

1. 通过一些自己写好的框架,加载.xls 文件数据导入测试用例的数据。对于一些需要反复回归测试的测试用例,测试人员只需要用Excel填写测试数据就可以。

2. 测试人员更专注于业务、流程比较复杂的用例,简单的业务可以自动化测试。

3. Web自动化测试并不是为了找到bug,而是作为系统的一个安全网和防护栏,保证代码的变动不会造成基础和核心模块出现问题。

4. Web自动化测试只能应用适合的场景,很多页面还是需要人工测试。以百度目前的经验,大概也只有20-30%的web可以进行自动化测试。所以需要精心挑选和设计测试用例。

5. 测试人员最好也拥有编写代码的能力。

TDD 测试驱动开发

1. 测试驱动开发:写代码前先写测试。

2. 如何切入TDD?:从上到下写代码。即写Web测试 Jsp页面 Action测试 Action实现 service测试 service实现……

3. 通过测试和上层方法进行驱动开发。比如你写Action测试时发现需要跳转首页的方法,就驱动在Action建立toIndex()方法。在Action发现你需要Service ,就建立Service对象,利用IDE的辅助提示功能,快速的进行驱动开发。

4. 随时重构,包括Test的代码。如果感觉代码有bed smell就马上重构。

5. 对于暂时没有实现的或者无法实现的,通过Mock的方式实现。

6. Web测试可以先写空业务场景,暂不实现,因为Web测试需要完整功能开发完毕并进行部署和服务启动,并且耗时也比较长。

7. 测试用例是一种文档,测试方法名称以表达测试目的为第一目标。演示的时候讲师经常起了这样的方法名:Public void testShowMoreDetailWhenFrendListOver5(){}  //当好友列表大于5个时显示"show more"


本文出自seven的测试人生公众号最新内容请见作者的GitHub页:http://qaseven.github.io/


自动化测试教程(2)深入了解自动化 接口自动化的工具:robotframework框架,jmeter,postman,Django,soupUI语言:java/python。对程序组成的最小单元进行测试,效率很高,我们测试/开发要把大部分
从0到1开发自动化测试框架 一、序言 随着项目版本的快速迭代、APP测试有以下几个特点: 首先,功能点多且细,测试工作量大,容易遗漏; 其次,代码模块常改动,回归测试很频繁,测试重复低效; 最后,数据环境多样,用户场景复杂,功能回归覆盖难全面。