Ericsson Ridea从入门到精通(一)
来源:互联网 发布:淘宝主图制作技巧 编辑:程序博客网 时间:2024/06/05 06:17
最近负责AAT项目的相关测试工作,开始接触到Ridea项目,这是公司开发的一个针对AAT自动化测试的工具,使用python+seleniuem开发,本系列博客为了记录从入门开始学习的点滴。
时间:二〇一七年八月一日 16:28:56
直到现在还只知道Ridea是干嘛用的,具体怎么用还是一无所知,相关的文档也并没有,所以还是一步一步分析代码来搞定他。
找到入口run.py 为什么是他?猜的
一共四个函数,看名字就知道干啥的了,第四个main()才是主体,本文就简单分析一下前三个。
- 1. prepare_browser_driver()
def prepare_browser_driver(): browser = config.browser_setup['browser'] # 为seleniuem提前准备谷歌浏览器驱动器 if 'chrome' == browser and not is_on_windows(): # 驱动的位置 driver_dir = os.path.join(CurrentDir, 'driver') # 驱动是否存在 if not has_driver(browser, driver_dir): # 解压 extract_driver(browser, driver_dir)def is_on_windows(): return 'Windows' == platform.system()
- 2. parse_arguments()
def parse_arguments(args): """ This function is to parse command arguments. """ parser = argparse.ArgumentParser(prog="run", description="Run regression") parser.add_argument('-d', action='store_true', dest='debug', default=False, help='Run regression in debug mode') parser.add_argument('-l', action='store', dest='log_path', default=os.path.join(CurrentDir, 'logs'), help='Regression output log path(default:<./logs>)') parser.add_argument('-m', action='store_true', dest='mail', default=False, help='Mail regression result to team') parser.add_argument('-r', action='store', dest='reg_apps', default=[], type=arg_list, help='Run regression according to the given name' '(default: all regressions') parser.add_argument('-c', action='store', dest='cases', default=[], type=arg_list, help='Designate cases to run. A case is method name ' 'of a TestCase Class. Seperate multiple cases ' 'by comma') parser.add_argument('-s', action='store', dest='suites', default=[], type=arg_list, help='Designate suites to run. A suite is module name ' 'or class name of a TestSuite Class. Seperate ' 'multiple suites by comma') parser.add_argument('-u', action='store', dest='user_mail', default=[], type=arg_list, help='Mail regression result to users') parser.add_argument('-e', action='store', dest='email_list', default=[], type=arg_list, help='Mail regression result to this list') opts = parser.parse_args() return opts
argparser模块来实现run.py的命令行参数解析,可以看出哪些有效参数
run.py -h 运行
argparser模块会自动为程序天上[-h]功能
add_argument()第二个参数action的值store和store_ture
可以看出action指定为store的[lrcsue],使用时必须指定参数值如 run.py -l log_path;而指定为store_true表示boolean开关,使用时不指定值如 run.py -d 打开debug开关
- 3. set_logging()
log_name = 'regression_FULL' if len(opts.reg_apps) == 0 else 'regression_' + '_'.join(opts.reg_apps) set_logging(log_name, opts.debug, opts.log_path)
设置log的路径和log文件的name
如果没有指定了-r 参数则log=regression_FULL.log.否则’_’.join(opts.reg_apps),如果join()参数是”123”则返回”1_2_3”,如果是list类型如[“aa”,”bb”,”cc”]则返回”aa_bb_cc”,log=regression_aa_bb_cc.log
阅读全文
1 0
- Ericsson Ridea从入门到精通(一)
- Ericsson Ridea从入门到精通(二)
- Ericsson Ridea从入门到精通(三)
- Ericsson Ridea从入门到精通(四)
- Magento从入门到精通(一)
- GUI从入门到精通(一)
- glide从入门到精通(一)
- ActiveMQ从入门到精通(一)
- ActiveMQ从入门到精通(一)
- Git 从入门到精通(常用命令解析)(一)
- delphi7从入门到精通之(一)
- Java学习如何从入门到精通(一)
- 集合框架从入门到精通(一)
- JavaScript教程--从入门到精通(一)
- Google搜索从入门到精通 v4.0 (一)
- delphi7从入门到精通之(一)
- JavaScript教程--从入门到精通(一)
- Hibernate从入门到精通(一)JDBC简介
- shaderForge需要注意的地方
- cookie的定义及常见用法
- java学习整理20170801
- XYNUOJ 1259: 找零钱
- Android性能优化总结
- Ericsson Ridea从入门到精通(一)
- c++ 学习日记 2017.8.1
- js正则表达式:只能输入1到125之间任意数字
- 会场安排问题
- Batch Normalization 的原理解读
- jQuery实现拖动
- MM--如何控制采购申请转变为采购订单数量不超过采购申请数量
- 设计模式之组合模式
- myeclipse报错:The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path