我正在尝试学习python来处理测试项目.
有没有办法在python测试框架中实现TestNG Listeners之类的功能.
监听器有OnTestFailure(),OnTestSuccess,OnStart()等方法,当你想做某些事情时,它们真的很有帮助.
比方说,测试用例失败了,你想要执行一些操作,比如截取屏幕截图.然后你可以在一个地方写这个,而不是在每个afterTest方法中都写出来.
解决方法:
这个类将从这样的测试用例中调用
TestStatus.mark(‘testName’,result,’要记录的消息’)
结果是一个布尔值
class TestStatus(unittest.TestCase):
def __init__(self):
super(TestStatus, self).__init__()
def mark(self, testName, result, resultMessage):
testName = testName.lower()
try:
if result:
self.log.info("Verification successful :: " + resultMessage)
else:
# If the test fails,
# this calls screenshot method from util class
self.util.screenShot("FAIL" + mapKey)
self.log.info("Verification failed :: " + resultMessage)
except:
self.log.info("### Exception Occurred !!!")
traceback.print_stack()
这是测试用例类中的示例测试用例:
def test_accountSignup(self):
# Generate a username and password to use in the test case
userName = self.util.getUniqueName()
password = self.util.getUniqueName()
# You can ignore this, this is calling a method
# signup from the account page (page object model)
self.accounts.signup(userName, password)
# This call is also from the page object,
# it checks if the sign up was successful
# it returns a boolean
result = isSignUpSuccessful()
# test_status object was created in the setUp method
#
self.test_status.mark("test_accountSignup", result,
"Signup was successful")
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。