我一直试图断言两个文本框元素包含两个成功测试的特定值。
文本框1:100 文本框2:0
我尝试过以下代码:
def test_example(self):
self.set_textbox1('100')
self.set_textbox2('0')
tb1 = self.find_by_id('textbox1')
tb2 = self.find_by_id('textbox2')
self.assertEquals((tb1.get_attribute('value'), 100) and (tb2.get_attribute('value'), 0))
这会出现以下错误:
Traceback (most recent call last):
File "test_textboxes.py", line 48, in test_textbox
self.assertEquals((tb1.get_attribute('value'), 100) and (tb2.get_attribute('value'), 0))
TypeError: assertEqual() takes at least 3 arguments (2 given)
有办法做到这一点吗?
答案 0 :(得分:1)
对我而言,可读性是单元测试中最重要的一点,我更希望每种情况都有多行断言。 您可以保留工作流程,但使用assertEqual并添加类似
的内容AssertionError: (99,0) != (100,0)
AssertionError就是,假设第一个值查询是99:
import numpy as np
a = np.arange(1,5,1.0)
t=0
while t < 10:
if round(t,2) in set(a):
print "TIME IS NOW >>>>>>>", t
t=round(int(t)+1,2)
else:
t+=0.05
答案 1 :(得分:1)
以下内容可能会解决您的问题:
连接2个字符串:
self.assertEqual(tb1.get_attribute('value') + tb2.get_attribute('value'), '1000')
或者:
self.assertEqual(''.join([tb1.get_attribute('value'), tb2.get_attribute('value')]), '1000')
使用元组:
self.assertEqual((tb1.get_attribute('value'), tb2.get_attribute('value')), (100, 0))