在 Robot Framework 中使用关键字驱动方法执行测试用例时显示错误
Shows error when executing test case using keyword driven approach in Robot Framework
我是机器人框架自动化的新手 testing.I 使用 Python 为简单的测验应用程序编写了脚本和库,并遵循测试用例的关键字驱动方法。
我的脚本是:
class Quiz(object):
OPTIONS = 'ab'
count = 0
def __init__(self):
self._score = 0
Quiz.count+=1
def score(self, str1):
if str1 not in self.OPTIONS:
raise QuizError("Invalid button '%s'." % str1)
if str1 == 'a' and Quiz.count == 1:
self._score +=1
elif str1 == 'a' and Quiz.count == 2:
self._score +=1
elif str1 == 'a' and Quiz.count == 3:
self._score +=1
return self._score
class QuizError(Exception):
pass
库文件:
from quiz import Quiz, QuizError
class QuizLibrary(object):
def __init__(self):
self._calc = Quiz()
self._result = 0
def option(self, answer):
self._result = self._calc.score(answer)
def result(self, expected):
if self._result != expected:
raise AssertionError('%s != %s' % (self._result, expected))
keyword_driven.txt:
*** Settings ***
Library quizlibrary.py
*** Test Cases ***
Quiz Answer
option a
option b
option a
result 2
显示以下错误:
Quiz Answer FAIL |
No keyword with name 'option' found.
----------------------------------------------------------------------------------------
Testcase :: Example test cases using the keyword-driven testing approach. | FAIL |
1 critical test, 0 passed, 1 failed
1 test total, 0 passed, 1 failed
谁能帮我解决这个问题?
请告诉我如何在关键字驱动方法中创建用户关键字。
一定是您的关键字库使用的 Python 模块的名称有问题。
- 如果您的模块名称是 QuizLibrary.py,则在您的测试中更改库导入中的大小写:
Library QuizLibrary.py
- 如果您的模块名称是 quizlibrary.py,则将 class 的名称与此对齐:
class quizlibrary(object):
此外,不要忘记在 "Library" 和库名称之间至少有 2 个空格。
我是机器人框架自动化的新手 testing.I 使用 Python 为简单的测验应用程序编写了脚本和库,并遵循测试用例的关键字驱动方法。 我的脚本是:
class Quiz(object):
OPTIONS = 'ab'
count = 0
def __init__(self):
self._score = 0
Quiz.count+=1
def score(self, str1):
if str1 not in self.OPTIONS:
raise QuizError("Invalid button '%s'." % str1)
if str1 == 'a' and Quiz.count == 1:
self._score +=1
elif str1 == 'a' and Quiz.count == 2:
self._score +=1
elif str1 == 'a' and Quiz.count == 3:
self._score +=1
return self._score
class QuizError(Exception):
pass
库文件:
from quiz import Quiz, QuizError
class QuizLibrary(object):
def __init__(self):
self._calc = Quiz()
self._result = 0
def option(self, answer):
self._result = self._calc.score(answer)
def result(self, expected):
if self._result != expected:
raise AssertionError('%s != %s' % (self._result, expected))
keyword_driven.txt:
*** Settings ***
Library quizlibrary.py
*** Test Cases ***
Quiz Answer
option a
option b
option a
result 2
显示以下错误:
Quiz Answer FAIL |
No keyword with name 'option' found.
----------------------------------------------------------------------------------------
Testcase :: Example test cases using the keyword-driven testing approach. | FAIL |
1 critical test, 0 passed, 1 failed
1 test total, 0 passed, 1 failed
谁能帮我解决这个问题?
请告诉我如何在关键字驱动方法中创建用户关键字。
一定是您的关键字库使用的 Python 模块的名称有问题。
- 如果您的模块名称是 QuizLibrary.py,则在您的测试中更改库导入中的大小写:
Library QuizLibrary.py
- 如果您的模块名称是 quizlibrary.py,则将 class 的名称与此对齐:
class quizlibrary(object):
此外,不要忘记在 "Library" 和库名称之间至少有 2 个空格。