# 3. project_path.py

# 用来读取文件的路径
import os

# os.path.split(path)使用:
# 1.path如果是具体到文件名,则返回最后层级的文件,和文件之前的路径
# 2.path如果具体到文件夹,则返回最后一层文件夹,和文件夹之前的路径
# 3.返回值的类型是元组
# dir_name = os.path.split(r"H:\python_lemon\API_AUTO\tools")
# print(dir_name)
# f_name = os.path.split(r"H:\python_lemon\API_AUTO\tools\do_excel.py")
# print(f_name, type(f_name))

# 方法1获取工程目录
# 第1个split[0]取到的是tools目录,第2个split[0]取到的是tools的上层目录
# project_path = os.path.split(os.path.split(os.path.realpath(__file__))[0])[0]
# print(project_path)

# 方法2获取工程目录
dir_cwd = os.getcwd()  # 当前所在目录
# print(dir_cwd)
project_path = os.path.split(dir_cwd)[0]  # 当前目录的上一级目录,即工程目录
# print(project_path)

# 测试用例的路径
test_case_path = os.path.join(project_path, "test_data", "test_data_p2p.xlsx")
print(test_case_path)

# 测试报告的路径
test_report_path = os.path.join(project_path, "test_result", "html_report", "report.html")
# print(test_report_path, type(test_report_path))

# 配置文件的路径
case_config_path = os.path.join(project_path, "config\case.config")
# case_config_path_auto_incre = os.path.join(project_path, "config\case_auto_incre.config")
# print(case_config_path)

unittest(22)- p2p项目实战(3)-project_path的更多相关文章

  1. unittest(22)- p2p项目实战(8)-test_class_auto_incre

    # 8.test_class_auto_incre # 使用ddt import requests import unittest from p2p_project_7.tools.http_requ ...

  2. unittest(22)- p2p项目实战(7)-do_mysql

    # 7. do_msql.py import mysql.connector from p2p_project_2020_1_21.tools import project_path from p2p ...

  3. unittest(22)- p2p项目实战(4)-read_config

    # 4. read_config.py import configparser class ReadConfig: @staticmethod def get_config(file_path, se ...

  4. unittest(22)- p2p项目实战(2)-http_request

    # 2. http_request.py import requests from learn_logging_5.write_log_class import MyLog my_logger = M ...

  5. selenium3 web自动化测试框架 四:Unittest介绍及项目实战中的运用

    unittest介绍及运用,可以参考之前写的文章,除了未结合web自动化演示,基础知识都有了 https://www.cnblogs.com/wuzhiming/p/8858305.html unit ...

  6. 移动端自动化测试Appium 从入门到项目实战Python版☝☝☝

    移动端自动化测试Appium 从入门到项目实战Python版 (一个人学习或许会很枯燥,但是寻找更多志同道合的朋友一起,学习将会变得更加有意义✌✌)  说到APP自动化测试,Appium可是说是非常流 ...

  7. UI自动化测试框架(项目实战)python、Selenium(日志、邮件、pageobject)

    其实百度UI自动化测试框架,会出来很多相关的信息,不过就没有找到纯项目的,无法拿来使用的:所以我最近就写了一个简单,不过可以拿来在真正项目中可以使用的测试框架. 项目的地址:https://githu ...

  8. angularJs项目实战!02:前端的页面分解与组装

    自从上一篇文章到现在已经有将近一个月的时间,我将精力放在了前端页面分解与组装,和angularjs如何与jquery.bootstrap.D3等一系列其他类库结合使用的经验总结上.由于公司新招了一些员 ...

  9. angularJs项目实战!01:模块划分和目录组织

    近日来我有幸主导了一个典型的web app开发.该项目从产品层次来说是个典型的CRUD应用,故而我毫不犹豫地采用了grunt + boilerplate + angularjs + bootstrap ...

随机推荐

  1. java的io字符流关闭和刷新.flush();

    因为内置缓冲区的原因,如果不关闭输出流,无法写出字符到文件中. 但是关闭的流对象,是无法继续写出数据 的.如果我们既想写出数据,又想继续使用流,就需要 flush 方法了. flush :刷新缓冲区, ...

  2. ZJNU 1164 - 考试排名——中级

    1.如果一个单元为0,表示没做过这题,不计入成绩 2.如果一个单位为负数,表示做错了这题,不计入成绩 所以只要一个单元为正数(不论是否有括号)都说明做出了这一题,计入成绩 将名字和成绩都当作字符串读入 ...

  3. ORM表之间高级设计

    ORM表之间高级设计 一.表的继承 # db_test1 # 一.基表 # Model类的内部配置Meta类要设置abstract=True, # 这样的Model类就是用来作为基表 # 多表:Boo ...

  4. Python程序中的进程操作--—--开启多进程

    Python程序中的进程操作-----开启多进程 之前我们已经了解了很多进程相关的理论知识,了解进程是什么应该不再困难了,刚刚我们已经了解了,运行中的程序就是一个进程.所有的进程都是通过它的父进程来创 ...

  5. iframe高度相关知识点整理

    IFRAME 元素也就是文档中的文档. contentWindow属性是指指定的frame或者iframe所在的window对象. 用iframe嵌套页面是,如果父页面要获取子页面里面的内容,可以使用 ...

  6. 关于富文本字段问题(mysql)

    1.表字段字符集建议使用: utf8mb4.utf8mb4_general_ci 2.保险起见spring-boot配置: spring:datasource:connection-init-sqls ...

  7. xcode6添加pch文件

    pch文件 定义:该文件中定义的内容为全局变量,可供所有类进行调用 例子:在pch文件中定义ios版本

  8. [TJOI2017]不勤劳的图书管理员(分块+树状数组)

    有一个数组开大会MLE开小会RE的做法:就是树套树,即树状数组套主席树,这种方法比较暴力,然而很遗憾它不能通过,因为其时空复杂度均为O(nlog2n). 想到一种不怎么耗内存,以时间换空间,分块!单次 ...

  9. Linux从一台linux机器复制文件到另一台linux机器

    1.功能说明 scp 用于将文件/目录从一台linux系统复制到另一台linux系统.传输协议为SSH协议,保证了传输数据的安全性 其格式如下: (1)scp  本地linux系统文件路径   远程用 ...

  10. Office、VBA开发方案选择指南

    最近很多朋友向我提出Office的开发方式方面的疑惑,主要是针对特定的系统和Office版本不知道选择哪一种编程语言.创建哪一种类型的项目. 事实确实如此,如果搞不清楚语言的特性和项目类型的特点,很可 ...