python - 有没有办法从另一个 jupyter notebook 测试一个 jupyter notebook?
问题描述
我正在尝试从另一个测试一个 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 并且测试应该通过。但是,测试仍然运行旧版本,在我编辑和更改功能之前,尽管我保存了它!
谢谢你的帮助
解决方案
推荐阅读
- hadoop - Cloudera NODE_MANAGER_UNEXPECTED_EXITS 每小时
- powershell - 以另一个用户身份连接到 Window Explorer 中的远程文件系统
- python - 如何在新列中获取所有唯一值
- android - PagerAdapter 防止破坏已经加载的视图
- python - 使用 selenium(Python)在 sfdc chrome 中存储先前条目的日期字段
- botframework - 无法在 Bot Framework v4 中的对话框之间切换
- python-2.7 - Python 2.7 的嵌入式弹性搜索
- javascript - d3js v5 添加曲线内核密度估计器
- java - 与 CompleteableFuture 一起使用的异常处理方法
- android - 如何将我的应用程序中的内容共享到不同的应用程序