Python Pytest错误-将对象位置与字符串进行比较
我试图测试我从文件中提取的数据在python中生成的对象,但我不断得到错误Python Pytest错误-将对象位置与字符串进行比较,python,python-3.x,pytest,Python,Python 3.x,Pytest,我试图测试我从文件中提取的数据在python中生成的对象,但我不断得到错误self.assertEquals(Create(“input.txt”),“1/2”)断言错误:!='1/2' 如何获得实际数据而不是对象,而不是存储在Pytest中的位置 下面是我的代码,我在其中提取数据并创建对象: class Run: def __init__(self, first, second): self.first = first self.second = sec
self.assertEquals(Create(“input.txt”),“1/2”)断言错误:!='1/2'
如何获得实际数据而不是对象,而不是存储在Pytest中的位置
下面是我的代码,我在其中提取数据并创建对象:
class Run:
def __init__(self, first, second):
self.first = first
self.second = second
def __repr__(self):
return f"{self.first}/{self.second}"
class Create:
def __init__(self, file):
self.file_contents = [line.rstrip("\n)") for line in open(file)]
self.all = []
self.add()
self.prnt()
def add(self):
for i in self.file_contents:
first, second = i.split(",")
self.all.append(Run(first,second))
def prnt(self):
for i in self.all:
print(i)
def main():
Create("input.txt")
if __name__ == "__main__":
main()
下面是我用来测试对象的Pytest脚本:
import unittest
from dsadsa import Create
class Test(unittest.TestCase):
def test_one(self):
self.assertEquals(Create("input.txt"), "1/2")
if __name__ == '__main__':
unittest.main()
这是我的文件数据:
1,2
在此方面如有任何帮助/建议,将不胜感激
解决方案-
a = Create("input.txt") # Make an istance and then use the self.all attribute to get data to compare
self.assertEqual(str(a.all[0]), "1/2")
它可能位于
Create.all
attribute@aws_apprentice真管用!完美的谢谢你。np,你写这些课程了吗?如果是的话,你应该知道他们是怎么做的work@aws_apprentice我确实知道它们是如何工作的,只是想如果有更简单的方法将数据位置更改为实际值以进行比较,它可能位于Create.all
attribute@aws_apprentice真管用!完美的谢谢你。np,你写这些课程了吗?如果是的话,你应该知道他们是怎么做的work@aws_apprentice我知道它们是如何工作的,只是想是否有更简单的方法将数据位置更改为实际值进行比较