我试图找到一种方法,允许我只使用命令行和java从JUnit类运行单个测试.
我可以使用以下方法从类中运行整个测试集:
java -cp .... org.junit.runner.JUnitCore org.package.classname
Run Code Online (Sandbox Code Playgroud)
我真正想做的是这样的事情:
java -cp .... org.junit.runner.JUnitCore org.package.classname.method
Run Code Online (Sandbox Code Playgroud)
要么:
java -cp .... org.junit.runner.JUnitCore org.package.classname#method
Run Code Online (Sandbox Code Playgroud)
我注意到有可能使用JUnit注释来实现这一点,但我宁愿不手动修改测试类的源代码(尝试自动化).我也看到Maven可能有办法做到这一点,但如果可能的话我想避免依赖Maven.
所以我想知道是否有办法做到这一点?
我正在寻找的要点:
我有一个简单的问题.我有一个如下所示的序列化器:
class GroupSerializer < ActiveModel::Serializer
attributes :id, :name, :about, :city
end
Run Code Online (Sandbox Code Playgroud)
问题在于,每当我更改模型时,我都必须在此序列化程序中添加/删除属性.我只是想默认获取整个对象,因为默认的rails json响应:
render json: @group
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
我正在尝试以非常特定的格式格式化我的 git 日志。
我最初使用git log --format="%H,%an,%ae,%ad,%p"它会产生以下输出(对于每次提交):
b05f827b41856e6f4bcfba20c32f58434ce3a5a6,Kevin Jalbert,kevin.j.jalbert@gmail.com,Fri Sep 7 14:43:16 2012 -0400,206f23d
Run Code Online (Sandbox Code Playgroud)
现在我正在尝试获取每个提交的引用(即标签/分支)信息。我可以使用git log --source命令查看此信息,这正好显示了我想要的内容(即,位于提交 SHA 之后的 ref):
commit 84deec66f94085ee3a0e6f6204f06296d7a1a903 refs/remotes/origin/HEAD
Author: Kevin Jalbert <kevin.j.jalbert@gmail.com>
Date: Fri Sep 21 17:02:33 2012 -0400
commit message
commit f1e1b8d11defc48839557db5e54a5a6f7ffe6cad refs/heads/issue_5
Author: Kevin Jalbert <kevin.j.jalbert@gmail.com>
Date: Thu Sep 13 15:34:36 2012 -0400
commit message
commit d7acdbd957d9b477f8849fd5a37882cdd78d8e1f refs/tags/v0.3.0
Author: Kevin Jalbert <kevin.j.jalbert@gmail.com>
Date: Wed Sep 12 16:48:46 2012 -0400
commit message
Run Code Online (Sandbox Code Playgroud)
我想要做的是在原始--format="..."命令的末尾包含此信息,这样我的输出将如下所示:
b05f827b41856e6f4bcfba20c32f58434ce3a5a6,Kevin Jalbert,kevin.j.jalbert@gmail.com,Fri Sep 7 14:43:16 2012 …Run Code Online (Sandbox Code Playgroud) 我似乎无法用Ruby中的单个反斜杠替换双反斜杠.我想我会用另一个反斜杠逃避反斜杠.
1.9.3-p194 :001 > line = "this\\is\\a\\test"
=> "this\\is\\a\\test"
1.9.3-p194 :002 > line.gsub("\\\\", "\\") # Nothing
=> "this\\is\\a\\test"
Run Code Online (Sandbox Code Playgroud)
这没用,所以我决定尝试找到一个至少可以替代的比赛.
1.9.3-p194 :003 > line.gsub("\\", "_") # This works for replacing \\
=> "this_is_a_test"
1.9.3-p194 :004 > line.gsub("\\", "\\") # Nothing
=> "this\\is\\a\\test"
Run Code Online (Sandbox Code Playgroud)
我仍然无法在Ruby中找到一种简单的方法.
我正在使用Rspec为我的程序进行一些测试.在一个规范中,我实例化了一次类,并使用describe和contexts对它进行测试.如果它似乎在上下文结束时被评估,我遇到了一些有趣的东西.例如,给定以下类及其相关规范:
class Tmp
def initialize
@values = {}
end
def modify(new_value1, new_value2)
@values = {:a => new_value1, :b => new_value2}
end
def get_values
return @values
end
end
Run Code Online (Sandbox Code Playgroud)
describe Tmp do
tmp = Tmp.new()
describe "testing something" do
context "change value" do
# First evaluation
tmp.modify("hi", "bye")
it {tmp.get_values.should == {:a => "hi", :b => "bye"}}
# Second evaluation
tmp.modify("bye", "hi")
it {tmp.get_values.should == {:a => "bye", :b => "hi"}}
end
end
end
Run Code Online (Sandbox Code Playgroud)
使用提供的类和规范结果如下:
F. …Run Code Online (Sandbox Code Playgroud)