自动化测试框架使用说明
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Selenium自动化测试框架使用说明
一,common公用模块使用说明
1.1.1DriverMange.java
用来保存driver信息,供所有的线程共享调用.
提供以下方法:
1,getDriver 获取当前已经初始化的Driver
2,setDriver 设置当前的Driver
3,initDriver 初始化driver 功能同setDriver相似。不同的是发直接读取ms系统的driver参数该
1.1.2GenerateReporter
创建测试报告,各个系统对报告的格式要求可能不一样,建议各个系统独自修改
提供以下方法:
1, generateMsReport生成符合ms系统的测试报告
2,initworkbook 初始化测试报告,每次开始生成报告的时候,清理一下上一次的报告内容
3,createNewSheet 创建一个新的excel sheet,目前暂未使用,其思想是,如果生成报告的时候不存在该sheet就自动生成一个。
1.1.3 SuiteInfo
存放一个suite的所有信息,包括suite名称,案例编号,开始时间,和该suite下的所有testscript的处理结果
提供以下方法:
1,distroy 删除该suite的结果信息,也就是初始化
2,getLineNo 获取该suite的案例编号,默认为excel行号
3,setLineNo 设置该suite的案例编号,默认为excel行号
4,setDateFormat 设置suite开始时间,也就是该条案例的执行时间5,getDateFormat 获取suite的开始时间,生成报告时使用
6,getSuiteName 获取本次案例的的suite名称
7,setSuiteName 设置本次案例的suite名称
8,getTestResultInfoList 获取本次案例,suite下的所有模块测试结果
9,AddToTestResultInfoList 模块执行完毕后把自己的结果add到suite的结果list中
1.1.3TestResultInfo
用来保存每个模块的执行结果信息,并提供使用断言判断结果是否符期的方法
提供以下方法:
1,Equals比较该最小模块下的预期结果与实际结果值
2,singleEquals 比较个字符串是否符合预期
1.1.5 DataHandleUtil
一些公共的数据处理方法
提供以下方法:
1,stringToList 把一个字符串转换成List,如"1,2,3,4"-->[1,2,3,4],本程序中用来处理suite_modules.properties文件,把map
1.1.6 ExcelUtils
处理excel的一些公共方法
提供以下方法:
1,r eadExcelAll读取一个excel文件,把整个文件生成一个map,key为sheetname,value为该sheetname下的sheet所有内容2,G etSheetDateCell 根据sheetname、行号、列号获取该cell的内容3,r eadSingleCell 根据sheetname、行号、列名称获取该cell的内容4,G etRowData 根据sheetname、行号获取某一行的数据,返回的数据为一个List
5,g etCellFormatValue 根据cell的规则读取该cell的内容,生成一个string返回
6,w riteSingleCell 往指定的单元格写入数据
1.1.7 GlobalConstants
自动化测试项目用到的一些全局的配置参数
提供以下方法:
1,setSuiteInfoList 设置suiteinfoList,每个suite执行完毕后把自己的结果add进suiteinfoList,供生成报告使用
1.1.8 Log4jConfiguration
log4j的公共配置
提供以下方法:
1,initLog 初始化log4j配置信息,主程序启动的时候最先执行的程序1.1.9 MailInfo
邮件信息,读取excel数据后存放的地方
提供以下方法:
1,S etMsMailInfo 设置邮件信息,从本地excel文件中读取邮件信息,供MailSendUtil调用
1.2.1 MailSendUtil
邮件发送模块,支持发送纯文本邮件、HTML邮件、附件、内嵌图片邮件, 需要提供邮箱类型、端口,发送邮箱帐号/密码、邮件接受者
提供以下方法:
1,sendTextMail 发送文本邮件,参数即是
2,sendHtmlMail 发送HTML邮件
3,sendImageMail 发送内嵌图片邮件
4,sendAttachmentMail 发送附件
1.2.2 PropertiesToMap
读取resource/config目录下的properties文件内容并转换成map形式,SUITE_MODULE_MAP读取的是/app/auto_ms/config下的内容
提供以下方法:
1,getProperties 读取properties文件,生成一个Map
2,getFileProperties 读取一个file,生成一个map
1.2.3 ScreenShotUtil
selenium工具截图方法,ScreenShoter为公共的方法
提供以下方法:
1,MsScreenShoter ms系统的截图方法,因各个系统要求不同,截图的方法也不尽相同
1.2.4 TaskDataUtil
线程内部共享全局变量,一个程序有多个子线程,每个子线程里面可能包含多个模块,每个模块因为是独立运行的,需要共享一些driver/lineNo等信息,而这些driver/lineNo信息又不能让其他线程共享到,详情请百度ThreadLocal
1.2.5 WaitForPage
等待页面加载完所有的组件,注意:该方法不能作为后台数据获取到与否的依据
二,t estscript使用说明
2.1 Login.java
登录模块的脚本,脚本中执行的操作:打开baseurl-->输入用户名和密码-->点击登录执行条件:已经初始化WebDriver
验证条件:存在“退出”按钮默认登录成功
2.2 Logout.java
注销登录模块,执行的操作:找到“退出”按钮→点击“退出”
执行条件:用户已经登录
验证条件:存在“立刻注册”按钮,默认退出成功
2.3 EnterEmployeeRecharge.java
进入员工内购的操作,执行的操作是:点击员工福利图片-→点击员工内购。
执行条件:用户已经登录
验证条件:存在“员工添加”按钮,默认操作成功
2.4 SingleEmployeeAdd.java
员工单个添加模块,执行操作:点击“添加”按钮→点击员工单个添加—->输入数据→点击确定
执行条件:EnterEmployeeRecharge执行完毕无异常,存在”add”按钮
验证条件:查询待添加的员工手机号,得到的查询结果中,姓名与预期值匹配。
2.5 EnterAccountManage.java
进入员工充值界面,执行操作:点击“账户管理”
执行条件:用户已经的登录
验证条件:能成功获取到用户余额
2.6 AccountManageCharg.java
选择线下充值,执行操作:点击线下充值→点击“确定已打款”→进入线下充值-充值明细页面。