当前位置:首页 > 开发 > 编程语言 > 编程 > 正文

记录测试用例中使用绝对路径遇到的问题

发表于: 2015-06-08   作者:Chinaperson   来源:转载   浏览:
摘要: 我本人比较喜欢相对路径,因为很多时候不同系统下使用绝对路径复用性太差。 问题描述:执行某个项目的所有测试用例的时候,遇到读取某个目录下面的文件,使用相对路径有时候达不到效果 比如如下结构: test_project     test_case         pub       &nb
我本人比较喜欢相对路径,因为很多时候不同系统下使用绝对路径复用性太差。
问题描述:执行某个项目的所有测试用例的时候,遇到读取某个目录下面的文件,使用相对路径有时候达不到效果
比如如下结构:
test_project
    test_case
        pub
              init.py
              public.py
         test_login.py
         test_send_email.py
     report
         xxx.html
     test_data
        login.xml
      all_test.py
我在test_login.py里面调用login.xml的时候使用相对路径没有问题(..\test_data\login.xml),
但是我在all_test.py里面去执行test_case下面的所有的测试用例就会报错,找不到login.xml文件,这是因为,在test_login.py里面使用的相对路径是相对与这个脚本的,在all_test.py里面在去调用这个脚本的时候相对路径下是找不到login.xml的。
下面是all_test.py里面的代码:
#创建测试套件
testunit=unittest.TestSuite()
#定义测试文件查找的目录
test_dir='test_case'
    #定义 discover 方法的参数
testlist=unittest.defaultTestLoader.discover(test_dir,
                                                pattern ='test*.py',
                                                top_level_dir=None)
if __name__ == '__main__':
    test_report = 'report\\'
    now = time.strftime("%Y_%m_%d_%H_%M_%S")  #获取当前时间
    #定义个报告存放路径
    filename = test_report+now+'result.html'
    print filename
    fp = file(filename, 'wb')
    #定义测试报告
    runner =HTMLTestRunner.HTMLTestRunner(
    stream=fp,
    title=u'126邮箱试报告',
    description=u'用例执行情况:')
    #运行测试用例
    runner.run(testlist)
    #关闭报告文件
    fp.close()
 
 
解决方案: 在读取该文件的脚本里使用绝对路径
代码如下:
from os import sys,path
xml_local = path.join(path.dirname(path.dirname(path.abspath(__file__))), "test_data")
dom = xml.dom.minidom.parse(path.join(xml_local, 'login.xml'))

记录测试用例中使用绝对路径遇到的问题

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
Eclipse自带Junit插件,不用安装就能在项目中编写测试用例,非常方便。 在项目中添加Junit库 在编写
Eclipse中使用Junit编写测试用例 Eclipse自带Junit插件,不用安装就能在项目中编写 测试用例,非常
为了更方便对robotframework进行用例管理,我们可以安装使用ride工具 1,下载安装python 2.7版本 2
  作为一位 功能测试人员,其主要的职能就是进行 测试用例的设计,并根据测试用例执行测试,通过
  因为目前比较完善的功能只有单词测试和查单词功能,所以针对这一功能,做了第一阶段的测试,下
一、题目简介 返回一个给定整数参数的绝对值。 二、源码的github链接 https://github.com/liyan9410
package currentTest.BlockingQueue; import java.util.concurrent.Callable; import java.util.con
程序运行起来之后,需要用多个telnet客户端来进行测试 连接的命令为conn deviceNumber 广播命令为br
运行“时间管理助手”软件后,会进入如下界面。 测试用例1:添加任务。 任务没有具体时间限制。 双
浅说《测试用例》----给测试新手的 2011-09-10 13:58 by 虫师, 16374 阅读, 11 评论, 收藏, 编辑 在
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号