有没有办法从另一台jupyter笔记本测试一个jupyter笔记本?

时间:2019-06-13 16:02:07

标签: python jupyter-notebook jupyter

我正在尝试从另一台笔记本电脑中测试一台Jupyter笔记本电脑。目前,我有我的第一个笔记本Testing1 ,它在一个单元格中拥有此功能:

def add(a, b):
return a + b

和我的第二本笔记本,Testing2 ,在一个单元格中带有以下测试代码:

import unittest


class TestNotebook(unittest.TestCase):


def test_add(self):
    self.assertEqual(add(2, 3), 5)
    self.assertEqual(add(4, 3), 7)

以及以下单元格中的代码:

unittest.main(argv=[''], verbosity=2, exit=False)

最后,在第三本笔记本中, Testing3 ,我有这段代码,据我所知,它会编译Testing1和Testing2并运行它:

%run Testing2.ipynb

现在,所有3个笔记本都在同一个文件夹中,并且当我保存所有3个并运行 Testing3 时,就可以了!可以正确执行测试。 我的问题是,当我在 Testing1 中更改代码时,例如:

def add(a, b):
x = (a + b) + 1 //Note the added 1
return x

并保存它,然后在 Testing2 中更改我的测试以适应添加的1:

import unittest


class TestNotebook(unittest.TestCase):

def test_add(self):
    self.assertEqual(add(2, 3), 6) //Note the added 1
    self.assertEqual(add(4, 3), 8) //Note the added 1 

保存并运行Testing2和Testing3 ,旧的测试(在我添加修改之前)运行!例如;我将得到

的输出
5 != 6

但是我更改了Testing1中的函数,以便输出应为6且测试应通过。但是,在我编辑和更改功能之前,该测试仍运行旧版本,尽管之后将其保存!

感谢您的帮助

0 个答案:

没有答案