【selenium】利用excel来实现关键字驱动-Java

本文介绍如何通过Java和Excel实现Selenium的关键字驱动测试,以CSDN登录为例,详细阐述了如何将测试步骤分解并存储在Excel中,然后编写代码读取并执行这些步骤。
摘要由CSDN通过智能技术生成

参考地址:https://my.oschina.net/hellotest/blog/531932#comment-list

一、新建项目



二、导入包


三、例子-excel

    以CSDN的登录为例,首先我们可以分解登录的步骤,写入excel,如下:



四、编码

1、首先需要写一个可以读写excel的方法,我电脑上装的是excel7,xlsx格式,用到XSS系列的方法,代码如下:

package com.model.lib;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

/**
 *  操作excel类
 * @author Admin
 *
 */
public class ExcelUtil {
	
	public static XSSFSheet excelSheet;
	public static XSSFWorkbook excelBook;
	public static XSSFRow row;
	public static XSSFCell cell;
	
	/**
	 *  加载excel
	 * @param path excel文件路径
	 */
	public static void setExcelFile(String path) {
		FileInputStream excelFile;
		
		try {
			excelFile = new FileInputStream(path);
			excelBook = new XSSFWorkbook(excelFile);
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
		
	}
	
	/**
	 * 获取excel中对应单元格的值
	 * @param rownum 行(从0开始)
	 * @param cellnum 列(从0开始)
	 * @param sheetName sheet名
	 * @return
	 */
	public static String getCellData(int rownum,int cellnum,String sheetName) {
		excelSheet = excelBook.getSheet(sheetName);
		cell = excelSheet.getRow(rownum).getCell(cellnum);
		String cellData = cell.getStringCellValue();
		return cellData;
	}
	
	/**
	 *  将测试结果写入excel
	 * @param result 测试结果
	 * @param rownum 行(从0开始)
	 * @param cellnum 列(从0开始)
	 * @param path excel文件路径
	 * @param sheetName sheet名
	 */
	public static void setCellData(String result,int rownum,int cellnum,String path,String sheetName) {
		try {
			excelSheet = excelBook.get
第三代通信技术(3G)的应用已在全球范围内逐步展开,各大设备供应商正积极研发能提供更高性能的新一代网管系统来满足市场需求。网管系统是一个庞大复杂的通信管理系统,由于客户的功能需求以及网管系统自身技术的更新等原因使网管系统的版本不断更新,网管系统最终系统测试的工作量会很大。因此需要引入自动化测试来提高测试效率保证测试质量。 本文首先分析了当前网管系统测试现状以及对自动化测试的需求。在这样的前提条件下,论文采用了关键字驱动脚本技术,同时吸取了当前流行的自动化测试框架中一些先进的思想,提出了一个适合网管系统测试的自动化测试框架。然后论文对该框架的测试流程进行详细的描述,在此框架的基础上进行系统的总体设计,并完成系统主要模块的设计与实现。本文最终实现了一个基于关键字驱动的自动化测试平台APK(Automated test Platform based on Keywords)。 在APK的实现过程中采用基于C/S的网络框架,该网络框架可以实现多用户定制测试任务并完成分布式自动化测试。在APK系统框架中对关键字进行了重新的定义,关键字不再是目前流行的框架中所定义的原子动作,而是一个用于实现一项测试规程的原子动作序列,同时该框架将结果验证环节放到关键字内部去实现。接口设计方面APK提供了一个外部接口用来整合网管系统中现有的业务测试工具,同时为了满足日后功能扩展的需要APK还预留了一个扩展接口。 APK可以应用于Java应用程序的GUI(Graphical User Interface)自动化测试,同时结合外部接口调用外部工具还可以完成较复杂的业务自动化测试。目前APK已经应用于网管系统的回归测试、边界值测试和大话务量环境数据的配置中,并已经取得了显著的效果,达到了预期的目标。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值