当您有一个简单的方法(例如sum(int x,int y))时,编写单元测试很容易。您可以检查该方法是否正确求和两个样本整数,例如2 + 3应该返回5,然后您将检查某些“非常规”数字是否相同,例如负值和零。这些每个都应该是单独的单元测试,因为单个单元测试应该包含单个断言。
当您有复杂的输入输出时,该怎么办?以Xml解析器为例。您可以使用单个方法parse(String xml)来接收String并返回一个Dom对象。您可以编写单独的测试,以检查某些文本节点是否正确解析,属性是否正确解析,该子节点属于父级等。对于所有这些,我都可以编写一个简单的输入,例如
<root><child/></root>
Run Code Online (Sandbox Code Playgroud)
它将用于检查节点之间的父子关系,以此类推。
现在,看看以下Xml:
<root>
<child1 attribute11="attribute 11 value" attribute12="attribute 12 value">Text 1</child1>
<child2 attribute21="attribute 21 value" attribute22="attribute 22 value">Text 2</child2>
</root>
Run Code Online (Sandbox Code Playgroud)
为了检查该方法是否正常工作,我需要检查许多复杂的条件,例如attribute11和attribute12属于element1,Text 1属于child1等。我不想在单元测试中放置多个断言。我该怎么做?
我正在使用.NET并且正在创建一个桌面应用程序/服务,当触发某些事件时,它将在桌面的角落显示通知.我不想使用过于干扰的常规消息框b/c.我希望通知滑入视图,然后在几秒后淡出.我正在考虑一些非常类似于新消息到达时获得的Outlook警报的内容.问题是:我应该使用WPF吗?我从未对WPF做过任何事情,但如果这是最好的手段,我会很乐意尝试.有没有办法通过常规.NET库实现这一目标?
我想为外部使用进行"标准"安装,但我也想使用相同的脚本并告诉它(可能是命令行参数?),以包含我们实验室安装的另一组文件(用于调试的PDB文件) .(并制作完全不同的安装exe)
我怎样才能做到这一点?可能吗?
我没有看到如何在[files]部分设置它.(根据某些值/参数有条件地添加文件)
注意 - 这不是为了允许用户在安装期间选择一个选项.我想在我的hudson构建或批处理文件中设置构建时选项.
我想我可以为pdbs创建一个单独的安装程序,但我宁愿只有一个文件来完成所有操作.
我有一个UL:
<ul id="news-feed">.....</ul>
Run Code Online (Sandbox Code Playgroud)
我希望能够将LI附加到列表顶部并将附加项目slideDown放到位.
$("#news-feed").append('<li">This is my item</li>').hide().slideDown();
Run Code Online (Sandbox Code Playgroud)
我遇到的问题是上面的代码是向下滑动新闻Feed项目,而不是附加项目.有任何想法吗?
意图是获取当前行(包含逗号的字符串),用""(修剪空格)替换空格,最后将拆分的String元素存储到数组中.
为什么这不起作用?
String[] textLine = currentInputLine.replace("\\s", "").split(",");
Run Code Online (Sandbox Code Playgroud) 我一直在寻找几个用于ASP.NET的Mocking框架,并遇到了Microsoft Moles.这似乎是微软研究团队的一部分,并且想知道如果有人在这里选择Moles而不是其他成熟的Mocking框架,如Moq.
我正在使用设计用于Web应用程序,并希望将可确认模块添加到站点.但是,由于未生成确认_token,用户无法登录.点击"未收到确认说明?" 链接令牌仍然没有生成.
确认电子邮件只会生成此链接(请注意网址中缺少令牌):
<p><a href="http://localhost:3000/users/confirmation">Confirm my account</a></p>
Run Code Online (Sandbox Code Playgroud)
让这个工作的最佳方法是什么?
非常感谢,
托尼
authentication ruby-on-rails registration confirmation devise
我想得到一个元素的直接子元素,然后在特定索引处得到一个孩子的类.就像是:
var index = 25;
var children = $("#myListElement").children();
if (index < children.length) {
if (children[index].hasClass("testClass")) {
alert("hi!");
}
}
Run Code Online (Sandbox Code Playgroud)
我认为.children()的语法是可以的,但是我如何以jquery样式从它们中获取索引元素?
谢谢
我希望在JPopupMenu隐藏我时收到通知- 无论是因为某个项目被选中,菜单被解雇还是setVisible(false)被调用了.这是我的测试代码:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class A extends ComponentAdapter implements Runnable, ActionListener {
private JButton b;
public static void main(String[] args) {
EventQueue.invokeLater(new A());
}
public void run() {
JFrame f = new JFrame("Test");
b = new JButton("Click me");
b.addActionListener(this);
f.add(b);
f.pack();
f.setVisible(true);
}
public void actionPerformed(ActionEvent e) {
JPopupMenu pm = new JPopupMenu();
pm.addComponentListener(this);
pm.add("Popup...");
pm.add("...menu!");
pm.show(b, 10, 10);
}
public void componentShown(ComponentEvent e) { System.out.println("componentShown"); }
public void componentHidden(ComponentEvent e) …Run Code Online (Sandbox Code Playgroud) 所以我使用ActiveRecord模型验证来验证RESTful应用程序中的表单.
我有一个创建动作:
@association = Association.new
Run Code Online (Sandbox Code Playgroud)
并且表单的接收端使用表单参数创建属性的数据哈希,以使用以下方法保存到数据库:
@association = user.associations.create(data)
Run Code Online (Sandbox Code Playgroud)
如果验证失败,我想简单地渲染创建操作.问题是.create(not!)方法在模型验证失败的情况下抛出异常.例:
validates_format_of :url, :with => /(^$)|(^(http|https):\/\/[a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,5}(([0-9]{1,5})?\/.*)?$)/ix, :message => "Your url doesn't seem valid."
Run Code Online (Sandbox Code Playgroud)
在模型中产生:
ActiveRecord::RecordInvalid Exception: Validation failed: Url Your url doesn't seem valid.
Run Code Online (Sandbox Code Playgroud)
我以为.create!应该抛出异常,而.create不是.
我在这里错过了什么吗?
Ruby 1.8.7 patchlevel 173和rails 2.3.3
java ×2
jquery ×2
.net ×1
activerecord ×1
arrays ×1
asp.net-mvc ×1
confirmation ×1
desktop ×1
devise ×1
exception ×1
inno-setup ×1
jpopupmenu ×1
mocking ×1
moq ×1
regex ×1
registration ×1
split ×1
string ×1
swing ×1
tdd ×1
unit-testing ×1
validation ×1
windows ×1
wpf ×1