Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 机器人框架中多基地存在实例布局冲突_Python 3.x_Robotframework - Fatal编程技术网

Python 3.x 机器人框架中多基地存在实例布局冲突

Python 3.x 机器人框架中多基地存在实例布局冲突,python-3.x,robotframework,Python 3.x,Robotframework,我正在创建一个新的测试框架,我开始在*.py文件中实现我自己的函数,但当我尝试运行测试时,我得到了以下堆栈: (venv) PLAMWS0024:OAT user$ robot -v CONFIG_FILE:"/variables-config.robot" ./catalog/tests/test1.robot Traceback (most recent call last): File "/Users/user/PycharmProjects/OAT/ve

我正在创建一个新的测试框架,我开始在
*.py
文件中实现我自己的函数,但当我尝试运行测试时,我得到了以下堆栈:

(venv) PLAMWS0024:OAT user$ robot -v CONFIG_FILE:"/variables-config.robot" ./catalog/tests/test1.robot
Traceback (most recent call last):
  File "/Users/user/PycharmProjects/OAT/venv/bin/robot", line 5, in <module>
    from robot.run import run_cli
  File "/Users/user/PycharmProjects/OAT/venv/lib/python3.8/site-packages/robot/__init__.py", line 44, in <module>
    from robot.rebot import rebot, rebot_cli
  File "/Users/user/PycharmProjects/OAT/venv/lib/python3.8/site-packages/robot/rebot.py", line 45, in <module>
    from robot.run import RobotFramework
  File "/Users/user/PycharmProjects/OAT/venv/lib/python3.8/site-packages/robot/run.py", line 44, in <module>
    from robot.running.builder import TestSuiteBuilder
  File "/Users/user/PycharmProjects/OAT/venv/lib/python3.8/site-packages/robot/running/__init__.py", line 98, in <module>
    from .builder import TestSuiteBuilder, ResourceFileBuilder
  File "/Users/user/PycharmProjects/OAT/venv/lib/python3.8/site-packages/robot/running/builder/__init__.py", line 16, in <module>
    from .builders import TestSuiteBuilder, ResourceFileBuilder
  File "/Users/user/PycharmProjects/OAT/venv/lib/python3.8/site-packages/robot/running/builder/builders.py", line 20, in <module>
    from robot.parsing import SuiteStructureBuilder, SuiteStructureVisitor
  File "/Users/user/PycharmProjects/OAT/venv/lib/python3.8/site-packages/robot/parsing/__init__.py", line 380, in <module>
    from .model import ModelTransformer, ModelVisitor
  File "/Users/user/PycharmProjects/OAT/venv/lib/python3.8/site-packages/robot/parsing/model/__init__.py", line 18, in <module>
    from .statements import Statement
  File "/Users/user/PycharmProjects/OAT/venv/lib/python3.8/site-packages/robot/parsing/model/statements.py", line 453, in <module>
    class Error(Statement, Exception):
TypeError: multiple bases have instance lay-out conflict
和呼叫VAR:

from robot.libraries.BuiltIn import _Variables
from robot.parsing.model.statements import Error
Vars = _Variables()


def get_value_from_clipboard(name):
    """
    Returns value saved inside variables passed in Robot Framework
    :param name: name of the variable, needs to have ${} part
            as example: ${var} passed in config file
    :return: value itself, passed as string
    """
    try:
        return Vars.get_variable_value(name)
    except Error as e:
        raise Error('Missing parameter in the clipboard, stack:' + str(e))
什么固定问题:

  • requirements.txt
    文件中卸载所有需求并逐个安装
我尝试了其他步骤:

  • 逐个注释掉所有文件并仅运行
    robot
    命令-失败,出现相同错误
  • 已按此处所述清理
    vnenv
    :(失败)
  • 检查是否有任何变量具有与
    python3.8/site packages/robot/parsing/model/statements.py中描述的相同的命名
因此,在安装PyCharm IDE的需求时似乎存在一些冲突

from datetime import datetime
from robot.api import logger
from robot.libraries.BuiltIn import _Variables
from robot.parsing.model.statements import Error
import json
import datetime
from catalog.resources.utils.clipboardContext import get_value_from_clipboard

Vars = _Variables()


def foo_bar(params):
    # Get all variables
    country = get_value_from_clipboard('${COUNTRY}')
    address = get_value_from_clipboard('${ADDRESS}')
    city = get_value_from_clipboard('${CITY}')
    postcode = get_value_from_clipboard('${POSTALCODE}')
from robot.libraries.BuiltIn import _Variables
from robot.parsing.model.statements import Error
Vars = _Variables()


def get_value_from_clipboard(name):
    """
    Returns value saved inside variables passed in Robot Framework
    :param name: name of the variable, needs to have ${} part
            as example: ${var} passed in config file
    :return: value itself, passed as string
    """
    try:
        return Vars.get_variable_value(name)
    except Error as e:
        raise Error('Missing parameter in the clipboard, stack:' + str(e))