- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在将单元测试 retrofit 到由其他开发人员在 VB.net 中设计和编写的相当复杂的系统中。我正在尝试使用 NUnit 和 NUnit Forms 扩展为 GUI 表单开发单元测试。 (我一直在查看 C# 示例,如果您有解决方案但不了解 VB 语法,只要它使用 NUnit 类,这些示例很容易移植)
我将尝试解释我在做什么,但首先是对该程序的简要描述。它基本上监视服务器事件。您需要通过具有 IP 和端口字段(以及其他字段)的模态形式连接到服务器。连接到服务器后,程序的其他部分将解锁并可用(例如服务器配置)。
期望的过程:加载程序>点击连接按钮>模态连接表单加载>输入详细信息>点击确定连接>主表单更新为登录状态>其他功能
问题是我无法测试连接表单的功能以及程序的登录功能。我可以测试它是否正确加载模态连接表单;输入详细信息并单击“确定”(到目前为止一切正常)但它似乎没有按逻辑推进程序。模态表单似乎再次关闭,似乎没有从程序后端运行连接代码,我回到了主菜单,没有登录任何内容。
我有一种感觉,我要么错过了一些非常明显的东西,要么在 NUnit 中根本无法实现。我在互联网上搜索过任何类似的东西,但最接近的是另一个真正通用的 SO 线程。由于无法实际测试程序的登录版本,我遇到了一个主要障碍。另一个问题是处理没有唯一标识符的消息框(例如“你确定要退出吗?”);这些似乎也是 NUnit 的一大痛点
(如果有什么不同的话,我将测试作为一个独立的项目运行,使用对构建项目的可执行文件的引用,而不是实际的源代码)
如果需要,可以发布我的一些测试代码。
最佳答案
恕我直言,使 GUI 类对单元测试可行的最佳方法是应用 Model-View-Presenter pattern并将几乎每个程序逻辑从表单 (=View) 类分解为单独的 Presenter 类。然后你可以对 Presenter 类进行单元测试,而不需要像“NUnit Forms”这样的工具。
阅读Michael Feathers' article "The Humble Dialog Box"对于 C++ 中的示例,我想您可以轻松地将其应用于 Winforms。
关于VB.net NUnit (2.5) Windows 窗体测试 - 这可能吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7809094/
对于一个科学实验,我写了一个turtle.py ,它会打开一个 800x480 的窗口并绘制一个缓慢增长的黑点。 turtle.py以 C:\Users\kaza>python C:\Users\ka
我开发了一个 swing 应用程序,但每次运行应用程序时都会打开一个新窗口。我希望如果一个窗口已经打开,则其他窗口不允许打开。 最佳答案 Here是一个 Java 单一应用实例的例子: A singl
有没有办法检测主进程中 Electron 的结构? process.platform 似乎也在 x64 机器上返回 win32,我没有在文档中找到任何获取架构的选项。 最佳答案 你试过 process
public short[] HanningWindow(short[] signal_in ,int pos ,int size) { for (int i= pos; i < pos+si
我有一个具有这些属性的 Electron 窗口: mainWindow = new BrowserWindow({ width: 800, height: 600, title: "Aqu
我有一个 Ubuntu 工作站,我正在尝试引导一个 Windows 节点。 Windows 节点在端口 2222 上打开了 ssh。我一直在关注 http://docs.opscode.com/plu
我是一名优秀的程序员,十分优秀!