写代码是不可能会写代码的,只有每天抄抄别人的代码这样子才可以维持一下生活 ------ 博客首页

磁感线

阿巴阿巴阿巴
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
def login(ismanager):

    filetext=sys.path[0]
   if ismanager==0:
      filetext=filetext+"\\NewAccount.txt"
   elif ismanager==1:
      filetext=filetext+"\\ManagerAccount.txt"
   elif ismanager==2:
      filetext=filetext+"\\NewUnderAdmin.txt"
   elif ismanager==3:
      filetext=filetext+"\\NewUnderCompany.txt"

*** Settings ***
Library           AutoLogin
*** Test Cases ***
登录
    Login    0

以上 再调用Login时 报错 经过检查发现在Ride中运行测试时 打印出的获取地址为空

经过chatgpt建议 换了一种获取路径方法成功
可以使用os.path.dirname(os.path.abspath(file))来获取当前文件的路径,然后再使用os.path.join()函数来拼接出完整的路径

   file_path = os.path.dirname(os.path.abspath(__file__))

   if ismanager==0:
      file_name = 'NewAccount.txt'
   elif ismanager==1:
      file_name = 'ManagerAccount.txt'
   elif ismanager==2:
      file_name = 'NewUnderAdmin.txt'
   elif ismanager==3:
      file_name=  'NewUnderCompany.txt'
   else:
      raise Exception("账号文件地址不对")  
   filetext = os.path.join(file_path, file_name)